diff options
author | Bruno de Oliveira Abinader <bruno.d@partner.samsung.com> | 2014-03-13 13:48:24 -0400 |
---|---|---|
committer | Bruno de Oliveira Abinader <bruno.d@partner.samsung.com> | 2014-03-13 13:48:24 -0400 |
commit | 6274ecba07a8570d6bb7f2296fb549fb48faba1b (patch) | |
tree | 42980faf78d6c9bf259f4a712b18cbfa5691ff62 /src/components/script/dom | |
parent | 3933d17262de06458e1d79217d5a7810c4154611 (diff) | |
download | servo-6274ecba07a8570d6bb7f2296fb549fb48faba1b.tar.gz servo-6274ecba07a8570d6bb7f2296fb549fb48faba1b.zip |
Implement Element.className
Diffstat (limited to 'src/components/script/dom')
-rw-r--r-- | src/components/script/dom/bindings/codegen/Bindings.conf | 1 | ||||
-rw-r--r-- | src/components/script/dom/element.rs | 10 | ||||
-rw-r--r-- | src/components/script/dom/htmlelement.rs | 7 | ||||
-rw-r--r-- | src/components/script/dom/webidls/Element.webidl | 4 | ||||
-rw-r--r-- | src/components/script/dom/webidls/HTMLElement.webidl | 4 |
5 files changed, 12 insertions, 14 deletions
diff --git a/src/components/script/dom/bindings/codegen/Bindings.conf b/src/components/script/dom/bindings/codegen/Bindings.conf index a002e893823..06d37863dbd 100644 --- a/src/components/script/dom/bindings/codegen/Bindings.conf +++ b/src/components/script/dom/bindings/codegen/Bindings.conf @@ -52,6 +52,7 @@ DOMInterfaces = { 'Element': { 'needsAbstract': [ 'attributes', + 'className', 'getBoundingClientRect', 'getClientRects', 'getElementsByClassName', diff --git a/src/components/script/dom/element.rs b/src/components/script/dom/element.rs index df9ecb20430..55cec200304 100644 --- a/src/components/script/dom/element.rs +++ b/src/components/script/dom/element.rs @@ -430,6 +430,16 @@ impl Element { self.set_string_attribute(abstract_self, "id", id); } + // http://dom.spec.whatwg.org/#dom-element-classname + pub fn ClassName(&self, _abstract_self: &JS<Element>) -> DOMString { + self.get_string_attribute("class") + } + + // http://dom.spec.whatwg.org/#dom-element-classname + pub fn SetClassName(&mut self, abstract_self: &JS<Element>, class: DOMString) { + self.set_string_attribute(abstract_self, "class", class); + } + // http://dom.spec.whatwg.org/#dom-element-attributes pub fn Attributes(&mut self, abstract_self: &JS<Element>) -> JS<AttrList> { match self.attr_list { diff --git a/src/components/script/dom/htmlelement.rs b/src/components/script/dom/htmlelement.rs index 8464d23aec0..f8a1cd96a9b 100644 --- a/src/components/script/dom/htmlelement.rs +++ b/src/components/script/dom/htmlelement.rs @@ -140,13 +140,6 @@ impl HTMLElement { Ok(()) } - pub fn ClassName(&self) -> DOMString { - ~"" - } - - pub fn SetClassName(&self, _class: DOMString) { - } - pub fn GetOffsetParent(&self) -> Option<JS<Element>> { None } diff --git a/src/components/script/dom/webidls/Element.webidl b/src/components/script/dom/webidls/Element.webidl index e26c9415d4a..2211fd5c887 100644 --- a/src/components/script/dom/webidls/Element.webidl +++ b/src/components/script/dom/webidls/Element.webidl @@ -28,10 +28,8 @@ interface Element : Node { [Pure] attribute DOMString id; -/* - FIXME Bug 810677 Move className from HTMLElement to Element + [Pure] attribute DOMString className; -*/ /*[Constant] readonly attribute DOMTokenList? classList;*/ diff --git a/src/components/script/dom/webidls/HTMLElement.webidl b/src/components/script/dom/webidls/HTMLElement.webidl index e0ce18aaff9..8f1315d011d 100644 --- a/src/components/script/dom/webidls/HTMLElement.webidl +++ b/src/components/script/dom/webidls/HTMLElement.webidl @@ -43,10 +43,6 @@ interface HTMLElement : Element { readonly attribute boolean isContentEditable; [SetterThrows, Pure] attribute boolean spellcheck; - - // Mozilla specific stuff - // FIXME Bug 810677 Move className from HTMLElement to Element - attribute DOMString className; }; // http://dev.w3.org/csswg/cssom-view/#extensions-to-the-htmlelement-interface |