Server Notice:

hide

Public Pad Latest text of pad QTzDpaPPRY Saved Dec 3, 2012

 
Meeting 33:
 
Web animations minutes, 3 / 4 December 2012
 
Present: Dmitry Baranovskiy, Steve Block, Shane Stephens, Douglas Stockwell, Brian Birtles
 
Agenda:
 
1. Status update
2. Where to from here
3. Animation groups
4. Animation timelines / triggers
5. Animation stack & Keyframe animations
 
1. STATUS UPDATE
================
 
Brian:
* Lots of renaming stuff
* Tweaks to make zero-duration animations easier to create
* Removed TimingFuncCallback
 
Shane, Steve, Doug:
* Polyfill implementation work
 
2. WHERE TO FROM HERE
======================
(Shane)
 
Agreed we want to prioritise the CSS and SVG integration work
 
* Discussed briefly the importance of templates
Agreed we can possibly drop them from v1 but will consider further
 
Can we make the ED more of a "living spec"? Include some v2 features that are clearly marked / filtered out of the FPWD version.
 
Some discussion about the value of keeping a single living spec from which we publish different versions vs having a v1 spec plus an extra dumping ground for v2 features and annotations in the v1 spec indicating how those features will be integrated
Needs some more consideration
 
FPWD - when? Can we use the FXTF telecon times to start working towards it?
  Work as if we're going to be FPWD-ready by end 2012, but realistically as long as we have it in time for the CSS and SVG F2F in Feb we should be ok
  Wait until FPWD-ready before using FXTF times
F2F in Sydney after SVGWG meeting?
  Yes, sometime in the week of 11 Feb 2013
Browser Miniconf @ LCA (end of Jan)
  Shane hopes to present about Web Animations
 
3. ANIMATION GROUPS
===================
(Shane)
 
I  mentioned last meeting that there were some problems with grouping and merging of animation effects. I have a solution which basically involves automatically grouping within containers. There's a doc here describing  the problem, some solution approaches, and my preferred approach: http://www.w3.org/Graphics/fx/wiki/Web_Animations/Issues/Grouping_of_Animations
 
Brian:  I had a look. I like the parameterisation of merge. I wonder why merge  has to use the parent container's duration. Given recent pushback  regarding Web Anim's apparent complexity, I wonder how critical merging  is for v1.
 
Discussed possibility of dropping merging from v1. The difficulty is that to-animation is essentially a merge. Discussed the possibility of still implementing to-animation as a merge but not exposing merging in general through the API in v1.
 
We will resume further discussion of merging at our next F2F
 
4. ANIMATION TIMELINES / TRIGGERS
===============================
(Shane)
 
Everyone to read through both (a) Shanes notes about time sources and triggers and (b) Brians notes below about Integration with Media for discussion on Friday
(b) https://etherpad.mozilla.org/MzLg1iUKv4 point 3, 'Integration with media'
 
5. ANIMATION STACK & KEYFRAME ANIMATIONS
========================================
(Shane)
 
Keyframe  animations rely on a "base value" when no initial or no final keyframe is specified. Problem is this isn't defined anywhere:
 
The intention is to be able to use a "replace" animation with a single keyframe for an SVG-style "to" animation. But this breaks the intention of "replace" quite a bit (it should completely ignore everything underneath it). So we could:
a) sample the style when a one-keyframe animation is _created_ and use for the base value
b) sample the underlying style on each frame for one-keyframe animations, and use this for the base value
c)  instead use "merge" animations with a constant destination value for an  SVG-style "to" animation (and reverse this / augment merge slightly to  support "from" animations)
 
-> SVG "to" animations will become merge:
<animate to="100px" attributeName="length"> new Anim(..., {length: ["100px", "100px"], operation: "merge"}, ...)
 
-> CSS keyframe parsing
omitted 0% and 100% values are snapshotted at parse time.
 
-> new Anim(..., {length: "100px"}, ...)
should turn into {length: ["100px", "100px"], operation: "merge"}
 
-> new Anim(..., {length: ["100px"]}, ...)
should turn into {length: ["0px", "100px"], operation: "replace"}
 
We generally like the merge approach for to animations but, what is intuitive when you have keyframes that dont cover the entire span from 0% to 100% is not yet clear.
 
Shane to put together some ideas for what to do when there is no keyframe covering a given time.
 - Raphaël starts from the base value and finishes at the last keyframe
 
 
Next meeting: Thurs Dec 6, 17:30 PST / Fri 7 Dec 12:30 AEDST  / Fri 7 Dec 10:30 JST @ https://etherpad.mozilla.org/MzLg1iUKv4