Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 159906e6201b73d5b59b2ac3aed6788b66c7a7e7
      
https://github.com/WebKit/WebKit/commit/159906e6201b73d5b59b2ac3aed6788b66c7a7e7
  Author: Matt Woodrow <mattwood...@apple.com>
  Date:   2024-05-23 (Thu, 23 May 2024)

  Changed paths:
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/new-content-flat-transform-ancestor-expected.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/new-content-flat-transform-ancestor-ref.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/new-content-flat-transform-ancestor.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/new-content-preserve-3d-ancestor-expected.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/new-content-preserve-3d-ancestor-ref.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/new-content-preserve-3d-ancestor.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/new-content-transform-position-fixed-expected.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/new-content-transform-position-fixed-ref.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/new-content-transform-position-fixed.html
    M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/root-scrollbar-with-fixed-background-expected.html
    M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/root-scrollbar-with-fixed-background-ref.html
    M 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/root-scrollbar-with-fixed-background.html
    M Source/WebCore/dom/ViewTransition.cpp
    M Source/WebCore/platform/graphics/transforms/TransformState.cpp
    M Source/WebCore/platform/graphics/transforms/TransformState.h
    M Source/WebCore/platform/graphics/transforms/TransformationMatrix.cpp
    M Source/WebCore/platform/graphics/transforms/TransformationMatrix.h
    M Source/WebCore/rendering/RenderObject.cpp
    M Source/WebCore/rendering/RenderObject.h

  Log Message:
  -----------
  [view-transitions] Mispositioned snapshots on 
https://codepen.io/bramus/full/mdowgYX
https://bugs.webkit.org/show_bug.cgi?id=272185
rdar://125931829

Reviewed by Simon Fraser.

We were previously unconditionally substracting the scroll position from the 
transform when positioning the snapshots.
This is incorrect in some cases, like when the element is fixed positioned.

This makes use of the existing TransformState/mapLocalToContainer code to 
correctly account for position:fixed when accumulating
transforms through ancestors.

It also adds support for flattening the 'tracked' transform when crossing 3d 
rendering context boundaries, by setting the 3rd row
and column of the TransformationMatrix to 0.

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/new-content-flat-transform-ancestor-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/new-content-flat-transform-ancestor-ref.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/new-content-flat-transform-ancestor.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/new-content-preserve-3d-ancestor-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/new-content-preserve-3d-ancestor-ref.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/new-content-preserve-3d-ancestor.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/new-content-transform-position-fixed-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/new-content-transform-position-fixed-ref.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/new-content-transform-position-fixed.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/root-scrollbar-with-fixed-background-expected.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/root-scrollbar-with-fixed-background-ref.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-view-transitions/root-scrollbar-with-fixed-background.html:
* Source/WebCore/dom/ViewTransition.cpp:
(WebCore::ViewTransition::copyElementBaseProperties):
* Source/WebCore/platform/graphics/transforms/TransformState.cpp:
(WebCore::TransformState::translateMappedCoordinates):
(WebCore::TransformState::flattenWithTransform):
* Source/WebCore/platform/graphics/transforms/TransformState.h:
* Source/WebCore/platform/graphics/transforms/TransformationMatrix.cpp:
(WebCore::TransformationMatrix::flatten):
* Source/WebCore/platform/graphics/transforms/TransformationMatrix.h:
* Source/WebCore/rendering/RenderObject.cpp:
(WebCore::RenderObject::localToAbsoluteTransform const):
* Source/WebCore/rendering/RenderObject.h:

Canonical link: https://commits.webkit.org/279186@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

Reply via email to