LibWeb: Improve resolved style for CSS {min,max}-{width,height}

If the specified value for these properties is "none", we end up storing
it as an "undefined" CSS::Length in the computed values.

We need to convert it back into "none" for getComputedStyle().
This commit is contained in:
Andreas Kling 2021-10-04 18:55:36 +02:00
parent fb98e12f86
commit a31855ae10
Notes: sideshowbarker 2024-07-18 03:03:42 +09:00

View file

@ -452,14 +452,22 @@ RefPtr<StyleValue> ResolvedCSSStyleDeclaration::style_value_for_property(Layout:
case CSS::PropertyID::Width:
return LengthStyleValue::create(layout_node.computed_values().width());
case CSS::PropertyID::MinWidth:
if (layout_node.computed_values().min_width().is_undefined())
return IdentifierStyleValue::create(CSS::ValueID::None);
return LengthStyleValue::create(layout_node.computed_values().min_width());
case CSS::PropertyID::MaxWidth:
if (layout_node.computed_values().max_width().is_undefined())
return IdentifierStyleValue::create(CSS::ValueID::None);
return LengthStyleValue::create(layout_node.computed_values().max_width());
case CSS::PropertyID::Height:
return LengthStyleValue::create(layout_node.computed_values().height());
case CSS::PropertyID::MinHeight:
if (layout_node.computed_values().min_height().is_undefined())
return IdentifierStyleValue::create(CSS::ValueID::None);
return LengthStyleValue::create(layout_node.computed_values().min_height());
case CSS::PropertyID::MaxHeight:
if (layout_node.computed_values().max_height().is_undefined())
return IdentifierStyleValue::create(CSS::ValueID::None);
return LengthStyleValue::create(layout_node.computed_values().max_height());
case CSS::PropertyID::MarginTop:
return LengthStyleValue::create(layout_node.computed_values().margin().top);