diff options
author | sky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-10-27 23:29:21 +0000 |
---|---|---|
committer | sky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-10-27 23:29:21 +0000 |
commit | 48abb0046f935690ea83d0290dc6ff0a60d99b27 (patch) | |
tree | eac7932bef4a68aab43c67c7a64eafcb85ea91f8 /views | |
parent | b1d3f6c4485f7a1f0587dcb203339a45325fb419 (diff) | |
download | chromium_src-48abb0046f935690ea83d0290dc6ff0a60d99b27.zip chromium_src-48abb0046f935690ea83d0290dc6ff0a60d99b27.tar.gz chromium_src-48abb0046f935690ea83d0290dc6ff0a60d99b27.tar.bz2 |
Lands http://codereview.chromium.org/291006 for Pierre:
Open all bookmarks in a bookmark menu folder according to the window disposition derived from the event flags. This is currently only possible with a middle click on the top level bookmark bar button.
BUG=19597
TEST=Control click a folder on your bookmark bar, and thorougly test
bookmark bar, especially with folders.
Review URL: http://codereview.chromium.org/334047
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30281 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'views')
-rw-r--r-- | views/controls/button/menu_button.cc | 4 | ||||
-rw-r--r-- | views/controls/menu/menu_controller.cc | 6 |
2 files changed, 7 insertions, 3 deletions
diff --git a/views/controls/button/menu_button.cc b/views/controls/button/menu_button.cc index e457304..ced0942 100644 --- a/views/controls/button/menu_button.cc +++ b/views/controls/button/menu_button.cc @@ -189,8 +189,8 @@ bool MenuButton::OnMousePressed(const MouseEvent& e) { void MenuButton::OnMouseReleased(const MouseEvent& e, bool canceled) { if (GetDragOperations(e.x(), e.y()) != DragDropTypes::DRAG_NONE && - state() != BS_DISABLED && !canceled && !InDrag() && - e.IsOnlyLeftMouseButton() && HitTest(e.location())) { + state() != BS_DISABLED && !canceled && !InDrag() && !IsTriggerableEvent(e) + && HitTest(e.location())) { Activate(); } else { TextButton::OnMouseReleased(e, canceled); diff --git a/views/controls/menu/menu_controller.cc b/views/controls/menu/menu_controller.cc index 4388d91..ef33bc7 100644 --- a/views/controls/menu/menu_controller.cc +++ b/views/controls/menu/menu_controller.cc @@ -439,7 +439,11 @@ void MenuController::OnMouseReleased(SubmenuView* source, return; } - if (!part.is_scroll() && part.menu && !part.menu->HasSubmenu()) { + // We can use Ctrl+click or the middle mouse button to recursively open urls + // for selected folder menu items. If it's only a left click, show the + // contents of the folder. + if (!part.is_scroll() && part.menu && !(part.menu->HasSubmenu() && + (event.GetFlags() == MouseEvent::EF_LEFT_BUTTON_DOWN))) { if (part.menu->GetDelegate()->IsTriggerableEvent(event)) { Accept(part.menu, event.GetFlags()); return; |