summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLeif Åstrand <leif@vaadin.com>2012-02-16 12:25:51 +0200
committerLeif Åstrand <leif@vaadin.com>2012-02-16 12:25:51 +0200
commit886b434eba973022dd85a321134c3dd815e89dec (patch)
tree88d7478a6fa29bbae1d3b22a77ba3a28357566fe
parent3f60c5e4f72239c44f94f1d8f55191bd596e9893 (diff)
downloadvaadin-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.java18
-rw-r--r--src/com/vaadin/terminal/gwt/client/ui/VMenuBarPaintable.java6
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();
+ }
}