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

Unified Diff: content/renderer/media/media_permission_dispatcher.cc

Issue 1470233002: media: Generalize MediaPermissionDispatcher. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 1 month 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: content/renderer/media/media_permission_dispatcher.cc
diff --git a/content/renderer/media/media_permission_dispatcher.cc b/content/renderer/media/media_permission_dispatcher.cc
index 14d29285495d71abea57f2f443fad4a9015ffa4f..2c2068e9f3214cd8752072fbddc71db005af583e 100644
--- a/content/renderer/media/media_permission_dispatcher.cc
+++ b/content/renderer/media/media_permission_dispatcher.cc
@@ -35,11 +35,14 @@ content::PermissionName MediaPermissionTypeToPermissionName(Type type) {
namespace content {
-MediaPermissionDispatcher::MediaPermissionDispatcher(RenderFrame* render_frame)
- : RenderFrameObserver(render_frame),
+MediaPermissionDispatcher::MediaPermissionDispatcher(
+ const ConnectToServiceCB& connect_to_service_cb)
+ : connect_to_service_cb_(connect_to_service_cb),
task_runner_(base::ThreadTaskRunnerHandle::Get()),
next_request_id_(0),
- weak_factory_(this) {}
+ weak_factory_(this) {
+ DCHECK(!connect_to_service_cb_.is_null());
+}
MediaPermissionDispatcher::~MediaPermissionDispatcher() {
DCHECK(task_runner_->RunsTasksOnCurrentThread());
@@ -66,10 +69,8 @@ void MediaPermissionDispatcher::HasPermission(
DCHECK(task_runner_->RunsTasksOnCurrentThread());
- if (!permission_service_.get()) {
- render_frame()->GetServiceRegistry()->ConnectToRemoteService(
- mojo::GetProxy(&permission_service_));
- }
+ if (!permission_service_.get())
+ connect_to_service_cb_.Run(mojo::GetProxy(&permission_service_));
int request_id = RegisterCallback(permission_status_cb);
DVLOG(2) << __FUNCTION__ << ": request ID " << request_id;
@@ -95,10 +96,8 @@ void MediaPermissionDispatcher::RequestPermission(
DCHECK(task_runner_->RunsTasksOnCurrentThread());
- if (!permission_service_.get()) {
- render_frame()->GetServiceRegistry()->ConnectToRemoteService(
- mojo::GetProxy(&permission_service_));
- }
+ if (!permission_service_.get())
+ connect_to_service_cb_.Run(mojo::GetProxy(&permission_service_));
int request_id = RegisterCallback(permission_status_cb);
DVLOG(2) << __FUNCTION__ << ": request ID " << request_id;

Powered by Google App Engine
This is Rietveld 408576698