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

Unified Diff: third_party/WebKit/Source/modules/webmidi/MIDIAccessInitializer.cpp

Issue 2125893002: Implement AwPermissionManager::RequestPermissions (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@midi_mojo
Patch Set: done Created 4 years, 5 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
« no previous file with comments | « third_party/WebKit/Source/modules/webmidi/MIDIAccessInitializer.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: third_party/WebKit/Source/modules/webmidi/MIDIAccessInitializer.cpp
diff --git a/third_party/WebKit/Source/modules/webmidi/MIDIAccessInitializer.cpp b/third_party/WebKit/Source/modules/webmidi/MIDIAccessInitializer.cpp
index 056c57c1d3711be2b076991ebc8055ae2dbe1e54..e32aaea55a3dc61cac4c0005f3f91470e507c9c8 100644
--- a/third_party/WebKit/Source/modules/webmidi/MIDIAccessInitializer.cpp
+++ b/third_party/WebKit/Source/modules/webmidi/MIDIAccessInitializer.cpp
@@ -46,27 +46,16 @@ ScriptPromise MIDIAccessInitializer::start()
document->frame()->serviceRegistry()->connectToRemoteService(mojo::GetProxy(&m_permissionService));
bool requestSysEx = m_options.hasSysex() && m_options.sysex();
- if (requestSysEx) {
- Vector<mojom::blink::PermissionName> permissions;
- permissions.resize(2);
- permissions.append(mojom::blink::PermissionName::MIDI);
+ Vector<mojom::blink::PermissionName> permissions;
+ permissions.resize(requestSysEx ? 2 : 1);
+ permissions.append(mojom::blink::PermissionName::MIDI);
+ if (requestSysEx)
permissions.append(mojom::blink::PermissionName::MIDI_SYSEX);
- m_permissionService->RequestPermissions(
- mojo::WTFArray<mojom::blink::PermissionName>(std::move(permissions)),
- getExecutionContext()->getSecurityOrigin()->toString(),
- UserGestureIndicator::processingUserGesture(),
- createBaseCallback(WTF::bind(&MIDIAccessInitializer::onPermissionsUpdated, wrapPersistent(this))));
- } else {
- // TODO(toyoshim): Merge this MIDI only code path to the other one for
- // MIDI and MIDI_SYSEX. This is a workaround to pass
- // org.chromium.android_webview.test.AwPermissionManagerTest#testRequestMultiple
- // because of RequestPermissions not implemented in AndroidWebView.
- m_permissionService->RequestPermission(
- mojom::blink::PermissionName::MIDI,
- getExecutionContext()->getSecurityOrigin()->toString(),
- UserGestureIndicator::processingUserGesture(),
- createBaseCallback(WTF::bind(&MIDIAccessInitializer::onPermissionUpdated, wrapPersistent(this))));
- }
+ m_permissionService->RequestPermissions(
+ mojo::WTFArray<mojom::blink::PermissionName>(std::move(permissions)),
+ getExecutionContext()->getSecurityOrigin()->toString(),
+ UserGestureIndicator::processingUserGesture(),
+ createBaseCallback(WTF::bind(&MIDIAccessInitializer::onPermissionsUpdated, wrapPersistent(this))));
return promise;
}
@@ -146,13 +135,4 @@ void MIDIAccessInitializer::onPermissionsUpdated(mojo::WTFArray<mojom::blink::Pe
}
-void MIDIAccessInitializer::onPermissionUpdated(mojom::blink::PermissionStatus status)
-{
- m_permissionService.reset();
- if (status == mojom::blink::PermissionStatus::GRANTED)
- m_accessor->startSession();
- else
- reject(DOMException::create(SecurityError));
-}
-
} // namespace blink
« no previous file with comments | « third_party/WebKit/Source/modules/webmidi/MIDIAccessInitializer.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698