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

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: 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;
38 virtual void PermissionGranted() OVERRIDE; 39 virtual void PermissionGranted() OVERRIDE;
39 virtual void PermissionDenied() OVERRIDE; 40 virtual void PermissionDenied() OVERRIDE;
40 virtual void Cancelled() OVERRIDE; 41 virtual void Cancelled() OVERRIDE;
41 virtual void RequestFinished() OVERRIDE; 42 virtual void RequestFinished() OVERRIDE;
42 43
43 private: 44 private:
44 ChromeMidiPermissionContext* context_; 45 ChromeMidiPermissionContext* context_;
45 const PermissionRequestID id_; 46 const PermissionRequestID id_;
46 GURL requesting_frame_; 47 GURL requesting_frame_;
47 std::string display_languages_; 48 std::string display_languages_;
48 const content::BrowserContext::MidiSysExPermissionCallback& callback_; 49 const content::BrowserContext::MidiSysExPermissionCallback& callback_;
49 50
50 DISALLOW_COPY_AND_ASSIGN(MidiPermissionRequest); 51 DISALLOW_COPY_AND_ASSIGN(MidiPermissionRequest);
51 }; 52 };
52 53
53 MidiPermissionRequest::MidiPermissionRequest( 54 MidiPermissionRequest::MidiPermissionRequest(
54 ChromeMidiPermissionContext* context, 55 ChromeMidiPermissionContext* context,
55 const PermissionRequestID& id, 56 const PermissionRequestID& id,
56 const GURL& requesting_frame, 57 const GURL& requesting_frame,
57 const std::string& display_languages, 58 const std::string& display_languages,
58 const content::BrowserContext::MidiSysExPermissionCallback& callback) 59 const content::BrowserContext::MidiSysExPermissionCallback& callback)
59 : context_(context), 60 : context_(context),
60 id_(id), 61 id_(id),
61 requesting_frame_(requesting_frame), 62 requesting_frame_(requesting_frame),
62 display_languages_(display_languages), 63 display_languages_(display_languages),
63 callback_(callback) {} 64 callback_(callback) {}
64 65
65 MidiPermissionRequest::~MidiPermissionRequest() {} 66 MidiPermissionRequest::~MidiPermissionRequest() {}
66 67
68 int MidiPermissionRequest::GetIconID() const {
69 return IDR_ALLOWED_MIDI_SYSEX;
70 }
71
67 base::string16 MidiPermissionRequest::GetMessageText() const { 72 base::string16 MidiPermissionRequest::GetMessageText() const {
68 return l10n_util::GetStringFUTF16( 73 return l10n_util::GetStringFUTF16(
69 IDS_MIDI_SYSEX_INFOBAR_QUESTION, 74 IDS_MIDI_SYSEX_INFOBAR_QUESTION,
70 net::FormatUrl(requesting_frame_.GetOrigin(), display_languages_)); 75 net::FormatUrl(requesting_frame_.GetOrigin(), display_languages_));
71 } 76 }
72 77
73 base::string16 MidiPermissionRequest::GetMessageTextFragment() const { 78 base::string16 MidiPermissionRequest::GetMessageTextFragment() const {
74 return l10n_util::GetStringUTF16(IDS_MIDI_SYSEX_PERMISSION_FRAGMENT); 79 return l10n_util::GetStringUTF16(IDS_MIDI_SYSEX_PERMISSION_FRAGMENT);
75 } 80 }
76 81
77 base::string16 MidiPermissionRequest::GetAlternateAcceptButtonText() const { 82 bool MidiPermissionRequest::HasUserGesture() const {
78 return l10n_util::GetStringUTF16(IDS_MIDI_SYSEX_ALLOW_BUTTON); 83 // TODO(gbillock): plumb through.
79 } 84 return false;
80
81 base::string16 MidiPermissionRequest::GetAlternateDenyButtonText() const {
82 return l10n_util::GetStringUTF16(IDS_MIDI_SYSEX_DENY_BUTTON);
83 } 85 }
84 86
85 void MidiPermissionRequest::PermissionGranted() { 87 void MidiPermissionRequest::PermissionGranted() {
86 context_->NotifyPermissionSet(id_, requesting_frame_, callback_, true); 88 context_->NotifyPermissionSet(id_, requesting_frame_, callback_, true);
87 } 89 }
88 90
89 void MidiPermissionRequest::PermissionDenied() { 91 void MidiPermissionRequest::PermissionDenied() {
90 context_->NotifyPermissionSet(id_, requesting_frame_, callback_, false); 92 context_->NotifyPermissionSet(id_, requesting_frame_, callback_, false);
91 } 93 }
92 94
(...skipping 149 matching lines...) Expand 10 before | Expand all | Expand 10 after
242 } 244 }
243 245
244 void ChromeMidiPermissionContext::CancelPendingInfobarRequest( 246 void ChromeMidiPermissionContext::CancelPendingInfobarRequest(
245 const PermissionRequestID& id) { 247 const PermissionRequestID& id) {
246 DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::UI)); 248 DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::UI));
247 if (shutting_down_) 249 if (shutting_down_)
248 return; 250 return;
249 // TODO(gbillock): Add support for cancellation to permission bubbles. 251 // TODO(gbillock): Add support for cancellation to permission bubbles.
250 GetQueueController()->CancelInfoBarRequest(id); 252 GetQueueController()->CancelInfoBarRequest(id);
251 } 253 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698