diff options
author | Harry Maclean <harryjmaclean@googlemail.com> | 2014-04-22 17:41:29 +0100 |
---|---|---|
committer | Josh Matthews <josh@joshmatthews.net> | 2014-05-05 14:04:25 -0400 |
commit | 6f310a5c20ea6c2af5ebc6a6825ff019f1261825 (patch) | |
tree | 3f6b6b4f8ecc9ac54035cc6a035a9afacfd5d881 /src/components/script/dom/node.rs | |
parent | 325a39b8bad2fb35c2a0d9bcb0da357a79bfb99a (diff) | |
download | servo-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.rs | 8 |
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, |