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

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

Issue 2123653006: Rename PermissionBubbleRequest to PermissionRequest (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@permission_manager_rename
Patch Set: Fix missed file 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 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_context_base.h" 5 #include "chrome/browser/permissions/permission_context_base.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 #include <utility> 8 #include <utility>
9 9
10 #include "base/logging.h" 10 #include "base/logging.h"
(...skipping 10 matching lines...) Expand all
21 #include "components/prefs/pref_service.h" 21 #include "components/prefs/pref_service.h"
22 #include "components/variations/variations_associated_data.h" 22 #include "components/variations/variations_associated_data.h"
23 #include "content/public/browser/browser_thread.h" 23 #include "content/public/browser/browser_thread.h"
24 #include "content/public/browser/render_frame_host.h" 24 #include "content/public/browser/render_frame_host.h"
25 #include "content/public/browser/web_contents.h" 25 #include "content/public/browser/web_contents.h"
26 #include "content/public/common/origin_util.h" 26 #include "content/public/common/origin_util.h"
27 27
28 #if defined(OS_ANDROID) 28 #if defined(OS_ANDROID)
29 #include "chrome/browser/permissions/permission_queue_controller.h" 29 #include "chrome/browser/permissions/permission_queue_controller.h"
30 #else 30 #else
31 #include "chrome/browser/permissions/permission_bubble_request_impl.h" 31 #include "chrome/browser/permissions/permission_request_impl.h"
32 #include "chrome/browser/permissions/permission_request_manager.h" 32 #include "chrome/browser/permissions/permission_request_manager.h"
33 #endif 33 #endif
34 34
35 // static 35 // static
36 const char PermissionContextBase::kPermissionsKillSwitchFieldStudy[] = 36 const char PermissionContextBase::kPermissionsKillSwitchFieldStudy[] =
37 "PermissionsKillSwitch"; 37 "PermissionsKillSwitch";
38 // static 38 // static
39 const char PermissionContextBase::kPermissionsKillSwitchBlockedValue[] = 39 const char PermissionContextBase::kPermissionsKillSwitchBlockedValue[] =
40 "blocked"; 40 "blocked";
41 41
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after
144 } 144 }
145 145
146 void PermissionContextBase::CancelPermissionRequest( 146 void PermissionContextBase::CancelPermissionRequest(
147 content::WebContents* web_contents, 147 content::WebContents* web_contents,
148 const PermissionRequestID& id) { 148 const PermissionRequestID& id) {
149 DCHECK_CURRENTLY_ON(content::BrowserThread::UI); 149 DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
150 150
151 #if defined(OS_ANDROID) 151 #if defined(OS_ANDROID)
152 GetQueueController()->CancelInfoBarRequest(id); 152 GetQueueController()->CancelInfoBarRequest(id);
153 #else 153 #else
154 PermissionBubbleRequest* cancelling = pending_bubbles_.get(id.ToString()); 154 PermissionRequest* cancelling = pending_requests_.get(id.ToString());
155 if (cancelling != NULL && web_contents != NULL && 155 if (cancelling != NULL && web_contents != NULL &&
156 PermissionRequestManager::FromWebContents(web_contents) != NULL) { 156 PermissionRequestManager::FromWebContents(web_contents) != NULL) {
157 PermissionRequestManager::FromWebContents(web_contents) 157 PermissionRequestManager::FromWebContents(web_contents)
158 ->CancelRequest(cancelling); 158 ->CancelRequest(cancelling);
159 } 159 }
160 #endif 160 #endif
161 } 161 }
162 162
163 void PermissionContextBase::DecidePermission( 163 void PermissionContextBase::DecidePermission(
164 content::WebContents* web_contents, 164 content::WebContents* web_contents,
165 const PermissionRequestID& id, 165 const PermissionRequestID& id,
166 const GURL& requesting_origin, 166 const GURL& requesting_origin,
167 const GURL& embedding_origin, 167 const GURL& embedding_origin,
168 bool user_gesture, 168 bool user_gesture,
169 const BrowserPermissionCallback& callback) { 169 const BrowserPermissionCallback& callback) {
170 DCHECK_CURRENTLY_ON(content::BrowserThread::UI); 170 DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
171 171
172 #if !defined(OS_ANDROID) 172 #if !defined(OS_ANDROID)
173 PermissionRequestManager* permission_request_manager = 173 PermissionRequestManager* permission_request_manager =
174 PermissionRequestManager::FromWebContents(web_contents); 174 PermissionRequestManager::FromWebContents(web_contents);
175 // TODO(felt): sometimes |permission_request_manager| is null. This check is 175 // TODO(felt): sometimes |permission_request_manager| is null. This check is
176 // meant to prevent crashes. See crbug.com/457091. 176 // meant to prevent crashes. See crbug.com/457091.
177 if (!permission_request_manager) 177 if (!permission_request_manager)
178 return; 178 return;
179 std::unique_ptr<PermissionBubbleRequest> request_ptr( 179 std::unique_ptr<PermissionRequest> request_ptr(new PermissionRequestImpl(
180 new PermissionBubbleRequestImpl(
181 requesting_origin, permission_type_, 180 requesting_origin, permission_type_,
182 base::Bind(&PermissionContextBase::PermissionDecided, 181 base::Bind(&PermissionContextBase::PermissionDecided,
183 weak_factory_.GetWeakPtr(), id, requesting_origin, 182 weak_factory_.GetWeakPtr(), id, requesting_origin,
184 embedding_origin, callback), 183 embedding_origin, callback),
185 base::Bind(&PermissionContextBase::CleanUpBubble, 184 base::Bind(&PermissionContextBase::CleanUpRequest,
186 weak_factory_.GetWeakPtr(), id))); 185 weak_factory_.GetWeakPtr(), id)));
187 PermissionBubbleRequest* request = request_ptr.get(); 186 PermissionRequest* request = request_ptr.get();
188 187
189 bool inserted = 188 bool inserted =
190 pending_bubbles_.add(id.ToString(), std::move(request_ptr)).second; 189 pending_requests_.add(id.ToString(), std::move(request_ptr)).second;
191 DCHECK(inserted) << "Duplicate id " << id.ToString(); 190 DCHECK(inserted) << "Duplicate id " << id.ToString();
192 permission_request_manager->AddRequest(request); 191 permission_request_manager->AddRequest(request);
193 #else 192 #else
194 GetQueueController()->CreateInfoBarRequest( 193 GetQueueController()->CreateInfoBarRequest(
195 id, requesting_origin, embedding_origin, 194 id, requesting_origin, embedding_origin,
196 base::Bind(&PermissionContextBase::PermissionDecided, 195 base::Bind(&PermissionContextBase::PermissionDecided,
197 weak_factory_.GetWeakPtr(), id, requesting_origin, 196 weak_factory_.GetWeakPtr(), id, requesting_origin,
198 embedding_origin, callback, 197 embedding_origin, callback,
199 // the queue controller takes care of persisting the 198 // the queue controller takes care of persisting the
200 // permission 199 // permission
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
260 if (content_setting == CONTENT_SETTING_DEFAULT) { 259 if (content_setting == CONTENT_SETTING_DEFAULT) {
261 content_setting = 260 content_setting =
262 HostContentSettingsMapFactory::GetForProfile(profile_) 261 HostContentSettingsMapFactory::GetForProfile(profile_)
263 ->GetDefaultContentSetting(content_settings_type_, nullptr); 262 ->GetDefaultContentSetting(content_settings_type_, nullptr);
264 } 263 }
265 264
266 DCHECK_NE(content_setting, CONTENT_SETTING_DEFAULT); 265 DCHECK_NE(content_setting, CONTENT_SETTING_DEFAULT);
267 callback.Run(content_setting); 266 callback.Run(content_setting);
268 } 267 }
269 268
270 void PermissionContextBase::CleanUpBubble(const PermissionRequestID& id) { 269 void PermissionContextBase::CleanUpRequest(const PermissionRequestID& id) {
271 size_t success = pending_bubbles_.erase(id.ToString()); 270 size_t success = pending_requests_.erase(id.ToString());
272 DCHECK(success == 1) << "Missing request " << id.ToString(); 271 DCHECK(success == 1) << "Missing request " << id.ToString();
273 } 272 }
274 273
275 void PermissionContextBase::UpdateContentSetting( 274 void PermissionContextBase::UpdateContentSetting(
276 const GURL& requesting_origin, 275 const GURL& requesting_origin,
277 const GURL& embedding_origin, 276 const GURL& embedding_origin,
278 ContentSetting content_setting) { 277 ContentSetting content_setting) {
279 DCHECK_EQ(requesting_origin, requesting_origin.GetOrigin()); 278 DCHECK_EQ(requesting_origin, requesting_origin.GetOrigin());
280 DCHECK_EQ(embedding_origin, embedding_origin.GetOrigin()); 279 DCHECK_EQ(embedding_origin, embedding_origin.GetOrigin());
281 DCHECK(content_setting == CONTENT_SETTING_ALLOW || 280 DCHECK(content_setting == CONTENT_SETTING_ALLOW ||
282 content_setting == CONTENT_SETTING_BLOCK); 281 content_setting == CONTENT_SETTING_BLOCK);
283 282
284 HostContentSettingsMapFactory::GetForProfile(profile_) 283 HostContentSettingsMapFactory::GetForProfile(profile_)
285 ->SetContentSettingDefaultScope(requesting_origin, embedding_origin, 284 ->SetContentSettingDefaultScope(requesting_origin, embedding_origin,
286 content_settings_type_, std::string(), 285 content_settings_type_, std::string(),
287 content_setting); 286 content_setting);
288 } 287 }
289 288
290 bool PermissionContextBase::IsPermissionKillSwitchOn() const { 289 bool PermissionContextBase::IsPermissionKillSwitchOn() const {
291 const std::string param = variations::GetVariationParamValue( 290 const std::string param = variations::GetVariationParamValue(
292 kPermissionsKillSwitchFieldStudy, 291 kPermissionsKillSwitchFieldStudy,
293 PermissionUtil::GetPermissionString(permission_type_)); 292 PermissionUtil::GetPermissionString(permission_type_));
294 293
295 return param == kPermissionsKillSwitchBlockedValue; 294 return param == kPermissionsKillSwitchBlockedValue;
296 } 295 }
OLDNEW
« no previous file with comments | « chrome/browser/permissions/permission_context_base.h ('k') | chrome/browser/permissions/permission_request.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698