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

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: 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
« no previous file with comments | « media/mojo/services/mojo_renderer_factory.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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..ec0f1d4d8fb19ac9bd45746915333df212054cf8 100644
--- a/mojo/services/html_viewer/webmediaplayer_factory.cc
+++ b/mojo/services/html_viewer/webmediaplayer_factory.cc
@@ -47,6 +47,14 @@ WebMediaPlayerFactory::WebMediaPlayerFactory(
WebMediaPlayerFactory::~WebMediaPlayerFactory() {
}
xhwang 2014/12/13 01:06:31 err, I'll add #if !defined(OS_ANDROID) here...
xhwang 2014/12/15 19:51:11 Done.
+// Helper function to take the ownership of |service_provider_ptr|. Note that
+// mojo::ConnectToService takes a raw pointer which doesn't take the ownership.
+static void ConnectToMediaRendererService(
+ ServiceProviderPtr service_provider_ptr,
+ InterfacePtr<MediaRenderer>* media_renderer_ptr) {
+ ConnectToService(service_provider_ptr.get(), media_renderer_ptr);
+}
+
blink::WebMediaPlayer* WebMediaPlayerFactory::CreateMediaPlayer(
blink::WebLocalFrame* frame,
const blink::WebURL& url,
@@ -62,8 +70,9 @@ 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(
+ base::Bind(&ConnectToMediaRendererService,
+ base::Passed(&media_renderer_service_provider))));
} else {
media_renderer_factory.reset(
new media::DefaultRendererFactory(media_log,
« no previous file with comments | « 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