Changeset 237483 in webkit
- Timestamp:
- Oct 26, 2018, 2:33:21 PM (8 years ago)
- Location:
- trunk/Source
- Files:
-
- 16 edited
-
WebCore/ChangeLog (modified) (1 diff)
-
WebCore/PAL/ChangeLog (modified) (1 diff)
-
WebCore/PAL/pal/spi/cocoa/AVKitSPI.h (modified) (2 diffs)
-
WebCore/platform/cocoa/VideoFullscreenModel.h (modified) (2 diffs)
-
WebCore/platform/cocoa/VideoFullscreenModelVideoElement.h (modified) (1 diff)
-
WebCore/platform/cocoa/VideoFullscreenModelVideoElement.mm (modified) (1 diff)
-
WebCore/platform/ios/VideoFullscreenInterfaceAVKit.h (modified) (2 diffs)
-
WebCore/platform/ios/VideoFullscreenInterfaceAVKit.mm (modified) (4 diffs)
-
WebKit/ChangeLog (modified) (1 diff)
-
WebKit/Platform/IPC/MessageSender.h (modified) (1 diff)
-
WebKit/Scripts/webkit/messages.py (modified) (2 diffs)
-
WebKit/UIProcess/Cocoa/VideoFullscreenManagerProxy.h (modified) (4 diffs)
-
WebKit/UIProcess/Cocoa/VideoFullscreenManagerProxy.mm (modified) (2 diffs)
-
WebKit/WebProcess/cocoa/VideoFullscreenManager.h (modified) (2 diffs)
-
WebKit/WebProcess/cocoa/VideoFullscreenManager.messages.in (modified) (1 diff)
-
WebKit/WebProcess/cocoa/VideoFullscreenManager.mm (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r237474 r237483 1 2018-10-26 Commit Queue <commit-queue@webkit.org> 2 3 Unreviewed, rolling out r237458. 4 https://bugs.webkit.org/show_bug.cgi?id=190973 5 6 broke internal iOS builds (Requested by zalan on #webkit). 7 8 Reverted changeset: 9 10 "Adopt -setOverrideRouteSharingPolicy:routingContextUID: SPI" 11 https://bugs.webkit.org/show_bug.cgi?id=190951 12 https://trac.webkit.org/changeset/237458 13 1 14 2018-10-26 Antoine Quint <graouts@apple.com> 2 15 -
trunk/Source/WebCore/PAL/ChangeLog
r237466 r237483 1 2018-10-26 Commit Queue <commit-queue@webkit.org> 2 3 Unreviewed, rolling out r237458. 4 https://bugs.webkit.org/show_bug.cgi?id=190973 5 6 broke internal iOS builds (Requested by zalan on #webkit). 7 8 Reverted changeset: 9 10 "Adopt -setOverrideRouteSharingPolicy:routingContextUID: SPI" 11 https://bugs.webkit.org/show_bug.cgi?id=190951 12 https://trac.webkit.org/changeset/237458 13 1 14 2018-10-26 Timothy Hatcher <timothy@apple.com> 2 15 -
trunk/Source/WebCore/PAL/pal/spi/cocoa/AVKitSPI.h
r237458 r237483 74 74 @property (nonatomic, readonly, getter=isPictureInPictureSuspended) BOOL pictureInPictureSuspended; 75 75 @property (nonatomic, readonly) BOOL pictureInPictureWasStartedWhenEnteringBackground; 76 - (void)setWebKitOverrideRouteSharingPolicy:(NSUInteger)routeSharingPolicy routingContextUID:(NSString *)routingContextUID;77 76 @end 78 77 … … 165 164 @property (nonatomic, readonly, getter=isPictureInPictureActive) BOOL pictureInPictureActive; 166 165 @property (nonatomic, readonly) BOOL pictureInPictureWasStartedWhenEnteringBackground; 167 - (void)setWebKitOverrideRouteSharingPolicy:(NSUInteger)routeSharingPolicy routingContextUID:(NSString *)routingContextUID;168 166 @end 169 167 -
trunk/Source/WebCore/platform/cocoa/VideoFullscreenModel.h
r237458 r237483 29 29 #if PLATFORM(IOS_FAMILY) || (PLATFORM(MAC) && ENABLE(VIDEO_PRESENTATION_MODE)) 30 30 31 #include "AudioSession.h"32 31 #include "FloatRect.h" 33 32 #include "HTMLMediaElementEnums.h" 34 33 #include "MediaPlayerEnums.h" 35 34 #include "PlaybackSessionModel.h" 36 #include <wtf/CompletionHandler.h>37 35 38 36 #if PLATFORM(IOS_FAMILY) … … 65 63 virtual void didExitPictureInPicture() = 0; 66 64 67 virtual void requestRouteSharingPolicyAndContextUID(CompletionHandler<void(RouteSharingPolicy, String)>&& completionHandler) { completionHandler(RouteSharingPolicy::Default, emptyString()); }68 69 65 #if PLATFORM(IOS_FAMILY) 70 66 virtual UIViewController *presentingViewController() { return nullptr; } -
trunk/Source/WebCore/platform/cocoa/VideoFullscreenModelVideoElement.h
r237458 r237483 73 73 bool hasVideo() const override { return m_hasVideo; } 74 74 75 WEBCORE_EXPORT void requestRouteSharingPolicyAndContextUID(CompletionHandler<void(RouteSharingPolicy, String)>&&) override;76 75 77 76 protected: -
trunk/Source/WebCore/platform/cocoa/VideoFullscreenModelVideoElement.mm
r237458 r237483 188 188 } 189 189 190 void VideoFullscreenModelVideoElement::requestRouteSharingPolicyAndContextUID(CompletionHandler<void(RouteSharingPolicy, String)>&& completionHandler)191 {192 auto& session = AudioSession::sharedSession();193 completionHandler(session.routeSharingPolicy(), session.routingContextUID());194 }195 196 190 void VideoFullscreenModelVideoElement::addClient(VideoFullscreenModelClient& client) 197 191 { -
trunk/Source/WebCore/platform/ios/VideoFullscreenInterfaceAVKit.h
r237458 r237483 58 58 class VideoFullscreenModel; 59 59 class VideoFullscreenChangeObserver; 60 60 61 61 class VideoFullscreenInterfaceAVKit final 62 62 : public VideoFullscreenModelClient … … 185 185 RunLoop::Timer<VideoFullscreenInterfaceAVKit> m_watchdogTimer; 186 186 FloatRect m_inlineRect; 187 RouteSharingPolicy m_routeSharingPolicy { RouteSharingPolicy::Default };188 String m_routingContextUID;189 187 bool m_allowsPictureInPicturePlayback { false }; 190 188 bool m_wirelessVideoPlaybackDisabled { true }; -
trunk/Source/WebCore/platform/ios/VideoFullscreenInterfaceAVKit.mm
r237458 r237483 542 542 543 543 - (BOOL)playerViewControllerShouldHandleDoneButtonTap:(AVPlayerViewController *)playerViewController; 544 - (void)setWebKitOverrideRouteSharingPolicy:(NSUInteger)routeSharingPolicy routingContextUID:(NSString *)routingContextUID;545 544 @end 546 545 NS_ASSUME_NONNULL_END … … 574 573 575 574 return YES; 576 }577 578 - (void)setWebKitOverrideRouteSharingPolicy:(NSUInteger)routeSharingPolicy routingContextUID:(NSString *)routingContextUID579 {580 #pragma clang diagnostic push581 #pragma clang diagnostic ignored "-Wunknown-pragmas"582 #pragma clang diagnostic ignored "-Wunguarded-availability-new"583 if ([_avPlayerViewController respondsToSelector:@selector(setWebKitOverrideRouteSharingPolicy:routingContextUID:)])584 [_avPlayerViewController setWebKitOverrideRouteSharingPolicy:routeSharingPolicy routingContextUID:routingContextUID];585 #pragma clang diagnostic pop586 575 } 587 576 … … 770 759 m_videoFullscreenModel = model; 771 760 772 if (m_videoFullscreenModel) {761 if (m_videoFullscreenModel) 773 762 m_videoFullscreenModel->addClient(*this); 774 m_videoFullscreenModel->requestRouteSharingPolicyAndContextUID([this, protectedThis = makeRefPtr(this)] (RouteSharingPolicy policy, String contextUID) {775 m_routeSharingPolicy = policy;776 m_routingContextUID = contextUID;777 778 if (m_playerViewController && !m_routingContextUID.isEmpty())779 [m_playerViewController setWebKitOverrideRouteSharingPolicy:(NSUInteger)m_routeSharingPolicy routingContextUID:m_routingContextUID];780 });781 }782 763 783 764 hasVideoChanged(m_videoFullscreenModel ? m_videoFullscreenModel->hasVideo() : false); … … 1240 1221 [m_playerViewController setAllowsPictureInPicturePlayback:m_allowsPictureInPicturePlayback]; 1241 1222 [playerController() setPictureInPicturePossible:m_allowsPictureInPicturePlayback]; 1242 if (!m_routingContextUID.isEmpty())1243 [m_playerViewController setWebKitOverrideRouteSharingPolicy:(NSUInteger)m_routeSharingPolicy routingContextUID:m_routingContextUID];1244 1223 1245 1224 #if PLATFORM(WATCHOS) -
trunk/Source/WebKit/ChangeLog
r237480 r237483 1 2018-10-26 Commit Queue <commit-queue@webkit.org> 2 3 Unreviewed, rolling out r237458. 4 https://bugs.webkit.org/show_bug.cgi?id=190973 5 6 broke internal iOS builds (Requested by zalan on #webkit). 7 8 Reverted changeset: 9 10 "Adopt -setOverrideRouteSharingPolicy:routingContextUID: SPI" 11 https://bugs.webkit.org/show_bug.cgi?id=190951 12 https://trac.webkit.org/changeset/237458 13 1 14 2018-10-26 Chris Dumez <cdumez@apple.com> 2 15 -
trunk/Source/WebKit/Platform/IPC/MessageSender.h
r237458 r237483 66 66 } 67 67 68 template<typename T, typename... Args>69 void sendWithAsyncReply(T&& message, CompletionHandler<void(Args...)>&& args, uint64_t destinationID = 0)70 {71 ASSERT(messageSenderConnection());72 73 messageSenderConnection()->sendWithAsyncReply(WTFMove(message), WTFMove(args), destinationID);74 }75 76 68 virtual bool sendMessage(std::unique_ptr<Encoder>, OptionSet<SendOption>); 77 69 -
trunk/Source/WebKit/Scripts/webkit/messages.py
r237458 r237483 560 560 if message.has_attribute(ASYNC_ATTRIBUTE): 561 561 move_parameters = message.name, ', '.join([move_type(x.type) for x in message.reply_parameters]) 562 move_values = ', '.join(['WTFMove(*%s)' % x.name for x in message.reply_parameters])563 562 result.append('void %s::callReply(IPC::Decoder& decoder, CompletionHandler<void(%s)>&& completionHandler)\n{\n' % move_parameters) 564 563 for x in message.reply_parameters: … … 566 565 result.append(' decoder >> %s;\n' % x.name) 567 566 result.append(' if (!%s) {\n ASSERT_NOT_REACHED();\n return;\n }\n' % x.name) 568 result.append(' completionHandler( %s);\n}\n\n' % move_values)567 result.append(' completionHandler(WTFMove(*%s));\n}\n\n' % (', *'.join(x.name for x in message.reply_parameters))) 569 568 result.append('void %s::cancelReply(CompletionHandler<void(%s)>&& completionHandler)\n{\n completionHandler(' % move_parameters) 570 569 result.append(', '.join(['{ }' for x in message.reply_parameters])) -
trunk/Source/WebKit/UIProcess/Cocoa/VideoFullscreenManagerProxy.h
r237458 r237483 29 29 30 30 #include "MessageReceiver.h" 31 #include <WebCore/AudioSession.h>32 31 #include <WebCore/GraphicsLayer.h> 33 32 #include <WebCore/PlatformView.h> … … 38 37 #include <wtf/RefCounted.h> 39 38 #include <wtf/RefPtr.h> 40 #include <wtf/text/WTFString.h>41 39 42 40 #if PLATFORM(IOS_FAMILY) … … 96 94 void willExitPictureInPicture() final; 97 95 void didExitPictureInPicture() final; 98 void requestRouteSharingPolicyAndContextUID(CompletionHandler<void(WebCore::RouteSharingPolicy, String)>&&) final;99 96 100 97 // VideoFullscreenChangeObserver … … 130 127 void applicationDidBecomeActive(); 131 128 bool isVisible() const; 132 133 void requestRouteSharingPolicyAndContextUID(uint64_t contextId, CompletionHandler<void(WebCore::RouteSharingPolicy, String)>&&);134 129 135 130 #if ENABLE(VIDEO_PRESENTATION_MODE) -
trunk/Source/WebKit/UIProcess/Cocoa/VideoFullscreenManagerProxy.mm
r237458 r237483 275 275 } 276 276 277 void VideoFullscreenModelContext::requestRouteSharingPolicyAndContextUID(CompletionHandler<void(WebCore::RouteSharingPolicy, String)>&& completionHandler)278 {279 if (m_manager)280 m_manager->requestRouteSharingPolicyAndContextUID(m_contextId, WTFMove(completionHandler));281 else282 completionHandler(WebCore::RouteSharingPolicy::Default, emptyString());283 }284 285 277 void VideoFullscreenModelContext::willEnterPictureInPicture() 286 278 { … … 400 392 for (auto& tuple : m_contextMap.values()) 401 393 std::get<1>(tuple)->applicationDidBecomeActive(); 402 }403 404 void VideoFullscreenManagerProxy::requestRouteSharingPolicyAndContextUID(uint64_t contextId, CompletionHandler<void(WebCore::RouteSharingPolicy, String)>&& callback)405 {406 m_page->sendWithAsyncReply(Messages::VideoFullscreenManager::RequestRouteSharingPolicyAndContextUID(contextId), WTFMove(callback));407 394 } 408 395 -
trunk/Source/WebKit/WebProcess/cocoa/VideoFullscreenManager.h
r237458 r237483 28 28 #if (PLATFORM(IOS_FAMILY) && HAVE(AVKIT)) || (PLATFORM(MAC) && ENABLE(VIDEO_PRESENTATION_MODE)) 29 29 30 #include "Connection.h"31 30 #include "MessageReceiver.h" 32 #include "VideoFullscreenManagerMessages.h"33 31 #include <WebCore/EventListener.h> 34 32 #include <WebCore/HTMLMediaElementEnums.h> … … 154 152 void fullscreenModeChanged(uint64_t contextId, WebCore::HTMLMediaElementEnums::VideoFullscreenMode); 155 153 void fullscreenMayReturnToInline(uint64_t contextId, bool isPageVisible); 156 void requestRouteSharingPolicyAndContextUID(uint64_t contextId, Messages::VideoFullscreenManager::RequestRouteSharingPolicyAndContextUID::AsyncReply&&); 157 154 158 155 WebPage* m_page; 159 156 Ref<PlaybackSessionManager> m_playbackSessionManager; -
trunk/Source/WebKit/WebProcess/cocoa/VideoFullscreenManager.messages.in
r237458 r237483 36 36 FullscreenModeChanged(uint64_t contextId, WebCore::HTMLMediaElementEnums::VideoFullscreenMode videoFullscreenMode) 37 37 FullscreenMayReturnToInline(uint64_t contextId, bool isPageVisible) 38 RequestRouteSharingPolicyAndContextUID(uint64_t contextId) -> (enum:uint8_t WebCore::RouteSharingPolicy routeSharingPolicy, String routingContextUID) Async39 38 } 40 39 #endif -
trunk/Source/WebKit/WebProcess/cocoa/VideoFullscreenManager.mm
r237458 r237483 31 31 #import "Logging.h" 32 32 #import "PlaybackSessionManager.h" 33 #import "VideoFullscreenManagerMessages.h" 33 34 #import "VideoFullscreenManagerProxyMessages.h" 34 35 #import "WebCoreArgumentCoders.h" … … 558 559 m_page->send(Messages::VideoFullscreenManagerProxy::PreparedToReturnToInline(contextId, true, inlineVideoFrame(*model.videoElement())), m_page->pageID()); 559 560 } 560 561 void VideoFullscreenManager::requestRouteSharingPolicyAndContextUID(uint64_t contextId, Messages::VideoFullscreenManager::RequestRouteSharingPolicyAndContextUID::AsyncReply&& reply)562 {563 ensureModel(contextId).requestRouteSharingPolicyAndContextUID(WTFMove(reply));564 }565 561 566 562 void VideoFullscreenManager::setVideoLayerFrameFenced(uint64_t contextId, WebCore::FloatRect bounds, IPC::Attachment fencePort)
Note:
See TracChangeset
for help on using the changeset viewer.