diff options
Diffstat (limited to 'src/components/script/dom/htmlimageelement.rs')
-rw-r--r-- | src/components/script/dom/htmlimageelement.rs | 58 |
1 files changed, 20 insertions, 38 deletions
diff --git a/src/components/script/dom/htmlimageelement.rs b/src/components/script/dom/htmlimageelement.rs index 26e13826bce..6903120a09e 100644 --- a/src/components/script/dom/htmlimageelement.rs +++ b/src/components/script/dom/htmlimageelement.rs @@ -43,12 +43,10 @@ impl HTMLImageElement { let name = null_str_as_empty(name); if "src" == name { let doc = self.htmlelement.element.node.owner_doc; - for doc in doc.iter() { - do doc.with_base |doc| { - for window in doc.window.iter() { - let url = window.page.url.map(|&(ref url, _)| url.clone()); - self.update_image(window.image_cache_task.clone(), url); - } + do doc.with_base |doc| { + for window in doc.window.iter() { + let url = window.page.url.map(|&(ref url, _)| url.clone()); + self.update_image(window.image_cache_task.clone(), url); } } } @@ -102,26 +100,18 @@ impl HTMLImageElement { pub fn Width(&self, abstract_self: AbstractNode<ScriptView>) -> u32 { let node = &self.htmlelement.element.node; - match node.owner_doc { - Some(doc) => { - match doc.with_base(|doc| doc.window) { - Some(win) => { - let page = win.page; - let (port, chan) = stream(); - match page.query_layout(ContentBoxQuery(abstract_self, chan), port) { - ContentBoxResponse(rect) => { - to_px(rect.size.width) as u32 - } - } - } - None => { - debug!("no window"); - 0 + match node.owner_doc.with_base(|doc| doc.window) { + Some(win) => { + let page = win.page; + let (port, chan) = stream(); + match page.query_layout(ContentBoxQuery(abstract_self, chan), port) { + ContentBoxResponse(rect) => { + to_px(rect.size.width) as u32 } } } None => { - debug!("no document"); + debug!("no window"); 0 } } @@ -139,26 +129,18 @@ impl HTMLImageElement { pub fn Height(&self, abstract_self: AbstractNode<ScriptView>) -> u32 { let node = &self.htmlelement.element.node; - match node.owner_doc { - Some(doc) => { - match doc.with_base(|doc| doc.window) { - Some(win) => { - let page = win.page; - let (port, chan) = stream(); - match page.query_layout(ContentBoxQuery(abstract_self, chan), port) { - ContentBoxResponse(rect) => { - to_px(rect.size.height) as u32 - } - } - } - None => { - debug!("no window"); - 0 + match node.owner_doc.with_base(|doc| doc.window) { + Some(win) => { + let page = win.page; + let (port, chan) = stream(); + match page.query_layout(ContentBoxQuery(abstract_self, chan), port) { + ContentBoxResponse(rect) => { + to_px(rect.size.height) as u32 } } } None => { - debug!("no document"); + debug!("no window"); 0 } } |