diff options
Diffstat (limited to 'dom/webidl')
88 files changed, 530 insertions, 427 deletions
diff --git a/dom/webidl/Attr.webidl b/dom/webidl/Attr.webidl index c836afd9b..763ed02ef 100644 --- a/dom/webidl/Attr.webidl +++ b/dom/webidl/Attr.webidl @@ -12,7 +12,7 @@ interface Attr : Node { readonly attribute DOMString localName; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString value; [Constant] diff --git a/dom/webidl/CSSStyleDeclaration.webidl b/dom/webidl/CSSStyleDeclaration.webidl index d9b2511de..561e5cce1 100644 --- a/dom/webidl/CSSStyleDeclaration.webidl +++ b/dom/webidl/CSSStyleDeclaration.webidl @@ -10,7 +10,7 @@ interface CSSRule; interface CSSStyleDeclaration { - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString cssText; readonly attribute unsigned long length; @@ -22,9 +22,9 @@ interface CSSStyleDeclaration { [Throws] CSSValue? getPropertyCSSValue(DOMString property); DOMString getPropertyPriority(DOMString property); - [Throws] + [CEReactions, Throws] void setProperty(DOMString property, [TreatNullAs=EmptyString] DOMString value, [TreatNullAs=EmptyString] optional DOMString priority = ""); - [Throws] + [CEReactions, Throws] DOMString removeProperty(DOMString property); readonly attribute CSSRule? parentRule; diff --git a/dom/webidl/ChildNode.webidl b/dom/webidl/ChildNode.webidl index fcf388059..ae36cd93e 100644 --- a/dom/webidl/ChildNode.webidl +++ b/dom/webidl/ChildNode.webidl @@ -9,13 +9,13 @@ [NoInterfaceObject] interface ChildNode { - [Throws, Unscopable] + [CEReactions, Throws, Unscopable] void before((Node or DOMString)... nodes); - [Throws, Unscopable] + [CEReactions, Throws, Unscopable] void after((Node or DOMString)... nodes); - [Throws, Unscopable] + [CEReactions, Throws, Unscopable] void replaceWith((Node or DOMString)... nodes); - [Unscopable] + [CEReactions, Unscopable] void remove(); }; diff --git a/dom/webidl/CustomElementRegistry.webidl b/dom/webidl/CustomElementRegistry.webidl index dff612174..788b6a4ed 100644 --- a/dom/webidl/CustomElementRegistry.webidl +++ b/dom/webidl/CustomElementRegistry.webidl @@ -5,7 +5,7 @@ // https://html.spec.whatwg.org/#dom-window-customelements [Func="CustomElementRegistry::IsCustomElementEnabled"] interface CustomElementRegistry { - [Throws] + [CEReactions, Throws] void define(DOMString name, Function functionConstructor, optional ElementDefinitionOptions options); any get(DOMString name); diff --git a/dom/webidl/DOMStringMap.webidl b/dom/webidl/DOMStringMap.webidl index 0ed98e148..a59910e0b 100644 --- a/dom/webidl/DOMStringMap.webidl +++ b/dom/webidl/DOMStringMap.webidl @@ -14,7 +14,8 @@ [OverrideBuiltins] interface DOMStringMap { getter DOMString (DOMString name); - [Throws] + [CEReactions, Throws] setter creator void (DOMString name, DOMString value); + [CEReactions] deleter void (DOMString name); }; diff --git a/dom/webidl/DOMTokenList.webidl b/dom/webidl/DOMTokenList.webidl index a1ea243b3..69663d055 100644 --- a/dom/webidl/DOMTokenList.webidl +++ b/dom/webidl/DOMTokenList.webidl @@ -14,17 +14,17 @@ interface DOMTokenList { readonly attribute unsigned long length; getter DOMString? item(unsigned long index); boolean contains(DOMString token); - [Throws] + [CEReactions, Throws] void add(DOMString... tokens); - [Throws] + [CEReactions, Throws] void remove(DOMString... tokens); - [Throws] + [CEReactions, Throws] void replace(DOMString token, DOMString newToken); - [Throws] + [CEReactions, Throws] boolean toggle(DOMString token, optional boolean force); - [Throws] + [CEReactions, Throws] boolean supports(DOMString token); - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString value; stringifier DOMString (); iterable<DOMString?>; diff --git a/dom/webidl/Document.webidl b/dom/webidl/Document.webidl index 904b1fb77..b28903ae2 100644 --- a/dom/webidl/Document.webidl +++ b/dom/webidl/Document.webidl @@ -65,9 +65,9 @@ interface Document : Node { [NewObject, Throws] ProcessingInstruction createProcessingInstruction(DOMString target, DOMString data); - [Throws] + [CEReactions, Throws] Node importNode(Node node, optional boolean deep = false); - [Throws] + [CEReactions, Throws] Node adoptNode(Node node); [NewObject, Throws] @@ -108,9 +108,9 @@ partial interface Document { // DOM tree accessors //(Not proxy yet)getter object (DOMString name); - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString title; - [Pure] + [CEReactions, Pure] attribute DOMString dir; //(HTML only) attribute HTMLElement? body; //(HTML only)readonly attribute HTMLHeadElement? head; diff --git a/dom/webidl/Element.webidl b/dom/webidl/Element.webidl index cf17523a5..a6b2bfdd5 100644 --- a/dom/webidl/Element.webidl +++ b/dom/webidl/Element.webidl @@ -25,9 +25,9 @@ interface Element : Node { [Pure] readonly attribute DOMString tagName; - [Pure] + [CEReactions, Pure] attribute DOMString id; - [Pure] + [CEReactions, Pure] attribute DOMString className; [Constant, PutForwards=value] readonly attribute DOMTokenList classList; @@ -40,15 +40,15 @@ interface Element : Node { DOMString? getAttribute(DOMString name); [Pure] DOMString? getAttributeNS(DOMString? namespace, DOMString localName); - [Throws] + [CEReactions, Throws] boolean toggleAttribute(DOMString name, optional boolean force); - [Throws] + [CEReactions, Throws] void setAttribute(DOMString name, DOMString value); - [Throws] + [CEReactions, Throws] void setAttributeNS(DOMString? namespace, DOMString name, DOMString value); - [Throws] + [CEReactions, Throws] void removeAttribute(DOMString name); - [Throws] + [CEReactions, Throws] void removeAttributeNS(DOMString? namespace, DOMString localName); [Pure] boolean hasAttribute(DOMString name); @@ -72,7 +72,7 @@ interface Element : Node { [Pure] HTMLCollection getElementsByClassName(DOMString classNames); - [Throws, Pure] + [CEReactions, Throws, Pure] Element? insertAdjacentElement(DOMString where, Element element); // historical [Throws] @@ -137,12 +137,12 @@ interface Element : Node { // Obsolete methods. Attr? getAttributeNode(DOMString name); - [Throws] + [CEReactions, Throws] Attr? setAttributeNode(Attr newAttr); - [Throws] + [CEReactions, Throws] Attr? removeAttributeNode(Attr oldAttr); Attr? getAttributeNodeNS(DOMString? namespaceURI, DOMString localName); - [Throws] + [CEReactions, Throws] Attr? setAttributeNodeNS(Attr newAttr); [ChromeOnly] @@ -212,11 +212,11 @@ partial interface Element { // http://domparsing.spec.whatwg.org/#extensions-to-the-element-interface partial interface Element { - [Pure,SetterThrows,TreatNullAs=EmptyString] + [CEReactions, Pure,SetterThrows,TreatNullAs=EmptyString] attribute DOMString innerHTML; - [Pure,SetterThrows,TreatNullAs=EmptyString] + [CEReactions, Pure,SetterThrows,TreatNullAs=EmptyString] attribute DOMString outerHTML; - [Throws] + [CEReactions, Throws] void insertAdjacentHTML(DOMString position, DOMString text); }; diff --git a/dom/webidl/EventHandler.webidl b/dom/webidl/EventHandler.webidl index b92e3a2bb..484a8e95c 100644 --- a/dom/webidl/EventHandler.webidl +++ b/dom/webidl/EventHandler.webidl @@ -94,7 +94,6 @@ interface GlobalEventHandlers { [Pref="dom.select_events.enabled"] attribute EventHandler onselectstart; - [Pref="dom.details_element.enabled"] attribute EventHandler ontoggle; // Pointer events handlers diff --git a/dom/webidl/HTMLAnchorElement.webidl b/dom/webidl/HTMLAnchorElement.webidl index 0b8ded6d7..0326dff6a 100644 --- a/dom/webidl/HTMLAnchorElement.webidl +++ b/dom/webidl/HTMLAnchorElement.webidl @@ -12,25 +12,26 @@ */ // http://www.whatwg.org/specs/web-apps/current-work/#the-a-element +[HTMLConstructor] interface HTMLAnchorElement : HTMLElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString target; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString download; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString ping; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString rel; - [SetterThrows, Pref="network.http.enablePerElementReferrer"] + [CEReactions, SetterThrows, Pref="network.http.enablePerElementReferrer"] attribute DOMString referrerPolicy; [PutForwards=value] readonly attribute DOMTokenList relList; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString hreflang; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString type; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString text; }; @@ -38,14 +39,14 @@ HTMLAnchorElement implements HTMLHyperlinkElementUtils; // http://www.whatwg.org/specs/web-apps/current-work/#other-elements,-attributes-and-apis partial interface HTMLAnchorElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString coords; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString charset; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString name; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString rev; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString shape; }; diff --git a/dom/webidl/HTMLAreaElement.webidl b/dom/webidl/HTMLAreaElement.webidl index be3f37885..0980d178a 100644 --- a/dom/webidl/HTMLAreaElement.webidl +++ b/dom/webidl/HTMLAreaElement.webidl @@ -13,20 +13,21 @@ */ // http://www.whatwg.org/specs/web-apps/current-work/#the-area-element +[HTMLConstructor] interface HTMLAreaElement : HTMLElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString alt; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString coords; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString shape; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString target; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString download; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString ping; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString rel; [SetterThrows, Pref="network.http.enablePerElementReferrer"] attribute DOMString referrerPolicy; @@ -38,6 +39,6 @@ HTMLAreaElement implements HTMLHyperlinkElementUtils; // http://www.whatwg.org/specs/web-apps/current-work/#other-elements,-attributes-and-apis partial interface HTMLAreaElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute boolean noHref; }; diff --git a/dom/webidl/HTMLAudioElement.webidl b/dom/webidl/HTMLAudioElement.webidl index 8537453c0..725669839 100644 --- a/dom/webidl/HTMLAudioElement.webidl +++ b/dom/webidl/HTMLAudioElement.webidl @@ -11,6 +11,6 @@ * and create derivative works of this document. */ -[NamedConstructor=Audio(optional DOMString src)] +[HTMLConstructor, NamedConstructor=Audio(optional DOMString src)] interface HTMLAudioElement : HTMLMediaElement {}; diff --git a/dom/webidl/HTMLBRElement.webidl b/dom/webidl/HTMLBRElement.webidl index cf5cb8a67..b0b0f80ed 100644 --- a/dom/webidl/HTMLBRElement.webidl +++ b/dom/webidl/HTMLBRElement.webidl @@ -13,11 +13,12 @@ */ // http://www.whatwg.org/specs/web-apps/current-work/#the-br-element +[HTMLConstructor] interface HTMLBRElement : HTMLElement {}; // http://www.whatwg.org/specs/web-apps/current-work/#other-elements,-attributes-and-apis partial interface HTMLBRElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString clear; }; diff --git a/dom/webidl/HTMLBaseElement.webidl b/dom/webidl/HTMLBaseElement.webidl index d982f4654..ed86f8c77 100644 --- a/dom/webidl/HTMLBaseElement.webidl +++ b/dom/webidl/HTMLBaseElement.webidl @@ -12,10 +12,11 @@ */ // http://www.whatwg.org/specs/web-apps/current-work/#the-base-element +[HTMLConstructor] interface HTMLBaseElement : HTMLElement { - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString href; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString target; }; diff --git a/dom/webidl/HTMLBodyElement.webidl b/dom/webidl/HTMLBodyElement.webidl index 95df2d43a..f89c287d7 100644 --- a/dom/webidl/HTMLBodyElement.webidl +++ b/dom/webidl/HTMLBodyElement.webidl @@ -11,16 +11,23 @@ * and create derivative works of this document. */ +[HTMLConstructor] interface HTMLBodyElement : HTMLElement { }; partial interface HTMLBodyElement { - [TreatNullAs=EmptyString, SetterThrows] attribute DOMString text; - [TreatNullAs=EmptyString, SetterThrows] attribute DOMString link; - [TreatNullAs=EmptyString, SetterThrows] attribute DOMString vLink; - [TreatNullAs=EmptyString, SetterThrows] attribute DOMString aLink; - [TreatNullAs=EmptyString, SetterThrows] attribute DOMString bgColor; - [SetterThrows] attribute DOMString background; + [CEReactions, TreatNullAs=EmptyString, SetterThrows] + attribute DOMString text; + [CEReactions, TreatNullAs=EmptyString, SetterThrows] + attribute DOMString link; + [CEReactions, TreatNullAs=EmptyString, SetterThrows] + attribute DOMString vLink; + [CEReactions, TreatNullAs=EmptyString, SetterThrows] + attribute DOMString aLink; + [CEReactions, TreatNullAs=EmptyString, SetterThrows] + attribute DOMString bgColor; + [CEReactions, SetterThrows] + attribute DOMString background; }; HTMLBodyElement implements WindowEventHandlers; diff --git a/dom/webidl/HTMLButtonElement.webidl b/dom/webidl/HTMLButtonElement.webidl index 579efa39c..f129dbd7b 100644 --- a/dom/webidl/HTMLButtonElement.webidl +++ b/dom/webidl/HTMLButtonElement.webidl @@ -11,28 +11,29 @@ */ // http://www.whatwg.org/specs/web-apps/current-work/#the-button-element +[HTMLConstructor] interface HTMLButtonElement : HTMLElement { - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute boolean autofocus; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute boolean disabled; [Pure] readonly attribute HTMLFormElement? form; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString formAction; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString formEnctype; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString formMethod; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute boolean formNoValidate; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString formTarget; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString name; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString type; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString value; // Not yet implemented: // attribute HTMLMenuElement? menu; diff --git a/dom/webidl/HTMLCanvasElement.webidl b/dom/webidl/HTMLCanvasElement.webidl index 15e94f154..b567c69eb 100644 --- a/dom/webidl/HTMLCanvasElement.webidl +++ b/dom/webidl/HTMLCanvasElement.webidl @@ -13,10 +13,11 @@ interface nsISupports; interface Variant; +[HTMLConstructor] interface HTMLCanvasElement : HTMLElement { - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute unsigned long width; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute unsigned long height; [Throws] diff --git a/dom/webidl/HTMLDListElement.webidl b/dom/webidl/HTMLDListElement.webidl index 08020a497..4cf1c2183 100644 --- a/dom/webidl/HTMLDListElement.webidl +++ b/dom/webidl/HTMLDListElement.webidl @@ -13,11 +13,12 @@ */ // http://www.whatwg.org/specs/web-apps/current-work/#the-dl-element +[HTMLConstructor] interface HTMLDListElement : HTMLElement { }; // http://www.whatwg.org/specs/web-apps/current-work/#other-elements,-attributes-and-apis partial interface HTMLDListElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute boolean compact; }; diff --git a/dom/webidl/HTMLDataElement.webidl b/dom/webidl/HTMLDataElement.webidl index 821b8b483..d24537871 100644 --- a/dom/webidl/HTMLDataElement.webidl +++ b/dom/webidl/HTMLDataElement.webidl @@ -7,7 +7,8 @@ * http://www.whatwg.org/specs/web-apps/current-work/multipage/text-level-semantics.html#the-data-element */ +[HTMLConstructor] interface HTMLDataElement : HTMLElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString value; }; diff --git a/dom/webidl/HTMLDataListElement.webidl b/dom/webidl/HTMLDataListElement.webidl index 83b20cd2b..4c38fddf3 100644 --- a/dom/webidl/HTMLDataListElement.webidl +++ b/dom/webidl/HTMLDataListElement.webidl @@ -11,6 +11,7 @@ * and create derivative works of this document. */ +[HTMLConstructor] interface HTMLDataListElement : HTMLElement { readonly attribute HTMLCollection options; }; diff --git a/dom/webidl/HTMLDetailsElement.webidl b/dom/webidl/HTMLDetailsElement.webidl index 133ecf125..04df82e30 100644 --- a/dom/webidl/HTMLDetailsElement.webidl +++ b/dom/webidl/HTMLDetailsElement.webidl @@ -11,8 +11,8 @@ * and create derivative works of this document. */ -[Pref="dom.details_element.enabled"] +[HTMLConstructor] interface HTMLDetailsElement : HTMLElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute boolean open; }; diff --git a/dom/webidl/HTMLDialogElement.webidl b/dom/webidl/HTMLDialogElement.webidl index b6cdbacf6..563740c87 100644 --- a/dom/webidl/HTMLDialogElement.webidl +++ b/dom/webidl/HTMLDialogElement.webidl @@ -13,11 +13,13 @@ [Pref="dom.dialog_element.enabled"] interface HTMLDialogElement : HTMLElement { - [SetterThrows] attribute boolean open; + [CEReactions, SetterThrows] + attribute boolean open; attribute DOMString returnValue; - + [CEReactions] void show(); - [Throws] void showModal(); - + [CEReactions, Throws] + void showModal(); + [CEReactions] void close(optional DOMString returnValue); }; diff --git a/dom/webidl/HTMLDirectoryElement.webidl b/dom/webidl/HTMLDirectoryElement.webidl index 9d5160af1..65becbb60 100644 --- a/dom/webidl/HTMLDirectoryElement.webidl +++ b/dom/webidl/HTMLDirectoryElement.webidl @@ -12,8 +12,9 @@ */ // http://www.whatwg.org/specs/web-apps/current-work/#other-elements,-attributes-and-apis +[HTMLConstructor] interface HTMLDirectoryElement : HTMLElement { - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute boolean compact; }; diff --git a/dom/webidl/HTMLDivElement.webidl b/dom/webidl/HTMLDivElement.webidl index f50e2aad0..2b762c6fa 100644 --- a/dom/webidl/HTMLDivElement.webidl +++ b/dom/webidl/HTMLDivElement.webidl @@ -11,9 +11,10 @@ * and create derivative works of this document. */ +[HTMLConstructor] interface HTMLDivElement : HTMLElement {}; partial interface HTMLDivElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString align; }; diff --git a/dom/webidl/HTMLDocument.webidl b/dom/webidl/HTMLDocument.webidl index ffb61ccdd..ffa38d97d 100644 --- a/dom/webidl/HTMLDocument.webidl +++ b/dom/webidl/HTMLDocument.webidl @@ -13,7 +13,7 @@ interface HTMLDocument : Document { // DOM tree accessors [Throws] getter object (DOMString name); - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute HTMLElement? body; [Pure] readonly attribute HTMLHeadElement? head; @@ -32,20 +32,20 @@ interface HTMLDocument : Document { NodeList getElementsByName(DOMString elementName); // dynamic markup insertion - [Throws] + [CEReactions, Throws] Document open(optional DOMString type = "text/html", optional DOMString replace = ""); - [Throws] + [CEReactions, Throws] WindowProxy? open(DOMString url, DOMString name, DOMString features, optional boolean replace = false); - [Throws] + [CEReactions, Throws] void close(); - [Throws] + [CEReactions, Throws] void write(DOMString... text); - [Throws] + [CEReactions, Throws] void writeln(DOMString... text); - [SetterThrows, NeedsSubjectPrincipal] + [CEReactions, SetterThrows, NeedsSubjectPrincipal] attribute DOMString designMode; - [Throws] + [CEReactions, Throws] boolean execCommand(DOMString commandId, optional boolean showUI = false, optional DOMString value = ""); [Throws] @@ -58,11 +58,11 @@ interface HTMLDocument : Document { [Throws] DOMString queryCommandValue(DOMString commandId); - [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; + [CEReactions, TreatNullAs=EmptyString] attribute DOMString fgColor; + [CEReactions, TreatNullAs=EmptyString] attribute DOMString linkColor; + [CEReactions, TreatNullAs=EmptyString] attribute DOMString vlinkColor; + [CEReactions, TreatNullAs=EmptyString] attribute DOMString alinkColor; + [CEReactions, TreatNullAs=EmptyString] attribute DOMString bgColor; [Pure] readonly attribute HTMLCollection anchors; diff --git a/dom/webidl/HTMLElement.webidl b/dom/webidl/HTMLElement.webidl index 5ce5024e6..815f4a3bd 100644 --- a/dom/webidl/HTMLElement.webidl +++ b/dom/webidl/HTMLElement.webidl @@ -12,34 +12,37 @@ * and create derivative works of this document. */ +[HTMLConstructor] interface HTMLElement : Element { // metadata attributes + [CEReactions] attribute DOMString title; + [CEReactions] attribute DOMString lang; // attribute boolean translate; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString dir; [Constant] readonly attribute DOMStringMap dataset; - [GetterThrows, Pure, TreatNullAs=EmptyString] + [CEReactions, GetterThrows, Pure, TreatNullAs=EmptyString] attribute DOMString innerText; // user interaction - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute boolean hidden; void click(); - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute long tabIndex; [Throws] void focus(); [Throws] void blur(); - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString accessKey; [Pure] readonly attribute DOMString accessKeyLabel; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute boolean draggable; //[PutForwards=value] readonly attribute DOMTokenList dropzone; [SetterThrows, Pure] @@ -50,7 +53,7 @@ interface HTMLElement : Element { readonly attribute HTMLMenuElement? contextMenu; //[SetterThrows] // attribute HTMLMenuElement? contextMenu; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute boolean spellcheck; // command API diff --git a/dom/webidl/HTMLEmbedElement.webidl b/dom/webidl/HTMLEmbedElement.webidl index 36668595b..9c5361221 100644 --- a/dom/webidl/HTMLEmbedElement.webidl +++ b/dom/webidl/HTMLEmbedElement.webidl @@ -13,15 +13,15 @@ */ // http://www.whatwg.org/specs/web-apps/current-work/#the-embed-element -[NeedResolve] +[HTMLConstructor, NeedResolve] interface HTMLEmbedElement : HTMLElement { - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString src; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString type; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString width; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString height; [Throws] legacycaller any (any... arguments); @@ -29,9 +29,9 @@ interface HTMLEmbedElement : HTMLElement { // http://www.whatwg.org/specs/web-apps/current-work/#HTMLEmbedElement-partial partial interface HTMLEmbedElement { - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString align; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString name; }; diff --git a/dom/webidl/HTMLFieldSetElement.webidl b/dom/webidl/HTMLFieldSetElement.webidl index 6c9eee52b..63393bf42 100644 --- a/dom/webidl/HTMLFieldSetElement.webidl +++ b/dom/webidl/HTMLFieldSetElement.webidl @@ -11,11 +11,12 @@ * and create derivative works of this document. */ +[HTMLConstructor] interface HTMLFieldSetElement : HTMLElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute boolean disabled; readonly attribute HTMLFormElement? form; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString name; readonly attribute DOMString type; diff --git a/dom/webidl/HTMLFontElement.webidl b/dom/webidl/HTMLFontElement.webidl index 781dabb88..8db6d3246 100644 --- a/dom/webidl/HTMLFontElement.webidl +++ b/dom/webidl/HTMLFontElement.webidl @@ -11,8 +11,9 @@ * and create derivative works of this document. */ +[HTMLConstructor] interface HTMLFontElement : HTMLElement { - [TreatNullAs=EmptyString, SetterThrows] attribute DOMString color; - [SetterThrows] attribute DOMString face; - [SetterThrows] attribute DOMString size; + [CEReactions, TreatNullAs=EmptyString, SetterThrows] attribute DOMString color; + [CEReactions, SetterThrows] attribute DOMString face; + [CEReactions, SetterThrows] attribute DOMString size; }; diff --git a/dom/webidl/HTMLFormElement.webidl b/dom/webidl/HTMLFormElement.webidl index 8d248e1a5..064fe9fad 100644 --- a/dom/webidl/HTMLFormElement.webidl +++ b/dom/webidl/HTMLFormElement.webidl @@ -11,25 +11,25 @@ * and create derivative works of this document. */ -[OverrideBuiltins, LegacyUnenumerableNamedProperties] +[OverrideBuiltins, LegacyUnenumerableNamedProperties, HTMLConstructor] interface HTMLFormElement : HTMLElement { - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString acceptCharset; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString action; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString autocomplete; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString enctype; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString encoding; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString method; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString name; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute boolean noValidate; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString target; [Constant] @@ -43,6 +43,7 @@ interface HTMLFormElement : HTMLElement { [Throws] void submit(); + [CEReactions] void reset(); boolean checkValidity(); boolean reportValidity(); diff --git a/dom/webidl/HTMLFrameElement.webidl b/dom/webidl/HTMLFrameElement.webidl index 9c5aca7c4..c3ba0de63 100644 --- a/dom/webidl/HTMLFrameElement.webidl +++ b/dom/webidl/HTMLFrameElement.webidl @@ -11,25 +11,28 @@ */ // http://www.whatwg.org/specs/web-apps/current-work/#htmlframeelement +[HTMLConstructor] interface HTMLFrameElement : HTMLElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString name; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString scrolling; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString src; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString frameBorder; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString longDesc; - [SetterThrows] + [CEReactions, SetterThrows] attribute boolean noResize; [NeedsSubjectPrincipal] readonly attribute Document? contentDocument; readonly attribute WindowProxy? contentWindow; - [TreatNullAs=EmptyString, SetterThrows] attribute DOMString marginHeight; - [TreatNullAs=EmptyString, SetterThrows] attribute DOMString marginWidth; + [CEReactions, TreatNullAs=EmptyString, SetterThrows] + attribute DOMString marginHeight; + [CEReactions, TreatNullAs=EmptyString, SetterThrows] + attribute DOMString marginWidth; }; HTMLFrameElement implements MozFrameLoaderOwner; diff --git a/dom/webidl/HTMLFrameSetElement.webidl b/dom/webidl/HTMLFrameSetElement.webidl index ce00d487f..afc4465d1 100644 --- a/dom/webidl/HTMLFrameSetElement.webidl +++ b/dom/webidl/HTMLFrameSetElement.webidl @@ -11,10 +11,11 @@ * and create derivative works of this document. */ +[HTMLConstructor] interface HTMLFrameSetElement : HTMLElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString cols; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString rows; }; diff --git a/dom/webidl/HTMLHRElement.webidl b/dom/webidl/HTMLHRElement.webidl index 0495e43b3..24ba3112a 100644 --- a/dom/webidl/HTMLHRElement.webidl +++ b/dom/webidl/HTMLHRElement.webidl @@ -12,19 +12,20 @@ */ // http://www.whatwg.org/specs/web-apps/current-work/#the-hr-element +[HTMLConstructor] interface HTMLHRElement : HTMLElement { }; // http://www.whatwg.org/specs/web-apps/current-work/#other-elements,-attributes-and-apis partial interface HTMLHRElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString align; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString color; - [SetterThrows] + [CEReactions, SetterThrows] attribute boolean noShade; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString size; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString width; }; diff --git a/dom/webidl/HTMLHeadElement.webidl b/dom/webidl/HTMLHeadElement.webidl index 0ad45e384..b649712a6 100644 --- a/dom/webidl/HTMLHeadElement.webidl +++ b/dom/webidl/HTMLHeadElement.webidl @@ -12,5 +12,6 @@ */ // http://www.whatwg.org/specs/web-apps/current-work/#the-head-element +[HTMLConstructor] interface HTMLHeadElement : HTMLElement {}; diff --git a/dom/webidl/HTMLHeadingElement.webidl b/dom/webidl/HTMLHeadingElement.webidl index c07e5cb99..a39e24cfb 100644 --- a/dom/webidl/HTMLHeadingElement.webidl +++ b/dom/webidl/HTMLHeadingElement.webidl @@ -12,11 +12,12 @@ */ // http://www.whatwg.org/specs/web-apps/current-work/#the-h1,-h2,-h3,-h4,-h5,-and-h6-elements +[HTMLConstructor] interface HTMLHeadingElement : HTMLElement { }; // http://www.whatwg.org/specs/web-apps/current-work/#other-elements,-attributes-and-apis partial interface HTMLHeadingElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString align; }; diff --git a/dom/webidl/HTMLHtmlElement.webidl b/dom/webidl/HTMLHtmlElement.webidl index b06de7761..5b2a9a926 100644 --- a/dom/webidl/HTMLHtmlElement.webidl +++ b/dom/webidl/HTMLHtmlElement.webidl @@ -13,10 +13,11 @@ */ // http://www.whatwg.org/specs/web-apps/current-work/#the-html-element +[HTMLConstructor] interface HTMLHtmlElement : HTMLElement {}; // http://www.whatwg.org/specs/web-apps/current-work/#other-elements,-attributes-and-apis partial interface HTMLHtmlElement { - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString version; }; diff --git a/dom/webidl/HTMLHyperlinkElementUtils.webidl b/dom/webidl/HTMLHyperlinkElementUtils.webidl index 25f175db9..ae53fd75e 100644 --- a/dom/webidl/HTMLHyperlinkElementUtils.webidl +++ b/dom/webidl/HTMLHyperlinkElementUtils.webidl @@ -18,17 +18,26 @@ interface HTMLHyperlinkElementUtils { // Bug 824857 should remove this. stringifier; - [SetterThrows] + [CEReactions, SetterThrows] attribute USVString href; readonly attribute USVString origin; + [CEReactions] attribute USVString protocol; + [CEReactions] attribute USVString username; + [CEReactions] attribute USVString password; + [CEReactions] attribute USVString host; + [CEReactions] attribute USVString hostname; + [CEReactions] attribute USVString port; + [CEReactions] attribute USVString pathname; + [CEReactions] attribute USVString search; + [CEReactions] attribute USVString hash; }; diff --git a/dom/webidl/HTMLIFrameElement.webidl b/dom/webidl/HTMLIFrameElement.webidl index 0a1b49aff..d2859c6db 100644 --- a/dom/webidl/HTMLIFrameElement.webidl +++ b/dom/webidl/HTMLIFrameElement.webidl @@ -11,22 +11,23 @@ * and create derivative works of this document. */ +[HTMLConstructor] interface HTMLIFrameElement : HTMLElement { - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString src; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString srcdoc; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString name; [PutForwards=value] readonly attribute DOMTokenList sandbox; // attribute boolean seamless; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute boolean allowFullscreen; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString width; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString height; - [SetterThrows, Pure, Pref="network.http.enablePerElementReferrer"] + [CEReactions, SetterThrows, Pure, Pref="network.http.enablePerElementReferrer"] attribute DOMString referrerPolicy; [NeedsSubjectPrincipal] readonly attribute Document? contentDocument; @@ -35,17 +36,19 @@ interface HTMLIFrameElement : HTMLElement { // http://www.whatwg.org/specs/web-apps/current-work/#other-elements,-attributes-and-apis partial interface HTMLIFrameElement { - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString align; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString scrolling; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString frameBorder; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString longDesc; - [TreatNullAs=EmptyString,SetterThrows,Pure] attribute DOMString marginHeight; - [TreatNullAs=EmptyString,SetterThrows,Pure] attribute DOMString marginWidth; + [CEReactions, TreatNullAs=EmptyString, SetterThrows, Pure] + attribute DOMString marginHeight; + [CEReactions, TreatNullAs=EmptyString, SetterThrows, Pure] + attribute DOMString marginWidth; }; partial interface HTMLIFrameElement { diff --git a/dom/webidl/HTMLImageElement.webidl b/dom/webidl/HTMLImageElement.webidl index 243c65509..e50a9ef8e 100644 --- a/dom/webidl/HTMLImageElement.webidl +++ b/dom/webidl/HTMLImageElement.webidl @@ -16,25 +16,26 @@ interface imgIRequest; interface URI; interface nsIStreamListener; -[NamedConstructor=Image(optional unsigned long width, optional unsigned long height)] +[HTMLConstructor, + NamedConstructor=Image(optional unsigned long width, optional unsigned long height)] interface HTMLImageElement : HTMLElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString alt; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString src; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString srcset; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString? crossOrigin; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString useMap; - [SetterThrows, Pref="network.http.enablePerElementReferrer"] + [CEReactions, SetterThrows, Pref="network.http.enablePerElementReferrer"] attribute DOMString referrerPolicy; - [SetterThrows] + [CEReactions, SetterThrows] attribute boolean isMap; - [SetterThrows] + [CEReactions, SetterThrows] attribute unsigned long width; - [SetterThrows] + [CEReactions, SetterThrows] attribute unsigned long height; readonly attribute unsigned long naturalWidth; readonly attribute unsigned long naturalHeight; @@ -43,30 +44,31 @@ interface HTMLImageElement : HTMLElement { // http://www.whatwg.org/specs/web-apps/current-work/#other-elements,-attributes-and-apis partial interface HTMLImageElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString name; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString align; - [SetterThrows] + [CEReactions, SetterThrows] attribute unsigned long hspace; - [SetterThrows] + [CEReactions, SetterThrows] attribute unsigned long vspace; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString longDesc; - [TreatNullAs=EmptyString,SetterThrows] attribute DOMString border; + [CEReactions, TreatNullAs=EmptyString,SetterThrows] attribute DOMString border; }; // [Update me: not in whatwg spec yet] // http://picture.responsiveimages.org/#the-img-element partial interface HTMLImageElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString sizes; readonly attribute DOMString currentSrc; }; // Mozilla extensions. partial interface HTMLImageElement { + [CEReactions] attribute DOMString lowsrc; // These attributes are offsets from the closest view (to mimic diff --git a/dom/webidl/HTMLInputElement.webidl b/dom/webidl/HTMLInputElement.webidl index cf3e9a4c7..93ad90f45 100644 --- a/dom/webidl/HTMLInputElement.webidl +++ b/dom/webidl/HTMLInputElement.webidl @@ -21,79 +21,81 @@ enum SelectionMode { interface nsIControllers; +[HTMLConstructor] interface HTMLInputElement : HTMLElement { - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString accept; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString alt; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString autocomplete; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute boolean autofocus; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute boolean defaultChecked; [Pure] attribute boolean checked; // Bug 850337 - attribute DOMString dirName; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute boolean disabled; readonly attribute HTMLFormElement? form; [Pure] readonly attribute FileList? files; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString formAction; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString formEnctype; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString formMethod; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute boolean formNoValidate; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString formTarget; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute unsigned long height; [Pure] attribute boolean indeterminate; - [Pure, SetterThrows, Pref="dom.forms.inputmode"] + [CEReactions, Pure, SetterThrows, Pref="dom.forms.inputmode"] attribute DOMString inputMode; [Pure] readonly attribute HTMLElement? list; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString max; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute long maxLength; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString min; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute long minLength; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute boolean multiple; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString name; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString pattern; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString placeholder; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute boolean readOnly; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute boolean required; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute unsigned long size; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString src; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString step; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString type; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString defaultValue; - [Pure, TreatNullAs=EmptyString, Throws] + [CEReactions, Pure, TreatNullAs=EmptyString, Throws] attribute DOMString value; [Throws, Func="HTMLInputElement::ValueAsDateEnabled"] attribute Date? valueAsDate; [Pure, SetterThrows] attribute unrestricted double valueAsNumber; + [CEReactions] attribute unsigned long width; [Throws] @@ -132,9 +134,9 @@ interface HTMLInputElement : HTMLElement { }; partial interface HTMLInputElement { - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString align; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString useMap; }; diff --git a/dom/webidl/HTMLLIElement.webidl b/dom/webidl/HTMLLIElement.webidl index c20e00846..3f104d09e 100644 --- a/dom/webidl/HTMLLIElement.webidl +++ b/dom/webidl/HTMLLIElement.webidl @@ -13,13 +13,14 @@ */ // http://www.whatwg.org/specs/web-apps/current-work/#the-li-element +[HTMLConstructor] interface HTMLLIElement : HTMLElement { - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute long value; }; // http://www.whatwg.org/specs/web-apps/current-work/#other-elements,-attributes-and-apis partial interface HTMLLIElement { - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString type; }; diff --git a/dom/webidl/HTMLLabelElement.webidl b/dom/webidl/HTMLLabelElement.webidl index f44a56219..4b624dfaf 100644 --- a/dom/webidl/HTMLLabelElement.webidl +++ b/dom/webidl/HTMLLabelElement.webidl @@ -11,8 +11,10 @@ * and create derivative works of this document. */ +[HTMLConstructor] interface HTMLLabelElement : HTMLElement { readonly attribute HTMLFormElement? form; + [CEReactions] attribute DOMString htmlFor; readonly attribute HTMLElement? control; }; diff --git a/dom/webidl/HTMLLegendElement.webidl b/dom/webidl/HTMLLegendElement.webidl index 0ce4ae88b..6f03ecf1b 100644 --- a/dom/webidl/HTMLLegendElement.webidl +++ b/dom/webidl/HTMLLegendElement.webidl @@ -13,12 +13,13 @@ */ // http://www.whatwg.org/specs/web-apps/current-work/#the-legend-element +[HTMLConstructor] interface HTMLLegendElement : HTMLElement { readonly attribute HTMLFormElement? form; }; // http://www.whatwg.org/specs/web-apps/current-work/#other-elements,-attributes-and-apis partial interface HTMLLegendElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString align; }; diff --git a/dom/webidl/HTMLLinkElement.webidl b/dom/webidl/HTMLLinkElement.webidl index ec094e55e..eb83deab1 100644 --- a/dom/webidl/HTMLLinkElement.webidl +++ b/dom/webidl/HTMLLinkElement.webidl @@ -12,24 +12,25 @@ */ // http://www.whatwg.org/specs/web-apps/current-work/#the-link-element +[HTMLConstructor] interface HTMLLinkElement : HTMLElement { [Pure] attribute boolean disabled; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString href; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString? crossOrigin; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString rel; [PutForwards=value] readonly attribute DOMTokenList relList; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString media; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString hreflang; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString type; - [SetterThrows, Pure, Pref="network.http.enablePerElementReferrer"] + [CEReactions, SetterThrows, Pure, Pref="network.http.enablePerElementReferrer"] attribute DOMString referrerPolicy; [PutForwards=value] readonly attribute DOMTokenList sizes; }; @@ -37,11 +38,11 @@ HTMLLinkElement implements LinkStyle; // http://www.whatwg.org/specs/web-apps/current-work/#other-elements,-attributes-and-apis partial interface HTMLLinkElement { - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString charset; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString rev; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString target; }; @@ -53,6 +54,6 @@ partial interface HTMLLinkElement { // https://w3c.github.io/webappsec/specs/subresourceintegrity/#htmllinkelement-1 partial interface HTMLLinkElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString integrity; }; diff --git a/dom/webidl/HTMLMapElement.webidl b/dom/webidl/HTMLMapElement.webidl index 88fe4e54c..199c70876 100644 --- a/dom/webidl/HTMLMapElement.webidl +++ b/dom/webidl/HTMLMapElement.webidl @@ -11,8 +11,9 @@ */ // http://www.whatwg.org/specs/web-apps/current-work/#the-map-element +[HTMLConstructor] interface HTMLMapElement : HTMLElement { - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString name; [Constant] readonly attribute HTMLCollection areas; diff --git a/dom/webidl/HTMLMediaElement.webidl b/dom/webidl/HTMLMediaElement.webidl index be79d8679..ad31f38cb 100644 --- a/dom/webidl/HTMLMediaElement.webidl +++ b/dom/webidl/HTMLMediaElement.webidl @@ -17,18 +17,18 @@ interface HTMLMediaElement : HTMLElement { readonly attribute MediaError? error; // network state - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString src; readonly attribute DOMString currentSrc; - [SetterThrows] + [CEReactions, SetterThrows] 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; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString preload; [NewObject] readonly attribute TimeRanges buffered; @@ -63,9 +63,9 @@ interface HTMLMediaElement : HTMLElement { [NewObject] readonly attribute TimeRanges seekable; readonly attribute boolean ended; - [SetterThrows] + [CEReactions, SetterThrows] attribute boolean autoplay; - [SetterThrows] + [CEReactions, SetterThrows] attribute boolean loop; [Throws] Promise<void> play(); @@ -78,12 +78,12 @@ interface HTMLMediaElement : HTMLElement { // attribute MediaController? controller; // controls - [SetterThrows] + [CEReactions, SetterThrows] attribute boolean controls; [SetterThrows] attribute double volume; attribute boolean muted; - [SetterThrows] + [CEReactions, SetterThrows] attribute boolean defaultMuted; // TODO: Bug 847379 diff --git a/dom/webidl/HTMLMenuElement.webidl b/dom/webidl/HTMLMenuElement.webidl index ff81a7c80..1194226c5 100644 --- a/dom/webidl/HTMLMenuElement.webidl +++ b/dom/webidl/HTMLMenuElement.webidl @@ -15,16 +15,17 @@ interface MenuBuilder; // http://www.whatwg.org/specs/web-apps/current-work/#the-menu-element +[HTMLConstructor] interface HTMLMenuElement : HTMLElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString type; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString label; }; // http://www.whatwg.org/specs/web-apps/current-work/#other-elements,-attributes-and-apis partial interface HTMLMenuElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute boolean compact; }; diff --git a/dom/webidl/HTMLMenuItemElement.webidl b/dom/webidl/HTMLMenuItemElement.webidl index 7064885a1..f09104501 100644 --- a/dom/webidl/HTMLMenuItemElement.webidl +++ b/dom/webidl/HTMLMenuItemElement.webidl @@ -12,23 +12,24 @@ */ // http://www.whatwg.org/specs/web-apps/current-work/#the-menuitem-element +[HTMLConstructor] interface HTMLMenuItemElement : HTMLElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString type; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString label; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString icon; - [SetterThrows] + [CEReactions, SetterThrows] attribute boolean disabled; - [SetterThrows] + [CEReactions, SetterThrows] attribute boolean checked; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString radiogroup; // This should be 'default' but in the IDL implementation // this has been renamed 'defaultChecked'. - [SetterThrows] + [CEReactions, SetterThrows] attribute boolean defaultChecked; // Currently not implemented. diff --git a/dom/webidl/HTMLMetaElement.webidl b/dom/webidl/HTMLMetaElement.webidl index 5b7b0f92c..30014a955 100644 --- a/dom/webidl/HTMLMetaElement.webidl +++ b/dom/webidl/HTMLMetaElement.webidl @@ -12,17 +12,18 @@ */ // http://www.whatwg.org/specs/web-apps/current-work/#the-meta-element +[HTMLConstructor] interface HTMLMetaElement : HTMLElement { - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString name; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString httpEquiv; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString content; }; // http://www.whatwg.org/specs/web-apps/current-work/#other-elements,-attributes-and-apis partial interface HTMLMetaElement { - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString scheme; }; diff --git a/dom/webidl/HTMLMeterElement.webidl b/dom/webidl/HTMLMeterElement.webidl index 104e00353..8f93bd71e 100644 --- a/dom/webidl/HTMLMeterElement.webidl +++ b/dom/webidl/HTMLMeterElement.webidl @@ -12,18 +12,19 @@ */ // http://www.whatwg.org/specs/web-apps/current-work/#the-meter-element +[HTMLConstructor] interface HTMLMeterElement : HTMLElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute double value; - [SetterThrows] + [CEReactions, SetterThrows] attribute double min; - [SetterThrows] + [CEReactions, SetterThrows] attribute double max; - [SetterThrows] + [CEReactions, SetterThrows] attribute double low; - [SetterThrows] + [CEReactions, SetterThrows] attribute double high; - [SetterThrows] + [CEReactions, SetterThrows] attribute double optimum; readonly attribute NodeList labels; diff --git a/dom/webidl/HTMLModElement.webidl b/dom/webidl/HTMLModElement.webidl index 45086cceb..8ed8b994b 100644 --- a/dom/webidl/HTMLModElement.webidl +++ b/dom/webidl/HTMLModElement.webidl @@ -11,9 +11,10 @@ */ // http://www.whatwg.org/specs/web-apps/current-work/#attributes-common-to-ins-and-del-elements +[HTMLConstructor] interface HTMLModElement : HTMLElement { - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString cite; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString dateTime; }; diff --git a/dom/webidl/HTMLOListElement.webidl b/dom/webidl/HTMLOListElement.webidl index f41abf3ea..93084c227 100644 --- a/dom/webidl/HTMLOListElement.webidl +++ b/dom/webidl/HTMLOListElement.webidl @@ -13,17 +13,18 @@ */ // http://www.whatwg.org/specs/web-apps/current-work/#the-ol-element +[HTMLConstructor] interface HTMLOListElement : HTMLElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute boolean reversed; - [SetterThrows] + [CEReactions, SetterThrows] attribute long start; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString type; }; // http://www.whatwg.org/specs/web-apps/current-work/#other-elements,-attributes-and-apis partial interface HTMLOListElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute boolean compact; }; diff --git a/dom/webidl/HTMLObjectElement.webidl b/dom/webidl/HTMLObjectElement.webidl index ebb95ab09..7c9f7f8bc 100644 --- a/dom/webidl/HTMLObjectElement.webidl +++ b/dom/webidl/HTMLObjectElement.webidl @@ -13,23 +13,23 @@ */ // http://www.whatwg.org/specs/web-apps/current-work/#the-object-element -[NeedResolve, UnsafeInPrerendering] +[HTMLConstructor, NeedResolve, UnsafeInPrerendering] interface HTMLObjectElement : HTMLElement { - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString data; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString type; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute boolean typeMustMatch; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString name; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString useMap; [Pure] readonly attribute HTMLFormElement? form; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString width; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString height; // Not pure: can trigger about:blank instantiation [NeedsSubjectPrincipal] @@ -51,26 +51,26 @@ interface HTMLObjectElement : HTMLElement { // http://www.whatwg.org/specs/web-apps/current-work/#HTMLObjectElement-partial partial interface HTMLObjectElement { - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString align; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString archive; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString code; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute boolean declare; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute unsigned long hspace; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString standby; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute unsigned long vspace; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString codeBase; - [Pure, SetterThrows] + [CEReactions, Pure, SetterThrows] attribute DOMString codeType; - [TreatNullAs=EmptyString, Pure, SetterThrows] + [CEReactions, TreatNullAs=EmptyString, Pure, SetterThrows] attribute DOMString border; }; diff --git a/dom/webidl/HTMLOptGroupElement.webidl b/dom/webidl/HTMLOptGroupElement.webidl index a23aee30d..d46fb869d 100644 --- a/dom/webidl/HTMLOptGroupElement.webidl +++ b/dom/webidl/HTMLOptGroupElement.webidl @@ -11,9 +11,10 @@ * and create derivative works of this document. */ +[HTMLConstructor] interface HTMLOptGroupElement : HTMLElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute boolean disabled; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString label; }; diff --git a/dom/webidl/HTMLOptionElement.webidl b/dom/webidl/HTMLOptionElement.webidl index c80bedeef..b94afa3e9 100644 --- a/dom/webidl/HTMLOptionElement.webidl +++ b/dom/webidl/HTMLOptionElement.webidl @@ -11,21 +11,21 @@ * and create derivative works of this document. */ -[NamedConstructor=Option(optional DOMString text, optional DOMString value, optional boolean defaultSelected, optional boolean selected)] +[HTMLConstructor, NamedConstructor=Option(optional DOMString text, optional DOMString value, optional boolean defaultSelected, optional boolean selected)] interface HTMLOptionElement : HTMLElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute boolean disabled; readonly attribute HTMLFormElement? form; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString label; - [SetterThrows] + [CEReactions, SetterThrows] attribute boolean defaultSelected; - [SetterThrows] + [CEReactions, SetterThrows] attribute boolean selected; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString value; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString text; readonly attribute long index; }; diff --git a/dom/webidl/HTMLOptionsCollection.webidl b/dom/webidl/HTMLOptionsCollection.webidl index 4d4385d82..d8d1046ad 100644 --- a/dom/webidl/HTMLOptionsCollection.webidl +++ b/dom/webidl/HTMLOptionsCollection.webidl @@ -11,13 +11,14 @@ */ interface HTMLOptionsCollection : HTMLCollection { + [CEReactions] attribute unsigned long length; - [Throws] + [CEReactions, Throws] setter creator void (unsigned long index, HTMLOptionElement? option); - [Throws] + [CEReactions, Throws] void add((HTMLOptionElement or HTMLOptGroupElement) element, optional (HTMLElement or long)? before = null); - [Throws] + [CEReactions, Throws] void remove(long index); - [Throws] + [CEReactions, Throws] attribute long selectedIndex; }; diff --git a/dom/webidl/HTMLOutputElement.webidl b/dom/webidl/HTMLOutputElement.webidl index d0e4ecbe6..4d65209a9 100644 --- a/dom/webidl/HTMLOutputElement.webidl +++ b/dom/webidl/HTMLOutputElement.webidl @@ -12,18 +12,19 @@ */ // http://www.whatwg.org/specs/web-apps/current-work/#the-output-element +[HTMLConstructor] interface HTMLOutputElement : HTMLElement { [PutForwards=value, Constant] readonly attribute DOMTokenList htmlFor; readonly attribute HTMLFormElement? form; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString name; [Constant] readonly attribute DOMString type; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString defaultValue; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString value; readonly attribute boolean willValidate; diff --git a/dom/webidl/HTMLParagraphElement.webidl b/dom/webidl/HTMLParagraphElement.webidl index 2a626d257..289af4c9f 100644 --- a/dom/webidl/HTMLParagraphElement.webidl +++ b/dom/webidl/HTMLParagraphElement.webidl @@ -12,11 +12,12 @@ */ // http://www.whatwg.org/specs/web-apps/current-work/#the-p-element +[HTMLConstructor] interface HTMLParagraphElement : HTMLElement { }; // http://www.whatwg.org/specs/web-apps/current-work/#other-elements,-attributes-and-apis partial interface HTMLParagraphElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString align; }; diff --git a/dom/webidl/HTMLParamElement.webidl b/dom/webidl/HTMLParamElement.webidl index e2c7e8d7f..cf6b5a35a 100644 --- a/dom/webidl/HTMLParamElement.webidl +++ b/dom/webidl/HTMLParamElement.webidl @@ -13,17 +13,18 @@ */ // http://www.whatwg.org/specs/web-apps/current-work/#the-param-element +[HTMLConstructor] interface HTMLParamElement : HTMLElement { - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString name; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString value; }; // http://www.whatwg.org/specs/web-apps/current-work/#other-elements,-attributes-and-apis partial interface HTMLParamElement { - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString type; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString valueType; }; diff --git a/dom/webidl/HTMLPictureElement.webidl b/dom/webidl/HTMLPictureElement.webidl index eff30f750..387eee78d 100644 --- a/dom/webidl/HTMLPictureElement.webidl +++ b/dom/webidl/HTMLPictureElement.webidl @@ -4,5 +4,6 @@ * You can obtain one at http://mozilla.org/MPL/2.0/. */ +[HTMLConstructor] interface HTMLPictureElement : HTMLElement { }; diff --git a/dom/webidl/HTMLPreElement.webidl b/dom/webidl/HTMLPreElement.webidl index db220b74c..6929cd533 100644 --- a/dom/webidl/HTMLPreElement.webidl +++ b/dom/webidl/HTMLPreElement.webidl @@ -12,11 +12,12 @@ */ // http://www.whatwg.org/specs/web-apps/current-work/#the-pre-element +[HTMLConstructor] interface HTMLPreElement : HTMLElement { }; // http://www.whatwg.org/specs/web-apps/current-work/#other-elements,-attributes-and-apis partial interface HTMLPreElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute long width; }; diff --git a/dom/webidl/HTMLProgressElement.webidl b/dom/webidl/HTMLProgressElement.webidl index 028728e22..564b9f2a4 100644 --- a/dom/webidl/HTMLProgressElement.webidl +++ b/dom/webidl/HTMLProgressElement.webidl @@ -11,10 +11,11 @@ * and create derivative works of this document. */ +[HTMLConstructor] interface HTMLProgressElement : HTMLElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute double value; - [SetterThrows] + [CEReactions, SetterThrows] attribute double max; readonly attribute double position; readonly attribute NodeList labels; diff --git a/dom/webidl/HTMLQuoteElement.webidl b/dom/webidl/HTMLQuoteElement.webidl index a266dd353..c999b1478 100644 --- a/dom/webidl/HTMLQuoteElement.webidl +++ b/dom/webidl/HTMLQuoteElement.webidl @@ -12,8 +12,9 @@ */ // http://www.whatwg.org/specs/web-apps/current-work/#the-blockquote-element +[HTMLConstructor] interface HTMLQuoteElement : HTMLElement { - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString cite; }; diff --git a/dom/webidl/HTMLScriptElement.webidl b/dom/webidl/HTMLScriptElement.webidl index 5b64c42d7..286c0673d 100644 --- a/dom/webidl/HTMLScriptElement.webidl +++ b/dom/webidl/HTMLScriptElement.webidl @@ -8,35 +8,36 @@ * http://www.whatwg.org/specs/web-apps/current-work/#other-elements,-attributes-and-apis */ +[HTMLConstructor] interface HTMLScriptElement : HTMLElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString src; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString type; - [SetterThrows, Pref="dom.moduleScripts.enabled"] + [CEReactions, SetterThrows, Pref="dom.moduleScripts.enabled"] attribute boolean noModule; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString charset; - [SetterThrows] + [CEReactions, SetterThrows] attribute boolean async; - [SetterThrows] + [CEReactions, SetterThrows] attribute boolean defer; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString? crossOrigin; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString text; }; // http://www.whatwg.org/specs/web-apps/current-work/#other-elements,-attributes-and-apis partial interface HTMLScriptElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString event; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString htmlFor; }; // https://w3c.github.io/webappsec/specs/subresourceintegrity/#htmlscriptelement-1 partial interface HTMLScriptElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString integrity; }; diff --git a/dom/webidl/HTMLSelectElement.webidl b/dom/webidl/HTMLSelectElement.webidl index b18ca3634..537e9d84f 100644 --- a/dom/webidl/HTMLSelectElement.webidl +++ b/dom/webidl/HTMLSelectElement.webidl @@ -7,22 +7,23 @@ * http://www.whatwg.org/html/#the-select-element */ +[HTMLConstructor] interface HTMLSelectElement : HTMLElement { - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute boolean autofocus; - [Pref="dom.forms.autocomplete.experimental", SetterThrows, Pure] + [CEReactions, Pref="dom.forms.autocomplete.experimental", SetterThrows, Pure] attribute DOMString autocomplete; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute boolean disabled; [Pure] readonly attribute HTMLFormElement? form; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute boolean multiple; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString name; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute boolean required; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute unsigned long size; [Pure] @@ -30,14 +31,15 @@ interface HTMLSelectElement : HTMLElement { [Constant] readonly attribute HTMLOptionsCollection options; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute unsigned long length; getter Element? item(unsigned long index); HTMLOptionElement? namedItem(DOMString name); - [Throws] + [CEReactions, Throws] void add((HTMLOptionElement or HTMLOptGroupElement) element, optional (HTMLElement or long)? before = null); + [CEReactions] void remove(long index); - [Throws] + [CEReactions, Throws] setter creator void (unsigned long index, HTMLOptionElement? option); readonly attribute HTMLCollection selectedOptions; @@ -56,6 +58,7 @@ interface HTMLSelectElement : HTMLElement { readonly attribute NodeList labels; // https://www.w3.org/Bugs/Public/show_bug.cgi?id=20720 + [CEReactions] void remove(); }; diff --git a/dom/webidl/HTMLSourceElement.webidl b/dom/webidl/HTMLSourceElement.webidl index 10b8e6fd5..55f25e469 100644 --- a/dom/webidl/HTMLSourceElement.webidl +++ b/dom/webidl/HTMLSourceElement.webidl @@ -11,18 +11,19 @@ * and create derivative works of this document. */ +[HTMLConstructor] interface HTMLSourceElement : HTMLElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString src; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString type; }; partial interface HTMLSourceElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString srcset; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString sizes; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString media; }; diff --git a/dom/webidl/HTMLSpanElement.webidl b/dom/webidl/HTMLSpanElement.webidl index 43a2d97f2..6f65cdfb3 100644 --- a/dom/webidl/HTMLSpanElement.webidl +++ b/dom/webidl/HTMLSpanElement.webidl @@ -12,4 +12,5 @@ */ // http://www.whatwg.org/specs/web-apps/current-work/#the-span-element +[HTMLConstructor] interface HTMLSpanElement : HTMLElement {}; diff --git a/dom/webidl/HTMLStyleElement.webidl b/dom/webidl/HTMLStyleElement.webidl index 7ed01a8f1..3cacbf62f 100644 --- a/dom/webidl/HTMLStyleElement.webidl +++ b/dom/webidl/HTMLStyleElement.webidl @@ -8,12 +8,13 @@ * http://www.whatwg.org/specs/web-apps/current-work/#other-elements,-attributes-and-apis */ +[HTMLConstructor] interface HTMLStyleElement : HTMLElement { [Pure] attribute boolean disabled; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString media; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString type; [SetterThrows, Pure] attribute boolean scoped; diff --git a/dom/webidl/HTMLTableCaptionElement.webidl b/dom/webidl/HTMLTableCaptionElement.webidl index 688b9f925..48c9d354a 100644 --- a/dom/webidl/HTMLTableCaptionElement.webidl +++ b/dom/webidl/HTMLTableCaptionElement.webidl @@ -11,9 +11,10 @@ * and create derivative works of this document. */ +[HTMLConstructor] interface HTMLTableCaptionElement : HTMLElement {}; partial interface HTMLTableCaptionElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString align; }; diff --git a/dom/webidl/HTMLTableCellElement.webidl b/dom/webidl/HTMLTableCellElement.webidl index e970a5040..aff94914f 100644 --- a/dom/webidl/HTMLTableCellElement.webidl +++ b/dom/webidl/HTMLTableCellElement.webidl @@ -11,41 +11,43 @@ * and create derivative works of this document. */ +[HTMLConstructor] interface HTMLTableCellElement : HTMLElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute unsigned long colSpan; - [SetterThrows] + [CEReactions, SetterThrows] attribute unsigned long rowSpan; //[PutForwards=value] readonly attribute DOMTokenList headers; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString headers; readonly attribute long cellIndex; // Mozilla-specific extensions - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString abbr; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString scope; }; partial interface HTMLTableCellElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString align; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString axis; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString height; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString width; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString ch; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString chOff; - [SetterThrows] + [CEReactions, SetterThrows] attribute boolean noWrap; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString vAlign; - [TreatNullAs=EmptyString, SetterThrows] attribute DOMString bgColor; + [CEReactions, TreatNullAs=EmptyString, SetterThrows] + attribute DOMString bgColor; }; diff --git a/dom/webidl/HTMLTableColElement.webidl b/dom/webidl/HTMLTableColElement.webidl index c927541a3..02be4590a 100644 --- a/dom/webidl/HTMLTableColElement.webidl +++ b/dom/webidl/HTMLTableColElement.webidl @@ -11,20 +11,21 @@ * and create derivative works of this document. */ +[HTMLConstructor] interface HTMLTableColElement : HTMLElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute unsigned long span; }; partial interface HTMLTableColElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString align; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString ch; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString chOff; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString vAlign; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString width; }; diff --git a/dom/webidl/HTMLTableElement.webidl b/dom/webidl/HTMLTableElement.webidl index a06f590e0..f81e00041 100644 --- a/dom/webidl/HTMLTableElement.webidl +++ b/dom/webidl/HTMLTableElement.webidl @@ -11,45 +11,52 @@ * and create derivative works of this document. */ +[HTMLConstructor] interface HTMLTableElement : HTMLElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute HTMLTableCaptionElement? caption; HTMLElement createCaption(); + [CEReactions] void deleteCaption(); - [SetterThrows] + [CEReactions, SetterThrows] attribute HTMLTableSectionElement? tHead; HTMLElement createTHead(); + [CEReactions] void deleteTHead(); - [SetterThrows] + [CEReactions, SetterThrows] attribute HTMLTableSectionElement? tFoot; HTMLElement createTFoot(); + [CEReactions] void deleteTFoot(); readonly attribute HTMLCollection tBodies; HTMLElement createTBody(); readonly attribute HTMLCollection rows; [Throws] HTMLElement insertRow(optional long index = -1); - [Throws] + [CEReactions, Throws] void deleteRow(long index); // attribute boolean sortable; //void stopSorting(); }; partial interface HTMLTableElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString align; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString border; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString frame; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString rules; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString summary; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString width; - [TreatNullAs=EmptyString, SetterThrows] attribute DOMString bgColor; - [TreatNullAs=EmptyString, SetterThrows] attribute DOMString cellPadding; - [TreatNullAs=EmptyString, SetterThrows] attribute DOMString cellSpacing; + [CEReactions, TreatNullAs=EmptyString, SetterThrows] + attribute DOMString bgColor; + [CEReactions, TreatNullAs=EmptyString, SetterThrows] + attribute DOMString cellPadding; + [CEReactions, TreatNullAs=EmptyString, SetterThrows] + attribute DOMString cellSpacing; }; diff --git a/dom/webidl/HTMLTableRowElement.webidl b/dom/webidl/HTMLTableRowElement.webidl index 2a356a20e..153d271f1 100644 --- a/dom/webidl/HTMLTableRowElement.webidl +++ b/dom/webidl/HTMLTableRowElement.webidl @@ -11,25 +11,27 @@ * and create derivative works of this document. */ +[HTMLConstructor] interface HTMLTableRowElement : HTMLElement { readonly attribute long rowIndex; readonly attribute long sectionRowIndex; readonly attribute HTMLCollection cells; - [Throws] + [CEReactions, Throws] HTMLElement insertCell(optional long index = -1); [Throws] void deleteCell(long index); }; partial interface HTMLTableRowElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString align; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString ch; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString chOff; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString vAlign; - [TreatNullAs=EmptyString, SetterThrows] attribute DOMString bgColor; + [CEReactions, TreatNullAs=EmptyString, SetterThrows] + attribute DOMString bgColor; }; diff --git a/dom/webidl/HTMLTableSectionElement.webidl b/dom/webidl/HTMLTableSectionElement.webidl index 310d0ece6..a71682fc1 100644 --- a/dom/webidl/HTMLTableSectionElement.webidl +++ b/dom/webidl/HTMLTableSectionElement.webidl @@ -11,21 +11,22 @@ * and create derivative works of this document. */ +[HTMLConstructor] interface HTMLTableSectionElement : HTMLElement { readonly attribute HTMLCollection rows; [Throws] HTMLElement insertRow(optional long index = -1); - [Throws] + [CEReactions, Throws] void deleteRow(long index); }; partial interface HTMLTableSectionElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString align; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString ch; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString chOff; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString vAlign; }; diff --git a/dom/webidl/HTMLTemplateElement.webidl b/dom/webidl/HTMLTemplateElement.webidl index c518995f6..f77eeaa42 100644 --- a/dom/webidl/HTMLTemplateElement.webidl +++ b/dom/webidl/HTMLTemplateElement.webidl @@ -9,6 +9,7 @@ * liability, trademark and document use rules apply. */ +[HTMLConstructor] interface HTMLTemplateElement : HTMLElement { readonly attribute DocumentFragment content; }; diff --git a/dom/webidl/HTMLTextAreaElement.webidl b/dom/webidl/HTMLTextAreaElement.webidl index 4df687a0b..7a181bf39 100644 --- a/dom/webidl/HTMLTextAreaElement.webidl +++ b/dom/webidl/HTMLTextAreaElement.webidl @@ -14,40 +14,41 @@ interface nsIEditor; interface MozControllers; +[HTMLConstructor] interface HTMLTextAreaElement : HTMLElement { // attribute DOMString autocomplete; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute boolean autofocus; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute unsigned long cols; // attribute DOMString dirName; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute boolean disabled; [Pure] readonly attribute HTMLFormElement? form; // attribute DOMString inputMode; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute long maxLength; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute long minLength; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString name; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString placeholder; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute boolean readOnly; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute boolean required; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute unsigned long rows; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString wrap; [Constant] readonly attribute DOMString type; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString defaultValue; - [TreatNullAs=EmptyString] attribute DOMString value; + [CEReactions, TreatNullAs=EmptyString] attribute DOMString value; readonly attribute unsigned long textLength; readonly attribute boolean willValidate; diff --git a/dom/webidl/HTMLTimeElement.webidl b/dom/webidl/HTMLTimeElement.webidl index 517ca9981..35c06fef3 100644 --- a/dom/webidl/HTMLTimeElement.webidl +++ b/dom/webidl/HTMLTimeElement.webidl @@ -7,7 +7,8 @@ * http://www.whatwg.org/specs/web-apps/current-work/multipage/text-level-semantics.html#the-time-element */ +[HTMLConstructor] interface HTMLTimeElement : HTMLElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString dateTime; }; diff --git a/dom/webidl/HTMLTitleElement.webidl b/dom/webidl/HTMLTitleElement.webidl index e6c8f2c61..bbce70bb2 100644 --- a/dom/webidl/HTMLTitleElement.webidl +++ b/dom/webidl/HTMLTitleElement.webidl @@ -7,7 +7,8 @@ * http://www.whatwg.org/specs/web-apps/current-work/#the-title-element */ +[HTMLConstructor] interface HTMLTitleElement : HTMLElement { - [Throws] + [CEReactions, Throws] attribute DOMString text; }; diff --git a/dom/webidl/HTMLTrackElement.webidl b/dom/webidl/HTMLTrackElement.webidl index dd88e9beb..cbb70db2a 100644 --- a/dom/webidl/HTMLTrackElement.webidl +++ b/dom/webidl/HTMLTrackElement.webidl @@ -7,16 +7,17 @@ * http://www.whatwg.org/specs/web-apps/current-work/#the-track-element */ +[HTMLConstructor] interface HTMLTrackElement : HTMLElement { - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString kind; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString src; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString srclang; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString label; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute boolean default; const unsigned short NONE = 0; diff --git a/dom/webidl/HTMLUListElement.webidl b/dom/webidl/HTMLUListElement.webidl index 0528198c9..725437494 100644 --- a/dom/webidl/HTMLUListElement.webidl +++ b/dom/webidl/HTMLUListElement.webidl @@ -13,13 +13,14 @@ */ // http://www.whatwg.org/specs/web-apps/current-work/#the-ul-element +[HTMLConstructor] interface HTMLUListElement : HTMLElement { }; // http://www.whatwg.org/specs/web-apps/current-work/#other-elements,-attributes-and-apis partial interface HTMLUListElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute boolean compact; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString type; }; diff --git a/dom/webidl/HTMLVideoElement.webidl b/dom/webidl/HTMLVideoElement.webidl index af28d5418..5ae4c016f 100644 --- a/dom/webidl/HTMLVideoElement.webidl +++ b/dom/webidl/HTMLVideoElement.webidl @@ -11,14 +11,15 @@ * and create derivative works of this document. */ +[HTMLConstructor] interface HTMLVideoElement : HTMLMediaElement { - [SetterThrows] + [CEReactions, SetterThrows] attribute unsigned long width; - [SetterThrows] + [CEReactions, SetterThrows] attribute unsigned long height; readonly attribute unsigned long videoWidth; readonly attribute unsigned long videoHeight; - [SetterThrows] + [CEReactions, SetterThrows] attribute DOMString poster; }; diff --git a/dom/webidl/NamedNodeMap.webidl b/dom/webidl/NamedNodeMap.webidl index 41fbfcbb4..88e2ff51f 100644 --- a/dom/webidl/NamedNodeMap.webidl +++ b/dom/webidl/NamedNodeMap.webidl @@ -6,17 +6,17 @@ [LegacyUnenumerableNamedProperties] interface NamedNodeMap { getter Attr? getNamedItem(DOMString name); - [Throws, BinaryName="setNamedItemNS"] + [CEReactions, Throws, BinaryName="setNamedItemNS"] Attr? setNamedItem(Attr arg); - [Throws] + [CEReactions, Throws] Attr removeNamedItem(DOMString name); getter Attr? item(unsigned long index); readonly attribute unsigned long length; Attr? getNamedItemNS(DOMString? namespaceURI, DOMString localName); - [Throws] + [CEReactions, Throws] Attr? setNamedItemNS(Attr arg); - [Throws] + [CEReactions, Throws] Attr removeNamedItemNS(DOMString? namespaceURI, DOMString localName); }; diff --git a/dom/webidl/Node.webidl b/dom/webidl/Node.webidl index 7d18899b0..8b6dca788 100644 --- a/dom/webidl/Node.webidl +++ b/dom/webidl/Node.webidl @@ -57,21 +57,21 @@ interface Node : EventTarget { [Pure] readonly attribute Node? nextSibling; - [SetterThrows, Pure] + [CEReactions, SetterThrows, Pure] attribute DOMString? nodeValue; - [Throws, Pure] + [CEReactions, Throws, Pure] attribute DOMString? textContent; - [Throws] + [CEReactions, Throws] Node insertBefore(Node node, Node? child); - [Throws] + [CEReactions, Throws] Node appendChild(Node node); - [Throws] + [CEReactions, Throws] Node replaceChild(Node node, Node child); - [Throws] + [CEReactions, Throws] Node removeChild(Node child); void normalize(); - [Throws] + [CEReactions, Throws] Node cloneNode(optional boolean deep = false); [Pure] boolean isSameNode(Node? node); diff --git a/dom/webidl/ParentNode.webidl b/dom/webidl/ParentNode.webidl index 5834b9be3..aa6ca5db2 100644 --- a/dom/webidl/ParentNode.webidl +++ b/dom/webidl/ParentNode.webidl @@ -18,8 +18,8 @@ interface ParentNode { [Pure] readonly attribute unsigned long childElementCount; - [Throws, Unscopable] + [CEReactions, Throws, Unscopable] void prepend((Node or DOMString)... nodes); - [Throws, Unscopable] + [CEReactions, Throws, Unscopable] void append((Node or DOMString)... nodes); }; diff --git a/dom/webidl/Range.webidl b/dom/webidl/Range.webidl index ac8e1ebf0..6b8be970b 100644 --- a/dom/webidl/Range.webidl +++ b/dom/webidl/Range.webidl @@ -50,15 +50,15 @@ interface Range { const unsigned short END_TO_START = 3; [Throws] short compareBoundaryPoints(unsigned short how, Range sourceRange); - [Throws] + [CEReactions, Throws] void deleteContents(); - [Throws] + [CEReactions, Throws] DocumentFragment extractContents(); - [Throws] + [CEReactions, Throws] DocumentFragment cloneContents(); - [Throws] + [CEReactions, Throws] void insertNode(Node node); - [Throws] + [CEReactions, Throws] void surroundContents(Node newParent); Range cloneRange(); @@ -77,7 +77,7 @@ interface Range { // http://domparsing.spec.whatwg.org/#dom-range-createcontextualfragment partial interface Range { - [Throws] + [CEReactions, Throws] DocumentFragment createContextualFragment(DOMString fragment); }; diff --git a/dom/webidl/ShadowRoot.webidl b/dom/webidl/ShadowRoot.webidl index a6c6de254..8dd069244 100644 --- a/dom/webidl/ShadowRoot.webidl +++ b/dom/webidl/ShadowRoot.webidl @@ -17,7 +17,7 @@ interface ShadowRoot : DocumentFragment HTMLCollection getElementsByTagName(DOMString localName); HTMLCollection getElementsByTagNameNS(DOMString? namespace, DOMString localName); HTMLCollection getElementsByClassName(DOMString classNames); - [SetterThrows,TreatNullAs=EmptyString] + [CEReactions, SetterThrows, TreatNullAs=EmptyString] attribute DOMString innerHTML; readonly attribute Element host; readonly attribute ShadowRoot? olderShadowRoot; diff --git a/dom/webidl/WebComponents.webidl b/dom/webidl/WebComponents.webidl index 3dfb960bc..f9bb8214a 100644 --- a/dom/webidl/WebComponents.webidl +++ b/dom/webidl/WebComponents.webidl @@ -10,15 +10,19 @@ * liability, trademark and document use rules apply. */ -callback LifecycleCreatedCallback = void(); -callback LifecycleAttachedCallback = void(); -callback LifecycleDetachedCallback = void(); -callback LifecycleAttributeChangedCallback = void(DOMString attrName, DOMString? oldValue, DOMString? newValue); +callback LifecycleConnectedCallback = void(); +callback LifecycleDisconnectedCallback = void(); +callback LifecycleAdoptedCallback = void(Document? oldDocument, + Document? newDocment); +callback LifecycleAttributeChangedCallback = void(DOMString attrName, + DOMString? oldValue, + DOMString? newValue, + DOMString? namespaceURI); dictionary LifecycleCallbacks { - LifecycleCreatedCallback? createdCallback; - LifecycleAttachedCallback? attachedCallback; - LifecycleDetachedCallback? detachedCallback; + LifecycleConnectedCallback? connectedCallback; + LifecycleDisconnectedCallback? disconnectedCallback; + LifecycleAdoptedCallback? adoptedCallback; LifecycleAttributeChangedCallback? attributeChangedCallback; }; diff --git a/dom/webidl/XSLTProcessor.webidl b/dom/webidl/XSLTProcessor.webidl index ce9ed846f..276e1b3fa 100644 --- a/dom/webidl/XSLTProcessor.webidl +++ b/dom/webidl/XSLTProcessor.webidl @@ -30,7 +30,7 @@ interface XSLTProcessor { * @param output This document is used to generate the output * @return DocumentFragment The result of the transformation */ - [Throws] + [CEReactions, Throws] DocumentFragment transformToFragment(Node source, Document output); @@ -41,7 +41,7 @@ interface XSLTProcessor { * @param source The node to be transformed * @return Document The result of the transformation */ - [Throws] + [CEReactions, Throws] Document transformToDocument(Node source); /** |