From 6f1f83d4b95a45db03c5a74ad09b22541fb06e64 Mon Sep 17 00:00:00 2001 From: Teemu Suo-Anttila Date: Fri, 24 Mar 2017 09:22:10 +0200 Subject: Fix default header content changes on init (#8921) This patch also enables an old test that was pending #8128 Fixes vaadin/framework8-issues#556 --- .../client/connectors/grid/GridConnector.java | 26 ++++++++++++---------- 1 file changed, 14 insertions(+), 12 deletions(-) (limited to 'client') diff --git a/client/src/main/java/com/vaadin/client/connectors/grid/GridConnector.java b/client/src/main/java/com/vaadin/client/connectors/grid/GridConnector.java index 06c4bb0f37..1c457ec4db 100644 --- a/client/src/main/java/com/vaadin/client/connectors/grid/GridConnector.java +++ b/client/src/main/java/com/vaadin/client/connectors/grid/GridConnector.java @@ -308,22 +308,24 @@ public class GridConnector extends AbstractListingConnector */ @OnStateChange("header") void updateHeader() { - final Grid grid = getWidget(); - final SectionState state = getState().header; + Scheduler.get().scheduleFinally(() -> { + final Grid grid = getWidget(); + final SectionState state = getState().header; - while (grid.getHeaderRowCount() > 0) { - grid.removeHeaderRow(0); - } + while (grid.getHeaderRowCount() > 0) { + grid.removeHeaderRow(0); + } - for (RowState rowState : state.rows) { - HeaderRow row = grid.appendHeaderRow(); + for (RowState rowState : state.rows) { + HeaderRow row = grid.appendHeaderRow(); - if (rowState.defaultHeader) { - grid.setDefaultHeaderRow(row); - } + if (rowState.defaultHeader) { + grid.setDefaultHeaderRow(row); + } - updateStaticRow(rowState, row); - } + updateStaticRow(rowState, row); + } + }); } private void updateStaticRow(RowState rowState, -- cgit v1.2.3