Skip to content

Commit 9d0e501

Browse files
committed
[css-transitions-2] Simplify and correct generalized transition event dispatch
I decided to just ignore the initial playback rate of the animation since it was getting far too complicated. To do it properly, you'd actually have to change the initial set of events that get dispatched based on the playback rate at a fairly arbitrary moment. Instead, the revised behavior just assumes a positive playback rate for the elapsedTime for the initial set of events.
1 parent b14efef commit 9d0e501

File tree

1 file changed

+37
-32
lines changed

1 file changed

+37
-32
lines changed

css-transitions-2/Overview.bs

Lines changed: 37 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -214,77 +214,82 @@ after the sample as follows:
214214
</thead>
215215
<tbody>
216216
<tr>
217-
<td>idle &rarr; <em>not</em> idle <a
218-
href="#idle-to-active-note">&#x66d;</a></td>
219-
<td><a idl>transitionrun</a></td>
220-
<td>If the <a>animation playback rate</a> is &ge; 0,
221-
use the <a>interval start</a>, otherwise use the
222-
<a>interval end</a>.
223-
</td>
217+
<td>idle &rarr; pending or before</td>
218+
<td>{{transitionrun}}</td>
219+
<td><a>interval start</a></td>
220+
</tr>
221+
<tr>
222+
<td rowspan="2">idle &rarr; active <a
223+
href="#multiple-events-note">&#x66d;</a></td>
224+
<td>{{transitionrun}}</td>
225+
<td rowspan="2"><a>interval start</a></td>
224226
</tr>
225227
<tr>
226-
<td>idle <em>or</em> pending &rarr; active <a
227-
href="#idle-to-active-note">&#x66d;</a></td>
228-
<td><a idl>transitionstart</a></td>
229-
<td>If the <a>animation playback rate</a> is &ge; 0,
230-
use the <a>interval start</a>, otherwise use the
231-
<a>interval end</a>.
232-
</td>
228+
<td>{{transitionstart}}</td>
233229
</tr>
234230
<tr>
235-
<td>before &rarr; active</td>
236-
<td><a idl>transitionstart</a></td>
231+
<td rowspan="3">idle &rarr; after <a
232+
href="#multiple-events-note">&#x66d;</a></td>
233+
<td>{{transitionrun}}</td>
234+
<td rowspan="2"><a>interval start</a></td>
235+
</tr>
236+
<tr>
237+
<td>{{transitionstart}}</td>
238+
</tr>
239+
<tr>
240+
<td>{{transitionend}}</td>
241+
<td><a>interval end</a></td>
242+
</tr>
243+
<tr>
244+
<td>pending or before &rarr; active</td>
245+
<td>{{transitionstart}}</td>
237246
<td><a>interval start</a></td>
238247
</tr>
239248
<tr>
240-
<td rowspan="2">before &rarr; after <a
241-
href="#multiple-events-note">&dagger;</a></td>
242-
<td><a idl>transitionstart</a></td>
249+
<td rowspan="2">pending or before &rarr; after <a
250+
href="#multiple-events-note">&#x66d;</a></td>
251+
<td>{{transitionstart}}</td>
243252
<td><a>interval start</a></td>
244253
</tr>
245254
<tr>
246-
<td><a idl>transitionend</a></td>
255+
<td>{{transitionend}}</td>
247256
<td><a>interval end</a></td>
248257
</tr>
249258
<tr>
250259
<td>active &rarr; after</td>
251-
<td><a idl>transitionend</a></td>
260+
<td>{{transitionend}}</td>
252261
<td><a>interval end</a></td>
253262
</tr>
254263
<tr>
255264
<td>active &rarr; before</td>
256-
<td><a idl>transitionend</a></td>
265+
<td>{{transitionend}}</td>
257266
<td><a>interval start</a></td>
258267
</tr>
259268
<tr>
260269
<td>after &rarr; active</td>
261-
<td><a idl>transitionstart</a></td>
270+
<td>{{transitionstart}}</td>
262271
<td><a>interval end</a></td>
263272
</tr>
264273
<tr>
265274
<td rowspan="2">after &rarr; before <a
266-
href="#multiple-events-note">&dagger;</a></td>
267-
<td><a idl>transitionstart</a></td>
275+
href="#multiple-events-note">&#x66d;</a></td>
276+
<td>{{transitionstart}}</td>
268277
<td><a>interval end</a></td>
269278
</tr>
270279
<tr>
271-
<td><a idl>transitionend</a></td>
280+
<td>{{transitionend}}</td>
272281
<td><a>interval start</a></td>
273282
</tr>
274283
<tr>
275284
<td><em>not</em> idle <em>or</em> after &rarr; idle</td>
276-
<td><a idl>transitioncancel</a></td>
285+
<td>{{transitioncancel}}</td>
277286
<td>The <a>active time</a> of the animation at the moment it was cancelled
278287
calculated using a <a>fill mode</a> of both.</td>
279288
</tr>
280289
</tbody>
281290
</table>
282291

283-
<p id="idle-to-active-note">&#x66d; If the transition phase changes from
284-
&lsquo;idle&rsquo; to &lsquo;active&rsquo; then <em>both</em> {{transitionrun}}
285-
run and {{transitionstart}} events are queued, in that order.</p>
286-
287-
<p id="multiple-events-note">&dagger; Where multiple events are listed for
292+
<p id="multiple-events-note">&#x66d; Where multiple events are listed for
288293
a state change, all events are dispatched in the order listed and in immediate
289294
succession.</p>
290295

0 commit comments

Comments
 (0)