Commit 84056e94 authored by Guohui Deng's avatar Guohui Deng Committed by Commit Bot

[Chromecast] Use mojo::Receiver in VideoGeometrySetterService.

Change |video_geometry_setter_receivers_| from mojo::ReceiverSet
to mojo::Receiver because a single receiver is more appropriate.

Bug: 925450
Test: Cast youtube with and without VizDisplayCompositor enabled.
Change-Id: I7bd60820297a54e3a84bf268a015cb4625da7199
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1927223Reviewed-by: default avatarDaniel Cheng <dcheng@chromium.org>
Reviewed-by: default avatarDaniel Nicoara <dnicoara@chromium.org>
Commit-Queue: Guohui Deng <guohuideng@chromium.org>
Cr-Commit-Position: refs/heads/master@{#718309}
parent e082b775
...@@ -39,7 +39,11 @@ void VideoGeometrySetterService::GetVideoGeometryChangeSubscriber( ...@@ -39,7 +39,11 @@ void VideoGeometrySetterService::GetVideoGeometryChangeSubscriber(
void VideoGeometrySetterService::GetVideoGeometrySetter( void VideoGeometrySetterService::GetVideoGeometrySetter(
mojo::PendingReceiver<mojom::VideoGeometrySetter> pending_receiver) { mojo::PendingReceiver<mojom::VideoGeometrySetter> pending_receiver) {
MAKE_SURE_ON_SEQUENCE(GetVideoGeometrySetter, std::move(pending_receiver)); MAKE_SURE_ON_SEQUENCE(GetVideoGeometrySetter, std::move(pending_receiver));
video_geometry_setter_receivers_.Add(this, std::move(pending_receiver)); if (video_geometry_setter_receiver_.is_bound()) {
LOG(ERROR) << __func__ << " VideoGeometrySetter dropped";
video_geometry_setter_receiver_.reset();
}
video_geometry_setter_receiver_.Bind(std::move(pending_receiver));
} }
void VideoGeometrySetterService::SubscribeToVideoGeometryChange( void VideoGeometrySetterService::SubscribeToVideoGeometryChange(
......
...@@ -17,6 +17,7 @@ ...@@ -17,6 +17,7 @@
#include "chromecast/media/service/mojom/video_geometry_setter.mojom.h" #include "chromecast/media/service/mojom/video_geometry_setter.mojom.h"
#include "mojo/public/cpp/bindings/pending_receiver.h" #include "mojo/public/cpp/bindings/pending_receiver.h"
#include "mojo/public/cpp/bindings/pending_remote.h" #include "mojo/public/cpp/bindings/pending_remote.h"
#include "mojo/public/cpp/bindings/receiver.h"
#include "mojo/public/cpp/bindings/receiver_set.h" #include "mojo/public/cpp/bindings/receiver_set.h"
namespace base { namespace base {
...@@ -64,9 +65,8 @@ class VideoGeometrySetterService : public mojom::VideoGeometryChangeSubscriber, ...@@ -64,9 +65,8 @@ class VideoGeometrySetterService : public mojom::VideoGeometryChangeSubscriber,
mojo::ReceiverSet<mojom::VideoGeometryChangeSubscriber> mojo::ReceiverSet<mojom::VideoGeometryChangeSubscriber>
video_geometry_change_subscriber_receivers_; video_geometry_change_subscriber_receivers_;
// TODO(guohuideng): change mojo::ReceiverSet to mojo::Receiver. mojo::Receiver<mojom::VideoGeometrySetter> video_geometry_setter_receiver_{
mojo::ReceiverSet<mojom::VideoGeometrySetter> this};
video_geometry_setter_receivers_;
base::WeakPtrFactory<VideoGeometrySetterService> weak_factory_; base::WeakPtrFactory<VideoGeometrySetterService> weak_factory_;
DISALLOW_COPY_AND_ASSIGN(VideoGeometrySetterService); DISALLOW_COPY_AND_ASSIGN(VideoGeometrySetterService);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment