From 5f8de423f190bbb79a62f804151bc24824fa32d8 Mon Sep 17 00:00:00 2001 From: "Matt A. Tobin" Date: Fri, 2 Feb 2018 04:16:08 -0500 Subject: Add m-esr52 at 52.6.0 --- dom/interfaces/html/moz.build | 61 +++++++++ dom/interfaces/html/nsIDOMHTMLAnchorElement.idl | 55 ++++++++ dom/interfaces/html/nsIDOMHTMLAppletElement.idl | 36 ++++++ dom/interfaces/html/nsIDOMHTMLAreaElement.idl | 43 +++++++ dom/interfaces/html/nsIDOMHTMLBaseElement.idl | 24 ++++ dom/interfaces/html/nsIDOMHTMLBodyElement.idl | 32 +++++ dom/interfaces/html/nsIDOMHTMLButtonElement.idl | 45 +++++++ dom/interfaces/html/nsIDOMHTMLCanvasElement.idl | 47 +++++++ dom/interfaces/html/nsIDOMHTMLCollection.idl | 26 ++++ dom/interfaces/html/nsIDOMHTMLDirectoryElement.idl | 23 ++++ dom/interfaces/html/nsIDOMHTMLDocument.idl | 99 +++++++++++++++ dom/interfaces/html/nsIDOMHTMLElement.idl | 67 ++++++++++ dom/interfaces/html/nsIDOMHTMLEmbedElement.idl | 25 ++++ dom/interfaces/html/nsIDOMHTMLFieldSetElement.idl | 39 ++++++ dom/interfaces/html/nsIDOMHTMLFormElement.idl | 38 ++++++ dom/interfaces/html/nsIDOMHTMLFrameElement.idl | 32 +++++ dom/interfaces/html/nsIDOMHTMLFrameSetElement.idl | 28 +++++ dom/interfaces/html/nsIDOMHTMLHRElement.idl | 27 ++++ dom/interfaces/html/nsIDOMHTMLHeadElement.idl | 22 ++++ dom/interfaces/html/nsIDOMHTMLHtmlElement.idl | 23 ++++ dom/interfaces/html/nsIDOMHTMLIFrameElement.idl | 37 ++++++ dom/interfaces/html/nsIDOMHTMLImageElement.idl | 49 ++++++++ dom/interfaces/html/nsIDOMHTMLInputElement.idl | 109 ++++++++++++++++ dom/interfaces/html/nsIDOMHTMLLIElement.idl | 24 ++++ dom/interfaces/html/nsIDOMHTMLLabelElement.idl | 25 ++++ dom/interfaces/html/nsIDOMHTMLLinkElement.idl | 32 +++++ dom/interfaces/html/nsIDOMHTMLMapElement.idl | 24 ++++ dom/interfaces/html/nsIDOMHTMLMediaElement.idl | 140 +++++++++++++++++++++ dom/interfaces/html/nsIDOMHTMLMenuElement.idl | 26 ++++ dom/interfaces/html/nsIDOMHTMLMenuItemElement.idl | 30 +++++ dom/interfaces/html/nsIDOMHTMLMetaElement.idl | 26 ++++ dom/interfaces/html/nsIDOMHTMLOListElement.idl | 26 ++++ dom/interfaces/html/nsIDOMHTMLObjectElement.idl | 51 ++++++++ dom/interfaces/html/nsIDOMHTMLOptGroupElement.idl | 24 ++++ dom/interfaces/html/nsIDOMHTMLOptionElement.idl | 31 +++++ .../html/nsIDOMHTMLOptionsCollection.idl | 52 ++++++++ dom/interfaces/html/nsIDOMHTMLParagraphElement.idl | 23 ++++ dom/interfaces/html/nsIDOMHTMLPictureElement.idl | 12 ++ dom/interfaces/html/nsIDOMHTMLPreElement.idl | 23 ++++ dom/interfaces/html/nsIDOMHTMLQuoteElement.idl | 23 ++++ dom/interfaces/html/nsIDOMHTMLScriptElement.idl | 31 +++++ dom/interfaces/html/nsIDOMHTMLSelectElement.idl | 60 +++++++++ dom/interfaces/html/nsIDOMHTMLSourceElement.idl | 27 ++++ dom/interfaces/html/nsIDOMHTMLStyleElement.idl | 27 ++++ dom/interfaces/html/nsIDOMHTMLTableCellElement.idl | 37 ++++++ dom/interfaces/html/nsIDOMHTMLTextAreaElement.idl | 67 ++++++++++ dom/interfaces/html/nsIDOMHTMLUListElement.idl | 24 ++++ dom/interfaces/html/nsIDOMMozBrowserFrame.idl | 27 ++++ dom/interfaces/html/nsIDOMTimeRanges.idl | 21 ++++ dom/interfaces/html/nsIDOMValidityState.idl | 30 +++++ dom/interfaces/html/nsIMozBrowserFrame.idl | 89 +++++++++++++ 51 files changed, 2019 insertions(+) create mode 100644 dom/interfaces/html/moz.build create mode 100644 dom/interfaces/html/nsIDOMHTMLAnchorElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLAppletElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLAreaElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLBaseElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLBodyElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLButtonElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLCanvasElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLCollection.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLDirectoryElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLDocument.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLEmbedElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLFieldSetElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLFormElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLFrameElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLFrameSetElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLHRElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLHeadElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLHtmlElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLIFrameElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLImageElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLInputElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLLIElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLLabelElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLLinkElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLMapElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLMediaElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLMenuElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLMenuItemElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLMetaElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLOListElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLObjectElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLOptGroupElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLOptionElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLOptionsCollection.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLParagraphElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLPictureElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLPreElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLQuoteElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLScriptElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLSelectElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLSourceElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLStyleElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLTableCellElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLTextAreaElement.idl create mode 100644 dom/interfaces/html/nsIDOMHTMLUListElement.idl create mode 100644 dom/interfaces/html/nsIDOMMozBrowserFrame.idl create mode 100644 dom/interfaces/html/nsIDOMTimeRanges.idl create mode 100644 dom/interfaces/html/nsIDOMValidityState.idl create mode 100644 dom/interfaces/html/nsIMozBrowserFrame.idl (limited to 'dom/interfaces/html') diff --git a/dom/interfaces/html/moz.build b/dom/interfaces/html/moz.build new file mode 100644 index 000000000..895a87314 --- /dev/null +++ b/dom/interfaces/html/moz.build @@ -0,0 +1,61 @@ +# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- +# vim: set filetype=python: +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +XPIDL_SOURCES += [ + 'nsIDOMHTMLAnchorElement.idl', + 'nsIDOMHTMLAppletElement.idl', + 'nsIDOMHTMLAreaElement.idl', + 'nsIDOMHTMLBaseElement.idl', + 'nsIDOMHTMLBodyElement.idl', + 'nsIDOMHTMLButtonElement.idl', + 'nsIDOMHTMLCanvasElement.idl', + 'nsIDOMHTMLCollection.idl', + 'nsIDOMHTMLDirectoryElement.idl', + 'nsIDOMHTMLDocument.idl', + 'nsIDOMHTMLElement.idl', + 'nsIDOMHTMLEmbedElement.idl', + 'nsIDOMHTMLFieldSetElement.idl', + 'nsIDOMHTMLFormElement.idl', + 'nsIDOMHTMLFrameElement.idl', + 'nsIDOMHTMLFrameSetElement.idl', + 'nsIDOMHTMLHeadElement.idl', + 'nsIDOMHTMLHRElement.idl', + 'nsIDOMHTMLHtmlElement.idl', + 'nsIDOMHTMLIFrameElement.idl', + 'nsIDOMHTMLImageElement.idl', + 'nsIDOMHTMLInputElement.idl', + 'nsIDOMHTMLLabelElement.idl', + 'nsIDOMHTMLLIElement.idl', + 'nsIDOMHTMLLinkElement.idl', + 'nsIDOMHTMLMapElement.idl', + 'nsIDOMHTMLMediaElement.idl', + 'nsIDOMHTMLMenuElement.idl', + 'nsIDOMHTMLMenuItemElement.idl', + 'nsIDOMHTMLMetaElement.idl', + 'nsIDOMHTMLObjectElement.idl', + 'nsIDOMHTMLOListElement.idl', + 'nsIDOMHTMLOptGroupElement.idl', + 'nsIDOMHTMLOptionElement.idl', + 'nsIDOMHTMLOptionsCollection.idl', + 'nsIDOMHTMLParagraphElement.idl', + 'nsIDOMHTMLPictureElement.idl', + 'nsIDOMHTMLPreElement.idl', + 'nsIDOMHTMLQuoteElement.idl', + 'nsIDOMHTMLScriptElement.idl', + 'nsIDOMHTMLSelectElement.idl', + 'nsIDOMHTMLSourceElement.idl', + 'nsIDOMHTMLStyleElement.idl', + 'nsIDOMHTMLTableCellElement.idl', + 'nsIDOMHTMLTextAreaElement.idl', + 'nsIDOMHTMLUListElement.idl', + 'nsIDOMMozBrowserFrame.idl', + 'nsIDOMTimeRanges.idl', + 'nsIDOMValidityState.idl', + 'nsIMozBrowserFrame.idl', +] + +XPIDL_MODULE = 'dom_html' + diff --git a/dom/interfaces/html/nsIDOMHTMLAnchorElement.idl b/dom/interfaces/html/nsIDOMHTMLAnchorElement.idl new file mode 100644 index 000000000..8a38cdf95 --- /dev/null +++ b/dom/interfaces/html/nsIDOMHTMLAnchorElement.idl @@ -0,0 +1,55 @@ +/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "nsIDOMHTMLElement.idl" + +/** + * The nsIDOMHTMLAnchorElement interface is the interface to a [X]HTML + * a element. + * + * This interface is trying to follow the DOM Level 2 HTML specification: + * http://www.w3.org/TR/DOM-Level-2-HTML/ + * + * with changes from the work-in-progress WHATWG HTML specification: + * http://www.whatwg.org/specs/web-apps/current-work/ + */ + +[uuid(339c01c8-2d41-4626-b231-eec63f0241b6)] +interface nsIDOMHTMLAnchorElement : nsISupports +{ + attribute DOMString href; + attribute DOMString target; + + attribute DOMString ping; + attribute DOMString download; + + attribute DOMString rel; + attribute DOMString hreflang; + attribute DOMString type; + + /** + * An alias for the textContent attribute. + */ + [Null(Stringify)] + attribute DOMString text; + + // URL decomposition IDL attributes + attribute DOMString protocol; + attribute DOMString host; + attribute DOMString hostname; + attribute DOMString port; + attribute DOMString pathname; + attribute DOMString search; + attribute DOMString hash; + + + attribute DOMString charset; + attribute DOMString coords; + attribute DOMString name; + attribute DOMString rev; + attribute DOMString shape; + + DOMString toString(); +}; diff --git a/dom/interfaces/html/nsIDOMHTMLAppletElement.idl b/dom/interfaces/html/nsIDOMHTMLAppletElement.idl new file mode 100644 index 000000000..69760c143 --- /dev/null +++ b/dom/interfaces/html/nsIDOMHTMLAppletElement.idl @@ -0,0 +1,36 @@ +/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "nsIDOMHTMLElement.idl" + +/** + * The nsIDOMHTMLAppletElement interface is the interface to a [X]HTML + * applet element. + * + * This interface is trying to follow the DOM Level 2 HTML specification: + * http://www.w3.org/TR/DOM-Level-2-HTML/ + * + * with changes from the work-in-progress WHATWG HTML specification: + * http://www.whatwg.org/specs/web-apps/current-work/ + */ + +[uuid(0b7d12c9-4cd3-47db-99c6-0b5ff910446c)] +interface nsIDOMHTMLAppletElement : nsISupports +{ + attribute DOMString align; + attribute DOMString alt; + attribute DOMString archive; + attribute DOMString code; + attribute DOMString codeBase; + attribute DOMString height; + // Modified in DOM Level 2: + attribute long hspace; + attribute DOMString name; + // Modified in DOM Level 2: + attribute DOMString object; + // Modified in DOM Level 2: + attribute long vspace; + attribute DOMString width; +}; diff --git a/dom/interfaces/html/nsIDOMHTMLAreaElement.idl b/dom/interfaces/html/nsIDOMHTMLAreaElement.idl new file mode 100644 index 000000000..d1c9bf1e9 --- /dev/null +++ b/dom/interfaces/html/nsIDOMHTMLAreaElement.idl @@ -0,0 +1,43 @@ +/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "nsIDOMHTMLElement.idl" + +/** + * The nsIDOMHTMLAreaElement interface is the interface to a [X]HTML + * area element. + * + * This interface is trying to follow the DOM Level 2 HTML specification: + * http://www.w3.org/TR/DOM-Level-2-HTML/ + * + * with changes from the work-in-progress WHATWG HTML specification: + * http://www.whatwg.org/specs/web-apps/current-work/ + */ + +[uuid(40c78026-36dc-40ca-9221-de73267e9e99)] +interface nsIDOMHTMLAreaElement : nsISupports +{ + attribute DOMString alt; + attribute DOMString coords; + attribute DOMString shape; + attribute DOMString href; + attribute DOMString target; + + attribute DOMString ping; + attribute DOMString download; + + // URL decomposition IDL attributes + attribute DOMString protocol; + attribute DOMString host; + attribute DOMString hostname; + attribute DOMString port; + attribute DOMString pathname; + attribute DOMString search; + attribute DOMString hash; + + attribute boolean noHref; + DOMString toString(); + +}; diff --git a/dom/interfaces/html/nsIDOMHTMLBaseElement.idl b/dom/interfaces/html/nsIDOMHTMLBaseElement.idl new file mode 100644 index 000000000..6a54b0ac9 --- /dev/null +++ b/dom/interfaces/html/nsIDOMHTMLBaseElement.idl @@ -0,0 +1,24 @@ +/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "nsIDOMHTMLElement.idl" + +/** + * The nsIDOMHTMLBaseElement interface is the interface to a [X]HTML + * base element. + * + * This interface is trying to follow the DOM Level 2 HTML specification: + * http://www.w3.org/TR/DOM-Level-2-HTML/ + * + * with changes from the work-in-progress WHATWG HTML specification: + * http://www.whatwg.org/specs/web-apps/current-work/ + */ + +[uuid(a348ac22-7880-4613-af4c-984ec2ef5adc)] +interface nsIDOMHTMLBaseElement : nsISupports +{ + attribute DOMString href; + attribute DOMString target; +}; diff --git a/dom/interfaces/html/nsIDOMHTMLBodyElement.idl b/dom/interfaces/html/nsIDOMHTMLBodyElement.idl new file mode 100644 index 000000000..52937bf33 --- /dev/null +++ b/dom/interfaces/html/nsIDOMHTMLBodyElement.idl @@ -0,0 +1,32 @@ +/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "nsIDOMHTMLElement.idl" + +%{ C++ +#include "jspubtd.h" +%} + +/** + * The nsIDOMHTMLBodyElement interface is the interface to a [X]HTML + * body element. + * + * This interface is trying to follow the DOM Level 2 HTML specification: + * http://www.w3.org/TR/DOM-Level-2-HTML/ + * + * with changes from the work-in-progress WHATWG HTML specification: + * http://www.whatwg.org/specs/web-apps/current-work/ + */ + +[uuid(068630db-2c00-43dd-b167-495757a88236)] +interface nsIDOMHTMLBodyElement : nsISupports +{ + attribute DOMString aLink; + attribute DOMString background; + attribute DOMString bgColor; + attribute DOMString link; + attribute DOMString text; + attribute DOMString vLink; +}; diff --git a/dom/interfaces/html/nsIDOMHTMLButtonElement.idl b/dom/interfaces/html/nsIDOMHTMLButtonElement.idl new file mode 100644 index 000000000..42a4dfeb9 --- /dev/null +++ b/dom/interfaces/html/nsIDOMHTMLButtonElement.idl @@ -0,0 +1,45 @@ +/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "nsIDOMHTMLElement.idl" + +/** + * The nsIDOMHTMLButtonElement interface is the interface to a [X]HTML + * button element. + * + * This interface is trying to follow the DOM Level 2 HTML specification: + * http://www.w3.org/TR/DOM-Level-2-HTML/ + * + * with changes from the work-in-progress WHATWG HTML specification: + * http://www.whatwg.org/specs/web-apps/current-work/ + */ + +interface nsIDOMValidityState; + +[uuid(44b7a468-7dba-4f0c-9b4e-ee46dc0f26c7)] +interface nsIDOMHTMLButtonElement : nsISupports +{ + attribute boolean autofocus; + attribute boolean disabled; + readonly attribute nsIDOMHTMLFormElement form; + attribute DOMString formAction; + attribute DOMString formEnctype; + attribute DOMString formMethod; + attribute boolean formNoValidate; + attribute DOMString formTarget; + + attribute DOMString name; + attribute DOMString type; + attribute DOMString value; + + // The following lines are part of the constraint validation API, see: + // http://www.whatwg.org/specs/web-apps/current-work/#the-constraint-validation-api + readonly attribute boolean willValidate; + readonly attribute nsIDOMValidityState validity; + readonly attribute DOMString validationMessage; + boolean checkValidity(); + void setCustomValidity(in DOMString error); +}; + diff --git a/dom/interfaces/html/nsIDOMHTMLCanvasElement.idl b/dom/interfaces/html/nsIDOMHTMLCanvasElement.idl new file mode 100644 index 000000000..8e589629e --- /dev/null +++ b/dom/interfaces/html/nsIDOMHTMLCanvasElement.idl @@ -0,0 +1,47 @@ +/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "nsIDOMHTMLElement.idl" + +/** + * The nsIDOMHTMLCanvasElement interface is the interface to a HTML + * element. + * + * For more information on this interface, please see + * http://www.whatwg.org/specs/web-apps/current-work/#graphics + * + * @status UNDER_DEVELOPMENT + */ + +interface nsIDOMBlob; +interface nsIVariant; +interface nsIInputStreamCallback; + +[uuid(4e8f1316-b601-471d-8f44-3c650d91ee9b)] +interface nsIDOMHTMLCanvasElement : nsISupports +{ + attribute unsigned long width; + attribute unsigned long height; + attribute boolean mozOpaque; + + // Valid calls are: + // toDataURL(); -- defaults to image/png + // toDataURL(type); -- uses given type + // toDataURL(type, params); -- uses given type, and any valid parameters + [implicit_jscontext] + DOMString toDataURL([optional] in DOMString type, + [optional] in jsval params); + + // Valid calls are + // mozGetAsFile(name); -- defaults to image/png + // mozGetAsFile(name, type); -- uses given type + // The return value is a File object. + nsISupports mozGetAsFile(in DOMString name, [optional] in DOMString type); + + // A Mozilla-only extension to get a canvas context backed by double-buffered + // shared memory. Only privileged callers can call this. + nsISupports MozGetIPCContext(in DOMString contextId); +}; + diff --git a/dom/interfaces/html/nsIDOMHTMLCollection.idl b/dom/interfaces/html/nsIDOMHTMLCollection.idl new file mode 100644 index 000000000..310a4e73c --- /dev/null +++ b/dom/interfaces/html/nsIDOMHTMLCollection.idl @@ -0,0 +1,26 @@ +/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "domstubs.idl" + +/** + * The nsIDOMHTMLCollection interface is an interface to a collection + * of [X]HTML elements. + * + * This interface is trying to follow the DOM Level 2 HTML specification: + * http://www.w3.org/TR/DOM-Level-2-HTML/ + * + * with changes from the work-in-progress WHATWG HTML specification: + * http://www.whatwg.org/specs/web-apps/current-work/ + */ + +[uuid(bb07f567-5b37-4172-92aa-7d00ceed4809)] +interface nsIDOMHTMLCollection : nsISupports +{ + readonly attribute unsigned long length; + + nsIDOMNode item(in unsigned long index); + nsIDOMNode namedItem(in DOMString name); +}; diff --git a/dom/interfaces/html/nsIDOMHTMLDirectoryElement.idl b/dom/interfaces/html/nsIDOMHTMLDirectoryElement.idl new file mode 100644 index 000000000..12255ec80 --- /dev/null +++ b/dom/interfaces/html/nsIDOMHTMLDirectoryElement.idl @@ -0,0 +1,23 @@ +/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "nsIDOMHTMLElement.idl" + +/** + * The nsIDOMHTMLDirectoryElement interface is the interface to a + * [X]HTML dir element. + * + * This interface is trying to follow the DOM Level 2 HTML specification: + * http://www.w3.org/TR/DOM-Level-2-HTML/ + * + * with changes from the work-in-progress WHATWG HTML specification: + * http://www.whatwg.org/specs/web-apps/current-work/ + */ + +// Exists so that | element instanceof Ci.nsIDOMHTMLDirectoryElement | works. +[uuid(8cfff7a4-8b14-4ce0-97b0-babe78da16f8)] +interface nsIDOMHTMLDirectoryElement : nsISupports +{ +}; diff --git a/dom/interfaces/html/nsIDOMHTMLDocument.idl b/dom/interfaces/html/nsIDOMHTMLDocument.idl new file mode 100644 index 000000000..6813ccf2e --- /dev/null +++ b/dom/interfaces/html/nsIDOMHTMLDocument.idl @@ -0,0 +1,99 @@ +/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "nsIDOMDocument.idl" + +/** + * The nsIDOMHTMLDocument interface is the interface to a [X]HTML + * document object. + * + * @see + */ +interface nsISelection; + +[uuid(cd31e61f-cfc2-4b91-9385-17b6a2d0633d)] +interface nsIDOMHTMLDocument : nsIDOMDocument +{ + attribute DOMString domain; + attribute DOMString cookie; + + readonly attribute nsIDOMHTMLHeadElement head; + attribute nsIDOMHTMLElement body; + + readonly attribute nsIDOMHTMLCollection images; + readonly attribute nsIDOMHTMLCollection embeds; + // mapped to attribute embeds for NS4 compat + readonly attribute nsIDOMHTMLCollection plugins; + readonly attribute nsIDOMHTMLCollection links; + readonly attribute nsIDOMHTMLCollection forms; + readonly attribute nsIDOMHTMLCollection scripts; + nsIDOMNodeList getElementsByName(in DOMString elementName); + + // If aContentType is not something supported by nsHTMLDocument and + // the HTML content sink, trying to write to the document will + // probably throw. + // Pass aReplace = true to trigger a replacement of the previous + // document in session history; pass false for normal history handling. + [implicit_jscontext, optional_argc] + nsISupports open([optional] in DOMString aContentTypeOrUrl, + [optional] in DOMString aReplaceOrName, + [optional] in DOMString aFeatures); + void close(); + + [implicit_jscontext] + void write([optional, Null(Stringify)] in DOMString text); + [implicit_jscontext] + void writeln([optional, Null(Stringify)] in DOMString text); + + /** + * Midas additions + */ + attribute DOMString designMode; + + boolean execCommand(in DOMString commandID, + [optional] in boolean doShowUI, + [optional] in DOMString value); + + // returns true if the command is enabled (false otherwise) + boolean queryCommandEnabled(in DOMString commandID); + + // returns true if the command is in a indeterminate state (false otherwise) + boolean queryCommandIndeterm(in DOMString commandID); + + // returns true if the command has been executed (false otherwise) + boolean queryCommandState(in DOMString commandID); + + // returns true if the command is supported on the current range + boolean queryCommandSupported(in DOMString commandID); + + // returns the current value of the document or current selection for command + DOMString queryCommandValue(in DOMString commandID); + + + // Obsolete APIs + attribute DOMString fgColor; + attribute DOMString bgColor; + attribute DOMString linkColor; + attribute DOMString vlinkColor; + attribute DOMString alinkColor; + + readonly attribute nsIDOMHTMLCollection anchors; + readonly attribute nsIDOMHTMLCollection applets; + + void clear(); + + + // DOM Range + nsISelection getSelection(); + + + // More obsolete APIs + /** + * @deprecated These are old Netscape 4 methods. Do not use, + * the implementation is no-op. + */ + void captureEvents(); + void releaseEvents(); +}; diff --git a/dom/interfaces/html/nsIDOMHTMLElement.idl b/dom/interfaces/html/nsIDOMHTMLElement.idl new file mode 100644 index 000000000..63a1f9572 --- /dev/null +++ b/dom/interfaces/html/nsIDOMHTMLElement.idl @@ -0,0 +1,67 @@ +/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "nsIDOMElement.idl" +#include "nsIVariant.idl" + +interface nsIDOMHTMLMenuElement; + +/** + * The nsIDOMHTMLElement interface is the primary [X]HTML element + * interface. It represents a single [X]HTML element in the document + * tree. + * + * This interface is trying to follow the DOM Level 2 HTML specification: + * http://www.w3.org/TR/DOM-Level-2-HTML/ + * + * with changes from the work-in-progress WHATWG HTML specification: + * http://www.whatwg.org/specs/web-apps/current-work/ + */ +[uuid(b0c42392-d0e7-4f6a-beb5-a698ce648945)] +interface nsIDOMHTMLElement : nsIDOMElement +{ + // metadata attributes + attribute DOMString title; + attribute DOMString lang; + attribute DOMString dir; + readonly attribute nsISupports dataset; + + // user interaction + /** + * Indicates that the element is not yet, or is no longer, relevant. + * + * See . + */ + attribute boolean hidden; + [binaryname(DOMClick)] + void click(); + attribute long tabIndex; + void focus(); + [binaryname(DOMBlur)] + void blur(); + attribute DOMString accessKey; + readonly attribute DOMString accessKeyLabel; + attribute boolean draggable; + attribute DOMString contentEditable; + readonly attribute boolean isContentEditable; + readonly attribute nsIDOMHTMLMenuElement contextMenu; + attribute boolean spellcheck; + + + // DOM Parsing and Serialization + attribute DOMString innerHTML; + attribute DOMString outerHTML; + void insertAdjacentHTML(in DOMString position, + in DOMString text); + + + // CSSOM View + [optional_argc] void scrollIntoView([optional] in boolean top); + readonly attribute nsIDOMElement offsetParent; + readonly attribute long offsetTop; + readonly attribute long offsetLeft; + readonly attribute long offsetWidth; + readonly attribute long offsetHeight; +}; diff --git a/dom/interfaces/html/nsIDOMHTMLEmbedElement.idl b/dom/interfaces/html/nsIDOMHTMLEmbedElement.idl new file mode 100644 index 000000000..498f58fad --- /dev/null +++ b/dom/interfaces/html/nsIDOMHTMLEmbedElement.idl @@ -0,0 +1,25 @@ +/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "nsIDOMHTMLElement.idl" + +/** + * The nsIDOMHTMLEmbedElement interface is the interface to a [X]HTML + * embed element. + * + * For more information on this interface, please see + * http://www.whatwg.org/specs/web-apps/current-work/#the-embed-element + */ + +[uuid(adae53da-713d-4570-81ad-dabdd6d46241)] +interface nsIDOMHTMLEmbedElement : nsISupports +{ + attribute DOMString align; + attribute DOMString height; + attribute DOMString name; + attribute DOMString src; + attribute DOMString type; + attribute DOMString width; +}; diff --git a/dom/interfaces/html/nsIDOMHTMLFieldSetElement.idl b/dom/interfaces/html/nsIDOMHTMLFieldSetElement.idl new file mode 100644 index 000000000..32a21e72a --- /dev/null +++ b/dom/interfaces/html/nsIDOMHTMLFieldSetElement.idl @@ -0,0 +1,39 @@ +/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "nsIDOMHTMLElement.idl" + +/** + * The nsIDOMHTMLFieldSetElement interface is the interface to a + * [X]HTML fieldset element. + * + * This interface is trying to follow the DOM Level 2 HTML specification: + * http://www.w3.org/TR/DOM-Level-2-HTML/ + * + * with changes from the work-in-progress WHATWG HTML specification: + * http://www.whatwg.org/specs/web-apps/current-work/ + */ + +interface nsIDOMValidityState; + +[uuid(e3d91535-9da3-4c4b-a809-f17d85a4fb9f)] +interface nsIDOMHTMLFieldSetElement : nsISupports +{ + attribute boolean disabled; + readonly attribute nsIDOMHTMLFormElement form; + attribute DOMString name; + + readonly attribute DOMString type; + + readonly attribute nsIDOMHTMLCollection elements; + + // The following lines are parte of the constraint validation API, see: + // http://www.whatwg.org/specs/web-apps/current-work/#the-constraint-validation-api + readonly attribute boolean willValidate; + readonly attribute nsIDOMValidityState validity; + readonly attribute DOMString validationMessage; + boolean checkValidity(); + void setCustomValidity(in DOMString error); +}; diff --git a/dom/interfaces/html/nsIDOMHTMLFormElement.idl b/dom/interfaces/html/nsIDOMHTMLFormElement.idl new file mode 100644 index 000000000..8cb776795 --- /dev/null +++ b/dom/interfaces/html/nsIDOMHTMLFormElement.idl @@ -0,0 +1,38 @@ +/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "nsIDOMHTMLElement.idl" + +/** + * The nsIDOMHTMLFormElement interface is the interface to a [X]HTML + * form element. + * + * This interface is trying to follow the DOM Level 2 HTML specification: + * http://www.w3.org/TR/DOM-Level-2-HTML/ + * + * with changes from the work-in-progress WHATWG HTML specification: + * http://www.whatwg.org/specs/web-apps/current-work/ + */ + +[uuid(ad9b2ad0-9d29-43f6-b1a2-a1fd24627e6b)] +interface nsIDOMHTMLFormElement : nsISupports +{ + 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 nsIDOMHTMLCollection elements; + readonly attribute long length; + + void submit(); + void reset(); + boolean checkValidity(); +}; diff --git a/dom/interfaces/html/nsIDOMHTMLFrameElement.idl b/dom/interfaces/html/nsIDOMHTMLFrameElement.idl new file mode 100644 index 000000000..25f693947 --- /dev/null +++ b/dom/interfaces/html/nsIDOMHTMLFrameElement.idl @@ -0,0 +1,32 @@ +/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "nsIDOMHTMLElement.idl" + +/** + * The nsIDOMHTMLFrameElement interface is the interface to a [X]HTML + * frame element. + * + * This interface is trying to follow the DOM Level 2 HTML specification: + * http://www.w3.org/TR/DOM-Level-2-HTML/ + * + * with changes from the work-in-progress WHATWG HTML specification: + * http://www.whatwg.org/specs/web-apps/current-work/ + */ + +[uuid(012a8982-c9d3-4614-91e2-18ee51c97c06)] +interface nsIDOMHTMLFrameElement : nsISupports +{ + attribute DOMString frameBorder; + attribute DOMString longDesc; + attribute DOMString marginHeight; + attribute DOMString marginWidth; + attribute DOMString name; + attribute boolean noResize; + attribute DOMString scrolling; + attribute DOMString src; + // Introduced in DOM Level 2: + readonly attribute nsIDOMDocument contentDocument; +}; diff --git a/dom/interfaces/html/nsIDOMHTMLFrameSetElement.idl b/dom/interfaces/html/nsIDOMHTMLFrameSetElement.idl new file mode 100644 index 000000000..87105caec --- /dev/null +++ b/dom/interfaces/html/nsIDOMHTMLFrameSetElement.idl @@ -0,0 +1,28 @@ +/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "nsIDOMHTMLElement.idl" + +%{ C++ +#include "jspubtd.h" +%} + +/** + * The nsIDOMHTMLFrameSetElement interface is the interface to a + * [X]HTML frameset element. + * + * This interface is trying to follow the DOM Level 2 HTML specification: + * http://www.w3.org/TR/DOM-Level-2-HTML/ + * + * with changes from the work-in-progress WHATWG HTML specification: + * http://www.whatwg.org/specs/web-apps/current-work/ + */ + +[uuid(14b29269-c387-4cff-8463-b0871ca0be3a)] +interface nsIDOMHTMLFrameSetElement : nsISupports +{ + attribute DOMString cols; + attribute DOMString rows; +}; diff --git a/dom/interfaces/html/nsIDOMHTMLHRElement.idl b/dom/interfaces/html/nsIDOMHTMLHRElement.idl new file mode 100644 index 000000000..b5f036b5a --- /dev/null +++ b/dom/interfaces/html/nsIDOMHTMLHRElement.idl @@ -0,0 +1,27 @@ +/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "nsIDOMHTMLElement.idl" + +/** + * The nsIDOMHTMLHRElement interface is the interface to a [X]HTML hr + * element. + * + * This interface is trying to follow the DOM Level 2 HTML specification: + * http://www.w3.org/TR/DOM-Level-2-HTML/ + * + * with changes from the work-in-progress WHATWG HTML specification: + * http://www.whatwg.org/specs/web-apps/current-work/ + */ + +[uuid(30771953-b9f4-44de-b0fe-e490949af98b)] +interface nsIDOMHTMLHRElement : nsISupports +{ + attribute DOMString align; + attribute boolean noShade; + attribute DOMString size; + attribute DOMString width; + attribute DOMString color; +}; diff --git a/dom/interfaces/html/nsIDOMHTMLHeadElement.idl b/dom/interfaces/html/nsIDOMHTMLHeadElement.idl new file mode 100644 index 000000000..86554a869 --- /dev/null +++ b/dom/interfaces/html/nsIDOMHTMLHeadElement.idl @@ -0,0 +1,22 @@ +/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "nsIDOMHTMLElement.idl" + +/** + * The nsIDOMHTMLHeadElement interface is the interface to a [X]HTML + * head element. + * + * This interface is trying to follow the DOM Level 2 HTML specification: + * http://www.w3.org/TR/DOM-Level-2-HTML/ + * + * with changes from the work-in-progress WHATWG HTML specification: + * http://www.whatwg.org/specs/web-apps/current-work/ + */ + +[uuid(59b80014-00f5-412d-846f-725494122d42)] +interface nsIDOMHTMLHeadElement : nsISupports +{ +}; diff --git a/dom/interfaces/html/nsIDOMHTMLHtmlElement.idl b/dom/interfaces/html/nsIDOMHTMLHtmlElement.idl new file mode 100644 index 000000000..3026ed53d --- /dev/null +++ b/dom/interfaces/html/nsIDOMHTMLHtmlElement.idl @@ -0,0 +1,23 @@ +/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "nsIDOMHTMLElement.idl" + +/** + * The nsIDOMHTMLHtmlElement interface is the interface to a [X]HTML + * html element. + * + * This interface is trying to follow the DOM Level 2 HTML specification: + * http://www.w3.org/TR/DOM-Level-2-HTML/ + * + * with changes from the work-in-progress WHATWG HTML specification: + * http://www.whatwg.org/specs/web-apps/current-work/ + */ + +[uuid(6a5d2ce7-2c45-43c1-bdab-9df7a06caed1)] +interface nsIDOMHTMLHtmlElement : nsISupports +{ + attribute DOMString version; +}; diff --git a/dom/interfaces/html/nsIDOMHTMLIFrameElement.idl b/dom/interfaces/html/nsIDOMHTMLIFrameElement.idl new file mode 100644 index 000000000..2fc1384d6 --- /dev/null +++ b/dom/interfaces/html/nsIDOMHTMLIFrameElement.idl @@ -0,0 +1,37 @@ +/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "nsIDOMHTMLElement.idl" + +/** + * The nsIDOMHTMLIFrameElement interface is the interface to a [X]HTML + * iframe element. + * + * This interface is trying to follow the DOM Level 2 HTML specification: + * http://www.w3.org/TR/DOM-Level-2-HTML/ + * + * with changes from the work-in-progress WHATWG HTML specification: + * http://www.whatwg.org/specs/web-apps/current-work/ + */ + +[uuid(9fd7b656-1055-4cb2-b8b1-ed13efe24457)] +interface nsIDOMHTMLIFrameElement : nsISupports +{ + attribute DOMString align; + attribute DOMString frameBorder; + attribute DOMString height; + attribute DOMString longDesc; + attribute DOMString marginHeight; + attribute DOMString marginWidth; + attribute DOMString name; + attribute DOMString scrolling; + attribute DOMString src; + attribute DOMString srcdoc; + attribute DOMString width; + // Introduced in DOM Level 2: + readonly attribute nsIDOMDocument contentDocument; + + attribute boolean allowFullscreen; +}; diff --git a/dom/interfaces/html/nsIDOMHTMLImageElement.idl b/dom/interfaces/html/nsIDOMHTMLImageElement.idl new file mode 100644 index 000000000..64574ca79 --- /dev/null +++ b/dom/interfaces/html/nsIDOMHTMLImageElement.idl @@ -0,0 +1,49 @@ +/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "nsIDOMHTMLElement.idl" + +/** + * The nsIDOMHTMLImageElement interface is the interface to a [X]HTML + * img element. + * + * This interface is trying to follow the DOM Level 2 HTML specification: + * http://www.w3.org/TR/DOM-Level-2-HTML/ + * + * with changes from the work-in-progress WHATWG HTML specification: + * http://www.whatwg.org/specs/web-apps/current-work/ + */ + +[uuid(ec18e71c-4f5c-4cc3-aa36-5273168644dc)] +interface nsIDOMHTMLImageElement : nsISupports +{ + attribute DOMString alt; + attribute DOMString src; + attribute DOMString srcset; + attribute DOMString sizes; + attribute DOMString useMap; + attribute boolean isMap; + attribute unsigned long width; + attribute unsigned long height; + readonly attribute unsigned long naturalWidth; + readonly attribute unsigned long naturalHeight; + readonly attribute boolean complete; + + + attribute DOMString name; + attribute DOMString align; + attribute DOMString border; + attribute long hspace; + attribute DOMString longDesc; + attribute long vspace; + attribute DOMString lowsrc; + + readonly attribute DOMString currentSrc; + + // These attributes are offsets from the closest view (to mimic + // NS4's "offset-from-layer" behavior). + readonly attribute long x; + readonly attribute long y; +}; diff --git a/dom/interfaces/html/nsIDOMHTMLInputElement.idl b/dom/interfaces/html/nsIDOMHTMLInputElement.idl new file mode 100644 index 000000000..a57575b17 --- /dev/null +++ b/dom/interfaces/html/nsIDOMHTMLInputElement.idl @@ -0,0 +1,109 @@ +/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "nsIDOMHTMLElement.idl" + +interface nsIControllers; +interface nsIDOMFileList; +interface nsIDOMValidityState; + + /** + * The nsIDOMHTMLInputElement interface is the interface to a [X]HTML + * input element. + * + * This interface is trying to follow the DOM Level 2 HTML specification: + * http://www.w3.org/TR/DOM-Level-2-HTML/ + * + * with changes from the work-in-progress WHATWG HTML specification: + * http://www.whatwg.org/specs/web-apps/current-work/ + */ + +[uuid(64aeda0b-e9b5-4868-a4f9-e4776e32e733)] +interface nsIDOMHTMLInputElement : nsISupports +{ + attribute DOMString accept; + attribute DOMString alt; + + attribute DOMString autocomplete; + attribute boolean autofocus; + attribute boolean defaultChecked; + attribute boolean checked; + attribute boolean disabled; + readonly attribute nsIDOMHTMLFormElement form; + attribute DOMString formAction; + attribute DOMString formEnctype; + attribute DOMString formMethod; + attribute boolean formNoValidate; + attribute DOMString formTarget; + + readonly attribute nsIDOMFileList files; + + attribute unsigned long height; + attribute boolean indeterminate; + + attribute DOMString inputMode; + + readonly attribute nsIDOMHTMLElement list; + attribute DOMString max; + attribute long maxLength; + attribute DOMString min; + attribute long minLength; + + attribute boolean multiple; + attribute DOMString name; + + attribute DOMString pattern; + attribute DOMString placeholder; + attribute boolean readOnly; + attribute boolean required; + attribute DOMString step; + + attribute DOMString align; + + attribute unsigned long size; + attribute unsigned long width; + attribute DOMString src; + + attribute DOMString type; + attribute DOMString defaultValue; + attribute DOMString value; + attribute double valueAsNumber; + // valustAsDate is only supported via WebIDL, because it's intimately + // tied to JS Date objects and xpidl support for that sort of thing is + // terrible. + + [optional_argc] void stepDown([optional] in long n); + [optional_argc] void stepUp([optional] in long n); + + // The following lines are part of the constraint validation API, see: + // http://www.whatwg.org/specs/web-apps/current-work/#the-constraint-validation-api + readonly attribute boolean willValidate; + readonly attribute nsIDOMValidityState validity; + readonly attribute DOMString validationMessage; + boolean checkValidity(); + void setCustomValidity(in DOMString error); + + void select(); + attribute long selectionStart; + attribute long selectionEnd; + void setSelectionRange(in long selectionStart, in long selectionEnd, [optional] in DOMString direction); + attribute DOMString selectionDirection; + + + attribute DOMString useMap; + readonly attribute nsIControllers controllers; + readonly attribute long textLength; + + void mozGetFileNameArray([optional] out unsigned long aLength, + [array,size_is(aLength), retval] out wstring aFileNames); + void mozSetFileNameArray([array,size_is(aLength)] in wstring aFileNames, + in unsigned long aLength); + + /** + * This non-standard method prevents to check types manually to know if the + * element is a text field. + */ + boolean mozIsTextField(in boolean aExcludePassword); +}; diff --git a/dom/interfaces/html/nsIDOMHTMLLIElement.idl b/dom/interfaces/html/nsIDOMHTMLLIElement.idl new file mode 100644 index 000000000..93271afd8 --- /dev/null +++ b/dom/interfaces/html/nsIDOMHTMLLIElement.idl @@ -0,0 +1,24 @@ +/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "nsIDOMHTMLElement.idl" + +/** + * The nsIDOMHTMLLIElement interface is the interface to a [X]HTML li + * element. + * + * This interface is trying to follow the DOM Level 2 HTML specification: + * http://www.w3.org/TR/DOM-Level-2-HTML/ + * + * with changes from the work-in-progress WHATWG HTML specification: + * http://www.whatwg.org/specs/web-apps/current-work/ + */ + +[uuid(17bd5c1c-3746-4268-a9f6-45018025f09c)] +interface nsIDOMHTMLLIElement : nsISupports +{ + attribute DOMString type; + attribute long value; +}; diff --git a/dom/interfaces/html/nsIDOMHTMLLabelElement.idl b/dom/interfaces/html/nsIDOMHTMLLabelElement.idl new file mode 100644 index 000000000..02c4c1ed7 --- /dev/null +++ b/dom/interfaces/html/nsIDOMHTMLLabelElement.idl @@ -0,0 +1,25 @@ +/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "nsIDOMHTMLElement.idl" + +/** + * The nsIDOMHTMLLabelElement interface is the interface to a [X]HTML + * label element. + * + * This interface is trying to follow the DOM Level 2 HTML specification: + * http://www.w3.org/TR/DOM-Level-2-HTML/ + * + * with changes from the work-in-progress WHATWG HTML specification: + * http://www.whatwg.org/specs/web-apps/current-work/ + */ + +[uuid(efc0eaf2-5756-4388-a229-fbec2033529d)] +interface nsIDOMHTMLLabelElement : nsISupports +{ + readonly attribute nsIDOMHTMLFormElement form; + attribute DOMString htmlFor; + readonly attribute nsIDOMHTMLElement control; +}; diff --git a/dom/interfaces/html/nsIDOMHTMLLinkElement.idl b/dom/interfaces/html/nsIDOMHTMLLinkElement.idl new file mode 100644 index 000000000..27cc8fae3 --- /dev/null +++ b/dom/interfaces/html/nsIDOMHTMLLinkElement.idl @@ -0,0 +1,32 @@ +/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "nsIDOMHTMLElement.idl" + +/** + * The nsIDOMHTMLLinkElement interface is the interface to a [X]HTML + * link element. + * + * This interface is trying to follow the DOM Level 2 HTML specification: + * http://www.w3.org/TR/DOM-Level-2-HTML/ + * + * with changes from the work-in-progress WHATWG HTML specification: + * http://www.whatwg.org/specs/web-apps/current-work/ + */ + +[uuid(ee50b7ab-0015-4fbe-89e0-e3feacd4ffde)] +interface nsIDOMHTMLLinkElement : nsISupports +{ + [binaryname(MozDisabled)] + attribute boolean disabled; + attribute DOMString charset; + attribute DOMString href; + attribute DOMString hreflang; + attribute DOMString media; + attribute DOMString rel; + attribute DOMString rev; + attribute DOMString target; + attribute DOMString type; +}; diff --git a/dom/interfaces/html/nsIDOMHTMLMapElement.idl b/dom/interfaces/html/nsIDOMHTMLMapElement.idl new file mode 100644 index 000000000..0d0d37f29 --- /dev/null +++ b/dom/interfaces/html/nsIDOMHTMLMapElement.idl @@ -0,0 +1,24 @@ +/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "nsIDOMHTMLElement.idl" + +/** + * The nsIDOMHTMLMapElement interface is the interface to a [X]HTML + * map element. + * + * This interface is trying to follow the DOM Level 2 HTML specification: + * http://www.w3.org/TR/DOM-Level-2-HTML/ + * + * with changes from the work-in-progress WHATWG HTML specification: + * http://www.whatwg.org/specs/web-apps/current-work/ + */ + +[uuid(3f49f8c6-2e9d-4323-b30c-2404d5ff1f57)] +interface nsIDOMHTMLMapElement : nsISupports +{ + readonly attribute nsIDOMHTMLCollection areas; + attribute DOMString name; +}; diff --git a/dom/interfaces/html/nsIDOMHTMLMediaElement.idl b/dom/interfaces/html/nsIDOMHTMLMediaElement.idl new file mode 100644 index 000000000..68c15c00c --- /dev/null +++ b/dom/interfaces/html/nsIDOMHTMLMediaElement.idl @@ -0,0 +1,140 @@ +/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* vim:set ts=2 sw=2 sts=2 et cindent: */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "nsIDOMHTMLElement.idl" +#include "nsIDOMTimeRanges.idl" + +/** + * The nsIDOMHTMLMediaElement interface is an interface to be implemented by the HTML + *