mirror of
https://github.com/servo/servo.git
synced 2025-08-05 21:50:18 +01:00
WIP iframe handling.
This commit is contained in:
parent
c82be59a4b
commit
1a4ea09205
4 changed files with 85 additions and 6 deletions
|
@ -10,7 +10,7 @@ use dom::bindings::utils::WrapperCache;
|
|||
use dom::bindings;
|
||||
use dom::characterdata::CharacterData;
|
||||
use dom::document::Document;
|
||||
use dom::element::{Element, ElementTypeId, HTMLImageElement, HTMLImageElementTypeId};
|
||||
use dom::element::{Element, ElementTypeId, HTMLImageElement, HTMLImageElementTypeId, HTMLIframeElementTypeId, HTMLIframeElement};
|
||||
use dom::element::{HTMLStyleElementTypeId};
|
||||
use script_task::global_script_context;
|
||||
|
||||
|
@ -340,6 +340,24 @@ impl<View> AbstractNode<View> {
|
|||
self.transmute_mut(f)
|
||||
}
|
||||
|
||||
pub fn is_iframe_element(self) -> bool {
|
||||
self.type_id() == ElementNodeTypeId(HTMLIframeElementTypeId)
|
||||
}
|
||||
|
||||
pub fn with_imm_iframe_element<R>(self, f: &fn(&HTMLIframeElement) -> R) -> R {
|
||||
if !self.is_iframe_element() {
|
||||
fail!(~"node is not an iframe element");
|
||||
}
|
||||
self.transmute(f)
|
||||
}
|
||||
|
||||
pub fn with_mut_iframe_element<R>(self, f: &fn(&mut HTMLIframeElement) -> R) -> R {
|
||||
if !self.is_iframe_element() {
|
||||
fail!(~"node is not an iframe element");
|
||||
}
|
||||
self.transmute_mut(f)
|
||||
}
|
||||
|
||||
pub fn is_style_element(self) -> bool {
|
||||
self.type_id() == ElementNodeTypeId(HTMLStyleElementTypeId)
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue