mirror of
https://github.com/servo/servo.git
synced 2025-08-02 04:00:32 +01:00
Added AudioTrack, AudioTrackList, VideoTrack, VideoTrackList, and TrackEvent interfaces
This commit is contained in:
parent
4d8d54fc00
commit
cac4aa56f7
19 changed files with 974 additions and 138 deletions
14
components/script/dom/webidls/AudioTrack.webidl
Normal file
14
components/script/dom/webidls/AudioTrack.webidl
Normal file
|
@ -0,0 +1,14 @@
|
|||
/* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
|
||||
|
||||
// https://html.spec.whatwg.org/multipage/#audiotrack
|
||||
|
||||
[Exposed=Window]
|
||||
interface AudioTrack {
|
||||
readonly attribute DOMString id;
|
||||
readonly attribute DOMString kind;
|
||||
readonly attribute DOMString label;
|
||||
readonly attribute DOMString language;
|
||||
attribute boolean enabled;
|
||||
};
|
16
components/script/dom/webidls/AudioTrackList.webidl
Normal file
16
components/script/dom/webidls/AudioTrackList.webidl
Normal file
|
@ -0,0 +1,16 @@
|
|||
/* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
|
||||
|
||||
// https://html.spec.whatwg.org/multipage/#audiotracklist
|
||||
|
||||
[Exposed=Window]
|
||||
interface AudioTrackList : EventTarget {
|
||||
readonly attribute unsigned long length;
|
||||
getter AudioTrack (unsigned long index);
|
||||
AudioTrack? getTrackById(DOMString id);
|
||||
|
||||
attribute EventHandler onchange;
|
||||
attribute EventHandler onaddtrack;
|
||||
attribute EventHandler onremovetrack;
|
||||
};
|
|
@ -59,8 +59,8 @@ interface HTMLMediaElement : HTMLElement {
|
|||
[CEReactions] attribute boolean defaultMuted;
|
||||
|
||||
// tracks
|
||||
// readonly attribute AudioTrackList audioTracks;
|
||||
// readonly attribute VideoTrackList videoTracks;
|
||||
readonly attribute AudioTrackList audioTracks;
|
||||
readonly attribute VideoTrackList videoTracks;
|
||||
readonly attribute TextTrackList textTracks;
|
||||
TextTrack addTextTrack(TextTrackKind kind, optional DOMString label = "", optional DOMString language = "");
|
||||
};
|
||||
|
|
15
components/script/dom/webidls/TrackEvent.webidl
Normal file
15
components/script/dom/webidls/TrackEvent.webidl
Normal file
|
@ -0,0 +1,15 @@
|
|||
/* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
|
||||
|
||||
// https://html.spec.whatwg.org/multipage/#the-trackevent-interface
|
||||
|
||||
[Exposed=Window,
|
||||
Constructor(DOMString type, optional TrackEventInit eventInitDict)]
|
||||
interface TrackEvent : Event {
|
||||
readonly attribute (VideoTrack or AudioTrack or TextTrack)? track;
|
||||
};
|
||||
|
||||
dictionary TrackEventInit : EventInit {
|
||||
(VideoTrack or AudioTrack or TextTrack)? track = null;
|
||||
};
|
14
components/script/dom/webidls/VideoTrack.webidl
Normal file
14
components/script/dom/webidls/VideoTrack.webidl
Normal file
|
@ -0,0 +1,14 @@
|
|||
/* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
|
||||
|
||||
// https://html.spec.whatwg.org/multipage/#videotrack
|
||||
|
||||
[Exposed=Window]
|
||||
interface VideoTrack {
|
||||
readonly attribute DOMString id;
|
||||
readonly attribute DOMString kind;
|
||||
readonly attribute DOMString label;
|
||||
readonly attribute DOMString language;
|
||||
attribute boolean selected;
|
||||
};
|
17
components/script/dom/webidls/VideoTrackList.webidl
Normal file
17
components/script/dom/webidls/VideoTrackList.webidl
Normal file
|
@ -0,0 +1,17 @@
|
|||
/* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
|
||||
|
||||
// https://html.spec.whatwg.org/multipage/#videotracklist
|
||||
|
||||
[Exposed=Window]
|
||||
interface VideoTrackList : EventTarget {
|
||||
readonly attribute unsigned long length;
|
||||
getter VideoTrack (unsigned long index);
|
||||
VideoTrack? getTrackById(DOMString id);
|
||||
readonly attribute long selectedIndex;
|
||||
|
||||
attribute EventHandler onchange;
|
||||
attribute EventHandler onaddtrack;
|
||||
attribute EventHandler onremovetrack;
|
||||
};
|
Loading…
Add table
Add a link
Reference in a new issue