diff options
author | bors-servo <release+servo@mozilla.com> | 2014-01-01 13:19:16 -0800 |
---|---|---|
committer | bors-servo <release+servo@mozilla.com> | 2014-01-01 13:19:16 -0800 |
commit | 2b487ed3e984c0ec48ee8240ace78ec80ff94853 (patch) | |
tree | d83cf597eb5cf7f455ab83ab0ed7d76b9cc360fd /src | |
parent | be8ed3256298f9acea18a3c1159652974ca90af8 (diff) | |
parent | 886ab020d8dc03d0bc1f1c1be37eff5057551c5f (diff) | |
download | servo-2b487ed3e984c0ec48ee8240ace78ec80ff94853.tar.gz servo-2b487ed3e984c0ec48ee8240ace78ec80ff94853.zip |
auto merge of #1439 : Ms2ger/servo/reflection-methods, r=jdm
Diffstat (limited to 'src')
-rw-r--r-- | src/components/script/dom/element.rs | 30 | ||||
-rw-r--r-- | src/components/script/dom/htmliframeelement.rs | 8 | ||||
-rw-r--r-- | src/components/script/dom/htmlscriptelement.rs | 7 |
3 files changed, 29 insertions, 16 deletions
diff --git a/src/components/script/dom/element.rs b/src/components/script/dom/element.rs index ba08e3660c6..0d2229c6791 100644 --- a/src/components/script/dom/element.rs +++ b/src/components/script/dom/element.rs @@ -280,20 +280,40 @@ impl<'self> Element { } } +// http://www.whatwg.org/html/#reflecting-content-attributes-in-idl-attributes impl Element { - pub fn TagName(&self) -> DOMString { - self.tag_name.to_ascii_upper() + pub fn get_url_attribute(&self, name: &str) -> DOMString { + // XXX Resolve URL. + self.get_string_attribute(name) + } + pub fn set_url_attribute(&mut self, abstract_self: AbstractNode, + name: &str, value: DOMString) { + self.set_string_attribute(abstract_self, name, value); } - pub fn Id(&self, _abstract_self: AbstractNode) -> DOMString { - match self.get_attr(Null, "id") { + pub fn get_string_attribute(&self, name: &str) -> DOMString { + match self.get_attr(Null, name) { Some(x) => x, None => ~"" } } + pub fn set_string_attribute(&mut self, abstract_self: AbstractNode, + name: &str, value: DOMString) { + self.set_attribute(abstract_self, Null, name.to_owned(), value); + } +} + +impl Element { + pub fn TagName(&self) -> DOMString { + self.tag_name.to_ascii_upper() + } + + pub fn Id(&self, _abstract_self: AbstractNode) -> DOMString { + self.get_string_attribute("id") + } pub fn SetId(&mut self, abstract_self: AbstractNode, id: DOMString) { - self.set_attribute(abstract_self, namespace::Null, ~"id", id); + self.set_string_attribute(abstract_self, "id", id); } pub fn Attributes(&mut self, abstract_self: AbstractNode) -> @mut AttrList { diff --git a/src/components/script/dom/htmliframeelement.rs b/src/components/script/dom/htmliframeelement.rs index b41dd2c773e..f263444a335 100644 --- a/src/components/script/dom/htmliframeelement.rs +++ b/src/components/script/dom/htmliframeelement.rs @@ -84,14 +84,12 @@ impl HTMLIFrameElement { } pub fn Sandbox(&self, _abstract_self: AbstractNode) -> DOMString { - match self.htmlelement.element.GetAttribute(~"sandbox") { - Some(s) => s.to_owned(), - None => ~"", - } + self.htmlelement.element.get_string_attribute("sandbox") } pub fn SetSandbox(&mut self, abstract_self: AbstractNode, sandbox: DOMString) { - self.htmlelement.element.SetAttribute(abstract_self, ~"sandbox", sandbox); + self.htmlelement.element.set_string_attribute(abstract_self, "sandbox", + sandbox); } pub fn AfterSetAttr(&mut self, name: DOMString, value: DOMString) { diff --git a/src/components/script/dom/htmlscriptelement.rs b/src/components/script/dom/htmlscriptelement.rs index 7405db82b29..604fe714322 100644 --- a/src/components/script/dom/htmlscriptelement.rs +++ b/src/components/script/dom/htmlscriptelement.rs @@ -7,9 +7,7 @@ use dom::bindings::utils::{DOMString, ErrorResult}; use dom::document::AbstractDocument; use dom::element::HTMLScriptElementTypeId; use dom::htmlelement::HTMLElement; -use dom::namespace::Null; use dom::node::{AbstractNode, Node}; -use style::TElement; pub struct HTMLScriptElement { htmlelement: HTMLElement, @@ -30,10 +28,7 @@ impl HTMLScriptElement { impl HTMLScriptElement { pub fn Src(&self) -> DOMString { - match self.htmlelement.element.get_attr(Null, "src") { - Some(s) => s.to_owned(), - None => ~"" - } + self.htmlelement.element.get_url_attribute("src") } pub fn SetSrc(&mut self, _src: DOMString) -> ErrorResult { |