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

Reply via email to