diff options
author | Leif Åstrand <leif@vaadin.com> | 2012-02-16 12:25:51 +0200 |
---|---|---|
committer | Leif Åstrand <leif@vaadin.com> | 2012-02-16 12:25:51 +0200 |
commit | 886b434eba973022dd85a321134c3dd815e89dec (patch) | |
tree | 88d7478a6fa29bbae1d3b22a77ba3a28357566fe | |
parent | 3f60c5e4f72239c44f94f1d8f55191bd596e9893 (diff) | |
download | vaadin-framework-886b434eba973022dd85a321134c3dd815e89dec.tar.gz vaadin-framework-886b434eba973022dd85a321134c3dd815e89dec.zip |
Update MenuBar to work with MeasureManager (#8313)
-rw-r--r-- | src/com/vaadin/terminal/gwt/client/ui/VMenuBar.java | 18 | ||||
-rw-r--r-- | src/com/vaadin/terminal/gwt/client/ui/VMenuBarPaintable.java | 6 |
2 files changed, 10 insertions, 14 deletions
diff --git a/src/com/vaadin/terminal/gwt/client/ui/VMenuBar.java b/src/com/vaadin/terminal/gwt/client/ui/VMenuBar.java index c39155d032..5fa7420150 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/VMenuBar.java +++ b/src/com/vaadin/terminal/gwt/client/ui/VMenuBar.java @@ -32,15 +32,14 @@ import com.google.gwt.user.client.ui.RootPanel; import com.google.gwt.user.client.ui.Widget; import com.vaadin.terminal.gwt.client.ApplicationConnection; import com.vaadin.terminal.gwt.client.BrowserInfo; -import com.vaadin.terminal.gwt.client.ContainerResizedListener; import com.vaadin.terminal.gwt.client.TooltipInfo; import com.vaadin.terminal.gwt.client.UIDL; import com.vaadin.terminal.gwt.client.Util; import com.vaadin.terminal.gwt.client.VTooltip; public class VMenuBar extends SimpleFocusablePanel implements - CloseHandler<PopupPanel>, ContainerResizedListener, KeyPressHandler, - KeyDownHandler, FocusHandler, SubPartAware { + CloseHandler<PopupPanel>, KeyPressHandler, KeyDownHandler, + FocusHandler, SubPartAware { // The hierarchy of VMenuBar is a bit weird as VMenuBar is the Paintable, // used for the root menu but also used for the sub menus. @@ -145,16 +144,8 @@ public class VMenuBar extends SimpleFocusablePanel implements } } - @Override - public void setWidth(String width) { - if (Util.equals(this.width, width)) { - return; - } - - this.width = width; - - Util.setWidthExcludingPaddingAndBorder(this, width, 0); - + void updateSize() { + // Take from setWidth if (!subMenu) { // Only needed for root level menu hideChildren(); @@ -952,6 +943,7 @@ public class VMenuBar extends SimpleFocusablePanel implements public void iLayout() { iLayout(false); + updateSize(); } public void iLayout(boolean iconLoadEvent) { diff --git a/src/com/vaadin/terminal/gwt/client/ui/VMenuBarPaintable.java b/src/com/vaadin/terminal/gwt/client/ui/VMenuBarPaintable.java index f3e4609540..87c7a6c145 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/VMenuBarPaintable.java +++ b/src/com/vaadin/terminal/gwt/client/ui/VMenuBarPaintable.java @@ -14,7 +14,8 @@ import com.vaadin.terminal.gwt.client.UIDL; import com.vaadin.terminal.gwt.client.Util; import com.vaadin.terminal.gwt.client.ui.VMenuBar.CustomMenuItem; -public class VMenuBarPaintable extends VAbstractPaintableWidget { +public class VMenuBarPaintable extends VAbstractPaintableWidget implements + ResizeRequired { /** * This method must be implemented to update the client-side component from * UIDL data received from server. @@ -160,4 +161,7 @@ public class VMenuBarPaintable extends VAbstractPaintableWidget { return (VMenuBar) super.getWidgetForPaintable(); } + public void onResize() { + getWidgetForPaintable().iLayout(); + } } |