@@ -817,10 +817,12 @@ which is used to fix the animation's output <a>time value</a>, called its
817817<a>current time</a> , in circumstances such as pausing.
818818The <a>hold time</a> is initially <a>unresolved</a> .
819819
820- An <a>animation</a> also maintains a <dfn>hold phase</dfn> [=timeline phase=]
821- which is used to fix the animation's output [=timeline phase=] , called its
822- <a>current phase</a> , in circumstances such as pausing.
823- The <a>hold phase</a> is initially <a>unresolved</a> .
820+ In a addition to <a>hold time</a> , an <a>animation</a> maintains a
821+ <dfn>hold phase</dfn> which is set along with the <a>hold time</a> to determine
822+ the <a>current phase</a> of an <a>animation</a> with a fixed
823+ <a>current time</a> . The <a>hold phase</a> has the same range of values as the
824+ [=timeline phase=] and can be set or unset. The <a>hold phase</a> is initially
825+ unset.
824826
825827In order to establish the relative ordering of conflicting <a>animations</a> ,
826828animations are appended to a <dfn>global animation list</dfn> in the order
@@ -841,7 +843,7 @@ follows:
8418431. Let the <a>timeline</a> of <var> animation</var> be <var> new timeline</var> .
8428441. If the [=start time=] of <var> animation</var> is <a
843845 lt=unresolved> resolved</a> , make <var> animation</var> 's <a>hold time</a>
844- and <a>hold phase </a> <a>unresolved </a> .
846+ <a>unresolved </a> and make <a>hold phase </a> unset .
845847
846848 Note: This step ensures that the <a>finished play state</a> of
847849 <var> animation</var> is not “sticky” but is re-evaluated
@@ -932,22 +934,22 @@ matching condition from below:
932934
933935### The current phase of an animation ### {#the-current-phase-of-an-animation}
934936
935- <a>Animations</a> provide a <a>timeline phase</a> to their <a>associated
936- effect</a> called the animation's <dfn>current phase</dfn> .
937+ In addition to their <a>current time</a> , an <a>animation</a> also provides
938+ their <a>associated effect</a> with a <dfn>current phase</dfn> . This is used in
939+ determining the animations effect's phase in certain boundary conditions.
940+
941+ An <a>animation</a> 's <a>current phase</a> has the same range of values as the
942+ [=timeline phase=] .
937943
938944The <a>current phase</a> is calculated from the first matching condition from
939945below:
940946
941947<div class="switch">
942948
943- : If the animation's <a>hold phase</a> is <a lt="unresolved">resolved</a> ,
949+ : If the animation's <a>hold phase</a> is set ,
944950:: The <a>current phase</a> is the animation's <a>hold phase</a> .
945951
946- : If <em> either</em> of the following are true:
947-
948- 1. the animation has no associated <a>timeline</a> , or
949- 2. the animation's [=start time=] is <a>unresolved</a> .
950-
952+ : If the animation has no associated <a>timeline</a> :
951953:: The <a>current phase</a> is [=timeline inactive phase|inactive=] .
952954
953955: Otherwise,
@@ -991,7 +993,7 @@ an animation, <var>animation</var>, to <var>seek time</var> is as follows:
991993
992994 :: Set <var> animation</var> 's <a>hold time</a> to <var> seek time</var>
993995 :: Set <var> animation</var> 's <a>hold phase</a> to
994- [=timeline active phase=] .
996+ [=timeline active phase|active =] .
995997
996998 : Otherwise,
997999 :: Set <var> animation</var> 's [=start time=] to the result of evaluating
@@ -1022,7 +1024,7 @@ The procedure to <dfn>set the current time</dfn> of an animation,
10221024 complete the pause operation by performing the following steps:
10231025 1. Set <var> animation</var> 's <a>hold time</a> to <var> seek time</var> .
10241026 1. Set <var> animation</var> 's <a>hold phase</a> to
1025- [=timeline active phase=] .
1027+ [=timeline active phase|active =] .
10261028 1. [=Apply any pending playback rate=] to |animation|.
10271029 1. Make <var> animation</var> 's [=start time=] <a>unresolved</a> .
10281030 1. Cancel the <a>pending pause task</a> .
@@ -1046,7 +1048,7 @@ is as follows:
10461048
104710491. If <var> timeline time</var> is <a>unresolved</a> and <var> new start
10481050 time</var> is <a lt="unresolved">resolved</a> , make <var> animation</var> 's
1049- <a>hold time</a> and <a>hold phase </a> both <a>unresolved </a> .
1051+ <a>hold time</a> <a>unresolved </a> and make <a>hold phase </a> unset .
10501052
10511053 <p class=note>
10521054 This preserves the invariant that when we don't have an active timeline it
@@ -1075,8 +1077,8 @@ is as follows:
10751077
10761078 : If <var> new start time</var> is <a lt="unresolved">resolved</a> ,
10771079 :: If <var> animation</var> 's [=playback rate=] is not zero,
1078- make <var> animation</var> 's <a>hold time</a> and <a>hold phase </a> both
1079- <a>unresolved </a> .
1080+ make <var> animation</var> 's <a>hold time</a> <a>unresolved </a> and make
1081+ <a>hold phase </a> unset .
10801082
10811083 : Otherwise (<var> new start time</var> is <a>unresolved</a> ),
10821084 :: Set <var> animation</var> 's <a>hold time</a> to <var> previous current
@@ -1231,11 +1233,13 @@ as CSS Animations [[CSS-ANIMATIONS-1]].
12311233
12321234 : If |has finite timeline| is true,
12331235 :: 1. Set <var> animation</var> 's <a>start time</a> to <var> seek time</var> .
1234- 1. Let |animation|'s [=hold time=] and [=hold phase=] be <a>unresolved</a> .
1236+ 1. Let |animation|'s [=hold time=] be <a>unresolved</a> and
1237+ <a>hold phase</a> be unset.
12351238 1. [=Apply any pending playback rate=] on |animation|.
12361239 : Otherwise,
12371240 :: 1. Set <var> animation</var> 's <a>hold time</a> to <var> seek time</var> .
1238- 1. Set <var> animation</var> 's <a>hold phase</a> to [=timeline active phase=]
1241+ 1. Set <var> animation</var> 's <a>hold phase</a> to
1242+ [=timeline active phase|active=]
12391243
12401244 </div>
12411245
@@ -1289,7 +1293,7 @@ as CSS Animations [[CSS-ANIMATIONS-1]].
12891293 1. Set the [=start time=] of |animation| to |new start time|.
12901294
12911295 1. If |animation|'s [=playback rate=] is not 0, make |animation|' s
1292- [=hold time=] and [=hold phase=] [=unresolved=] .
1296+ [=hold time=] [=unresolved=] and make [=hold phase=] unset .
12931297
12941298 : If |animation|'s [=start time=] is resolved and |animation| has
12951299 a [=pending playback rate=] ,
@@ -1415,10 +1419,10 @@ follows:
14151419 : If |has finite timeline| is true,
14161420 :: Set <var> animation</var> 's <a>start time</a> to <var> seek time</var> .
14171421 : Otherwise,
1418- :: 1. Set <var> animation</var> 's <a>hold time</a> to
1419- <var> seek time</var> .
1420- 1. Set <var> animation</var> 's <a>hold phase</a> to
1421- [=timeline active phase=]
1422+ :: 1. Set <var> animation</var> 's <a>hold time</a> to
1423+ <var> seek time</var> .
1424+ 1. Set <var> animation</var> 's <a>hold phase</a> to
1425+ [=timeline active phase|active =]
14221426
14231427 </div>
14241428
@@ -1611,7 +1615,7 @@ follows:
16111615 <a>associated effect end</a> ,
16121616 :: If <var> did seek</var> is true, let the <a>hold time</a>
16131617 be the value of <var> unconstrained current time</var> and let
1614- <a>hold phase</a> be [=timeline active phase=] .
1618+ <a>hold phase</a> be [=timeline active phase|active =] .
16151619
16161620 If <var> did seek</var> is false, let the <a>hold time</a> be the maximum
16171621 value of <a>previous current time</a> and <a>associated effect end</a>
@@ -1623,7 +1627,7 @@ follows:
16231627 <var> unconstrained current time</var> is less than or equal to 0,
16241628 :: If <var> did seek</var> is true, let the <a>hold time</a>
16251629 be the value of <var> unconstrained current time</var> and let
1626- <a>hold phase</a> be [=timeline active phase=] .
1630+ <a>hold phase</a> be [=timeline active phase|active =] .
16271631
16281632 If <var> did seek</var> is false, let the <a>hold time</a> be the
16291633 minimum value of <a>previous current time</a> and zero and let
@@ -1643,7 +1647,7 @@ follows:
16431647 of <a>timeline</a> associated with <var> animation</var> .
16441648
16451649 1. Let the <a>hold time</a> be <a>unresolved</a> .
1646- 1. Let the <a>hold phase</a> be <a>unresolved</a> .
1650+ 1. Let the <a>hold phase</a> be unset .
16471651
16481652 </div>
16491653
@@ -1791,7 +1795,7 @@ for <var>animation</var> defined below:
17911795 unresolved except in the case when the animation was previously <a
17921796 lt="idle play state"> idle</a> .</div>
17931797
1794- 1. Let the <a>hold phase</a> be <a>unresolved</a> .
1798+ 1. Let the <a>hold phase</a> be unset .
17951799
17961800 1. Cancel the <a>pending pause task</a> .
17971801
@@ -1858,7 +1862,7 @@ as follows:
18581862 source=] .
18591863
186018641. Make <var> animation</var> 's <a>hold time</a> <a>unresolved</a> .
1861- 1. Make <var> animation</var> 's <a>hold phase</a> <a>unresolved</a> .
1865+ 1. Make <var> animation</var> 's <a>hold phase</a> unset .
186218661. Make <var> animation</var> 's [=start time=] <a>unresolved</a> .
18631867
18641868### Speed control ### {#speed-control}
@@ -2421,7 +2425,7 @@ animation effect's <a>local time</a> is not <a>unresolved</a> and
242124251. the effect is <a>associated with an animation</a> <em> and</em> the
24222426 associated <a>animation</a> 's <a>current phase</a> is
24232427 [=timeline after phase|after=] <em> and</em> the <a>local time</a> is equal
2424- to the <a>active-after boundary time</a> , <em> or</em>
2428+ to the <a>active-after boundary time</a> , <em> or</em> uirecjkeiucfjseuejdjijauzsuwqaiuaizjjsujzisaijreuwnghweww
242524291. the <a>animation direction</a> is ‘forwards’ and the <a>local
24262430 time</a> is equal to the <a>active-after boundary time</a> .
24272431
0 commit comments