Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: db03fd0f9e82fec0a5a6cfbc754c78e7e1e11a94
https://github.com/WebKit/WebKit/commit/db03fd0f9e82fec0a5a6cfbc754c78e7e1e11a94
Author: Sihui Liu <[email protected]>
Date: 2025-03-12 (Wed, 12 Mar 2025)
Changed paths:
M Source/WebCore/dom/DeviceMotionController.cpp
M Source/WebCore/dom/DeviceMotionController.h
M Source/WebCore/dom/DeviceOrientationController.cpp
M Source/WebCore/dom/DeviceOrientationController.h
M Source/WebCore/dom/Document.cpp
M Source/WebCore/page/DeviceClient.h
M Source/WebCore/page/DeviceController.cpp
M Source/WebCore/page/SecurityOriginData.h
M Source/WebCore/platform/ios/DeviceMotionClientIOS.h
M Source/WebCore/platform/ios/DeviceMotionClientIOS.mm
M Source/WebCore/platform/ios/DeviceOrientationClientIOS.h
M Source/WebCore/platform/ios/DeviceOrientationClientIOS.mm
M Source/WebCore/platform/ios/DeviceOrientationUpdateProvider.h
M Source/WebCore/platform/mock/DeviceOrientationClientMock.cpp
M Source/WebCore/platform/mock/DeviceOrientationClientMock.h
M Source/WebKit/UIProcess/WebPageProxy.cpp
M Source/WebKit/UIProcess/WebPageProxy.h
M Source/WebKit/UIProcess/ios/WebDeviceOrientationUpdateProviderProxy.h
M
Source/WebKit/UIProcess/ios/WebDeviceOrientationUpdateProviderProxy.messages.in
M Source/WebKit/UIProcess/ios/WebDeviceOrientationUpdateProviderProxy.mm
M
Source/WebKit/WebProcess/WebCoreSupport/WebDeviceOrientationUpdateProvider.cpp
M
Source/WebKit/WebProcess/WebCoreSupport/WebDeviceOrientationUpdateProvider.h
M Source/WebKitLegacy/mac/WebView/WebDeviceOrientationProviderMock.mm
Log Message:
-----------
Make WebDeviceOrientationUpdateProviderProxy validate origin access before
registering for change
https://bugs.webkit.org/show_bug.cgi?id=289512
Reviewed by Per Arne Vollan.
When deviceOrientationPermissionAPIEnabled is true, WebPageProxy would keep
track of origins that have access to device
orientation and motion data. WebDeviceOrientationUpdateProviderProxy, as the
actual observer of these updates, should
validate requesting origin has access before registering itself to
WebCoreMotionManager.
WebPageProxy::originHasDeviceOrientationAndMotionAccess is not implemented yet
in this patch, as there is a bug that
WebDeviceOrientationAndMotionAccessController in UI process and
DeviceOrientationAndMotionAccessController in web
process have different views of which origin has access.
* Source/WebCore/dom/DeviceMotionController.cpp:
(WebCore::DeviceMotionController::resumeUpdates):
* Source/WebCore/dom/DeviceMotionController.h:
* Source/WebCore/dom/DeviceOrientationController.cpp:
(WebCore::DeviceOrientationController::resumeUpdates):
* Source/WebCore/dom/DeviceOrientationController.h:
* Source/WebCore/dom/Document.cpp:
(WebCore::Document::resumeDeviceMotionAndOrientationUpdates):
* Source/WebCore/page/DeviceClient.h:
* Source/WebCore/page/DeviceController.cpp:
(WebCore::DeviceController::addDeviceEventListener):
* Source/WebCore/page/SecurityOriginData.h:
* Source/WebCore/platform/ios/DeviceMotionClientIOS.h:
* Source/WebCore/platform/ios/DeviceMotionClientIOS.mm:
(WebCore::DeviceMotionClientIOS::startUpdating):
* Source/WebCore/platform/ios/DeviceOrientationClientIOS.h:
* Source/WebCore/platform/ios/DeviceOrientationClientIOS.mm:
(WebCore::DeviceOrientationClientIOS::startUpdating):
* Source/WebCore/platform/ios/DeviceOrientationUpdateProvider.h:
* Source/WebCore/platform/mock/DeviceOrientationClientMock.cpp:
(WebCore::DeviceOrientationClientMock::startUpdating):
* Source/WebCore/platform/mock/DeviceOrientationClientMock.h:
* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::originHasDeviceOrientationAndMotionAccess):
* Source/WebKit/UIProcess/WebPageProxy.h:
* Source/WebKit/UIProcess/ios/WebDeviceOrientationUpdateProviderProxy.h:
*
Source/WebKit/UIProcess/ios/WebDeviceOrientationUpdateProviderProxy.messages.in:
* Source/WebKit/UIProcess/ios/WebDeviceOrientationUpdateProviderProxy.mm:
(WebKit::WebDeviceOrientationUpdateProviderProxy::startUpdatingDeviceOrientation):
(WebKit::WebDeviceOrientationUpdateProviderProxy::startUpdatingDeviceMotion):
*
Source/WebKit/WebProcess/WebCoreSupport/WebDeviceOrientationUpdateProvider.cpp:
(WebKit::WebDeviceOrientationUpdateProvider::startUpdatingDeviceOrientation):
(WebKit::WebDeviceOrientationUpdateProvider::startUpdatingDeviceMotion):
(WebKit::WebDeviceOrientationUpdateProvider::stopUpdatingDeviceMotion):
* Source/WebKit/WebProcess/WebCoreSupport/WebDeviceOrientationUpdateProvider.h:
* Source/WebKitLegacy/mac/WebView/WebDeviceOrientationProviderMock.mm:
(-[WebDeviceOrientationProviderMockInternal startUpdating]):
Canonical link: https://commits.webkit.org/292054@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes