mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-09-09 19:16:02 +00:00
LibWeb: Implement the unreachable scrollable overflow
Whenever we end up with a scrollable overflow rect that goes beyond either of its axes (i.e. the rect has a negative X or Y position relative to its parent's absolute padding box position), we need to clip that rect to prevent going into the "unreachable scrollable overflow". This fixes the horizontal scrolling on https://ladybird.org (gets more pronounced if you make the window very narrow).
This commit is contained in:
parent
05ddf5c718
commit
2998049fe9
Notes:
github-actions[bot]
2025-07-11 06:24:49 +00:00
Author: https://github.com/gmta
Commit: 2998049fe9
Pull-request: https://github.com/LadybirdBrowser/ladybird/pull/5384
33 changed files with 140 additions and 98 deletions
|
@ -7,7 +7,7 @@ Viewport <#document> at (0,0) content-size 800x600 children: not-inline
|
|||
|
||||
ViewportPaintable (Viewport<#document>) [0,0 800x600]
|
||||
PaintableWithLines (BlockContainer<HTML>) [0,0 800x16]
|
||||
PaintableBox (Box<BODY>) [8,8 784x0] overflow: [8,-42 100x200]
|
||||
PaintableBox (Box<BODY>) [8,8 784x0] overflow: [8,8 100x150]
|
||||
PaintableWithLines (BlockContainer<DIV>.abspos) [8,-42 100x100] overflow: [8,-42 100x200]
|
||||
PaintableWithLines (BlockContainer<DIV>.green) [8,-42 100x200]
|
||||
|
||||
|
|
|
@ -6,10 +6,10 @@ Viewport <#document> at (0,0) content-size 800x600 children: not-inline
|
|||
BlockContainer <(anonymous)> (not painted) [BFC] children: inline
|
||||
TextNode <#text>
|
||||
|
||||
ViewportPaintable (Viewport<#document>) [0,0 800x600] overflow: [-92,0 892x600]
|
||||
PaintableWithLines (BlockContainer<HTML>) [0,0 800x116] overflow: [-92,0 892x116]
|
||||
PaintableWithLines (BlockContainer<BODY>) [8,8 784x100] overflow: [-92,8 884x100]
|
||||
PaintableWithLines (BlockContainer<DIV>#container-of-flex) [8,8 100x100] overflow: [-92,8 200x100]
|
||||
ViewportPaintable (Viewport<#document>) [0,0 800x600]
|
||||
PaintableWithLines (BlockContainer<HTML>) [0,0 800x116]
|
||||
PaintableWithLines (BlockContainer<BODY>) [8,8 784x100]
|
||||
PaintableWithLines (BlockContainer<DIV>#container-of-flex) [8,8 100x100]
|
||||
PaintableBox (Box<DIV>#flex) [-92,8 200x100]
|
||||
|
||||
SC for Viewport<#document> [0,0 800x600] [children: 1] (z-index: auto)
|
||||
|
|
|
@ -7,7 +7,7 @@ Viewport <#document> at (0,0) content-size 800x600 children: not-inline
|
|||
|
||||
ViewportPaintable (Viewport<#document>) [0,0 800x600]
|
||||
PaintableWithLines (BlockContainer<HTML>) [0,0 800x71.984375]
|
||||
PaintableBox (Box<BODY>) [9,9 782x53.984375] overflow: [10,9 780x52.984375]
|
||||
PaintableBox (Box<BODY>) [9,9 782x53.984375]
|
||||
ImagePaintable (ImageBox<IMG>) [10,9 68.65625x52]
|
||||
|
||||
SC for Viewport<#document> [0,0 800x600] [children: 1] (z-index: auto)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue