summaryrefslogtreecommitdiffstats
path: root/chrome/views/chrome_menu.cc
diff options
context:
space:
mode:
authorsky@google.com <sky@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2008-09-08 14:46:36 +0000
committersky@google.com <sky@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2008-09-08 14:46:36 +0000
commit2e1f49096ed49419de8c740a20ab106c14ffbf44 (patch)
tree787ff8465a8c859105a38b155ce89057c13ea8ce /chrome/views/chrome_menu.cc
parent30039e6ec600f1ac2a34e0881f4c0c10ee6f80cd (diff)
downloadchromium_src-2e1f49096ed49419de8c740a20ab106c14ffbf44.zip
chromium_src-2e1f49096ed49419de8c740a20ab106c14ffbf44.tar.gz
chromium_src-2e1f49096ed49419de8c740a20ab106c14ffbf44.tar.bz2
This patch is from Andrew Brampton <me@bramp.net>.
This patches allows menu items in PopUpMenus to be clicked with the right mouse button. menu.cc controls the web content popup menus, and some others chrome_menu{.cc,.h} controls popup menu on the chrome, for example right clicking on a tab. BUG=718 TEST=Bring up any menu (wrench/document) and right click on one of the items. This should select the item. Try the same with any of the bookmark menus. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1838 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/views/chrome_menu.cc')
-rw-r--r--chrome/views/chrome_menu.cc11
1 files changed, 8 insertions, 3 deletions
diff --git a/chrome/views/chrome_menu.cc b/chrome/views/chrome_menu.cc
index 360f6c1..33452cd 100644
--- a/chrome/views/chrome_menu.cc
+++ b/chrome/views/chrome_menu.cc
@@ -1785,9 +1785,14 @@ void MenuController::OnMouseReleased(SubmenuView* source,
SetSelection(pending_state_.item, open_submenu, true);
CPoint loc(event.GetX(), event.GetY());
View::ConvertPointToScreen(source->GetScrollViewContainer(), &loc);
- part.menu->GetDelegate()->ShowContextMenu(
- part.menu, part.menu->GetCommand(), loc.x, loc.y, true);
- } else if (!part.is_scroll() && part.menu && !part.menu->HasSubmenu()) {
+
+ // If we open a context menu just return now
+ if (part.menu->GetDelegate()->ShowContextMenu(
+ part.menu, part.menu->GetCommand(), loc.x, loc.y, true))
+ return;
+ }
+
+ if (!part.is_scroll() && part.menu && !part.menu->HasSubmenu()) {
if (part.menu->GetDelegate()->IsTriggerableEvent(event)) {
Accept(part.menu, event.GetFlags());
return;