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

Unified Diff: content/renderer/render_frame_impl.cc

Issue 1470233002: media: Generalize MediaPermissionDispatcher. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase only Created 4 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
« no previous file with comments | « content/renderer/render_frame_impl.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/renderer/render_frame_impl.cc
diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc
index b1171dbec5a413b87fde7a2f3bdc0fd80f2dc05a..77b9e5ba63ecca3f62c4c7e88ee9127cd1c35db4 100644
--- a/content/renderer/render_frame_impl.cc
+++ b/content/renderer/render_frame_impl.cc
@@ -974,7 +974,6 @@ RenderFrameImpl::RenderFrameImpl(const CreateParams& params)
handling_select_range_(false),
notification_permission_dispatcher_(NULL),
web_user_media_client_(NULL),
- media_permission_dispatcher_(NULL),
midi_dispatcher_(NULL),
#if defined(OS_ANDROID)
media_player_manager_(NULL),
@@ -5970,9 +5969,12 @@ RendererMediaSessionManager* RenderFrameImpl::GetMediaSessionManager() {
#endif // defined(OS_ANDROID)
media::MediaPermission* RenderFrameImpl::GetMediaPermission() {
- if (!media_permission_dispatcher_)
- media_permission_dispatcher_ = new MediaPermissionDispatcher(this);
- return media_permission_dispatcher_;
+ if (!media_permission_dispatcher_) {
+ media_permission_dispatcher_.reset(new MediaPermissionDispatcher(
+ base::Bind(&RenderFrameImpl::ConnectToService<PermissionService>,
+ base::Unretained(this))));
+ }
+ return media_permission_dispatcher_.get();
}
#if defined(ENABLE_MOJO_MEDIA)
@@ -6042,6 +6044,12 @@ void RenderFrameImpl::RegisterMojoServices() {
}
}
+template <typename Interface>
+void RenderFrameImpl::ConnectToService(
+ mojo::InterfaceRequest<Interface> request) {
+ GetServiceRegistry()->ConnectToRemoteService(std::move(request));
+}
+
mojo::ServiceProviderPtr RenderFrameImpl::ConnectToApplication(
const GURL& url) {
if (!mojo_shell_)
« no previous file with comments | « content/renderer/render_frame_impl.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698