[css-transitions] Formal definition of canceling and interrupting

Today I made some substantive edits to the transitions spec to fix
the remaining substantive issue listed in the body of the spec, on
defining canceling of transitions.

In particular, I rewrote much of the section on starting of
transitions at http://dev.w3.org/csswg/css-transitions/#starting to
define when transitions are canceled mid-run.  This required
introducing a new concept (the after-transition style) and making
the after-change style depend on the after-transition style from the
parent.  I believe this concept is needed to properly cancel
transitions running simultaneously on both ancestors and
descendants.  However, it means that transition starting is (again,
I think) required to be interleaved with the process of doing style
change computation over a tree, since the starting of transitions on
a child depends on a style from the parent that in turn depends on
which transitions on the parent were canceled.

I also added a short section on completion of transitions:
http://dev.w3.org/csswg/css-transitions/#complete

I'd appreciate feedback on these changes.  I also hope to provide
some myself, as I plan to try implementing at least part of them
(at least the after-transition style concept) shortly.

I'd also appreciate more general review of the current state of the
spec.  Given that there's a publishing moratorium coming up
(December 19 - January 5), I'd somewhat optimistically say that I'd
like to move the spec to new-process CR in early January.  I expect
there are still errors, but I'm expecting mostly the sort of errors
that require implementation feedback to discover.

-David

-- 
𝄞   L. David Baron                         http://dbaron.org/   𝄂
𝄢   Mozilla                          https://www.mozilla.org/   𝄂
             Before I built a wall I'd ask to know
             What I was walling in or walling out,
             And to whom I was like to give offense.
               - Robert Frost, Mending Wall (1914)

Received on Wednesday, 10 December 2014 00:04:58 UTC