| OLD | NEW | 
|    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 #include "chrome/browser/ui/webui/media_router/media_router_webui_message_handle
     r.h" |    5 #include "chrome/browser/ui/webui/media_router/media_router_webui_message_handle
     r.h" | 
|    6  |    6  | 
|    7 #include <memory> |  | 
|    8 #include <string> |    7 #include <string> | 
|    9 #include <utility> |    8 #include <utility> | 
|   10  |    9  | 
|   11 #include "base/bind.h" |   10 #include "base/bind.h" | 
|   12 #include "base/metrics/histogram_macros.h" |   11 #include "base/metrics/histogram_macros.h" | 
|   13 #include "base/metrics/sparse_histogram.h" |   12 #include "base/metrics/sparse_histogram.h" | 
|   14 #include "base/metrics/user_metrics.h" |   13 #include "base/metrics/user_metrics.h" | 
|   15 #include "base/strings/string_util.h" |   14 #include "base/strings/string_util.h" | 
|   16 #include "base/strings/stringprintf.h" |   15 #include "base/strings/stringprintf.h" | 
|   17 #include "base/values.h" |   16 #include "base/values.h" | 
| (...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  125  |  124  | 
|  126     int cast_mode_bits = 0; |  125     int cast_mode_bits = 0; | 
|  127     for (MediaCastMode cast_mode : sink_with_cast_modes.cast_modes) |  126     for (MediaCastMode cast_mode : sink_with_cast_modes.cast_modes) | 
|  128       cast_mode_bits |= cast_mode; |  127       cast_mode_bits |= cast_mode; | 
|  129  |  128  | 
|  130     sink_val->SetInteger("castModes", cast_mode_bits); |  129     sink_val->SetInteger("castModes", cast_mode_bits); | 
|  131     sink_val->SetBoolean("isPseudoSink", is_pseudo_sink); |  130     sink_val->SetBoolean("isPseudoSink", is_pseudo_sink); | 
|  132     sinks_val->Append(std::move(sink_val)); |  131     sinks_val->Append(std::move(sink_val)); | 
|  133   } |  132   } | 
|  134  |  133  | 
|  135   sink_list_and_identity->Set("sinks", std::move(sinks_val)); |  134   sink_list_and_identity->Set("sinks", sinks_val.release()); | 
|  136   sink_list_and_identity->SetBoolean("showEmail", show_email); |  135   sink_list_and_identity->SetBoolean("showEmail", show_email); | 
|  137   sink_list_and_identity->SetBoolean("showDomain", show_domain); |  136   sink_list_and_identity->SetBoolean("showDomain", show_domain); | 
|  138   return sink_list_and_identity; |  137   return sink_list_and_identity; | 
|  139 } |  138 } | 
|  140  |  139  | 
|  141 std::unique_ptr<base::DictionaryValue> RouteToValue( |  140 std::unique_ptr<base::DictionaryValue> RouteToValue( | 
|  142     const MediaRoute& route, |  141     const MediaRoute& route, | 
|  143     bool can_join, |  142     bool can_join, | 
|  144     const std::string& extension_id, |  143     const std::string& extension_id, | 
|  145     bool incognito, |  144     bool incognito, | 
| (...skipping 262 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  408   DVLOG(1) << "OnRequestInitialData"; |  407   DVLOG(1) << "OnRequestInitialData"; | 
|  409   media_router_ui_->OnUIInitiallyLoaded(); |  408   media_router_ui_->OnUIInitiallyLoaded(); | 
|  410   base::DictionaryValue initial_data; |  409   base::DictionaryValue initial_data; | 
|  411  |  410  | 
|  412   // "No Cast devices found?" Chromecast help center page. |  411   // "No Cast devices found?" Chromecast help center page. | 
|  413   initial_data.SetString("deviceMissingUrl", |  412   initial_data.SetString("deviceMissingUrl", | 
|  414       base::StringPrintf(kHelpPageUrlPrefix, 3249268)); |  413       base::StringPrintf(kHelpPageUrlPrefix, 3249268)); | 
|  415  |  414  | 
|  416   std::unique_ptr<base::DictionaryValue> sinks_and_identity( |  415   std::unique_ptr<base::DictionaryValue> sinks_and_identity( | 
|  417       SinksAndIdentityToValue(media_router_ui_->sinks(), GetAccountInfo())); |  416       SinksAndIdentityToValue(media_router_ui_->sinks(), GetAccountInfo())); | 
|  418   initial_data.Set("sinksAndIdentity", std::move(sinks_and_identity)); |  417   initial_data.Set("sinksAndIdentity", sinks_and_identity.release()); | 
|  419  |  418  | 
|  420   std::unique_ptr<base::ListValue> routes(RoutesToValue( |  419   std::unique_ptr<base::ListValue> routes(RoutesToValue( | 
|  421       media_router_ui_->routes(), media_router_ui_->joinable_route_ids(), |  420       media_router_ui_->routes(), media_router_ui_->joinable_route_ids(), | 
|  422       media_router_ui_->routes_and_cast_modes())); |  421       media_router_ui_->routes_and_cast_modes())); | 
|  423   initial_data.Set("routes", std::move(routes)); |  422   initial_data.Set("routes", routes.release()); | 
|  424  |  423  | 
|  425   const std::set<MediaCastMode> cast_modes = media_router_ui_->cast_modes(); |  424   const std::set<MediaCastMode> cast_modes = media_router_ui_->cast_modes(); | 
|  426   std::unique_ptr<base::ListValue> cast_modes_list(CastModesToValue( |  425   std::unique_ptr<base::ListValue> cast_modes_list(CastModesToValue( | 
|  427       cast_modes, media_router_ui_->GetPresentationRequestSourceName())); |  426       cast_modes, media_router_ui_->GetPresentationRequestSourceName())); | 
|  428   initial_data.Set("castModes", std::move(cast_modes_list)); |  427   initial_data.Set("castModes", cast_modes_list.release()); | 
|  429  |  428  | 
|  430   // If the cast mode last chosen for the current origin is tab mirroring, |  429   // If the cast mode last chosen for the current origin is tab mirroring, | 
|  431   // that should be the cast mode initially selected in the dialog. Otherwise |  430   // that should be the cast mode initially selected in the dialog. Otherwise | 
|  432   // the initial cast mode should be chosen automatically by the dialog. |  431   // the initial cast mode should be chosen automatically by the dialog. | 
|  433   bool use_tab_mirroring = |  432   bool use_tab_mirroring = | 
|  434       base::ContainsKey(cast_modes, MediaCastMode::TAB_MIRROR) && |  433       base::ContainsKey(cast_modes, MediaCastMode::TAB_MIRROR) && | 
|  435       media_router_ui_->UserSelectedTabMirroringForCurrentOrigin(); |  434       media_router_ui_->UserSelectedTabMirroringForCurrentOrigin(); | 
|  436   initial_data.SetBoolean("useTabMirroring", use_tab_mirroring); |  435   initial_data.SetBoolean("useTabMirroring", use_tab_mirroring); | 
|  437  |  436  | 
|  438   web_ui()->CallJavascriptFunctionUnsafe(kSetInitialData, initial_data); |  437   web_ui()->CallJavascriptFunctionUnsafe(kSetInitialData, initial_data); | 
| (...skipping 456 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  895   } |  894   } | 
|  896  |  895  | 
|  897   return value; |  896   return value; | 
|  898 } |  897 } | 
|  899  |  898  | 
|  900 void MediaRouterWebUIMessageHandler::SetWebUIForTest(content::WebUI* web_ui) { |  899 void MediaRouterWebUIMessageHandler::SetWebUIForTest(content::WebUI* web_ui) { | 
|  901   set_web_ui(web_ui); |  900   set_web_ui(web_ui); | 
|  902 } |  901 } | 
|  903  |  902  | 
|  904 }  // namespace media_router |  903 }  // namespace media_router | 
| OLD | NEW |