diff options
author | Matt Brubeck <mbrubeck@limpet.net> | 2014-04-14 11:12:00 -0700 |
---|---|---|
committer | Matt Brubeck <mbrubeck@limpet.net> | 2014-04-14 13:39:11 -0700 |
commit | 28a013cfc57e406eabf54ea8f02c37aa55d5494b (patch) | |
tree | 0a1f20ae77ae9b42fe9e8206eeb855158ce0ba15 /src/components/script/dom/virtualmethods.rs | |
parent | 18b5453e09e1f67653888a81578325bab7472717 (diff) | |
download | servo-28a013cfc57e406eabf54ea8f02c37aa55d5494b.tar.gz servo-28a013cfc57e406eabf54ea8f02c37aa55d5494b.zip |
Move child_inserted into VirtualMethods.
Follow-up from #1984.
Diffstat (limited to 'src/components/script/dom/virtualmethods.rs')
-rw-r--r-- | src/components/script/dom/virtualmethods.rs | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/src/components/script/dom/virtualmethods.rs b/src/components/script/dom/virtualmethods.rs index 866ace84e02..85ae37cb032 100644 --- a/src/components/script/dom/virtualmethods.rs +++ b/src/components/script/dom/virtualmethods.rs @@ -7,14 +7,16 @@ use dom::bindings::codegen::InheritTypes::HTMLElementCast; use dom::bindings::codegen::InheritTypes::HTMLIFrameElementCast; use dom::bindings::codegen::InheritTypes::HTMLImageElementCast; use dom::bindings::codegen::InheritTypes::HTMLObjectElementCast; +use dom::bindings::codegen::InheritTypes::HTMLStyleElementCast; use dom::bindings::js::JS; use dom::element::Element; use dom::element::{ElementTypeId, HTMLImageElementTypeId}; -use dom::element::{HTMLIFrameElementTypeId, HTMLObjectElementTypeId}; +use dom::element::{HTMLIFrameElementTypeId, HTMLObjectElementTypeId, HTMLStyleElementTypeId}; use dom::htmlelement::HTMLElement; use dom::htmliframeelement::HTMLIFrameElement; use dom::htmlimageelement::HTMLImageElement; use dom::htmlobjectelement::HTMLObjectElement; +use dom::htmlstyleelement::HTMLStyleElement; use dom::node::{Node, ElementNodeTypeId}; use servo_util::str::DOMString; @@ -58,6 +60,14 @@ pub trait VirtualMethods { _ => (), } } + + /// Called on the parent when a node is added to its child list. + fn child_inserted(&mut self, child: &JS<Node>) { + match self.super_type() { + Some(ref mut s) => s.child_inserted(child), + _ => (), + } + } } /// Obtain a VirtualMethods instance for a given Node-derived object. Any @@ -78,6 +88,10 @@ pub fn vtable_for<'a>(node: &JS<Node>) -> ~VirtualMethods: { let element: JS<HTMLObjectElement> = HTMLObjectElementCast::to(node).unwrap(); ~element as ~VirtualMethods: } + ElementNodeTypeId(HTMLStyleElementTypeId) => { + let element: JS<HTMLStyleElement> = HTMLStyleElementCast::to(node).unwrap(); + ~element as ~VirtualMethods: + } ElementNodeTypeId(ElementTypeId) => { let element: JS<Element> = ElementCast::to(node).unwrap(); ~element as ~VirtualMethods: |