diff options
author | John Ahlroos <john@vaadin.com> | 2013-03-13 11:23:32 +0200 |
---|---|---|
committer | Vaadin Code Review <review@vaadin.com> | 2013-03-13 11:08:13 +0000 |
commit | 673f6dea46d1cb16c2be4d6e6882a66e4a7adce7 (patch) | |
tree | dc278bf73d9f11740c0b0679e721c434c941a6a9 /client | |
parent | 89595f61eafe6685167f1f6defe6d370e2952297 (diff) | |
download | vaadin-framework-673f6dea46d1cb16c2be4d6e6882a66e4a7adce7.tar.gz vaadin-framework-673f6dea46d1cb16c2be4d6e6882a66e4a7adce7.zip |
Fixed broken Gridlayout cell position calculation in IE10 #11303
Change-Id: Ic587c940cab1d145d6be1136c12a46a4b2adb277
Diffstat (limited to 'client')
-rw-r--r-- | client/src/com/vaadin/client/ui/VGridLayout.java | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/client/src/com/vaadin/client/ui/VGridLayout.java b/client/src/com/vaadin/client/ui/VGridLayout.java index d024c1caae..46051655b8 100644 --- a/client/src/com/vaadin/client/ui/VGridLayout.java +++ b/client/src/com/vaadin/client/ui/VGridLayout.java @@ -219,24 +219,28 @@ public class VGridLayout extends ComplexPanel { Element element = getElement(); int paddingTop = layoutManager.getPaddingTop(element); int paddingBottom = layoutManager.getPaddingBottom(element); + int y = paddingTop; + for (int column = 0; column < cells.length; column++) { + y = paddingTop + 1 - 1; // Ensure IE10 does not optimize this out by + // adding something to evaluate on the RHS + // #11303 - for (int i = 0; i < cells.length; i++) { - y = paddingTop; - for (int j = 0; j < cells[i].length; j++) { - Cell cell = cells[i][j]; + for (int row = 0; row < cells[column].length; row++) { + Cell cell = cells[column][row]; if (cell != null) { int reservedMargin; - if (cell.rowspan + j >= cells[i].length) { + if (cell.rowspan + row >= cells[column].length) { // Make room for layout padding for cells reaching the // bottom of the layout reservedMargin = paddingBottom; } else { reservedMargin = 0; } + cell.layoutVertically(y, reservedMargin); } - y += rowHeights[j] + verticalSpacing; + y += rowHeights[row] + verticalSpacing; } } @@ -245,6 +249,7 @@ public class VGridLayout extends ComplexPanel { + layoutManager.getPaddingBottom(element) + layoutManager.getBorderHeight(element); element.getStyle().setHeight(outerHeight, Unit.PX); + getConnector().getLayoutManager().reportOuterHeight(getConnector(), outerHeight); } |