[csswg-drafts] [web-animations-2] Playing newly created animations with finite timelines doesn't schedule play task (#13236)

Calme1709 has just created a new issue for https://github.com/w3c/csswg-drafts:

== [web-animations-2] Playing newly created animations with finite timelines doesn't schedule play task ==
Step 10 of [the procedure to play an animation](https://drafts.csswg.org/web-animations-2/#play-an-animation) requires us to abort the procedure if:
> animation’s hold time is unresolved, and
   aborted pause is false, and
   animation does not have a pending playback rate,

Step 6 of the procedure ensures that for animations associated with non-finite timelines that are not already playing and don't have a pending playback rate, we always have a hold time.

This is not the case for equivalent animations associated with finite timelines (where `enable seek` is always false), and we instead just set the `auto align start time` flag to true.

This means that running the procedure on an animation which is associated with a finite timeline, does not having a pending playback rate and where aborted pause is false, we will always abort at step 10, before we schedule a pending play task.

[Chromium](https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/animation/animation.cc;l=1810-1819) and [WebKit](https://github.com/WebKit/WebKit/blob/a4dd0fce306380d98847e44e5ab021f38dccc615/Source/WebCore/animation/WebAnimation.cpp#L1244-L1249) handle this by adding an additional condition that:
  a) the associated timeline is not finite or;
  b) that we don't have a pending auto alignment of the start time (i.e. start time is unresolved but the `auto align start time` flag is true)
respectively


Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/13236 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Thursday, 18 December 2025 03:09:12 UTC