[Proton] Elastic overscroll does not work if there are no vertical or horizontal scrollbars present on the site
Categories
(Core :: Panning and Zooming, defect, P3)
Tracking
()
People
(Reporter: tbabos, Assigned: hiro)
References
(Blocks 3 open bugs)
Details
(Whiteboard: [mac:ux] [proton-platform])
Attachments
(3 files)
Affected Versions:
Nightly 89.0a1
apz.overscroll.enabled true
Tested On:
MacOS 10.15
Steps to Reproduce:
- Go to a page that does not have vertical scroll, ex: Google.com - and swipe up-down
- Go to a page that does not have horizontal scroll, ex: facebook feed, 9gag, reddit - and swipe left-right
Expected Results:
Swiping in either direction on each of the sites should toggle the overscroll effect.
Actual Result:
The rubberbanding effect is not toggled if there are no scrollbars (horizontal or vertical) on the site.
Please see attached recording for reference: https://drive.google.com/file/d/1FOuDMQmwNP682j_K_ElaG0VoniTye7dm/view?usp=sharing
Works on Safari and Chrome.
Comment 1•1 year ago
|
||
The expectation here seems to be in conflict with bug 1686151, which suggests that overscroll should only be enabled if the page is scrollable along at least one axis.
Comment 2•1 year ago
|
||
I can't confirm what is described in bug 1686151. On Mac, our main reference is Safari, and Safari allows overscrolling for non-scrollable pages.
The other bug references Edge and Chromium Edge, so maybe it's Windows specific behavior? (Though I also can't confirm on my windows device)
Regardless, I consider this bug as valid and think that we should go ahead, at least for MacOS.
Comment 4•1 year ago
|
||
Not a release blocker but we will try to fix this before release. There may be some interactions with swipe navigation for the horizontal direction.
Updated•1 year ago
|
Updated•1 year ago
|
Updated•1 year ago
|
Assignee | ||
Comment 5•1 year ago
•
|
||
I don't see the Chromium Edge behavior on my Windows laptop either. It looks Chromium Edge allows overscrolling on both directions even if the page in question is not scrollable either directions. Presumably we can just allow overscrolling on the root scroller even if it's not scrollable on all platforms.
Note about the interactions with swipe navigation on Mac, overscrolling only happens in the directions where history navigation can not happen, i.e. if there is no forward history, then overscrolling happens on swiping right to left, in other words, overscrolling doesn't happen on swipe left to right if there's backward history. This principal seems to be also effective even if swipe navigation is disabled by the system setting.
Assignee | ||
Updated•1 year ago
|
Assignee | ||
Comment 6•1 year ago
|
||
Assignee | ||
Comment 7•1 year ago
|
||
Depends on D115424
Assignee | ||
Comment 8•1 year ago
|
||
And overscroll the root content scroller even if it's not scrollable.
The conditions when we handoff are;
- Handoff to the root unconditionally if the subframe is not scrollable
with the given pan delta - Handoff to the root if both the subframe and the root are scrollable
with the given pan delta
Depends on D115425
Pushed by hikezoe.birchill@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/9a9ea6e86e2c Factor out ScrollDirectionsForDelta(const ParentLayerPoint&). r=botond https://hg.mozilla.org/integration/autoland/rev/71069fb39ec1 Add AsyncPanZoomController::GetScrollableDirections. r=botond https://hg.mozilla.org/integration/autoland/rev/24335aad5608 Handoff pan gestures to the root content scroller depending on whether child/root frame is scrollable or not. r=botond
Comment 10•1 year ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/9a9ea6e86e2c
https://hg.mozilla.org/mozilla-central/rev/71069fb39ec1
https://hg.mozilla.org/mozilla-central/rev/24335aad5608
Assignee | ||
Updated•1 year ago
|
Comment 11•1 year ago
•
|
||
Verified fixed in the latest Nightly 90.0a1 (2021-05-23) on MacOS 11.2.3, MacOS 11.0.1 and MacOS 10.14.
Updated•1 year ago
|
Comment 12•1 year ago
|
||
Reopening as this was backed out in bug 1712874. We will consider re-landing it after implementing dominant axis scrolling in bug 1713403, although we may want to revisit whether this behaviour is valuable at all (I've heard mixed feedback).
Updated•1 year ago
|
Updated•10 months ago
|
Description
•