summaryrefslogtreecommitdiffstats
path: root/client
diff options
context:
space:
mode:
authorTeppo Kurki <teppo.kurki@vaadin.com>2015-06-30 09:28:29 +0300
committerTeppo Kurki <teppo.kurki@vaadin.com>2015-06-30 11:39:38 +0300
commitc95698a5950c0cb7260d55661bf1d038c71b1a8d (patch)
treedd59e16ec64e0eeb50fcc5bc8550b3a1636a301b /client
parentf4069826fb36ecc62f9436b99b046201f562d2f9 (diff)
downloadvaadin-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.java31
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;
}
}