Files
ladybird/Tests/LibWeb/Layout/expected/block-and-inline/block-with-hidden-overflow-after-float-and-margin-left.txt
Aliaksandr Kalenik c9108a2ad5 LibWeb: Only set has_scrollable_overflow for scroll containers
Previously, has_scrollable_overflow was a purely geometric check, true
whenever content extended beyond the padding box regardless of the
overflow property. This caused unnecessary scroll frame allocation for
boxes with `overflow:visible`.

Per CSS Overflow 3, scrollable overflow is only defined for scroll
containers (overflow: auto/hidden/scroll). Gate the flag on
`is_scroll_container()` so that only actual scroll containers get scroll
frames assigned.
2026-01-29 14:59:32 +01:00

41 lines
2.7 KiB
Plaintext

Viewport <#document> at [0,0] [0+0+0 800 0+0+0] [0+0+0 600 0+0+0] [BFC] children: not-inline
BlockContainer <html> at [0,0] [0+0+0 800 0+0+0] [0+0+0 48 0+0+0] [BFC] children: not-inline
BlockContainer <body> at [8,8] [8+0+0 784 0+0+8] [8+0+0 22 0+0+8] children: not-inline
BlockContainer <(anonymous)> at [8,8] [0+0+0 784 0+0+0] [0+0+0 0 0+0+0] children: inline
BlockContainer <div#a> at [8,8] floating [0+0+0 100 0+0+0] [0+0+0 40 0+0+0] [BFC] children: not-inline
TextNode <#text> (not painted)
BlockContainer <div#b> at [109,9] [100+1+0 682 0+1+0] [0+1+0 20 0+1+0] children: not-inline
BlockContainer <(anonymous)> at [109,9] [0+0+0 682 0+0+0] [0+0+0 0 0+0+0] children: inline
TextNode <#text> (not painted)
BlockContainer <div> at [109,9] [0+0+0 682 0+0+0] [0+0+0 20 0+0+0] children: not-inline
BlockContainer <(anonymous)> at [109,9] [0+0+0 682 0+0+0] [0+0+0 0 0+0+0] children: inline
TextNode <#text> (not painted)
BlockContainer <div#c> at [110,10] [0+1+0 680 0+1+0] [0+1+0 18 0+1+0] [BFC] children: inline
frag 0 from TextNode start: 0, length: 3, rect: [110,10 27.15625x18] baseline: 13.796875
"foo"
TextNode <#text> (not painted)
BlockContainer <(anonymous)> at [109,29] [0+0+0 682 0+0+0] [0+0+0 0 0+0+0] children: inline
TextNode <#text> (not painted)
BlockContainer <(anonymous)> at [109,29] [0+0+0 682 0+0+0] [0+0+0 0 0+0+0] children: inline
TextNode <#text> (not painted)
BlockContainer <(anonymous)> at [8,30] [0+0+0 784 0+0+0] [0+0+0 0 0+0+0] children: inline
TextNode <#text> (not painted)
ViewportPaintable (Viewport<#document>) [0,0 800x600]
PaintableWithLines (BlockContainer<HTML>) [0,0 800x48]
PaintableWithLines (BlockContainer<BODY>) [8,8 784x22]
PaintableWithLines (BlockContainer(anonymous)) [8,8 784x0]
PaintableWithLines (BlockContainer<DIV>#a) [8,8 100x40]
PaintableWithLines (BlockContainer<DIV>#b) [108,8 684x22]
PaintableWithLines (BlockContainer(anonymous)) [109,9 682x0]
PaintableWithLines (BlockContainer<DIV>) [109,9 682x20]
PaintableWithLines (BlockContainer(anonymous)) [109,9 682x0]
PaintableWithLines (BlockContainer<DIV>#c) [109,9 682x20]
TextPaintable (TextNode<#text>)
PaintableWithLines (BlockContainer(anonymous)) [109,29 682x0]
PaintableWithLines (BlockContainer(anonymous)) [109,29 682x0]
PaintableWithLines (BlockContainer(anonymous)) [8,30 784x0]
SC for Viewport<#document> [0,0 800x600] [children: 1] (z-index: auto)
SC for BlockContainer<HTML> [0,0 800x48] [children: 0] (z-index: auto)