diff options
author | Oriol Brufau <obrufau@igalia.com> | 2023-08-16 08:24:42 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-08-16 06:24:42 +0000 |
commit | d6ae8dc112deb479f345c94970dde442332c8c27 (patch) | |
tree | 0d0f19804d9ee17d5e51b7285fed739a65390a71 /components/script/layout_dom/element.rs | |
parent | 8e15389caedd9b8e1b87cc9e4bfe8350a581546d (diff) | |
download | servo-d6ae8dc112deb479f345c94970dde442332c8c27.tar.gz servo-d6ae8dc112deb479f345c94970dde442332c8c27.zip |
Revert "Backport several style changes from Gecko (5) (#30099)" (#30104)
This reverts commit 8e15389caedd9b8e1b87cc9e4bfe8350a581546d.
Diffstat (limited to 'components/script/layout_dom/element.rs')
-rw-r--r-- | components/script/layout_dom/element.rs | 36 |
1 files changed, 20 insertions, 16 deletions
diff --git a/components/script/layout_dom/element.rs b/components/script/layout_dom/element.rs index 91be4baa6ed..b85e72443c3 100644 --- a/components/script/layout_dom/element.rs +++ b/components/script/layout_dom/element.rs @@ -358,6 +358,14 @@ impl<'dom, LayoutDataType: LayoutDataTrait> style::dom::TElement false } + unsafe fn set_selector_flags(&self, flags: ElementSelectorFlags) { + self.element.insert_selector_flags(flags); + } + + fn has_selector_flags(&self, flags: ElementSelectorFlags) -> bool { + self.element.has_selector_flags(flags) + } + fn has_animations(&self, context: &SharedStyleContext) -> bool { // This is not used for pseudo elements currently so we can pass None. return self.has_css_animations(context, /* pseudo_element = */ None) || @@ -452,10 +460,6 @@ impl<'dom, LayoutDataType: LayoutDataTrait> style::dom::TElement fn namespace(&self) -> &Namespace { self.element.namespace() } - - fn primary_box_size(&self) -> euclid::default::Size2D<app_units::Au> { - todo!(); - } } impl<'dom, LayoutDataType: LayoutDataTrait> ::selectors::Element @@ -569,11 +573,15 @@ impl<'dom, LayoutDataType: LayoutDataTrait> ::selectors::Element false } - fn match_non_ts_pseudo_class( + fn match_non_ts_pseudo_class<F>( &self, pseudo_class: &NonTSPseudoClass, _: &mut MatchingContext<Self::Impl>, - ) -> bool { + _: &mut F, + ) -> bool + where + F: FnMut(&Self, ElementSelectorFlags), + { match *pseudo_class { // https://github.com/servo/servo/issues/8718 NonTSPseudoClass::Link | NonTSPseudoClass::AnyLink => self.is_link(), @@ -662,10 +670,6 @@ impl<'dom, LayoutDataType: LayoutDataTrait> ::selectors::Element fn is_html_element_in_html_document(&self) -> bool { self.element.is_html_element() && self.as_node().owner_doc().is_html_document() } - - fn set_selector_flags(&self, flags: ElementSelectorFlags) { - self.element.insert_selector_flags(flags); - } } /// A wrapper around elements that ensures layout can only @@ -854,11 +858,15 @@ impl<'dom, LayoutDataType: LayoutDataTrait> ::selectors::Element } } - fn match_non_ts_pseudo_class( + fn match_non_ts_pseudo_class<F>( &self, _: &NonTSPseudoClass, _: &mut MatchingContext<Self::Impl>, - ) -> bool { + _: &mut F, + ) -> bool + where + F: FnMut(&Self, ElementSelectorFlags), + { // NB: This could maybe be implemented warn!("ServoThreadSafeLayoutElement::match_non_ts_pseudo_class called"); false @@ -899,10 +907,6 @@ impl<'dom, LayoutDataType: LayoutDataTrait> ::selectors::Element warn!("ServoThreadSafeLayoutElement::is_root called"); false } - - fn set_selector_flags(&self, flags: ElementSelectorFlags) { - self.element.element.insert_selector_flags(flags); - } } impl<'dom, LayoutDataType: LayoutDataTrait> GetStyleAndOpaqueLayoutData<'dom> |