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

Side by Side Diff: chrome/browser/ui/website_settings/permission_bubble_manager.cc

Issue 454253002: Location chooser (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Addressing meacer@ comments Created 6 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/ui/website_settings/permission_bubble_manager.h" 5 #include "chrome/browser/ui/website_settings/permission_bubble_manager.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/metrics/user_metrics_action.h" 8 #include "base/metrics/user_metrics_action.h"
9 #include "chrome/browser/ui/website_settings/permission_bubble_request.h" 9 #include "chrome/browser/ui/website_settings/permission_bubble_request.h"
10 #include "chrome/common/chrome_switches.h" 10 #include "chrome/common/chrome_switches.h"
11 #include "content/public/browser/browser_thread.h" 11 #include "content/public/browser/browser_thread.h"
12 #include "content/public/browser/navigation_details.h" 12 #include "content/public/browser/navigation_details.h"
13 #include "content/public/browser/user_metrics.h" 13 #include "content/public/browser/user_metrics.h"
14 14
15 namespace { 15 namespace {
16 16
17 class CancelledRequest : public PermissionBubbleRequest { 17 class CancelledRequest : public PermissionBubbleRequest {
18 public: 18 public:
19 explicit CancelledRequest(PermissionBubbleRequest* cancelled) 19 explicit CancelledRequest(PermissionBubbleRequest* cancelled)
20 : icon_(cancelled->GetIconID()), 20 : icon_(cancelled->GetIconID()),
21 message_text_(cancelled->GetMessageText()), 21 message_text_(cancelled->GetMessageText()),
22 message_fragment_(cancelled->GetMessageTextFragment()), 22 message_fragment_(cancelled->GetMessageTextFragment()),
23 user_gesture_(cancelled->HasUserGesture()), 23 user_gesture_(cancelled->HasUserGesture()),
24 hostname_(cancelled->GetRequestingHostname()) {} 24 hostname_(cancelled->GetRequestingHostname()) {}
25 virtual ~CancelledRequest() {} 25 virtual ~CancelledRequest() {}
26 26
27 virtual PermissionBubbleRequest::Type GetType() const OVERRIDE {
28 return PermissionBubbleRequest::Type::kOther;
29 }
30
27 virtual int GetIconID() const OVERRIDE { 31 virtual int GetIconID() const OVERRIDE {
28 return icon_; 32 return icon_;
29 } 33 }
30 virtual base::string16 GetMessageText() const OVERRIDE { 34 virtual base::string16 GetMessageText() const OVERRIDE {
31 return message_text_; 35 return message_text_;
32 } 36 }
33 virtual base::string16 GetMessageTextFragment() const OVERRIDE { 37 virtual base::string16 GetMessageTextFragment() const OVERRIDE {
34 return message_fragment_; 38 return message_fragment_;
35 } 39 }
36 virtual bool HasUserGesture() const OVERRIDE { 40 virtual bool HasUserGesture() const OVERRIDE {
(...skipping 227 matching lines...) Expand 10 before | Expand all | Expand 10 after
264 accept_states_[request_index] = new_value; 268 accept_states_[request_index] = new_value;
265 } 269 }
266 270
267 void PermissionBubbleManager::SetCustomizationMode() { 271 void PermissionBubbleManager::SetCustomizationMode() {
268 customization_mode_ = true; 272 customization_mode_ = true;
269 if (view_) 273 if (view_)
270 view_->Show(requests_, accept_states_, customization_mode_); 274 view_->Show(requests_, accept_states_, customization_mode_);
271 } 275 }
272 276
273 void PermissionBubbleManager::Accept() { 277 void PermissionBubbleManager::Accept() {
278 Accept(-1);
279 }
280
281 void PermissionBubbleManager::Accept(int choice) {
282 // Currently the only call to this is through Geolocation request.
274 std::vector<PermissionBubbleRequest*>::iterator requests_iter; 283 std::vector<PermissionBubbleRequest*>::iterator requests_iter;
275 std::vector<bool>::iterator accepts_iter = accept_states_.begin(); 284 std::vector<bool>::iterator accepts_iter = accept_states_.begin();
276 for (requests_iter = requests_.begin(), accepts_iter = accept_states_.begin(); 285 for (requests_iter = requests_.begin(), accepts_iter = accept_states_.begin();
277 requests_iter != requests_.end(); 286 requests_iter != requests_.end();
278 requests_iter++, accepts_iter++) { 287 requests_iter++, accepts_iter++) {
279 if (*accepts_iter) 288 if (*accepts_iter)
280 (*requests_iter)->PermissionGranted(); 289 (*requests_iter)->PermissionGranted(choice);
281 else 290 else
282 (*requests_iter)->PermissionDenied(); 291 (*requests_iter)->PermissionDenied();
283 } 292 }
284 FinalizeBubble(); 293 FinalizeBubble();
285 } 294 }
286 295
287 void PermissionBubbleManager::Deny() { 296 void PermissionBubbleManager::Deny() {
288 std::vector<PermissionBubbleRequest*>::iterator requests_iter; 297 std::vector<PermissionBubbleRequest*>::iterator requests_iter;
289 for (requests_iter = requests_.begin(); 298 for (requests_iter = requests_.begin();
290 requests_iter != requests_.end(); 299 requests_iter != requests_.end();
(...skipping 116 matching lines...) Expand 10 before | Expand all | Expand 10 after
407 bool PermissionBubbleManager::HasUserGestureRequest( 416 bool PermissionBubbleManager::HasUserGestureRequest(
408 const std::vector<PermissionBubbleRequest*>& queue) { 417 const std::vector<PermissionBubbleRequest*>& queue) {
409 std::vector<PermissionBubbleRequest*>::const_iterator iter; 418 std::vector<PermissionBubbleRequest*>::const_iterator iter;
410 for (iter = queue.begin(); iter != queue.end(); iter++) { 419 for (iter = queue.begin(); iter != queue.end(); iter++) {
411 if ((*iter)->HasUserGesture()) 420 if ((*iter)->HasUserGesture())
412 return true; 421 return true;
413 } 422 }
414 return false; 423 return false;
415 } 424 }
416 425
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698