Aliaksandr Kalenik
af13bd8af0
LibWeb: Remove unused StyleProperties::clone()
function
2023-12-09 19:04:45 +01:00
Sam Atkins
29ecb2eda6
LibWeb: Parse grid-template-areas property using TokenStream
2023-12-08 10:47:23 +00:00
Sam Atkins
b569ab72e8
LibWeb: Correct grid-template-areas definition
...
The spec syntax is `none | <string>+` and `none` is the default.
2023-12-08 10:47:23 +00:00
Sam Atkins
c3583317ee
LibWeb: Parse grid-auto-flow property using TokenStream
...
RefPtr is already `[[nodiscard]]` so we can remove that extra noise from
the declaration.
2023-12-08 10:47:23 +00:00
Sam Atkins
bbbd9c14ac
LibWeb: Parse grid-area property using TokenStream
2023-12-08 10:47:23 +00:00
Sam Atkins
a16b35a755
LibWeb: Parse grid-column and grid-row properties using TokenStream
2023-12-08 10:47:23 +00:00
Sam Atkins
b18c334a4f
LibWeb: Ensure there are no trailing tokens when parsing font-family
2023-12-08 10:47:23 +00:00
Sam Atkins
f84ccb8627
LibWeb: Part font property using TokenStream
2023-12-08 10:47:23 +00:00
Sam Atkins
333b705f25
LibWeb: Parse flex-flow property using TokenStream
2023-12-08 10:47:23 +00:00
Sam Atkins
bf3576667a
LibWeb: Parse flex property using TokenStream
2023-12-08 10:47:23 +00:00
Sam Atkins
4f3136c230
LibWeb: Parse shadow values using TokenStream
2023-12-08 10:47:23 +00:00
Sam Atkins
3a36b2eea9
LibWeb: Parse border properties using TokenStream
2023-12-08 10:47:23 +00:00
Sam Atkins
0e00d9a67d
LibWeb: Parse background property using TokenStream
2023-12-08 10:47:23 +00:00
Sam Atkins
64a44b719e
LibWeb: Parse FilterValueListStyleValue using TokenStream
2023-12-08 10:47:23 +00:00
Sam Atkins
2efaadd63c
LibWeb: Parse aspect-ratio property using TokenStream
2023-12-08 10:47:23 +00:00
Sam Atkins
647d52ff9a
LibWeb: Parse quotes property using TokenStream
2023-12-08 10:47:23 +00:00
Sam Atkins
ebad94658a
LibWeb: Parse display property using TokenStream
2023-12-08 10:47:23 +00:00
Sam Atkins
3d6eb36664
LibWeb: Parse content property using TokenStream
2023-12-08 10:47:23 +00:00
Sam Atkins
4d6e8d8f37
LibWeb: Parse border-radius properties using TokenStream
2023-12-08 10:47:23 +00:00
Sam Atkins
28c719fff5
LibWeb: Extract contains_single_none_ident()
helper function
...
Several CSS properties can be `none` instead of their usual value.
2023-12-08 10:47:23 +00:00
Sam Atkins
1cc88dc4bc
LibWeb: Make parse_comma_separated_value_list() take a TokenStream
...
This lets us use it from inside places that use TokenStreams.
2023-12-08 10:47:23 +00:00
Sam Atkins
cd9344d4c1
LibWeb: Clarify naming of TokenStreams in parse_css_value()
...
Originally, the input was named `tokens`, and we later created a
`tokens_without_whitespace` from the filtered contents of `tokens`.
Since `tokens_without_whitespace` is what we actually want to use while
parsing, let's rename `tokens` -> `unprocessed_tokens` and use the
`tokens` name for the processed ones.
2023-12-08 10:47:23 +00:00
Bastiaan van der Plaat
4966c083df
LibWeb: Remove progress element custom paintable use shadow dom instead
2023-12-07 11:37:01 +01:00
Sam Atkins
ef48d967d4
LibWeb: Correct parsing of background-position 3-value syntax
...
There were two bugs here, one of which hid the other:
- Only one offset would have a value, but we dereferenced both.
- We consumed a token whether it was a valid offset or not.
2023-12-05 09:55:16 +01:00
Bastiaan van der Plaat
2107ab823d
LibWeb: Add basic HTML meter element support
2023-12-04 19:54:43 +00:00
Bastiaan van der Plaat
3175557cb8
LibWeb: Update progressbar colors to be more pleasant
2023-12-04 19:54:43 +00:00
Bastiaan van der Plaat
fb7b03d162
LibWeb: Add support for the input size attribute
2023-12-03 20:29:14 +01:00
Shannon Booth
89bbf53745
LibWeb: Port CSS Parser from DeprecatedString
...
These are the last instances of DeprecatedString in the CSS folder.
2023-12-02 22:54:53 +01:00
Shannon Booth
6813dcaff8
LibWeb: Return FlyString const& from CSS::Parser::Token
...
This allows us to not need to convert back to a FlyString when we need
one.
2023-12-02 22:54:53 +01:00
Sam Atkins
d344c50663
LibWeb: Return String from CSSStyleRule::selector_text()
2023-12-01 20:48:13 +01:00
Sam Atkins
374b6cdffd
LibWeb: Return String from CSSImportRule::href()
2023-12-01 20:48:13 +01:00
Sam Atkins
ef1e942f3e
LibWeb: Use String for getting/setting MediaQueryList media
2023-12-01 20:48:13 +01:00
Sam Atkins
6dbc3044bd
LibWeb: Remove some to_deprecated_string()
calls in the CSS code
2023-12-01 20:48:13 +01:00
Sam Atkins
9c1c7720c5
LibWeb: Use serialize_a_url() to serialize @import url(...)
2023-12-01 20:48:13 +01:00
Andreas Kling
189d1e8291
LibWeb: Port CSSNamespaceRule to FlyString
...
This removes a performance problem where we'd convert the style sheet's
default namespace from DeprecatedFlyString to FlyString once per rule
during selector matching.
The conversion now happens once, during CSS parse. It should eventually
be removed from there as well, but one step at a time. :^)
2023-12-01 16:03:58 +01:00
Aliaksandr Kalenik
961b067df8
LibWeb/CSS: Add support for translateZ() transform property
2023-11-30 22:54:02 +01:00
Shannon Booth
96af80acd1
LibWeb: Port Intrinsics from DeprecatedString
2023-11-28 17:15:27 -05:00
Shannon Booth
af7df1dbbf
LibWeb: Port CSSStyleDeclaration from DeprecatedString to String
2023-11-28 17:15:27 -05:00
Shannon Booth
d400291ad9
LibWeb: Port CSSRule::serialized from DeprecatedString to String
2023-11-28 17:15:27 -05:00
Aliaksandr Kalenik
1b3223dd9e
LibWeb: Rename painter() to recording_painter() in PaintContext
...
Using recording_painter() as a name is less misleading, indicating
the painter in stacking context traversal doesn't perform actual
painting commands.
2023-11-27 21:53:38 +01:00
Aliaksandr Kalenik
f4a5c136c3
LibGfx+LibWeb: Add ImmutableBitmap for images bitmap caching in painter
...
Before this change, we used Gfx::Bitmap to represent both decoded
images that are not going to be mutated and bitmaps corresponding
to canvases that could be mutated.
This change introduces a wrapper for bitmaps that are not going to be
mutated, so the painter could do caching: texture caching in the case
of GPU painter and potentially scaled bitmap caching in the case of CPU
painter.
2023-11-26 12:55:43 +01:00
Shannon Booth
b7bcdf7c53
LibWeb: Fix UAF in CSSStyleSheet
...
CSSNamespaceRule returns a copy of a DeprecatedString, meaning that the
view returned by the namespace in CSSStyleSheet is into a temporary
string.
2023-11-24 10:57:17 +01:00
Sam Atkins
f69d38a346
LibWeb: Use ComponentValue::is_ident("..."sv) helper
2023-11-22 09:45:51 +01:00
Sam Atkins
6cd6186399
LibWeb: Don't assume grid size is always Function or Token
...
This stops `grid-template-columns: minmax({},{})` from crashing.
2023-11-22 09:45:51 +01:00
Sam Atkins
1a17b8a304
LibWeb: Don't assume grid-area parts are Tokens
...
This stops `grid-area: {}` from crashing.
2023-11-22 09:45:51 +01:00
Sam Atkins
ab9d39bf4a
LibWeb: Don't assume grid-row/grid-column parts are Tokens
...
This stops `grid-column: {}` from crashing.
2023-11-22 09:45:51 +01:00
Sam Atkins
314a30b12e
LibWeb: Don't assume grid-line parts are Tokens
...
This stops `grid-row-start: {}` from crashing.
Also tidy up the parsing code a little.
2023-11-22 09:45:51 +01:00
Sam Atkins
1f6e13d8fe
LibWeb: Don't assume repeat() contents are Tokens
...
This stops `grid-template-rows: repeat({})` from crashing.
2023-11-22 09:45:51 +01:00
Sam Atkins
5e54ff1858
LibWeb: Don't assume rect() contents are Tokens
...
This stops `clip: rect({});` from crashing.
2023-11-22 09:45:51 +01:00
Sam Atkins
aba2946b1e
LibWeb: Use ComponentValue::is_function("..."sv) helper
2023-11-22 09:45:51 +01:00