Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: d9d731244a3745f91f3a49e0875a4350da050d8a https://github.com/WebKit/WebKit/commit/d9d731244a3745f91f3a49e0875a4350da050d8a Author: Matt Woodrow <mattwood...@apple.com> Date: 2024-10-22 (Tue, 22 Oct 2024)
Changed paths: M LayoutTests/TestExpectations A LayoutTests/http/wpt/css/css-view-transitions/navigation/old_vt_promises_bfcache-expected.txt A LayoutTests/http/wpt/css/css-view-transitions/navigation/old_vt_promises_bfcache.html M LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/navigation/old_vt_promises_bfcache-expected.txt M LayoutTests/platform/glib/TestExpectations M LayoutTests/platform/win/TestExpectations M Source/WebCore/dom/Document.cpp M Source/WebCore/dom/Document.h M Source/WebCore/dom/ViewTransition.cpp M Source/WebCore/history/CachedPage.cpp Log Message: ----------- Cross-Document View Transitions cause permanent rendering suppression when loading from BFCache. https://bugs.webkit.org/show_bug.cgi?id=280703 <rdar://137081148> Reviewed by Tim Nguyen. Three changes to fix this (and the associated WPT): Clear m_hasBeenRevealed on Document when reactivating it from BFCache, so that the pagereveal event gets fired again. Skip any active view transitions when suspending a Document to put it into the BFCache. Start rendering suppression for a cross-document view transition immediately, instead of waiting until the next rendering update. This is because we (incorrectly) also immediately capture the old state. Duplicates the old_vt_promises_bfcache.html WPT into the local wpt folder, so that the 'UsesBackForwardCache' attribute can be applied to make the test run correctly. * LayoutTests/TestExpectations: * LayoutTests/http/wpt/css/css-view-transitions/navigation/old_vt_promises_bfcache-expected.txt: Added. * LayoutTests/http/wpt/css/css-view-transitions/navigation/old_vt_promises_bfcache.html: Added. * LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/navigation/old_vt_promises_bfcache-expected.txt: * Source/WebCore/dom/Document.cpp: (WebCore::Document::clearRevealForReactivation): (WebCore::Document::suspend): (WebCore::Document::setRenderingIsSuppressedForViewTransitionImmediately): (WebCore::Document::flushDeferredRenderingIsSuppressedForViewTransitionChanges): * Source/WebCore/dom/Document.h: * Source/WebCore/dom/ViewTransition.cpp: (WebCore::ViewTransition::skipViewTransition): (WebCore::ViewTransition::setupViewTransition): * Source/WebCore/history/CachedPage.cpp: (WebCore::firePageShowEvent): Canonical link: https://commits.webkit.org/285582@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