Closed Bug 867787 Opened 12 years ago Closed 11 years ago

[browser] can't scroll up/down if the user starts a scroll left/right on a scrollable element

Categories

(Core :: Graphics: Layers, defect)

ARM
Gonk (Firefox OS)
defect
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 898478
blocking-b2g koi+

People

(Reporter: julienw, Unassigned)

References

Details

STR: * go to http://fr.m.wikipedia.org/wiki/Montbrison_%28Loire%29 * scroll down until "Localisation" * try to scroll again (up or down) when the first touch is on the map Expected: * it's easy Actual: * the scroll up does not work if we start by scrolling left/right. The problem is that this can be done without trying. In this case, the scrollable element can't be scrolled up or down, so I think that when the user try to scroll up/down the whole page should scroll. If we try to make it more general, the page should scroll <direction> as soon as the element touched can't be scrolled <direction>, with <direction> is either up, down, left, right. I haven't checked how it works on Android or even on Firefox Desktop with the mousewheel.
I can reproduce this. I'm not sure if it's intentional but once you've panned left/right the scrollable element seems to swallow all the panning input so you can't pan up/down. It's fairly easy to work around for the user, but it is irritating. Not sure where in the platform this bug should live.
Component: Gaia::Browser → General
BrowserElementPanning will lock the scrolling target if any panning takes effect. I think implementing axis lock can improve the user experience, however, we planned not to do so (see bug 824525). Maybe we need to re-evaluate about axis lock on B2G.
BTW, I tried this STR on iOS safari got the same behavior as FirefoxOS.
I come back to my proposed solution : When the user tries to scroll <direction> an element, we should scroll <direction> that element first; then if that element can't be scrolled <direction> (because it's already at the end of the scroll), then try again with the nearest scrollable parent element.
Looks like a Layers bug after all.
Component: General → Graphics: Layers
Product: Boot2Gecko → Core
I can't reproduce this issue with latest gecko. I think the issue was fixed by my patch for bug 898478. Julien, could you try again with latest gecko and see if you still experience this?
Flags: needinfo?(felash)
blocking-b2g: --- → koi?
The main issue is fixed but the kinetic panning does not work when the touchstart is inside the map on the URL in comment 0. :)
Flags: needinfo?(felash)
Julien, let's open a separate bug for the kinetic panning scenario you mention so that we don't have multiple issues in this bug.
blocking-b2g: koi? → koi+
ok, I'll dupe this one then.
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → DUPLICATE
Blocks: 919625
You need to log in before you can comment on or make changes to this bug.