Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: bc4cb9e7454ee85a794a7fa32df1c88df850e711
      
https://github.com/WebKit/WebKit/commit/bc4cb9e7454ee85a794a7fa32df1c88df850e711
  Author: Alex Christensen <achristen...@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
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to