ladybird/Libraries/LibWeb/CSS/Parser
Sam Atkins d42a5494d7 LibWeb/CSS: Parse @font-face descriptors as style values
CSSFontFaceRule now stores its values as a CSSFontFaceDescriptors, with
a ParsedFontFace produced on request. This is exposed via the `style`
attribute, so we pass a lot of tests that try to read values from
that.

We have one test regression, which we passed by mistake before: The test
wanted to ensure we don't allow `@font-face` nested inside other rules.
We passed it just because we discarded any `@font-face` without a
`font-family`. What we're supposed to do is 1) keep at-rules with
missing required descriptors and just not use them, and 2) reject
certain ones when nested.

We may want to cache the ParsedFontFace in the future, but I didn't here
because 1) it's called rarely, and 2) that would mean knowing to
invalidate it when the CSSFontFaceDescriptors changes, which isn't
obvious to me right now.
2025-04-03 14:04:21 +01:00
..
ComponentValue.cpp
ComponentValue.h
DescriptorParsing.cpp LibWeb/CSS: Parse @font-face descriptors as style values 2025-04-03 14:04:21 +01:00
Dimension.h LibWeb/CSS: Add Parser::Dimension::to_string() 2024-12-18 12:21:22 +00:00
GradientParsing.cpp LibWeb/CSS: Allow bare zero for gradient angles 2025-03-18 20:04:08 +00:00
Helpers.cpp LibWeb: Parse descriptors as style values, using the JSON data 2025-04-03 11:42:04 +01:00
MediaParsing.cpp LibWeb/CSS: Return GC::Ref from Parser::convert_to_style_declaration() 2025-03-19 13:53:00 +00:00
Parser.cpp LibWeb: Parse descriptors as style values, using the JSON data 2025-04-03 11:42:04 +01:00
Parser.h LibWeb: Parse descriptors as style values, using the JSON data 2025-04-03 11:42:04 +01:00
PropertyParsing.cpp LibWeb/CSS: Un-template parse_comma_separated_value_list() 2025-04-03 09:14:00 +01:00
RuleParsing.cpp LibWeb/CSS: Parse @font-face descriptors as style values 2025-04-03 14:04:21 +01:00
SelectorParsing.cpp LibWeb: Implement functional pseudo-element parsing 2025-03-25 07:54:13 +00:00
Token.cpp
Token.h
Tokenizer.cpp LibWeb: Treat CSS at-rule names as case-insensitive 2025-03-10 12:42:57 +01:00
Tokenizer.h
TokenStream.h LibWeb/CSS: Make CSS Parser non-copyable/movable 2025-02-06 16:47:25 +00:00
Types.cpp LibWeb/CSS: Move functions for detecting var()/attr() into Token types 2025-03-28 09:15:02 +00:00
Types.h LibWeb/CSS: Move functions for detecting var()/attr() into Token types 2025-03-28 09:15:02 +00:00
ValueParsing.cpp LibWeb: Parse descriptors as style values, using the JSON data 2025-04-03 11:42:04 +01:00