Re: [web-animations] Request to publish next WD of Web Animations

I fully support publishing another WD.

I also think grouping is super useful for web authors and would
hate to see it dropped to a Level 2 spec - we should revisit those
discussions after the next WD, especially in light of developer
comments that seem to require our grouping primitives to solve
their use cases.

Alex

--Original Message--:
>Dear all,
>
>The editors of the Web Animations specification would like to publish 
>another Working Draft based on the current Editor's Draft. A (very long) 
>list of changes is included at the end of this mail. While there are 
>still a number of planned changes we think another working draft is well 
>overdue.
>
>Please see the proposed working draft here:
>
>   http://drafts.fxtf.org/web-animations/WD-web-animations-20140605/
>
>There has been interest in deferring some functionality such as 
>animation groups into a Level 2 specification. This would greatly 
>simplify the current specification. We plan to do this shortly after 
>publishing the next WD.
>
>Other changes anticipated after this next WD include:
>
>   * Allowing new animations to be timed from when they first render, 
>rather than the current time
>   * Providing a better API for accessing computed timing
>   * Switching to Bikeshed (so named anchors into the ED actually work)
>   * Addressing remaining TAG feedback
>
>We plan to publish on June 5 unless there are any objections. Please 
>send feedback to public-fx@w3.org.
>
>Best regards,
>
>Brian
>
>
>
>The following changes have been made since the 25 June 2013 Working Draft.
>
>* Changed the basic unit of time from seconds to milliseconds.
>* Altered the zero time for the document timeline to correspond to the 
>navigationStart moment defined by [NAVIGATION-TIMING].
>* Altered the definition of effective current time.
>* Removed the ‘time drift’ property of players and redefined play 
>control algorithms to simply adjust the player start time.
>* Introduced limiting behavior to players so that the current time 
>behaves more like a DVD or cassette player.
>* Removed timing events and added player events instead.
>* Renamed timed items to animation nodes.
>* Introduced an end delay property to animation nodes.
>* Reworked the description of animation node states to include phases as 
>well. Renamed the active state to the in play state.
>* Changed the behavior of fill modes so that children that are clipped 
>part-way through their active interval by a parent animation group only 
>fill if they have the corresponding fill mode set.
>* Fixed a bug in the calculation of the current iteration for 
>zero-length iteration durations.
>* Added extra wording so that an animation node with a step timing 
>function whose transition point coincides with either end of the active 
>interval produces the expected value when filling.
>* Fixed a bug in the calculation of the transformed time so that 
>children of groups with infinite duration will play.
>* Fixed a bug in the calculation of the time fraction for zero-length 
>iteration durations (section 3.14.1 Calculating the time fraction).
>* Clarified behavior in a number of cases where a value of infinity may 
>be multiplied with zero.
>* Renamed timing groups, animation groups. Parallel timing groups are 
>now simply animation groups, and sequence timing groups are now 
>animation sequences.
>*  Rewrote and re-organized most of the animation model section (see 
>section 4. Animation model) to provide greater internal consistency. CSS 
>properties are now animatable by default and procedures for 
>interpolation, addition, and distance computation are now defined for 
>all cases (see section 4.1.2 Procedures for animating properties).
>* Renamed the target element of an animation to the animation target.
>* Made the prioritization of animtions no longer dependent on the player 
>start time (see section 4.2.1 The animation stack).
>* Made the custom animation priority specific to a player and renamed it 
>to the custom player priority.
>* Made the composite operation a property of all animation effects.
>* Added the accumulate composite operation.
>* Replaced the accumulation operation with an iteration composite 
>operation on animation effects.
>* Added per-keyframe timing functions.
>* Replaced paced timing functions with spacing behavior that can either 
>evenly distribute values or space them to maintain an even rate of change.
>* Added spacing modes, spacing points, and point offsets to motion path 
>animation effects in order to support all the features of SVG's 
>animateMotion element.
>* Clarified the conditions for calling custom effects.
>* Removed custom effect priorities.
>* Renamed the Timeline interface to AnimationTimeline.
>* Removed both versions of toTimelineTime from the AnimationTimeline 
>interface.
>* Renamed getCurrentPlayers on the AnimationTimeline interface to 
>getAnimationPlayers.
>* Renamed Player interface to AnimationPlayer.
>   Added onfinish to the AnimationPlayer interface as the event handler 
>for the new finish player event and made the AnimationPlayer interface 
>inherit from EventTarget.
>* Added the following members to the AnimationPlayer interface:
>  - finished
>  - cancel()
>  - finish()
>  - play()
>  - pause()
>  - reverse()
>* Made the paused member of the AnimationPlayer interface readonly.
>* Renamed the TimedItem interface to AnimationNode.
>* Removed the event handlers from AnimationNode since timing events have 
>been replaced with player events. Similarly, made the AnimationNode 
>interface no longer inherit from EventTarget.
>* Marked AnimationNode.player as at risk.
>* Renamed the specified attribute on AnimationNode to timing.
>* Renamed the Timing interface to AnimationTiming and likewise the 
>TimingInput dictionary to AnimationTimingInput.
>* Renamed the following members of the AnimationTiming interface and 
>AnimationTimingInput dictionary:
>    iterationDuration → duration
>    startDelay → delay
>    fillMode → fill
>    iterationCount → iterations
>    timingFunction → easing
>* Removed the activeDuration member of the AnimationTimingInput 
>dictionary and AnimationTiming interface and introduced endDelay to both.
>* Introduced an auto value for FillMode and made it the default value 
>for fill on AnimationTimingInput.
>* Added timing function syntax directly to this specification rather 
>than referring to [CSS3-TRANSITIONS].
>* Removed the abstract TimingGroup interface and renamed ParGroup to 
>AnimationGroup.
>* Renamed SeqGroup to AnimationSequence and made it inherit from 
>AnimationGroup.
>* Changed the type of the effect argument to the Animation constructor 
>and the Animatable.animate method to object? and defined its processing.
>* Removed null as a possible value for the timing parameter of the 
>AnimationGroup, AnimationSequence and Animation constructors and the 
>Animatable.animate method.
>* Made the target member of the Animation interface no longer readonly.
>* Removed the AnimationTarget typedef and introduced the Animatable 
>interface in its place.
>* Made Animatable.animate return an AnimationPlayer instead of an Animation.
>* Marked Animatable.getCurrentAnimations as at risk.
>* Moved the composite member of KeyframeEffect and MotionPathEffect to 
>the base class, AnimationEffect.
>* Renamed KeyframeAnimationEffect to KeyframeEffect.
>* Changed the constructor for KeyframeEffect to take a 
>KeyframeEffectOptions dictionary object.
>* Added a spacing member to both KeyframeEffect and 
>KeyframeEffectOptions to specify spacing behavior.
>* Made getFrames on KeyframeEffect return the computed keyframe offset 
>as computedOffset and apply the normalization of keyframes defined in 
>section 5.14.6 Normalizing a sequence of keyframes.
>* Introduced the ComputedKeyframe dictionary for representing the return 
>values from KeyframeEffect.getFrames.
>* Removed the OneOrMoreKeyframes typedef since it is no longer a valid 
>WebIDL union. Replaced useage of OneOrMoreKeyframes with object and 
>defined its processing.
>* Made the normalization of keyframes no longer fill in the offset of a 
>keyframe. This is now incorporated in section 4.3.1 Spacing keyframes 
>which is now a core part of the model.
>* Defined the procedure used for iterating of the properties of a passed 
>in keyframe object as using [[Enumerate]].
>* Made the normalization of keyframes sort keyframes if all keyframe 
>offset are specified or otherwise throw an exception if the frames are 
>not loosely sorted by offset and not all offsets are specified since the 
>desired result in this case is ambiguous.
>* Added the easing member to the Keyframe dictionary.
>* Renamed path animation effects to motion path animation effects and 
>likewise PathAnimationEffect to MotionPathEffect.
>* Changed the constructor for MotionPathEffect to take a 
>MotionPathEffectOptions dictionary object.
>* Added the spacing member to the MotionPathEffect interface.
>* Replaced the CustomEffect callback interface with the EffectCallback 
>callback function and replaced the currentIteration and target 
>parameters with the Animation object that is being sampled.
>* Renamed getCurrentPlayers on the Element interface to getAnimationPlayers.
>* Removed the PseudoElementReference interface to use the PseudoElement 
>interface from CSSOM instead.
>* Revised section 5.23 Script execution and live updates to the model so 
>that computed style reflects the current state of the model.
>* Clarified the interaction between samples of the timing model and 
>requestAnimationFrame callbacks.
>
>
>

Received on Wednesday, 28 May 2014 12:56:26 UTC