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

Unified Diff: chrome/browser/media/media_stream_devices_controller.cc

Issue 2150903002: Reland add hooks to permission layer for permission action reporting (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix nits Created 4 years, 5 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 | « no previous file | chrome/browser/permissions/permission_bubble_request_impl.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/media/media_stream_devices_controller.cc
diff --git a/chrome/browser/media/media_stream_devices_controller.cc b/chrome/browser/media/media_stream_devices_controller.cc
index 57e1dbcc145bda22b739a77a6e2452e10e88c449..8995a288f6f048a886b8ebdd4f77ae328890427f 100644
--- a/chrome/browser/media/media_stream_devices_controller.cc
+++ b/chrome/browser/media/media_stream_devices_controller.cc
@@ -72,23 +72,25 @@ bool ContentTypeIsRequested(content::PermissionType type,
}
using PermissionActionCallback =
- base::Callback<void(content::PermissionType, const GURL&)>;
+ base::Callback<void(content::PermissionType, const GURL&, Profile*)>;
void RecordSinglePermissionAction(const content::MediaStreamRequest& request,
content::PermissionType permission_type,
+ Profile* profile,
PermissionActionCallback callback) {
if (ContentTypeIsRequested(permission_type, request)) {
- callback.Run(permission_type, request.security_origin);
+ callback.Run(permission_type, request.security_origin, profile);
}
}
// Calls |action_function| for each permission requested by |request|.
void RecordPermissionAction(const content::MediaStreamRequest& request,
+ Profile* profile,
PermissionActionCallback callback) {
RecordSinglePermissionAction(request, content::PermissionType::AUDIO_CAPTURE,
- callback);
+ profile, callback);
RecordSinglePermissionAction(request, content::PermissionType::VIDEO_CAPTURE,
- callback);
+ profile, callback);
}
// This helper class helps to measure the number of media stream requests that
@@ -204,8 +206,8 @@ MediaStreamDevicesController::MediaStreamDevicesController(
MediaStreamDevicesController::~MediaStreamDevicesController() {
if (!callback_.is_null()) {
- RecordPermissionAction(
- request_, base::Bind(PermissionUmaUtil::PermissionIgnored));
+ RecordPermissionAction(request_, profile_,
+ base::Bind(PermissionUmaUtil::PermissionIgnored));
callback_.Run(content::MediaStreamDevices(),
content::MEDIA_DEVICE_FAILED_DUE_TO_SHUTDOWN,
std::unique_ptr<content::MediaStreamUI>());
@@ -280,8 +282,8 @@ GURL MediaStreamDevicesController::GetOrigin() const {
}
void MediaStreamDevicesController::PermissionGranted() {
- RecordPermissionAction(
- request_, base::Bind(PermissionUmaUtil::PermissionGranted));
+ RecordPermissionAction(request_, profile_,
+ base::Bind(PermissionUmaUtil::PermissionGranted));
RunCallback(GetNewSetting(CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC,
old_audio_setting_, CONTENT_SETTING_ALLOW),
GetNewSetting(CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA,
@@ -290,8 +292,8 @@ void MediaStreamDevicesController::PermissionGranted() {
}
void MediaStreamDevicesController::PermissionDenied() {
- RecordPermissionAction(
- request_, base::Bind(PermissionUmaUtil::PermissionDenied));
+ RecordPermissionAction(request_, profile_,
+ base::Bind(PermissionUmaUtil::PermissionDenied));
RunCallback(GetNewSetting(CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC,
old_audio_setting_, CONTENT_SETTING_BLOCK),
GetNewSetting(CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA,
@@ -302,11 +304,11 @@ void MediaStreamDevicesController::PermissionDenied() {
void MediaStreamDevicesController::GroupedRequestFinished(bool audio_accepted,
bool video_accepted) {
RecordSinglePermissionAction(
- request_, content::PermissionType::AUDIO_CAPTURE,
+ request_, content::PermissionType::AUDIO_CAPTURE, profile_,
base::Bind(audio_accepted ? PermissionUmaUtil::PermissionGranted
: PermissionUmaUtil::PermissionDenied));
RecordSinglePermissionAction(
- request_, content::PermissionType::VIDEO_CAPTURE,
+ request_, content::PermissionType::VIDEO_CAPTURE, profile_,
base::Bind(video_accepted ? PermissionUmaUtil::PermissionGranted
: PermissionUmaUtil::PermissionDenied));
@@ -322,8 +324,8 @@ void MediaStreamDevicesController::GroupedRequestFinished(bool audio_accepted,
}
void MediaStreamDevicesController::Cancelled() {
- RecordPermissionAction(
- request_, base::Bind(PermissionUmaUtil::PermissionDismissed));
+ RecordPermissionAction(request_, profile_,
+ base::Bind(PermissionUmaUtil::PermissionDismissed));
RunCallback(old_audio_setting_, old_video_setting_,
content::MEDIA_DEVICE_PERMISSION_DISMISSED);
}
« no previous file with comments | « no previous file | chrome/browser/permissions/permission_bubble_request_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698