Thu, 22 Jan 2015 13:21:57 +0100
Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6
michael@0 | 1 | /* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ |
michael@0 | 2 | /* This Source Code Form is subject to the terms of the Mozilla Public |
michael@0 | 3 | * License, v. 2.0. If a copy of the MPL was not distributed with this |
michael@0 | 4 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ |
michael@0 | 5 | |
michael@0 | 6 | #include "nsIDOMElement.idl" |
michael@0 | 7 | #include "nsIVariant.idl" |
michael@0 | 8 | |
michael@0 | 9 | interface nsIDOMHTMLMenuElement; |
michael@0 | 10 | |
michael@0 | 11 | /** |
michael@0 | 12 | * The nsIDOMHTMLElement interface is the primary [X]HTML element |
michael@0 | 13 | * interface. It represents a single [X]HTML element in the document |
michael@0 | 14 | * tree. |
michael@0 | 15 | * |
michael@0 | 16 | * This interface is trying to follow the DOM Level 2 HTML specification: |
michael@0 | 17 | * http://www.w3.org/TR/DOM-Level-2-HTML/ |
michael@0 | 18 | * |
michael@0 | 19 | * with changes from the work-in-progress WHATWG HTML specification: |
michael@0 | 20 | * http://www.whatwg.org/specs/web-apps/current-work/ |
michael@0 | 21 | */ |
michael@0 | 22 | [scriptable, uuid(e29ddc73-ac40-40fe-8bbd-14bf2d52c53a)] |
michael@0 | 23 | interface nsIDOMHTMLElement : nsIDOMElement |
michael@0 | 24 | { |
michael@0 | 25 | // metadata attributes |
michael@0 | 26 | attribute DOMString id; |
michael@0 | 27 | attribute DOMString title; |
michael@0 | 28 | attribute DOMString lang; |
michael@0 | 29 | attribute DOMString dir; |
michael@0 | 30 | [binaryname(DOMClassName)] |
michael@0 | 31 | attribute DOMString className; |
michael@0 | 32 | readonly attribute nsISupports dataset; |
michael@0 | 33 | |
michael@0 | 34 | attribute boolean itemScope; |
michael@0 | 35 | attribute nsIVariant itemType; |
michael@0 | 36 | attribute DOMString itemId; |
michael@0 | 37 | readonly attribute nsISupports properties; |
michael@0 | 38 | // The following attributes are really nsDOMSettableTokenList, which has |
michael@0 | 39 | // PutForwards, so we express them as nsIVariants to deal with this. |
michael@0 | 40 | attribute nsIVariant itemValue; |
michael@0 | 41 | attribute nsIVariant itemProp; |
michael@0 | 42 | attribute nsIVariant itemRef; |
michael@0 | 43 | |
michael@0 | 44 | // user interaction |
michael@0 | 45 | /** |
michael@0 | 46 | * Indicates that the element is not yet, or is no longer, relevant. |
michael@0 | 47 | * |
michael@0 | 48 | * See <http://www.whatwg.org/html5/#the-hidden-attribute>. |
michael@0 | 49 | */ |
michael@0 | 50 | attribute boolean hidden; |
michael@0 | 51 | [binaryname(DOMClick)] |
michael@0 | 52 | void click(); |
michael@0 | 53 | attribute long tabIndex; |
michael@0 | 54 | void focus(); |
michael@0 | 55 | [binaryname(DOMBlur)] |
michael@0 | 56 | void blur(); |
michael@0 | 57 | attribute DOMString accessKey; |
michael@0 | 58 | readonly attribute DOMString accessKeyLabel; |
michael@0 | 59 | attribute boolean draggable; |
michael@0 | 60 | attribute DOMString contentEditable; |
michael@0 | 61 | readonly attribute boolean isContentEditable; |
michael@0 | 62 | readonly attribute nsIDOMHTMLMenuElement contextMenu; |
michael@0 | 63 | attribute boolean spellcheck; |
michael@0 | 64 | |
michael@0 | 65 | |
michael@0 | 66 | // DOM Parsing and Serialization |
michael@0 | 67 | attribute DOMString innerHTML; |
michael@0 | 68 | attribute DOMString outerHTML; |
michael@0 | 69 | void insertAdjacentHTML(in DOMString position, |
michael@0 | 70 | in DOMString text); |
michael@0 | 71 | |
michael@0 | 72 | |
michael@0 | 73 | // CSSOM View |
michael@0 | 74 | [optional_argc] void scrollIntoView([optional] in boolean top); |
michael@0 | 75 | readonly attribute nsIDOMElement offsetParent; |
michael@0 | 76 | readonly attribute long offsetTop; |
michael@0 | 77 | readonly attribute long offsetLeft; |
michael@0 | 78 | readonly attribute long offsetWidth; |
michael@0 | 79 | readonly attribute long offsetHeight; |
michael@0 | 80 | }; |