Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 71e209c557898b92a216b8206bae5a86e1234830
https://github.com/WebKit/WebKit/commit/71e209c557898b92a216b8206bae5a86e1234830
Author: Antoine Quint <[email protected]>
Date: 2022-11-24 (Thu, 24 Nov 2022)
Changed paths:
M
LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/keyframe-effects/effect-value-iteration-composite-operation-expected.txt
M Source/WebCore/animation/CSSPropertyAnimation.cpp
Log Message:
-----------
[web-animations] correctly blend transform with iterationComposite is set to
"accumulate"
https://bugs.webkit.org/show_bug.cgi?id=248312
Reviewed by Antti Koivisto.
When animating transform, we pre-compute the number of matching transform
operations.
However, in the case of `iterationComposite` we end up blending the "to" value
with
itself multiple times with an accumulation composite operation (per
https://drafts.csswg.org/web-animations-2/#the-effect-value-of-a-keyframe-animation-effect).
Indeed, when computing the final keyframe, we accumulate the end keyframe onto
itself
to match the current iteration interval. In that case, since we're blending the
same
value with itself, the pre-computed matching prefix is incorrect, so we use
std::nullopt
instead to indicate that the operations fully match.
*
LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/keyframe-effects/effect-value-iteration-composite-operation-expected.txt:
* Source/WebCore/animation/CSSPropertyAnimation.cpp:
(WebCore::blendFunc):
Canonical link: https://commits.webkit.org/256996@main
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes