From: Matti Tahvonen Date: Mon, 13 Aug 2007 07:47:24 +0000 (+0000) Subject: added constraint for context menu to stay withing browser width X-Git-Tag: 6.7.0.beta1~6117 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=a3194240a05210bfd9028d476fed3eeabeb0b909;p=vaadin-framework.git added constraint for context menu to stay withing browser width svn changeset:1987/svn branch:trunk --- diff --git a/src/com/itmill/toolkit/terminal/gwt/client/ui/IContextMenu.java b/src/com/itmill/toolkit/terminal/gwt/client/ui/IContextMenu.java index ea7de7e2e0..52b40a993d 100644 --- a/src/com/itmill/toolkit/terminal/gwt/client/ui/IContextMenu.java +++ b/src/com/itmill/toolkit/terminal/gwt/client/ui/IContextMenu.java @@ -1,5 +1,7 @@ package com.itmill.toolkit.terminal.gwt.client.ui; +import com.google.gwt.user.client.DOM; +import com.google.gwt.user.client.Window; import com.google.gwt.user.client.ui.MenuBar; import com.google.gwt.user.client.ui.MenuItem; import com.google.gwt.user.client.ui.PopupPanel; @@ -46,14 +48,17 @@ public class IContextMenu extends PopupPanel { } setPopupPosition(left, top); - show(); + // fix position if "outside" screen + if(DOM.getIntAttribute(getElement(),"offsetWidth") + left > Window.getClientWidth()) { + left = Window.getClientWidth() - DOM.getIntAttribute(getElement(),"offsetWidth"); + setPopupPosition(left, top); + } } public void showAt(IActionOwner ao, int left, int top) { setActionOwner(ao); showAt(left, top); - } /**