@@ -149,9 +149,14 @@ previous level of this specification:
149149* <a>group effects</a> and <a>sequence effects</a> ,
150150* an <a>animation effect</a> -specific
151151 [=animation effect/playback rate=] ,
152- * <a>custom effects</a> .
153152* Support for non-monotonic (scroll) timelines.
154153
154+ <div class="amendment" id=amend-CE>
155+ This module also includes some exploratory proposals for [[#custom-effects]] ,
156+ however there are some concerns about the design of this feature
157+ and it may be replaced in a future revision.
158+ </div>
159+
155160<h2 id="timing-model">Timing model</h2>
156161
157162This section describes and defines the behavior of the Web Animations
@@ -340,10 +345,12 @@ follows:
340345 <var> animation</var> with the <var> did seek</var> flag set to false, and
341346 the <var> synchronously notify</var> flag set to false.
342347
348+ <ins cite="#amend-CE">
343349Issue: If <var> new timeline</var> is null, we should ensure that <a>custom
344350effects</a> get called with an <a>unresolved</a> <a>iteration progress</a>
345351(unless a subsequent change in the same script execution context makes this
346352redundant).
353+ </ins>
347354
348355<h4 id="setting-the-target-effect">Setting the target effect of an
349356 animation</h4>
@@ -355,6 +362,7 @@ After the step to reschedule a <a>pending play task</a> add the following step:
355362> <a lt="remove an animation effect">remove</a> <var> new effect</var> from
356363> its <a>parent group</a> .
357364
365+ <ins cite="#amend-CE">
358366After the step to assign <var> new effect</var> as <var> animation</var> 's
359367<a>associated effect</a> include the following step:
360368
@@ -370,19 +378,19 @@ After the step to assign <var>new effect</var> as <var>animation</var>'s
370378> The definition of when <a>custom effects</a> gets called needs to be
371379> audited and probably rewritten.
372380> </div>
373-
381+ </ins>
374382
375383<h4 id='waiting-for-the-associated-effect'>Waiting for the associated effect</h4>
376384
377385The definition of when an animation is ready needs to be extended to consider
378- descendant effects and custom effects such that the first condition is:
386+ descendant effects <ins cite="#amend-CE"> and custom effects</ins> such that the first condition is:
379387
380388> * the user agent has completed any setup required to begin the playback of
381389> each <a>inclusive descendant</a> of
382390> the animation's <a>associated effect</a>
383391> including rendering the first frame of any <a>keyframe
384- > effect</a> or executing any <a>custom effects</a> associated with an
385- > <a>animation effect</a> .
392+ > effect</a> <ins cite="#amend-CE"> or executing any <a>custom effects</a> associated with an
393+ > <a>animation effect</a> </ins> .
386394
387395<h4 id='validating-a-css-numberish-time'>Validating a CSSNumberish time</h4>
388396
@@ -783,12 +791,13 @@ updating [=custom effects=].
783791The procedure to [=pause an animation=] needs to refer not only to the
784792[=associated effect=] but also any descendants of the [=associated effect=] .
785793
786- Likewise, the procedure to [=pause an animation=] needs to include scheduling
787- a task for updating [=custom effects=] .
794+ <ins cite="#amend-CE"> Likewise, the procedure to [=pause an animation=] needs to include scheduling
795+ a task for updating [=custom effects=] .</ins>
788796
789797
790798<h4 id='canceling-an-animation-section'>Canceling an animation</h4>
791799
800+ <ins cite="#amend-CE">
792801Append the final step:
793802
794803> 1. Queue a task to call any <a>custom effects</a> associated with
@@ -799,6 +808,7 @@ Append the final step:
799808> Issue: The procedures for calling custom effects need to be reworked.
800809> Currently they probably involve calling too often for changes that
801810> could be coalesced.
811+ </ins>
802812
803813<h4 id="speed-control">Speed control</h4>
804814
@@ -2005,7 +2015,7 @@ as follows:
20052015 href="#the-effect-value-of-a-keyframe-animation-effect"
20062016 section></a>.
20072017
2008-
2018+ <ins cite="#amend-CE">
20092019<h3 id="custom-effects">Custom effects</h3>
20102020
20112021(This section is added.)
@@ -2156,6 +2166,8 @@ order of execution is the same as that defined for <a>animation effects</a> in
21562166[[#the-effect-stack]] .
21572167Items sorted earlier are executed before those sorted later.
21582168
2169+ </ins>
2170+
21592171<!-- End of animation model -->
21602172
21612173<h2 id="programming-interface">Programming interface</h2>
@@ -2954,6 +2966,8 @@ enum IterationCompositeOperation { "replace", "accumulate" };
29542966
29552967<h3 id="the-effectcallback-callback-function">The <code>EffectCallback</code> callback function</h3>
29562968
2969+ <ins cite="#amend-CE">
2970+
29572971<a>Custom effects</a> can be defined in script by providing an
29582972{{EffectCallback}} callback function.
29592973
@@ -2999,6 +3013,8 @@ with which it is associated is updated.
29993013
30003014</div>
30013015
3016+ </ins>
3017+
30023018<h3 id="the-animatable-interface">The <code>Animatable</code> interface</h3>
30033019
30043020<div class="methods">
0 commit comments