Commit Graph

14255 Commits

Author SHA1 Message Date
Ben Wiederhake
c9dafdc51c Meta: Reformat QtCreator file-listing script for readability 2026-02-23 13:10:03 +01:00
Praise-Garfield
6a3b9c5ffc LibWeb: Use correct condition and field for navigation initiator origin
The guard for setting top-level navigation initiator origin called
top_level_traversable()->parent() == nullptr, which is tautologically
true: top_level_traversable() already walks to the topmost traversable,
whose parent is always null. This caused the field to be set on every
navigation, including child navigable navigations inside iframes.

The value was also read from document_state()->origin() instead of
document_state()->initiator_origin(), giving the document's own origin
rather than the origin of whoever initiated the navigation.

Use is_top_level_traversable() and initiator_origin() to match the
spec step.
2026-02-23 13:07:32 +01:00
Callum Law
8d4084261a LibWeb: Resolve list item marker using registered counter styles 2026-02-23 11:21:09 +00:00
Callum Law
ca54cc6c79 LibWeb: Resolve <counter> functions using registered counter styles
Previously we only supported a subset of the predefined counter styles,
we now respect counter styles defined by `@counter-style` rules when
resolving the value of `counter()` and `counters()` functions
2026-02-23 11:21:09 +00:00
Callum Law
2008c6be5a LibWeb: Add predefined @counter-styles to UA stylesheet
There are some predefined counter styles (such as the longhand east
asian ones) which are too complex to be defined here and will need to be
implemented ad-hoc, this remains as a FIXME for now.
2026-02-23 11:21:09 +00:00
Callum Law
3e9cdb2cf4 LibWeb: Store whether sheet being parsed is a UA stylesheet
UA stylesheets allow some things that regular stylesheets don't, for
instance allowing use of "non-overridable" `@counter-style` names.
2026-02-23 11:21:09 +00:00
Callum Law
73b07d25ac LibWeb: Resolve and register counter styles from @counter-style rules
The tricky bit of this is resolving cycles in extending rules and
ensuring that counter styles are registered in the required order for
extension (i.e. for any pair of extended/extending rules the extended
one should be registered first).
2026-02-23 11:21:09 +00:00
Callum Law
3d150e46c2 LibWeb: Avoid template for StyleScope::for_each_stylesheet
This only ever takes a `Function<void(CSS::CSSStyleSheet&)` so there is
no need to use a template here.
2026-02-23 11:21:09 +00:00
Callum Law
2cc3fbb017 LibWeb: Pass callback as lvalue ref in for_each_active_stylesheet
Taking the callback as an rvalue ref meant we couldn't use the same
callback more than once
2026-02-23 11:21:09 +00:00
Callum Law
0002d1cfc3 LibWeb: Implement algorithm to generate a counter representation 2026-02-23 11:21:09 +00:00
Callum Law
63e2ed3cd9 LibWeb: Implement counter style fixed algorithm 2026-02-23 11:21:09 +00:00
Callum Law
fb239ceba0 LibWeb: Implement counter style symbolic algorithm 2026-02-23 11:21:09 +00:00
Callum Law
fddeb032b4 LibWeb: Implement counter style alphabetic algorithm 2026-02-23 11:21:09 +00:00
Callum Law
0a2fe1607c LibWeb: Implement counter style numeric algorithm 2026-02-23 11:21:09 +00:00
Callum Law
85c367667e LibWeb: Implement counter style cyclic algorithm 2026-02-23 11:21:09 +00:00
Callum Law
2827e12571 LibWeb: Implement counter style additive algorithm 2026-02-23 11:21:09 +00:00
Callum Law
cfa5bc44d5 LibWeb: Implement creating CounterStyle from CounterStyleDefinition 2026-02-23 11:21:09 +00:00
Callum Law
ff40e9e7ba LibWeb: Stub CounterStyle
Eventually this will be used to resolve counter representations but we
are yet to implement any of the algorithms to do so.
2026-02-23 11:21:09 +00:00
Callum Law
bb5c8bb5be LibWeb: Add CounterStyleDefinition
This serves as an intermediate step between `CSSCounterStyleRule` and a
fully built counter style which will be helpful for:
 - Determining whether a rule defines a counter style
 - Resolving extends cycles
 - Determining registration order
2026-02-23 11:21:09 +00:00
Callum Law
32b9ff21df LibWeb: Add generic int_from_style_value method
Reduces duplication in line with `number_from_style_value`,
`string_from_style_value` etc
2026-02-23 11:21:09 +00:00
Ben Wiederhake
31158ef448 LibIPC: Remove unused header in TransportSocket 2026-02-23 12:15:23 +01:00
Ben Wiederhake
35954223af LibIPC: Remove unused header in Message 2026-02-23 12:15:23 +01:00
Ben Wiederhake
1fd672c4c2 LibCore: Remove unused header in File 2026-02-23 12:15:23 +01:00
Ben Wiederhake
481f6b9154 LibIPC: Remove unused header in Encoder 2026-02-23 12:15:23 +01:00
Ben Wiederhake
7093082d75 LibCore: Remove forward declaration of non-existent type 2026-02-23 12:15:23 +01:00
Ben Wiederhake
ba01b2c322 LibIPC: Remove unused header in Decoder 2026-02-23 12:15:23 +01:00
Ben Wiederhake
738294f4cd LibIPC: Remove unused header in Connection 2026-02-23 12:15:23 +01:00
Ben Wiederhake
7fb7025d69 LibRegex: Remove unused header in Regex 2026-02-23 12:15:23 +01:00
Ben Wiederhake
2e51182560 LibHTTP: Remove unused header in HttpRequest 2026-02-23 12:15:23 +01:00
Ben Wiederhake
7ad95c78af LibHTTP: Remove unused header in HeaderList 2026-02-23 12:15:23 +01:00
Ben Wiederhake
2a369a2a26 LibHTTP: Remove unused header in ParsedCookie 2026-02-23 12:15:23 +01:00
Ben Wiederhake
a4e9287411 LibGC: Remove unused header in HeapBlock 2026-02-23 12:15:23 +01:00
Ben Wiederhake
af489080c4 LibGC: Remove unused header in Heap 2026-02-23 12:15:23 +01:00
Ben Wiederhake
082d17dec3 LibGC: Remove unused header in RootHashMap 2026-02-23 12:15:23 +01:00
Ben Wiederhake
771f6d1c83 LibGC: Remove unused header in Root 2026-02-23 12:15:23 +01:00
Ben Wiederhake
21142445a4 LibGC: Remove unused header in ConservativeVector 2026-02-23 12:15:23 +01:00
Ben Wiederhake
1c48b0dc60 LibGC: Remove unused header in CellAllocator 2026-02-23 12:15:23 +01:00
Ben Wiederhake
eab0367714 LibGC: Remove unused header in Cell 2026-02-23 12:15:23 +01:00
Ben Wiederhake
f006852203 LibGC: Remove unused header in BlockAllocator 2026-02-23 12:15:23 +01:00
Ben Wiederhake
543c716b13 LibDNS: Remove unused header in Message 2026-02-23 12:15:23 +01:00
Ben Wiederhake
62e3238aa7 LibCrypto: Remove unused header in RSA 2026-02-23 12:15:23 +01:00
Ben Wiederhake
05f60513f7 LibCrypto: Remove unused header in SECPxxxr1 2026-02-23 12:15:23 +01:00
Ben Wiederhake
f7b7f105f2 LibCrypto: Remove unused header in EdwardsCurve 2026-02-23 12:15:23 +01:00
Ben Wiederhake
e15ba97178 LibCrypto: Remove unused header in ChaCha 2026-02-23 12:15:23 +01:00
Ben Wiederhake
7d92ba189f LibCrypto: Remove unused header in AES 2026-02-23 12:15:23 +01:00
Ben Wiederhake
013e10aee6 LibCrypto: Remove unused header in Certificate 2026-02-23 12:15:23 +01:00
Ben Wiederhake
0e0c85639a LibCrypto: Remove unused header in UnsignedBigInteger 2026-02-23 12:15:23 +01:00
Ben Wiederhake
162e7e6935 LibCrypto: Remove unused header in SignedBigInteger 2026-02-23 12:15:23 +01:00
Ben Wiederhake
ad5e0e28bc LibCrypto: Remove unused header in BigFraction 2026-02-23 12:15:23 +01:00
Ben Wiederhake
09d71f38b4 LibCrypto: Remove unused header in DER 2026-02-23 12:15:23 +01:00