summaryrefslogtreecommitdiffstats
path: root/client
diff options
context:
space:
mode:
authorArtur Signell <artur@vaadin.com>2016-11-24 11:31:23 +0200
committerHenri Sara <henri.sara@gmail.com>2017-01-03 09:47:18 +0200
commit17b5c8dc396ea87a46ec76689fdff5771fabe5dd (patch)
treea792c49c66c292d9aaca6c28d0fc5cceaa289bb7 /client
parenta8835eaf31fd3a908647a71a26283f76383417bd (diff)
downloadvaadin-framework-17b5c8dc396ea87a46ec76689fdff5771fabe5dd.tar.gz
vaadin-framework-17b5c8dc396ea87a46ec76689fdff5771fabe5dd.zip
Re-add body rows when Escalator is reattached to DOM (#20477)
Change-Id: I0ae9144817db3bb730c80748d5e9190484b323e7 # Conflicts: # uitest/src/main/java/com/vaadin/tests/widgetset/client/grid/EscalatorBasicClientFeaturesWidget.java
Diffstat (limited to 'client')
-rw-r--r--client/src/main/java/com/vaadin/client/widgets/Escalator.java48
1 files changed, 14 insertions, 34 deletions
diff --git a/client/src/main/java/com/vaadin/client/widgets/Escalator.java b/client/src/main/java/com/vaadin/client/widgets/Escalator.java
index d0de3957d9..416e8fde1c 100644
--- a/client/src/main/java/com/vaadin/client/widgets/Escalator.java
+++ b/client/src/main/java/com/vaadin/client/widgets/Escalator.java
@@ -5738,40 +5738,6 @@ public class Escalator extends Widget
header.paintInsertRows(0, header.getRowCount());
footer.paintInsertRows(0, footer.getRowCount());
- // recalculateElementSizes();
-
- Scheduler.get().scheduleDeferred(new Command() {
- @Override
- public void execute() {
- /*
- * Not a faintest idea why we have to defer this call, but
- * unless it is deferred, the size of the escalator will be 0x0
- * after it is first detached and then reattached to the DOM.
- * This only applies to a bare Escalator; inside a Grid
- * everything works fine either way.
- *
- * The three autodetectRowHeightLater calls above seem obvious
- * suspects at first. However, they don't seem to have anything
- * to do with the issue, as they are no-ops in the
- * detach-reattach case.
- */
- recalculateElementSizes();
- }
- });
-
- /*
- * Note: There's no need to explicitly insert rows into the body.
- *
- * recalculateElementSizes will recalculate the height of the body. This
- * has the side-effect that as the body's size grows bigger (i.e. from 0
- * to its actual height), more escalator rows are populated. Those
- * escalator rows are then immediately rendered. This, in effect, is the
- * same thing as inserting those rows.
- *
- * In fact, having an extra paintInsertRows here would lead to duplicate
- * rows.
- */
-
boolean columnsChanged = false;
for (ColumnConfigurationImpl.Column column : columnConfiguration.columns) {
boolean columnChanged = column.measureAndSetWidthIfNeeded();
@@ -5798,6 +5764,20 @@ public class Escalator extends Widget
} else {
scroller.attachTouchListeners(getElement());
}
+
+ /*
+ * Note: There's no need to explicitly insert rows into the body.
+ *
+ * recalculateElementSizes will recalculate the height of the body. This
+ * has the side-effect that as the body's size grows bigger (i.e. from 0
+ * to its actual height), more escalator rows are populated. Those
+ * escalator rows are then immediately rendered. This, in effect, is the
+ * same thing as inserting those rows.
+ *
+ * In fact, having an extra paintInsertRows here would lead to duplicate
+ * rows.
+ */
+ recalculateElementSizes();
}
@Override