mirror of
https://github.com/servo/servo.git
synced 2025-07-30 10:40:27 +01:00
script: Update list of non-TS pseudo classes supported by Servo (#33165)
Also remove some code duplication by moving some of the code into the `Element` impl. Signed-off-by: Martin Robinson <mrobinson@igalia.com>
This commit is contained in:
parent
ad45fa0a19
commit
7582afebec
10 changed files with 58 additions and 68 deletions
|
@ -3695,22 +3695,36 @@ impl SelectorsElement for DomRoot<Element> {
|
|||
// storing separate <ident> or <string>s for each language tag.
|
||||
NonTSPseudoClass::Lang(ref lang) => extended_filtering(&self.get_lang(), lang),
|
||||
|
||||
NonTSPseudoClass::ReadOnly => !Element::state(self).contains(pseudo_class.state_flag()),
|
||||
NonTSPseudoClass::ReadOnly => {
|
||||
!Element::state(self).contains(NonTSPseudoClass::ReadWrite.state_flag())
|
||||
},
|
||||
|
||||
NonTSPseudoClass::Active |
|
||||
NonTSPseudoClass::Autofill |
|
||||
NonTSPseudoClass::Checked |
|
||||
NonTSPseudoClass::Default |
|
||||
NonTSPseudoClass::Defined |
|
||||
NonTSPseudoClass::Disabled |
|
||||
NonTSPseudoClass::Enabled |
|
||||
NonTSPseudoClass::Focus |
|
||||
NonTSPseudoClass::FocusVisible |
|
||||
NonTSPseudoClass::FocusWithin |
|
||||
NonTSPseudoClass::Fullscreen |
|
||||
NonTSPseudoClass::Hover |
|
||||
NonTSPseudoClass::Defined |
|
||||
NonTSPseudoClass::Enabled |
|
||||
NonTSPseudoClass::Disabled |
|
||||
NonTSPseudoClass::Checked |
|
||||
NonTSPseudoClass::Valid |
|
||||
NonTSPseudoClass::Invalid |
|
||||
NonTSPseudoClass::InRange |
|
||||
NonTSPseudoClass::Indeterminate |
|
||||
NonTSPseudoClass::ReadWrite |
|
||||
NonTSPseudoClass::Invalid |
|
||||
NonTSPseudoClass::Modal |
|
||||
NonTSPseudoClass::Optional |
|
||||
NonTSPseudoClass::OutOfRange |
|
||||
NonTSPseudoClass::PlaceholderShown |
|
||||
NonTSPseudoClass::Target => Element::state(self).contains(pseudo_class.state_flag()),
|
||||
NonTSPseudoClass::PopoverOpen |
|
||||
NonTSPseudoClass::ReadWrite |
|
||||
NonTSPseudoClass::Required |
|
||||
NonTSPseudoClass::Target |
|
||||
NonTSPseudoClass::UserInvalid |
|
||||
NonTSPseudoClass::UserValid |
|
||||
NonTSPseudoClass::Valid => Element::state(self).contains(pseudo_class.state_flag()),
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -567,22 +567,34 @@ impl<'dom> ::selectors::Element for ServoLayoutElement<'dom> {
|
|||
NonTSPseudoClass::ReadOnly => !self
|
||||
.element
|
||||
.get_state_for_layout()
|
||||
.contains(pseudo_class.state_flag()),
|
||||
.contains(NonTSPseudoClass::ReadWrite.state_flag()),
|
||||
|
||||
NonTSPseudoClass::Active |
|
||||
NonTSPseudoClass::Autofill |
|
||||
NonTSPseudoClass::Checked |
|
||||
NonTSPseudoClass::Default |
|
||||
NonTSPseudoClass::Defined |
|
||||
NonTSPseudoClass::Disabled |
|
||||
NonTSPseudoClass::Enabled |
|
||||
NonTSPseudoClass::Focus |
|
||||
NonTSPseudoClass::FocusVisible |
|
||||
NonTSPseudoClass::FocusWithin |
|
||||
NonTSPseudoClass::Fullscreen |
|
||||
NonTSPseudoClass::Hover |
|
||||
NonTSPseudoClass::Defined |
|
||||
NonTSPseudoClass::Enabled |
|
||||
NonTSPseudoClass::Disabled |
|
||||
NonTSPseudoClass::Checked |
|
||||
NonTSPseudoClass::Valid |
|
||||
NonTSPseudoClass::Invalid |
|
||||
NonTSPseudoClass::InRange |
|
||||
NonTSPseudoClass::Indeterminate |
|
||||
NonTSPseudoClass::ReadWrite |
|
||||
NonTSPseudoClass::Invalid |
|
||||
NonTSPseudoClass::Modal |
|
||||
NonTSPseudoClass::Optional |
|
||||
NonTSPseudoClass::OutOfRange |
|
||||
NonTSPseudoClass::PlaceholderShown |
|
||||
NonTSPseudoClass::Target => self
|
||||
NonTSPseudoClass::PopoverOpen |
|
||||
NonTSPseudoClass::ReadWrite |
|
||||
NonTSPseudoClass::Required |
|
||||
NonTSPseudoClass::Target |
|
||||
NonTSPseudoClass::UserInvalid |
|
||||
NonTSPseudoClass::UserValid |
|
||||
NonTSPseudoClass::Valid => self
|
||||
.element
|
||||
.get_state_for_layout()
|
||||
.contains(pseudo_class.state_flag()),
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue