Closed Bug 1020005 Opened 11 years ago Closed 11 years ago

On Shrinking UI / Tilted UI, false touches or even a slight slide of the tilted UI results in bad UX behavior when the other Peer device is taken away from DUT's proximity

Categories

(Firefox OS Graveyard :: NFC, defect)

ARM
Gonk (Firefox OS)
defect
Not set
normal

Tracking

(tracking-b2g:backlog, b2g-v2.1 fixed)

RESOLVED FIXED
2.0 S4 (20june)
tracking-b2g backlog
Tracking Status
b2g-v2.1 --- fixed

People

(Reporter: psiddh, Assigned: psiddh)

References

Details

Attachments

(2 files, 1 obsolete file)

1. Launch any Gaia NFC application that has registered for 'onpeerready' dom callback. Ex:- Contacts , Browser, Video applications etc.. 2. Bring another device in close proximity to DUT 3. Observe that tilted UI / shrinking UI is shown. 4. Now gently try to slide the UI towards TOP, and bring / slide it back to bottom (from where the sliding originally began). This step could also be reproduced by false touches at the base of sliding window. 5. Now observe that 'tip : Swipe to share appears'. 6. Now remove the other peer device from DUT's proximity. 7. Observe that UI stays tilted. This is 100% reproducible issue on NFC Gaia that supports sharing features.
Assignee: nobody → psiddh
Analysis:- Whenever 'shrinking-reject' is issued by nfc_manager.js, shrinking_ui.js attempts to process this event. @ http://lxr.mozilla.org/gaia/source/apps/system/js/shrinking_ui.js#291 this._sendingSlideTo('BOTTOM' , (function() { ..... ... this.stop() } The above statement attempts to slide the window in 'bottom' direction. It also registers a callback function as its second parameter. This callback() is fired @ http://lxr.mozilla.org/gaia/source/apps/system/js/shrinking_ui.js#417 only when 'transitionend' event occurs. In the scenario mentioned in above steps (1 - 7), 'transitionend' event is not fired . In effect, http://lxr.mozilla.org/gaia/source/apps/system/js/shrinking_ui.js#420 , callback() registered will never get fired resulting in _sendingSlideTo() callback NOT getting fired. This implies that this.stop() will never be called resulting in bad UX behavior. http://lxr.mozilla.org/gaia/source/apps/system/js/shrinking_ui.js#296 Now there are two solutions that I propose. 1) In nfc_manager.js, whenever 'techLost' occurs (@STEP 6 in above problem description), it currently calls 'shrinking-reject'. I think the more appropriate call here should be 'shrinking-stop'. Attached the patch with this simple change. Now Tilted / Shrinking UI is more robust (unable to reproduce the issue any longer with this patch) while handling gentle touches / false touches. 2) Handling of 'shrinking-reject' in shrinking_ui.js needs to be modified. It may not be a good idea to perform cleanup actions in a callback _sendingSlideTo(..., callback) that may not be fired in some edge scenarios like above. My two cents!
Attached file Bug_1020005
Note the gentle touch around ~ 10th - 11th second in the video
Attaching this simple fix as a patch for the feedback from Greg. What do you think ?
Attachment #8433754 - Flags: feedback?(gweng)
Comment on attachment 8433754 [details] [diff] [review] 0001-Bug-1020005-Send-shrinking-stop-instead-of-shrinking.patch I think it's reasonable. However, would `handleTechLost` function be also used to handle the shrinking rejecting situation?
Attachment #8433754 - Flags: feedback?(gweng) → feedback+
I don't think `handleTechLost` need to send 'shrinking-reject'. It may issue 'shrinking-stop' only.
Attachment #8433754 - Attachment is obsolete: true
Attachment #8436128 - Flags: review?(gweng)
Comment on attachment 8436128 [details] [review] Bug 1020005 fix for gentle / false touches on tilted / p2p ui I saw some tests failed. Please check it again.
Attachment #8436128 - Flags: review?(gweng)
Comment on attachment 8436128 [details] [review] Bug 1020005 fix for gentle / false touches on tilted / p2p ui Travis passes . Had to make a minor modification to the nfc test-cases as well.
Attachment #8436128 - Flags: review?(gweng)
blocking-b2g: --- → backlog
Comment on attachment 8436128 [details] [review] Bug 1020005 fix for gentle / false touches on tilted / p2p ui It's OK now. Thanks for your help and let's see if we solved the bug.
Attachment #8436128 - Flags: review?(gweng) → review+
Keywords: checkin-needed
Status: NEW → RESOLVED
Closed: 11 years ago
Keywords: checkin-needed
Resolution: --- → FIXED
Target Milestone: --- → 2.0 S4 (20june)
blocking-b2g: backlog → ---
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: