1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 07:18:11 +00:00
serenity/Userland/Libraries/LibWeb/CSS/Parser
Sam Atkins 1b72766e4e LibWeb: Fix issues with CSS attribute selector handling
This is three small, related changes:

1. Element::has_attribute() now returns true if the attribute exists but
has no value. (eg, `<div foo />` -> `has_attribute("foo")`)

2. SelectorEngine::matches_attribute() now makes sure there is a first
segment before comparing it, fixing a crash.

3. CSS::Parser now converts attribute names in attribute selectors to
lowercase, to match the expectations of the rest of the system.
Converting to lowercase is not always correct, depending on language,
but since we only currently support HTML, and that expects them to be
case-insensitive, it is fine for now.
2021-07-31 00:18:11 +02:00
..
DeclarationOrAtRule.h LibWeb: Add accessors to CSS::DeclarationOrAtRule 2021-07-11 23:19:56 +02:00
DeprecatedCSSParser.cpp LibWeb: Make CSS 'An+B' parsing spec-compliant 2021-07-31 00:18:11 +02:00
DeprecatedCSSParser.h LibWeb: Make CSS::Selector reference counted 2021-07-14 13:31:00 +02:00
Parser.cpp LibWeb: Fix issues with CSS attribute selector handling 2021-07-31 00:18:11 +02:00
Parser.h LibWeb: Make CSS 'An+B' parsing spec-compliant 2021-07-31 00:18:11 +02:00
StyleBlockRule.h LibWeb: Give CSS Token and StyleComponentValueRule matching is() funcs 2021-07-11 23:19:56 +02:00
StyleComponentValueRule.h LibWeb: Increase clarity with CSS token debug logging 2021-07-11 23:19:56 +02:00
StyleDeclarationRule.h Everywhere: Use "the SerenityOS developers." in copyright headers 2021-04-29 00:59:26 +02:00
StyleFunctionRule.h LibWeb: Use Selectors instead of a String for :not() selectors 2021-07-14 13:31:00 +02:00
StyleRule.h LibWeb: Merge CSS Parser's QualifiedStyleRule and AtStyleRule 2021-07-11 23:19:56 +02:00
StyleRules.cpp LibWeb: Convert StyleFunctionRule.m_values to ComponentValues 2021-07-11 23:19:56 +02:00
Token.cpp LibWeb: Make CSS 'An+B' parsing spec-compliant 2021-07-31 00:18:11 +02:00
Token.h LibWeb: Make CSS 'An+B' parsing spec-compliant 2021-07-31 00:18:11 +02:00
Tokenizer.cpp LibWeb: Define proper debug symbols for CSS Parser and Tokenizer 2021-07-31 00:18:11 +02:00
Tokenizer.h LibWeb: Correct escape handling in CSS Tokenizer 2021-07-11 23:19:56 +02:00