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

Side by Side Diff: chrome/browser/permissions/permission_request_impl.cc

Issue 2184823007: Add a feature which, when enabled, blocks permissions after X prompt dismissals. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Addressing nits Created 4 years, 4 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 unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/permissions/permission_request_impl.h" 5 #include "chrome/browser/permissions/permission_request_impl.h"
6 6
7 #include "build/build_config.h" 7 #include "build/build_config.h"
8 #include "chrome/browser/permissions/permission_context_base.h" 8 #include "chrome/browser/permissions/permission_decision_auto_blocker.h"
9 #include "chrome/browser/permissions/permission_uma_util.h" 9 #include "chrome/browser/permissions/permission_uma_util.h"
10 #include "chrome/grit/generated_resources.h" 10 #include "chrome/grit/generated_resources.h"
11 #include "components/url_formatter/elide_url.h" 11 #include "components/url_formatter/elide_url.h"
12 #include "grit/theme_resources.h" 12 #include "grit/theme_resources.h"
13 #include "net/base/escape.h" 13 #include "net/base/escape.h"
14 #include "ui/base/l10n/l10n_util.h" 14 #include "ui/base/l10n/l10n_util.h"
15 #include "ui/gfx/vector_icons_public.h" 15 #include "ui/gfx/vector_icons_public.h"
16 16
17 PermissionRequestImpl::PermissionRequestImpl( 17 PermissionRequestImpl::PermissionRequestImpl(
18 const GURL& request_origin, 18 const GURL& request_origin,
19 content::PermissionType permission_type, 19 content::PermissionType permission_type,
20 Profile* profile, 20 Profile* profile,
21 bool has_gesture, 21 bool has_gesture,
22 const PermissionDecidedCallback& permission_decided_callback, 22 const PermissionDecidedCallback& permission_decided_callback,
23 const base::Closure delete_callback) 23 const base::Closure delete_callback)
24 : request_origin_(request_origin), 24 : request_origin_(request_origin),
25 permission_type_(permission_type), 25 permission_type_(permission_type),
26 profile_(profile), 26 profile_(profile),
27 has_gesture_(has_gesture), 27 has_gesture_(has_gesture),
28 permission_decided_callback_(permission_decided_callback), 28 permission_decided_callback_(permission_decided_callback),
29 delete_callback_(delete_callback), 29 delete_callback_(delete_callback),
30 is_finished_(false), 30 is_finished_(false),
31 action_taken_(false) {} 31 action_taken_(false) {}
32 32
33 PermissionRequestImpl::~PermissionRequestImpl() { 33 PermissionRequestImpl::~PermissionRequestImpl() {
34 DCHECK(is_finished_); 34 DCHECK(is_finished_);
35 if (!action_taken_) { 35 if (!action_taken_) {
36 PermissionDecisionAutoBlocker(profile_).RecordIgnore(request_origin_,
37 permission_type_);
38
36 PermissionUmaUtil::PermissionIgnored(permission_type_, GetGestureType(), 39 PermissionUmaUtil::PermissionIgnored(permission_type_, GetGestureType(),
37 request_origin_, profile_); 40 request_origin_, profile_);
38 } 41 }
39 } 42 }
40 43
41 gfx::VectorIconId PermissionRequestImpl::GetVectorIconId() const { 44 gfx::VectorIconId PermissionRequestImpl::GetVectorIconId() const {
42 #if !defined(OS_MACOSX) && !defined(OS_ANDROID) 45 #if !defined(OS_MACOSX) && !defined(OS_ANDROID)
43 switch (permission_type_) { 46 switch (permission_type_) {
44 case content::PermissionType::GEOLOCATION: 47 case content::PermissionType::GEOLOCATION:
45 return gfx::VectorIconId::LOCATION_ON; 48 return gfx::VectorIconId::LOCATION_ON;
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after
159 NOTREACHED(); 162 NOTREACHED();
160 return PermissionRequestType::UNKNOWN; 163 return PermissionRequestType::UNKNOWN;
161 } 164 }
162 } 165 }
163 166
164 PermissionRequestGestureType PermissionRequestImpl::GetGestureType() 167 PermissionRequestGestureType PermissionRequestImpl::GetGestureType()
165 const { 168 const {
166 return has_gesture_ ? PermissionRequestGestureType::GESTURE 169 return has_gesture_ ? PermissionRequestGestureType::GESTURE
167 : PermissionRequestGestureType::NO_GESTURE; 170 : PermissionRequestGestureType::NO_GESTURE;
168 } 171 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698