summaryrefslogtreecommitdiffstats
path: root/ui/views/controls/menu/menu_controller.cc
diff options
context:
space:
mode:
authoryoichio@chromium.org <yoichio@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-03-14 17:24:08 +0000
committeryoichio@chromium.org <yoichio@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-03-14 17:24:08 +0000
commitc4bf51469712fc583dc73d9a02019f3411216e85 (patch)
treedd5d95b7eb05bcf87e14819cc618353257befac5 /ui/views/controls/menu/menu_controller.cc
parent1fd257aa8a206d829eee69eb6bfd76702b357980 (diff)
downloadchromium_src-c4bf51469712fc583dc73d9a02019f3411216e85.zip
chromium_src-c4bf51469712fc583dc73d9a02019f3411216e85.tar.gz
chromium_src-c4bf51469712fc583dc73d9a02019f3411216e85.tar.bz2
bookmarks: Show context menu on empty bookmark folder.
BUG=110939 TEST=interactive_ui_tests Review URL: https://chromiumcodereview.appspot.com/12558006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@188110 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ui/views/controls/menu/menu_controller.cc')
-rw-r--r--ui/views/controls/menu/menu_controller.cc14
1 files changed, 11 insertions, 3 deletions
diff --git a/ui/views/controls/menu/menu_controller.cc b/ui/views/controls/menu/menu_controller.cc
index c4e19f0..d9887bf 100644
--- a/ui/views/controls/menu/menu_controller.cc
+++ b/ui/views/controls/menu/menu_controller.cc
@@ -462,9 +462,17 @@ void MenuController::OnMouseReleased(SubmenuView* source,
possible_drag_ = false;
DCHECK(blocking_run_);
MenuPart part = GetMenuPart(source, event.location());
- if (event.IsRightMouseButton() && (part.type == MenuPart::MENU_ITEM &&
- part.menu)) {
- if (ShowContextMenu(part.menu, source, event))
+ if (event.IsRightMouseButton() && part.type == MenuPart::MENU_ITEM) {
+ MenuItemView* menu = part.menu;
+ // |menu| is NULL means this event is from an empty menu or a separator.
+ // If it is from an empty menu, use parent context menu instead of that.
+ if (menu == NULL &&
+ part.submenu->child_count() == 1 &&
+ part.submenu->child_at(0)->id()
+ == views::MenuItemView::kEmptyMenuItemViewID)
+ menu = part.parent;
+
+ if (menu != NULL && ShowContextMenu(menu, source, event))
return;
}