RESOLVED FIXED 265170
[view-transitions] Implement "capture the image" algorithm
https://bugs.webkit.org/show_bug.cgi?id=265170
Summary [view-transitions] Implement "capture the image" algorithm
Tim Nguyen (:ntim)
Reported 2023-11-20 17:56:10 PST Comment hidden (obsolete)
Attachments
Radar WebKit Bug Importer
Comment 2 2023-11-20 17:59:36 PST
Tim Nguyen (:ntim)
Comment 3 2023-12-02 02:26:07 PST
It would probably make sense to implement the "snapshot containing block" too: https://drafts.csswg.org/css-view-transitions/#snapshot-containing-block-concept
Matt Woodrow
Comment 4 2024-02-15 18:17:04 PST
EWS
Comment 5 2024-02-18 19:08:19 PST
Committed 274957@main (115f0206bb9c): <https://commits.webkit.org/274957@main> Reviewed commits have been landed. Closing PR #24570 and removing active labels.
Fujii Hironori
Comment 6 2024-02-18 22:12:54 PST
This change introduced a new assertion failure. ASSERTION FAILED: fixedPositionContainerLayer rendering/RenderLayer.cpp(2391) : const WebCore::RenderLayer *WebCore::accumulateOffsetTowardsAncestor(const WebCore::RenderLayer *, const WebCore::RenderLayer *, WebCore::LayoutPoint &, RenderLayer::ColumnOffsetAdjustment) 1 0x1042ed058 WTFCrash 2 0x2df82a9c0 WebCore::NetworkResourcesData::ResourceData::hasContent() const 3 0x2e10075dc WebCore::accumulateOffsetTowardsAncestor(WebCore::RenderLayer const*, WebCore::RenderLayer const*, WebCore::LayoutPoint&, WebCore::RenderLayer::ColumnOffsetAdjustment) 4 0x2e10072ac WebCore::RenderLayer::convertToLayerCoords(WebCore::RenderLayer const*, WebCore::LayoutPoint const&, WebCore::RenderLayer::ColumnOffsetAdjustment) const 5 0x2e10019ec WebCore::RenderLayer::offsetFromAncestor(WebCore::RenderLayer const*, WebCore::RenderLayer::ColumnOffsetAdjustment) const 6 0x2e10533f0 WebCore::RenderLayerCompositor::repaintInCompositedAncestor(WebCore::RenderLayer&, WebCore::LayoutRect const&) 7 0x2e106776c WebCore::RenderLayerCompositor::layerWillBeRemoved(WebCore::RenderLayer&, WebCore::RenderLayer&) 8 0x2e0ffddf0 WebCore::RenderLayer::removeChild(WebCore::RenderLayer&) 9 0x2e0f737dc WebCore::RenderElement::removeLayers() 10 0x2e0f76b3c WebCore::RenderElement::willBeRemovedFromTree(WebCore::RenderObject::IsInternalMove) 11 0x2e1073f80 WebCore::RenderLayerModelObject::willBeRemovedFromTree(WebCore::RenderObject::IsInternalMove) 12 0x2e0ef869c WebCore::RenderBox::willBeRemovedFromTree(WebCore::RenderObject::IsInternalMove) 13 0x2e14310a8 WebCore::RenderTreeBuilder::detachFromRenderElement(WebCore::RenderElement&, WebCore::RenderObject&, WebCore::RenderTreeBuilder::WillBeDestroyed) 14 0x2e14306c4 WebCore::RenderTreeBuilder::Block::detach(WebCore::RenderBlock&, WebCore::RenderObject&, WebCore::RenderTreeBuilder::CanCollapseAnonymousBlock) 15 0x2e143058c WebCore::RenderTreeBuilder::Block::detach(WebCore::RenderBlockFlow&, WebCore::RenderObject&, WebCore::RenderTreeBuilder::CanCollapseAnonymousBlock) 16 0x2e142da04 WebCore::RenderTreeBuilder::detach(WebCore::RenderElement&, WebCore::RenderObject&, WebCore::RenderTreeBuilder::CanCollapseAnonymousBlock) 17 0x2e142d680 WebCore::RenderTreeBuilder::destroy(WebCore::RenderObject&, WebCore::RenderTreeBuilder::CanCollapseAnonymousBlock) 18 0x2e142d75c WebCore::RenderTreeBuilder::destroy(WebCore::RenderObject&, WebCore::RenderTreeBuilder::CanCollapseAnonymousBlock) 19 0x2e145cd84 WebCore::RenderTreeUpdater::ViewTransition::updatePseudoElementTree(WebCore::RenderElement&)::$_11::operator()() const 20 0x2e1459bb4 WebCore::RenderTreeUpdater::ViewTransition::updatePseudoElementTree(WebCore::RenderElement&) 21 0x2e1459318 WebCore::RenderTreeUpdater::updateAfterDescendants(WebCore::Element&, WebCore::Style::ElementUpdate const*) 22 0x2e1459224 WebCore::RenderTreeUpdater::popParent() 23 0x2e1458640 WebCore::RenderTreeUpdater::popParentsToDepth(unsigned int) 24 0x2e1457f34 WebCore::RenderTreeUpdater::updateRenderTree(WebCore::ContainerNode&) 25 0x2e145770c WebCore::RenderTreeUpdater::commit(std::__1::unique_ptr<WebCore::Style::Update, std::__1::default_delete<WebCore::Style::Update> >) 26 0x2dec1aac0 WebCore::Document::updateRenderTree(std::__1::unique_ptr<WebCore::Style::Update, std::__1::default_delete<WebCore::Style::Update> >) 27 0x2dec1b198 WebCore::Document::resolveStyle(WebCore::Document::ResolveStyleType) 28 0x2dec1bde8 WebCore::Document::updateStyleIfNeeded() 29 0x2de77d4c0 WebCore::ComputedStyleExtractor::updateStyleIfNeededForProperty(WebCore::Element&, WebCore::CSSPropertyID) 30 0x2de77cfcc WebCore::ComputedStyleExtractor::propertyValue(WebCore::CSSPropertyID, WebCore::ComputedStyleExtractor::UpdateLayout, WebCore::ComputedStyleExtractor::PropertyValueType) const 31 0x2de7c700c std::__1::optional<WebCore::CSSProperty> WebCore::ComputedStyleExtractor::copyProperties(std::__1::span<WebCore::CSSPropertyID const, 18446744073709551615ul>) const::$_17::operator()<WebCore::CSSPropertyID const>(WebCore::CSSPropertyID const&) const com.apple.WebKit.WebContent.Development terminated (pid 39702) for reason: crash https://build.webkit.org/results/Apple-Monterey-Debug-AppleSilicon-WK2-Tests/274957@main%20(8215)/results.html
WebKit Commit Bot
Comment 7 2024-02-19 13:06:17 PST
Re-opened since this is blocked by bug 269743
Matt Woodrow
Comment 8 2024-02-20 17:22:49 PST
EWS
Comment 9 2024-02-21 00:26:17 PST
Committed 275087@main (1360173f7d2b): <https://commits.webkit.org/275087@main> Reviewed commits have been landed. Closing PR #24850 and removing active labels.
Note You need to log in before you can comment on or make changes to this bug.