Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(669)

Unified Diff: chrome/browser/ui/toolbar/wrench_menu_model.h

Issue 1417423003: chrome: Rename WrenchMenuModel to AppMenuModel. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/toolbar/wrench_menu_model.h
diff --git a/chrome/browser/ui/toolbar/wrench_menu_model.h b/chrome/browser/ui/toolbar/wrench_menu_model.h
deleted file mode 100644
index d0def8bed7f40f7f0ab7a26ffbbb3acc3d6aec38..0000000000000000000000000000000000000000
--- a/chrome/browser/ui/toolbar/wrench_menu_model.h
+++ /dev/null
@@ -1,253 +0,0 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#ifndef CHROME_BROWSER_UI_TOOLBAR_WRENCH_MENU_MODEL_H_
-#define CHROME_BROWSER_UI_TOOLBAR_WRENCH_MENU_MODEL_H_
-
-#include "base/files/file_path.h"
-#include "base/memory/scoped_ptr.h"
-#include "base/time/time.h"
-#include "base/timer/elapsed_timer.h"
-#include "chrome/browser/ui/tabs/tab_strip_model_observer.h"
-#include "content/public/browser/host_zoom_map.h"
-#include "content/public/browser/notification_observer.h"
-#include "content/public/browser/notification_registrar.h"
-#include "ui/base/accelerators/accelerator.h"
-#include "ui/base/models/button_menu_item_model.h"
-#include "ui/base/models/simple_menu_model.h"
-
-class BookmarkSubMenuModel;
-class Browser;
-class RecentTabsSubMenuModel;
-
-namespace {
-class MockWrenchMenuModel;
-} // namespace
-
-enum WrenchMenuAction {
- MENU_ACTION_NEW_TAB = 0,
- MENU_ACTION_NEW_WINDOW,
- MENU_ACTION_NEW_INCOGNITO_WINDOW,
- MENU_ACTION_SHOW_BOOKMARK_BAR,
- MENU_ACTION_SHOW_BOOKMARK_MANAGER,
- MENU_ACTION_IMPORT_SETTINGS,
- MENU_ACTION_BOOKMARK_PAGE,
- MENU_ACTION_BOOKMARK_ALL_TABS,
- MENU_ACTION_PIN_TO_START_SCREEN,
- MENU_ACTION_RESTORE_TAB,
- MENU_ACTION_WIN_DESKTOP_RESTART,
- MENU_ACTION_WIN8_METRO_RESTART,
- MENU_ACTION_WIN_CHROMEOS_RESTART,
- MENU_ACTION_DISTILL_PAGE,
- MENU_ACTION_SAVE_PAGE,
- MENU_ACTION_FIND,
- MENU_ACTION_PRINT,
- MENU_ACTION_CUT,
- MENU_ACTION_COPY,
- MENU_ACTION_PASTE,
- MENU_ACTION_CREATE_HOSTED_APP,
- MENU_ACTION_CREATE_SHORTCUTS,
- MENU_ACTION_MANAGE_EXTENSIONS,
- MENU_ACTION_TASK_MANAGER,
- MENU_ACTION_CLEAR_BROWSING_DATA,
- MENU_ACTION_VIEW_SOURCE,
- MENU_ACTION_DEV_TOOLS,
- MENU_ACTION_DEV_TOOLS_CONSOLE,
- MENU_ACTION_DEV_TOOLS_DEVICES,
- MENU_ACTION_PROFILING_ENABLED,
- MENU_ACTION_ZOOM_MINUS,
- MENU_ACTION_ZOOM_PLUS,
- MENU_ACTION_FULLSCREEN,
- MENU_ACTION_SHOW_HISTORY,
- MENU_ACTION_SHOW_DOWNLOADS,
- MENU_ACTION_SHOW_SYNC_SETUP,
- MENU_ACTION_OPTIONS,
- MENU_ACTION_ABOUT,
- MENU_ACTION_HELP_PAGE_VIA_MENU,
- MENU_ACTION_FEEDBACK,
- MENU_ACTION_TOGGLE_REQUEST_TABLET_SITE,
- MENU_ACTION_EXIT,
- MENU_ACTION_RECENT_TAB,
- MENU_ACTION_BOOKMARK_OPEN,
- LIMIT_MENU_ACTION
-};
-
-// A menu model that builds the contents of an encoding menu.
-class EncodingMenuModel : public ui::SimpleMenuModel,
- public ui::SimpleMenuModel::Delegate {
- public:
- explicit EncodingMenuModel(Browser* browser);
- ~EncodingMenuModel() override;
-
- // Overridden from ui::SimpleMenuModel::Delegate:
- bool IsCommandIdChecked(int command_id) const override;
- bool IsCommandIdEnabled(int command_id) const override;
- bool GetAcceleratorForCommandId(int command_id,
- ui::Accelerator* accelerator) override;
- void ExecuteCommand(int command_id, int event_flags) override;
-
- private:
- void Build();
-
- Browser* browser_; // weak
-
- DISALLOW_COPY_AND_ASSIGN(EncodingMenuModel);
-};
-
-// A menu model that builds the contents of the zoom menu.
-class ZoomMenuModel : public ui::SimpleMenuModel {
- public:
- explicit ZoomMenuModel(ui::SimpleMenuModel::Delegate* delegate);
- ~ZoomMenuModel() override;
-
- private:
- void Build();
-
- DISALLOW_COPY_AND_ASSIGN(ZoomMenuModel);
-};
-
-class ToolsMenuModel : public ui::SimpleMenuModel {
- public:
- ToolsMenuModel(ui::SimpleMenuModel::Delegate* delegate, Browser* browser);
- ~ToolsMenuModel() override;
-
- private:
- void Build(Browser* browser);
-
- scoped_ptr<EncodingMenuModel> encoding_menu_model_;
-
- DISALLOW_COPY_AND_ASSIGN(ToolsMenuModel);
-};
-
-// A menu model that builds the contents of the wrench menu.
-class WrenchMenuModel : public ui::SimpleMenuModel,
- public ui::SimpleMenuModel::Delegate,
- public ui::ButtonMenuItemModel::Delegate,
- public TabStripModelObserver,
- public content::NotificationObserver {
- public:
- // Range of command IDs to use for the items in the recent tabs submenu.
- static const int kMinRecentTabsCommandId = 1001;
- static const int kMaxRecentTabsCommandId = 1200;
-
- WrenchMenuModel(ui::AcceleratorProvider* provider, Browser* browser);
- ~WrenchMenuModel() override;
-
- // Overridden for ButtonMenuItemModel::Delegate:
- bool DoesCommandIdDismissMenu(int command_id) const override;
-
- // Overridden for both ButtonMenuItemModel::Delegate and SimpleMenuModel:
- bool IsItemForCommandIdDynamic(int command_id) const override;
- base::string16 GetLabelForCommandId(int command_id) const override;
- bool GetIconForCommandId(int command_id, gfx::Image* icon) const override;
- void ExecuteCommand(int command_id, int event_flags) override;
- bool IsCommandIdChecked(int command_id) const override;
- bool IsCommandIdEnabled(int command_id) const override;
- bool IsCommandIdVisible(int command_id) const override;
- bool GetAcceleratorForCommandId(int command_id,
- ui::Accelerator* accelerator) override;
-
- // Overridden from TabStripModelObserver:
- void ActiveTabChanged(content::WebContents* old_contents,
- content::WebContents* new_contents,
- int index,
- int reason) override;
- void TabReplacedAt(TabStripModel* tab_strip_model,
- content::WebContents* old_contents,
- content::WebContents* new_contents,
- int index) override;
-
- // Overridden from content::NotificationObserver:
- void Observe(int type,
- const content::NotificationSource& source,
- const content::NotificationDetails& details) override;
-
- // Getters.
- Browser* browser() const { return browser_; }
-
- BookmarkSubMenuModel* bookmark_sub_menu_model() const {
- return bookmark_sub_menu_model_.get();
- }
-
- // Calculates |zoom_label_| in response to a zoom change.
- void UpdateZoomControls();
-
- private:
- class HelpMenuModel;
- // Testing constructor used for mocking.
- friend class ::MockWrenchMenuModel;
-
- WrenchMenuModel();
-
- void Build();
-
- // Adds actionable global error menu items to the menu.
- // Examples: Extension permissions and sign in errors.
- // Returns a boolean indicating whether any menu items were added.
- bool AddGlobalErrorMenuItems();
-
- // Appends everything needed for the clipboard menu: a menu break, the
- // clipboard menu content and the finalizing menu break.
- void CreateCutCopyPasteMenu();
-
- // Add a menu item for the browser action icons.
- void CreateActionToolbarOverflowMenu();
-
- // Appends everything needed for the zoom menu: a menu break, then the zoom
- // menu content and then another menu break.
- void CreateZoomMenu();
-
- void OnZoomLevelChanged(const content::HostZoomMap::ZoomLevelChange& change);
-
- bool ShouldShowNewIncognitoWindowMenuItem();
-
- // Called when a command is selected.
- // Logs UMA metrics about which command was chosen and how long the user
- // took to select the command.
- void LogMenuMetrics(int command_id);
-
- // Helper function to record the menu action in a UMA histogram.
- void LogMenuAction(int action_id);
-
- // Time menu has been open. Used by LogMenuMetrics() to record the time
- // to action when the user selects a menu item.
- base::ElapsedTimer timer_;
-
- // Whether a UMA menu action has been recorded since the menu is open.
- // Only the first time to action is recorded since some commands
- // (zoom controls) don't dimiss the menu.
- bool uma_action_recorded_;
-
- // Models for the special menu items with buttons.
- scoped_ptr<ui::ButtonMenuItemModel> edit_menu_item_model_;
- scoped_ptr<ui::ButtonMenuItemModel> zoom_menu_item_model_;
-
- // Label of the zoom label in the zoom menu item.
- base::string16 zoom_label_;
-
-#if defined(GOOGLE_CHROME_BUILD)
- // Help menu.
- scoped_ptr<HelpMenuModel> help_menu_model_;
-#endif
-
- // Tools menu.
- scoped_ptr<ToolsMenuModel> tools_menu_model_;
-
- // Bookmark submenu.
- scoped_ptr<BookmarkSubMenuModel> bookmark_sub_menu_model_;
-
- // Recent Tabs submenu.
- scoped_ptr<RecentTabsSubMenuModel> recent_tabs_sub_menu_model_;
-
- ui::AcceleratorProvider* provider_; // weak
-
- Browser* browser_; // weak
-
- scoped_ptr<content::HostZoomMap::Subscription> browser_zoom_subscription_;
- content::NotificationRegistrar registrar_;
-
- DISALLOW_COPY_AND_ASSIGN(WrenchMenuModel);
-};
-
-#endif // CHROME_BROWSER_UI_TOOLBAR_WRENCH_MENU_MODEL_H_
« no previous file with comments | « chrome/browser/ui/toolbar/recent_tabs_sub_menu_model.cc ('k') | chrome/browser/ui/toolbar/wrench_menu_model.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698