Add WKWebView fullscreen delegate SPI
rdar://problem/28722363
Created attachment 292085 [details] Patch
Created attachment 292148 [details] Patch
Created attachment 292222 [details] Patch
Comment on attachment 292222 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=292222&action=review > Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm:3942 > + return [static_cast<WebKit::FullscreenClient&>(_page->fullscreenClient()).delegate().leakRef() autorelease]; Can just use .autorelease() here instead of .leakRef() autorelease]. > Source/WebKit2/UIProcess/API/Cocoa/WKWebViewPrivate.h:249 > +@property (nonatomic, setter=_setFullscreenDelegate:) id<_WKFullscreenDelegate> _fullscreenDelegate WK_API_AVAILABLE(macos(10.13)); > +@property (nonatomic, readonly) BOOL _isInFullscreen WK_API_AVAILABLE(macos(10.13)); Should be WK_MAC_TBA.
Committed r207820: <http://trac.webkit.org/changeset/207820>
(In reply to comment #6) > Committed r207820: <http://trac.webkit.org/changeset/207820> It broke the debug build, see build.webkit.org for details.
/Volumes/Data/slave/elcapitan-debug/build/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm:3942:102: error: expected ';' after return statement return static_cast<WebKit::FullscreenClient&>(_page->fullscreenClient()).delegate().autorelease()); ^ ; Not only the debug, but all builds .... Please build locally before landing random syntax errors.
fix already landed in https://trac.webkit.org/changeset/207822 , thanks Jonathan.
Comment on attachment 292222 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=292222&action=review >> Source/WebKit2/UIProcess/API/Cocoa/WKWebViewPrivate.h:249 >> +@property (nonatomic, setter=_setFullscreenDelegate:) id<_WKFullscreenDelegate> _fullscreenDelegate WK_API_AVAILABLE(macos(10.13)); >> +@property (nonatomic, readonly) BOOL _isInFullscreen WK_API_AVAILABLE(macos(10.13)); > > Should be WK_MAC_TBA. This broke building against older SDKs that don't know about "macos".