summaryrefslogtreecommitdiffstats
path: root/client
diff options
context:
space:
mode:
authorAnna Koskinen <Ansku@users.noreply.github.com>2018-02-06 16:51:25 +0200
committerIlia Motornyi <elmot@vaadin.com>2018-02-06 16:51:25 +0200
commit5df70b4594691f2048bd329daed8998f36b3a141 (patch)
tree4e239ca5f5053675aa1bdee81b56a74db401092c /client
parentd9dd40d0e444224b734dccb98d6075aef4dd6b3e (diff)
downloadvaadin-framework-5df70b4594691f2048bd329daed8998f36b3a141.tar.gz
vaadin-framework-5df70b4594691f2048bd329daed8998f36b3a141.zip
Fix GridLayout spacing if first row/column empty and set to be hidden (#10593)
Diffstat (limited to 'client')
-rw-r--r--client/src/main/java/com/vaadin/client/ui/VGridLayout.java28
1 files changed, 22 insertions, 6 deletions
diff --git a/client/src/main/java/com/vaadin/client/ui/VGridLayout.java b/client/src/main/java/com/vaadin/client/ui/VGridLayout.java
index b7adf70c2c..d85a0bd0d3 100644
--- a/client/src/main/java/com/vaadin/client/ui/VGridLayout.java
+++ b/client/src/main/java/com/vaadin/client/ui/VGridLayout.java
@@ -228,11 +228,19 @@ public class VGridLayout extends ComplexPanel {
}
private int calcRowUsedSpace() {
- int usedSpace = minRowHeights[0];
+ int usedSpace = 0;
int verticalSpacing = getVerticalSpacing();
- for (int i = 1; i < minRowHeights.length; i++) {
+ boolean visibleFound = false;
+ for (int i = 0; i < minRowHeights.length; i++) {
if (minRowHeights[i] > 0 || !hiddenEmptyRow(i)) {
- usedSpace += verticalSpacing + minRowHeights[i];
+ if (visibleFound) {
+ // only include spacing if there already is a visible row
+ // before this one
+ usedSpace += verticalSpacing + minRowHeights[i];
+ } else {
+ usedSpace += minRowHeights[i];
+ visibleFound = true;
+ }
}
}
return usedSpace;
@@ -289,11 +297,19 @@ public class VGridLayout extends ComplexPanel {
* Calculates column used space
*/
private int calcColumnUsedSpace() {
- int usedSpace = minColumnWidths[0];
+ int usedSpace = 0;
int horizontalSpacing = getHorizontalSpacing();
- for (int i = 1; i < minColumnWidths.length; i++) {
+ boolean visibleFound = false;
+ for (int i = 0; i < minColumnWidths.length; i++) {
if (minColumnWidths[i] > 0 || !hiddenEmptyColumn(i)) {
- usedSpace += horizontalSpacing + minColumnWidths[i];
+ if (visibleFound) {
+ // only include spacing if there already is a visible column
+ // before this one
+ usedSpace += horizontalSpacing + minColumnWidths[i];
+ } else {
+ usedSpace += minColumnWidths[i];
+ visibleFound = true;
+ }
}
}
return usedSpace;