ladybird/Libraries/LibWeb/CSS/StyleValues
Sam Atkins ee712bd98f LibWeb/CSS: Simplify calculations after parsing them
If a calculation was simplified down to a single numeric node, then most
of the time we can instead return a regular StyleValue, for example
`calc(2px + 3px)` would be simplified down to a `5px` LengthStyleValue.
This means that parse_calculated_value() can't return a
CalculatedStyleValue directly, and its callers all have to handle
non-calculated values as well as calculated ones.

This simplification is reflected in the new test results. Serialization
is not yet correct in all cases but we're closer than we were. :^)
2025-01-30 19:31:54 +01:00
..
AbstractImageStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
AngleStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
AngleStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
BackgroundRepeatStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
BackgroundRepeatStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
BackgroundSizeStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
BackgroundSizeStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
BasicShapeStyleValue.cpp LibWeb: Properly serialize position/edge style values 2024-12-13 11:35:38 +00:00
BasicShapeStyleValue.h LibWeb: Properly serialize position/edge style values 2024-12-13 11:35:38 +00:00
BorderRadiusStyleValue.cpp LibWeb: Avoid unnecessary copies in BorderRadiusStyleValue::absolutize() 2025-01-28 01:12:45 +01:00
BorderRadiusStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
CalculatedStyleValue.cpp LibWeb/CSS: Simplify calculations after parsing them 2025-01-30 19:31:54 +01:00
CalculatedStyleValue.h LibWeb/CSS: Simplify calculations after parsing them 2025-01-30 19:31:54 +01:00
ColorSchemeStyleValue.cpp LibWeb/CSS: Implement the color-scheme CSS property 2025-01-08 11:18:13 +00:00
ColorSchemeStyleValue.h LibWeb/CSS: Implement the color-scheme CSS property 2025-01-08 11:18:13 +00:00
ConicGradientStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
ConicGradientStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
ContentStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
ContentStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
CounterDefinitionsStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
CounterDefinitionsStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
CounterStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
CounterStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
CSSColor.cpp AK+Everywhere: Rename verify_cast to as 2025-01-21 11:34:06 -05:00
CSSColor.h LibWeb/CSS: Serialize CSSColor without relying on RGB 2024-12-11 16:37:22 -07:00
CSSColorValue.cpp LibWeb/CSS: Wrap calc()-resolution data in a struct 2025-01-30 19:31:54 +01:00
CSSColorValue.h LibWeb/CSS: Implement the light-dark color function 2025-01-08 11:18:13 +00:00
CSSHSL.cpp AK+Everywhere: Rename verify_cast to as 2025-01-21 11:34:06 -05:00
CSSHSL.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
CSSHWB.cpp AK+Everywhere: Rename verify_cast to as 2025-01-21 11:34:06 -05:00
CSSHWB.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
CSSKeywordValue.cpp LibWeb/CSS: Implement the color-scheme CSS property 2025-01-08 11:18:13 +00:00
CSSKeywordValue.h LibWeb: Inline CSSStyleValue::to_keyword() 2025-01-28 01:12:45 +01:00
CSSLabLike.cpp AK+Everywhere: Rename verify_cast to as 2025-01-21 11:34:06 -05:00
CSSLabLike.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
CSSLCHLike.cpp AK+Everywhere: Rename verify_cast to as 2025-01-21 11:34:06 -05:00
CSSLCHLike.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
CSSLightDark.cpp AK+Everywhere: Rename verify_cast to as 2025-01-21 11:34:06 -05:00
CSSLightDark.h LibWeb/CSS: Implement the light-dark color function 2025-01-08 11:18:13 +00:00
CSSNumericValue.h Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
CSSRGB.cpp LibWeb/CSS: Wrap calc()-resolution data in a struct 2025-01-30 19:31:54 +01:00
CSSRGB.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
CSSUnitValue.h Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
CustomIdentStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
DisplayStyleValue.cpp Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
DisplayStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
EasingStyleValue.cpp LibWeb: Correct serialization of steps() easing functions 2024-11-18 17:39:03 -05:00
EasingStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
EdgeStyleValue.cpp LibWeb/CSS: Make CalculationNodes ref-counted 2025-01-30 19:31:54 +01:00
EdgeStyleValue.h LibWeb: Properly serialize position/edge style values 2024-12-13 11:35:38 +00:00
FilterValueListStyleValue.cpp LibWeb/CSS: Update CalculatedOr API to use CalculationResolutionContext 2025-01-30 19:31:54 +01:00
FilterValueListStyleValue.h LibWeb+LibGfx: Refactor CSS filters into LibGfx 2024-12-18 18:54:20 +01:00
FlexStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
FrequencyStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
GridAutoFlowStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
GridAutoFlowStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
GridTemplateAreaStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
GridTemplateAreaStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
GridTrackPlacementStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
GridTrackPlacementStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
GridTrackSizeListStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
GridTrackSizeListStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
ImageStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
ImageStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
IntegerStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
IntegerStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
LengthStyleValue.cpp Everywhere: Hoist the Libraries folder to the top-level 2024-11-10 12:50:45 +01:00
LengthStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
LinearGradientStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
LinearGradientStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
MathDepthStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
MathDepthStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
NumberStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
NumberStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
OpenTypeTaggedStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
OpenTypeTaggedStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
PercentageStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
PositionStyleValue.cpp LibWeb: Properly serialize position/edge style values 2024-12-13 11:35:38 +00:00
PositionStyleValue.h LibWeb: Properly serialize position/edge style values 2024-12-13 11:35:38 +00:00
RadialGradientStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
RadialGradientStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
RatioStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
RectStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
RectStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
ResolutionStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
ScrollbarGutterStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
ShadowStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
ShadowStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
ShorthandStyleValue.cpp LibWeb: Inline CSSStyleValue::to_keyword() 2025-01-28 01:12:45 +01:00
ShorthandStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
StringStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
StyleValueList.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
StyleValueList.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
TimeStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
TransformationStyleValue.cpp LibWeb/CSS: Wrap calc()-resolution data in a struct 2025-01-30 19:31:54 +01:00
TransformationStyleValue.h LibWeb/CSS: Merge ScaleStyleValue into TransformationStyleValue 2025-01-17 10:12:39 +01:00
TransitionStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
TransitionStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
UnresolvedStyleValue.cpp LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
UnresolvedStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00
URLStyleValue.h LibWeb: Add mode flag to CSSStyleValue::to_string() 2024-12-07 08:31:03 +00:00