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

Unified Diff: chrome/browser/permissions/permission_context_base.cc

Issue 2153133002: Add gesture type value from desktop prompt to permission report (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@add-user-gesture-to-reporting-part
Patch Set: nit 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
Index: chrome/browser/permissions/permission_context_base.cc
diff --git a/chrome/browser/permissions/permission_context_base.cc b/chrome/browser/permissions/permission_context_base.cc
index f0fc52cbb09308d88950e6bfdf851895201c2cd0..206b383cf8eae25ac9ff1020eb7cd1b2c8674f1b 100644
--- a/chrome/browser/permissions/permission_context_base.cc
+++ b/chrome/browser/permissions/permission_context_base.cc
@@ -11,6 +11,7 @@
#include "base/strings/stringprintf.h"
#include "build/build_config.h"
#include "chrome/browser/content_settings/host_content_settings_map_factory.h"
+#include "chrome/browser/permissions/permission_request.h"
#include "chrome/browser/permissions/permission_request_id.h"
#include "chrome/browser/permissions/permission_uma_util.h"
#include "chrome/browser/permissions/permission_util.h"
@@ -177,12 +178,12 @@ void PermissionContextBase::DecidePermission(
if (!permission_request_manager)
return;
std::unique_ptr<PermissionRequest> request_ptr(new PermissionRequestImpl(
- requesting_origin, permission_type_, profile_, user_gesture,
- base::Bind(&PermissionContextBase::PermissionDecided,
- weak_factory_.GetWeakPtr(), id, requesting_origin,
- embedding_origin, callback),
- base::Bind(&PermissionContextBase::CleanUpRequest,
- weak_factory_.GetWeakPtr(), id)));
+ requesting_origin, permission_type_, profile_, user_gesture,
+ base::Bind(&PermissionContextBase::PermissionDecided,
+ weak_factory_.GetWeakPtr(), id, requesting_origin,
+ embedding_origin, user_gesture, callback),
+ base::Bind(&PermissionContextBase::CleanUpRequest,
+ weak_factory_.GetWeakPtr(), id)));
PermissionRequest* request = request_ptr.get();
bool inserted =
@@ -190,11 +191,13 @@ void PermissionContextBase::DecidePermission(
DCHECK(inserted) << "Duplicate id " << id.ToString();
permission_request_manager->AddRequest(request);
#else
+ // TODO(stefanocs): Pass |user_gesture| to CreateInfoBarRequest to record
+ // permission actions in infobar.
GetQueueController()->CreateInfoBarRequest(
id, requesting_origin, embedding_origin,
base::Bind(&PermissionContextBase::PermissionDecided,
weak_factory_.GetWeakPtr(), id, requesting_origin,
- embedding_origin, callback,
+ embedding_origin, user_gesture, callback,
// the queue controller takes care of persisting the
// permission
false));
@@ -205,25 +208,30 @@ void PermissionContextBase::PermissionDecided(
const PermissionRequestID& id,
const GURL& requesting_origin,
const GURL& embedding_origin,
+ bool user_gesture,
const BrowserPermissionCallback& callback,
bool persist,
ContentSetting content_setting) {
#if !defined(OS_ANDROID)
// Infobar persistence and its related UMA is tracked on the infobar
// controller directly.
+ PermissionRequestGestureType gesture_type =
+ user_gesture ? PermissionRequestGestureType::GESTURE
+ : PermissionRequestGestureType::NO_GESTURE;
if (persist) {
DCHECK(content_setting == CONTENT_SETTING_ALLOW ||
content_setting == CONTENT_SETTING_BLOCK);
- if (content_setting == CONTENT_SETTING_ALLOW)
- PermissionUmaUtil::PermissionGranted(permission_type_, requesting_origin,
- profile_);
- else
- PermissionUmaUtil::PermissionDenied(permission_type_, requesting_origin,
- profile_);
+ if (content_setting == CONTENT_SETTING_ALLOW) {
+ PermissionUmaUtil::PermissionGranted(permission_type_, gesture_type,
+ requesting_origin, profile_);
+ } else {
+ PermissionUmaUtil::PermissionDenied(permission_type_, gesture_type,
+ requesting_origin, profile_);
+ }
} else {
DCHECK_EQ(content_setting, CONTENT_SETTING_DEFAULT);
- PermissionUmaUtil::PermissionDismissed(permission_type_, requesting_origin,
- profile_);
+ PermissionUmaUtil::PermissionDismissed(permission_type_, gesture_type,
+ requesting_origin, profile_);
}
#endif
« no previous file with comments | « chrome/browser/permissions/permission_context_base.h ('k') | chrome/browser/permissions/permission_infobar_delegate.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698