mirror of
https://github.com/LadybirdBrowser/ladybird
synced 2026-04-26 17:55:07 +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.
23 lines
1.4 KiB
Plaintext
23 lines
1.4 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 [1,1] [0+1+0 798 0+1+0] [0+1+0 0 0+1+0] [BFC] children: not-inline
|
|
BlockContainer <body> at [10,10] positioned [8+1+0 102 0+1+8] [8+1+0 58 0+1+8] [BFC] children: not-inline
|
|
BlockContainer <div#container> at [11,11] [0+1+0 100 0+1+0] [0+1+0 56 0+1+0] children: not-inline
|
|
BlockContainer <div#child> at [72,12] [0+1+60 50 60+1+-72] [0+1+0 54 0+1+0] children: inline
|
|
frag 0 from TextNode start: 0, length: 4, rect: [72,12 28.40625x18] baseline: 13.796875
|
|
"well"
|
|
frag 1 from TextNode start: 5, length: 5, rect: [72,30 36.84375x18] baseline: 13.796875
|
|
"hello"
|
|
frag 2 from TextNode start: 11, length: 7, rect: [72,48 55.359375x18] baseline: 13.796875
|
|
"friends"
|
|
TextNode <#text> (not painted)
|
|
|
|
ViewportPaintable (Viewport<#document>) [0,0 800x600]
|
|
PaintableWithLines (BlockContainer<HTML>) [0,0 800x2]
|
|
PaintableWithLines (BlockContainer<BODY>) [9,9 104x60]
|
|
PaintableWithLines (BlockContainer<DIV>#container) [10,10 102x58]
|
|
PaintableWithLines (BlockContainer<DIV>#child) [11,11 172x56]
|
|
TextPaintable (TextNode<#text>)
|
|
|
|
SC for Viewport<#document> [0,0 800x600] [children: 1] (z-index: auto)
|
|
SC for BlockContainer<HTML> [1,1 798x0] [children: 0] (z-index: auto)
|