[wpt-sync] Sync PR 39368 - Handle scrollends on nop scrolls consistently
Categories
(Core :: DOM: Core & HTML, task, P4)
Tracking
()
| Tracking | Status | |
|---|---|---|
| firefox114 | --- | fixed |
People
(Reporter: wpt-sync, Unassigned)
References
()
Details
(Whiteboard: [wptsync downstream])
Sync web-platform-tests PR 39368 into mozilla-central (this bug is closed when the sync is complete).
PR: https://github.com/web-platform-tests/wpt/pull/39368
Details from upstream follow.
David Awogbemila <awogbemila@chromium.org> wrote:
Handle scrollends on nop scrolls consistently
Nop/Zero-delta scrolls should not trigger scrollend events as no
scrolling happens.One case in which a nop scroll triggers a scrollend event is during a
keyboard scroll which is handled on the main thread. This patch
addresses this case by extending the enum
ScrollableArea::ScrollCompletionMode with kZeroDelta which we can think
of as a special case of kFinished where we do not want to fire a
scrollend event.For composited scrolls, when an inner scroller can't consume the delta,
the scroll will bubble up to the document which, from
crrev.com/c/4362538 onward, will only fire scrollend if there is a
non-zero delta consumed by the layoutviewport. So, this patch only
needs to address the non-composited case (which is just keyboard
scrolls).Bug: 1400698 Change-Id: I66415f82b61e0addf1daea65e6b9b55875b23eb8
Change-Id: I66415f82b61e0addf1daea65e6b9b55875b23eb8
Reviewed-on: https://chromium-review.googlesource.com/4394364
WPT-Export-Revision: 03ae93fa856476a28b754dad7b78849423ba019d
| Assignee | ||
Updated•3 years ago
|
| Assignee | ||
Comment 1•3 years ago
|
||
| Assignee | ||
Comment 2•3 years ago
|
||
CI Results
Ran 9 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI
Total 1 tests and 4 subtests
Status Summary
Firefox
OK : 1
FAIL : 4
ERROR : 1
Chrome
OK : 1
PASS : 1
FAIL : 3
Safari
PASS : 3
TIMEOUT: 1
ERROR : 1
Links
Gecko CI (Treeherder)
GitHub PR Head
GitHub PR Base
Details
New Tests That Don't Pass
- /dom/events/scrolling/scrollend-event-not-fired-on-no-scroll.html [wpt.fyi]:
ERROR[GitHub],OK[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,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] (Chrome:OK, Safari:ERROR)- No scroll via wheel on div shouldn't fire scrollend.:
FAIL(Chrome:PASS, Safari:PASS) - No scroll via keys on div shouldn't fire scrollend.:
FAIL(Chrome:FAIL, Safari:PASS) - No scroll via wheel on document shouldn't fire scrollend.:
FAIL(Chrome:FAIL, Safari:PASS) - No scroll via keys on document shouldn't fire scrollend.:
FAIL(Chrome:FAIL, Safari:TIMEOUT)
- No scroll via wheel on div shouldn't fire scrollend.:
Comment 4•3 years ago
|
||
| bugherder | ||
https://hg.mozilla.org/mozilla-central/rev/7b8da59eab79
https://hg.mozilla.org/mozilla-central/rev/b905479b8fc2
Description
•