| Index: chrome/browser/ui/toolbar/media_router_action_controller.cc
|
| diff --git a/chrome/browser/ui/toolbar/media_router_action_controller.cc b/chrome/browser/ui/toolbar/media_router_action_controller.cc
|
| index bc46d00cb20b96a8cddf54d9589457ef7f914065..fb7a4af4f4db288693b67e6f94368d1f5ffabab7 100644
|
| --- a/chrome/browser/ui/toolbar/media_router_action_controller.cc
|
| +++ b/chrome/browser/ui/toolbar/media_router_action_controller.cc
|
| @@ -25,6 +25,18 @@ MediaRouterActionController::~MediaRouterActionController() {
|
| UnregisterObserver(); // media_router::IssuesObserver.
|
| }
|
|
|
| +// static
|
| +bool MediaRouterActionController::IsActionShownByPolicy(
|
| + content::BrowserContext* context) {
|
| + const PrefService::Preference* pref =
|
| + user_prefs::UserPrefs::Get(context)->FindPreference(
|
| + prefs::kShowCastIconInToolbar);
|
| + bool show = false;
|
| + if (pref->IsManaged())
|
| + pref->GetValue()->GetAsBoolean(&show);
|
| + return show;
|
| +}
|
| +
|
| void MediaRouterActionController::OnIssueUpdated(
|
| const media_router::Issue* issue) {
|
| has_issue_ = issue != nullptr;
|
| @@ -65,7 +77,9 @@ MediaRouterActionController::MediaRouterActionController(
|
| media_router::MediaRoutesObserver(router),
|
| profile_(profile),
|
| component_action_delegate_(component_action_delegate),
|
| - component_migration_helper_(component_migration_helper) {
|
| + component_migration_helper_(component_migration_helper),
|
| + shown_by_policy_(
|
| + MediaRouterActionController::IsActionShownByPolicy(profile)) {
|
| DCHECK(profile_);
|
| RegisterObserver(); // media_router::IssuesObserver.
|
| pref_change_registrar_.Init(profile->GetPrefs());
|
| @@ -90,7 +104,8 @@ void MediaRouterActionController::MaybeAddOrRemoveAction() {
|
| }
|
|
|
| bool MediaRouterActionController::ShouldEnableAction() const {
|
| - return has_local_display_route_ || has_issue_ || dialog_count_ ||
|
| + return shown_by_policy_ || has_local_display_route_ || has_issue_ ||
|
| + dialog_count_ ||
|
| component_migration_helper_->GetComponentActionPref(
|
| ComponentToolbarActionsFactory::kMediaRouterActionId);
|
| }
|
|
|