| Index: chrome/browser/ui/webui/media_router/media_router_ui.cc
|
| diff --git a/chrome/browser/ui/webui/media_router/media_router_ui.cc b/chrome/browser/ui/webui/media_router/media_router_ui.cc
|
| index bfc2865f02bb0e57b8e7e10c1861201dbb2f9330..5147b9d64fa3272cb0a47f1ec08786a8d783c900 100644
|
| --- a/chrome/browser/ui/webui/media_router/media_router_ui.cc
|
| +++ b/chrome/browser/ui/webui/media_router/media_router_ui.cc
|
| @@ -283,14 +283,17 @@ void MediaRouterUI::OnRoutesUpdated(const std::vector<MediaRoute>& routes) {
|
| handler_->UpdateRoutes(routes_);
|
| }
|
|
|
| -void MediaRouterUI::OnRouteResponseReceived(const MediaRoute* route,
|
| +void MediaRouterUI::OnRouteResponseReceived(const MediaSink::Id& sink_id,
|
| + const MediaRoute* route,
|
| const std::string& error) {
|
| DVLOG(1) << "OnRouteResponseReceived";
|
| // TODO(imcheng): Display error in UI. (crbug.com/490372)
|
| - if (!route)
|
| + if (!route) {
|
| + handler_->OnCreateRouteResponseReceived(sink_id, nullptr);
|
| LOG(ERROR) << "MediaRouteResponse returned error: " << error;
|
| - else
|
| - handler_->AddRoute(*route);
|
| + } else {
|
| + handler_->OnCreateRouteResponseReceived(sink_id, route);
|
| + }
|
|
|
| has_pending_route_request_ = false;
|
| requesting_route_for_default_source_ = false;
|
| @@ -339,8 +342,9 @@ bool MediaRouterUI::DoCreateRoute(const MediaSink::Id& sink_id,
|
| // treat subsequent route requests from a Presentation API-initiated dialogs
|
| // as browser-initiated.
|
| std::vector<MediaRouteResponseCallback> route_response_callbacks;
|
| - route_response_callbacks.push_back(base::Bind(
|
| - &MediaRouterUI::OnRouteResponseReceived, weak_factory_.GetWeakPtr()));
|
| + route_response_callbacks.push_back(
|
| + base::Bind(&MediaRouterUI::OnRouteResponseReceived,
|
| + weak_factory_.GetWeakPtr(), sink_id));
|
| if (requesting_route_for_default_source_) {
|
| if (presentation_request_) {
|
| // |presentation_request_| will be nullptr after this call, as the
|
| @@ -369,4 +373,8 @@ const std::string& MediaRouterUI::GetRouteProviderExtensionId() const {
|
| return router_->media_route_provider_extension_id();
|
| }
|
|
|
| +const std::set<MediaSink::Id>& MediaRouterUI::GetSinkIdsInLaunch() const {
|
| + return router_->sink_ids_in_launch();
|
| +}
|
| +
|
| } // namespace media_router
|
|
|