diff options
author | Aleksi Hietanen <aleksi@vaadin.com> | 2017-04-11 09:50:26 +0300 |
---|---|---|
committer | Ilia Motornyi <elmot@vaadin.com> | 2017-04-11 08:50:26 +0200 |
commit | 4784e342eb7369909085db54ae2efb7a99daf7a3 (patch) | |
tree | 7e822f29c528d8a7a1c25bc82cb6a405fe283ffb /client | |
parent | cf7edf7a56d71e39f59984234ea7ffa51db2c696 (diff) | |
download | vaadin-framework-4784e342eb7369909085db54ae2efb7a99daf7a3.tar.gz vaadin-framework-4784e342eb7369909085db54ae2efb7a99daf7a3.zip |
Fix initial expand of TreeGrid items
Fixes #9050
Diffstat (limited to 'client')
-rw-r--r-- | client/src/main/java/com/vaadin/client/connectors/treegrid/TreeGridConnector.java | 25 |
1 files changed, 15 insertions, 10 deletions
diff --git a/client/src/main/java/com/vaadin/client/connectors/treegrid/TreeGridConnector.java b/client/src/main/java/com/vaadin/client/connectors/treegrid/TreeGridConnector.java index 10935264c7..72c4487aaf 100644 --- a/client/src/main/java/com/vaadin/client/connectors/treegrid/TreeGridConnector.java +++ b/client/src/main/java/com/vaadin/client/connectors/treegrid/TreeGridConnector.java @@ -19,7 +19,6 @@ import java.util.Collection; import java.util.HashSet; import java.util.Set; import java.util.logging.Logger; -import java.util.stream.IntStream; import com.google.gwt.core.client.Scheduler; import com.google.gwt.dom.client.BrowserEvents; @@ -171,6 +170,11 @@ public class TreeGridConnector extends GridConnector { public void setCollapsed(String key) { rowKeysPendingExpand.remove(key); } + + @Override + public void clearPendingExpands() { + rowKeysPendingExpand.clear(); + } }); } @@ -201,7 +205,7 @@ public class TreeGridConnector extends GridConnector { @Override public void resetDataAndSize(int estimatedNewDataSize) { - rowKeysPendingExpand.clear(); + // NO-OP } }); } @@ -348,14 +352,15 @@ public class TreeGridConnector extends GridConnector { if (rowKeysPendingExpand.isEmpty()) { return; } - IntStream.range(firstRowIndex, firstRowIndex + numberOfRows) - .forEach(rowIndex -> { - String rowKey = getDataSource().getRow(rowIndex) - .getString(DataCommunicatorConstants.KEY); - if (rowKeysPendingExpand.remove(rowKey)) { - setCollapsedServerInitiated(rowIndex, false); - } - }); + for (int rowIndex = firstRowIndex; rowIndex < firstRowIndex + + numberOfRows; rowIndex++) { + String rowKey = getDataSource().getRow(rowIndex) + .getString(DataCommunicatorConstants.KEY); + if (rowKeysPendingExpand.remove(rowKey)) { + setCollapsedServerInitiated(rowIndex, false); + return; + } + } } private static boolean isCollapsed(JsonObject rowData) { |