Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: fe161c5b7ed5c56432b7683c7bccb7d3c3015c13
https://github.com/WebKit/WebKit/commit/fe161c5b7ed5c56432b7683c7bccb7d3c3015c13
Author: Cameron McCormack <[email protected]>
Date: 2026-07-02 (Thu, 02 Jul 2026)
Changed paths:
M LayoutTests/TestExpectations
A
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/navigation/resources/abort-before-render.html
A
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/navigation/reveal-after-aborted-navigation-expected.txt
A
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/navigation/reveal-after-aborted-navigation.html
M
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/navigation/skip-outbound-vt-before-reveal-expected.txt
M Source/WebCore/dom/Document.cpp
M Source/WebCore/dom/Document.h
M Source/WebCore/loader/DocumentLoader.cpp
Log Message:
-----------
Navigating away from a render-blocked document before it is revealed
incorrectly reveals it and starts a cross-document view transition.
https://bugs.webkit.org/show_bug.cgi?id=318401
rdar://181191512
Reviewed by Tim Nguyen.
When a render-blocked document is navigated away from before its first
rendering opportunity, the pending render-blocking resource is cancelled,
which unblocks rendering and lets a rendering update reveal the document
that is being discarded. This fired pagereveal on it and, because the
document was treated as revealed, set up an outbound cross-document view
transition. Per CSS View Transitions 2, a document only initiates an
outbound transition once it "has been revealed", and pagereveal is tied
to the first rendering opportunity.
Skip revealing a document that has an in-progress navigation replacing it,
and don't start an outbound cross-document view transition unless the old
document has been revealed.
* LayoutTests/TestExpectations:
*
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/navigation/reveal-after-aborted-navigation.html:
Added.
*
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/navigation/reveal-after-aborted-navigation-expected.txt:
Added.
*
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/navigation/resources/abort-before-render.html:
Added.
*
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/navigation/skip-outbound-vt-before-reveal-expected.txt:
* Source/WebCore/dom/Document.cpp:
(WebCore::Document::reveal):
* Source/WebCore/dom/Document.h:
(WebCore::Document::hasBeenRevealed const):
* Source/WebCore/loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::navigationCanTriggerCrossDocumentViewTransition):
Canonical link: https://commits.webkit.org/316446@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications