Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 56c04aa4f72aacc51e189a3b4d611ceab6922073 https://github.com/WebKit/WebKit/commit/56c04aa4f72aacc51e189a3b4d611ceab6922073 Author: Wenson Hsieh <wenson_hs...@apple.com> Date: 2024-06-25 (Tue, 25 Jun 2024)
Changed paths: M Source/WebKit/UIProcess/PageClient.h M Source/WebKit/UIProcess/WebPageProxy.cpp M Source/WebKit/UIProcess/WebPageProxy.h M Source/WebKit/UIProcess/WebPageProxy.messages.in M Source/WebKit/UIProcess/WebPageProxyInternals.h M Source/WebKit/UIProcess/ios/PageClientImplIOS.h M Source/WebKit/UIProcess/ios/PageClientImplIOS.mm M Source/WebKit/UIProcess/ios/WebPageProxyIOS.mm M Source/WebKit/UIProcess/ios/fullscreen/WKFullScreenWindowControllerIOS.mm M Source/WebKit/WebProcess/FullScreen/WebFullScreenManager.cpp M Source/WebKit/WebProcess/WebPage/WebPage.cpp M Source/WebKit/WebProcess/WebPage/WebPage.h M Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm Log Message: ----------- Refactor some logic to adjust the viewport in preparation for element fullscreen https://bugs.webkit.org/show_bug.cgi?id=275830 rdar://130216576 Reviewed by Aditya Keerthi. Refactor some logic to adjust the viewport in preparation for element fullscreen. See below for more details. * Source/WebKit/UIProcess/PageClient.h: (WebKit::PageClient::scheduleVisibleContentRectUpdate): * Source/WebKit/UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::resetState): (WebKit::WebPageProxy::setAllowsLayoutViewportHeightExpansion): Add support for a new UI-side flag (updated via IPC from the web process) to determine whether or not we should allow layout viewport height expansion. Currently, this is only influenced by fullscreen presentation state, but this will need to change in a subsequent patch to be tracked using an option set of reasons. * Source/WebKit/UIProcess/WebPageProxy.h: * Source/WebKit/UIProcess/WebPageProxy.messages.in: * Source/WebKit/UIProcess/WebPageProxyInternals.h: * Source/WebKit/UIProcess/ios/PageClientImplIOS.h: * Source/WebKit/UIProcess/ios/PageClientImplIOS.mm: (WebKit::PageClientImpl::scheduleVisibleContentRectUpdate): Add a page client hook to schedule a visible content rect update. * Source/WebKit/UIProcess/ios/WebPageProxyIOS.mm: (WebKit::WebPageProxy::computeLayoutViewportRect const): * Source/WebKit/UIProcess/ios/fullscreen/WKFullScreenWindowControllerIOS.mm: (-[WKFullScreenWindowController enterFullScreen:]): * Source/WebKit/WebProcess/FullScreen/WebFullScreenManager.cpp: (WebKit::WebFullScreenManager::enterFullScreenForElement): (WebKit::WebFullScreenManager::exitFullScreenForElement): Add a couple of new hooks to call into `WebPage` when we're about to enter or exit fullscreen — note that these calls are here instead of inside `willEnterFullScreen`, since the latter is too late. (WebKit::WebFullScreenManager::close): * Source/WebKit/WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::closeFullScreen): (WebKit::WebPage::prepareToEnterElementFullScreen): (WebKit::WebPage::prepareToExitElementFullScreen): (WebKit::WebPage::didCommitLoad): (WebKit::WebPage::setAllowsLayoutViewportHeightExpansion): Update the UI process whenever this state changes. * Source/WebKit/WebProcess/WebPage/WebPage.h: Canonical link: https://commits.webkit.org/280338@main To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes