]> source.dussan.org Git - vaadin-framework.git/commitdiff
Fix margin in declarative format is recognized as unsupported property gridlayout...
authorPekka Hyvönen <pekka@vaadin.com>
Mon, 12 Dec 2016 09:35:32 +0000 (11:35 +0200)
committerGitHub <noreply@github.com>
Mon, 12 Dec 2016 09:35:32 +0000 (11:35 +0200)
Backported to 7.7 from master (8).

Fixes vaadin/framework8-issues#465

Change-Id: I9734341b747b8d16020443c71d72fcfd7e331af7

server/src/main/java/com/vaadin/ui/GridLayout.java
server/src/test/java/com/vaadin/tests/server/component/gridlayout/GridLayoutDeclarativeTest.java

index e0ad4408ca1c604151cc8ad8380eeb22188b2d87..7c383feab4f40d649b6d415c946c3792ee9efe4d 100644 (file)
@@ -1628,6 +1628,11 @@ public class GridLayout extends AbstractLayout
         result.add("cursor-y");
         result.add("rows");
         result.add("columns");
+        result.add("margin");
+        result.add("margin-left");
+        result.add("margin-right");
+        result.add("margin-top");
+        result.add("margin-bottom");
         return result;
     }
 }
index 380d39e054f2fbfb3df3b40c9c2bdc150920276d..a5240512809d52e01063b59568021aeca152c6f6 100644 (file)
@@ -22,6 +22,7 @@ import java.io.IOException;
 import org.junit.Assert;
 import org.junit.Test;
 
+import com.vaadin.shared.ui.MarginInfo;
 import com.vaadin.shared.ui.label.ContentMode;
 import com.vaadin.tests.server.component.DeclarativeMarginTestBase;
 import com.vaadin.ui.Alignment;
@@ -302,4 +303,26 @@ public class GridLayoutDeclarativeTest
         testWrite(design, gl);
         testRead(design, gl);
     }
+
+    @Test
+    public void testGridLayoutMargins() throws IOException {
+        String design = "<vaadin-grid-layout _id=\"marginComponent\"margin>"
+                + "<row><column><vaadin-grid-layout _id=\"marginLeftComponent\" margin-left></vaadin-grid-layout></column></row>"
+                + "<row><column><vaadin-grid-layout _id=\"marginRightComponent\" margin-right></vaadin-grid-layout></column></row>"
+                + "<row><column><vaadin-grid-layout _id=\"marginTopComponent\" margin-top></vaadin-grid-layout></column></row>"
+                + "<row><column><vaadin-grid-layout _id=\"marginBottomComponent\" margin-bottom></vaadin-grid-layout></column></row>"
+                + "</vaadin-grid-layout>";
+        DesignContext context = Design
+                .read(new ByteArrayInputStream(design.getBytes("UTF-8")), null);
+        Assert.assertEquals(null, context.getCustomAttributes(
+                context.getComponentByLocalId("marginComponent")));
+        Assert.assertEquals(null, context.getCustomAttributes(
+                context.getComponentByLocalId("marginLeftComponent")));
+        Assert.assertEquals(null, context.getCustomAttributes(
+                context.getComponentByLocalId("marginRightComponent")));
+        Assert.assertEquals(null, context.getCustomAttributes(
+                context.getComponentByLocalId("marginTopComponent")));
+        Assert.assertEquals(null, context.getCustomAttributes(
+                context.getComponentByLocalId("marginBottomComponent")));
+    }
 }