[webkit-changes] [WebKit/WebKit] 84aabd: REGRESSION (266237 at main): Poster circle animation ...
mattwoodrow
noreply at github.com
Mon Nov 6 15:30:26 PST 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 84aabd280f9ab479463a9701fd52a3d3c95b347d
https://github.com/WebKit/WebKit/commit/84aabd280f9ab479463a9701fd52a3d3c95b347d
Author: Matt Woodrow <mattwoodrow at apple.com>
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 at 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
More information about the webkit-changes
mailing list