Closed Bug 1221186 Opened 4 years ago Closed 4 years ago

Switching between home screen panels is very difficult

Categories

(Core :: Panning and Zooming, defect)

All
Gonk (Firefox OS)
defect
Not set

Tracking

()

VERIFIED FIXED
mozilla45
blocking-b2g 2.5?
Tracking Status
firefox45 --- fixed
b2g-v2.5 --- verified
b2g-master --- verified

People

(Reporter: cwiiis, Assigned: kats)

References

Details

(Keywords: regression)

Attachments

(1 file)

[Blocking Requested - why for this release]: Difficult to use core feature - switching between apps and pinned pages panels.

This is easiest to test if you revert bug 1177842 first.

It would appear some recent change has broken the horizontal snapping somewhat in home screen on Firefox OS. It is now very difficult to switch between panels, you can frequently and easily hit bug 1216355 and horizontal over-scroll animations are often cut short if you drag past edge of the container.

From the looks of it, it looks as if perhaps scroll-snap is being called because the inner, vertically scrolling container has stopped scrolling even though the outer, horizontally scrolling container is still scrolling. Only a theory, but I highly suspect this was caused by bug 1219391.

kats, any ideas?
Flags: needinfo?(bugmail.mozilla)
Attached patch PatchSplinter Review
Does this fix it for you?
Assignee: nobody → bugmail.mozilla
Flags: needinfo?(bugmail.mozilla)
Attachment #8682703 - Flags: feedback?(chrislord.net)
Comment on attachment 8682703 [details] [diff] [review]
Patch

Yes, I reverted bug 1177842, applied this patch and the one on bug 1216355 and all the problems (that I'm currently aware of) have disappeared :)

This is much nicer, thanks for your work!
Attachment #8682703 - Flags: feedback?(chrislord.net) → feedback+
Comment on attachment 8682703 [details] [diff] [review]
Patch

Review of attachment 8682703 [details] [diff] [review]:
-----------------------------------------------------------------

::: gfx/layers/apz/src/AsyncPanZoomController.cpp
@@ +2694,5 @@
>    // If we don't kick off an overscroll animation, we still need to ask the
> +  // main thread to snap to any nearby snap points, assuming we haven't already
> +  // done so when we started this fling
> +  if (mState != FLING) {
> +    RequestSnap();

IIUC, the situation being addressed here is:

  - A fling is split into two components, handled by two APZCs along the
    same handoff chain.

  - One of the flings ends, and calls SnapBackOverscrolledApcz() on the
    chain.

  - The APZC that's still flinging has the snap request to the fling's
    predicted destination clobbered by a snap request to the current
    scroll offset.

r+ assuming this understanding is correct.
Attachment #8682703 - Flags: review?(botond) → review+
Yup that's correct. Sorry, I should have explained that in more detail.
https://hg.mozilla.org/mozilla-central/rev/1d032ccc5bd4
Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla45
Comment on attachment 8682703 [details] [diff] [review]
Patch

NOTE: Please see https://wiki.mozilla.org/Release_Management/B2G_Landing to better understand the B2G approval process and landings.

[Approval Request Comment]
Bug caused by (feature/regressing bug #): bug 1219391
User impact if declined: Fling snapping doesn't work as well as it should. Very noticeable on the homescreen.
Testing completed: locally, on m-c
Risk to taking this patch (and alternatives if risky): low risk, not much in the way of alternatives
String or UUID changes made by this patch: none
Attachment #8682703 - Flags: approval‑mozilla‑b2g44?
Comment on attachment 8682703 [details] [diff] [review]
Patch

Approved for 2.5

Thanks
Attachment #8682703 - Flags: approval‑mozilla‑b2g44? → approval‑mozilla‑b2g44+
Duplicate of this bug: 1228140
This issue is verified as fixed on Aries and Flame. The finger gesture and force being used to switch between panels is reasonable and I didn't observe bug 1216355.

Verified on:
Device: Aries 2.6
BuildID: 20151218153622
Gaia: d069027f9af6f835ef869f1f01b52339e5a3f423
Gecko: c5cb194cc9cb56d742fb3a7a826f0080b0404edc
Gonk: a19052e4389c3ae2d8fc3e7a74a475401baacc56
Version: 46.0a1 (2.6) 
Firmware Version: D5803_23.1.A.1.28_NCB.ftf
User Agent: Mozilla/5.0 (Mobile; rv:46.0) Gecko/46.0 Firefox/46.0

Device: Flame 2.6
BuildID: 20151218030236
Gaia: 2f093462969d2c5f65dced3908a7abff6b1913e8
Gecko: 66fb852962c0d5f6f5fe0604204da4f5d17763c9
Gonk: 205ac4204bbbb2098a8046444acba551ba5dc75a
Version: 46.0a1 (2.6) 
Firmware Version: v18D
User Agent: Mozilla/5.0 (Mobile; rv:46.0) Gecko/46.0 Firefox/46.0

Device: Flame 2.5
BuildID: 20151218180935
Gaia: eeed1451e0e48b63abe3199e4d6906adc2a762d2
Gecko: 766600655dfb1b67c380b9da4f4b19acb505a858
Gonk: 205ac4204bbbb2098a8046444acba551ba5dc75a
Version: 44.0 (2.5) 
Firmware Version: v18D
User Agent: Mozilla/5.0 (Mobile; rv:44.0) Gecko/44.0 Firefox/44.0

Device: Aries 2.5
BuildID: 20151218184045
Gaia: eeed1451e0e48b63abe3199e4d6906adc2a762d2
Gecko: 766600655dfb1b67c380b9da4f4b19acb505a858
Gonk: a19052e4389c3ae2d8fc3e7a74a475401baacc56
Version: 44.0 (2.5) 
Firmware Version: D5803_23.1.A.1.28_NCB.ftf
User Agent: Mozilla/5.0 (Mobile; rv:44.0) Gecko/44.0 Firefox/44.0
Status: RESOLVED → VERIFIED
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(jmercado)
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(jmercado)
You need to log in before you can comment on or make changes to this bug.