[webkit-changes] [WebKit/WebKit] bc4cb9: Update fullscreen state in other processes when en...
Alex Christensen
noreply at github.com
Sat Feb 22 08:02:42 PST 2025
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: bc4cb9e7454ee85a794a7fa32df1c88df850e711
https://github.com/WebKit/WebKit/commit/bc4cb9e7454ee85a794a7fa32df1c88df850e711
Author: Alex Christensen <achristensen at apple.com>
Date: 2025-02-22 (Sat, 22 Feb 2025)
Changed paths:
M LayoutTests/http/tests/site-isolation/fullscreen-expected.txt
M LayoutTests/http/tests/site-isolation/fullscreen.html
M Source/WebCore/dom/FullscreenManager.cpp
M Source/WebCore/dom/FullscreenManager.h
M Source/WebKit/UIProcess/WebFullScreenManagerProxy.cpp
M Source/WebKit/UIProcess/WebFullScreenManagerProxy.h
M Source/WebKit/UIProcess/WebFullScreenManagerProxy.messages.in
M Source/WebKit/WebProcess/FullScreen/WebFullScreenManager.cpp
M Source/WebKit/WebProcess/FullScreen/WebFullScreenManager.h
M Source/WebKit/WebProcess/FullScreen/WebFullScreenManager.messages.in
M Source/WebKit/WebProcess/WebPage/WebFrame.cpp
M Source/WebKit/WebProcess/WebPage/WebFrame.h
Log Message:
-----------
Update fullscreen state in other processes when entering and exiting fullscreen with site isolation
https://bugs.webkit.org/show_bug.cgi?id=288280
Reviewed by Tim Nguyen.
When entering fullscreen, we need to send IPC to other processes along the frame's ancestor chain
and tell them to enter fullscreen to make the HTMLFrameOwnerElement take the entirety of the screen.
Similarly when exiting fullscreen, we need to tell the processes to undo that state change.
* LayoutTests/http/tests/site-isolation/fullscreen-expected.txt:
* LayoutTests/http/tests/site-isolation/fullscreen.html:
* Source/WebCore/dom/FullscreenManager.cpp:
(WebCore::FullscreenManager::willEnterFullscreen):
(WebCore::FullscreenManager::elementEnterFullscreen):
* Source/WebCore/dom/FullscreenManager.h:
* Source/WebKit/UIProcess/WebFullScreenManagerProxy.cpp:
(WebKit::WebFullScreenManagerProxy::enterFullScreen):
(WebKit::WebFullScreenManagerProxy::enterFullScreenForOwnerElementsInOtherProcesses):
(WebKit::WebFullScreenManagerProxy::beganExitFullScreen):
(WebKit::WebFullScreenManagerProxy::exitFullScreenInOtherProcesses):
* Source/WebKit/UIProcess/WebFullScreenManagerProxy.h:
* Source/WebKit/UIProcess/WebFullScreenManagerProxy.messages.in:
* Source/WebKit/WebProcess/FullScreen/WebFullScreenManager.cpp:
(WebKit::WebFullScreenManager::enterFullScreenForElement):
(WebKit::WebFullScreenManager::willExitFullScreen):
(WebKit::WebFullScreenManager::enterFullScreenForOwnerElements):
(WebKit::WebFullScreenManager::exitFullScreenInMainFrame):
* Source/WebKit/WebProcess/FullScreen/WebFullScreenManager.h:
* Source/WebKit/WebProcess/FullScreen/WebFullScreenManager.messages.in:
* Source/WebKit/WebProcess/WebPage/WebFrame.cpp:
(WebKit::WebFrame::webFrame):
* Source/WebKit/WebProcess/WebPage/WebFrame.h:
Canonical link: https://commits.webkit.org/290872@main
To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications
More information about the webkit-changes
mailing list