Bug
1766386 - Make scroll snap proximity threshold based on the snapport size rather than using a fixed preference value. r=dlrobertson
Now the threshold is `0.3*snapport size`, it's mostly same as WebKit [1].
A difference is WebKit's threshold is based on the scrollport size. Given that
if `scroll-padding` was specified due to a `position: fixed` element or some
such, using snapport size (i.e. offsetted by the scroll-padding) is more
reasonable than using scrollport size.
Note that Chrome uses 1/3 of the snapport size [2]. It will result scroll
positions having fractional parts. Once after we fixed our pixel alignment
issues (e.g., bug
1774315), we will change it in bug
1848574.
[1] https://searchfox.org/wubkat/rev/
d1911bf073cc55fc8ca76bcee8b4783539e43c2e/Source/WebCore/page/scrolling/ScrollSnapOffsetsInfo.cpp#207-208
[2] https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/page/scrolling/snap_coordinator.cc;l=23;drc=
b678d9f0da19257d872a19e6291e3ae4bb2c404f
Differential Revision: https://phabricator.services.mozilla.com/
D185873