diff options
author | sky@google.com <sky@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-09-08 14:46:36 +0000 |
---|---|---|
committer | sky@google.com <sky@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-09-08 14:46:36 +0000 |
commit | 2e1f49096ed49419de8c740a20ab106c14ffbf44 (patch) | |
tree | 787ff8465a8c859105a38b155ce89057c13ea8ce /chrome/views/chrome_menu.cc | |
parent | 30039e6ec600f1ac2a34e0881f4c0c10ee6f80cd (diff) | |
download | chromium_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.cc | 11 |
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; |