Chromium Code Reviews| Index: chrome/browser/ui/toolbar/media_router_action.cc |
| diff --git a/chrome/browser/ui/toolbar/media_router_action.cc b/chrome/browser/ui/toolbar/media_router_action.cc |
| index 4d2ca8d54daa45488831eb6e01a582dddc6fa63f..9d54aa9ed586681d69739b5f12254f023787103a 100644 |
| --- a/chrome/browser/ui/toolbar/media_router_action.cc |
| +++ b/chrome/browser/ui/toolbar/media_router_action.cc |
| @@ -25,9 +25,18 @@ |
| using media_router::MediaRouterDialogControllerImpl; |
| +namespace { |
| + |
| +media_router::MediaRouter* GetMediaRouter(Browser* browser) { |
| + return media_router::MediaRouterFactory::GetApiForBrowserContext( |
| + browser->profile()); |
| +} |
| + |
| +} // namespace |
| + |
| MediaRouterAction::MediaRouterAction(Browser* browser) |
| : media_router::IssuesObserver(GetMediaRouter(browser)), |
| - media_router::MediaRoutesObserver(GetMediaRouter(browser)), |
| + media_router::LocalMediaRoutesObserver(GetMediaRouter(browser)), |
| media_router_active_icon_( |
| ui::ResourceBundle::GetSharedInstance() |
| .GetImageNamed(IDR_MEDIA_ROUTER_ACTIVE_ICON)), |
| @@ -48,6 +57,7 @@ MediaRouterAction::MediaRouterAction(Browser* browser) |
| weak_ptr_factory_(this) { |
| DCHECK(browser_); |
| tab_strip_model_observer_.Add(browser_->tab_strip_model()); |
| + SetHasLocalRoute(GetMediaRouter(browser)->GetHasLocalRoute()); |
| } |
| MediaRouterAction::~MediaRouterAction() { |
| @@ -138,14 +148,8 @@ void MediaRouterAction::OnIssueUpdated(const media_router::Issue* issue) { |
| MaybeUpdateIcon(); |
| } |
| -void MediaRouterAction::OnRoutesUpdated( |
| - const std::vector<media_router::MediaRoute>& routes) { |
| - has_local_route_ = |
| - std::find_if(routes.begin(), routes.end(), |
| - [](const media_router::MediaRoute& route) { |
| - return route.is_local(); }) != |
| - routes.end(); |
| - MaybeUpdateIcon(); |
| +void MediaRouterAction::UpdateHasLocalRoute(bool has_local_route) { |
|
imcheng
2015/10/02 17:21:11
It seems to me that this method is not needed. Cal
apacible
2015/10/02 18:48:20
UpdateHasLocalRoute (now OnHasLocalRouteUpdated) i
|
| + SetHasLocalRoute(has_local_route); |
| } |
| void MediaRouterAction::ActiveTabChanged(content::WebContents* old_contents, |
| @@ -167,6 +171,11 @@ void MediaRouterAction::OnPopupShown() { |
| delegate_->OnPopupShown(true); |
| } |
| +void MediaRouterAction::SetHasLocalRoute(bool has_local_route) { |
| + has_local_route_ = has_local_route; |
| + MaybeUpdateIcon(); |
| +} |
| + |
| void MediaRouterAction::UpdatePopupState() { |
| MediaRouterDialogControllerImpl* controller = |
| GetMediaRouterDialogController(); |
| @@ -195,11 +204,6 @@ MediaRouterAction::GetMediaRouterDialogController() { |
| web_contents); |
| } |
| -media_router::MediaRouter* MediaRouterAction::GetMediaRouter(Browser* browser) { |
| - return media_router::MediaRouterFactory::GetApiForBrowserContext( |
| - static_cast<content::BrowserContext*>(browser->profile())); |
| -} |
| - |
| MediaRouterActionPlatformDelegate* MediaRouterAction::GetPlatformDelegate() { |
| return platform_delegate_.get(); |
| } |