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

Unified Diff: chrome/browser/media/router/presentation_service_delegate_impl.cc

Issue 2706463002: [Presentation API] Mojo typemap for content::PresentationConnectionMessage (Closed)
Patch Set: Fix compile error after rebase Created 3 years, 10 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/media/router/presentation_service_delegate_impl.cc
diff --git a/chrome/browser/media/router/presentation_service_delegate_impl.cc b/chrome/browser/media/router/presentation_service_delegate_impl.cc
index 2cd8f5054c9af2c1cc13e1c7fec1623d186e01a7..32566119aa033179fab05df1bb726cb95aecd2a8 100644
--- a/chrome/browser/media/router/presentation_service_delegate_impl.cc
+++ b/chrome/browser/media/router/presentation_service_delegate_impl.cc
@@ -89,25 +89,19 @@ class PresentationSessionMessagesObserver : public RouteMessageObserver {
void OnMessagesReceived(const std::vector<RouteMessage>& messages) final {
DVLOG(2) << __func__ << ", number of messages : " << messages.size();
- std::vector<std::unique_ptr<content::PresentationConnectionMessage>>
- presentation_messages;
+ // TODO(mfoltz): Remove RouteMessage and replace with move-only
+ // PresentationConnectionMessage.
+ std::vector<content::PresentationConnectionMessage> presentation_messages;
for (const RouteMessage& message : messages) {
if (message.type == RouteMessage::TEXT && message.text) {
- presentation_messages.push_back(
- base::MakeUnique<content::PresentationConnectionMessage>(
- content::PresentationMessageType::TEXT));
- presentation_messages.back()->message = *message.text;
+ presentation_messages.emplace_back(message.text.value());
} else if (message.type == RouteMessage::BINARY && message.binary) {
- presentation_messages.push_back(
- base::MakeUnique<content::PresentationConnectionMessage>(
- content::PresentationMessageType::BINARY));
- presentation_messages.back()->data.reset(
- new std::vector<uint8_t>(*message.binary));
+ presentation_messages.emplace_back(message.binary.value());
+ } else {
+ NOTREACHED() << "Unknown route message type";
}
}
- // TODO(miu): Remove second argument from PresentationSessionMessageCallback
- // since it's always true now.
- message_cb_.Run(presentation_messages, true);
+ message_cb_.Run(std::move(presentation_messages));
}
private:
@@ -951,7 +945,7 @@ void PresentationServiceDelegateImpl::SendMessage(
int render_process_id,
int render_frame_id,
const content::PresentationSessionInfo& session,
- std::unique_ptr<content::PresentationConnectionMessage> message,
+ content::PresentationConnectionMessage message,
const SendMessageCallback& send_message_cb) {
const MediaRoute::Id& route_id = frame_manager_->GetRouteId(
RenderFrameHostId(render_process_id, render_frame_id),
@@ -962,11 +956,14 @@ void PresentationServiceDelegateImpl::SendMessage(
return;
}
- if (message->is_binary()) {
- router_->SendRouteBinaryMessage(route_id, std::move(message->data),
- send_message_cb);
+ if (message.is_binary()) {
+ router_->SendRouteBinaryMessage(
+ route_id,
+ base::MakeUnique<std::vector<uint8_t>>(std::move(message.data.value())),
+ send_message_cb);
} else {
- router_->SendRouteMessage(route_id, message->message, send_message_cb);
+ router_->SendRouteMessage(route_id, message.message.value(),
+ send_message_cb);
}
}
« no previous file with comments | « chrome/browser/media/router/presentation_service_delegate_impl.h ('k') | chrome/browser/media/router/route_message.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698