Index: Source/core/animation/Animation.idl |
diff --git a/Source/core/animation/Animation.idl b/Source/core/animation/Animation.idl |
index 2da00b3bac00cb93fe8f2ab90e9bb0660c6eb868..cb339a2b03d9e2dc72fa0c1ac3f78f92e2544f67 100644 |
--- a/Source/core/animation/Animation.idl |
+++ b/Source/core/animation/Animation.idl |
@@ -28,18 +28,28 @@ |
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
*/ |
-// http://www.w3.org/TR/web-animations/#the-animation-interface |
+// https://w3c.github.io/web-animations/#animation |
-// TODO(dstockwell): This interface has been renamed to KeyframeEffect in the |
-// latest spec: |
-// https://w3c.github.io/web-animations/#the-keyframeeffect-interfaces |
+enum AnimationPlayState { "idle", "pending", "running", "paused", "finished" }; |
[ |
- // FIXME: the third argument should be "optional (unrestricted double or AnimationTimingProperties) timing". |
- Constructor(Element? target, sequence<Dictionary> keyframes, optional unrestricted double timing), |
- Constructor(Element? target, sequence<Dictionary> keyframes, AnimationTimingProperties timing), |
- RaisesException=Constructor, |
- RuntimeEnabled=WebAnimationsAPI, |
- TypeChecking=Interface, |
-] interface Animation : AnimationNode { |
+ ActiveDOMObject, |
+ NoInterfaceObject, |
+] interface Animation : EventTarget { |
+ // TODO(dstockwell): Add timeline property. |
+ // TODO(dstockwell): Rename source to effect. |
+ [RuntimeEnabled=WebAnimationsAPI] attribute AnimationEffectReadOnly? source; |
+ [Measure] attribute double? startTime; |
+ [Measure] attribute double? currentTime; |
+ [Measure] attribute double playbackRate; |
+ [Measure] readonly attribute AnimationPlayState playState; |
+ [Measure, RaisesException] void finish(); |
+ [Measure] void play(); |
+ [Measure] void pause(); |
+ [Measure] void reverse(); |
+ |
+ [Measure] void cancel(); |
+ [Measure] attribute EventHandler onfinish; |
+ [RuntimeEnabled=WebAnimationsAPI, CallWith=ScriptState] readonly attribute Promise<Animation> finished; |
+ [RuntimeEnabled=WebAnimationsAPI, CallWith=ScriptState] readonly attribute Promise<Animation> ready; |
}; |