New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 627344 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Long OOO (go/where-is-mgiuca)
Closed: Aug 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: All
Pri: 3
Type: Bug



Sign in to add a comment

Clean up AcceleratorProvider::GetAcceleratorForCommandId and friends

Project Member Reported by mgiuca@chromium.org, Jul 12 2016

Issue description

AcceleratorProvider::GetAcceleratorForCommandId (and related methods: SimpleMenuModel::Delegate::GetAcceleratorForCommandId and ButtonMenuItemModel::Delegate::GetAcceleratorForCommandId) has a number of cascading issues which I'd like to fix up (not urgent).

These methods have ~100 overrides between them so it is a non-trivial cleanup.

1. They are non-const. There is no reason for them to be non-const, as they purely retrieve information.
2. Nearly every. single. override. of SMM and BMIM's GetAcceleratorForCommandId just returns false. We could delete almost all of the overrides if SMM and BMIM provided a default implementation. (Returning false seems like a good default in this case; it just means you don't want any accelerators in your menu.)
3. SimpleMenuModel::Delegate and ButtonMenuItemModel::Delegate, by providing GetAcceleratorForCommandId, essentially implement the AcceleratorProvider interface, yet they are not subclasses of AcceleratorProvider.
4. RenderViewContextMenuBase declares a pure virtual override of GetAcceleratorForCommandId ("override = 0"). This can just be deleted.

I'm going to go ahead and fix up these issues.
 

Comment 1 by mgiuca@chromium.org, Jul 12 2016

Note to self: MenuModelTest inherits from SMM::Delegate and AcceleratorProvider. If doing Step 3, remove AcceleratorProvider from this and the GetAcceleratorForCommandId override. (And check for others like it.)

Comment 2 by mgiuca@chromium.org, Jul 12 2016

Stats:
- 22 overrides (fewer than I thought) just return false and can be deleted during Step 2.
- 21 overrides do something else.

(So just over half the overrides do nothing; I think that is still grounds for having a default.)

Comment 4 by mgiuca@chromium.org, Jul 12 2016

The final stats (after fixing all the overrides):
- return false (can be deleted): 39
- real implementation (must stay): 23

(So well over half)
Project Member

Comment 5 by bugdroid1@chromium.org, Jul 13 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/272470e81fb7c7b47298e32009e2bae2001eb480

commit 272470e81fb7c7b47298e32009e2bae2001eb480
Author: mgiuca <mgiuca@chromium.org>
Date: Wed Jul 13 04:13:33 2016

AcceleratorProvider: Make GetAcceleratorForCommandId const.

Same for SimpleMenuModel and ButtonMenuItemModel.

There is no reason for it to be non-const. Updated all subclasses.

SimpleMenuModel::GetIndexOfCommandID was also made const.

TBR=derat@chromium.org,avi@chromium.org,hajimehoshi@chromium.org,mkwst@chromium.org
BUG= 627344 

Review-Url: https://codereview.chromium.org/2133013002
Cr-Commit-Position: refs/heads/master@{#405004}

[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ash/common/shelf/shelf_alignment_menu.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ash/common/shelf/shelf_alignment_menu.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ash/common/system/web_notification/web_notification_tray.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ash/common/system/web_notification/web_notification_tray.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ash/shelf/shelf_view_unittest.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ash/shell/context_menu.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ash/shell/context_menu.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ash/shell_unittest.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ash/sysui/context_menu_mus.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ash/sysui/context_menu_mus.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ash/sysui/shelf_delegate_mus.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/apps/app_browsertest.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/download/download_shelf_context_menu.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/download/download_shelf_context_menu.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/extensions/extension_context_menu_model.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/extensions/extension_context_menu_model.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/media_galleries/media_gallery_context_menu.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/media_galleries/media_gallery_context_menu.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/profiles/profile_window_browsertest.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/renderer_context_menu/mock_render_view_context_menu.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/renderer_context_menu/mock_render_view_context_menu.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/renderer_context_menu/open_with_menu_factory_ash.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/renderer_context_menu/open_with_menu_factory_ash.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/renderer_context_menu/render_view_context_menu_test_util.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/renderer_context_menu/render_view_context_menu_test_util.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/status_icons/status_icon_menu_model.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/status_icons/status_icon_menu_model.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/app_list/app_context_menu.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/app_list/app_context_menu.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/ash/launcher/launcher_application_menu_item_model.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/ash/launcher/launcher_application_menu_item_model.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/ash/launcher/launcher_context_menu.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/ash/launcher/launcher_context_menu.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/ash/multi_user/multi_user_context_menu_chromeos.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/autofill/autofill_dialog_models.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/autofill/autofill_dialog_models.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/bookmarks/bookmark_context_menu_controller.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/bookmarks/bookmark_context_menu_controller.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/cocoa/app_menu/app_menu_controller.mm
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/cocoa/browser/exclusive_access_controller_views.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/cocoa/browser/exclusive_access_controller_views.mm
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/cocoa/renderer_context_menu/render_view_context_menu_mac.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/cocoa/renderer_context_menu/render_view_context_menu_mac.mm
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/cocoa/tabs/tab_controller.mm
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/content_settings/content_setting_media_menu_model.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/content_settings/content_setting_media_menu_model.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/panels/panel_extension_browsertest.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/toolbar/app_menu_model.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/toolbar/app_menu_model.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/toolbar/app_menu_model_unittest.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/toolbar/media_router_contextual_menu.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/toolbar/media_router_contextual_menu.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/toolbar/recent_tabs_sub_menu_model.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/toolbar/recent_tabs_sub_menu_model.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/bookmarks/bookmark_editor_view.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/bookmarks/bookmark_editor_view.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/frame/browser_view.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/frame/browser_view.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/frame/system_menu_model_delegate.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/frame/system_menu_model_delegate.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/new_task_manager_view.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/new_task_manager_view.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/renderer_context_menu/render_view_context_menu_views.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/renderer_context_menu/render_view_context_menu_views.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/tabs/browser_tab_strip_controller.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/toolbar/reload_button.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/toolbar/reload_button.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/toolbar/toolbar_view.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/toolbar/toolbar_view.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/translate/translate_bubble_view.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/translate/translate_bubble_view.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/website_settings/permission_menu_model.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/website_settings/permission_menu_model.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/test/base/menu_model_test.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/test/base/menu_model_test.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/components/renderer_context_menu/render_view_context_menu_base.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/components/translate/core/browser/options_menu_model.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/components/translate/core/browser/options_menu_model.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/content/shell/browser/shell_views.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ui/app_list/app_list_menu.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ui/app_list/app_list_menu.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ui/base/accelerators/accelerator.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ui/base/cocoa/menu_controller_unittest.mm
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ui/base/models/button_menu_item_model.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ui/base/models/simple_menu_model.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ui/base/models/simple_menu_model.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ui/message_center/message_center_tray.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ui/message_center/views/notifier_settings_view.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ui/views/controls/menu/menu_runner_cocoa_unittest.mm
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ui/views/controls/textfield/textfield.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ui/views/controls/textfield/textfield.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ui/views/examples/menu_example.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ui/views/examples/tree_view_example.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ui/views/examples/tree_view_example.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ui/views/touchui/touch_selection_controller_impl_unittest.cc

Project Member

Comment 6 by bugdroid1@chromium.org, Jul 13 2016

Labels: merge-merged-2795
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/272470e81fb7c7b47298e32009e2bae2001eb480

commit 272470e81fb7c7b47298e32009e2bae2001eb480
Author: mgiuca <mgiuca@chromium.org>
Date: Wed Jul 13 04:13:33 2016

AcceleratorProvider: Make GetAcceleratorForCommandId const.

Same for SimpleMenuModel and ButtonMenuItemModel.

There is no reason for it to be non-const. Updated all subclasses.

SimpleMenuModel::GetIndexOfCommandID was also made const.

TBR=derat@chromium.org,avi@chromium.org,hajimehoshi@chromium.org,mkwst@chromium.org
BUG= 627344 

Review-Url: https://codereview.chromium.org/2133013002
Cr-Commit-Position: refs/heads/master@{#405004}

[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ash/common/shelf/shelf_alignment_menu.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ash/common/shelf/shelf_alignment_menu.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ash/common/system/web_notification/web_notification_tray.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ash/common/system/web_notification/web_notification_tray.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ash/shelf/shelf_view_unittest.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ash/shell/context_menu.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ash/shell/context_menu.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ash/shell_unittest.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ash/sysui/context_menu_mus.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ash/sysui/context_menu_mus.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ash/sysui/shelf_delegate_mus.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/apps/app_browsertest.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/download/download_shelf_context_menu.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/download/download_shelf_context_menu.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/extensions/extension_context_menu_model.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/extensions/extension_context_menu_model.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/media_galleries/media_gallery_context_menu.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/media_galleries/media_gallery_context_menu.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/profiles/profile_window_browsertest.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/renderer_context_menu/mock_render_view_context_menu.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/renderer_context_menu/mock_render_view_context_menu.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/renderer_context_menu/open_with_menu_factory_ash.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/renderer_context_menu/open_with_menu_factory_ash.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/renderer_context_menu/render_view_context_menu_test_util.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/renderer_context_menu/render_view_context_menu_test_util.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/status_icons/status_icon_menu_model.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/status_icons/status_icon_menu_model.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/app_list/app_context_menu.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/app_list/app_context_menu.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/ash/launcher/launcher_application_menu_item_model.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/ash/launcher/launcher_application_menu_item_model.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/ash/launcher/launcher_context_menu.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/ash/launcher/launcher_context_menu.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/ash/multi_user/multi_user_context_menu_chromeos.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/autofill/autofill_dialog_models.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/autofill/autofill_dialog_models.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/bookmarks/bookmark_context_menu_controller.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/bookmarks/bookmark_context_menu_controller.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/cocoa/app_menu/app_menu_controller.mm
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/cocoa/browser/exclusive_access_controller_views.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/cocoa/browser/exclusive_access_controller_views.mm
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/cocoa/renderer_context_menu/render_view_context_menu_mac.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/cocoa/renderer_context_menu/render_view_context_menu_mac.mm
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/cocoa/tabs/tab_controller.mm
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/content_settings/content_setting_media_menu_model.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/content_settings/content_setting_media_menu_model.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/panels/panel_extension_browsertest.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/toolbar/app_menu_model.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/toolbar/app_menu_model.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/toolbar/app_menu_model_unittest.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/toolbar/media_router_contextual_menu.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/toolbar/media_router_contextual_menu.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/toolbar/recent_tabs_sub_menu_model.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/toolbar/recent_tabs_sub_menu_model.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/bookmarks/bookmark_editor_view.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/bookmarks/bookmark_editor_view.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/frame/browser_view.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/frame/browser_view.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/frame/system_menu_model_delegate.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/frame/system_menu_model_delegate.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/new_task_manager_view.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/new_task_manager_view.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/renderer_context_menu/render_view_context_menu_views.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/renderer_context_menu/render_view_context_menu_views.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/tabs/browser_tab_strip_controller.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/toolbar/reload_button.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/toolbar/reload_button.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/toolbar/toolbar_view.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/toolbar/toolbar_view.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/translate/translate_bubble_view.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/views/translate/translate_bubble_view.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/website_settings/permission_menu_model.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/browser/ui/website_settings/permission_menu_model.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/test/base/menu_model_test.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/chrome/test/base/menu_model_test.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/components/renderer_context_menu/render_view_context_menu_base.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/components/translate/core/browser/options_menu_model.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/components/translate/core/browser/options_menu_model.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/content/shell/browser/shell_views.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ui/app_list/app_list_menu.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ui/app_list/app_list_menu.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ui/base/accelerators/accelerator.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ui/base/cocoa/menu_controller_unittest.mm
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ui/base/models/button_menu_item_model.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ui/base/models/simple_menu_model.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ui/base/models/simple_menu_model.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ui/message_center/message_center_tray.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ui/message_center/views/notifier_settings_view.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ui/views/controls/menu/menu_runner_cocoa_unittest.mm
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ui/views/controls/textfield/textfield.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ui/views/controls/textfield/textfield.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ui/views/examples/menu_example.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ui/views/examples/tree_view_example.cc
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ui/views/examples/tree_view_example.h
[modify] https://crrev.com/272470e81fb7c7b47298e32009e2bae2001eb480/ui/views/touchui/touch_selection_controller_impl_unittest.cc

Project Member

Comment 7 by bugdroid1@chromium.org, Jul 25 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c3a8965543812efb515b5a8ab56e0621b0c393ee

commit c3a8965543812efb515b5a8ab56e0621b0c393ee
Author: mgiuca <mgiuca@chromium.org>
Date: Mon Jul 25 06:27:27 2016

Added default implementations of GetAcceleratorForCommandId.

Adds the default implementation to SimpleMenuModel and
ButtonMenuItemModel classes that just returns false, and deletes all
subclasses' overrides that just return false (over half the overrides;
39 in total).

Returning false just means you have no accelerators; it is a fine
default and there is no need to have every single subclass explicitly
override and return false.

RenderViewContextMenuBase: Remove the spurious override = 0 (which is
now blocking the default implementation from propagating down).

TBR=derat@chromium.org
BUG= 627344 

Review-Url: https://codereview.chromium.org/2140963002
Cr-Commit-Position: refs/heads/master@{#407416}

[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/ash/common/shelf/shelf_alignment_menu.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/ash/common/shelf/shelf_alignment_menu.h
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/ash/common/system/web_notification/web_notification_tray.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/ash/common/system/web_notification/web_notification_tray.h
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/ash/shelf/shelf_view_unittest.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/ash/shell/context_menu.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/ash/shell/context_menu.h
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/ash/shell_unittest.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/ash/sysui/context_menu_mus.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/ash/sysui/context_menu_mus.h
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/ash/sysui/shelf_delegate_mus.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/apps/app_browsertest.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/download/download_shelf_context_menu.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/download/download_shelf_context_menu.h
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/extensions/extension_context_menu_model.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/extensions/extension_context_menu_model.h
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/media_galleries/media_gallery_context_menu.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/media_galleries/media_gallery_context_menu.h
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/renderer_context_menu/mock_render_view_context_menu.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/renderer_context_menu/mock_render_view_context_menu.h
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/renderer_context_menu/open_with_menu_factory_ash.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/renderer_context_menu/open_with_menu_factory_ash.h
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/renderer_context_menu/render_view_context_menu_test_util.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/renderer_context_menu/render_view_context_menu_test_util.h
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/ui/app_list/app_context_menu.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/ui/app_list/app_context_menu.h
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/ui/ash/launcher/launcher_application_menu_item_model.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/ui/ash/launcher/launcher_application_menu_item_model.h
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/ui/ash/launcher/launcher_context_menu.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/ui/ash/launcher/launcher_context_menu.h
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/ui/ash/multi_user/multi_user_context_menu_chromeos.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/ui/autofill/autofill_dialog_models.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/ui/autofill/autofill_dialog_models.h
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/ui/bookmarks/bookmark_context_menu_controller.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/ui/bookmarks/bookmark_context_menu_controller.h
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/ui/cocoa/renderer_context_menu/render_view_context_menu_mac.h
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/ui/cocoa/renderer_context_menu/render_view_context_menu_mac.mm
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/ui/cocoa/tabs/tab_controller.mm
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/ui/content_settings/content_setting_media_menu_model.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/ui/content_settings/content_setting_media_menu_model.h
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/ui/panels/panel_extension_browsertest.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/ui/toolbar/app_menu_model.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/ui/toolbar/app_menu_model.h
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/ui/toolbar/media_router_contextual_menu.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/ui/toolbar/media_router_contextual_menu.h
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/ui/views/new_task_manager_view.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/ui/views/new_task_manager_view.h
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/ui/views/translate/translate_bubble_view.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/ui/views/translate/translate_bubble_view.h
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/ui/website_settings/permission_menu_model.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/chrome/browser/ui/website_settings/permission_menu_model.h
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/components/renderer_context_menu/render_view_context_menu_base.h
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/components/translate/core/browser/options_menu_model.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/components/translate/core/browser/options_menu_model.h
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/content/shell/browser/shell_web_contents_view_delegate_views.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/ui/app_list/app_list_menu.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/ui/app_list/app_list_menu.h
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/ui/base/cocoa/menu_controller_unittest.mm
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/ui/base/models/button_menu_item_model.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/ui/base/models/button_menu_item_model.h
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/ui/base/models/simple_menu_model.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/ui/base/models/simple_menu_model.h
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/ui/message_center/message_center_tray.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/ui/message_center/views/notifier_settings_view.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/ui/views/controls/menu/menu_runner_cocoa_unittest.mm
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/ui/views/examples/menu_example.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/ui/views/examples/tree_view_example.cc
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/ui/views/examples/tree_view_example.h
[modify] https://crrev.com/c3a8965543812efb515b5a8ab56e0621b0c393ee/ui/views/touchui/touch_selection_controller_impl_unittest.cc

Project Member

Comment 8 by bugdroid1@chromium.org, Aug 2 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/164de0bd6781df7e12d2845ba24689ef74a6183e

commit 164de0bd6781df7e12d2845ba24689ef74a6183e
Author: mgiuca <mgiuca@chromium.org>
Date: Tue Aug 02 04:35:37 2016

SimpleMenuModel and ButtonMenuItemModel implement AcceleratorProvider.

(Actually applies to their Delegate classes, not those classes
themselves.) These classes were providing the full AcceleratorProvider
interface, so may as well officially implement it. This cleans up some
awkward subclasses that inherit both AcceleratorProvider and
SimpleMenuModel::Delegate and override the same method in both.

BUG= 627344 

Review-Url: https://codereview.chromium.org/2138353002
Cr-Commit-Position: refs/heads/master@{#409138}

[modify] https://crrev.com/164de0bd6781df7e12d2845ba24689ef74a6183e/chrome/test/base/menu_model_test.cc
[modify] https://crrev.com/164de0bd6781df7e12d2845ba24689ef74a6183e/chrome/test/base/menu_model_test.h
[modify] https://crrev.com/164de0bd6781df7e12d2845ba24689ef74a6183e/ui/base/models/button_menu_item_model.h
[modify] https://crrev.com/164de0bd6781df7e12d2845ba24689ef74a6183e/ui/base/models/simple_menu_model.cc
[modify] https://crrev.com/164de0bd6781df7e12d2845ba24689ef74a6183e/ui/base/models/simple_menu_model.h

Labels: -merge-merged-2795
Status: Fixed (was: Started)

Sign in to add a comment