diff options
author | Teemu Suo-Anttila <teemusa@vaadin.com> | 2015-08-11 14:55:27 +0300 |
---|---|---|
committer | Teemu Suo-Anttila <teemusa@vaadin.com> | 2015-08-11 16:05:01 +0300 |
commit | e7e6fd78c1a1506947e8301c1235c622cf424826 (patch) | |
tree | ec315eb72e8ab6d06065470ea1f099e28c7eaee7 /client/src | |
parent | 06f8b7dca90676efa905e3eb69b73660f1585e0b (diff) | |
download | vaadin-framework-e7e6fd78c1a1506947e8301c1235c622cf424826.tar.gz vaadin-framework-e7e6fd78c1a1506947e8301c1235c622cf424826.zip |
Fix Grid client-side NPE finding uneditable column editor (#18589)
Change-Id: I6f3fc25785bc6036795a791d6582c3d9194b505c
Diffstat (limited to 'client/src')
-rw-r--r-- | client/src/com/vaadin/client/widgets/Grid.java | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/client/src/com/vaadin/client/widgets/Grid.java b/client/src/com/vaadin/client/widgets/Grid.java index 8db6e9a55a..ce3db0970a 100644 --- a/client/src/com/vaadin/client/widgets/Grid.java +++ b/client/src/com/vaadin/client/widgets/Grid.java @@ -6745,11 +6745,21 @@ public class Grid<T> extends ResizeComposite implements if (args.getIndicesLength() == 0) { return editor.editorOverlay; - } else if (args.getIndicesLength() == 1 - && args.getIndex(0) < columns.size()) { - escalator - .scrollToColumn(args.getIndex(0), ScrollDestination.ANY, 0); - return editor.getWidget(columns.get(args.getIndex(0))).getElement(); + } else if (args.getIndicesLength() == 1) { + int index = args.getIndex(0); + if (index >= columns.size()) { + return null; + } + + escalator.scrollToColumn(index, ScrollDestination.ANY, 0); + Widget widget = editor.getWidget(columns.get(index)); + + if (widget != null) { + return widget.getElement(); + } + + // No widget for the column. + return null; } return null; |