Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 9bf21c1a9cf50180658b540b346fed5fae16bc7d
https://github.com/WebKit/WebKit/commit/9bf21c1a9cf50180658b540b346fed5fae16bc7d
Author: Phinehas Fuachie <[email protected]>
Date: 2026-08-20 (Thu, 20 Aug 2026)
Changed paths:
A
LayoutTests/http/tests/site-isolation/resources/viewer-mode-fullscreens-owner-iframe-frame.html
A
LayoutTests/http/tests/site-isolation/viewer-mode-fullscreens-owner-iframe-expected.txt
A
LayoutTests/http/tests/site-isolation/viewer-mode-fullscreens-owner-iframe.html
M LayoutTests/platform/ios/TestExpectations
M Source/WebCore/html/HTMLMediaElement.cpp
M Source/WebKit/Platform/IPC/Connection.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
Log Message:
-----------
[macOS][Site Isolation] Video Viewer is confined to the inline iframe rect
instead of filling the web view
https://bugs.webkit.org/show_bug.cgi?id=322145
rdar://185362319
Reviewed by Alex Christensen.
In-window fullscreen is sized by UA styles in viewport units, which resolve
against the element's own
document — the iframe's box under Site Isolation. willEnterFullscreen()
normally expands the enclosing
iframe by fullscreening ancestor owner elements, but it walks
Frame::ownerElement() and stops at a
RemoteFrame. Send EnterInWindowFullScreen so the in-window path calls the
existing cross-process
equivalent, enterFullScreenForOwnerElementsInOtherProcesses(). Exit already
worked via
BeganExitFullScreen.
elementEnterFullscreen() only resolves style, so also lay out before replying;
otherwise the
requesting process's first layout still uses the inline size.
HTMLMediaElement::displayType() did not handle VideoFullscreenModeInWindow and
hit
ASSERT_NOT_REACHED(). In-window has no separate presentation surface, so report
Normal.
Test: http/tests/site-isolation/viewer-mode-fullscreens-owner-iframe.html
*
LayoutTests/http/tests/site-isolation/resources/viewer-mode-fullscreens-owner-iframe-frame.html:
Added.
*
LayoutTests/http/tests/site-isolation/viewer-mode-fullscreens-owner-iframe-expected.txt:
Added.
*
LayoutTests/http/tests/site-isolation/viewer-mode-fullscreens-owner-iframe.html:
Added.
* LayoutTests/platform/ios/TestExpectations:
* Source/WebCore/html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::displayType const):
* Source/WebKit/Platform/IPC/Connection.h:
* Source/WebKit/UIProcess/WebFullScreenManagerProxy.cpp:
(WebKit::WebFullScreenManagerProxy::enterInWindowFullScreen):
* Source/WebKit/UIProcess/WebFullScreenManagerProxy.h:
* Source/WebKit/UIProcess/WebFullScreenManagerProxy.messages.in:
* Source/WebKit/WebProcess/FullScreen/WebFullScreenManager.cpp:
(WebKit::WebFullScreenManager::performEnterFullScreen):
(WebKit::WebFullScreenManager::enterFullScreenForOwnerElements):
Canonical link: https://commits.webkit.org/319579@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications