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

Unified Diff: mojo/services/html_viewer/webmediaplayer_factory.cc

Issue 795193003: Introduce MojoRendererFactory::ServiceProvider. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: git cl format Created 6 years 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: mojo/services/html_viewer/webmediaplayer_factory.cc
diff --git a/mojo/services/html_viewer/webmediaplayer_factory.cc b/mojo/services/html_viewer/webmediaplayer_factory.cc
index 7f067545a6418e370fead2b004d8425fbead1f38..a1fcdce0daf41a71ddf7071693c716174da53e23 100644
--- a/mojo/services/html_viewer/webmediaplayer_factory.cc
+++ b/mojo/services/html_viewer/webmediaplayer_factory.cc
@@ -25,6 +25,39 @@
namespace mojo {
+#if !defined(OS_ANDROID)
+namespace {
+
+class RendererServiceProvider
+ : public media::MojoRendererFactory::ServiceProvider {
+ public:
+ RendererServiceProvider(ServiceProviderPtr service_provider_ptr);
jamesr 2014/12/16 01:47:37 explicit
xhwang 2014/12/16 05:05:11 Done.
+ ~RendererServiceProvider() final;
+ void ConnectToService(
+ mojo::InterfacePtr<mojo::MediaRenderer>* media_renderer_ptr) final;
jamesr 2014/12/16 01:47:37 this code is in namespace mojo, you can drop all t
xhwang 2014/12/16 05:05:11 Done.
+
+ private:
+ ServiceProviderPtr service_provider_ptr_;
+
+ DISALLOW_COPY_AND_ASSIGN(RendererServiceProvider);
+};
+
+RendererServiceProvider::RendererServiceProvider(
jamesr 2014/12/16 01:47:37 i would just inline these
xhwang 2014/12/16 05:05:11 Done.
+ ServiceProviderPtr service_provider_ptr)
+ : service_provider_ptr_(service_provider_ptr.Pass()) {
+}
+
+RendererServiceProvider::~RendererServiceProvider() {
+}
+
+void RendererServiceProvider::ConnectToService(
+ mojo::InterfacePtr<mojo::MediaRenderer>* media_renderer_ptr) {
+ mojo::ConnectToService(service_provider_ptr_.get(), media_renderer_ptr);
+}
+
+} // namespace
+#endif
+
WebMediaPlayerFactory::WebMediaPlayerFactory(
const scoped_refptr<base::SingleThreadTaskRunner>& compositor_task_runner,
bool enable_mojo_media_renderer)
@@ -62,8 +95,10 @@ blink::WebMediaPlayer* WebMediaPlayerFactory::CreateMediaPlayer(
ServiceProviderPtr media_renderer_service_provider;
shell->ConnectToApplication("mojo:media",
GetProxy(&media_renderer_service_provider));
- media_renderer_factory.reset(
- new media::MojoRendererFactory(media_renderer_service_provider.Pass()));
+ media_renderer_factory.reset(new media::MojoRendererFactory(
+ scoped_ptr<media::MojoRendererFactory::ServiceProvider>(
jamesr 2014/12/16 01:47:37 you don't need to spell this type out again. just
xhwang 2014/12/16 05:05:11 Good to know. Thanks!
+ new RendererServiceProvider(
+ media_renderer_service_provider.Pass()))));
} else {
media_renderer_factory.reset(
new media::DefaultRendererFactory(media_log,
« media/mojo/services/mojo_renderer_factory.h ('K') | « media/mojo/services/mojo_renderer_factory.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698