Index: third_party/WebKit/LayoutTests/external/wpt/html/dom/resources/interfaces.idl |
diff --git a/third_party/WebKit/LayoutTests/external/wpt/html/dom/resources/interfaces.idl b/third_party/WebKit/LayoutTests/external/wpt/html/dom/resources/interfaces.idl |
new file mode 100644 |
index 0000000000000000000000000000000000000000..8ad5abcdff387afd75c5bade1b33bbce1c825434 |
--- /dev/null |
+++ b/third_party/WebKit/LayoutTests/external/wpt/html/dom/resources/interfaces.idl |
@@ -0,0 +1,2282 @@ |
+// HTML IDLs |
+typedef (Int8Array or Uint8Array or Uint8ClampedArray or |
+ Int16Array or Uint16Array or |
+ Int32Array or Uint32Array or |
+ Float32Array or Float64Array or |
+ DataView) ArrayBufferView; |
+ |
+[NoInterfaceObject, Exposed=Window] |
+interface HTMLHyperlinkElementUtils { |
+ stringifier attribute USVString href; |
+ readonly attribute USVString origin; |
+ attribute USVString protocol; |
+ attribute USVString username; |
+ attribute USVString password; |
+ attribute USVString host; |
+ attribute USVString hostname; |
+ attribute USVString port; |
+ attribute USVString pathname; |
+ attribute USVString search; |
+ attribute USVString hash; |
+}; |
+ |
+interface HTMLAllCollection { |
+ readonly attribute unsigned long length; |
+ getter Element? item(unsigned long index); |
+ (HTMLCollection or Element)? item(DOMString name); |
+ legacycaller getter (HTMLCollection or Element)? namedItem(DOMString name); |
+}; |
+ |
+interface HTMLFormControlsCollection : HTMLCollection { |
+ // inherits length and item() |
+ getter (RadioNodeList or Element)? namedItem(DOMString name); // shadows inherited namedItem() |
+}; |
+ |
+interface RadioNodeList : NodeList { |
+ attribute DOMString value; |
+}; |
+ |
+interface HTMLOptionsCollection : HTMLCollection { |
+ // inherits item(), namedItem() |
+ attribute unsigned long length; // shadows inherited length |
+ [CEReactions] setter void (unsigned long index, HTMLOptionElement? option); |
+ [CEReactions] void add((HTMLOptionElement or HTMLOptGroupElement) element, optional (HTMLElement or long)? before = null); |
+ [CEReactions] void remove(long index); |
+ attribute long selectedIndex; |
+}; |
+ |
+typedef sequence<any> PropertyValueArray; |
+ |
+[OverrideBuiltins] |
+interface DOMStringMap { |
+ getter DOMString (DOMString name); |
+ setter creator void (DOMString name, DOMString value); |
+ deleter void (DOMString name); |
+}; |
+ |
+typedef (ArrayBuffer or MessagePort) Transferable; |
+ |
+callback FileCallback = void (File file); |
+ |
+enum DocumentReadyState { "loading", "interactive", "complete" }; |
+typedef (HTMLScriptElement or SVGScriptElement) HTMLOrSVGScriptElement; |
+ |
+[OverrideBuiltins] |
+partial /*sealed*/ interface Document { |
+ // resource metadata management |
+ [PutForwards=href, Unforgeable] readonly attribute Location? location; |
+ attribute USVString domain; |
+ readonly attribute USVString referrer; |
+ attribute USVString cookie; |
+ readonly attribute DOMString lastModified; |
+ readonly attribute DocumentReadyState readyState; |
+ |
+ // DOM tree accessors |
+ getter object (DOMString name); |
+ [CEReactions] attribute DOMString title; |
+ [CEReactions] attribute DOMString dir; |
+ [CEReactions] attribute HTMLElement? body; |
+ readonly attribute HTMLHeadElement? head; |
+ [SameObject] readonly attribute HTMLCollection images; |
+ [SameObject] readonly attribute HTMLCollection embeds; |
+ [SameObject] readonly attribute HTMLCollection plugins; |
+ [SameObject] readonly attribute HTMLCollection links; |
+ [SameObject] readonly attribute HTMLCollection forms; |
+ [SameObject] readonly attribute HTMLCollection scripts; |
+ NodeList getElementsByName(DOMString elementName); |
+ readonly attribute HTMLOrSVGScriptElement? currentScript; // classic scripts in a document tree only |
+ |
+ // dynamic markup insertion |
+ [CEReactions] Document open(optional DOMString type = "text/html", optional DOMString replace = ""); |
+ WindowProxy open(USVString url, DOMString name, DOMString features); |
+ [CEReactions] void close(); |
+ [CEReactions] void write(DOMString... text); |
+ [CEReactions] void writeln(DOMString... text); |
+ |
+ // user interaction |
+ readonly attribute WindowProxy? defaultView; |
+ readonly attribute Element? activeElement; |
+ boolean hasFocus(); |
+ [CEReactions] attribute DOMString designMode; |
+ [CEReactions] boolean execCommand(DOMString commandId, optional boolean showUI = false, optional DOMString value = ""); |
+ boolean queryCommandEnabled(DOMString commandId); |
+ boolean queryCommandIndeterm(DOMString commandId); |
+ boolean queryCommandState(DOMString commandId); |
+ boolean queryCommandSupported(DOMString commandId); |
+ DOMString queryCommandValue(DOMString commandId); |
+ |
+ // special event handler IDL attributes that only apply to Document objects |
+ [LenientThis] attribute EventHandler onreadystatechange; |
+ |
+ // also has obsolete members |
+}; |
+Document implements GlobalEventHandlers; |
+Document implements DocumentAndElementEventHandlers; |
+ |
+[NoInterfaceObject] |
+interface ElementContentEditable { |
+ [CEReactions] attribute DOMString contentEditable; |
+ readonly attribute boolean isContentEditable; |
+}; |
+ |
+interface HTMLElement : Element { |
+ // metadata attributes |
+ [CEReactions] attribute DOMString title; |
+ [CEReactions] attribute DOMString lang; |
+ [CEReactions] attribute boolean translate; |
+ [CEReactions] attribute DOMString dir; |
+ [SameObject] readonly attribute DOMStringMap dataset; |
+ |
+ // user interaction |
+ [CEReactions] attribute boolean hidden; |
+ void click(); |
+ [CEReactions] attribute long tabIndex; |
+ void focus(); |
+ void blur(); |
+ [CEReactions] attribute DOMString accessKey; |
+ readonly attribute DOMString accessKeyLabel; |
+ [CEReactions] attribute boolean draggable; |
+ [CEReactions, SameObject, PutForwards=value] readonly attribute DOMTokenList dropzone; |
+ [CEReactions] attribute HTMLMenuElement? contextMenu; |
+ [CEReactions] attribute boolean spellcheck; |
+ void forceSpellCheck(); |
+ |
+ [CEReactions, TreatNullAs=EmptyString] attribute DOMString innerText; |
+}; |
+HTMLElement implements GlobalEventHandlers; |
+HTMLElement implements DocumentAndElementEventHandlers; |
+HTMLElement implements ElementContentEditable; |
+ |
+interface HTMLUnknownElement : HTMLElement { }; |
+ |
+interface HTMLHtmlElement : HTMLElement { |
+ // also has obsolete members |
+}; |
+ |
+interface HTMLHeadElement : HTMLElement {}; |
+ |
+interface HTMLTitleElement : HTMLElement { |
+ attribute DOMString text; |
+}; |
+ |
+interface HTMLBaseElement : HTMLElement { |
+ attribute DOMString href; |
+ attribute DOMString target; |
+}; |
+ |
+[HTMLConstructor] |
+interface HTMLLinkElement : HTMLElement { |
+ [CEReactions] attribute USVString href; |
+ [CEReactions] attribute DOMString? crossOrigin; |
+ [CEReactions] attribute DOMString rel; |
+ // [CEReactions] attribute RequestDestination as; // (default "") XXX TODO |
+ [CEReactions, SameObject, PutForwards=value] readonly attribute DOMTokenList relList; |
+ [CEReactions] attribute DOMString media; |
+ [CEReactions] attribute DOMString nonce; |
+ [CEReactions] attribute DOMString integrity; |
+ [CEReactions] attribute DOMString hreflang; |
+ [CEReactions] attribute DOMString type; |
+ [CEReactions, SameObject, PutForwards=value] readonly attribute DOMTokenList sizes; |
+ [CEReactions] attribute DOMString referrerPolicy; |
+ |
+ // also has obsolete members |
+}; |
+HTMLLinkElement implements LinkStyle; |
+ |
+interface HTMLMetaElement : HTMLElement { |
+ attribute DOMString name; |
+ attribute DOMString httpEquiv; |
+ attribute DOMString content; |
+ |
+ // also has obsolete members |
+}; |
+ |
+interface HTMLStyleElement : HTMLElement { |
+ [CEReactions] attribute DOMString media; |
+ [CEReactions] attribute DOMString nonce; |
+ [CEReactions] attribute DOMString type; |
+}; |
+HTMLStyleElement implements LinkStyle; |
+ |
+interface HTMLBodyElement : HTMLElement { |
+ |
+ // also has obsolete members |
+}; |
+HTMLBodyElement implements WindowEventHandlers; |
+ |
+interface HTMLHeadingElement : HTMLElement { |
+ // also has obsolete members |
+}; |
+ |
+interface HTMLParagraphElement : HTMLElement { |
+ // also has obsolete members |
+}; |
+ |
+interface HTMLHRElement : HTMLElement { |
+ // also has obsolete members |
+}; |
+ |
+interface HTMLPreElement : HTMLElement { |
+ // also has obsolete members |
+}; |
+ |
+interface HTMLQuoteElement : HTMLElement { |
+ attribute DOMString cite; |
+}; |
+ |
+interface HTMLOListElement : HTMLElement { |
+ attribute boolean reversed; |
+ attribute long start; |
+ attribute DOMString type; |
+ |
+ // also has obsolete members |
+}; |
+ |
+interface HTMLUListElement : HTMLElement { |
+ // also has obsolete members |
+}; |
+ |
+interface HTMLLIElement : HTMLElement { |
+ attribute long value; |
+ |
+ // also has obsolete members |
+}; |
+ |
+interface HTMLDListElement : HTMLElement { |
+ // also has obsolete members |
+}; |
+ |
+interface HTMLDivElement : HTMLElement { |
+ // also has obsolete members |
+}; |
+ |
+[HTMLConstructor] |
+interface HTMLAnchorElement : HTMLElement { |
+ [CEReactions] attribute DOMString target; |
+ [CEReactions] attribute DOMString download; |
+ [CEReactions] attribute USVString ping; |
+ [CEReactions] attribute DOMString rel; |
+ [CEReactions, SameObject, PutForwards=value] readonly attribute DOMTokenList relList; |
+ [CEReactions] attribute DOMString hreflang; |
+ [CEReactions] attribute DOMString type; |
+ |
+ [CEReactions] attribute DOMString text; |
+ |
+ [CEReactions] attribute DOMString referrerPolicy; |
+ |
+ // also has obsolete members |
+}; |
+HTMLAnchorElement implements HTMLHyperlinkElementUtils; |
+ |
+interface HTMLDataElement : HTMLElement { |
+ attribute DOMString value; |
+}; |
+ |
+interface HTMLTimeElement : HTMLElement { |
+ attribute DOMString dateTime; |
+}; |
+ |
+interface HTMLSpanElement : HTMLElement {}; |
+ |
+interface HTMLBRElement : HTMLElement { |
+ // also has obsolete members |
+}; |
+ |
+interface HTMLModElement : HTMLElement { |
+ attribute DOMString cite; |
+ attribute DOMString dateTime; |
+}; |
+ |
+interface HTMLPictureElement : HTMLElement {}; |
+ |
+partial interface HTMLSourceElement { |
+ attribute DOMString srcset; |
+ attribute DOMString sizes; |
+ attribute DOMString media; |
+}; |
+ |
+[HTMLConstructor, NamedConstructor=Image(optional unsigned long width, optional unsigned long height)] |
+interface HTMLImageElement : HTMLElement { |
+ [CEReactions] attribute DOMString alt; |
+ [CEReactions] attribute USVString src; |
+ [CEReactions] attribute USVString srcset; |
+ [CEReactions] attribute DOMString sizes; |
+ [CEReactions] attribute DOMString? crossOrigin; |
+ [CEReactions] attribute DOMString useMap; |
+ [CEReactions] attribute boolean isMap; |
+ [CEReactions] attribute unsigned long width; |
+ [CEReactions] attribute unsigned long height; |
+ readonly attribute unsigned long naturalWidth; |
+ readonly attribute unsigned long naturalHeight; |
+ readonly attribute boolean complete; |
+ readonly attribute USVString currentSrc; |
+ [CEReactions] attribute DOMString referrerPolicy; |
+ |
+ // also has obsolete members |
+}; |
+ |
+[HTMLConstructor] |
+interface HTMLIFrameElement : HTMLElement { |
+ [CEReactions] attribute USVString src; |
+ [CEReactions] attribute DOMString srcdoc; |
+ [CEReactions] attribute DOMString name; |
+ [CEReactions, SameObject, PutForwards=value] readonly attribute DOMTokenList sandbox; |
+ [CEReactions] attribute boolean allowFullscreen; |
+ [CEReactions] attribute boolean allowUserMedia; |
+ [CEReactions] attribute boolean allowPaymentRequest; |
+ [CEReactions] attribute DOMString width; |
+ [CEReactions] attribute DOMString height; |
+ [CEReactions] attribute DOMString referrerPolicy; |
+ readonly attribute Document? contentDocument; |
+ readonly attribute WindowProxy? contentWindow; |
+ Document? getSVGDocument(); |
+}; |
+ |
+interface HTMLEmbedElement : HTMLElement { |
+ attribute DOMString src; |
+ attribute DOMString type; |
+ attribute DOMString width; |
+ attribute DOMString height; |
+ Document getSVGDocument(); |
+ |
+ // also has obsolete members |
+}; |
+ |
+interface HTMLObjectElement : HTMLElement { |
+ attribute DOMString data; |
+ attribute DOMString type; |
+ attribute boolean typeMustMatch; |
+ attribute DOMString name; |
+ attribute DOMString useMap; |
+ readonly attribute HTMLFormElement? form; |
+ attribute DOMString width; |
+ attribute DOMString height; |
+ readonly attribute Document? contentDocument; |
+ readonly attribute WindowProxy? contentWindow; |
+ |
+ readonly attribute boolean willValidate; |
+ readonly attribute ValidityState validity; |
+ readonly attribute DOMString validationMessage; |
+ boolean checkValidity(); |
+ boolean reportValidity(); |
+ void setCustomValidity(DOMString error); |
+ |
+ // also has obsolete members |
+}; |
+ |
+interface HTMLParamElement : HTMLElement { |
+ attribute DOMString name; |
+ attribute DOMString value; |
+ |
+ // also has obsolete members |
+}; |
+ |
+interface HTMLVideoElement : HTMLMediaElement { |
+ attribute unsigned long width; |
+ attribute unsigned long height; |
+ readonly attribute unsigned long videoWidth; |
+ readonly attribute unsigned long videoHeight; |
+ attribute DOMString poster; |
+}; |
+ |
+[NamedConstructor=Audio(optional DOMString src)] |
+interface HTMLAudioElement : HTMLMediaElement {}; |
+ |
+interface HTMLSourceElement : HTMLElement { |
+ attribute DOMString src; |
+ attribute DOMString type; |
+ |
+ // also has obsolete members |
+}; |
+ |
+interface HTMLTrackElement : HTMLElement { |
+ attribute DOMString kind; |
+ attribute DOMString src; |
+ attribute DOMString srclang; |
+ attribute DOMString label; |
+ attribute boolean default; |
+ |
+ const unsigned short NONE = 0; |
+ const unsigned short LOADING = 1; |
+ const unsigned short LOADED = 2; |
+ const unsigned short ERROR = 3; |
+ readonly attribute unsigned short readyState; |
+ |
+ readonly attribute TextTrack track; |
+}; |
+ |
+enum CanPlayTypeResult { "" /* empty string */, "maybe", "probably" }; |
+interface HTMLMediaElement : HTMLElement { |
+ |
+ // error state |
+ readonly attribute MediaError? error; |
+ |
+ // network state |
+ attribute DOMString src; |
+ readonly attribute DOMString currentSrc; |
+ attribute DOMString? crossOrigin; |
+ const unsigned short NETWORK_EMPTY = 0; |
+ const unsigned short NETWORK_IDLE = 1; |
+ const unsigned short NETWORK_LOADING = 2; |
+ const unsigned short NETWORK_NO_SOURCE = 3; |
+ readonly attribute unsigned short networkState; |
+ attribute DOMString preload; |
+ readonly attribute TimeRanges buffered; |
+ void load(); |
+ CanPlayTypeResult canPlayType(DOMString type); |
+ |
+ // ready state |
+ const unsigned short HAVE_NOTHING = 0; |
+ const unsigned short HAVE_METADATA = 1; |
+ const unsigned short HAVE_CURRENT_DATA = 2; |
+ const unsigned short HAVE_FUTURE_DATA = 3; |
+ const unsigned short HAVE_ENOUGH_DATA = 4; |
+ readonly attribute unsigned short readyState; |
+ readonly attribute boolean seeking; |
+ |
+ // playback state |
+ attribute double currentTime; |
+ void fastSeek(double time); |
+ readonly attribute unrestricted double duration; |
+ Date getStartDate(); |
+ readonly attribute boolean paused; |
+ attribute double defaultPlaybackRate; |
+ attribute double playbackRate; |
+ readonly attribute TimeRanges played; |
+ readonly attribute TimeRanges seekable; |
+ readonly attribute boolean ended; |
+ attribute boolean autoplay; |
+ attribute boolean loop; |
+ Promise<void> play(); |
+ void pause(); |
+ |
+ // controls |
+ attribute boolean controls; |
+ attribute double volume; |
+ attribute boolean muted; |
+ attribute boolean defaultMuted; |
+ |
+ // tracks |
+ readonly attribute AudioTrackList audioTracks; |
+ readonly attribute VideoTrackList videoTracks; |
+ readonly attribute TextTrackList textTracks; |
+ TextTrack addTextTrack(TextTrackKind kind, optional DOMString label = "", optional DOMString language = ""); |
+}; |
+ |
+interface MediaError { |
+ const unsigned short MEDIA_ERR_ABORTED = 1; |
+ const unsigned short MEDIA_ERR_NETWORK = 2; |
+ const unsigned short MEDIA_ERR_DECODE = 3; |
+ const unsigned short MEDIA_ERR_SRC_NOT_SUPPORTED = 4; |
+ readonly attribute unsigned short code; |
+ readonly attribute DOMString message; |
+}; |
+ |
+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; |
+}; |
+ |
+interface AudioTrack { |
+ readonly attribute DOMString id; |
+ readonly attribute DOMString kind; |
+ readonly attribute DOMString label; |
+ readonly attribute DOMString language; |
+ attribute boolean enabled; |
+}; |
+ |
+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; |
+}; |
+ |
+interface VideoTrack { |
+ readonly attribute DOMString id; |
+ readonly attribute DOMString kind; |
+ readonly attribute DOMString label; |
+ readonly attribute DOMString language; |
+ attribute boolean selected; |
+}; |
+ |
+interface TextTrackList : EventTarget { |
+ readonly attribute unsigned long length; |
+ getter TextTrack (unsigned long index); |
+ TextTrack? getTrackById(DOMString id); |
+ |
+ attribute EventHandler onchange; |
+ attribute EventHandler onaddtrack; |
+ attribute EventHandler onremovetrack; |
+}; |
+ |
+enum TextTrackMode { "disabled", "hidden", "showing" }; |
+enum TextTrackKind { "subtitles", "captions", "descriptions", "chapters", "metadata" }; |
+interface TextTrack : EventTarget { |
+ readonly attribute TextTrackKind kind; |
+ readonly attribute DOMString label; |
+ readonly attribute DOMString language; |
+ |
+ readonly attribute DOMString id; |
+ readonly attribute DOMString inBandMetadataTrackDispatchType; |
+ |
+ attribute TextTrackMode mode; |
+ |
+ readonly attribute TextTrackCueList? cues; |
+ readonly attribute TextTrackCueList? activeCues; |
+ |
+ void addCue(TextTrackCue cue); |
+ void removeCue(TextTrackCue cue); |
+ |
+ attribute EventHandler oncuechange; |
+}; |
+ |
+interface TextTrackCueList { |
+ readonly attribute unsigned long length; |
+ getter TextTrackCue (unsigned long index); |
+ TextTrackCue? getCueById(DOMString id); |
+}; |
+ |
+interface TextTrackCue : EventTarget { |
+ readonly attribute TextTrack? track; |
+ |
+ attribute DOMString id; |
+ attribute double startTime; |
+ attribute double endTime; |
+ attribute boolean pauseOnExit; |
+ |
+ attribute EventHandler onenter; |
+ attribute EventHandler onexit; |
+}; |
+ |
+interface TimeRanges { |
+ readonly attribute unsigned long length; |
+ double start(unsigned long index); |
+ double end(unsigned long index); |
+}; |
+ |
+[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; |
+}; |
+ |
+interface HTMLMapElement : HTMLElement { |
+ attribute DOMString name; |
+ readonly attribute HTMLCollection areas; |
+}; |
+ |
+[HTMLConstructor] |
+interface HTMLAreaElement : HTMLElement { |
+ [CEReactions] attribute DOMString alt; |
+ [CEReactions] attribute DOMString coords; |
+ [CEReactions] attribute DOMString shape; |
+ [CEReactions] attribute DOMString target; |
+ [CEReactions] attribute DOMString download; |
+ [CEReactions] attribute USVString ping; |
+ [CEReactions] attribute DOMString rel; |
+ [CEReactions, SameObject, PutForwards=value] readonly attribute DOMTokenList relList; |
+ [CEReactions] attribute DOMString referrerPolicy; |
+ |
+ // also has obsolete members |
+}; |
+HTMLAreaElement implements HTMLHyperlinkElementUtils; |
+ |
+interface HTMLTableElement : HTMLElement { |
+ attribute HTMLTableCaptionElement? caption; |
+ HTMLElement createCaption(); |
+ void deleteCaption(); |
+ attribute HTMLTableSectionElement? tHead; |
+ HTMLElement createTHead(); |
+ void deleteTHead(); |
+ attribute HTMLTableSectionElement? tFoot; |
+ HTMLElement createTFoot(); |
+ void deleteTFoot(); |
+ readonly attribute HTMLCollection tBodies; |
+ HTMLElement createTBody(); |
+ readonly attribute HTMLCollection rows; |
+ HTMLElement insertRow(optional long index = -1); |
+ void deleteRow(long index); |
+ |
+ // also has obsolete members |
+}; |
+ |
+interface HTMLTableCaptionElement : HTMLElement { |
+ // also has obsolete members |
+}; |
+ |
+interface HTMLTableColElement : HTMLElement { |
+ attribute unsigned long span; |
+ |
+ // also has obsolete members |
+}; |
+ |
+interface HTMLTableSectionElement : HTMLElement { |
+ readonly attribute HTMLCollection rows; |
+ HTMLElement insertRow(optional long index = -1); |
+ void deleteRow(long index); |
+ |
+ // also has obsolete members |
+}; |
+ |
+interface HTMLTableRowElement : HTMLElement { |
+ readonly attribute long rowIndex; |
+ readonly attribute long sectionRowIndex; |
+ readonly attribute HTMLCollection cells; |
+ HTMLElement insertCell(optional long index = -1); |
+ void deleteCell(long index); |
+ |
+ // also has obsolete members |
+}; |
+ |
+interface HTMLTableCellElement : HTMLElement { |
+ [CEReactions] attribute unsigned long colSpan; |
+ [CEReactions] attribute unsigned long rowSpan; |
+ [CEReactions] attribute DOMString headers; |
+ readonly attribute long cellIndex; |
+ |
+ [CEReactions] attribute DOMString scope; // only conforming for th elements |
+ [CEReactions] attribute DOMString abbr; // only conforming for th elements |
+ |
+ // also has obsolete members |
+}; |
+ |
+[OverrideBuiltins] |
+interface HTMLFormElement : HTMLElement { |
+ attribute DOMString acceptCharset; |
+ attribute DOMString action; |
+ attribute DOMString autocomplete; |
+ attribute DOMString enctype; |
+ attribute DOMString encoding; |
+ attribute DOMString method; |
+ attribute DOMString name; |
+ attribute boolean noValidate; |
+ attribute DOMString target; |
+ |
+ readonly attribute HTMLFormControlsCollection elements; |
+ readonly attribute unsigned long length; |
+ getter Element (unsigned long index); |
+ getter (RadioNodeList or Element) (DOMString name); |
+ |
+ void submit(); |
+ void reset(); |
+ boolean checkValidity(); |
+ boolean reportValidity(); |
+}; |
+ |
+interface HTMLLabelElement : HTMLElement { |
+ readonly attribute HTMLFormElement? form; |
+ attribute DOMString htmlFor; |
+ readonly attribute HTMLElement? control; |
+}; |
+ |
+[HTMLConstructor] |
+interface HTMLInputElement : HTMLElement { |
+ [CEReactions] attribute DOMString accept; |
+ [CEReactions] attribute DOMString alt; |
+ [CEReactions] attribute DOMString autocomplete; |
+ [CEReactions] attribute boolean autofocus; |
+ [CEReactions] attribute boolean defaultChecked; |
+ attribute boolean checked; |
+ [CEReactions] attribute DOMString dirName; |
+ [CEReactions] attribute boolean disabled; |
+ readonly attribute HTMLFormElement? form; |
+ readonly attribute FileList? files; |
+ [CEReactions] attribute USVString formAction; |
+ [CEReactions] attribute DOMString formEnctype; |
+ [CEReactions] attribute DOMString formMethod; |
+ [CEReactions] attribute boolean formNoValidate; |
+ [CEReactions] attribute DOMString formTarget; |
+ [CEReactions] attribute unsigned long height; |
+ attribute boolean indeterminate; |
+ [CEReactions] attribute DOMString inputMode; |
+ readonly attribute HTMLElement? list; |
+ [CEReactions] attribute DOMString max; |
+ [CEReactions] attribute long maxLength; |
+ [CEReactions] attribute DOMString min; |
+ [CEReactions] attribute long minLength; |
+ [CEReactions] attribute boolean multiple; |
+ [CEReactions] attribute DOMString name; |
+ [CEReactions] attribute DOMString pattern; |
+ [CEReactions] attribute DOMString placeholder; |
+ [CEReactions] attribute boolean readOnly; |
+ [CEReactions] attribute boolean required; |
+ [CEReactions] attribute unsigned long size; |
+ [CEReactions] attribute USVString src; |
+ [CEReactions] attribute DOMString step; |
+ [CEReactions] attribute DOMString type; |
+ [CEReactions] attribute DOMString defaultValue; |
+ [CEReactions, TreatNullAs=EmptyString] attribute DOMString value; |
+ attribute object? valueAsDate; |
+ attribute unrestricted double valueAsNumber; |
+ [CEReactions] attribute unsigned long width; |
+ |
+ void stepUp(optional long n = 1); |
+ void stepDown(optional long n = 1); |
+ |
+ readonly attribute boolean willValidate; |
+ readonly attribute ValidityState validity; |
+ readonly attribute DOMString validationMessage; |
+ boolean checkValidity(); |
+ boolean reportValidity(); |
+ void setCustomValidity(DOMString error); |
+ |
+ readonly attribute NodeList? labels; |
+ |
+ void select(); |
+ attribute unsigned long? selectionStart; |
+ attribute unsigned long? selectionEnd; |
+ attribute DOMString? selectionDirection; |
+ void setRangeText(DOMString replacement); |
+ void setRangeText(DOMString replacement, unsigned long start, unsigned long end, optional SelectionMode selectionMode = "preserve"); |
+ void setSelectionRange(unsigned long start, unsigned long end, optional DOMString direction); |
+ |
+ // also has obsolete members |
+}; |
+ |
+[HTMLConstructor] |
+interface HTMLButtonElement : HTMLElement { |
+ [CEReactions] attribute boolean autofocus; |
+ [CEReactions] attribute boolean disabled; |
+ readonly attribute HTMLFormElement? form; |
+ [CEReactions] attribute USVString formAction; |
+ [CEReactions] attribute DOMString formEnctype; |
+ [CEReactions] attribute DOMString formMethod; |
+ [CEReactions] attribute boolean formNoValidate; |
+ [CEReactions] attribute DOMString formTarget; |
+ [CEReactions] attribute DOMString name; |
+ [CEReactions] attribute DOMString type; |
+ [CEReactions] attribute DOMString value; |
+ |
+ readonly attribute boolean willValidate; |
+ readonly attribute ValidityState validity; |
+ readonly attribute DOMString validationMessage; |
+ boolean checkValidity(); |
+ boolean reportValidity(); |
+ void setCustomValidity(DOMString error); |
+ |
+ readonly attribute NodeList labels; |
+}; |
+ |
+[HTMLConstructor] |
+interface HTMLSelectElement : HTMLElement { |
+ [CEReactions] attribute DOMString autocomplete; |
+ [CEReactions] attribute boolean autofocus; |
+ [CEReactions] attribute boolean disabled; |
+ readonly attribute HTMLFormElement? form; |
+ [CEReactions] attribute boolean multiple; |
+ [CEReactions] attribute DOMString name; |
+ [CEReactions] attribute boolean required; |
+ [CEReactions] attribute unsigned long size; |
+ |
+ readonly attribute DOMString type; |
+ |
+ [SameObject] readonly attribute HTMLOptionsCollection options; |
+ [CEReactions] attribute unsigned long length; |
+ getter Element? item(unsigned long index); |
+ HTMLOptionElement? namedItem(DOMString name); |
+ [CEReactions] void add((HTMLOptionElement or HTMLOptGroupElement) element, optional (HTMLElement or long)? before = null); |
+ [CEReactions] void remove(); // ChildNode overload |
+ [CEReactions] void remove(long index); |
+ [CEReactions] setter void (unsigned long index, HTMLOptionElement? option); |
+ |
+ [SameObject] readonly attribute HTMLCollection selectedOptions; |
+ attribute long selectedIndex; |
+ attribute DOMString value; |
+ |
+ readonly attribute boolean willValidate; |
+ readonly attribute ValidityState validity; |
+ readonly attribute DOMString validationMessage; |
+ boolean checkValidity(); |
+ boolean reportValidity(); |
+ void setCustomValidity(DOMString error); |
+ |
+ readonly attribute NodeList labels; |
+}; |
+ |
+interface HTMLDataListElement : HTMLElement { |
+ readonly attribute HTMLCollection options; |
+}; |
+ |
+interface HTMLOptGroupElement : HTMLElement { |
+ attribute boolean disabled; |
+ attribute DOMString label; |
+}; |
+ |
+[NamedConstructor=Option(optional DOMString text = "", optional DOMString value, optional boolean defaultSelected = false, optional boolean selected = false)] |
+interface HTMLOptionElement : HTMLElement { |
+ attribute boolean disabled; |
+ readonly attribute HTMLFormElement? form; |
+ attribute DOMString label; |
+ attribute boolean defaultSelected; |
+ attribute boolean selected; |
+ attribute DOMString value; |
+ |
+ attribute DOMString text; |
+ readonly attribute long index; |
+}; |
+ |
+[HTMLConstructor] |
+interface HTMLTextAreaElement : HTMLElement { |
+ [CEReactions] attribute DOMString autocomplete; |
+ [CEReactions] attribute boolean autofocus; |
+ [CEReactions] attribute unsigned long cols; |
+ [CEReactions] attribute DOMString dirName; |
+ [CEReactions] attribute boolean disabled; |
+ readonly attribute HTMLFormElement? form; |
+ [CEReactions] attribute DOMString inputMode; |
+ [CEReactions] attribute long maxLength; |
+ [CEReactions] attribute long minLength; |
+ [CEReactions] attribute DOMString name; |
+ [CEReactions] attribute DOMString placeholder; |
+ [CEReactions] attribute boolean readOnly; |
+ [CEReactions] attribute boolean required; |
+ [CEReactions] attribute unsigned long rows; |
+ [CEReactions] attribute DOMString wrap; |
+ |
+ readonly attribute DOMString type; |
+ [CEReactions] attribute DOMString defaultValue; |
+ [CEReactions, TreatNullAs=EmptyString] attribute DOMString value; |
+ readonly attribute unsigned long textLength; |
+ |
+ readonly attribute boolean willValidate; |
+ readonly attribute ValidityState validity; |
+ readonly attribute DOMString validationMessage; |
+ boolean checkValidity(); |
+ boolean reportValidity(); |
+ void setCustomValidity(DOMString error); |
+ |
+ readonly attribute NodeList labels; |
+ |
+ void select(); |
+ attribute unsigned long selectionStart; |
+ attribute unsigned long selectionEnd; |
+ attribute DOMString selectionDirection; |
+ void setRangeText(DOMString replacement); |
+ void setRangeText(DOMString replacement, unsigned long start, unsigned long end, optional SelectionMode selectionMode = "preserve"); |
+ void setSelectionRange(unsigned long start, unsigned long end, optional DOMString direction); |
+}; |
+ |
+[HTMLConstructor] |
+interface HTMLOutputElement : HTMLElement { |
+ [CEReactions, SameObject, PutForwards=value] readonly attribute DOMTokenList htmlFor; |
+ readonly attribute HTMLFormElement? form; |
+ [CEReactions] attribute DOMString name; |
+ |
+ readonly attribute DOMString type; |
+ [CEReactions] attribute DOMString defaultValue; |
+ [CEReactions] attribute DOMString value; |
+ |
+ readonly attribute boolean willValidate; |
+ readonly attribute ValidityState validity; |
+ readonly attribute DOMString validationMessage; |
+ boolean checkValidity(); |
+ boolean reportValidity(); |
+ void setCustomValidity(DOMString error); |
+ |
+ readonly attribute NodeList labels; |
+}; |
+ |
+[HTMLConstructor] |
+interface HTMLProgressElement : HTMLElement { |
+ [CEReactions] attribute double value; |
+ [CEReactions] attribute double max; |
+ readonly attribute double position; |
+ readonly attribute NodeList labels; |
+}; |
+ |
+[HTMLConstructor] |
+interface HTMLMeterElement : HTMLElement { |
+ [CEReactions] attribute double value; |
+ [CEReactions] attribute double min; |
+ [CEReactions] attribute double max; |
+ [CEReactions] attribute double low; |
+ [CEReactions] attribute double high; |
+ [CEReactions] attribute double optimum; |
+ readonly attribute NodeList labels; |
+}; |
+ |
+interface HTMLFieldSetElement : HTMLElement { |
+ attribute boolean disabled; |
+ readonly attribute HTMLFormElement? form; |
+ attribute DOMString name; |
+ |
+ readonly attribute DOMString type; |
+ |
+ readonly attribute HTMLFormControlsCollection elements; |
+ |
+ readonly attribute boolean willValidate; |
+ readonly attribute ValidityState validity; |
+ readonly attribute DOMString validationMessage; |
+ boolean checkValidity(); |
+ boolean reportValidity(); |
+ void setCustomValidity(DOMString error); |
+}; |
+ |
+interface HTMLLegendElement : HTMLElement { |
+ readonly attribute HTMLFormElement? form; |
+ |
+ // also has obsolete members |
+}; |
+ |
+enum SelectionMode { |
+ "select", |
+ "start", |
+ "end", |
+ "preserve"/*,*/ // default |
+}; |
+ |
+interface ValidityState { |
+ readonly attribute boolean valueMissing; |
+ readonly attribute boolean typeMismatch; |
+ readonly attribute boolean patternMismatch; |
+ readonly attribute boolean tooLong; |
+ readonly attribute boolean tooShort; |
+ readonly attribute boolean rangeUnderflow; |
+ readonly attribute boolean rangeOverflow; |
+ readonly attribute boolean stepMismatch; |
+ readonly attribute boolean badInput; |
+ readonly attribute boolean customError; |
+ readonly attribute boolean valid; |
+}; |
+ |
+interface HTMLDetailsElement : HTMLElement { |
+ attribute boolean open; |
+}; |
+ |
+interface HTMLMenuElement : HTMLElement { |
+ attribute DOMString type; |
+ attribute DOMString label; |
+ |
+ // also has obsolete members |
+}; |
+ |
+interface HTMLMenuItemElement : HTMLElement { |
+ attribute DOMString type; |
+ attribute DOMString label; |
+ attribute DOMString icon; |
+ attribute boolean disabled; |
+ attribute boolean checked; |
+ attribute DOMString radiogroup; |
+ attribute boolean default; |
+ readonly attribute HTMLElement? command; |
+}; |
+ |
+[Constructor(DOMString type, optional RelatedEventInit eventInitDict)] |
+interface RelatedEvent : Event { |
+ readonly attribute EventTarget? relatedTarget; |
+}; |
+ |
+dictionary RelatedEventInit : EventInit { |
+ EventTarget? relatedTarget; |
+}; |
+ |
+interface HTMLDialogElement : HTMLElement { |
+ attribute boolean open; |
+ attribute DOMString returnValue; |
+ void show(); |
+ void showModal(); |
+ void close(optional DOMString returnValue); |
+}; |
+ |
+[HTMLConstructor] |
+interface HTMLScriptElement : HTMLElement { |
+ [CEReactions] attribute USVString src; |
+ [CEReactions] attribute DOMString type; |
+ [CEReactions] attribute boolean noModule; |
+ [CEReactions] attribute DOMString charset; |
+ [CEReactions] attribute boolean async; |
+ [CEReactions] attribute boolean defer; |
+ [CEReactions] attribute DOMString? crossOrigin; |
+ [CEReactions] attribute DOMString text; |
+ [CEReactions] attribute DOMString nonce; |
+ [CEReactions] attribute DOMString integrity; |
+ |
+ |
+ // also has obsolete members |
+}; |
+ |
+interface HTMLTemplateElement : HTMLElement { |
+ readonly attribute DocumentFragment content; |
+}; |
+ |
+interface HTMLSlotElement : HTMLElement { |
+ /*[CEReactions]*/ attribute DOMString name; |
+ sequence<Node> assignedNodes(optional AssignedNodesOptions options); |
+}; |
+ |
+dictionary AssignedNodesOptions { |
+ boolean flatten = false; |
+}; |
+ |
+typedef (CanvasRenderingContext2D or WebGLRenderingContext) RenderingContext; |
+callback BlobCallback = void (Blob? blob); |
+ |
+interface HTMLCanvasElement : HTMLElement { |
+ attribute unsigned long width; |
+ attribute unsigned long height; |
+ |
+ RenderingContext? getContext(DOMString contextId, any... arguments); |
+ |
+ DOMString toDataURL(optional DOMString type, any... arguments); |
+ void toBlob(BlobCallback _callback, optional DOMString type, any... arguments); |
+}; |
+ |
+typedef (HTMLImageElement or |
+ SVGImageElement) HTMLOrSVGImageElement; |
+ |
+typedef (HTMLOrSVGImageElement or |
+ HTMLVideoElement or |
+ HTMLCanvasElement or |
+ ImageBitmap) CanvasImageSource; |
+ |
+enum CanvasFillRule { "nonzero", "evenodd" }; |
+ |
+dictionary CanvasRenderingContext2DSettings { |
+ boolean alpha = true; |
+}; |
+ |
+enum ImageSmoothingQuality { "low", "medium", "high" }; |
+ |
+interface CanvasRenderingContext2D { |
+ // back-reference to the canvas |
+ readonly attribute HTMLCanvasElement canvas; |
+}; |
+CanvasRenderingContext2D implements CanvasState; |
+CanvasRenderingContext2D implements CanvasTransform; |
+CanvasRenderingContext2D implements CanvasCompositing; |
+CanvasRenderingContext2D implements CanvasImageSmoothing; |
+CanvasRenderingContext2D implements CanvasFillStrokeStyles; |
+CanvasRenderingContext2D implements CanvasShadowStyles; |
+CanvasRenderingContext2D implements CanvasFilters; |
+CanvasRenderingContext2D implements CanvasRect; |
+CanvasRenderingContext2D implements CanvasDrawPath; |
+CanvasRenderingContext2D implements CanvasUserInterface; |
+CanvasRenderingContext2D implements CanvasText; |
+CanvasRenderingContext2D implements CanvasDrawImage; |
+CanvasRenderingContext2D implements CanvasHitRegion; |
+CanvasRenderingContext2D implements CanvasImageData; |
+CanvasRenderingContext2D implements CanvasPathDrawingStyles; |
+CanvasRenderingContext2D implements CanvasTextDrawingStyles; |
+CanvasRenderingContext2D implements CanvasPath; |
+ |
+[NoInterfaceObject] |
+interface CanvasState { |
+ // state |
+ void save(); // push state on state stack |
+ void restore(); // pop state stack and restore state |
+}; |
+ |
+[NoInterfaceObject] |
+interface CanvasTransform { |
+ // transformations (default transform is the identity matrix) |
+ void scale(unrestricted double x, unrestricted double y); |
+ void rotate(unrestricted double angle); |
+ void translate(unrestricted double x, unrestricted double y); |
+ void transform(unrestricted double a, unrestricted double b, unrestricted double c, unrestricted double d, unrestricted double e, unrestricted double f); |
+ |
+ [NewObject] DOMMatrix getTransform(); |
+ void setTransform(unrestricted double a, unrestricted double b, unrestricted double c, unrestricted double d, unrestricted double e, unrestricted double f); |
+ void setTransform(optional DOMMatrixInit transform); |
+ void resetTransform(); |
+ |
+}; |
+ |
+[NoInterfaceObject] |
+interface CanvasCompositing { |
+ // compositing |
+ attribute unrestricted double globalAlpha; // (default 1.0) |
+ attribute DOMString globalCompositeOperation; // (default source-over) |
+}; |
+ |
+[NoInterfaceObject] |
+interface CanvasImageSmoothing { |
+ // image smoothing |
+ attribute boolean imageSmoothingEnabled; // (default true) |
+ attribute ImageSmoothingQuality imageSmoothingQuality; // (default low) |
+ |
+}; |
+ |
+[NoInterfaceObject] |
+interface CanvasFillStrokeStyles { |
+ // colours and styles (see also the CanvasPathDrawingStyles and CanvasTextDrawingStyles interfaces) |
+ attribute (DOMString or CanvasGradient or CanvasPattern) strokeStyle; // (default black) |
+ attribute (DOMString or CanvasGradient or CanvasPattern) fillStyle; // (default black) |
+ CanvasGradient createLinearGradient(double x0, double y0, double x1, double y1); |
+ CanvasGradient createRadialGradient(double x0, double y0, double r0, double x1, double y1, double r1); |
+ CanvasPattern? createPattern(CanvasImageSource image, [TreatNullAs=EmptyString] DOMString repetition); |
+ |
+}; |
+ |
+[NoInterfaceObject] |
+interface CanvasShadowStyles { |
+ // shadows |
+ attribute unrestricted double shadowOffsetX; // (default 0) |
+ attribute unrestricted double shadowOffsetY; // (default 0) |
+ attribute unrestricted double shadowBlur; // (default 0) |
+ attribute DOMString shadowColor; // (default transparent black) |
+}; |
+ |
+[NoInterfaceObject] |
+interface CanvasFilters { |
+ // filters |
+ attribute DOMString filter; // (default "none") |
+}; |
+ |
+[NoInterfaceObject] |
+interface CanvasRect { |
+ // rects |
+ void clearRect(unrestricted double x, unrestricted double y, unrestricted double w, unrestricted double h); |
+ void fillRect(unrestricted double x, unrestricted double y, unrestricted double w, unrestricted double h); |
+ void strokeRect(unrestricted double x, unrestricted double y, unrestricted double w, unrestricted double h); |
+}; |
+ |
+[NoInterfaceObject] |
+interface CanvasDrawPath { |
+ // path API (see also CanvasPath) |
+ void beginPath(); |
+ void fill(optional CanvasFillRule fillRule = "nonzero"); |
+ void fill(Path2D path, optional CanvasFillRule fillRule = "nonzero"); |
+ void stroke(); |
+ void stroke(Path2D path); |
+ void clip(optional CanvasFillRule fillRule = "nonzero"); |
+ void clip(Path2D path, optional CanvasFillRule fillRule = "nonzero"); |
+ void resetClip(); |
+ boolean isPointInPath(unrestricted double x, unrestricted double y, optional CanvasFillRule fillRule = "nonzero"); |
+ boolean isPointInPath(Path2D path, unrestricted double x, unrestricted double y, optional CanvasFillRule fillRule = "nonzero"); |
+ boolean isPointInStroke(unrestricted double x, unrestricted double y); |
+ boolean isPointInStroke(Path2D path, unrestricted double x, unrestricted double y); |
+}; |
+ |
+[NoInterfaceObject] |
+interface CanvasUserInterface { |
+ void drawFocusIfNeeded(Element element); |
+ void drawFocusIfNeeded(Path2D path, Element element); |
+ void scrollPathIntoView(); |
+ void scrollPathIntoView(Path2D path); |
+}; |
+ |
+[NoInterfaceObject] |
+interface CanvasText { |
+ // text (see also the CanvasPathDrawingStyles and CanvasTextDrawingStyles interfaces) |
+ void fillText(DOMString text, unrestricted double x, unrestricted double y, optional unrestricted double maxWidth); |
+ void strokeText(DOMString text, unrestricted double x, unrestricted double y, optional unrestricted double maxWidth); |
+ TextMetrics measureText(DOMString text); |
+}; |
+ |
+[NoInterfaceObject] |
+interface CanvasDrawImage { |
+ // drawing images |
+ void drawImage(CanvasImageSource image, unrestricted double dx, unrestricted double dy); |
+ void drawImage(CanvasImageSource image, unrestricted double dx, unrestricted double dy, unrestricted double dw, unrestricted double dh); |
+ void drawImage(CanvasImageSource image, unrestricted double sx, unrestricted double sy, unrestricted double sw, unrestricted double sh, unrestricted double dx, unrestricted double dy, unrestricted double dw, unrestricted double dh); |
+}; |
+ |
+[NoInterfaceObject] |
+interface CanvasHitRegion { |
+ // hit regions |
+ void addHitRegion(optional HitRegionOptions options); |
+ void removeHitRegion(DOMString id); |
+ void clearHitRegions(); |
+}; |
+ |
+[NoInterfaceObject] |
+interface CanvasImageData { |
+ // pixel manipulation |
+ ImageData createImageData(double sw, double sh); |
+ ImageData createImageData(ImageData imagedata); |
+ ImageData getImageData(double sx, double sy, double sw, double sh); |
+ void putImageData(ImageData imagedata, double dx, double dy); |
+ void putImageData(ImageData imagedata, double dx, double dy, double dirtyX, double dirtyY, double dirtyWidth, double dirtyHeight); |
+}; |
+ |
+enum CanvasLineCap { "butt", "round", "square" }; |
+enum CanvasLineJoin { "round", "bevel", "miter"}; |
+enum CanvasTextAlign { "start", "end", "left", "right", "center" }; |
+enum CanvasTextBaseline { "top", "hanging", "middle", "alphabetic", "ideographic", "bottom" }; |
+enum CanvasDirection { "ltr", "rtl", "inherit" }; |
+ |
+[NoInterfaceObject] |
+interface CanvasPathDrawingStyles { |
+ // line caps/joins |
+ attribute unrestricted double lineWidth; // (default 1) |
+ attribute CanvasLineCap lineCap; // (default "butt") |
+ attribute CanvasLineJoin lineJoin; // (default "miter") |
+ attribute unrestricted double miterLimit; // (default 10) |
+ |
+ // dashed lines |
+ void setLineDash(sequence<unrestricted double> segments); // default empty |
+ sequence<unrestricted double> getLineDash(); |
+ attribute unrestricted double lineDashOffset; |
+}; |
+ |
+[NoInterfaceObject] |
+interface CanvasTextDrawingStyles { |
+ // text |
+ attribute DOMString font; // (default 10px sans-serif) |
+ attribute CanvasTextAlign textAlign; // (default: "start") |
+ attribute CanvasTextBaseline textBaseline; // (default: "alphabetic") |
+ attribute CanvasDirection direction; // (default: "inherit") |
+}; |
+ |
+[NoInterfaceObject, Exposed=(Window,Worker)] |
+interface CanvasPath { |
+ // shared path API methods |
+ void closePath(); |
+ void moveTo(unrestricted double x, unrestricted double y); |
+ void lineTo(unrestricted double x, unrestricted double y); |
+ void quadraticCurveTo(unrestricted double cpx, unrestricted double cpy, unrestricted double x, unrestricted double y); |
+ void bezierCurveTo(unrestricted double cp1x, unrestricted double cp1y, unrestricted double cp2x, unrestricted double cp2y, unrestricted double x, unrestricted double y); |
+ void arcTo(unrestricted double x1, unrestricted double y1, unrestricted double x2, unrestricted double y2, unrestricted double radius); |
+ void arcTo(unrestricted double x1, unrestricted double y1, unrestricted double x2, unrestricted double y2, unrestricted double radiusX, unrestricted double radiusY, unrestricted double rotation); |
+ void rect(unrestricted double x, unrestricted double y, unrestricted double w, unrestricted double h); |
+ void arc(unrestricted double x, unrestricted double y, unrestricted double radius, unrestricted double startAngle, unrestricted double endAngle, optional boolean anticlockwise = false); |
+ void ellipse(unrestricted double x, unrestricted double y, unrestricted double radiusX, unrestricted double radiusY, unrestricted double rotation, unrestricted double startAngle, unrestricted double endAngle, optional boolean anticlockwise = false); |
+}; |
+ |
+interface CanvasGradient { |
+ // opaque object |
+ void addColorStop(double offset, DOMString color); |
+}; |
+ |
+interface CanvasPattern { |
+ // opaque object |
+ void setTransform(optional DOMMatrixInit transform); |
+}; |
+ |
+interface TextMetrics { |
+ // x-direction |
+ readonly attribute double width; // advance width |
+ readonly attribute double actualBoundingBoxLeft; |
+ readonly attribute double actualBoundingBoxRight; |
+ |
+ // y-direction |
+ readonly attribute double fontBoundingBoxAscent; |
+ readonly attribute double fontBoundingBoxDescent; |
+ readonly attribute double actualBoundingBoxAscent; |
+ readonly attribute double actualBoundingBoxDescent; |
+ readonly attribute double emHeightAscent; |
+ readonly attribute double emHeightDescent; |
+ readonly attribute double hangingBaseline; |
+ readonly attribute double alphabeticBaseline; |
+ readonly attribute double ideographicBaseline; |
+}; |
+ |
+dictionary HitRegionOptions { |
+ Path2D? path = null; |
+ CanvasFillRule fillRule = "nonzero"; |
+ DOMString id = ""; |
+ DOMString? parentID = null; |
+ DOMString cursor = "inherit"; |
+ // for control-backed regions: |
+ Element? control = null; |
+ // for unbacked regions: |
+ DOMString? label = null; |
+ DOMString? role = null; |
+}; |
+ |
+[Constructor(unsigned long sw, unsigned long sh), |
+ Constructor(Uint8ClampedArray data, unsigned long sw, optional unsigned long sh), |
+ Exposed=(Window,Worker)] |
+interface ImageData { |
+ readonly attribute unsigned long width; |
+ readonly attribute unsigned long height; |
+ readonly attribute Uint8ClampedArray data; |
+}; |
+ |
+[Constructor, |
+ Constructor(Path2D path), |
+ Constructor(sequence<Path2D> paths, optional CanvasFillRule fillRule = "nonzero"), |
+ Constructor(DOMString d), Exposed=(Window,Worker)] |
+interface Path2D { |
+ void addPath(Path2D path, optional DOMMatrixInit transform); |
+}; |
+Path2D implements CanvasPath; |
+ |
+partial interface MouseEvent { |
+ readonly attribute DOMString? region; |
+}; |
+ |
+// https://github.com/w3c/testharness.js/issues/84 |
+//partial dictionary MouseEventInit { |
+// DOMString? region; |
+//}; |
+ |
+partial interface Touch { |
+ readonly attribute DOMString? region; |
+}; |
+ |
+interface DataTransfer { |
+ attribute DOMString dropEffect; |
+ attribute DOMString effectAllowed; |
+ |
+ readonly attribute DataTransferItemList items; |
+ |
+ void setDragImage(Element image, long x, long y); |
+ |
+ /* old interface */ |
+ readonly attribute DOMString[] types; |
+ DOMString getData(DOMString format); |
+ void setData(DOMString format, DOMString data); |
+ void clearData(optional DOMString format); |
+ readonly attribute FileList files; |
+}; |
+ |
+interface DataTransferItemList { |
+ readonly attribute unsigned long length; |
+ getter DataTransferItem (unsigned long index); |
+ DataTransferItem? add(DOMString data, DOMString type); |
+ DataTransferItem? add(File data); |
+ void remove(unsigned long index); |
+ void clear(); |
+}; |
+ |
+interface DataTransferItem { |
+ readonly attribute DOMString kind; |
+ readonly attribute DOMString type; |
+ void getAsString(FunctionStringCallback? _callback); |
+ File? getAsFile(); |
+}; |
+ |
+callback FunctionStringCallback = void (DOMString data); |
+ |
+[Constructor(DOMString type, optional DragEventInit eventInitDict)] |
+interface DragEvent : MouseEvent { |
+ readonly attribute DataTransfer? dataTransfer; |
+}; |
+ |
+dictionary DragEventInit : MouseEventInit { |
+ DataTransfer? dataTransfer; |
+}; |
+ |
+// For purposes of this test, just treat WindowProxy as the same thing as |
+// Window. |
+typedef Window WindowProxy; |
+ |
+[PrimaryGlobal] |
+/*sealed*/ interface Window : EventTarget { |
+ // the current browsing context |
+ [Unforgeable] readonly attribute WindowProxy window; |
+ [Replaceable] readonly attribute WindowProxy self; |
+ [Unforgeable] readonly attribute Document document; |
+ attribute DOMString name; |
+ [PutForwards=href, Unforgeable] readonly attribute Location location; |
+ readonly attribute History history; |
+ [Replaceable] readonly attribute BarProp locationbar; |
+ [Replaceable] readonly attribute BarProp menubar; |
+ [Replaceable] readonly attribute BarProp personalbar; |
+ [Replaceable] readonly attribute BarProp scrollbars; |
+ [Replaceable] readonly attribute BarProp statusbar; |
+ [Replaceable] readonly attribute BarProp toolbar; |
+ attribute DOMString status; |
+ void close(); |
+ readonly attribute boolean closed; |
+ void stop(); |
+ void focus(); |
+ void blur(); |
+ |
+ // other browsing contexts |
+ [Replaceable] readonly attribute WindowProxy frames; |
+ [Replaceable] readonly attribute unsigned long length; |
+ [Unforgeable] readonly attribute WindowProxy top; |
+ attribute any opener; |
+ [Replaceable] readonly attribute WindowProxy parent; |
+ readonly attribute Element? frameElement; |
+ WindowProxy open(optional DOMString url = "about:blank", optional DOMString target = "_blank", [TreatNullAs=EmptyString] optional DOMString features = "", optional boolean replace = false); |
+ getter WindowProxy (unsigned long index); |
+ getter object (DOMString name); |
+ |
+ // the user agent |
+ readonly attribute Navigator navigator; |
+ [Replaceable] readonly attribute External external; |
+ readonly attribute ApplicationCache applicationCache; |
+ |
+ // user prompts |
+ void alert(); |
+ //void alert(DOMString message); |
+ boolean confirm(optional DOMString message = ""); |
+ DOMString? prompt(optional DOMString message = "", optional DOMString default = ""); |
+ void print(); |
+ any showModalDialog(DOMString url, optional any argument); |
+ |
+ void postMessage(any message, DOMString targetOrigin, optional sequence<Transferable> transfer); |
+ |
+ // also has obsolete members |
+}; |
+Window implements GlobalEventHandlers; |
+Window implements WindowEventHandlers; |
+ |
+interface BarProp { |
+ readonly attribute boolean visible; |
+}; |
+ |
+enum ScrollRestoration { "auto", "manual" }; |
+interface History { |
+ |
+ readonly attribute long length; |
+ attribute ScrollRestoration scrollRestoration; |
+ readonly attribute any state; |
+ void go(optional long delta); |
+ void back(); |
+ void forward(); |
+ void pushState(any data, DOMString title, optional DOMString? url = null); |
+ void replaceState(any data, DOMString title, optional DOMString? url = null); |
+}; |
+ |
+[Unforgeable] interface Location { |
+ stringifier attribute USVString href; |
+ readonly attribute USVString origin; |
+ attribute USVString protocol; |
+ attribute USVString host; |
+ attribute USVString hostname; |
+ attribute USVString port; |
+ attribute USVString pathname; |
+ attribute USVString search; |
+ attribute USVString hash; |
+ |
+ void assign(USVString url); |
+ void replace(USVString url); |
+ void reload(); |
+ |
+ [SameObject] readonly attribute USVString[] ancestorOrigins; |
+}; |
+ |
+[Constructor(DOMString type, optional PopStateEventInit eventInitDict)] |
+interface PopStateEvent : Event { |
+ readonly attribute any state; |
+}; |
+ |
+dictionary PopStateEventInit : EventInit { |
+ any state; |
+}; |
+ |
+[Constructor(DOMString type, optional HashChangeEventInit eventInitDict)] |
+interface HashChangeEvent : Event { |
+ readonly attribute DOMString oldURL; |
+ readonly attribute DOMString newURL; |
+}; |
+ |
+dictionary HashChangeEventInit : EventInit { |
+ DOMString oldURL; |
+ DOMString newURL; |
+}; |
+ |
+[Constructor(DOMString type, optional PageTransitionEventInit eventInitDict)] |
+interface PageTransitionEvent : Event { |
+ readonly attribute boolean persisted; |
+}; |
+ |
+dictionary PageTransitionEventInit : EventInit { |
+ boolean persisted; |
+}; |
+ |
+interface BeforeUnloadEvent : Event { |
+ attribute DOMString returnValue; |
+}; |
+ |
+[Exposed=(Window,SharedWorker)] |
+interface ApplicationCache : EventTarget { |
+ |
+ // update status |
+ const unsigned short UNCACHED = 0; |
+ const unsigned short IDLE = 1; |
+ const unsigned short CHECKING = 2; |
+ const unsigned short DOWNLOADING = 3; |
+ const unsigned short UPDATEREADY = 4; |
+ const unsigned short OBSOLETE = 5; |
+ readonly attribute unsigned short status; |
+ |
+ // updates |
+ void update(); |
+ void abort(); |
+ void swapCache(); |
+ |
+ // events |
+ attribute EventHandler onchecking; |
+ attribute EventHandler onerror; |
+ attribute EventHandler onnoupdate; |
+ attribute EventHandler ondownloading; |
+ attribute EventHandler onprogress; |
+ attribute EventHandler onupdateready; |
+ attribute EventHandler oncached; |
+ attribute EventHandler onobsolete; |
+}; |
+ |
+[NoInterfaceObject, Exposed=(Window,Worker)] |
+interface NavigatorOnLine { |
+ readonly attribute boolean onLine; |
+}; |
+ |
+[Constructor(DOMString type, optional ErrorEventInit eventInitDict), Exposed=(Window,Worker)] |
+interface ErrorEvent : Event { |
+ readonly attribute DOMString message; |
+ readonly attribute DOMString filename; |
+ readonly attribute unsigned long lineno; |
+ readonly attribute unsigned long colno; |
+ readonly attribute any error; |
+}; |
+ |
+dictionary ErrorEventInit : EventInit { |
+ DOMString message; |
+ DOMString filename; |
+ unsigned long lineno; |
+ unsigned long colno; |
+ any error; |
+}; |
+ |
+[TreatNonCallableAsNull] |
+callback EventHandlerNonNull = any (Event event); |
+typedef EventHandlerNonNull? EventHandler; |
+ |
+[TreatNonCallableAsNull] |
+callback OnErrorEventHandlerNonNull = any ((Event or DOMString) event, optional DOMString source, optional unsigned long lineno, optional unsigned long column, optional any error); |
+typedef OnErrorEventHandlerNonNull? OnErrorEventHandler; |
+ |
+[TreatNonCallableAsNull] |
+callback OnBeforeUnloadEventHandlerNonNull = DOMString? (Event event); |
+typedef OnBeforeUnloadEventHandlerNonNull? OnBeforeUnloadEventHandler; |
+ |
+[NoInterfaceObject] |
+interface GlobalEventHandlers { |
+ attribute EventHandler onabort; |
+ attribute EventHandler onauxclick; |
+ attribute EventHandler onblur; |
+ attribute EventHandler oncancel; |
+ attribute EventHandler oncanplay; |
+ attribute EventHandler oncanplaythrough; |
+ attribute EventHandler onchange; |
+ attribute EventHandler onclick; |
+ attribute EventHandler onclose; |
+ attribute EventHandler oncontextmenu; |
+ attribute EventHandler oncuechange; |
+ attribute EventHandler ondblclick; |
+ attribute EventHandler ondrag; |
+ attribute EventHandler ondragend; |
+ attribute EventHandler ondragenter; |
+ attribute EventHandler ondragexit; |
+ attribute EventHandler ondragleave; |
+ attribute EventHandler ondragover; |
+ attribute EventHandler ondragstart; |
+ attribute EventHandler ondrop; |
+ attribute EventHandler ondurationchange; |
+ attribute EventHandler onemptied; |
+ attribute EventHandler onended; |
+ attribute OnErrorEventHandler onerror; |
+ attribute EventHandler onfocus; |
+ attribute EventHandler oninput; |
+ attribute EventHandler oninvalid; |
+ attribute EventHandler onkeydown; |
+ attribute EventHandler onkeypress; |
+ attribute EventHandler onkeyup; |
+ attribute EventHandler onload; |
+ attribute EventHandler onloadeddata; |
+ attribute EventHandler onloadedmetadata; |
+ attribute EventHandler onloadstart; |
+ attribute EventHandler onmousedown; |
+ [LenientThis] attribute EventHandler onmouseenter; |
+ [LenientThis] attribute EventHandler onmouseleave; |
+ attribute EventHandler onmousemove; |
+ attribute EventHandler onmouseout; |
+ attribute EventHandler onmouseover; |
+ attribute EventHandler onmouseup; |
+ attribute EventHandler onmousewheel; |
+ attribute EventHandler onpause; |
+ attribute EventHandler onplay; |
+ attribute EventHandler onplaying; |
+ attribute EventHandler onprogress; |
+ attribute EventHandler onratechange; |
+ attribute EventHandler onreset; |
+ attribute EventHandler onresize; |
+ attribute EventHandler onscroll; |
+ attribute EventHandler onseeked; |
+ attribute EventHandler onseeking; |
+ attribute EventHandler onselect; |
+ attribute EventHandler onshow; |
+ attribute EventHandler onstalled; |
+ attribute EventHandler onsubmit; |
+ attribute EventHandler onsuspend; |
+ attribute EventHandler ontimeupdate; |
+ attribute EventHandler ontoggle; |
+ attribute EventHandler onvolumechange; |
+ attribute EventHandler onwaiting; |
+}; |
+ |
+[NoInterfaceObject] |
+interface DocumentAndElementEventHandlers { |
+ attribute EventHandler oncopy; |
+ attribute EventHandler oncut; |
+ attribute EventHandler onpaste; |
+}; |
+ |
+[NoInterfaceObject] |
+interface WindowEventHandlers { |
+ attribute EventHandler onafterprint; |
+ attribute EventHandler onbeforeprint; |
+ attribute OnBeforeUnloadEventHandler onbeforeunload; |
+ attribute EventHandler onhashchange; |
+ attribute EventHandler onlanguagechange; |
+ attribute EventHandler onmessage; |
+ attribute EventHandler onoffline; |
+ attribute EventHandler ononline; |
+ attribute EventHandler onpagehide; |
+ attribute EventHandler onpageshow; |
+ attribute EventHandler onpopstate; |
+ attribute EventHandler onstorage; |
+ attribute EventHandler onunload; |
+}; |
+ |
+typedef (DOMString or Function) TimerHandler; |
+ |
+[NoInterfaceObject, Exposed=(Window,Worker)] |
+interface WindowOrWorkerGlobalScope { |
+ [Replaceable] readonly attribute USVString origin; |
+ |
+ // base64 utility methods |
+ DOMString btoa(DOMString btoa); |
+ DOMString atob(DOMString atob); |
+ |
+ // timers |
+ long setTimeout(TimerHandler handler, optional long timeout = 0, any... arguments); |
+ void clearTimeout(optional long handle = 0); |
+ long setInterval(TimerHandler handler, optional long timeout = 0, any... arguments); |
+ void clearInterval(optional long handle = 0); |
+ |
+ // ImageBitmap |
+ Promise<ImageBitmap> createImageBitmap(ImageBitmapSource image, optional ImageBitmapOptions options); |
+ Promise<ImageBitmap> createImageBitmap(ImageBitmapSource image, long sx, long sy, long sw, long sh, optional ImageBitmapOptions options); |
+}; |
+ |
+Window implements WindowOrWorkerGlobalScope; |
+WorkerGlobalScope implements WindowOrWorkerGlobalScope; |
+ |
+[NoInterfaceObject] |
+interface WindowModal { |
+ readonly attribute any dialogArguments; |
+ attribute any returnValue; |
+}; |
+ |
+interface Navigator { |
+ // objects implementing this interface also implement the interfaces given below |
+}; |
+Navigator implements NavigatorID; |
+Navigator implements NavigatorLanguage; |
+Navigator implements NavigatorOnLine; |
+Navigator implements NavigatorContentUtils; |
+Navigator implements NavigatorCookies; |
+Navigator implements NavigatorPlugins; |
+Navigator implements NavigatorConcurrentHardware; |
+ |
+[NoInterfaceObject, Exposed=(Window,Worker)] |
+interface NavigatorID { |
+ readonly attribute DOMString appCodeName; // constant "Mozilla" |
+ readonly attribute DOMString appName; // constant "Netscape" |
+ readonly attribute DOMString appVersion; |
+ readonly attribute DOMString platform; |
+ readonly attribute DOMString product; // constant "Gecko" |
+ [Exposed=Window] readonly attribute DOMString productSub; |
+ readonly attribute DOMString userAgent; |
+ [Exposed=Window] readonly attribute DOMString vendor; |
+ [Exposed=Window] readonly attribute DOMString vendorSub; // constant "" |
+}; |
+ |
+[NoInterfaceObject, Exposed=(Window,Worker)] |
+interface NavigatorLanguage { |
+ readonly attribute DOMString language; |
+ readonly attribute FrozenArray<DOMString> languages; |
+}; |
+ |
+[NoInterfaceObject] |
+interface NavigatorContentUtils { |
+ // content handler registration |
+ void registerProtocolHandler(DOMString scheme, USVString url, DOMString title); |
+ void registerContentHandler(DOMString mimeType, USVString url, DOMString title); |
+ DOMString isProtocolHandlerRegistered(DOMString scheme, USVString url); |
+ DOMString isContentHandlerRegistered(DOMString mimeType, USVString url); |
+ void unregisterProtocolHandler(DOMString scheme, USVString url); |
+ void unregisterContentHandler(DOMString mimeType, USVString url); |
+}; |
+ |
+[NoInterfaceObject] |
+interface NavigatorCookies { |
+ readonly attribute boolean cookieEnabled; |
+}; |
+ |
+[NoInterfaceObject] |
+interface NavigatorPlugins { |
+ [SameObject] readonly attribute PluginArray plugins; |
+ [SameObject] readonly attribute MimeTypeArray mimeTypes; |
+ boolean javaEnabled(); |
+}; |
+ |
+interface PluginArray { |
+ void refresh(optional boolean reload = false); |
+ readonly attribute unsigned long length; |
+ getter Plugin? item(unsigned long index); |
+ getter Plugin? namedItem(DOMString name); |
+}; |
+ |
+[NoInterfaceObject, Exposed=(Window,Worker)] |
+interface NavigatorConcurrentHardware { |
+ readonly attribute unsigned long long hardwareConcurrency; |
+}; |
+ |
+interface MimeTypeArray { |
+ readonly attribute unsigned long length; |
+ getter MimeType? item(unsigned long index); |
+ getter MimeType? namedItem(DOMString name); |
+}; |
+ |
+interface Plugin { |
+ readonly attribute DOMString name; |
+ readonly attribute DOMString description; |
+ readonly attribute DOMString filename; |
+ readonly attribute unsigned long length; |
+ getter MimeType? item(unsigned long index); |
+ getter MimeType? namedItem(DOMString name); |
+}; |
+ |
+interface MimeType { |
+ readonly attribute DOMString type; |
+ readonly attribute DOMString description; |
+ readonly attribute DOMString suffixes; // comma-separated |
+ readonly attribute Plugin enabledPlugin; |
+}; |
+ |
+interface External { |
+ void AddSearchProvider(DOMString engineURL); |
+ unsigned long IsSearchProviderInstalled(DOMString engineURL); |
+}; |
+ |
+[Exposed=(Window,Worker)] |
+interface ImageBitmap { |
+ readonly attribute unsigned long width; |
+ readonly attribute unsigned long height; |
+}; |
+ |
+typedef (HTMLImageElement or |
+ HTMLVideoElement or |
+ HTMLCanvasElement or |
+ Blob or |
+ ImageData or |
+ CanvasRenderingContext2D or |
+ ImageBitmap) ImageBitmapSource; |
+ |
+dictionary ImageBitmapOptions { |
+ ImageOrientation imageOrientation = "none"; |
+ PremultiplyAlpha premultiplyAlpha = "default"; |
+ ColorSpaceConversion colorSpaceConversion = "default"; |
+ [EnforceRange] unsigned long resizeWidth; |
+ [EnforceRange] unsigned long resizeHeight; |
+ ResizeQuality resizeQuality = "low"; |
+}; |
+ |
+[Constructor(DOMString type, optional MessageEventInit eventInitDict), Exposed=(Window,Worker)] |
+interface MessageEvent : Event { |
+ readonly attribute any data; |
+ readonly attribute DOMString origin; |
+ readonly attribute DOMString lastEventId; |
+ readonly attribute (WindowProxy or MessagePort)? source; |
+ readonly attribute FrozenArray<MessagePort> ports; |
+ |
+ void initMessageEvent(DOMString type, boolean bubbles, boolean cancelable, any data, DOMString origin, DOMString lastEventId, (WindowProxy or MessagePort) source, sequence<MessagePort> ports); |
+}; |
+ |
+dictionary MessageEventInit : EventInit { |
+ any data; |
+ DOMString origin; |
+ DOMString lastEventId; |
+ (WindowProxy or MessagePort)? source; |
+ sequence<MessagePort> ports; |
+}; |
+ |
+[Constructor(DOMString url, optional EventSourceInit eventSourceInitDict), Exposed=(Window,Worker)] |
+interface EventSource : EventTarget { |
+ readonly attribute DOMString url; |
+ readonly attribute boolean withCredentials; |
+ |
+ // ready state |
+ const unsigned short CONNECTING = 0; |
+ const unsigned short OPEN = 1; |
+ const unsigned short CLOSED = 2; |
+ readonly attribute unsigned short readyState; |
+ |
+ // networking |
+ attribute EventHandler onopen; |
+ attribute EventHandler onmessage; |
+ attribute EventHandler onerror; |
+ void close(); |
+}; |
+ |
+dictionary EventSourceInit { |
+ boolean withCredentials = false; |
+}; |
+ |
+enum BinaryType { "blob", "arraybuffer" }; |
+[Constructor(DOMString url, optional (DOMString or DOMString[]) protocols), Exposed=(Window,Worker)] |
+interface WebSocket : EventTarget { |
+ readonly attribute DOMString url; |
+ |
+ // ready state |
+ const unsigned short CONNECTING = 0; |
+ const unsigned short OPEN = 1; |
+ const unsigned short CLOSING = 2; |
+ const unsigned short CLOSED = 3; |
+ readonly attribute unsigned short readyState; |
+ readonly attribute unsigned long bufferedAmount; |
+ |
+ // networking |
+ attribute EventHandler onopen; |
+ attribute EventHandler onerror; |
+ attribute EventHandler onclose; |
+ readonly attribute DOMString extensions; |
+ readonly attribute DOMString protocol; |
+ void close([Clamp] optional unsigned short code, optional USVString reason); |
+ |
+ // messaging |
+ attribute EventHandler onmessage; |
+ attribute BinaryType binaryType; |
+ void send(USVString data); |
+ void send(Blob data); |
+ void send(ArrayBuffer data); |
+ void send(ArrayBufferView data); |
+}; |
+ |
+[Constructor(DOMString type, optional CloseEventInit eventInitDict), Exposed=(Window,Worker)] |
+interface CloseEvent : Event { |
+ readonly attribute boolean wasClean; |
+ readonly attribute unsigned short code; |
+ readonly attribute DOMString reason; |
+}; |
+ |
+dictionary CloseEventInit : EventInit { |
+ boolean wasClean; |
+ unsigned short code; |
+ DOMString reason; |
+}; |
+ |
+[Constructor, Exposed=(Window,Worker)] |
+interface MessageChannel { |
+ readonly attribute MessagePort port1; |
+ readonly attribute MessagePort port2; |
+}; |
+ |
+[Exposed=(Window,Worker)] |
+interface MessagePort : EventTarget { |
+ void postMessage(any message, optional sequence<Transferable> transfer); |
+ void start(); |
+ void close(); |
+ |
+ // event handlers |
+ attribute EventHandler onmessage; |
+}; |
+// MessagePort implements Transferable; |
+ |
+[Constructor(DOMString channel), Exposed=(Window,Worker)] |
+interface BroadcastChannel : EventTarget { |
+ readonly attribute DOMString name; |
+ void postMessage(any message); |
+ void close(); |
+ attribute EventHandler onmessage; |
+}; |
+ |
+[Exposed=Worker] |
+interface WorkerGlobalScope : EventTarget { |
+ readonly attribute WorkerGlobalScope self; |
+ readonly attribute WorkerLocation location; |
+ readonly attribute WorkerNavigator navigator; |
+ void importScripts(USVString... urls); |
+ |
+ attribute OnErrorEventHandler onerror; |
+ attribute EventHandler onlanguagechange; |
+ attribute EventHandler onoffline; |
+ attribute EventHandler ononline; |
+ |
+ // also has additional members in a partial interface |
+}; |
+ |
+[Global=(Worker,DedicatedWorker),Exposed=DedicatedWorker] |
+/*sealed*/ interface DedicatedWorkerGlobalScope : WorkerGlobalScope { |
+ void postMessage(any message, optional sequence<Transferable> transfer); |
+ attribute EventHandler onmessage; |
+}; |
+ |
+[Global=(Worker,SharedWorker),Exposed=SharedWorker] |
+/*sealed*/ interface SharedWorkerGlobalScope : WorkerGlobalScope { |
+ readonly attribute DOMString name; |
+ readonly attribute ApplicationCache applicationCache; |
+ attribute EventHandler onconnect; |
+}; |
+ |
+[NoInterfaceObject, Exposed=(Window,Worker)] |
+interface AbstractWorker { |
+ attribute EventHandler onerror; |
+}; |
+ |
+[Constructor(DOMString scriptURL), Exposed=(Window,Worker)] |
+interface Worker : EventTarget { |
+ void terminate(); |
+ |
+ void postMessage(any message, optional sequence<Transferable> transfer); |
+ attribute EventHandler onmessage; |
+}; |
+Worker implements AbstractWorker; |
+ |
+[Constructor(DOMString scriptURL, optional DOMString name), Exposed=(Window,Worker)] |
+interface SharedWorker : EventTarget { |
+ readonly attribute MessagePort port; |
+}; |
+SharedWorker implements AbstractWorker; |
+ |
+[Exposed=Worker] |
+interface WorkerNavigator {}; |
+WorkerNavigator implements NavigatorID; |
+WorkerNavigator implements NavigatorLanguage; |
+WorkerNavigator implements NavigatorOnLine; |
+ |
+[Exposed=Worker] |
+interface WorkerLocation { |
+ stringifier readonly attribute USVString href; |
+ readonly attribute USVString origin; |
+ readonly attribute USVString protocol; |
+ readonly attribute USVString host; |
+ readonly attribute USVString hostname; |
+ readonly attribute USVString port; |
+ readonly attribute USVString pathname; |
+ readonly attribute USVString search; |
+ readonly attribute USVString hash; |
+}; |
+ |
+interface Storage { |
+ readonly attribute unsigned long length; |
+ DOMString? key(unsigned long index); |
+ getter DOMString? getItem(DOMString key); |
+ setter creator void setItem(DOMString key, DOMString value); |
+ deleter void removeItem(DOMString key); |
+ void clear(); |
+}; |
+ |
+[NoInterfaceObject] |
+interface WindowSessionStorage { |
+ readonly attribute Storage sessionStorage; |
+}; |
+Window implements WindowSessionStorage; |
+ |
+[NoInterfaceObject] |
+interface WindowLocalStorage { |
+ readonly attribute Storage localStorage; |
+}; |
+Window implements WindowLocalStorage; |
+ |
+[Constructor(DOMString type, optional StorageEventInit eventInitDict)] |
+interface StorageEvent : Event { |
+ readonly attribute DOMString? key; |
+ readonly attribute DOMString? oldValue; |
+ readonly attribute DOMString? newValue; |
+ readonly attribute DOMString url; |
+ readonly attribute Storage? storageArea; |
+}; |
+ |
+dictionary StorageEventInit : EventInit { |
+ DOMString? key; |
+ DOMString? oldValue; |
+ DOMString? newValue; |
+ DOMString url; |
+ Storage? storageArea; |
+}; |
+ |
+interface HTMLAppletElement : HTMLElement { |
+ attribute DOMString align; |
+ attribute DOMString alt; |
+ attribute DOMString archive; |
+ attribute DOMString code; |
+ attribute DOMString codeBase; |
+ attribute DOMString height; |
+ attribute unsigned long hspace; |
+ attribute DOMString name; |
+ attribute DOMString _object; // the underscore is not part of the identifier |
+ attribute unsigned long vspace; |
+ attribute DOMString width; |
+}; |
+ |
+interface HTMLMarqueeElement : HTMLElement { |
+ attribute DOMString behavior; |
+ attribute DOMString bgColor; |
+ attribute DOMString direction; |
+ attribute DOMString height; |
+ attribute unsigned long hspace; |
+ attribute long loop; |
+ attribute unsigned long scrollAmount; |
+ attribute unsigned long scrollDelay; |
+ attribute boolean trueSpeed; |
+ attribute unsigned long vspace; |
+ attribute DOMString width; |
+ |
+ attribute EventHandler onbounce; |
+ attribute EventHandler onfinish; |
+ attribute EventHandler onstart; |
+ |
+ void start(); |
+ void stop(); |
+}; |
+ |
+interface HTMLFrameSetElement : HTMLElement { |
+ attribute DOMString cols; |
+ attribute DOMString rows; |
+}; |
+HTMLFrameSetElement implements WindowEventHandlers; |
+ |
+interface HTMLFrameElement : HTMLElement { |
+ attribute DOMString name; |
+ attribute DOMString scrolling; |
+ attribute DOMString src; |
+ attribute DOMString frameBorder; |
+ attribute DOMString longDesc; |
+ attribute boolean noResize; |
+ readonly attribute Document? contentDocument; |
+ readonly attribute WindowProxy? contentWindow; |
+ |
+ [TreatNullAs=EmptyString] attribute DOMString marginHeight; |
+ [TreatNullAs=EmptyString] attribute DOMString marginWidth; |
+}; |
+ |
+partial interface HTMLAnchorElement { |
+ attribute DOMString coords; |
+ attribute DOMString charset; |
+ attribute DOMString name; |
+ attribute DOMString rev; |
+ attribute DOMString shape; |
+}; |
+ |
+partial interface HTMLAreaElement { |
+ attribute boolean noHref; |
+}; |
+ |
+partial interface HTMLBodyElement { |
+ [TreatNullAs=EmptyString] attribute DOMString text; |
+ [TreatNullAs=EmptyString] attribute DOMString link; |
+ [TreatNullAs=EmptyString] attribute DOMString vLink; |
+ [TreatNullAs=EmptyString] attribute DOMString aLink; |
+ [TreatNullAs=EmptyString] attribute DOMString bgColor; |
+ attribute DOMString background; |
+}; |
+ |
+partial interface HTMLBRElement { |
+ attribute DOMString clear; |
+}; |
+ |
+partial interface HTMLTableCaptionElement { |
+ attribute DOMString align; |
+}; |
+ |
+partial interface HTMLTableColElement { |
+ attribute DOMString align; |
+ attribute DOMString ch; |
+ attribute DOMString chOff; |
+ attribute DOMString vAlign; |
+ attribute DOMString width; |
+}; |
+ |
+interface HTMLDirectoryElement : HTMLElement { |
+ attribute boolean compact; |
+}; |
+ |
+partial interface HTMLDivElement { |
+ attribute DOMString align; |
+}; |
+ |
+partial interface HTMLDListElement { |
+ attribute boolean compact; |
+}; |
+ |
+partial interface HTMLEmbedElement { |
+ attribute DOMString align; |
+ attribute DOMString name; |
+}; |
+ |
+interface HTMLFontElement : HTMLElement { |
+ [TreatNullAs=EmptyString] attribute DOMString color; |
+ attribute DOMString face; |
+ attribute DOMString size; |
+}; |
+ |
+partial interface HTMLHeadingElement { |
+ attribute DOMString align; |
+}; |
+ |
+partial interface HTMLHRElement { |
+ attribute DOMString align; |
+ attribute DOMString color; |
+ attribute boolean noShade; |
+ attribute DOMString size; |
+ attribute DOMString width; |
+}; |
+ |
+partial interface HTMLHtmlElement { |
+ attribute DOMString version; |
+}; |
+ |
+partial interface HTMLIFrameElement { |
+ [CEReactions] attribute DOMString align; |
+ [CEReactions] attribute DOMString scrolling; |
+ [CEReactions] attribute DOMString frameBorder; |
+ [CEReactions] attribute USVString longDesc; |
+ |
+ [CEReactions, TreatNullAs=EmptyString] attribute DOMString marginHeight; |
+ [CEReactions, TreatNullAs=EmptyString] attribute DOMString marginWidth; |
+}; |
+ |
+partial interface HTMLImageElement { |
+ [CEReactions] attribute DOMString name; |
+ [CEReactions] attribute USVString lowsrc; |
+ [CEReactions] attribute DOMString align; |
+ [CEReactions] attribute unsigned long hspace; |
+ [CEReactions] attribute unsigned long vspace; |
+ [CEReactions] attribute USVString longDesc; |
+ |
+ [CEReactions, TreatNullAs=EmptyString] attribute DOMString border; |
+}; |
+ |
+partial interface HTMLInputElement { |
+ attribute DOMString align; |
+ attribute DOMString useMap; |
+}; |
+ |
+partial interface HTMLLegendElement { |
+ attribute DOMString align; |
+}; |
+ |
+partial interface HTMLLIElement { |
+ attribute DOMString type; |
+}; |
+ |
+partial interface HTMLLinkElement { |
+ [CEReactions] attribute DOMString charset; |
+ [CEReactions] attribute DOMString rev; |
+ [CEReactions] attribute DOMString target; |
+}; |
+ |
+partial interface HTMLMenuElement { |
+ attribute boolean compact; |
+}; |
+ |
+partial interface HTMLMetaElement { |
+ attribute DOMString scheme; |
+}; |
+ |
+partial interface HTMLObjectElement { |
+ attribute DOMString align; |
+ attribute DOMString archive; |
+ attribute DOMString code; |
+ attribute boolean declare; |
+ attribute unsigned long hspace; |
+ attribute DOMString standby; |
+ attribute unsigned long vspace; |
+ attribute DOMString codeBase; |
+ attribute DOMString codeType; |
+ |
+ [TreatNullAs=EmptyString] attribute DOMString border; |
+}; |
+ |
+partial interface HTMLOListElement { |
+ attribute boolean compact; |
+}; |
+ |
+partial interface HTMLParagraphElement { |
+ attribute DOMString align; |
+}; |
+ |
+partial interface HTMLParamElement { |
+ attribute DOMString type; |
+ attribute DOMString valueType; |
+}; |
+ |
+partial interface HTMLPreElement { |
+ attribute long width; |
+}; |
+ |
+partial interface HTMLScriptElement { |
+ attribute DOMString event; |
+ attribute DOMString htmlFor; |
+}; |
+ |
+partial interface HTMLTableElement { |
+ attribute DOMString align; |
+ attribute DOMString border; |
+ attribute DOMString frame; |
+ attribute DOMString rules; |
+ attribute DOMString summary; |
+ attribute DOMString width; |
+ |
+ [TreatNullAs=EmptyString] attribute DOMString bgColor; |
+ [TreatNullAs=EmptyString] attribute DOMString cellPadding; |
+ [TreatNullAs=EmptyString] attribute DOMString cellSpacing; |
+}; |
+ |
+partial interface HTMLTableSectionElement { |
+ attribute DOMString align; |
+ attribute DOMString ch; |
+ attribute DOMString chOff; |
+ attribute DOMString vAlign; |
+}; |
+ |
+partial interface HTMLTableCellElement { |
+ attribute DOMString align; |
+ attribute DOMString axis; |
+ attribute DOMString height; |
+ attribute DOMString width; |
+ |
+ attribute DOMString ch; |
+ attribute DOMString chOff; |
+ attribute boolean noWrap; |
+ attribute DOMString vAlign; |
+ |
+ [TreatNullAs=EmptyString] attribute DOMString bgColor; |
+}; |
+ |
+partial interface HTMLTableRowElement { |
+ attribute DOMString align; |
+ attribute DOMString ch; |
+ attribute DOMString chOff; |
+ attribute DOMString vAlign; |
+ |
+ [TreatNullAs=EmptyString] attribute DOMString bgColor; |
+}; |
+ |
+partial interface HTMLUListElement { |
+ attribute boolean compact; |
+ attribute DOMString type; |
+}; |
+ |
+partial interface Document { |
+ [TreatNullAs=EmptyString] attribute DOMString fgColor; |
+ [TreatNullAs=EmptyString] attribute DOMString linkColor; |
+ [TreatNullAs=EmptyString] attribute DOMString vlinkColor; |
+ [TreatNullAs=EmptyString] attribute DOMString alinkColor; |
+ [TreatNullAs=EmptyString] attribute DOMString bgColor; |
+ |
+ readonly attribute HTMLCollection anchors; |
+ readonly attribute HTMLCollection applets; |
+ |
+ void clear(); |
+ void captureEvents(); |
+ void releaseEvents(); |
+ |
+ readonly attribute HTMLAllCollection all; |
+}; |
+ |
+partial interface Window { |
+ void captureEvents(); |
+ void releaseEvents(); |
+}; |