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

Side by Side Diff: chrome/browser/ui/webui/media_router/media_router_ui.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_ui.h" 5 #include "chrome/browser/ui/webui/media_router/media_router_ui.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <string> 8 #include <string>
9 #include <utility> 9 #include <utility>
10 10
(...skipping 416 matching lines...) Expand 10 before | Expand all | Expand 10 after
427 void MediaRouterUI::CloseRoute(const MediaRoute::Id& route_id) { 427 void MediaRouterUI::CloseRoute(const MediaRoute::Id& route_id) {
428 router_->TerminateRoute(route_id); 428 router_->TerminateRoute(route_id);
429 } 429 }
430 430
431 void MediaRouterUI::AddIssue(const Issue& issue) { router_->AddIssue(issue); } 431 void MediaRouterUI::AddIssue(const Issue& issue) { router_->AddIssue(issue); }
432 432
433 void MediaRouterUI::ClearIssue(const std::string& issue_id) { 433 void MediaRouterUI::ClearIssue(const std::string& issue_id) {
434 router_->ClearIssue(issue_id); 434 router_->ClearIssue(issue_id);
435 } 435 }
436 436
437 void MediaRouterUI::SearchProviders(const MediaSink::Id& sink_id,
438 MediaCastMode cast_mode) {
439 query_result_manager_->StartSinkSearch(cast_mode, sink_id);
440 }
441
437 void MediaRouterUI::OnResultsUpdated( 442 void MediaRouterUI::OnResultsUpdated(
438 const std::vector<MediaSinkWithCastModes>& sinks) { 443 const std::vector<MediaSinkWithCastModes>& sinks) {
439 sinks_ = sinks; 444 sinks_ = sinks;
445 SortAndUpdateSinks();
446 }
440 447
448 void MediaRouterUI::OnSearchResultsReceived(
449 const MediaSink::Id& sink_id,
450 const std::vector<MediaSinkWithCastModes>& sinks) {
451 sinks_.reserve(sinks_.size() + sinks.size());
452 for (auto& sink : sinks) {
453 sinks_.push_back(sink);
454 }
455 SortAndUpdateSinks();
456 }
457
458 void MediaRouterUI::SortAndUpdateSinks() {
441 const icu::Collator* collator_ptr = collator_.get(); 459 const icu::Collator* collator_ptr = collator_.get();
442 std::sort( 460 std::sort(
443 sinks_.begin(), sinks_.end(), 461 sinks_.begin(), sinks_.end(),
444 [collator_ptr](const MediaSinkWithCastModes& sink1, 462 [collator_ptr](const MediaSinkWithCastModes& sink1,
445 const MediaSinkWithCastModes& sink2) { 463 const MediaSinkWithCastModes& sink2) {
446 if (collator_ptr) { 464 if (collator_ptr) {
447 base::string16 sink1_name = base::UTF8ToUTF16(sink1.sink.name()); 465 base::string16 sink1_name = base::UTF8ToUTF16(sink1.sink.name());
448 base::string16 sink2_name = base::UTF8ToUTF16(sink2.sink.name()); 466 base::string16 sink2_name = base::UTF8ToUTF16(sink2.sink.name());
449 UCollationResult result = base::i18n::CompareString16WithCollator( 467 UCollationResult result = base::i18n::CompareString16WithCollator(
450 *collator_ptr, sink1_name, sink2_name); 468 *collator_ptr, sink1_name, sink2_name);
(...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after
574 base::Time::Now() - start_time_); 592 base::Time::Now() - start_time_);
575 start_time_ = base::Time(); 593 start_time_ = base::Time();
576 } 594 }
577 } 595 }
578 596
579 void MediaRouterUI::UpdateMaxDialogHeight(int height) { 597 void MediaRouterUI::UpdateMaxDialogHeight(int height) {
580 handler_->UpdateMaxDialogHeight(height); 598 handler_->UpdateMaxDialogHeight(height);
581 } 599 }
582 600
583 } // namespace media_router 601 } // namespace media_router
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698