mirror of
https://github.com/servo/servo.git
synced 2025-08-07 06:25:32 +01:00
style: Cleanup selector-matching for nested pseudo-elements, match ::slotted correctly when there's no selector before it, and add tests.
D29542 fixed the bogus checks that was making nested pseudo-elements match author rules. This adds tests and ends up being just a cleanup, though as it turns out we it also fixes an issue with ::slotted() matched from Element.matches. Differential Revision: https://phabricator.services.mozilla.com/D27529
This commit is contained in:
parent
272d9758d7
commit
43444db8a8
9 changed files with 35 additions and 38 deletions
|
@ -47,9 +47,13 @@ pub trait Element: Sized + Clone + Debug {
|
|||
///
|
||||
/// This is guaranteed to be called in a pseudo-element.
|
||||
fn pseudo_element_originating_element(&self) -> Option<Self> {
|
||||
debug_assert!(self.is_pseudo_element());
|
||||
self.parent_element()
|
||||
}
|
||||
|
||||
/// Whether we're matching on a pseudo-element.
|
||||
fn is_pseudo_element(&self) -> bool;
|
||||
|
||||
/// Skips non-element nodes
|
||||
fn prev_sibling_element(&self) -> Option<Self>;
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue