diff --git a/Libraries/LibWeb/CSS/CalculatedOr.cpp b/Libraries/LibWeb/CSS/CalculatedOr.cpp index 4ffeb0a439f..470d5996df7 100644 --- a/Libraries/LibWeb/CSS/CalculatedOr.cpp +++ b/Libraries/LibWeb/CSS/CalculatedOr.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2023, Sam Atkins + * Copyright (c) 2023-2025, Sam Atkins * * SPDX-License-Identifier: BSD-2-Clause */ @@ -17,9 +17,9 @@ namespace Web::CSS { -Angle AngleOrCalculated::resolve_calculated(NonnullRefPtr const& calculated, Layout::Node const& layout_node) const +Optional AngleOrCalculated::resolve_calculated(NonnullRefPtr const& calculated, CalculationResolutionContext const& context) const { - return calculated->resolve_angle({ .length_resolution_context = Length::ResolutionContext::for_layout_node(layout_node) }).value(); + return calculated->resolve_angle(context); } NonnullRefPtr AngleOrCalculated::create_style_value() const @@ -27,9 +27,9 @@ NonnullRefPtr AngleOrCalculated::create_style_value() const return AngleStyleValue::create(value()); } -Flex FlexOrCalculated::resolve_calculated(NonnullRefPtr const& calculated, Layout::Node const& layout_node) const +Optional FlexOrCalculated::resolve_calculated(NonnullRefPtr const& calculated, CalculationResolutionContext const& context) const { - return calculated->resolve_flex({ .length_resolution_context = Length::ResolutionContext::for_layout_node(layout_node) }).value(); + return calculated->resolve_flex(context); } NonnullRefPtr FlexOrCalculated::create_style_value() const @@ -37,9 +37,9 @@ NonnullRefPtr FlexOrCalculated::create_style_value() const return FlexStyleValue::create(value()); } -Frequency FrequencyOrCalculated::resolve_calculated(NonnullRefPtr const& calculated, Layout::Node const& layout_node) const +Optional FrequencyOrCalculated::resolve_calculated(NonnullRefPtr const& calculated, CalculationResolutionContext const& context) const { - return calculated->resolve_frequency({ .length_resolution_context = Length::ResolutionContext::for_layout_node(layout_node) }).value(); + return calculated->resolve_frequency(context); } NonnullRefPtr FrequencyOrCalculated::create_style_value() const @@ -47,16 +47,9 @@ NonnullRefPtr FrequencyOrCalculated::create_style_value() const return FrequencyStyleValue::create(value()); } -i64 IntegerOrCalculated::resolve_calculated(NonnullRefPtr const& calculated, Layout::Node const& layout_node) const +Optional IntegerOrCalculated::resolve_calculated(NonnullRefPtr const& calculated, CalculationResolutionContext const& context) const { - return calculated->resolve_integer({ .length_resolution_context = Length::ResolutionContext::for_layout_node(layout_node) }).value(); -} - -i64 IntegerOrCalculated::resolved(Length::ResolutionContext const& context) const -{ - if (is_calculated()) - return calculated()->resolve_integer({ .length_resolution_context = context }).value(); - return value(); + return calculated->resolve_integer(context); } NonnullRefPtr IntegerOrCalculated::create_style_value() const @@ -64,16 +57,9 @@ NonnullRefPtr IntegerOrCalculated::create_style_value() const return IntegerStyleValue::create(value()); } -Length LengthOrCalculated::resolve_calculated(NonnullRefPtr const& calculated, Layout::Node const& layout_node) const +Optional LengthOrCalculated::resolve_calculated(NonnullRefPtr const& calculated, CalculationResolutionContext const& context) const { - return calculated->resolve_length({ .length_resolution_context = Length::ResolutionContext::for_layout_node(layout_node) }).value(); -} - -Length LengthOrCalculated::resolved(Length::ResolutionContext const& context) const -{ - if (is_calculated()) - return calculated()->resolve_length({ .length_resolution_context = context }).value(); - return value(); + return calculated->resolve_length(context); } NonnullRefPtr LengthOrCalculated::create_style_value() const @@ -81,9 +67,9 @@ NonnullRefPtr LengthOrCalculated::create_style_value() const return LengthStyleValue::create(value()); } -double NumberOrCalculated::resolve_calculated(NonnullRefPtr const& calculated, Layout::Node const& layout_node) const +Optional NumberOrCalculated::resolve_calculated(NonnullRefPtr const& calculated, CalculationResolutionContext const& context) const { - return calculated->resolve_number({ .length_resolution_context = Length::ResolutionContext::for_layout_node(layout_node) }).value(); + return calculated->resolve_number(context); } NonnullRefPtr NumberOrCalculated::create_style_value() const @@ -91,9 +77,9 @@ NonnullRefPtr NumberOrCalculated::create_style_value() const return NumberStyleValue::create(value()); } -Percentage PercentageOrCalculated::resolve_calculated(NonnullRefPtr const& calculated, Layout::Node const& layout_node) const +Optional PercentageOrCalculated::resolve_calculated(NonnullRefPtr const& calculated, CalculationResolutionContext const& context) const { - return calculated->resolve_percentage({ .length_resolution_context = Length::ResolutionContext::for_layout_node(layout_node) }).value(); + return calculated->resolve_percentage(context); } NonnullRefPtr PercentageOrCalculated::create_style_value() const @@ -101,16 +87,9 @@ NonnullRefPtr PercentageOrCalculated::create_style_value() const return PercentageStyleValue::create(value()); } -Resolution ResolutionOrCalculated::resolve_calculated(NonnullRefPtr const& calculated, Layout::Node const& layout_node) const +Optional ResolutionOrCalculated::resolve_calculated(NonnullRefPtr const& calculated, CalculationResolutionContext const& context) const { - return calculated->resolve_resolution({ .length_resolution_context = Length::ResolutionContext::for_layout_node(layout_node) }).value(); -} - -Resolution ResolutionOrCalculated::resolved() const -{ - if (is_calculated()) - return calculated()->resolve_resolution({}).value(); - return value(); + return calculated->resolve_resolution(context); } NonnullRefPtr ResolutionOrCalculated::create_style_value() const @@ -118,9 +97,9 @@ NonnullRefPtr ResolutionOrCalculated::create_style_value() const return ResolutionStyleValue::create(value()); } -Time TimeOrCalculated::resolve_calculated(NonnullRefPtr const& calculated, Layout::Node const& layout_node) const +Optional