gecko-dev/layout
David Shin 38a02c1025 Bug 1768921 - Ensure that padding inflated bounds of in-flow children are included in the scrollable element's overflow area. r=dholbert
This means that when users scroll to the inline-end of a scroller, they will
see that the inline-end padding of that scroller is added in.

This is achieved by unioning an additional rect into the scrollable element's
overflow area (Which is an accumulation of the recursive overflow-area
contributions from its subtree).

This additional rect is calculated as follows:
- In-flow children and float's margin boxes are unioned (including zero-size boxes)
- The unioned rect is then inflated by the scrollable element's padding

Note: The bounds of zero-area in-flow-child rects are included in this rect,
in both block- and inline- directions. This is a change in behavior; Divs of
huge inline size and zero block size used to not affect the scrollable overflow,
where divs with huge block size and zero inline size did, as a side effect of now
removed `nsBlockFrame::ConsiderBlockEndEdgeOfChildren`.

Note on WPT change sizing-orthog-(vlr|vrl)-in-htb-(008|020)-ref.xht - the padding existed
to force empty space below `p#sentence-after`. However, this only applies to previous
Firefox. Any combination of browser + default font (+ its default size) causing a scroll
would cause the test to fail as false positive (According to wpt.fyi, this is what happens
with sizing-orthog-(vlr|vrl)-008.xht tests). This change brings Firefox's scroll behaviour
inline with other browsers.

Differential Revision: https://phabricator.services.mozilla.com/D151310
2024-11-13 20:29:13 +00:00
..
base Backed out changeset 4fc43467210b (bug 1914321) for causing failures at PresShell.cpp. CLOSED TREE 2024-11-13 21:24:29 +02:00
build Backed out changeset 816825f333b7 (bug 1909110) for causing bc failures @ browser_bug575561.js. CLOSED TREE 2024-10-29 16:27:31 +02:00
docs Bug 1896210 Part 4 - Address late review comments for Part 2. r=dholbert DONTBUILD 2024-05-20 18:01:16 +00:00
forms Bug 1929338 - convert more mozilla:clamped to std:clamp r=emilio 2024-11-05 18:52:41 +00:00
generic Bug 1768921 - Ensure that padding inflated bounds of in-flow children are included in the scrollable element's overflow area. r=dholbert 2024-11-13 20:29:13 +00:00
inspector Bug 1841456 - Part 1: Use auto instead of top in -moz-top-layer to match overlay. r=emilio,desktop-theme-reviewers 2024-11-09 15:41:25 +00:00
ipc
mathml Bug 1925478 - Simplify nsMathMLContainerFrame::DidReflowChildren. r=fredw 2024-10-18 19:19:48 +00:00
painting Bug 1930628. Don't store a subdoc display item on a frame if we aren't retaining the display list. r=jwatt 2024-11-12 13:40:45 +00:00
printing Bug 1930725 - Clean up a bit nsDeviceContext. r=layout-reviewers,TYLin 2024-11-13 11:04:01 +00:00
reftests Bug 1768921 - Ensure that padding inflated bounds of in-flow children are included in the scrollable element's overflow area. r=dholbert 2024-11-13 20:29:13 +00:00
style Bug 1915021: Part 5 - Add anchor() to calc() as a function. r=jwatt,tlouw 2024-11-13 19:25:43 +00:00
svg Bug 1734476 - Don't run on compositor when content may contain non-scaling-stroke r=emilio 2024-11-07 17:48:55 +00:00
tables Bug 1768921 - Ensure that padding inflated bounds of in-flow children are included in the scrollable element's overflow area. r=dholbert 2024-11-13 20:29:13 +00:00
tools Bug 1919114 Part 2: Add a no-gpu-process test variant for reftests and media mochitests. r=taskgraph-reviewers,gfx-reviewers,jcristau,jmaher,aosmond 2024-10-09 18:06:10 +00:00
xul Bug 1928340 - Add some log for pointer lock; r=smaug 2024-11-06 20:59:35 +00:00
moz.build Bug 1898601 - Remove fake webrtc/gkmedias libs. r=glandium,media-playback-reviewers,webrtc-reviewers,cubeb-reviewers,pehrsons,padenot 2024-05-28 16:14:47 +00:00