diff options
author | Teppo Kurki <teppo.kurki@vaadin.com> | 2015-06-30 09:28:29 +0300 |
---|---|---|
committer | Teppo Kurki <teppo.kurki@vaadin.com> | 2015-06-30 11:39:38 +0300 |
commit | c95698a5950c0cb7260d55661bf1d038c71b1a8d (patch) | |
tree | dd59e16ec64e0eeb50fcc5bc8550b3a1636a301b /client | |
parent | f4069826fb36ecc62f9436b99b046201f562d2f9 (diff) | |
download | vaadin-framework-c95698a5950c0cb7260d55661bf1d038c71b1a8d.tar.gz vaadin-framework-c95698a5950c0cb7260d55661bf1d038c71b1a8d.zip |
Do not let Escalator set width to spacer row's TD element (#18223)
Change-Id: I8dec7bbbfc93436eb2fbc1c15cb53e6bfca99e78
Diffstat (limited to 'client')
-rw-r--r-- | client/src/com/vaadin/client/widgets/Escalator.java | 31 |
1 files changed, 17 insertions, 14 deletions
diff --git a/client/src/com/vaadin/client/widgets/Escalator.java b/client/src/com/vaadin/client/widgets/Escalator.java index 1bb3fe3747..436b512294 100644 --- a/client/src/com/vaadin/client/widgets/Escalator.java +++ b/client/src/com/vaadin/client/widgets/Escalator.java @@ -1816,20 +1816,23 @@ public class Escalator extends Widget implements RequiresResize, public void reapplyColumnWidths() { Element row = root.getFirstChildElement(); while (row != null) { - Element cell = row.getFirstChildElement(); - int columnIndex = 0; - while (cell != null) { - final double width = getCalculatedColumnWidthWithColspan( - cell, columnIndex); + // Only handle non-spacer rows + if (!body.spacerContainer.isSpacer(row)) { + Element cell = row.getFirstChildElement(); + int columnIndex = 0; + while (cell != null) { + final double width = getCalculatedColumnWidthWithColspan( + cell, columnIndex); - /* - * TODO Should Escalator implement ProvidesResize at some - * point, this is where we need to do that. - */ - cell.getStyle().setWidth(width, Unit.PX); + /* + * TODO Should Escalator implement ProvidesResize at + * some point, this is where we need to do that. + */ + cell.getStyle().setWidth(width, Unit.PX); - cell = cell.getNextSiblingElement(); - columnIndex++; + cell = cell.getNextSiblingElement(); + columnIndex++; + } } row = row.getNextSiblingElement(); } @@ -4795,7 +4798,7 @@ public class Escalator extends Widget implements RequiresResize, } /** Checks if a given element is a spacer element */ - public boolean isSpacer(TableRowElement focusedRow) { + public boolean isSpacer(Element row) { /* * If this needs optimization, we could do a more heuristic check @@ -4804,7 +4807,7 @@ public class Escalator extends Widget implements RequiresResize, */ for (SpacerImpl spacer : rowIndexToSpacer.values()) { - if (spacer.getRootElement().equals(focusedRow)) { + if (spacer.getRootElement().equals(row)) { return true; } } |