Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 7bcd19f3fd56a4d71e90a298fc384d3a72635cde
https://github.com/WebKit/WebKit/commit/7bcd19f3fd56a4d71e90a298fc384d3a72635cde
Author: Antoine Quint <[email protected]>
Date: 2026-02-18 (Wed, 18 Feb 2026)
Changed paths:
M LayoutTests/platform/mac-wk2/TestExpectations
M Source/WebCore/animation/AnimationTimeline.cpp
M Source/WebCore/animation/KeyframeEffect.cpp
M Source/WebCore/animation/KeyframeEffect.h
Log Message:
-----------
REGRESSION(307236@main): [Tahoe]
webanimations/no-scheduling-while-filling-non-accelerated.html is a flaky text
failure
https://bugs.webkit.org/show_bug.cgi?id=307822
rdar://170329998
Reviewed by Anne van Kesteren.
When a timeline's ability to be accelerated changes, we unconditionally mark
that timeline's animations' effects
as pending an acceleration update via
`KeyframeEffect::timelineAccelerationAbilityDidChange()`. We introduced this
in 303589@main but were too naive. Only effects that can be accelerated should
be added. Since timeline acceleration
is a factor when deciding whether an effect can be accelerated, we now add the
ability to remove this condition and
use this new ability in
`KeyframeEffect::timelineAccelerationAbilityDidChange()`. Now a test that does
not involve
accelerated animations such as
`webanimations/no-scheduling-while-filling-non-accelerated.html` will no longer
have
unexpected animation updates scheduled due to threaded animations.
But this could have also been addressed by making sure that document timelines,
which can always be accelerated,
have `m_canBeAccelerated` set to `true` right as they are constructed. So we
also make a change to set that flag
to the value returned by `computeCanBeAccelerated()` in the `AnimationTimeline`
constructor.
* LayoutTests/platform/mac-wk2/TestExpectations:
* Source/WebCore/animation/AnimationTimeline.cpp:
(WebCore::AnimationTimeline::AnimationTimeline):
* Source/WebCore/animation/KeyframeEffect.cpp:
(WebCore::KeyframeEffect::canBeAccelerated const):
(WebCore::KeyframeEffect::timelineAccelerationAbilityDidChange):
* Source/WebCore/animation/KeyframeEffect.h:
Canonical link: https://commits.webkit.org/307758@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications