aboutsummaryrefslogtreecommitdiffstats
path: root/src/components/script/dom/node.rs
diff options
context:
space:
mode:
authorHarry Maclean <harryjmaclean@googlemail.com>2014-04-22 17:41:29 +0100
committerJosh Matthews <josh@joshmatthews.net>2014-05-05 14:04:25 -0400
commit6f310a5c20ea6c2af5ebc6a6825ff019f1261825 (patch)
tree3f6b6b4f8ecc9ac54035cc6a035a9afacfd5d881 /src/components/script/dom/node.rs
parent325a39b8bad2fb35c2a0d9bcb0da357a79bfb99a (diff)
downloadservo-6f310a5c20ea6c2af5ebc6a6825ff019f1261825.tar.gz
servo-6f310a5c20ea6c2af5ebc6a6825ff019f1261825.zip
Implement ChildNode.remove()
Diffstat (limited to 'src/components/script/dom/node.rs')
-rw-r--r--src/components/script/dom/node.rs8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/components/script/dom/node.rs b/src/components/script/dom/node.rs
index e9f41a8df44..100cfebfa7b 100644
--- a/src/components/script/dom/node.rs
+++ b/src/components/script/dom/node.rs
@@ -425,6 +425,8 @@ pub trait NodeHelpers {
fn get_bounding_content_box(&self) -> Rect<Au>;
fn get_content_boxes(&self) -> Vec<Rect<Au>>;
+
+ fn remove_self(&mut self);
}
impl<'a> NodeHelpers for JSRef<'a, Node> {
@@ -630,6 +632,12 @@ impl<'a> NodeHelpers for JSRef<'a, Node> {
document.deref().wait_until_safe_to_modify_dom();
}
+ fn remove_self(&mut self) {
+ match self.parent_node().root() {
+ Some(ref mut parent) => parent.remove_child(self),
+ None => ()
+ }
+ }
}
/// If the given untrusted node address represents a valid DOM node in the given runtime,