LibWeb: Add :not pseudoclass to the CSS parser

The selector given in the :not() is stored in the SimpleSelector as a
String.
This commit is contained in:
Tobias Christiansen 2021-05-23 20:59:26 +02:00 committed by Linus Groh
commit 1ab82afee6
Notes: sideshowbarker 2024-07-18 17:25:50 +09:00
3 changed files with 9 additions and 0 deletions

View file

@ -579,6 +579,9 @@ public:
simple_selector.pseudo_class = CSS::Selector::SimpleSelector::PseudoClass::Enabled;
} else if (pseudo_name.equals_ignoring_case("checked")) {
simple_selector.pseudo_class = CSS::Selector::SimpleSelector::PseudoClass::Checked;
} else if (pseudo_name.starts_with("not", CaseSensitivity::CaseInsensitive)) {
simple_selector.pseudo_class = CSS::Selector::SimpleSelector::PseudoClass::Not;
simple_selector.not_selector = capture_selector_args(pseudo_name);
} else {
dbgln("Unknown pseudo class: '{}'", pseudo_name);
return {};