mirror of
https://github.com/LadybirdBrowser/ladybird
synced 2026-04-27 02:05: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.
84 lines
5.4 KiB
Plaintext
84 lines
5.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 [0,0] [0+0+0 800 0+0+0] [0+0+0 118 0+0+0] [BFC] children: not-inline
|
|
BlockContainer <body> at [0,0] [0+0+0 800 0+0+0] [0+0+0 118 0+0+0] children: not-inline
|
|
Box <div.container> at [1,1] flex-container(row) [0+1+0 500 0+1+298] [0+1+0 20 0+1+0] [FFC] children: not-inline
|
|
BlockContainer <(anonymous)> (not painted) [BFC] children: inline
|
|
TextNode <#text> (not painted)
|
|
BlockContainer <div.item> at [2,2] flex-item [0+1+0 50 0+1+0] [0+1+0 18 0+1+0] [BFC] children: inline
|
|
frag 0 from TextNode start: 0, length: 24, rect: [2,2 222.6875x18] baseline: 13.796875
|
|
"LongWordThatExceedsWidth"
|
|
TextNode <#text> (not painted)
|
|
BlockContainer <(anonymous)> (not painted) [BFC] children: inline
|
|
TextNode <#text> (not painted)
|
|
BlockContainer <div.item> at [54,2] flex-item [0+1+0 100 0+1+0] [0+1+0 18 0+1+0] [BFC] children: inline
|
|
frag 0 from TextNode start: 0, length: 5, rect: [54,2 47.3125x18] baseline: 13.796875
|
|
"Short"
|
|
TextNode <#text> (not painted)
|
|
BlockContainer <(anonymous)> (not painted) [BFC] children: inline
|
|
TextNode <#text> (not painted)
|
|
BlockContainer <(anonymous)> at [0,22] [0+0+0 800 0+0+0] [0+0+0 0 0+0+0] children: inline
|
|
TextNode <#text> (not painted)
|
|
Box <div.container> at [1,33] flex-container(row) [0+1+0 500 0+1+298] [10+1+0 52 0+1+0] [FFC] children: not-inline
|
|
BlockContainer <(anonymous)> (not painted) [BFC] children: inline
|
|
TextNode <#text> (not painted)
|
|
BlockContainer <div.item> at [2,34] flex-item [0+1+0 150 0+1+0] [0+1+0 50 0+1+0] [BFC] children: not-inline
|
|
BlockContainer <(anonymous)> at [2,34] [0+0+0 150 0+0+0] [0+0+0 0 0+0+0] children: inline
|
|
TextNode <#text> (not painted)
|
|
BlockContainer <div> at [2,34] [0+0+0 150 0+0+0] [0+0+0 30 0+0+0] children: not-inline
|
|
BlockContainer <(anonymous)> at [2,64] [0+0+0 150 0+0+0] [0+0+0 0 0+0+0] children: inline
|
|
TextNode <#text> (not painted)
|
|
BlockContainer <(anonymous)> (not painted) [BFC] children: inline
|
|
TextNode <#text> (not painted)
|
|
BlockContainer <div.item> at [154,34] flex-item [0+1+0 100 0+1+0] [0+1+0 50 0+1+0] [BFC] children: inline
|
|
frag 0 from TextNode start: 0, length: 1, rect: [154,34 9.34375x18] baseline: 13.796875
|
|
"B"
|
|
TextNode <#text> (not painted)
|
|
BlockContainer <(anonymous)> (not painted) [BFC] children: inline
|
|
TextNode <#text> (not painted)
|
|
BlockContainer <(anonymous)> at [0,86] [0+0+0 800 0+0+0] [0+0+0 0 0+0+0] children: inline
|
|
TextNode <#text> (not painted)
|
|
Box <div.container> at [1,97] flex-container(row) [0+1+0 500 0+1+298] [10+1+0 20 0+1+0] [FFC] children: not-inline
|
|
BlockContainer <(anonymous)> (not painted) [BFC] children: inline
|
|
TextNode <#text> (not painted)
|
|
BlockContainer <div.item> at [2,98] flex-item [0+1+0 165.328125 0+1+0] [0+1+0 18 0+1+0] [BFC] children: inline
|
|
frag 0 from TextNode start: 0, length: 6, rect: [2,98 49.546875x18] baseline: 13.796875
|
|
"Flex 1"
|
|
TextNode <#text> (not painted)
|
|
BlockContainer <(anonymous)> (not painted) [BFC] children: inline
|
|
TextNode <#text> (not painted)
|
|
BlockContainer <div.item> at [169.328125,98] flex-item [0+1+0 330.671875 0+1+0] [0+1+0 18 0+1+0] [BFC] children: inline
|
|
frag 0 from TextNode start: 0, length: 6, rect: [169.328125,98 52.015625x18] baseline: 13.796875
|
|
"Flex 2"
|
|
TextNode <#text> (not painted)
|
|
BlockContainer <(anonymous)> (not painted) [BFC] children: inline
|
|
TextNode <#text> (not painted)
|
|
BlockContainer <(anonymous)> at [0,118] [0+0+0 800 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 800x118]
|
|
PaintableWithLines (BlockContainer<BODY>) [0,0 800x118]
|
|
PaintableBox (Box<DIV>.container) [0,0 502x22]
|
|
PaintableWithLines (BlockContainer<DIV>.item) [1,1 52x20]
|
|
TextPaintable (TextNode<#text>)
|
|
PaintableWithLines (BlockContainer<DIV>.item) [53,1 102x20]
|
|
TextPaintable (TextNode<#text>)
|
|
PaintableWithLines (BlockContainer(anonymous)) [0,22 800x0]
|
|
PaintableBox (Box<DIV>.container) [0,32 502x54]
|
|
PaintableWithLines (BlockContainer<DIV>.item) [1,33 152x52]
|
|
PaintableWithLines (BlockContainer(anonymous)) [2,34 150x0]
|
|
PaintableWithLines (BlockContainer<DIV>) [2,34 150x30]
|
|
PaintableWithLines (BlockContainer(anonymous)) [2,64 150x0]
|
|
PaintableWithLines (BlockContainer<DIV>.item) [153,33 102x52]
|
|
TextPaintable (TextNode<#text>)
|
|
PaintableWithLines (BlockContainer(anonymous)) [0,86 800x0]
|
|
PaintableBox (Box<DIV>.container) [0,96 502x22]
|
|
PaintableWithLines (BlockContainer<DIV>.item) [1,97 167.328125x20]
|
|
TextPaintable (TextNode<#text>)
|
|
PaintableWithLines (BlockContainer<DIV>.item) [168.328125,97 332.671875x20]
|
|
TextPaintable (TextNode<#text>)
|
|
PaintableWithLines (BlockContainer(anonymous)) [0,118 800x0]
|
|
|
|
SC for Viewport<#document> [0,0 800x600] [children: 1] (z-index: auto)
|
|
SC for BlockContainer<HTML> [0,0 800x118] [children: 0] (z-index: auto)
|