LibWeb/CSS: Remove the "Auto" type from Length

This has always been a bit of a hack. Initially it made sense as a lot
of properties that accept a length also accept `auto`, but while
convenient, that leads to problems: It's easy to forget to check if a
length is `auto`, and places that don't accept it end up with an
invalid state lurking in the type system, which makes things unclear.
This commit is contained in:
Sam Atkins 2025-09-01 14:03:25 +01:00
parent f74a40fdcb
commit 930ee495e7
Notes: github-actions[bot] 2025-09-04 12:32:29 +00:00
10 changed files with 8 additions and 66 deletions

View file

@ -2807,9 +2807,6 @@ CalculatedStyleValue::CalculationResult CalculatedStyleValue::CalculationResult:
[](Frequency const& frequency) { return frequency.to_hertz(); },
[&context](Length const& length) {
// Handle some common cases first, so we can resolve more without a context
if (length.is_auto())
return 0.0;
if (length.is_absolute())
return length.absolute_length_to_px_without_rounding();