aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--components/malloc_size_of/lib.rs6
-rw-r--r--components/script/dom/element.rs4
-rw-r--r--components/script/layout_dom/element.rs12
3 files changed, 19 insertions, 3 deletions
diff --git a/components/malloc_size_of/lib.rs b/components/malloc_size_of/lib.rs
index 4011746b300..7dabb37397e 100644
--- a/components/malloc_size_of/lib.rs
+++ b/components/malloc_size_of/lib.rs
@@ -695,9 +695,9 @@ where
Component::Slotted(ref selector) | Component::Host(Some(ref selector)) => {
selector.size_of(ops)
},
- Component::Is(ref list) |
- Component::Where(ref list) |
- Component::Has(ref list) => list.size_of(ops),
+ Component::Is(ref list) | Component::Where(ref list) | Component::Has(ref list) => {
+ list.size_of(ops)
+ },
Component::PseudoElement(ref pseudo) => (*pseudo).size_of(ops),
Component::Combinator(..) |
Component::ExplicitAnyNamespace |
diff --git a/components/script/dom/element.rs b/components/script/dom/element.rs
index 7498318d436..64164858807 100644
--- a/components/script/dom/element.rs
+++ b/components/script/dom/element.rs
@@ -3178,6 +3178,10 @@ impl<'a> SelectorsElement for DomRoot<Element> {
.next()
}
+ fn first_element_child(&self) -> Option<DomRoot<Element>> {
+ self.GetFirstElementChild()
+ }
+
fn attr_matches(
&self,
ns: &NamespaceConstraint<&style::Namespace>,
diff --git a/components/script/layout_dom/element.rs b/components/script/layout_dom/element.rs
index 94e2676fff5..e4e20b1c1ab 100644
--- a/components/script/layout_dom/element.rs
+++ b/components/script/layout_dom/element.rs
@@ -506,6 +506,12 @@ impl<'dom, LayoutDataType: LayoutDataTrait> ::selectors::Element
None
}
+ fn first_element_child(&self) -> Option<Self> {
+ self.as_node()
+ .dom_children()
+ .find_map(|child| child.as_element())
+ }
+
fn attr_matches(
&self,
ns: &NamespaceConstraint<&style::Namespace>,
@@ -801,6 +807,12 @@ impl<'dom, LayoutDataType: LayoutDataTrait> ::selectors::Element
None
}
+ // Skips non-element nodes
+ fn first_element_child(&self) -> Option<Self> {
+ warn!("ServoThreadSafeLayoutElement::first_element_child called");
+ None
+ }
+
fn is_html_slot_element(&self) -> bool {
self.element.is_html_slot_element()
}