mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 14:47:44 +00:00
LibWeb: Add list-style-type: decimal-leading-zero support
This doesn't exactly do what you would think from its name: It surely adds an extra leading zero to the front of a number, but only if the number is less than 10. CSS is weird sometimes.
This commit is contained in:
parent
64d7a8b7aa
commit
0983cd9243
4 changed files with 11 additions and 0 deletions
|
@ -77,6 +77,7 @@
|
||||||
"crosshair",
|
"crosshair",
|
||||||
"dashed",
|
"dashed",
|
||||||
"decimal",
|
"decimal",
|
||||||
|
"decimal-leading-zero",
|
||||||
"default",
|
"default",
|
||||||
"disc",
|
"disc",
|
||||||
"dotted",
|
"dotted",
|
||||||
|
|
|
@ -576,6 +576,8 @@ Optional<CSS::ListStyleType> StyleProperties::list_style_type() const
|
||||||
return CSS::ListStyleType::Square;
|
return CSS::ListStyleType::Square;
|
||||||
case CSS::ValueID::Decimal:
|
case CSS::ValueID::Decimal:
|
||||||
return CSS::ListStyleType::Decimal;
|
return CSS::ListStyleType::Decimal;
|
||||||
|
case CSS::ValueID::DecimalLeadingZero:
|
||||||
|
return CSS::ListStyleType::DecimalLeadingZero;
|
||||||
default:
|
default:
|
||||||
return {};
|
return {};
|
||||||
}
|
}
|
||||||
|
|
|
@ -159,6 +159,7 @@ enum class ListStyleType {
|
||||||
Circle,
|
Circle,
|
||||||
Square,
|
Square,
|
||||||
Decimal,
|
Decimal,
|
||||||
|
DecimalLeadingZero,
|
||||||
};
|
};
|
||||||
|
|
||||||
enum class Overflow : u8 {
|
enum class Overflow : u8 {
|
||||||
|
|
|
@ -52,6 +52,13 @@ void ListItemMarkerBox::paint(PaintContext& context, PaintPhase phase)
|
||||||
case CSS::ListStyleType::Disc:
|
case CSS::ListStyleType::Disc:
|
||||||
context.painter().fill_ellipse(marker_rect, color);
|
context.painter().fill_ellipse(marker_rect, color);
|
||||||
break;
|
break;
|
||||||
|
case CSS::ListStyleType::DecimalLeadingZero:
|
||||||
|
// This is weird, but in accordance to spec.
|
||||||
|
context.painter().draw_text(
|
||||||
|
enclosing,
|
||||||
|
m_index < 10 ? String::formatted("0{}.", m_index) : String::formatted("{}.", m_index),
|
||||||
|
Gfx::TextAlignment::Center);
|
||||||
|
break;
|
||||||
case CSS::ListStyleType::None:
|
case CSS::ListStyleType::None:
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue