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 dbcfb6c81b08c06c2ad0783a3ae0bc8a6412600d..4cb0f73467f49e02f75fc318d7cad30456513196 100644 |
--- a/chrome/browser/ui/toolbar/media_router_action.cc |
+++ b/chrome/browser/ui/toolbar/media_router_action.cc |
@@ -39,17 +39,19 @@ media_router::MediaRouter* GetMediaRouter(Browser* browser) { |
MediaRouterAction::MediaRouterAction(Browser* browser, |
ToolbarActionsBar* toolbar_actions_bar) |
: media_router::IssuesObserver(GetMediaRouter(browser)), |
- media_router::LocalMediaRoutesObserver(GetMediaRouter(browser)), |
+ media_router::MediaRoutesObserver(GetMediaRouter(browser)), |
media_router_active_icon_( |
- ui::ResourceBundle::GetSharedInstance() |
- .GetImageNamed(IDR_MEDIA_ROUTER_ACTIVE_ICON)), |
- media_router_error_icon_(ui::ResourceBundle::GetSharedInstance() |
- .GetImageNamed(IDR_MEDIA_ROUTER_ERROR_ICON)), |
- media_router_idle_icon_(ui::ResourceBundle::GetSharedInstance() |
- .GetImageNamed(IDR_MEDIA_ROUTER_IDLE_ICON)), |
+ ui::ResourceBundle::GetSharedInstance().GetImageNamed( |
+ IDR_MEDIA_ROUTER_ACTIVE_ICON)), |
+ media_router_error_icon_( |
+ ui::ResourceBundle::GetSharedInstance().GetImageNamed( |
+ IDR_MEDIA_ROUTER_ERROR_ICON)), |
+ media_router_idle_icon_( |
+ ui::ResourceBundle::GetSharedInstance().GetImageNamed( |
+ IDR_MEDIA_ROUTER_IDLE_ICON)), |
media_router_warning_icon_( |
- ui::ResourceBundle::GetSharedInstance() |
- .GetImageNamed(IDR_MEDIA_ROUTER_WARNING_ICON)), |
+ ui::ResourceBundle::GetSharedInstance().GetImageNamed( |
+ IDR_MEDIA_ROUTER_WARNING_ICON)), |
current_icon_(&media_router_idle_icon_), |
has_local_display_route_(false), |
delegate_(nullptr), |
@@ -64,8 +66,6 @@ MediaRouterAction::MediaRouterAction(Browser* browser, |
tab_strip_model_observer_.Add(browser_->tab_strip_model()); |
RegisterObserver(); |
- OnHasLocalDisplayRouteUpdated( |
- GetMediaRouter(browser)->HasLocalDisplayRoute()); |
} |
MediaRouterAction::~MediaRouterAction() { |
@@ -163,9 +163,14 @@ void MediaRouterAction::OnIssueUpdated(const media_router::Issue* issue) { |
MaybeUpdateIcon(); |
} |
-void MediaRouterAction::OnHasLocalDisplayRouteUpdated( |
- bool has_local_display_route) { |
- has_local_display_route_ = has_local_display_route; |
+void MediaRouterAction::OnRoutesUpdated( |
+ const std::vector<media_router::MediaRoute>& routes, |
+ const std::vector<media_router::MediaRoute::Id>& joinable_route_ids) { |
+ has_local_display_route_ = |
+ std::find_if(routes.begin(), routes.end(), |
Peter Kasting
2016/01/30 00:52:19
Nit: Prefer std::any_of() to (std::find_if() != en
imcheng
2016/02/01 18:48:06
I was going to use that, but it looks like it's a
|
+ [](const media_router::MediaRoute& route) { |
+ return route.is_local() && route.for_display(); |
+ }) != routes.end(); |
MaybeUpdateIcon(); |
} |