Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
REGRESSION (262875@main / iOS 17): fill: 'both' not respected with an…
…imation https://bugs.webkit.org/show_bug.cgi?id=257861 rdar://111407099 Reviewed by Simon Fraser. While we fixed a similar issue with 265498@main, the fix was not complete. Indeed, to correctly deal with accelerated replaced effects in an effect stack, we must ensure two things: 1. in `KeyframeEffect::applyPendingAcceleratedActionsOrUpdateTimingProperties()`, where we ensure the accelerated effect is present on the backing GraphicsLayerCA in the right sort order, we not only need to add an `UpdateProperties` accelerated action but also ensure that we mark it as running by setting the `m_lastRecordedAcceleratedAction` member. 2. in `KeyframeEffectStack::applyPendingAcceleratedActions()`, where we update all effects in the stack to ensure any pending accelerated actions as applied, we must *not* force the running of replaced effects if all the accelerated effects in the stack are *not* actively running. In that case we must only call `KeyframeEffect::applyPendingAcceleratedActions` to ensure any previously-running accelerated effect has a chance to be stopped. * LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/keyframe-effects/effect-value-opacity-replaced-effect-in-shadow-root-expected.html: Added. * LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/keyframe-effects/effect-value-opacity-replaced-effect-in-shadow-root-ref.html: Added. * LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/keyframe-effects/effect-value-opacity-replaced-effect-in-shadow-root.html: Added. * Source/WebCore/animation/KeyframeEffect.cpp: (WebCore::KeyframeEffect::applyPendingAcceleratedActionsOrUpdateTimingProperties): * Source/WebCore/animation/KeyframeEffectStack.cpp: (WebCore::KeyframeEffectStack::applyPendingAcceleratedActions const): Canonical link: https://commits.webkit.org/265909@main
- Loading branch information