diff --git a/Userland/Libraries/LibWeb/CSS/Parser/Parser.cpp b/Userland/Libraries/LibWeb/CSS/Parser/Parser.cpp index ac82b48974..1534364ebf 100644 --- a/Userland/Libraries/LibWeb/CSS/Parser/Parser.cpp +++ b/Userland/Libraries/LibWeb/CSS/Parser/Parser.cpp @@ -4188,7 +4188,7 @@ OwnPtr Parser::parse_calc_pro { // Note: The default value is not used or passed around. auto product_with_operator = make( - CalculatedStyleValue::CalcProductPartWithOperator::Multiply, + CalculatedStyleValue::ProductOperation::Multiply, CalculatedStyleValue::CalcNumberValue(0)); tokens.skip_whitespace(); @@ -4201,7 +4201,7 @@ OwnPtr Parser::parse_calc_pro if (op == "*"sv) { tokens.next_token(); tokens.skip_whitespace(); - product_with_operator->op = CalculatedStyleValue::CalcProductPartWithOperator::Multiply; + product_with_operator->op = CalculatedStyleValue::ProductOperation::Multiply; auto parsed_calc_value = parse_calc_value(tokens); if (!parsed_calc_value.has_value()) return nullptr; @@ -4210,7 +4210,7 @@ OwnPtr Parser::parse_calc_pro } else if (op == "/"sv) { tokens.next_token(); tokens.skip_whitespace(); - product_with_operator->op = CalculatedStyleValue::CalcProductPartWithOperator::Divide; + product_with_operator->op = CalculatedStyleValue::ProductOperation::Divide; auto parsed_calc_number_value = parse_calc_number_value(tokens); if (!parsed_calc_number_value.has_value()) return nullptr; @@ -4226,7 +4226,7 @@ OwnPtr Parser::parse_ca { // Note: The default value is not used or passed around. auto number_product_with_operator = make( - CalculatedStyleValue::CalcNumberProductPartWithOperator::Multiply, + CalculatedStyleValue::ProductOperation::Multiply, CalculatedStyleValue::CalcNumberValue(0)); tokens.skip_whitespace(); @@ -4239,11 +4239,11 @@ OwnPtr Parser::parse_ca if (op == "*"sv) { tokens.next_token(); tokens.skip_whitespace(); - number_product_with_operator->op = CalculatedStyleValue::CalcNumberProductPartWithOperator::Multiply; + number_product_with_operator->op = CalculatedStyleValue::ProductOperation::Multiply; } else if (op == "/"sv) { tokens.next_token(); tokens.skip_whitespace(); - number_product_with_operator->op = CalculatedStyleValue::CalcNumberProductPartWithOperator::Divide; + number_product_with_operator->op = CalculatedStyleValue::ProductOperation::Divide; } else { return nullptr; } @@ -4287,12 +4287,12 @@ OwnPtr Parser::parse_calc_n auto& token = tokens.next_token(); tokens.skip_whitespace(); - CalculatedStyleValue::CalcNumberSumPartWithOperator::Operation op; + CalculatedStyleValue::SumOperation op; auto delim = token.token().delim(); if (delim == "+"sv) - op = CalculatedStyleValue::CalcNumberSumPartWithOperator::Operation::Add; + op = CalculatedStyleValue::SumOperation::Add; else if (delim == "-"sv) - op = CalculatedStyleValue::CalcNumberSumPartWithOperator::Operation::Subtract; + op = CalculatedStyleValue::SumOperation::Subtract; else return nullptr; @@ -4373,12 +4373,12 @@ OwnPtr Parser::parse_calc_sum_par auto& token = tokens.next_token(); tokens.skip_whitespace(); - CalculatedStyleValue::CalcSumPartWithOperator::Operation op; + CalculatedStyleValue::SumOperation op; auto delim = token.token().delim(); if (delim == "+"sv) - op = CalculatedStyleValue::CalcSumPartWithOperator::Operation::Add; + op = CalculatedStyleValue::SumOperation::Add; else if (delim == "-"sv) - op = CalculatedStyleValue::CalcSumPartWithOperator::Operation::Subtract; + op = CalculatedStyleValue::SumOperation::Subtract; else return nullptr; diff --git a/Userland/Libraries/LibWeb/CSS/StyleValue.cpp b/Userland/Libraries/LibWeb/CSS/StyleValue.cpp index 9bd8639338..dad0f97289 100644 --- a/Userland/Libraries/LibWeb/CSS/StyleValue.cpp +++ b/Userland/Libraries/LibWeb/CSS/StyleValue.cpp @@ -309,9 +309,9 @@ static float resolve_calc_number_product(NonnullOwnPtrzero_or_more_additional_calc_number_values) { auto additional_value = resolve_calc_number_value(additional_number_value.value); - if (additional_number_value.op == CalculatedStyleValue::CalcNumberProductPartWithOperator::Multiply) + if (additional_number_value.op == CalculatedStyleValue::ProductOperation::Multiply) value *= additional_value; - else if (additional_number_value.op == CalculatedStyleValue::CalcNumberProductPartWithOperator::Divide) + else if (additional_number_value.op == CalculatedStyleValue::ProductOperation::Divide) value /= additional_value; else VERIFY_NOT_REACHED(); @@ -326,9 +326,9 @@ static float resolve_calc_number_sum(NonnullOwnPtrzero_or_more_additional_calc_number_products) { auto additional_value = resolve_calc_number_product(additional_product.calc_number_product); - if (additional_product.op == CSS::CalculatedStyleValue::CalcNumberSumPartWithOperator::Add) + if (additional_product.op == CSS::CalculatedStyleValue::SumOperation::Add) value += additional_value; - else if (additional_product.op == CSS::CalculatedStyleValue::CalcNumberSumPartWithOperator::Subtract) + else if (additional_product.op == CSS::CalculatedStyleValue::SumOperation::Subtract) value -= additional_value; else VERIFY_NOT_REACHED(); @@ -353,13 +353,13 @@ static float resolve_calc_product(NonnullOwnPtrzero_or_more_additional_calc_values) { additional_value.value.visit( [&](CalculatedStyleValue::CalcValue const& calc_value) { - if (additional_value.op != CalculatedStyleValue::CalcProductPartWithOperator::Multiply) + if (additional_value.op != CalculatedStyleValue::ProductOperation::Multiply) VERIFY_NOT_REACHED(); auto resolved_value = resolve_calc_value(calc_value, layout_node); value *= resolved_value; }, [&](CalculatedStyleValue::CalcNumberValue const& calc_number_value) { - if (additional_value.op != CalculatedStyleValue::CalcProductPartWithOperator::Divide) + if (additional_value.op != CalculatedStyleValue::ProductOperation::Divide) VERIFY_NOT_REACHED(); auto resolved_calc_number_value = resolve_calc_number_value(calc_number_value); value /= resolved_calc_number_value; @@ -375,9 +375,9 @@ static float resolve_calc_sum(NonnullOwnPtr const for (auto& additional_product : calc_sum->zero_or_more_additional_calc_products) { auto additional_value = resolve_calc_product(additional_product.calc_product, layout_node); - if (additional_product.op == CalculatedStyleValue::CalcSumPartWithOperator::Operation::Add) + if (additional_product.op == CalculatedStyleValue::SumOperation::Add) value += additional_value; - else if (additional_product.op == CalculatedStyleValue::CalcSumPartWithOperator::Operation::Subtract) + else if (additional_product.op == CalculatedStyleValue::SumOperation::Subtract) value -= additional_value; else VERIFY_NOT_REACHED(); diff --git a/Userland/Libraries/LibWeb/CSS/StyleValue.h b/Userland/Libraries/LibWeb/CSS/StyleValue.h index ffe91f78c6..22cdbed287 100644 --- a/Userland/Libraries/LibWeb/CSS/StyleValue.h +++ b/Userland/Libraries/LibWeb/CSS/StyleValue.h @@ -666,6 +666,15 @@ public: using CalcNumberValue = Variant>; using CalcValue = Variant>; + enum class SumOperation { + Add, + Subtract, + }; + enum class ProductOperation { + Multiply, + Divide, + }; + // This represents that: https://www.w3.org/TR/css-values-3/#calc-syntax struct CalcSum { CalcSum(NonnullOwnPtr first_calc_product, NonnullOwnPtrVector additional) @@ -691,24 +700,16 @@ public: }; struct CalcSumPartWithOperator { - enum Operation { - Add, - Subtract, - }; - - CalcSumPartWithOperator(Operation op, NonnullOwnPtr calc_product) + CalcSumPartWithOperator(SumOperation op, NonnullOwnPtr calc_product) : op(op) , calc_product(move(calc_product)) {}; - Operation op; + SumOperation op; NonnullOwnPtr calc_product; }; struct CalcProductPartWithOperator { - enum { - Multiply, - Divide, - } op; + ProductOperation op; Variant value; }; @@ -718,24 +719,16 @@ public: }; struct CalcNumberProductPartWithOperator { - enum { - Multiply, - Divide, - } op; + ProductOperation op; CalcNumberValue value; }; struct CalcNumberSumPartWithOperator { - enum Operation { - Add, - Subtract, - }; - - CalcNumberSumPartWithOperator(Operation op, NonnullOwnPtr calc_number_product) + CalcNumberSumPartWithOperator(SumOperation op, NonnullOwnPtr calc_number_product) : op(op) , calc_number_product(move(calc_number_product)) {}; - Operation op; + SumOperation op; NonnullOwnPtr calc_number_product; };