Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 01f6d0726a7f6a35c275d109126e3cac23f9c61e
      
https://github.com/WebKit/WebKit/commit/01f6d0726a7f6a35c275d109126e3cac23f9c61e
  Author: Matt Woodrow <[email protected]>
  Date:   2025-05-18 (Sun, 18 May 2025)

  Changed paths:
    M LayoutTests/TestExpectations
    M LayoutTests/platform/ios/TestExpectations
    M Source/WebCore/rendering/RenderElement.cpp
    M Source/WebCore/rendering/RenderElementInlines.h
    M Source/WebCore/rendering/RenderLayer.cpp
    M Source/WebCore/rendering/RenderLayerBacking.cpp
    M Source/WebCore/rendering/RenderLayerCompositor.cpp
    M Source/WebCore/rendering/RenderObject.h
    M Source/WebCore/rendering/RenderView.cpp
    M Source/WebCore/rendering/RenderView.h
    M Source/WebCore/rendering/updating/RenderTreeUpdaterViewTransition.cpp
    M Source/WebCore/rendering/updating/RenderTreeUpdaterViewTransition.h
    M Source/WebCore/style/Styleable.cpp

  Log Message:
  -----------
  css/css-view-transitions/snapshot-containing-block-absolute.html is an 
ImageOnlyFailure
https://bugs.webkit.org/show_bug.cgi?id=292970
<rdar://151279896>

Reviewed by Tim Nguyen.

These tests change the position property on the ::view-transition pseudo, and
break code that expects the normal layer structure.

Create a new anonymous renderer to wrap the view transition pseudo tree, to
represent the view transition snapshot containing block. This is always
position:fixed, and can't be styled by the author.

It's currently sized to match the RenderView, but can be easily extended to
account for insets/outsets to fix bug 285400.

Most code that previously used the view transition root changed over to use the
view transition containing block, as they generally just want the root of the VT
generated tree.

* LayoutTests/TestExpectations:
* Source/WebCore/rendering/RenderElement.cpp:
* Source/WebCore/rendering/RenderElementInlines.h:
(WebCore::RenderElement::isAnonymousBlock const):
(WebCore::RenderElement::mayContainOutOfFlowPositionedObjects const):
* Source/WebCore/rendering/RenderLayer.cpp:
(WebCore::RenderLayer::shouldBeCSSStackingContext const):
(WebCore::RenderLayer::rebuildZOrderLists):
(WebCore::RenderLayer::collectLayers):
* Source/WebCore/rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::childForSuperlayers const):
* Source/WebCore/rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::updateBackingAndHierarchy):
(WebCore::RenderLayerCompositor::requiresCompositingForViewTransition const):
(WebCore::RenderLayerCompositor::fixedLayerIntersectsViewport const):
* Source/WebCore/rendering/RenderObject.h:
(WebCore::RenderObject::isViewTransitionContainingBlock const):
* Source/WebCore/rendering/RenderView.cpp:
(WebCore::RenderView::viewTransitionContainingBlock const):
(WebCore::RenderView::setViewTransitionContainingBlock):
(WebCore::RenderView::viewTransitionRoot const): Deleted.
(WebCore::RenderView::setViewTransitionRoot): Deleted.
* Source/WebCore/rendering/RenderView.h:
* Source/WebCore/rendering/updating/RenderTreeUpdaterViewTransition.cpp:
(WebCore::RenderTreeUpdater::ViewTransition::updatePseudoElementTree):
(WebCore::RenderTreeUpdater::ViewTransition::buildPseudoElementGroup):
* Source/WebCore/rendering/updating/RenderTreeUpdaterViewTransition.h:
* Source/WebCore/style/Styleable.cpp:
(WebCore::Styleable::renderer const):

Canonical link: https://commits.webkit.org/295083@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to