- From: Brian Birtles <bbirtles@mozilla.com>
- Date: Thu, 18 Jun 2015 16:24:09 +0900
- To: "public-fx@w3.org" <public-fx@w3.org>
- CC: "www-style@w3.org" <www-style@w3.org>, 'www-svg' <www-svg@w3.org>
Dear all, The editors of the Web Animations specification would like to publish another Working Draft based on the current Editor's Draft.[1] A (rather long) list of changes is included at the end of this mail. We plan to publish on July 2 unless there are any objections. Best regards, Brian [1] http://w3c.github.io/web-animations/ The following changes have been made since the 5 June 2014 Working Draft: * Rewrote 1.1 Use cases to provide specific code examples and describe scenarios that do not involve using timing groups which have been deferred to a subsequent level of this specification. * Added definition of unresolved time values. * Introduced document timelines. * Renamed "not started" timelines as inactive timelines. * Renamed animation players to animations (what were previously referred to as animations are now keyframe effects). * Made the animation sequence number increment on each transition out of the idle state (not on creation). * Made the association between an animation and a timeline optional. * Removed the concepts of effective timeline time and effective current time. * Renamed the source content of an animation (previously, player), to its target effect. * Removed the non-normative description of seeking behavior. * Added the current finished promise and current ready promise objects to animations. * Modified the procedure to finish an animation so that pause state is not changed by finishing. * Added animation play states. * Removed player events. * Rewrote most of the algorithms for animations to accommodate asynchronous play/pause/reverse operations. * Renamed animation nodes to animation effects and what were previously known as an animations to keyframe effects. * Removed the start time specific to an animation effect since it is always zero in the absence of groups effects. * Removed the term "inherited time" since, in the absence of animation effect-specific start times, local time is equivalent to "inherited time". * Renamed the "time fraction" to iteration progress. * Deferred group effects (previously known as animation groups) to a subsequent level of this specification. Deferring this feature also lead to the following simplifications: * Deferred the animation effect-specific playback rate since it was considered to be not particularly useful without group effects and potentially confusing (since animationss also have an animation playback rate). * Removed the "repeated duration" definition since it is redundant in the absence of the animation effect-specific playback rate. * Renamed intermediate animation values to effect values. * Added the concept of animation types and clarified prioritization in a way that can be easily extended by CSS Animations and CSS Transitions. * Removed motion path animation effects since this functionality can be achieved using the Motion Path Module. * Deferred custom effects to a subsequent level of this specification. * Defined that unresolved time values are represented by null. * Added the DocumentTimeline interface. * Renamed the getAnimationPlayers method of the AnimationTimeline interface to getAnimations(). * Made the getAnimations() method on the AnimationTimeline and Animatable interfaces return all animations that are either current or in effect. * Moved the play() method of AnimationTimeline to a subsequent level of this specification. * Renamed the AnimationPlayer interface to Animation. * Updated the Animation interface: * Added the Animation() constructor. * Made startTime nullable. * Added the playState member and corresponding AnimationPlayState enum. * Added the ready and finished Promise attributes. * Removed the paused and finished boolean attributes. * Removed the onfinish attribute. * Renamed the source member to Animation/effect. * Added a read-only version of interfaces for animation effects and related interfaces as follows: * Animation effects are now represented by the AnimationEffectReadOnly interface. * Animation effects are now represented by the KeyframeEffectReadOnly and Animation interfaces. * Keyframe effects are now represented by the KeyframeEffectReadOnly and KeyframeEffect interfaces. * A number of references to Animation and KeyframeEffect have been updated to refer to their read-only equivalents since the read-only interface is the super-interface in each case * Fixed the grammar for <cubic-bezier-timing-function> to match CSS Transitions. * Introduced the ComputedTimingProperties dictionary and AnimationEffectTimingReadOnly interface. * Moved computed timing from AnimationEffectReadOnly to a computedTiming attribute of type ComputedTimingProperties. * Removed the player attribute from the AnimationEffectReadOnly interface. * Exposed the iteration progress (was "time fraction") to script as effect.computedTiming.progress. * Made the procedure defined in '5.10.2 Processing a frames argument' throw an exception if the keyframes are not loosely sorted by offset or if there are any keyframes with an offset outside the range [0, 1]. * Removed paced as a valid value for KeyframeEffect's spacing attribute. * Added PropertyIndexedKeyframe as a convenient way of specifying a list of property values. * Added an opaque, immutable representation of SharedKeyframeLists. * Added special handling for animating SVG's offset attribute on stop elements by using the "svgOffset" property name. * Removed the MotionPathEffect interface now that motion path animation effects have been removed. * Removed the getCurrentAnimations method from the Animatable interface (which returned what are now called animation *effects*). * Rewrote the section previously titled, "Script execution and live updates to the model" as the much simpler '5.21 Model liveness' since many of the requirements there can be implied from requirements elsewhere.
Received on Thursday, 18 June 2015 07:24:38 UTC