Closed Bug 956319 Opened 10 years ago Closed 10 years ago

[Homescreen] Short, high velocity swipes should move to next view

Categories

(Firefox OS Graveyard :: Gaia::Homescreen, defect)

x86
macOS
defect
Not set
normal

Tracking

(blocking-b2g:1.3+, b2g-v1.3 fixed, b2g-v1.3T fixed, b2g-v1.4 fixed)

VERIFIED FIXED
1.4 S2 (28feb)
blocking-b2g 1.3+
Tracking Status
b2g-v1.3 --- fixed
b2g-v1.3T --- fixed
b2g-v1.4 --- fixed

People

(Reporter: janjongboom, Assigned: crdlc)

Details

(Keywords: regression, Whiteboard: [systemsfe])

Attachments

(2 files, 1 obsolete file)

I was observing a user using my FFOS device last week; and this user was making high velocity swipes over short distance, instead of swipes over a long distance. His swipes didn't make the threshold for the next view.

I think the threshold should be dependent on the velocity of the swipe.
Attached file video
Attachment #8374707 - Flags: feedback?(anygregor)
I too have noticed this regression between 1.2 and 1.3.

I am constantly having to re-swipe because me first swipe wasn't over a long enough distance. This makes the device feel stubborn and unresponsive. I feel this is important as it's probably one of the first interactions many users will have with FXOS.

I'm feeling as though this must have been noticed by visual/ux.
Please observe attached video.
Lets do a sanity check from the UX team if we should fix this.
Flags: needinfo?(firefoxos-ux-bugzilla)
Flagging Casey on this, though Rob may also be able to help. We've also seen this in user testing previously.
Flags: needinfo?(rmacdonald)
Flags: needinfo?(kyee)
Flags: needinfo?(firefoxos-ux-bugzilla)
Thanks for pointing this out and I agree that it's an issue. Casey, any ideas who would define this threshold? We should consider this for Gallery and similar apps as well.
Flags: needinfo?(rmacdonald)
Ping? Can we get some movement here?
blocking-b2g: --- → 1.4?
According to comment 2 this is a regression.
Keywords: qawanted
QA Contact: rpribble
Hi, not entirely sure what was needed on this one so I performed the QAWanted tag. If anything else is needed, just let me know.

Reproduces on v1.3. Short, high velocity swipes make the homescreen stutter, do not fully swipe user's view to the next homescreen page.
Reproduces on v1.2. Short, high velocity swipes make the homescreen stutter, do not fully swipe user's view to the next homescreen page.
Unable to reproduce v1.1, functions correctly. Short, high velocity swipes fully transition the user's view to the next homescreen page.

Environmental Variables:
Device: buri v1.3 moz ril
BuildID: 20140224004003
Gaia: 5084b832f3b536f60ccdb38c14fd6162e5bfbac0
Gecko: 61875a0aa4cf
Version: 28.0
Firmware Version: v1.2-device.cfg

Environmental Variables:
Device: buri v1.2 moz
BuildID: 20140220004002
Gaia: 539a25e1887b902b8b25038c547048e691bd97f6
Gecko: 2ea6a65eea23
Version: 26.0
Firmware Version: v1.2-device.cfg

Environmental Variables:
Device: buri v1.1 moz ril
BuildID: 20140218041202
Gaia: c5cb252e5d1aa45d14f3a2ea182e73e2271e4496
Gecko: d7f2811943d1
Version: 18.0
Firmware Version: v1.2-device.cfg
Keywords: qawanted
UX - Feel free to weigh in here on whether you think this is a blocker for 1.3 or not.
Keywords: regression
Flags: needinfo?(fdjabri)
If this is a regression, then it should be a blocker for 1.3. As Wilson mentioned, this is a key interaction, one which users will perform constantly.
Flags: needinfo?(fdjabri)
Dale, can you take a look here? Lets fix it for 1.4 and decide about an uplift once we know whats going on.
Assignee: nobody → dale
blocking-b2g: 1.4? → 1.4+
Whiteboard: [systemsfe]
Actually, let's push this into the 1.3? bucket given comment 12
blocking-b2g: 1.4+ → 1.3?
Flags: needinfo?(kyee)
Thank you, Jason. This should definitely block 1.3.
No idea what is going on here.   I believe Vivien should be the one to flag for this issue since he is most familiar with the home screen.
I am having a hard time noticing any specific regression between 1.2 and 1.3, its quite a naunced interaction and its hard without having 2 of the same devices with different versions to compare at the same time. But in both cases I am seeing a lot of instances of it being a bit too sticky

Will take a look, definitely want to hear from vivien, I expect this wont be a trivial fix
Flags: needinfo?(21)
(In reply to Dale Harvey (:daleharvey) from comment #17)
> I am having a hard time noticing any specific regression between 1.2 and
> 1.3, its quite a naunced interaction and its hard without having 2 of the
> same devices with different versions to compare at the same time. But in
> both cases I am seeing a lot of instances of it being a bit too sticky
> 
> Will take a look, definitely want to hear from vivien, I expect this wont be
> a trivial fix

comment 10 indicates this reproduces on 1.2 actually, but it works fine on 1.1.
My buri is bricked and geeksphone arent building v1.1 properly (http://downloads.geeksphone.com/keon/v1-train/latest_v1-train.html) 

Will do a build and attempt to revive hamachi at the same time
(In reply to Dale Harvey (:daleharvey) from comment #17)
> I am having a hard time noticing any specific regression between 1.2 and
> 1.3, its quite a naunced interaction and its hard without having 2 of the
> same devices with different versions to compare at the same time. But in
> both cases I am seeing a lot of instances of it being a bit too sticky
> 
> Will take a look, definitely want to hear from vivien, I expect this wont be
> a trivial fix

Sounds a good candidate for Christian.

One thing though is that there is a big jank (due to graphics) when swipping between 2 panels. Those can results into the velocity beeing miscalculated (and this is not easy to fix).

In the best case this is just a Gaia issue. In the worst case this is some platform issue from the move from b2g_18 to b2g_26.

Please notice too that I would like to change the homescreen panning heuristic for 1.5. Instead of having multiple divs that are translated by JS following the fingers, we could move to a big horizontal div that is using APZC and css scroll snapping (bug 945584) to snap to the correct position.

There may even be some platform supports for flinging (needinfo? Miranda to have the bug number if any.). So that's basically what we should use for the homescreen and gallery at the end, as it will provide a performant and consistent panning experience for those apps.


Christian, can you try to install a 1.1 version of the homescreen on your device and see if you can reproduce the issue ? If yes, it may indicate that this is a Gecko issue from the big jump between 1.1 and 1.2. And in this case it may be overkill to target that for 1.3 and instead bet on the apzc + css snapping future homescreen.
Flags: needinfo?(miranda.j.emery)
Flags: needinfo?(crdlc)
Flags: needinfo?(21)
I managed to revive hamachi, I flash a pvt build of 1.1 and it was broken, homescreen swipes started shaking and phone eventually crashed, 1.2 / 1.3 builds look broken - https://bugzilla.mozilla.org/show_bug.cgi?id=977031
The threshold was dependent on the velocity of the swipe :) If it is now working right now some regression for sure. I will take a look. Thx
Flags: needinfo?(crdlc)
Cristian, do you wanna steal this then? assuming my hamachi's base build is outdated as every build I flash crashes so not going to be much help debugging
Yep, I have the fix in a couple of minutes thought
Assignee: dale → crdlc
It just to play with the virtual friction and the threshold that in v1-train was 25% of the screen
Attached file Patch v1
In v1-train we had 25% of the screen a threshold and I think that it should be changed by mistake. Also, I've recovered a code from v1-train that worked like a charm

Thanks Vivien
Attachment #8382241 - Flags: review?(21)
Ahah this recalls me of bug 887509 ;) (although I prefer your fix here, Cristian)
Comment on attachment 8382241 [details]
Patch v1

Sounds safe and easy.
Attachment #8382241 - Flags: review?(21) → review+
The problem is that this patch does not uplift to v1.3 cleanly because the build process has been changed in master, perhaps, if it would be 1.3+ finally, I will have to do a pr for 1.3 too
blocking-b2g: 1.3? → 1.3+
Environmental Variables:
Device: buri v1.1 moz ril 
BuildID: 20140213041204
Gaia: c5cb252e5d1aa45d14f3a2ea182e73e2271e4496
Gecko: 2e2d6605f51d
Version: 18.0
Firmware Version: v1.2-device.cfg

Environmental Variables:
Device: buri v1.2 moz ril
BuildID: 20130621031231
Gaia: e2f19420fa6a26c4287588701efaec09a750dba1
Gecko: 7ba8c86f1a56
Version: 24.0a1
Firmware Version: v1.2-device.cfg

Last working Gaia/First broken Gecko: Issue does not reproduce
Gaia: c5cb252e5d1aa45d14f3a2ea182e73e2271e4496
Gecko: 7ba8c86f1a56

First broken Gaia/Last working Gecko: Issue reproduces
Gaia: e2f19420fa6a26c4287588701efaec09a750dba1
Gecko: 2e2d6605f51d
Attached file Patch v1 (obsolete) —
Attachment #8382831 - Flags: review?(jmcf)
Attachment #8382831 - Attachment is obsolete: true
Attachment #8382831 - Flags: review?(jmcf)
Merged in master:

https://github.com/mozilla-b2g/gaia/commit/2594455d08936b8ff1b907dd50b6426482377474
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Comment on attachment 8382241 [details]
Patch v1

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 #):
[User impact] if declined: fast gestures don't imply changes among pages
[Testing completed]: yes
[Risk to taking this patch] (and alternatives if risky): low
[String changes made]:
Attachment #8382241 - Flags: approval-gaia-v1.3?(fabrice)
Target Milestone: --- → 1.4 S2 (28feb)
Keywords: verifyme
I am now able to verify this is working with both long and short swipes (with velocity).

I am also able to pan one pane to the next with short, slow swipes.

Gaia      9422aca1931ba6c68784f9e80bb1b6a7fcfd92e3
Gecko     https://hg.mozilla.org/mozilla-central/rev/58eca03214a6
BuildID   20140228040203
Version   30.0a1
ro.build.version.incremental=324
ro.build.date=Thu Dec 19 14:04:55 CST 2013
Status: RESOLVED → VERIFIED
Keywords: verifyme
Attachment #8382241 - Flags: approval-gaia-v1.3?(fabrice) → approval-gaia-v1.3+
Hi John,

Could you please help us with the uplift to v1.3 branch?. Thanks!
Flags: needinfo?(jhford)
v1.3: 1b92621f76d2cbbc1516be62d519d0b6d1c4bfdc
Flags: needinfo?(miranda.j.emery)
Flags: needinfo?(jhford)
Flags: needinfo?(crdlc)
Flags: needinfo?(crdlc)
Attachment #8374707 - Flags: feedback?(anygregor)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: