Index: content/renderer/media/midi_dispatcher.cc |
diff --git a/content/renderer/media/midi_dispatcher.cc b/content/renderer/media/midi_dispatcher.cc |
index 40fca8472bec453b3211554cd592d05736df47d9..5f07e991a4a01b8d64f3478092cc5257bd938d14 100644 |
--- a/content/renderer/media/midi_dispatcher.cc |
+++ b/content/renderer/media/midi_dispatcher.cc |
@@ -13,6 +13,7 @@ |
#include "third_party/WebKit/public/web/WebUserGestureIndicator.h" |
using blink::WebMIDIPermissionRequest; |
+using blink::WebMIDIOptions; |
using blink::WebSecurityOrigin; |
namespace content { |
@@ -23,8 +24,12 @@ MidiDispatcher::MidiDispatcher(RenderFrame* render_frame) |
MidiDispatcher::~MidiDispatcher() {} |
-void MidiDispatcher::requestSysexPermission( |
- const WebMIDIPermissionRequest& request) { |
+void MidiDispatcher::requestPermission(const WebMIDIPermissionRequest& request, |
+ const WebMIDIOptions& options) { |
+ // TODO(crbug.com/535181): Expose all requests to the content layer. |
+ if (!options.sysex) |
+ return WebMIDIPermissionRequest(request).setIsAllowed(true); |
mlamouri (slow - plz ping)
2016/01/21 11:50:57
What about doing:
PermissionName permission_name =
Takashi Toyoshima
2016/01/22 04:33:22
Thank you for jumping in! I thought I will need yo
Takashi Toyoshima
2016/01/22 07:30:01
Some additional notes for this:
- PERMISSION_NAME
|
+ |
if (!permission_service_.get()) { |
render_frame()->GetServiceRegistry()->ConnectToRemoteService( |
mojo::GetProxy(&permission_service_)); |
@@ -34,15 +39,13 @@ void MidiDispatcher::requestSysexPermission( |
requests_.Add(new WebMIDIPermissionRequest(request)); |
permission_service_->RequestPermission( |
- PERMISSION_NAME_MIDI_SYSEX, |
- request.securityOrigin().toString().utf8(), |
+ PERMISSION_NAME_MIDI_SYSEX, request.securityOrigin().toString().utf8(), |
blink::WebUserGestureIndicator::isProcessingUserGesture(), |
- base::Bind(&MidiDispatcher::OnSysExPermissionSet, |
- base::Unretained(this), |
+ base::Bind(&MidiDispatcher::OnPermissionSet, base::Unretained(this), |
permission_request_id)); |
} |
-void MidiDispatcher::cancelSysexPermissionRequest( |
+void MidiDispatcher::cancelPermissionRequest( |
const WebMIDIPermissionRequest& request) { |
for (Requests::iterator it(&requests_); !it.IsAtEnd(); it.Advance()) { |
WebMIDIPermissionRequest* value = it.GetCurrentValue(); |
@@ -53,8 +56,7 @@ void MidiDispatcher::cancelSysexPermissionRequest( |
} |
} |
-void MidiDispatcher::OnSysExPermissionSet(int request_id, |
- PermissionStatus status) { |
+void MidiDispatcher::OnPermissionSet(int request_id, PermissionStatus status) { |
// |request| can be NULL when the request is canceled. |
WebMIDIPermissionRequest* request = requests_.Lookup(request_id); |
if (!request) |