From: Leif Åstrand Date: Wed, 4 Apr 2012 14:26:07 +0000 (+0300) Subject: Allocate full width to relative children. X-Git-Tag: 7.0.0.alpha2~65^2~23 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=ef6c88ecc6b1c2d8884468bff1aa0e2040bfa002;p=vaadin-framework.git Allocate full width to relative children. This reduces the risk of initially adding scrollbars that would require additional propagation to get rid of. --- diff --git a/src/com/vaadin/terminal/gwt/client/ui/AbstractOrderedLayoutConnector.java b/src/com/vaadin/terminal/gwt/client/ui/AbstractOrderedLayoutConnector.java index 825b54bab6..d98f10c419 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/AbstractOrderedLayoutConnector.java +++ b/src/com/vaadin/terminal/gwt/client/ui/AbstractOrderedLayoutConnector.java @@ -7,6 +7,7 @@ import java.util.List; import com.google.gwt.core.client.GWT; import com.google.gwt.dom.client.Style; +import com.google.gwt.dom.client.Style.Unit; import com.google.gwt.user.client.Element; import com.google.gwt.user.client.ui.Widget; import com.vaadin.terminal.gwt.client.ApplicationConnection; @@ -285,6 +286,9 @@ public abstract class AbstractOrderedLayoutConnector extends .getStylePrimaryName(), child, this); } layout.addOrMove(slot, currentIndex++); + if (child.isRelativeWidth()) { + slot.getWrapperElement().getStyle().setWidth(100, Unit.PCT); + } } for (ComponentConnector child : previousChildren) { diff --git a/src/com/vaadin/terminal/gwt/client/ui/VGridLayout.java b/src/com/vaadin/terminal/gwt/client/ui/VGridLayout.java index f9782f5143..c0c14fdee7 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/VGridLayout.java +++ b/src/com/vaadin/terminal/gwt/client/ui/VGridLayout.java @@ -562,6 +562,10 @@ public class VGridLayout extends ComplexPanel { if (slot == null || slot.getChild() != childConnector) { slot = new ComponentConnectorLayoutSlot(CLASSNAME, childConnector, getConnector()); + if (childConnector.isRelativeWidth()) { + slot.getWrapperElement().getStyle() + .setWidth(100, Unit.PCT); + } Element slotWrapper = slot.getWrapperElement(); getElement().appendChild(slotWrapper);