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

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

Issue 2721953002: [Media Router] Add "Hide in menu/Show in toolbar" option to Cast toolbar icon (Closed)
Patch Set: Address Jennifer's and Mike's comments Created 3 years, 10 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/media_router_contextual_menu.h
diff --git a/chrome/browser/ui/toolbar/media_router_contextual_menu.h b/chrome/browser/ui/toolbar/media_router_contextual_menu.h
index d70fc5086333d2816c1e50c1dfcacb6ee9b6bf92..ad6d44995111431698b5ad738d8e64615b249235 100644
--- a/chrome/browser/ui/toolbar/media_router_contextual_menu.h
+++ b/chrome/browser/ui/toolbar/media_router_contextual_menu.h
@@ -14,13 +14,21 @@ class Browser;
// The class for the contextual menu for the Media Router action.
class MediaRouterContextualMenu : public ui::SimpleMenuModel::Delegate {
public:
- explicit MediaRouterContextualMenu(Browser* browser);
+ // Creates an instance for a Media Router Action shown in the toolbar.
+ static std::unique_ptr<MediaRouterContextualMenu> CreateForToolbar(
+ Browser* browser);
- // Constructor for injecting values in tests.
- MediaRouterContextualMenu(Browser* browser, bool shown_by_policy);
+ // Creates an instance for a Media Router Action shown in the overflow menu.
+ static std::unique_ptr<MediaRouterContextualMenu> CreateForOverflowMenu(
+ Browser* browser);
+
+ // Constructor called by the static Create* methods above and tests.
+ MediaRouterContextualMenu(Browser* browser,
+ bool is_action_in_toolbar,
+ bool shown_by_policy);
~MediaRouterContextualMenu() override;
- ui::MenuModel* menu_model() { return &menu_model_; }
+ ui::SimpleMenuModel* menu_model() { return &menu_model_; }
private:
FRIEND_TEST_ALL_PREFIXES(MediaRouterContextualMenuUnitTest,
@@ -40,11 +48,20 @@ class MediaRouterContextualMenu : public ui::SimpleMenuModel::Delegate {
bool IsCommandIdVisible(int command_id) const override;
void ExecuteCommand(int command_id, int event_flags) override;
+ // Opens feedback page loaded from the media router extension.
void ReportIssue();
+ // Gets the ID corresponding to the text for the menu option to change the
+ // visibility of the action (e.g. "Hide in Chrome menu" / "Show in toolbar")
+ // depending on the location of the action.
+ int GetChangeVisibilityTextId();
+
Browser* const browser_;
ui::SimpleMenuModel menu_model_;
+ // Whether the action icon is in the toolbar, as opposed to the overflow menu.
+ const bool is_action_in_toolbar_;
+
DISALLOW_COPY_AND_ASSIGN(MediaRouterContextualMenu);
};
« no previous file with comments | « chrome/browser/ui/toolbar/media_router_action.cc ('k') | chrome/browser/ui/toolbar/media_router_contextual_menu.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698