Files
ladybird/Tests/LibWeb/Layout/expected/ul-render.txt
Jelle Raaijmakers 788d5368a7 LibWeb: Improve list item marker positioning and alpha/roman text
This commit is a three-parter that is hard to separate without breaking
marker rendering:

  1. Any marker style that results in a string, except for a literal
     string (e.g. `list-style-type: "@"`), should get the string ". "
     appended. We forgot to do this for the alpha and roman types.

  2. Instead of using the "pixel size rounded up" from a font and adding
     an arbitrary 1 to that, we now use the exact pixel size for as long
     as possible to improve our vertical positioning of markers.

  3. Instead of always adding a "default marker width" to the marker
     content width, we now only do this if we did not have text metrics
     available (i.e. the marker style is not a text type). This greatly
     improves horizontal positioning of text markers.
2025-07-15 19:05:36 +01:00

77 lines
4.4 KiB
Plaintext

Viewport <#document> at (0,0) content-size 800x600 children: not-inline
BlockContainer <html> at (0,0) content-size 800x120 [BFC] children: not-inline
BlockContainer <(anonymous)> at (0,0) content-size 800x0 children: inline
TextNode <#text>
BlockContainer <body> at (8,16) content-size 784x88 children: not-inline
BlockContainer <(anonymous)> at (8,16) content-size 784x0 children: inline
TextNode <#text>
BlockContainer <ul.A> at (48,16) content-size 744x36 children: not-inline
BlockContainer <(anonymous)> at (48,16) content-size 744x0 children: inline
TextNode <#text>
ListItemBox <li> at (48,16) content-size 744x18 children: inline
frag 0 from TextNode start: 0, length: 5, rect: [48,16 47.859375x18] baseline: 13.796875
"Three"
ListItemMarkerBox <(anonymous)> at (24,17) content-size 12x16 children: not-inline
TextNode <#text>
BlockContainer <(anonymous)> at (48,34) content-size 744x0 children: inline
TextNode <#text>
ListItemBox <li> at (48,34) content-size 744x18 children: inline
frag 0 from TextNode start: 0, length: 4, rect: [48,34 41.5x18] baseline: 13.796875
"Four"
ListItemMarkerBox <(anonymous)> at (24,35) content-size 12x16 children: not-inline
TextNode <#text>
BlockContainer <(anonymous)> at (48,52) content-size 744x0 children: inline
TextNode <#text>
BlockContainer <(anonymous)> at (8,68) content-size 784x0 children: inline
TextNode <#text>
BlockContainer <ul.B> at (48,68) content-size 744x36 children: not-inline
BlockContainer <(anonymous)> at (48,68) content-size 744x0 children: inline
TextNode <#text>
ListItemBox <li> at (48,68) content-size 744x18 children: inline
frag 0 from TextNode start: 0, length: 3, rect: [48,68 29.8125x18] baseline: 13.796875
"One"
ListItemMarkerBox <(anonymous)> at (40,69) content-size 4x8 children: not-inline
TextNode <#text>
BlockContainer <(anonymous)> at (48,86) content-size 744x0 children: inline
TextNode <#text>
ListItemBox <li> at (48,86) content-size 744x18 children: inline
frag 0 from TextNode start: 0, length: 3, rect: [48,86 33.875x18] baseline: 13.796875
"Two"
ListItemMarkerBox <(anonymous)> at (40,87) content-size 4x8 children: not-inline
TextNode <#text>
BlockContainer <(anonymous)> at (48,104) content-size 744x0 children: inline
TextNode <#text>
BlockContainer <(anonymous)> at (8,120) content-size 784x0 children: inline
TextNode <#text>
ViewportPaintable (Viewport<#document>) [0,0 800x600]
PaintableWithLines (BlockContainer<HTML>) [0,0 800x120]
PaintableWithLines (BlockContainer(anonymous)) [0,0 800x0]
PaintableWithLines (BlockContainer<BODY>) [8,16 784x88]
PaintableWithLines (BlockContainer(anonymous)) [8,16 784x0]
PaintableWithLines (BlockContainer<UL>.A) [8,16 784x36]
PaintableWithLines (BlockContainer(anonymous)) [48,16 744x0]
PaintableWithLines (ListItemBox<LI>) [48,16 744x18]
MarkerPaintable (ListItemMarkerBox(anonymous)) [24,17 12x16]
TextPaintable (TextNode<#text>)
PaintableWithLines (BlockContainer(anonymous)) [48,34 744x0]
PaintableWithLines (ListItemBox<LI>) [48,34 744x18]
MarkerPaintable (ListItemMarkerBox(anonymous)) [24,35 12x16]
TextPaintable (TextNode<#text>)
PaintableWithLines (BlockContainer(anonymous)) [48,52 744x0]
PaintableWithLines (BlockContainer(anonymous)) [8,68 784x0]
PaintableWithLines (BlockContainer<UL>.B) [8,68 784x36]
PaintableWithLines (BlockContainer(anonymous)) [48,68 744x0]
PaintableWithLines (ListItemBox<LI>) [48,68 744x18]
MarkerPaintable (ListItemMarkerBox(anonymous)) [40,69 4x8]
TextPaintable (TextNode<#text>)
PaintableWithLines (BlockContainer(anonymous)) [48,86 744x0]
PaintableWithLines (ListItemBox<LI>) [48,86 744x18]
MarkerPaintable (ListItemMarkerBox(anonymous)) [40,87 4x8]
TextPaintable (TextNode<#text>)
PaintableWithLines (BlockContainer(anonymous)) [48,104 744x0]
PaintableWithLines (BlockContainer(anonymous)) [8,120 784x0]
SC for Viewport<#document> [0,0 800x600] [children: 1] (z-index: auto)
SC for BlockContainer<HTML> [0,0 800x120] [children: 0] (z-index: auto)