Hi Ian,This point should be improved in the specification. It is unclear for me how the final flattened tree (FFT) is used in a complete application (not just an XBL processor). I found three sentences about how the FFT is used. Those are: "The final flattened tree determines how CSS properties are inherited. " "The rendering is performed using the final flattened tree." (BTW this sentence should not be in a CSS specific section as it applies to rendering in general, i.e. even for UA not supporting CSS) "Events must flow through the final transformed content model" These sentences describe the behavior for cascading, rendering, interactivity, but clearly the specification is lacking a part a similar sentence for timing/animation behavior.
If as you suggest, even if an animation element is not assigned to a content element in the binding, it still animate, you have two problems: - first, inconsistency with the general rendering rule. The general rule in XBL for rendering is: if a child element of a bound element is not assigned to content element (i.e. not part of the final flattened tree), it is not rendered. One could expect the similar behavior: if a child element of a bound element is not assigned to a content element, and it is a timed element (animation or media), it is not animated. - second, you wouldn't be able to design a binding that removes an animation. Consider the following example, a rect whose color is animated. Suppose that I apply a binding to all rectangles to remove all sub-animations for whatever reasons (say I don't like animated rectangles ...).
<rect …>
<animate/>
</rect>
With what is currently suggested, this wouldn't be possible.
I would remove "the direct children of the bound element", and say that: - only the ones in the <animations> element would apply to the bound element. - and that the ones in the shadow tree appy to the parent of the bound element. I don't understand the difference between the handling of events and the handling of animations. Handling of events would be described in the XBL spec while animations would be in a different spec. The <handlers> element and the <animations> elements are very much alike.By keeping these features in a separate specification, they can be updated independently of the XBL specification itself, enabling faster turnaround and a more modular approach. Not all will support events either.Keeping the XBL2 specification smaller is also one of our design goals, as we would like to allow more implementations to help XBL2 exit CR, and not all those implementations will necessarily support SVG and animations. Cyril |
- [XBL] Animation element targetting Cameron McCormack
- Re: [XBL] Animation element targetting Ian Hickson
- Re: [XBL] Animation element targetting Doug Schepers
- Re: [XBL] Animation element targetting Arthur Barstow
- Re: [XBL] Animation element targetting Doug Schepers
- Re: [XBL] Animation element targetting Cameron McCormack
- Re: [XBL] Animation element targetting Cameron McCormack
- Re: [XBL] Animation element targetting Cyril Concolato
- Re: [XBL] Animation element targetting Ian Hickson
