diff options
-rw-r--r-- | src/components/script/dom/bindings/codegen/Bindings.conf | 1 | ||||
-rw-r--r-- | src/components/script/dom/bindings/codegen/CodegenRust.py | 1 | ||||
-rw-r--r-- | src/components/script/dom/bindings/codegen/HTMLDListElement.webidl | 23 | ||||
-rw-r--r-- | src/components/script/dom/bindings/node.rs | 4 | ||||
-rw-r--r-- | src/components/script/dom/bindings/utils.rs | 2 | ||||
-rw-r--r-- | src/components/script/dom/element.rs | 6 | ||||
-rw-r--r-- | src/components/script/dom/htmldlistelement.rs | 26 | ||||
-rw-r--r-- | src/components/script/html/hubbub_html_parser.rs | 3 | ||||
-rw-r--r-- | src/components/script/script.rc | 2 |
9 files changed, 65 insertions, 3 deletions
diff --git a/src/components/script/dom/bindings/codegen/Bindings.conf b/src/components/script/dom/bindings/codegen/Bindings.conf index 05770570fd9..70097b49bb5 100644 --- a/src/components/script/dom/bindings/codegen/Bindings.conf +++ b/src/components/script/dom/bindings/codegen/Bindings.conf @@ -550,6 +550,7 @@ addHTMLElement('HTMLBodyElement') addHTMLElement('HTMLBRElement') addHTMLElement('HTMLCanvasElement') addHTMLElement('HTMLDivElement') +addHTMLElement('HTMLDListElement') addHTMLElement('HTMLElement') addHTMLElement('HTMLHeadElement') addHTMLElement('HTMLHtmlElement') diff --git a/src/components/script/dom/bindings/codegen/CodegenRust.py b/src/components/script/dom/bindings/codegen/CodegenRust.py index 22bd6ca6db3..8af1b473670 100644 --- a/src/components/script/dom/bindings/codegen/CodegenRust.py +++ b/src/components/script/dom/bindings/codegen/CodegenRust.py @@ -4621,6 +4621,7 @@ class CGBindingRoot(CGThing): 'dom::htmlbodyelement::HTMLBodyElement', 'dom::htmlbrelement::HTMLBRElement', #XXXrecrack 'dom::htmlcanvaselement::HTMLCanvasElement', + 'dom::htmldlistelement::HTMLDListElement', 'dom::htmlelement::HTMLElement', #XXXjdm 'dom::htmldocument::HTMLDocument', #XXXjdm 'dom::htmlhrelement::HTMLHRElement', diff --git a/src/components/script/dom/bindings/codegen/HTMLDListElement.webidl b/src/components/script/dom/bindings/codegen/HTMLDListElement.webidl new file mode 100644 index 00000000000..08020a49700 --- /dev/null +++ b/src/components/script/dom/bindings/codegen/HTMLDListElement.webidl @@ -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/. + * + * The origin of this IDL file is + * http://www.whatwg.org/specs/web-apps/current-work/#the-dl-element + * http://www.whatwg.org/specs/web-apps/current-work/#other-elements,-attributes-and-apis + * + * © Copyright 2004-2011 Apple Computer, Inc., Mozilla Foundation, and + * Opera Software ASA. You are granted a license to use, reproduce + * and create derivative works of this document. + */ + +// http://www.whatwg.org/specs/web-apps/current-work/#the-dl-element +interface HTMLDListElement : HTMLElement { +}; + +// http://www.whatwg.org/specs/web-apps/current-work/#other-elements,-attributes-and-apis +partial interface HTMLDListElement { + [SetterThrows] + attribute boolean compact; +}; diff --git a/src/components/script/dom/bindings/node.rs b/src/components/script/dom/bindings/node.rs index bfa153ff9c2..580443b8135 100644 --- a/src/components/script/dom/bindings/node.rs +++ b/src/components/script/dom/bindings/node.rs @@ -15,7 +15,7 @@ use dom::element::{HTMLElementTypeId, HTMLParagraphElementTypeId, HTMLScriptElementTypeId, HTMLSpanElementTypeId, HTMLStyleElementTypeId, HTMLTextAreaElementTypeId, HTMLTableElementTypeId, HTMLTableRowElementTypeId, HTMLTableSectionElementTypeId, - HTMLTitleElementTypeId, HTMLUListElementTypeId}; + HTMLTitleElementTypeId, HTMLUListElementTypeId, HTMLDListElementTypeId}; use dom::element::{HTMLHeadElement,HTMLHtmlElement, HTMLDivElement, HTMLParagraphElement, HTMLSpanElement}; use dom::htmlelement::HTMLElement; use dom::htmlanchorelement::HTMLAnchorElement; @@ -23,6 +23,7 @@ use dom::htmlbodyelement::HTMLBodyElement; use dom::htmlhrelement::HTMLHRElement; use dom::htmlbrelement::HTMLBRElement; use dom::htmlcanvaselement::HTMLCanvasElement; +use dom::htmldlistelement::HTMLDListElement; use dom::htmliframeelement::HTMLIFrameElement; use dom::htmlimageelement::HTMLImageElement; use dom::htmlmetaelement::HTMLMetaElement; @@ -104,6 +105,7 @@ pub fn create(cx: *JSContext, node: &mut AbstractNode<ScriptView>) -> *JSObject ElementNodeTypeId(HTMLBodyElementTypeId) => generate_element!(HTMLBodyElement), ElementNodeTypeId(HTMLBRElementTypeId) => generate_element!(HTMLBRElement), ElementNodeTypeId(HTMLCanvasElementTypeId) => generate_element!(HTMLCanvasElement), + ElementNodeTypeId(HTMLDListElementTypeId) => generate_element!(HTMLDListElement), ElementNodeTypeId(HTMLDivElementTypeId) => generate_element!(HTMLDivElement), ElementNodeTypeId(HTMLHeadElementTypeId) => generate_element!(HTMLHeadElement), ElementNodeTypeId(HTMLHRElementTypeId) => generate_element!(HTMLHRElement), diff --git a/src/components/script/dom/bindings/utils.rs b/src/components/script/dom/bindings/utils.rs index 057f6d6ef97..e20fdeba893 100644 --- a/src/components/script/dom/bindings/utils.rs +++ b/src/components/script/dom/bindings/utils.rs @@ -624,7 +624,7 @@ pub extern fn ThrowingConstructor(_cx: *JSContext, _argc: uint, _vp: *JSVal) -> } pub fn initialize_global(global: *JSObject) { - let protoArray = @mut ([0 as *JSObject, ..52]); + let protoArray = @mut ([0 as *JSObject, ..53]); assert!(protoArray.len() == PrototypeList::id::_ID_Count as uint); unsafe { //XXXjdm we should be storing the box pointer instead of the inner diff --git a/src/components/script/dom/element.rs b/src/components/script/dom/element.rs index 3aa30ea7dee..f243df7dbcb 100644 --- a/src/components/script/dom/element.rs +++ b/src/components/script/dom/element.rs @@ -5,7 +5,7 @@ //! Element nodes. use dom::bindings::codegen::{HTMLAnchorElementBinding, HTMLBodyElementBinding, HTMLBRElementBinding, - HTMLCanvasElementBinding, HTMLDivElementBinding, + HTMLCanvasElementBinding, HTMLDListElementBinding, HTMLDivElementBinding, HTMLHeadElementBinding, HTMLHRElementBinding, HTMLHtmlElementBinding, HTMLIFrameElementBinding, HTMLImageElementBinding, HTMLMetaElementBinding, @@ -23,6 +23,7 @@ use dom::htmlbodyelement::HTMLBodyElement; use dom::htmlbrelement::HTMLBRElement; use dom::htmlcanvaselement::HTMLCanvasElement; use dom::htmlcollection::HTMLCollection; +use dom::htmldlistelement::HTMLDListElement; use dom::htmlelement::HTMLElement; use dom::htmlhrelement::HTMLHRElement; use dom::htmliframeelement::HTMLIFrameElement; @@ -79,6 +80,7 @@ pub enum ElementTypeId { HTMLBRElementTypeId, HTMLBodyElementTypeId, HTMLCanvasElementTypeId, + HTMLDListElementTypeId, HTMLDivElementTypeId, HTMLFontElementTypeId, HTMLFormElementTypeId, @@ -190,6 +192,8 @@ generate_cacheable_wrapper!(HTMLBodyElement, HTMLBodyElementBinding::Wrap) generate_binding_object!(HTMLBodyElement) generate_cacheable_wrapper!(HTMLCanvasElement, HTMLCanvasElementBinding::Wrap) generate_binding_object!(HTMLCanvasElement) +generate_cacheable_wrapper!(HTMLDListElement, HTMLDListElementBinding::Wrap) +generate_binding_object!(HTMLDListElement) generate_cacheable_wrapper!(HTMLBRElement, HTMLBRElementBinding::Wrap) generate_binding_object!(HTMLBRElement) generate_cacheable_wrapper!(HTMLHRElement, HTMLHRElementBinding::Wrap) diff --git a/src/components/script/dom/htmldlistelement.rs b/src/components/script/dom/htmldlistelement.rs new file mode 100644 index 00000000000..ff6908746ec --- /dev/null +++ b/src/components/script/dom/htmldlistelement.rs @@ -0,0 +1,26 @@ +/* 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/. */ + +use dom::bindings::utils::{DOMString, null_string, ErrorResult}; +use dom::htmlelement::HTMLElement; + +pub struct HTMLDListElement { + parent: HTMLElement +} + +impl HTMLDListElement { + pub fn Compact(&self) -> bool { + false + } + + pub fn SetCompact(&mut self, _compact: bool, _rv: &mut ErrorResult) { + } + + pub fn Type(&self) -> DOMString { + null_string + } + + pub fn SetType(&mut self, _type: &DOMString, _rv: &mut ErrorResult) { + } +} diff --git a/src/components/script/html/hubbub_html_parser.rs b/src/components/script/html/hubbub_html_parser.rs index e14ddac2f4b..8eb6d222dbd 100644 --- a/src/components/script/html/hubbub_html_parser.rs +++ b/src/components/script/html/hubbub_html_parser.rs @@ -5,6 +5,7 @@ use dom::element::{HTMLElementTypeId, HTMLAnchorElementTypeId, HTMLBRElementTypeId, HTMLBodyElementTypeId, HTMLCanvasElementTypeId, HTMLDivElementTypeId, + HTMLDListElementTypeId, HTMLFontElementTypeId, HTMLFormElementTypeId, HTMLHRElementTypeId, HTMLHeadElementTypeId, HTMLHtmlElementTypeId, HTMLImageElementTypeId, HTMLIframeElementTypeId, HTMLInputElementTypeId, @@ -29,6 +30,7 @@ use dom::htmlbrelement::HTMLBRElement; use dom::htmlanchorelement::HTMLAnchorElement; use dom::htmlbodyelement::HTMLBodyElement; use dom::htmlcanvaselement::HTMLCanvasElement; +use dom::htmldlistelement::HTMLDListElement; use dom::htmlhrelement::HTMLHRElement; use dom::htmliframeelement::{IFrameSize, HTMLIFrameElement}; use dom::htmlimageelement::HTMLImageElement; @@ -227,6 +229,7 @@ fn build_element_from_tag(cx: *JSContext, tag: &str) -> AbstractNode<ScriptView> handle_element!(cx, tag, "body", HTMLBodyElementTypeId, HTMLBodyElement, []); handle_element!(cx, tag, "canvas", HTMLCanvasElementTypeId, HTMLCanvasElement, []); handle_element!(cx, tag, "div", HTMLDivElementTypeId, HTMLDivElement, []); + handle_element!(cx, tag, "dl", HTMLDListElementTypeId, HTMLDListElement, []); handle_element!(cx, tag, "font", HTMLFontElementTypeId, HTMLFontElement, []); handle_element!(cx, tag, "form", HTMLFormElementTypeId, HTMLFormElement, []); handle_element!(cx, tag, "hr", HTMLHRElementTypeId, HTMLHRElement, []); diff --git a/src/components/script/script.rc b/src/components/script/script.rc index 08b2ec8d231..888c07ce824 100644 --- a/src/components/script/script.rc +++ b/src/components/script/script.rc @@ -47,6 +47,7 @@ pub mod dom { pub mod HTMLBRElementBinding; pub mod HTMLCanvasElementBinding; pub mod HTMLCollectionBinding; + pub mod HTMLDListElementBinding; pub mod HTMLDivElementBinding; pub mod HTMLDocumentBinding; pub mod HTMLElementBinding; @@ -92,6 +93,7 @@ pub mod dom { pub mod htmlbrelement; pub mod htmlcanvaselement; pub mod htmlcollection; + pub mod htmldlistelement; pub mod htmldocument; pub mod htmlelement; pub mod htmlhrelement; |