Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(271)

Side by Side Diff: chrome/browser/ui/webui/media_router/media_router_webui_message_handler.cc

Issue 1805813002: [Media Router] Wiring for searching route providers for new sinks. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 <string> 7 #include <string>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/metrics/histogram_macros.h" 10 #include "base/metrics/histogram_macros.h"
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
51 const char kReportClickedSinkIndex[] = "reportClickedSinkIndex"; 51 const char kReportClickedSinkIndex[] = "reportClickedSinkIndex";
52 const char kReportInitialAction[] = "reportInitialAction"; 52 const char kReportInitialAction[] = "reportInitialAction";
53 const char kReportInitialState[] = "reportInitialState"; 53 const char kReportInitialState[] = "reportInitialState";
54 const char kReportNavigateToView[] = "reportNavigateToView"; 54 const char kReportNavigateToView[] = "reportNavigateToView";
55 const char kReportRouteCreationOutcome[] = "reportRouteCreationOutcome"; 55 const char kReportRouteCreationOutcome[] = "reportRouteCreationOutcome";
56 const char kReportRouteCreation[] = "reportRouteCreation"; 56 const char kReportRouteCreation[] = "reportRouteCreation";
57 const char kReportSelectedCastMode[] = "reportSelectedCastMode"; 57 const char kReportSelectedCastMode[] = "reportSelectedCastMode";
58 const char kReportSinkCount[] = "reportSinkCount"; 58 const char kReportSinkCount[] = "reportSinkCount";
59 const char kReportTimeToClickSink[] = "reportTimeToClickSink"; 59 const char kReportTimeToClickSink[] = "reportTimeToClickSink";
60 const char kReportTimeToInitialActionClose[] = "reportTimeToInitialActionClose"; 60 const char kReportTimeToInitialActionClose[] = "reportTimeToInitialActionClose";
61 const char kSearchProviders[] = "searchProviders";
61 const char kOnInitialDataReceived[] = "onInitialDataReceived"; 62 const char kOnInitialDataReceived[] = "onInitialDataReceived";
62 63
63 // JS function names. 64 // JS function names.
64 const char kSetInitialData[] = "media_router.ui.setInitialData"; 65 const char kSetInitialData[] = "media_router.ui.setInitialData";
65 const char kOnCreateRouteResponseReceived[] = 66 const char kOnCreateRouteResponseReceived[] =
66 "media_router.ui.onCreateRouteResponseReceived"; 67 "media_router.ui.onCreateRouteResponseReceived";
67 const char kSetFirstRunFlowData[] = "media_router.ui.setFirstRunFlowData"; 68 const char kSetFirstRunFlowData[] = "media_router.ui.setFirstRunFlowData";
68 const char kSetIssue[] = "media_router.ui.setIssue"; 69 const char kSetIssue[] = "media_router.ui.setIssue";
69 const char kSetSinkListAndIdentity[] = "media_router.ui.setSinkListAndIdentity"; 70 const char kSetSinkListAndIdentity[] = "media_router.ui.setSinkListAndIdentity";
70 const char kSetRouteList[] = "media_router.ui.setRouteList"; 71 const char kSetRouteList[] = "media_router.ui.setRouteList";
(...skipping 294 matching lines...) Expand 10 before | Expand all | Expand 10 after
365 web_ui()->RegisterMessageCallback( 366 web_ui()->RegisterMessageCallback(
366 kReportTimeToClickSink, 367 kReportTimeToClickSink,
367 base::Bind(&MediaRouterWebUIMessageHandler::OnReportTimeToClickSink, 368 base::Bind(&MediaRouterWebUIMessageHandler::OnReportTimeToClickSink,
368 base::Unretained(this))); 369 base::Unretained(this)));
369 web_ui()->RegisterMessageCallback( 370 web_ui()->RegisterMessageCallback(
370 kReportTimeToInitialActionClose, 371 kReportTimeToInitialActionClose,
371 base::Bind( 372 base::Bind(
372 &MediaRouterWebUIMessageHandler::OnReportTimeToInitialActionClose, 373 &MediaRouterWebUIMessageHandler::OnReportTimeToInitialActionClose,
373 base::Unretained(this))); 374 base::Unretained(this)));
374 web_ui()->RegisterMessageCallback( 375 web_ui()->RegisterMessageCallback(
376 kSearchProviders,
377 base::Bind(&MediaRouterWebUIMessageHandler::OnSearchProviders,
378 base::Unretained(this)));
379 web_ui()->RegisterMessageCallback(
375 kOnInitialDataReceived, 380 kOnInitialDataReceived,
376 base::Bind(&MediaRouterWebUIMessageHandler::OnInitialDataReceived, 381 base::Bind(&MediaRouterWebUIMessageHandler::OnInitialDataReceived,
377 base::Unretained(this))); 382 base::Unretained(this)));
378 } 383 }
379 384
380 void MediaRouterWebUIMessageHandler::OnRequestInitialData( 385 void MediaRouterWebUIMessageHandler::OnRequestInitialData(
381 const base::ListValue* args) { 386 const base::ListValue* args) {
382 DVLOG(1) << "OnRequestInitialData"; 387 DVLOG(1) << "OnRequestInitialData";
383 media_router_ui_->OnUIInitiallyLoaded(); 388 media_router_ui_->OnUIInitiallyLoaded();
384 base::DictionaryValue initial_data; 389 base::DictionaryValue initial_data;
(...skipping 327 matching lines...) Expand 10 before | Expand all | Expand 10 after
712 DVLOG(1) << "OnReportTimeToInitialActionClose"; 717 DVLOG(1) << "OnReportTimeToInitialActionClose";
713 double time_to_close; 718 double time_to_close;
714 if (!args->GetDouble(0, &time_to_close)) { 719 if (!args->GetDouble(0, &time_to_close)) {
715 VLOG(0) << "Unable to extract args."; 720 VLOG(0) << "Unable to extract args.";
716 return; 721 return;
717 } 722 }
718 UMA_HISTOGRAM_TIMES("MediaRouter.Ui.Action.CloseLatency", 723 UMA_HISTOGRAM_TIMES("MediaRouter.Ui.Action.CloseLatency",
719 base::TimeDelta::FromMillisecondsD(time_to_close)); 724 base::TimeDelta::FromMillisecondsD(time_to_close));
720 } 725 }
721 726
727 void MediaRouterWebUIMessageHandler::OnSearchProviders(
728 const base::ListValue* args) {
729 DVLOG(1) << "OnSearchProviders";
730 const base::DictionaryValue* args_dict = nullptr;
731 std::string sink_id;
732 int cast_mode_num = -1;
733 if (!args->GetDictionary(0, &args_dict) ||
734 !args_dict->GetString("sinkId", &sink_id) ||
735 !args_dict->GetInteger("selectedCastMode", &cast_mode_num)) {
736 DVLOG(1) << "Unable to extract args";
737 return;
738 }
739
740 if (sink_id.empty()) {
741 DVLOG(1) << "Media Router UI did not provide a valid sink ID. Aborting";
742 }
743
744 if (!IsValidCastModeNum(cast_mode_num)) {
745 DVLOG(1) << "Invalid cast mode: " << cast_mode_num << ". Aborting.";
746 return;
747 }
748
749 media_router_ui_->SearchProviders(sink_id,
750 static_cast<MediaCastMode>(cast_mode_num));
751 }
752
722 void MediaRouterWebUIMessageHandler::OnInitialDataReceived( 753 void MediaRouterWebUIMessageHandler::OnInitialDataReceived(
723 const base::ListValue* args) { 754 const base::ListValue* args) {
724 DVLOG(1) << "OnInitialDataReceived"; 755 DVLOG(1) << "OnInitialDataReceived";
725 media_router_ui_->OnUIInitialDataReceived(); 756 media_router_ui_->OnUIInitialDataReceived();
726 MaybeUpdateFirstRunFlowData(); 757 MaybeUpdateFirstRunFlowData();
727 } 758 }
728 759
729 bool MediaRouterWebUIMessageHandler::ActOnIssueType( 760 bool MediaRouterWebUIMessageHandler::ActOnIssueType(
730 const IssueAction::Type& action_type, 761 const IssueAction::Type& action_type,
731 const base::DictionaryValue* args) { 762 const base::DictionaryValue* args) {
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
803 #else 834 #else
804 return AccountInfo(); 835 return AccountInfo();
805 #endif // defined(GOOGLE_CHROME_BUILD) 836 #endif // defined(GOOGLE_CHROME_BUILD)
806 } 837 }
807 838
808 void MediaRouterWebUIMessageHandler::SetWebUIForTest(content::WebUI* web_ui) { 839 void MediaRouterWebUIMessageHandler::SetWebUIForTest(content::WebUI* web_ui) {
809 set_web_ui(web_ui); 840 set_web_ui(web_ui);
810 } 841 }
811 842
812 } // namespace media_router 843 } // namespace media_router
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698