Title: [231649] trunk/Source/WebKit
- Revision
- 231649
- Author
- [email protected]
- Date
- 2018-05-10 11:36:57 -0700 (Thu, 10 May 2018)
Log Message
[MediaStream, iOS] Don't check authorizationStatusForMediaType when using mock capture devices
https://bugs.webkit.org/show_bug.cgi?id=185516
<rdar://problem/36328191>
Reviewed by Youenn Fablet.
* UIProcess/Cocoa/UIDelegate.mm:
(WebKit::UIDelegate::UIClient::decidePolicyForUserMediaPermissionRequest): Don't check
+[AVCaptureDevice authorizationStatusForMediaType:] when using mock capture devices.
Modified Paths
Diff
Modified: trunk/Source/WebKit/ChangeLog (231648 => 231649)
--- trunk/Source/WebKit/ChangeLog 2018-05-10 18:31:59 UTC (rev 231648)
+++ trunk/Source/WebKit/ChangeLog 2018-05-10 18:36:57 UTC (rev 231649)
@@ -1,3 +1,15 @@
+2018-05-10 Eric Carlson <[email protected]>
+
+ [MediaStream, iOS] Don't check authorizationStatusForMediaType when using mock capture devices
+ https://bugs.webkit.org/show_bug.cgi?id=185516
+ <rdar://problem/36328191>
+
+ Reviewed by Youenn Fablet.
+
+ * UIProcess/Cocoa/UIDelegate.mm:
+ (WebKit::UIDelegate::UIClient::decidePolicyForUserMediaPermissionRequest): Don't check
+ +[AVCaptureDevice authorizationStatusForMediaType:] when using mock capture devices.
+
2018-05-10 Brent Fulgham <[email protected]>
REGRESSION(r230323): UIProcess needs to notify WebContent process of Accessibility setting changes
Modified: trunk/Source/WebKit/UIProcess/Cocoa/UIDelegate.mm (231648 => 231649)
--- trunk/Source/WebKit/UIProcess/Cocoa/UIDelegate.mm 2018-05-10 18:31:59 UTC (rev 231648)
+++ trunk/Source/WebKit/UIProcess/Cocoa/UIDelegate.mm 2018-05-10 18:36:57 UTC (rev 231649)
@@ -886,13 +886,14 @@
}
#if PLATFORM(IOS)
- auto requestCameraAuthorization = BlockPtr<void()>::fromCallable([this, &frame, protectedRequest = makeRef(request), webView = RetainPtr<WKWebView>(m_uiDelegate.m_webView)]() {
+ bool usingMockCaptureDevices = page.preferences().mockCaptureDevicesEnabled();
+ auto requestCameraAuthorization = BlockPtr<void()>::fromCallable([this, &frame, protectedRequest = makeRef(request), webView = RetainPtr<WKWebView>(m_uiDelegate.m_webView), usingMockCaptureDevices]() {
if (!protectedRequest->requiresVideoCapture()) {
requestUserMediaAuthorizationForDevices(frame, protectedRequest, (id <WKUIDelegatePrivate>)m_uiDelegate.m_delegate.get(), *webView.get());
return;
}
- AVAuthorizationStatus cameraAuthorizationStatus = [getAVCaptureDeviceClass() authorizationStatusForMediaType:getAVMediaTypeVideo()];
+ AVAuthorizationStatus cameraAuthorizationStatus = usingMockCaptureDevices ? AVAuthorizationStatusAuthorized : [getAVCaptureDeviceClass() authorizationStatusForMediaType:getAVMediaTypeVideo()];
switch (cameraAuthorizationStatus) {
case AVAuthorizationStatusAuthorized:
requestUserMediaAuthorizationForDevices(frame, protectedRequest, (id <WKUIDelegatePrivate>)m_uiDelegate.m_delegate.get(), *webView.get());
@@ -916,7 +917,7 @@
});
if (requiresAudioCapture) {
- AVAuthorizationStatus microphoneAuthorizationStatus = [getAVCaptureDeviceClass() authorizationStatusForMediaType:getAVMediaTypeAudio()];
+ AVAuthorizationStatus microphoneAuthorizationStatus = usingMockCaptureDevices ? AVAuthorizationStatusAuthorized : [getAVCaptureDeviceClass() authorizationStatusForMediaType:getAVMediaTypeAudio()];
switch (microphoneAuthorizationStatus) {
case AVAuthorizationStatusAuthorized:
requestCameraAuthorization();
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes