mirror of
https://github.com/LadybirdBrowser/ladybird
synced 2026-04-28 10:37:17 +02:00
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.
33 lines
2.1 KiB
Plaintext
33 lines
2.1 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 136 0+0+0] [BFC] children: not-inline
|
|
BlockContainer <body> at [8,8] [8+0+0 784 0+0+8] [8+0+0 120 0+0+8] children: not-inline
|
|
Box <div.grid> at [13,13] [0+5+0 50 0+5+724] [0+5+0 50 0+5+0] [GFC] children: not-inline
|
|
BlockContainer <div#a> at [13,13] [0+0+0 0 0+0+0] [0+0+0 25 0+0+0] [BFC] children: inline
|
|
frag 0 from TextNode start: 0, length: 10, rect: [13,13 115.625x18] baseline: 13.796875
|
|
"XXXXXXXXXX"
|
|
TextNode <#text> (not painted)
|
|
BlockContainer <div#b> at [13,38] [0+0+0 0 0+0+0] [0+0+0 25 0+0+0] [BFC] children: not-inline
|
|
BlockContainer <(anonymous)> at [8,68] [0+0+0 784 0+0+0] [0+0+0 0 0+0+0] children: inline
|
|
TextNode <#text> (not painted)
|
|
Box <div.grid> at [13,73] [0+5+0 50 0+5+724] [0+5+0 50 0+5+0] [GFC] children: not-inline
|
|
BlockContainer <div#a> at [18,73] [5+0+0 0 0+0+5] [0+0+0 25 0+0+0] [BFC] children: not-inline
|
|
BlockContainer <div#b> at [13,98] [0+0+0 10 0+0+0] [0+0+0 25 0+0+0] [BFC] children: not-inline
|
|
BlockContainer <(anonymous)> at [8,128] [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 800x136]
|
|
PaintableWithLines (BlockContainer<BODY>) [8,8 784x120]
|
|
PaintableBox (Box<DIV>.grid) [8,8 60x60]
|
|
PaintableWithLines (BlockContainer<DIV>#a) [13,13 0x25]
|
|
TextPaintable (TextNode<#text>)
|
|
PaintableWithLines (BlockContainer<DIV>#b) [13,38 0x25]
|
|
PaintableWithLines (BlockContainer(anonymous)) [8,68 784x0]
|
|
PaintableBox (Box<DIV>.grid) [8,68 60x60]
|
|
PaintableWithLines (BlockContainer<DIV>#a) [18,73 0x25]
|
|
PaintableWithLines (BlockContainer<DIV>#b) [13,98 10x25]
|
|
PaintableWithLines (BlockContainer(anonymous)) [8,128 784x0]
|
|
|
|
SC for Viewport<#document> [0,0 800x600] [children: 1] (z-index: auto)
|
|
SC for BlockContainer<HTML> [0,0 800x136] [children: 0] (z-index: auto)
|