As of 19 July or thereabouts, I intend to turn on the Web Animations core
interfaces by default on all platforms.

It has been developed behind the dom.animations-api.core.enabled preference.

What is already shipping?

* Animation interface with playback methods
* Animation finish / cancel events
* Element.animate() method

What does this intent add to that?

* Animation.ready / Animation.finished Promises
* Animation.effect member
* KeyframeEffect and AnimationEffect interfaces

What is *not* included in this intent?

* Animations with implicit 0% / 100% keyframes
  (dom.animations-api.implicit-keyframes.enabled)
  - This feature can easily lead to excessive memory usage which we
    should address before shipping this.
* Animation composite modes (additive animation)
  (dom.animations-api.compositing.enabled)
  - We need to properly specify _how_ each property type adds together
    before shipping this. I plan to work with fantasai on specifying
    this in September.
* Animation timelines
  (dom.animations-api.timelines.enabled)
  - Although it might be useful to ship a read-only version of this
    soon, we should clarify how AnimationWorklet will integrate with
    timelines before shipping a writable version of this API.
* Element.getAnimations() / Document.getAnimations()
  (dom.animations-api.getAnimations.enabled)
  - How CSS animations / transitions are reflected in the API needs to
    be specified before we can ship this. The spec for the
    CSSPseudoElement interface should also be more stable.

Bug to turn on by default: https://bugzilla.mozilla.org/
show_bug.cgi?id=1476158

This feature was previously discussed in this "intent to implement" thread:
https://groups.google.com/d/topic/mozilla.dev.platform/
3EXBgp26rJs/discussion

What is the status of other UAs?

* Chrome:
  - Already ships the same subset as we do
  - Implements most of the additional features covered by this intent
    guarded behind the "Experimental Web Platform features" flag.
    The only notable exceptions are making KeyframeEffect.target
    writeable and some updates to reflect recent changes to timing
    interfaces.
* Safari:
  - Implements most of the features covered by this intent in the latest
    Technology Preview. The main cause of wpt test failures is that
    Safari has not yet updated to some recent changes to timing
    interfaces.
* Edge:
  - Roadmap Priority: Medium[1]

Best regards,

Brian

[1] https://developer.microsoft.com/en-us/microsoft-edge/platform/status/
webanimationsjavascriptapi/
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to