Changeset 281376 in webkit
- Timestamp:
- Aug 21, 2021, 11:15:15 AM (4 years ago)
- Location:
- trunk/Source
- Files:
-
- 1 added
- 17 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/Headers.cmake
r281360 r281376 28 28 Modules/encryptedmedia/MediaKeySystemController.h 29 29 Modules/encryptedmedia/MediaKeySystemRequest.h 30 Modules/encryptedmedia/MediaKeySystemRequestIdentifier.h 30 31 31 32 Modules/fetch/FetchBodyConsumer.h -
trunk/Source/WebCore/Modules/encryptedmedia/MediaKeySystemRequest.h
r272573 r281376 30 30 #include "IDLTypes.h" 31 31 #include "JSDOMPromiseDeferred.h" 32 #include "MediaKeySystemRequestIdentifier.h" 32 33 #include <wtf/CompletionHandler.h> 33 34 #include <wtf/Forward.h> … … 41 42 42 43 template <typename IDLType> class DOMPromiseDeferred; 43 44 enum MediaKeySystemRequestIdentifierType { };45 using MediaKeySystemRequestIdentifier = ObjectIdentifier<MediaKeySystemRequestIdentifierType>;46 44 47 45 class MediaKeySystemRequest : public RefCounted<MediaKeySystemRequest>, public ActiveDOMObject { -
trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj
r281360 r281376 340 340 0F73B769222B3A0C00805316 /* ScrollingTreeOverflowScrollingNodeMac.h in Headers */ = {isa = PBXBuildFile; fileRef = 0FC0516A219B5EBE0031C39E /* ScrollingTreeOverflowScrollingNodeMac.h */; settings = {ATTRIBUTES = (Private, ); }; }; 341 341 0F768C2D26D03841008DBE0B /* UserMediaRequestIdentifier.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F768C2B26D03841008DBE0B /* UserMediaRequestIdentifier.h */; settings = {ATTRIBUTES = (Private, ); }; }; 342 0F768C3526D0AB39008DBE0B /* MediaKeySystemRequestIdentifier.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F768C3326D0AB39008DBE0B /* MediaKeySystemRequestIdentifier.h */; settings = {ATTRIBUTES = (Private, ); }; }; 342 343 0F790F432517CE6E009BA034 /* DisplayView.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F790F3F2517CE6D009BA034 /* DisplayView.h */; }; 343 344 0F7D07331884C56C00B4AF86 /* PlatformTextTrack.h in Headers */ = {isa = PBXBuildFile; fileRef = 072847E216EBC5B00043CFA4 /* PlatformTextTrack.h */; settings = {ATTRIBUTES = (Private, ); }; }; … … 6233 6234 0F73B765222B327F00805316 /* ScrollingStateScrollingNodeMac.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = ScrollingStateScrollingNodeMac.mm; sourceTree = "<group>"; }; 6234 6235 0F768C2B26D03841008DBE0B /* UserMediaRequestIdentifier.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UserMediaRequestIdentifier.h; sourceTree = "<group>"; }; 6236 0F768C3326D0AB39008DBE0B /* MediaKeySystemRequestIdentifier.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MediaKeySystemRequestIdentifier.h; sourceTree = "<group>"; }; 6235 6237 0F790F3D2517CE6D009BA034 /* DisplayView.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DisplayView.cpp; sourceTree = "<group>"; }; 6236 6238 0F790F3F2517CE6D009BA034 /* DisplayView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DisplayView.h; sourceTree = "<group>"; }; … … 28023 28025 9ACC079425C725ED00DC6386 /* MediaKeySystemRequest.cpp */, 28024 28026 9ACC07A525C810DF00DC6386 /* MediaKeySystemRequest.h */, 28027 0F768C3326D0AB39008DBE0B /* MediaKeySystemRequestIdentifier.h */, 28025 28028 2D9BF6FC1DBFB71F007A7D99 /* Navigator+EME.idl */, 28026 28029 2D9BF7401DBFDC0F007A7D99 /* NavigatorEME.cpp */, … … 33586 33589 9ACC07AF25C8141D00DC6386 /* MediaKeySystemController.h in Headers */, 33587 33590 9ACC07A625C810DF00DC6386 /* MediaKeySystemRequest.h in Headers */, 33591 0F768C3526D0AB39008DBE0B /* MediaKeySystemRequestIdentifier.h in Headers */, 33588 33592 A8EA800E0A19516E00A8EF5F /* MediaList.h in Headers */, 33589 33593 0782894825C23FE500A7BA03 /* MediaMetadata.h in Headers */, -
trunk/Source/WebKit/ChangeLog
r281365 r281376 1 2021-08-21 Simon Fraser <simon.fraser@apple.com> 2 3 Use MediaKeySystemRequestIdentifier, rather than mysterious uint64_t values, in WebKit 4 https://bugs.webkit.org/show_bug.cgi?id=229310 5 6 Reviewed by Youenn Fablet. 7 8 WebCore already had an ObjectIdentifer<> type for media system key requests, MediaKeySystemRequestIdentifier. 9 Use it in the WebKit layer. 10 11 * Scripts/webkit/messages.py: 12 (types_that_cannot_be_forward_declared): 13 (headers_for_type): 14 * UIProcess/MediaKeySystemPermissionRequestManagerProxy.cpp: 15 (WebKit::MediaKeySystemPermissionRequestManagerProxy::denyRequest): 16 (WebKit::MediaKeySystemPermissionRequestManagerProxy::grantRequest): 17 (WebKit::MediaKeySystemPermissionRequestManagerProxy::createRequestForFrame): 18 * UIProcess/MediaKeySystemPermissionRequestManagerProxy.h: 19 * UIProcess/MediaKeySystemPermissionRequestProxy.cpp: 20 (WebKit::MediaKeySystemPermissionRequestProxy::MediaKeySystemPermissionRequestProxy): 21 * UIProcess/MediaKeySystemPermissionRequestProxy.h: 22 (WebKit::MediaKeySystemPermissionRequestProxy::create): 23 (WebKit::MediaKeySystemPermissionRequestProxy::mediaKeySystemID const): 24 * UIProcess/WebPageProxy.cpp: 25 (WebKit::WebPageProxy::requestMediaKeySystemPermissionForFrame): 26 * UIProcess/WebPageProxy.h: 27 * UIProcess/WebPageProxy.messages.in: 28 * WebProcess/EncryptedMedia/MediaKeySystemPermissionRequestManager.cpp: 29 (WebKit::MediaKeySystemPermissionRequestManager::sendMediaKeySystemRequest): 30 (WebKit::MediaKeySystemPermissionRequestManager::mediaKeySystemWasGranted): 31 (WebKit::MediaKeySystemPermissionRequestManager::mediaKeySystemWasDenied): 32 * WebProcess/EncryptedMedia/MediaKeySystemPermissionRequestManager.h: 33 * WebProcess/WebPage/WebPage.cpp: 34 (WebKit::WebPage::mediaKeySystemWasGranted): 35 (WebKit::WebPage::mediaKeySystemWasDenied): 36 * WebProcess/WebPage/WebPage.h: 37 * WebProcess/WebPage/WebPage.messages.in: 38 1 39 2021-08-20 Simon Fraser <simon.fraser@apple.com> 2 40 -
trunk/Source/WebKit/Scripts/webkit/messages.py
r281360 r281376 286 286 'WebCore::ImageDecoderIdentifier', 287 287 'WebCore::LibWebRTCSocketIdentifier', 288 'WebCore::MediaKeySystemRequestIdentifier', 288 289 'WebCore::MediaPlayerIdentifier', 289 290 'WebCore::MediaSessionIdentifier', -
trunk/Source/WebKit/UIProcess/MediaKeySystemPermissionRequestManagerProxy.cpp
r272573 r281376 87 87 return; 88 88 89 ALWAYS_LOG(LOGIDENTIFIER, request.mediaKeySystemID() , ", reason: ", message);89 ALWAYS_LOG(LOGIDENTIFIER, request.mediaKeySystemID().toUInt64(), ", reason: ", message); 90 90 91 91 #if ENABLE(ENCRYPTED_MEDIA) … … 102 102 103 103 #if ENABLE(ENCRYPTED_MEDIA) 104 ALWAYS_LOG(LOGIDENTIFIER, request.mediaKeySystemID() , ", keySystem: ", request.keySystem());104 ALWAYS_LOG(LOGIDENTIFIER, request.mediaKeySystemID().toUInt64(), ", keySystem: ", request.keySystem()); 105 105 106 106 m_page.sendWithAsyncReply(Messages::WebPage::MediaKeySystemWasGranted { request.mediaKeySystemID() }, [] { }); … … 110 110 } 111 111 112 Ref<MediaKeySystemPermissionRequestProxy> MediaKeySystemPermissionRequestManagerProxy::createRequestForFrame( uint64_tmediaKeySystemID, FrameIdentifier frameID, Ref<SecurityOrigin>&& topLevelDocumentOrigin, const String& keySystem)112 Ref<MediaKeySystemPermissionRequestProxy> MediaKeySystemPermissionRequestManagerProxy::createRequestForFrame(MediaKeySystemRequestIdentifier mediaKeySystemID, FrameIdentifier frameID, Ref<SecurityOrigin>&& topLevelDocumentOrigin, const String& keySystem) 113 113 { 114 ALWAYS_LOG(LOGIDENTIFIER, mediaKeySystemID );114 ALWAYS_LOG(LOGIDENTIFIER, mediaKeySystemID.toUInt64()); 115 115 116 116 auto request = MediaKeySystemPermissionRequestProxy::create(*this, mediaKeySystemID, m_page.mainFrame()->frameID(), frameID, WTFMove(topLevelDocumentOrigin), keySystem); -
trunk/Source/WebKit/UIProcess/MediaKeySystemPermissionRequestManagerProxy.h
r281360 r281376 52 52 void invalidatePendingRequests(); 53 53 54 Ref<MediaKeySystemPermissionRequestProxy> createRequestForFrame( uint64_t mediaKeySystemID, WebCore::FrameIdentifier, Ref<WebCore::SecurityOrigin>&& topLevelDocumentOrigin, const String& keySystem);54 Ref<MediaKeySystemPermissionRequestProxy> createRequestForFrame(WebCore::MediaKeySystemRequestIdentifier, WebCore::FrameIdentifier, Ref<WebCore::SecurityOrigin>&& topLevelDocumentOrigin, const String& keySystem); 55 55 56 56 void grantRequest(MediaKeySystemPermissionRequestProxy&); … … 65 65 WebPageProxy& m_page; 66 66 67 HashMap< uint64_t, RefPtr<MediaKeySystemPermissionRequestProxy>> m_pendingRequests;67 HashMap<WebCore::MediaKeySystemRequestIdentifier, RefPtr<MediaKeySystemPermissionRequestProxy>> m_pendingRequests; 68 68 HashSet<String> m_validAuthorizationTokens; 69 69 -
trunk/Source/WebKit/UIProcess/MediaKeySystemPermissionRequestProxy.cpp
r272573 r281376 35 35 using namespace WebCore; 36 36 37 MediaKeySystemPermissionRequestProxy::MediaKeySystemPermissionRequestProxy(MediaKeySystemPermissionRequestManagerProxy& manager, uint64_tmediaKeySystemID, FrameIdentifier mainFrameID, FrameIdentifier frameID, Ref<WebCore::SecurityOrigin>&& topLevelDocumentOrigin, const String& keySystem)37 MediaKeySystemPermissionRequestProxy::MediaKeySystemPermissionRequestProxy(MediaKeySystemPermissionRequestManagerProxy& manager, MediaKeySystemRequestIdentifier mediaKeySystemID, FrameIdentifier mainFrameID, FrameIdentifier frameID, Ref<WebCore::SecurityOrigin>&& topLevelDocumentOrigin, const String& keySystem) 38 38 : m_manager(makeWeakPtr(manager)) 39 39 , m_mediaKeySystemID(mediaKeySystemID) -
trunk/Source/WebKit/UIProcess/MediaKeySystemPermissionRequestProxy.h
r272573 r281376 28 28 #include "APIObject.h" 29 29 #include <WebCore/FrameIdentifier.h> 30 #include <WebCore/MediaKeySystemRequest.h> 31 #include <WebCore/MediaKeySystemRequestIdentifier.h> 30 32 #include <wtf/Vector.h> 31 33 #include <wtf/WeakPtr.h> … … 42 44 class MediaKeySystemPermissionRequestProxy : public RefCounted<MediaKeySystemPermissionRequestProxy> { 43 45 public: 44 static Ref<MediaKeySystemPermissionRequestProxy> create(MediaKeySystemPermissionRequestManagerProxy& manager, uint64_tmediaKeySystemID, WebCore::FrameIdentifier mainFrameID, WebCore::FrameIdentifier frameID, Ref<WebCore::SecurityOrigin>&& topLevelDocumentOrigin, const String& keySystem)46 static Ref<MediaKeySystemPermissionRequestProxy> create(MediaKeySystemPermissionRequestManagerProxy& manager, WebCore::MediaKeySystemRequestIdentifier mediaKeySystemID, WebCore::FrameIdentifier mainFrameID, WebCore::FrameIdentifier frameID, Ref<WebCore::SecurityOrigin>&& topLevelDocumentOrigin, const String& keySystem) 45 47 { 46 48 return adoptRef(*new MediaKeySystemPermissionRequestProxy(manager, mediaKeySystemID, mainFrameID, frameID, WTFMove(topLevelDocumentOrigin), keySystem)); … … 52 54 void invalidate(); 53 55 54 uint64_tmediaKeySystemID() const { return m_mediaKeySystemID; }56 WebCore::MediaKeySystemRequestIdentifier mediaKeySystemID() const { return m_mediaKeySystemID; } 55 57 WebCore::FrameIdentifier mainFrameID() const { return m_mainFrameID; } 56 58 WebCore::FrameIdentifier frameID() const { return m_frameID; } … … 64 66 65 67 private: 66 MediaKeySystemPermissionRequestProxy(MediaKeySystemPermissionRequestManagerProxy&, uint64_t mediaKeySystemID, WebCore::FrameIdentifier mainFrameID, WebCore::FrameIdentifier, Ref<WebCore::SecurityOrigin>&& topLevelDocumentOrigin, const String& keySystem);68 MediaKeySystemPermissionRequestProxy(MediaKeySystemPermissionRequestManagerProxy&, WebCore::MediaKeySystemRequestIdentifier, WebCore::FrameIdentifier mainFrameID, WebCore::FrameIdentifier, Ref<WebCore::SecurityOrigin>&& topLevelDocumentOrigin, const String& keySystem); 67 69 68 70 WeakPtr<MediaKeySystemPermissionRequestManagerProxy> m_manager; 69 uint64_tm_mediaKeySystemID;71 WebCore::MediaKeySystemRequestIdentifier m_mediaKeySystemID; 70 72 WebCore::FrameIdentifier m_mainFrameID; 71 73 WebCore::FrameIdentifier m_frameID; -
trunk/Source/WebKit/UIProcess/WebPageProxy.cpp
r281360 r281376 8560 8560 } 8561 8561 8562 void WebPageProxy::requestMediaKeySystemPermissionForFrame( uint64_tmediaKeySystemID, FrameIdentifier frameID, const WebCore::SecurityOriginData& topLevelDocumentOriginData, const String& keySystem)8562 void WebPageProxy::requestMediaKeySystemPermissionForFrame(MediaKeySystemRequestIdentifier mediaKeySystemID, FrameIdentifier frameID, const WebCore::SecurityOriginData& topLevelDocumentOriginData, const String& keySystem) 8563 8563 { 8564 8564 #if ENABLE(ENCRYPTED_MEDIA) -
trunk/Source/WebKit/UIProcess/WebPageProxy.h
r281360 r281376 2133 2133 MediaKeySystemPermissionRequestManagerProxy& mediaKeySystemPermissionRequestManager(); 2134 2134 #endif 2135 void requestMediaKeySystemPermissionForFrame( uint64_t mediaKeySystemID, WebCore::FrameIdentifier, const WebCore::SecurityOriginData& topLevelDocumentOriginIdentifier, const String&);2135 void requestMediaKeySystemPermissionForFrame(WebCore::MediaKeySystemRequestIdentifier, WebCore::FrameIdentifier, const WebCore::SecurityOriginData& topLevelDocumentOriginIdentifier, const String&); 2136 2136 2137 2137 void runModal(); -
trunk/Source/WebKit/UIProcess/WebPageProxy.messages.in
r281360 r281376 276 276 277 277 #if ENABLE(ENCRYPTED_MEDIA) 278 RequestMediaKeySystemPermissionForFrame( uint64_tmediaKeySystemID, WebCore::FrameIdentifier frameID, struct WebCore::SecurityOriginData topLevelDocumentOriginIdentifier, String keySystem)278 RequestMediaKeySystemPermissionForFrame(WebCore::MediaKeySystemRequestIdentifier mediaKeySystemID, WebCore::FrameIdentifier frameID, struct WebCore::SecurityOriginData topLevelDocumentOriginIdentifier, String keySystem) 279 279 #endif 280 280 -
trunk/Source/WebKit/WebProcess/EncryptedMedia/MediaKeySystemPermissionRequestManager.cpp
r275883 r281376 83 83 84 84 auto* topLevelDocumentOrigin = userRequest.topLevelDocumentOrigin(); 85 m_page.send(Messages::WebPageProxy::RequestMediaKeySystemPermissionForFrame(userRequest.identifier() .toUInt64(), webFrame->frameID(), topLevelDocumentOrigin->data(), userRequest.keySystem()));85 m_page.send(Messages::WebPageProxy::RequestMediaKeySystemPermissionForFrame(userRequest.identifier(), webFrame->frameID(), topLevelDocumentOrigin->data(), userRequest.keySystem())); 86 86 } 87 87 … … 120 120 } 121 121 122 void MediaKeySystemPermissionRequestManager::mediaKeySystemWasGranted( uint64_trequestID, CompletionHandler<void()>&& completionHandler)122 void MediaKeySystemPermissionRequestManager::mediaKeySystemWasGranted(MediaKeySystemRequestIdentifier requestID, CompletionHandler<void()>&& completionHandler) 123 123 { 124 auto request = m_ongoingMediaKeySystemRequests.take( makeObjectIdentifier<MediaKeySystemRequestIdentifierType>(requestID));124 auto request = m_ongoingMediaKeySystemRequests.take(requestID); 125 125 if (!request) { 126 126 completionHandler(); … … 131 131 } 132 132 133 void MediaKeySystemPermissionRequestManager::mediaKeySystemWasDenied( uint64_trequestID, String&& message)133 void MediaKeySystemPermissionRequestManager::mediaKeySystemWasDenied(MediaKeySystemRequestIdentifier requestID, String&& message) 134 134 { 135 auto request = m_ongoingMediaKeySystemRequests.take( makeObjectIdentifier<MediaKeySystemRequestIdentifierType>(requestID));135 auto request = m_ongoingMediaKeySystemRequests.take(requestID); 136 136 if (!request) 137 137 return; -
trunk/Source/WebKit/WebProcess/EncryptedMedia/MediaKeySystemPermissionRequestManager.h
r275883 r281376 48 48 void startMediaKeySystemRequest(WebCore::MediaKeySystemRequest&); 49 49 void cancelMediaKeySystemRequest(WebCore::MediaKeySystemRequest&); 50 void mediaKeySystemWasGranted( uint64_t, CompletionHandler<void()>&&);51 void mediaKeySystemWasDenied( uint64_t, String&&);50 void mediaKeySystemWasGranted(WebCore::MediaKeySystemRequestIdentifier, CompletionHandler<void()>&&); 51 void mediaKeySystemWasDenied(WebCore::MediaKeySystemRequestIdentifier, String&&); 52 52 53 53 private: -
trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp
r281360 r281376 4735 4735 4736 4736 #if ENABLE(ENCRYPTED_MEDIA) 4737 void WebPage::mediaKeySystemWasGranted( uint64_tmediaKeySystemID, CompletionHandler<void()>&& completionHandler)4737 void WebPage::mediaKeySystemWasGranted(MediaKeySystemRequestIdentifier mediaKeySystemID, CompletionHandler<void()>&& completionHandler) 4738 4738 { 4739 4739 m_mediaKeySystemPermissionRequestManager->mediaKeySystemWasGranted(mediaKeySystemID, WTFMove(completionHandler)); 4740 4740 } 4741 4741 4742 void WebPage::mediaKeySystemWasDenied( uint64_tmediaKeySystemID, String&& message)4742 void WebPage::mediaKeySystemWasDenied(MediaKeySystemRequestIdentifier mediaKeySystemID, String&& message) 4743 4743 { 4744 4744 m_mediaKeySystemPermissionRequestManager->mediaKeySystemWasDenied(mediaKeySystemID, WTFMove(message)); -
trunk/Source/WebKit/WebProcess/WebPage/WebPage.h
r281360 r281376 77 77 #include <WebCore/IntSizeHash.h> 78 78 #include <WebCore/MediaControlsContextMenuItem.h> 79 #include <WebCore/MediaKeySystemRequest.h> 79 80 #include <WebCore/Page.h> 80 81 #include <WebCore/PageIdentifier.h> … … 1771 1772 1772 1773 #if ENABLE(ENCRYPTED_MEDIA) 1773 void mediaKeySystemWasGranted( uint64_t mediaKeySystemID, CompletionHandler<void()>&&);1774 void mediaKeySystemWasDenied( uint64_t mediaKeySystemID, String&& message);1774 void mediaKeySystemWasGranted(WebCore::MediaKeySystemRequestIdentifier, CompletionHandler<void()>&&); 1775 void mediaKeySystemWasDenied(WebCore::MediaKeySystemRequestIdentifier, String&& message); 1775 1776 #endif 1776 1777 -
trunk/Source/WebKit/WebProcess/WebPage/WebPage.messages.in
r281360 r281376 384 384 385 385 #if ENABLE(ENCRYPTED_MEDIA) 386 MediaKeySystemWasGranted( uint64_tmediaKeySystemID) -> () Async387 MediaKeySystemWasDenied( uint64_tmediaKeySystemID, String message)386 MediaKeySystemWasGranted(WebCore::MediaKeySystemRequestIdentifier mediaKeySystemID) -> () Async 387 MediaKeySystemWasDenied(WebCore::MediaKeySystemRequestIdentifier mediaKeySystemID, String message) 388 388 #endif 389 389
Note:
See TracChangeset
for help on using the changeset viewer.