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

Unified Diff: content/renderer/media/midi_dispatcher.cc

Issue 1602703005: Web MIDI: Ask permissions of the content layer always (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: review #10 and #11, rebase PS will follow Created 4 years, 11 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 side-by-side diff with in-line comments
Download patch
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..9533798a79c3c90f2fb0557b92a32bef682987e8 100644
--- a/content/renderer/media/midi_dispatcher.cc
+++ b/content/renderer/media/midi_dispatcher.cc
@@ -8,11 +8,13 @@
#include "content/public/common/service_registry.h"
#include "content/public/renderer/render_frame.h"
#include "third_party/WebKit/public/platform/WebString.h"
+#include "third_party/WebKit/public/web/WebMIDIOptions.h"
#include "third_party/WebKit/public/web/WebMIDIPermissionRequest.h"
#include "third_party/WebKit/public/web/WebSecurityOrigin.h"
#include "third_party/WebKit/public/web/WebUserGestureIndicator.h"
using blink::WebMIDIPermissionRequest;
+using blink::WebMIDIOptions;
using blink::WebSecurityOrigin;
namespace content {
@@ -23,8 +25,8 @@ MidiDispatcher::MidiDispatcher(RenderFrame* render_frame)
MidiDispatcher::~MidiDispatcher() {}
-void MidiDispatcher::requestSysexPermission(
- const WebMIDIPermissionRequest& request) {
+void MidiDispatcher::requestPermission(const WebMIDIPermissionRequest& request,
+ const WebMIDIOptions& options) {
if (!permission_service_.get()) {
render_frame()->GetServiceRegistry()->ConnectToRemoteService(
mojo::GetProxy(&permission_service_));
@@ -33,16 +35,19 @@ void MidiDispatcher::requestSysexPermission(
int permission_request_id =
requests_.Add(new WebMIDIPermissionRequest(request));
+ PermissionName permission_name =
Takashi Toyoshima 2016/01/26 08:08:03 Oops, I mistakenly merge this change into this pat
+ (options.sysex == WebMIDIOptions::SysexPermission::WithSysex)
+ ? PERMISSION_NAME_MIDI_SYSEX
+ : PERMISSION_NAME_MIDI;
+
permission_service_->RequestPermission(
- PERMISSION_NAME_MIDI_SYSEX,
- request.securityOrigin().toString().utf8(),
+ permission_name, 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 +58,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)
« no previous file with comments | « content/renderer/media/midi_dispatcher.h ('k') | content/shell/browser/layout_test/layout_test_message_filter.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698