diff --git a/bundles/org.eclipse.e4.ui.css.swt/src/org/eclipse/e4/ui/css/swt/properties/css2/CSSPropertyMarginSWTHandler.java b/bundles/org.eclipse.e4.ui.css.swt/src/org/eclipse/e4/ui/css/swt/properties/css2/CSSPropertyMarginSWTHandler.java index b349af5277d..188254b801a 100644 --- a/bundles/org.eclipse.e4.ui.css.swt/src/org/eclipse/e4/ui/css/swt/properties/css2/CSSPropertyMarginSWTHandler.java +++ b/bundles/org.eclipse.e4.ui.css.swt/src/org/eclipse/e4/ui/css/swt/properties/css2/CSSPropertyMarginSWTHandler.java @@ -79,6 +79,7 @@ public void applyCSSPropertyMargin(Object element, CSSValue value, setMargin(element, RIGHT, valueList.item(1)); setMargin(element, BOTTOM, valueList.item(2)); setMargin(element, LEFT, valueList.item(1)); + break; case 2: // If two values then assigned top/bottom=v1, left/right=v2 setMargin(element, TOP, valueList.item(0)); diff --git a/tests/org.eclipse.e4.ui.tests.css.swt/src/org/eclipse/e4/ui/tests/css/swt/MarginTest.java b/tests/org.eclipse.e4.ui.tests.css.swt/src/org/eclipse/e4/ui/tests/css/swt/MarginTest.java index ef818ed5aee..6858a26ee19 100644 --- a/tests/org.eclipse.e4.ui.tests.css.swt/src/org/eclipse/e4/ui/tests/css/swt/MarginTest.java +++ b/tests/org.eclipse.e4.ui.tests.css.swt/src/org/eclipse/e4/ui/tests/css/swt/MarginTest.java @@ -176,6 +176,15 @@ void testMargin2Values() { assertEquals(15, getMargin(control, LEFT)); } + @Test + void testMargin3Values() { + Control control = createTestControl("Button { margin: 10 15 20}"); + assertEquals(10, getMargin(control, TOP)); + assertEquals(15, getMargin(control, RIGHT)); + assertEquals(20, getMargin(control, BOTTOM)); + assertEquals(15, getMargin(control, LEFT)); + } + @Test void testMargin4Values() { Control control = createTestControl("Button { margin: 10 15 20 40}");