Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 84aabd280f9ab479463a9701fd52a3d3c95b347d
      
https://github.com/WebKit/WebKit/commit/84aabd280f9ab479463a9701fd52a3d3c95b347d
  Author: Matt Woodrow <[email protected]>
  Date:   2023-11-06 (Mon, 06 Nov 2023)

  Changed paths:
    M Source/WebCore/platform/graphics/transforms/RotateTransformOperation.h
    M Source/WebCore/platform/graphics/transforms/TransformOperation.h
    M Source/WebCore/platform/graphics/transforms/TransformationMatrix.cpp
    M Source/WebCore/platform/graphics/transforms/TransformationMatrix.h

  Log Message:
  -----------
  REGRESSION (266237@main): Poster circle animation is not continuous
https://bugs.webkit.org/show_bug.cgi?id=263569
<rdar://117209302>

Reviewed by Simon Fraser.

This is the same as the existing hasBig3DRotation rotation issue, where CA 
animates the shortest path between 3d rotations,
because we represent them as matrices.

Previously our computed matrices for rotate(180deg) didn’t have integer values, 
due to a float rounding issue during deg->rad.

The new change computes the rotation matrix exactly, and now there’s no longer 
a defined direction for a 180deg rotation and
we sometimes end up with a ‘backwards’ rotation.

This adds an option to not do the snapping when we compute matrices for CA, so 
that the existing behavior is preserved.

* Source/WebCore/platform/graphics/transforms/RotateTransformOperation.h:
* Source/WebCore/platform/graphics/transforms/TransformOperation.h:
(WebCore::TransformOperation::applyUnrounded const):
* Source/WebCore/platform/graphics/transforms/TransformationMatrix.cpp:
(WebCore::TransformationMatrix::rotate3d):
(WebCore::TransformationMatrix::rotate):
(WebCore::TransformationMatrix::rotateRadians):
* Source/WebCore/platform/graphics/transforms/TransformationMatrix.h:

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


_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to