1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 07:18:11 +00:00
serenity/Userland/Libraries/LibWeb/CSS
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
..
Parser LibWeb: Fix issues with CSS attribute selector handling 2021-07-31 00:18:11 +02:00
.gitignore Libraries: Move to Userland/Libraries/ 2021-01-12 12:17:46 +01:00
ComputedValues.h LibWeb: Make box-shadow known throughout the CSS subsystem 2021-07-24 22:16:48 +02:00
CSSImportRule.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
CSSImportRule.h AK: Rename adopt() to adopt_ref() 2021-04-23 16:46:57 +02:00
CSSRule.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
CSSRule.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
CSSStyleDeclaration.cpp LibWeb: Store custom properties in CSSStyleDeclaration 2021-05-28 10:45:38 +01:00
CSSStyleDeclaration.h LibWeb: Store custom properties in CSSStyleDeclaration 2021-05-28 10:45:38 +01:00
CSSStyleDeclaration.idl LibWeb: Add a CustomHasProperty trait to WrapperGenerator 2021-07-26 15:56:15 +01:00
CSSStyleRule.cpp LibWeb: Make CSS::Selector reference counted 2021-07-14 13:31:00 +02:00
CSSStyleRule.h LibWeb: Make CSS::Selector reference counted 2021-07-14 13:31:00 +02:00
CSSStyleSheet.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
CSSStyleSheet.h AK: Rename downcast<T> => verify_cast<T> 2021-06-24 19:57:01 +02:00
CSSStyleSheet.idl LibWeb: Start exposing CSS style sheets to JavaScript :^) 2021-03-08 11:50:36 +01:00
Default.css LibWeb: Use -libweb-palette-base-text for text color in default CSS 2021-05-19 23:23:48 +01:00
Identifiers.json LibWeb: Resolve CSS text-decoration from value list 2021-07-22 23:09:01 +02:00
Length.cpp LibWeb: Add calc() resolution to CSS::Length 2021-07-24 03:02:07 +04:30
Length.h LibWeb: Add calc() resolution to CSS::Length 2021-07-24 03:02:07 +04:30
LengthBox.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
Properties.json LibWeb: Add box-shadow as a known ValueID 2021-07-24 22:16:48 +02:00
QuirksMode.css Libraries: Move to Userland/Libraries/ 2021-01-12 12:17:46 +01:00
Screen.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
Screen.h AK: Rename adopt() to adopt_ref() 2021-04-23 16:46:57 +02:00
Screen.idl LibWeb: Implement the Screen interface 2021-04-04 00:37:54 +02:00
Selector.cpp LibWeb: Make CSS 'An+B' parsing spec-compliant 2021-07-31 00:18:11 +02:00
Selector.h LibWeb: Make CSS 'An+B' parsing spec-compliant 2021-07-31 00:18:11 +02:00
SelectorEngine.cpp LibWeb: Fix issues with CSS attribute selector handling 2021-07-31 00:18:11 +02:00
SelectorEngine.h LibWeb: Convert CSS Dump, Selector, & SelectorEngine to east const 2021-07-14 13:31:00 +02:00
StyleInvalidator.cpp Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
StyleInvalidator.h Everywhere: Use linusg@serenityos.org for my copyright headers 2021-04-22 22:51:19 +02:00
StyleProperties.cpp LibWeb: Make box-shadow known throughout the CSS subsystem 2021-07-24 22:16:48 +02:00
StyleProperties.h LibWeb: Make box-shadow known throughout the CSS subsystem 2021-07-24 22:16:48 +02:00
StyleResolver.cpp LibWeb: Resolve CSS text-decoration from value list 2021-07-22 23:09:01 +02:00
StyleResolver.h LibWeb: Convert StyleResolver.{h,cpp} to east const 2021-07-22 23:09:01 +02:00
StyleSheet.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
StyleSheet.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
StyleSheet.idl LibWeb: Implement StyleSheet.type 2021-03-08 16:16:28 +01:00
StyleSheetList.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
StyleSheetList.h AK: Rename adopt() to adopt_ref() 2021-04-23 16:46:57 +02:00
StyleSheetList.idl LibWeb: Start exposing CSS style sheets to JavaScript :^) 2021-03-08 11:50:36 +01:00
StyleValue.cpp LibWeb: Add CSS ValueListStyleValue 2021-07-22 23:09:01 +02:00
StyleValue.h LibWeb: Remove unused enum value CSS::StyleValue::Position 2021-07-29 15:01:47 +02:00