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

Side by Side Diff: chrome/browser/ui/toolbar/media_router_contextual_menu.h

Issue 2332693003: Show media router toolbar icon ephemerally for active local routes and issues (Closed)
Patch Set: Address Derek's comment Created 4 years, 3 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 unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CHROME_BROWSER_UI_TOOLBAR_MEDIA_ROUTER_CONTEXTUAL_MENU_H_ 5 #ifndef CHROME_BROWSER_UI_TOOLBAR_MEDIA_ROUTER_CONTEXTUAL_MENU_H_
6 #define CHROME_BROWSER_UI_TOOLBAR_MEDIA_ROUTER_CONTEXTUAL_MENU_H_ 6 #define CHROME_BROWSER_UI_TOOLBAR_MEDIA_ROUTER_CONTEXTUAL_MENU_H_
7 7
8 #include "base/macros.h" 8 #include "base/macros.h"
9 #include "base/strings/utf_string_conversions.h" 9 #include "base/strings/utf_string_conversions.h"
10 #include "ui/base/models/simple_menu_model.h" 10 #include "ui/base/models/simple_menu_model.h"
11 11
12 class Browser; 12 class Browser;
13 class ToolbarActionsModel;
14
15 namespace extensions {
16 class ComponentMigrationHelper;
17 } // namespace extensions
13 18
14 // The class for the contextual menu for the Media Router action. 19 // The class for the contextual menu for the Media Router action.
15 class MediaRouterContextualMenu : public ui::SimpleMenuModel::Delegate { 20 class MediaRouterContextualMenu : public ui::SimpleMenuModel::Delegate {
16 public: 21 public:
17 explicit MediaRouterContextualMenu(Browser* browser); 22 explicit MediaRouterContextualMenu(Browser* browser);
18 ~MediaRouterContextualMenu() override; 23 ~MediaRouterContextualMenu() override;
19 24
20 ui::MenuModel* menu_model() { return &menu_model_; } 25 ui::MenuModel* menu_model() { return &menu_model_; }
21 26
22 private: 27 private:
23 #if defined(GOOGLE_CHROME_BUILD) 28 #if defined(GOOGLE_CHROME_BUILD)
24 FRIEND_TEST_ALL_PREFIXES(MediaRouterContextualMenuUnitTest, 29 FRIEND_TEST_ALL_PREFIXES(MediaRouterContextualMenuUnitTest,
25 ToggleCloudServicesItem); 30 ToggleCloudServicesItem);
26 #endif // GOOGLE_CHROME_BUILD 31 #endif // GOOGLE_CHROME_BUILD
32 FRIEND_TEST_ALL_PREFIXES(MediaRouterContextualMenuUnitTest,
33 ToggleAlwaysShowIconItem);
34
35 // Gets or sets the "Always show icon" option.
36 bool GetAlwaysShowActionPref() const;
37 void SetAlwaysShowActionPref(bool always_show);
27 38
28 // ui::SimpleMenuModel::Delegate: 39 // ui::SimpleMenuModel::Delegate:
29 bool IsCommandIdChecked(int command_id) const override; 40 bool IsCommandIdChecked(int command_id) const override;
30 bool IsCommandIdEnabled(int command_id) const override; 41 bool IsCommandIdEnabled(int command_id) const override;
31 bool IsCommandIdVisible(int command_id) const override; 42 bool IsCommandIdVisible(int command_id) const override;
32 void ExecuteCommand(int command_id, int event_flags) override; 43 void ExecuteCommand(int command_id, int event_flags) override;
33 44
34 void ReportIssue(); 45 void ReportIssue();
35 void RemoveMediaRouterComponentAction();
36 46
37 Browser* browser_; 47 Browser* const browser_;
38 ui::SimpleMenuModel menu_model_; 48 ui::SimpleMenuModel menu_model_;
49 extensions::ComponentMigrationHelper* const component_migration_helper_;
39 50
40 DISALLOW_COPY_AND_ASSIGN(MediaRouterContextualMenu); 51 DISALLOW_COPY_AND_ASSIGN(MediaRouterContextualMenu);
41 }; 52 };
42 53
43 #endif // CHROME_BROWSER_UI_TOOLBAR_MEDIA_ROUTER_CONTEXTUAL_MENU_H_ 54 #endif // CHROME_BROWSER_UI_TOOLBAR_MEDIA_ROUTER_CONTEXTUAL_MENU_H_
OLDNEW
« no previous file with comments | « chrome/browser/ui/toolbar/media_router_action_unittest.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