mirror of
https://github.com/LadybirdBrowser/ladybird
synced 2026-04-26 01:35:08 +02:00
We don't actually apply the `animation-timeline` property yet so this is non-functional for now
42 lines
1.6 KiB
Plaintext
42 lines
1.6 KiB
Plaintext
#import <Animations/AnimationEffect.idl>
|
|
#import <Animations/AnimationTimeline.idl>
|
|
#import <DOM/EventTarget.idl>
|
|
|
|
// https://www.w3.org/TR/web-animations-1/#the-animation-interface
|
|
[Exposed=Window]
|
|
interface Animation : EventTarget {
|
|
constructor(optional AnimationEffect? effect = null,
|
|
[ExplicitNull] optional AnimationTimeline? timeline);
|
|
|
|
attribute DOMString id;
|
|
attribute AnimationEffect? effect;
|
|
[ImplementedAs=timeline_for_bindings] attribute AnimationTimeline? timeline;
|
|
[ImplementedAs=start_time_for_bindings] attribute CSSNumberish? startTime;
|
|
[ImplementedAs=current_time_for_bindings] attribute CSSNumberish? currentTime;
|
|
attribute double playbackRate;
|
|
[ImplementedAs=play_state_for_bindings] readonly attribute AnimationPlayState playState;
|
|
readonly attribute AnimationReplaceState replaceState;
|
|
readonly attribute boolean pending;
|
|
readonly attribute Promise<Animation> ready;
|
|
readonly attribute Promise<Animation> finished;
|
|
|
|
attribute EventHandler onfinish;
|
|
attribute EventHandler oncancel;
|
|
attribute EventHandler onremove;
|
|
|
|
undefined cancel();
|
|
undefined finish();
|
|
undefined play();
|
|
undefined pause();
|
|
undefined updatePlaybackRate(double playbackRate);
|
|
undefined reverse();
|
|
undefined persist();
|
|
[FIXME, CEReactions] undefined commitStyles();
|
|
};
|
|
|
|
// https://www.w3.org/TR/web-animations-1/#the-animationplaystate-enumeration
|
|
enum AnimationPlayState { "idle", "running", "paused", "finished" };
|
|
|
|
// https://www.w3.org/TR/web-animations-1/#the-animationreplacestate-enumeration
|
|
enum AnimationReplaceState { "active", "removed", "persisted" };
|