[wpt-sync] Sync PR 43105 - Reland "[css-scroll-snap-2] Implement snapchanged for user scrolls"
Categories
(Core :: CSS Parsing and Computation, task, P4)
Tracking
()
| Tracking | Status | |
|---|---|---|
| firefox122 | --- | fixed |
People
(Reporter: wpt-sync, Unassigned)
References
()
Details
(Whiteboard: [wptsync downstream])
Sync web-platform-tests PR 43105 into mozilla-central (this bug is closed when the sync is complete).
PR: https://github.com/web-platform-tests/wpt/pull/43105
Details from upstream follow.
David Awogbemila <awogbemila@chromium.org> wrote:
Reland "[css-scroll-snap-2] Implement snapchanged for user scrolls"
This is a reland of commit 5fe9b8c1093df2e89604d785b5acfc8f7323c6c8
Original change's description:
[css-scroll-snap-2] Implement snapchanged for user scrolls
snapchanged[1] (explainer[2]) should fire when a scroller snaps to a
different set of elements than it was previously snapped to.
This pull request[3] will copy the details from the explainer to the
spec.This patch implements snapchanged for user scrolls.
kSnappedToTolerance is increased to 1.0 because there appear to be
some differences between the way that fractional snap offsets are
handled in cc versus in blink. E.g. when snapping to a target,
blink may round a fractional offset down to the nearest integer
while cc may round it up as in this codepen[4] where a keyboard
scroll snap ends at 134px while a wheel scroll ends at
135px when snapping to the lower box.Bug:1439807
[1]https://drafts.csswg.org/css-scroll-snap-2/#snapchanged-and-snapchanging
[2]https://github.com/argyleink/ScrollSnapExplainers/tree/main/
[3]https://github.com/w3c/csswg-drafts/pull/9056
[4]https://codepen.io/awogbemila/pen/JjxEzNmChange-Id: Id9fd24df3df27d3cea202f2efb2ad09b6e6a0fec
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4994876
Reviewed-by: Steve Kobes \<skobes@chromium.org>
Commit-Queue: David Awogbemila \<awogbemila@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1222911}Bug: 1439807
Change-Id: I8c1dd52d5ae55a1eb756d95faf9990bd2de6e5e4Reviewed-on: https://chromium-review.googlesource.com/5022556
WPT-Export-Revision: 69054031db3a83d4f43315d4ccbf8c39bd099f22
| Assignee | ||
Comment 1•2 years ago
|
||
| Assignee | ||
Updated•2 years ago
|
| Assignee | ||
Comment 2•2 years ago
|
||
| Assignee | ||
Comment 3•2 years ago
|
||
CI Results
Ran 9 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI
Total 8 tests and 1 subtests
Status Summary
Firefox
OK : 8
PASS: 2
FAIL: 21[Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview, Gecko-android-em-7.0-x86_64-qr-debug-geckoview, Gecko-android-em-7.0-x86_64-qr-opt-geckoview] 23[Gecko-linux1804-64-qr-debug, Gecko-linux1804-64-qr-opt, Gecko-windows11-32-2009-qr-debug, Gecko-windows11-32-2009-qr-opt, Gecko-windows11-64-2009-qr-debug, Gecko-windows11-64-2009-qr-opt, GitHub]
Chrome
OK : 8
FAIL: 23
Safari
OK : 8
FAIL: 23
Links
Gecko CI (Treeherder)
GitHub PR Head
GitHub PR Base
Details
New Tests That Don't Pass
- /css/css-scroll-snap-2/snapchanged/snapchanged-after-layout-change.tentative.html [wpt.fyi]
- snapchanged fires after snap area is snapped to upon layout change.:
FAIL(Chrome:FAIL, Safari:FAIL) - snapchanged fires after snap area is snapped to upon layout change without scroll.:
FAIL(Chrome:FAIL, Safari:FAIL) - snapchanged fires when container stops snapping:
FAIL(Chrome:FAIL, Safari:FAIL) - snapchanged fires when snap container no longer has snap areas:
FAIL(Chrome:FAIL, Safari:FAIL)
- snapchanged fires after snap area is snapped to upon layout change.:
- /css/css-scroll-snap-2/snapchanged/snapchanged-ensures-dom-order.html [wpt.fyi]
- snapchanged lists snapTargets in DOM order.:
FAIL(Chrome:FAIL, Safari:FAIL) - DOM order change doesn't trigger snapchanged if snapped targets don't change.:
FAIL(Chrome:FAIL, Safari:FAIL)
- snapchanged lists snapTargets in DOM order.:
- /css/css-scroll-snap-2/snapchanged/snapchanged-on-programmatic-root-scroll.tentative.html [wpt.fyi]
- snapchanged event fires after snap target changes via scrollTo:
FAIL(Chrome:FAIL, Safari:FAIL) - snapchanged is not fired if snap target doesn't change on programmatic scroll:
FAIL(Chrome:FAIL, Safari:FAIL)
- snapchanged event fires after snap target changes via scrollTo:
- /css/css-scroll-snap-2/snapchanged/snapchanged-on-programmatic-scroll.tentative.html [wpt.fyi]
- snapchanged event fires after snap target changes via scrollTo:
FAIL(Chrome:FAIL, Safari:FAIL) - snapchanged is not fired if snap target doesn't change on programmatic scroll:
FAIL(Chrome:FAIL, Safari:FAIL)
- snapchanged event fires after snap target changes via scrollTo:
- /css/css-scroll-snap-2/snapchanged/snapchanged-on-user-root-scroll.tentative.html [wpt.fyi]
- snapchanged event fires after snap target changes on touch scroll:
FAIL(Chrome:FAIL, Safari:FAIL) - snapchanged event fires after snap target changes on wheel scroll:
FAIL(Chrome:FAIL, Safari:FAIL) - snapchanged event fires after snap target changes on scrollbar drag:
FAIL[Gecko-linux1804-64-qr-debug,Gecko-linux1804-64-qr-opt,Gecko-windows11-32-2009-qr-debug,Gecko-windows11-32-2009-qr-opt,Gecko-windows11-64-2009-qr-debug,Gecko-windows11-64-2009-qr-opt,GitHub],PASS[Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview,Gecko-android-em-7.0-x86_64-qr-debug-geckoview,Gecko-android-em-7.0-x86_64-qr-opt-geckoview] (Chrome:FAIL, Safari:FAIL) - snapchanged event fires after snap target changes on keydown press:
FAIL(Chrome:FAIL, Safari:FAIL) - snapchanged is not fired if snap target doesn't change on user scroll:
FAIL(Chrome:FAIL, Safari:FAIL)
- snapchanged event fires after snap target changes on touch scroll:
- /css/css-scroll-snap-2/snapchanged/snapchanged-on-user-scroll.tentative.html [wpt.fyi]
- snapchanged event fires after snap target changes on touch scroll:
FAIL(Chrome:FAIL, Safari:FAIL) - snapchanged event fires after snap target changes on wheel scroll:
FAIL(Chrome:FAIL, Safari:FAIL) - snapchanged event fires after snap target changes on scrollbar drag:
FAIL[Gecko-linux1804-64-qr-debug,Gecko-linux1804-64-qr-opt,Gecko-windows11-32-2009-qr-debug,Gecko-windows11-32-2009-qr-opt,Gecko-windows11-64-2009-qr-debug,Gecko-windows11-64-2009-qr-opt,GitHub],PASS[Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview,Gecko-android-em-7.0-x86_64-qr-debug-geckoview,Gecko-android-em-7.0-x86_64-qr-opt-geckoview] (Chrome:FAIL, Safari:FAIL) - snapchanged event fires after snap target changes on keydown press:
FAIL(Chrome:FAIL, Safari:FAIL) - snapchanged is not fired if snap target doesn't change on user scroll:
FAIL(Chrome:FAIL, Safari:FAIL)
- snapchanged event fires after snap target changes on touch scroll:
- /css/css-scroll-snap-2/snapchanged/snapchanged-same-targets-after-layout-changed.html [wpt.fyi]
- snapchanged doesn't fire after layout change if snapped to the same elements:
FAIL(Chrome:FAIL, Safari:FAIL) - snapchanged doesn't fire after snap to the same targets after scroll. elements:
FAIL(Chrome:FAIL, Safari:FAIL)
- snapchanged doesn't fire after layout change if snapped to the same elements:
- /css/css-scroll-snap-2/snapchanged/snapchanged-with-proximity-strictness.tentative.html [wpt.fyi]
- Snapchanged fires when scrolling outside proximity range.:
FAIL(Chrome:FAIL, Safari:FAIL)
- Snapchanged fires when scrolling outside proximity range.:
Comment 6•2 years ago
|
||
| bugherder | ||
https://hg.mozilla.org/mozilla-central/rev/075d313a1a94
https://hg.mozilla.org/mozilla-central/rev/254ed122b5ce
Description
•