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

Side by Side Diff: chrome/browser/media/chrome_midi_permission_context.cc

Issue 176053002: [WebsiteSettings] Change permission bubble API to adapt to new mocks. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Add multi-download bubble changes. Created 6 years, 10 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 | Annotate | Revision Log
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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/media/chrome_midi_permission_context.h" 5 #include "chrome/browser/media/chrome_midi_permission_context.h"
6 6
7 #include "base/prefs/pref_service.h" 7 #include "base/prefs/pref_service.h"
8 #include "chrome/browser/content_settings/host_content_settings_map.h" 8 #include "chrome/browser/content_settings/host_content_settings_map.h"
9 #include "chrome/browser/content_settings/permission_queue_controller.h" 9 #include "chrome/browser/content_settings/permission_queue_controller.h"
10 #include "chrome/browser/content_settings/permission_request_id.h" 10 #include "chrome/browser/content_settings/permission_request_id.h"
11 #include "chrome/browser/content_settings/tab_specific_content_settings.h" 11 #include "chrome/browser/content_settings/tab_specific_content_settings.h"
12 #include "chrome/browser/profiles/profile.h" 12 #include "chrome/browser/profiles/profile.h"
13 #include "chrome/browser/tab_contents/tab_util.h" 13 #include "chrome/browser/tab_contents/tab_util.h"
14 #include "chrome/browser/ui/website_settings/permission_bubble_manager.h" 14 #include "chrome/browser/ui/website_settings/permission_bubble_manager.h"
15 #include "chrome/browser/ui/website_settings/permission_bubble_request.h" 15 #include "chrome/browser/ui/website_settings/permission_bubble_request.h"
16 #include "chrome/common/pref_names.h" 16 #include "chrome/common/pref_names.h"
17 #include "content/public/browser/browser_thread.h" 17 #include "content/public/browser/browser_thread.h"
18 #include "content/public/browser/web_contents.h" 18 #include "content/public/browser/web_contents.h"
19 #include "grit/generated_resources.h" 19 #include "grit/generated_resources.h"
20 #include "grit/theme_resources.h"
20 #include "net/base/net_util.h" 21 #include "net/base/net_util.h"
21 #include "ui/base/l10n/l10n_util.h" 22 #include "ui/base/l10n/l10n_util.h"
22 23
23 class MidiPermissionRequest : public PermissionBubbleRequest { 24 class MidiPermissionRequest : public PermissionBubbleRequest {
24 public: 25 public:
25 MidiPermissionRequest( 26 MidiPermissionRequest(
26 ChromeMidiPermissionContext* context, 27 ChromeMidiPermissionContext* context,
27 const PermissionRequestID& id, 28 const PermissionRequestID& id,
28 const GURL& requesting_frame, 29 const GURL& requesting_frame,
29 const std::string& display_languages, 30 const std::string& display_languages,
30 const content::BrowserContext::MidiSysExPermissionCallback& callback); 31 const content::BrowserContext::MidiSysExPermissionCallback& callback);
31 virtual ~MidiPermissionRequest(); 32 virtual ~MidiPermissionRequest();
32 33
33 // PermissionBubbleDelegate: 34 // PermissionBubbleDelegate:
35 virtual int GetIconID() const OVERRIDE;
34 virtual base::string16 GetMessageText() const OVERRIDE; 36 virtual base::string16 GetMessageText() const OVERRIDE;
35 virtual base::string16 GetMessageTextFragment() const OVERRIDE; 37 virtual base::string16 GetMessageTextFragment() const OVERRIDE;
36 virtual base::string16 GetAlternateAcceptButtonText() const OVERRIDE; 38 virtual bool HasUserGesture() const OVERRIDE;
37 virtual base::string16 GetAlternateDenyButtonText() const OVERRIDE; 39 virtual GURL GetRequestingHostname() const OVERRIDE;
38 virtual void PermissionGranted() OVERRIDE; 40 virtual void PermissionGranted() OVERRIDE;
39 virtual void PermissionDenied() OVERRIDE; 41 virtual void PermissionDenied() OVERRIDE;
40 virtual void Cancelled() OVERRIDE; 42 virtual void Cancelled() OVERRIDE;
41 virtual void RequestFinished() OVERRIDE; 43 virtual void RequestFinished() OVERRIDE;
42 44
43 private: 45 private:
44 ChromeMidiPermissionContext* context_; 46 ChromeMidiPermissionContext* context_;
45 const PermissionRequestID id_; 47 const PermissionRequestID id_;
46 GURL requesting_frame_; 48 GURL requesting_frame_;
47 std::string display_languages_; 49 std::string display_languages_;
48 const content::BrowserContext::MidiSysExPermissionCallback& callback_; 50 const content::BrowserContext::MidiSysExPermissionCallback& callback_;
49 51
50 DISALLOW_COPY_AND_ASSIGN(MidiPermissionRequest); 52 DISALLOW_COPY_AND_ASSIGN(MidiPermissionRequest);
51 }; 53 };
52 54
53 MidiPermissionRequest::MidiPermissionRequest( 55 MidiPermissionRequest::MidiPermissionRequest(
54 ChromeMidiPermissionContext* context, 56 ChromeMidiPermissionContext* context,
55 const PermissionRequestID& id, 57 const PermissionRequestID& id,
56 const GURL& requesting_frame, 58 const GURL& requesting_frame,
57 const std::string& display_languages, 59 const std::string& display_languages,
58 const content::BrowserContext::MidiSysExPermissionCallback& callback) 60 const content::BrowserContext::MidiSysExPermissionCallback& callback)
59 : context_(context), 61 : context_(context),
60 id_(id), 62 id_(id),
61 requesting_frame_(requesting_frame), 63 requesting_frame_(requesting_frame),
62 display_languages_(display_languages), 64 display_languages_(display_languages),
63 callback_(callback) {} 65 callback_(callback) {}
64 66
65 MidiPermissionRequest::~MidiPermissionRequest() {} 67 MidiPermissionRequest::~MidiPermissionRequest() {}
66 68
69 int MidiPermissionRequest::GetIconID() const {
70 return IDR_ALLOWED_MIDI_SYSEX;
71 }
72
67 base::string16 MidiPermissionRequest::GetMessageText() const { 73 base::string16 MidiPermissionRequest::GetMessageText() const {
68 return l10n_util::GetStringFUTF16( 74 return l10n_util::GetStringFUTF16(
69 IDS_MIDI_SYSEX_INFOBAR_QUESTION, 75 IDS_MIDI_SYSEX_INFOBAR_QUESTION,
70 net::FormatUrl(requesting_frame_.GetOrigin(), display_languages_)); 76 net::FormatUrl(requesting_frame_.GetOrigin(), display_languages_));
71 } 77 }
72 78
73 base::string16 MidiPermissionRequest::GetMessageTextFragment() const { 79 base::string16 MidiPermissionRequest::GetMessageTextFragment() const {
74 return l10n_util::GetStringUTF16(IDS_MIDI_SYSEX_PERMISSION_FRAGMENT); 80 return l10n_util::GetStringUTF16(IDS_MIDI_SYSEX_PERMISSION_FRAGMENT);
75 } 81 }
76 82
77 base::string16 MidiPermissionRequest::GetAlternateAcceptButtonText() const { 83 bool MidiPermissionRequest::HasUserGesture() const {
78 return l10n_util::GetStringUTF16(IDS_MIDI_SYSEX_ALLOW_BUTTON); 84 // TODO(gbillock): plumb through.
85 return false;
79 } 86 }
80 87
81 base::string16 MidiPermissionRequest::GetAlternateDenyButtonText() const { 88 GURL MidiPermissionRequest::GetRequestingHostname() const {
82 return l10n_util::GetStringUTF16(IDS_MIDI_SYSEX_DENY_BUTTON); 89 return requesting_frame_;
83 } 90 }
84 91
85 void MidiPermissionRequest::PermissionGranted() { 92 void MidiPermissionRequest::PermissionGranted() {
86 context_->NotifyPermissionSet(id_, requesting_frame_, callback_, true); 93 context_->NotifyPermissionSet(id_, requesting_frame_, callback_, true);
87 } 94 }
88 95
89 void MidiPermissionRequest::PermissionDenied() { 96 void MidiPermissionRequest::PermissionDenied() {
90 context_->NotifyPermissionSet(id_, requesting_frame_, callback_, false); 97 context_->NotifyPermissionSet(id_, requesting_frame_, callback_, false);
91 } 98 }
92 99
(...skipping 149 matching lines...) Expand 10 before | Expand all | Expand 10 after
242 } 249 }
243 250
244 void ChromeMidiPermissionContext::CancelPendingInfobarRequest( 251 void ChromeMidiPermissionContext::CancelPendingInfobarRequest(
245 const PermissionRequestID& id) { 252 const PermissionRequestID& id) {
246 DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::UI)); 253 DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::UI));
247 if (shutting_down_) 254 if (shutting_down_)
248 return; 255 return;
249 // TODO(gbillock): Add support for cancellation to permission bubbles. 256 // TODO(gbillock): Add support for cancellation to permission bubbles.
250 GetQueueController()->CancelInfoBarRequest(id); 257 GetQueueController()->CancelInfoBarRequest(id);
251 } 258 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698