Closed Bug 1079567 Opened 10 years ago Closed 10 years ago

[NFC][Shrinking UI] App is rendered as a black screen if the recipient device is pulled away before the user finishes the transfer gesture.

Categories

(Firefox OS Graveyard :: NFC, defect)

ARM
Gonk (Firefox OS)
defect
Not set
normal

Tracking

(blocking-b2g:2.1+, b2g-v2.0 unaffected, b2g-v2.1 verified, b2g-v2.2 fixed)

VERIFIED FIXED
2.1 S8 (7Nov)
blocking-b2g 2.1+
Tracking Status
b2g-v2.0 --- unaffected
b2g-v2.1 --- verified
b2g-v2.2 --- fixed

People

(Reporter: Marty, Assigned: gduan)

References

()

Details

(Keywords: regression, Whiteboard: [2.1-Daily-Testing])

Attachments

(6 files)

Attached file logcat-NFC.txt
Description:
This issue occurs during any NFC pairing request.  If the user is touching the screen of the sending device in the Shrinking UI when the receiving device is removed, the app will render as a black screen when the user releases the touchscreen.

Note: This issue persists if returning to the app from the Card View or Homescreen, and is only undone if the original app is force closed and relaunched.
   
Repro Steps:
1) Update two Flame devices to BuildID: 20141007000203
2) Activate NFC on both devices in the Settings app.
3) Open a webpage in the Browser on the first device.
4) Pair the two devices via NFC by placing them back to back.
5) Place a finger on the touchscreen of the first device in the Shrinking UI, as if to start the transfer.
6) Move the second device away from the first device, cancelling the NFC pairing.
7) Remove the finger from the touchscreen of the first device.
  
Actual:
NFC pairing is cancelled, but he user is returned from the Shrinking UI to a black screen of the original app.
  
Expected: 
NFC pairing is cancelled, and the user is returns from the Shrinking UI to the original app properly.
  
Environmental Variables:
Device: Flame 2.1
BuildID: 20141007000203
Gaia: 7f738edf66b9298bceef8a4981d05d04fd04e540
Gecko: b9d04c58580a
Gonk: 2c909e821d107d414f851e267dedcd7aae2cebf
Version: 34.0a2 (2.1)
Firmware: V180
User Agent: Mozilla/5.0 (Mobile; rv:34.0) Gecko/34.0 Firefox/34.0
  
Repro frequency: 5/5
Link to failed test case: https://moztrap.mozilla.org/manage/case/11103/
See attached: video clip (URL), logcat
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(pbylenga)
Attached file crash log
I use debug build and can see assertion and causes crash.
qawanted for branch checks.
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(pbylenga)
Keywords: qawanted
QA Contact: pcheng
This issue occurs on Flame 2.2.

Observed behavior: Tap and hold on NFC transferring screen, move the device away from receiving device, and then finish the swiping up gesture causes the sending device to display a black window.

Device: Flame 2.2 Master (shallow flash)
BuildID: 20141010060203
Gaia: cc5da7b055e2b06fdeb46fa94970550392ee571d
Gecko: 097821fd89ed
Version: 35.0a1 (2.2 Master)
Firmware: V180
User Agent: Mozilla/5.0 (Mobile; rv:35.0) Gecko/35.0 Firefox/35.0

---------------

This issue does NOT occur on Flame 2.0.

Observed behavior: As soon as the user moves the device away, the NFC transferring UI disappears (goes back to normal Browser view), and the swiping up gesture is then ignored by the sending device.

Device: Flame 2.0 (shallow flash)
BuildID: 20141010074705
Gaia: 6effca669c5baaf6cd7a63c91b71a02c6bd953b3
Gecko: 54ec9cb26b59
Version: 32.0 (2.0)
Firmware: V180
User Agent: Mozilla/5.0 (Mobile; rv:32.0) Gecko/32.0 Firefox/32.0
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(jmitchell)
Keywords: qawanted
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(jmitchell)
Josh, can you revist this issue and make a blocking decision?
Flags: needinfo?(jmitchell)
Redirecting to NFC owner for help making a blocking decision
Flags: needinfo?(jmitchell) → needinfo?(ashiue)
[Blocking Requested - why for this release]:
obvious UI error, please refer: http://youtu.be/FGygAnF5fig
blocking-b2g: --- → 2.1?
QA Whiteboard: [QAnalyst-Triage+] → [QAnalyst-Triage+][COM=NFC]
Flags: needinfo?(ashiue)
Regression + bad user experience = 2.1+.
blocking-b2g: 2.1? → 2.1+
QA Contact: pcheng
Hi Greg,
This seems to be system-app related?
Just ni you to get early notice.
Flags: needinfo?(gweng)
NI George since right now I have no resource for NFC component... Thanks George.
Flags: needinfo?(gweng) → needinfo?(gduan)
Assignee: nobody → gduan
Flags: needinfo?(gduan)
QA Contact: aalldredge
----------------------------------------------------
B2G-Inbound Regression Window (Shallow Flash)
----------------------------------------------------

Last Working:
Device: Flame 2.1
BuildID: 20140901212013
Gaia: 82df767ab641da98a02d45a168b4ff9096e1d7b4
Gecko: 67e9cbbbde1b
Version: 34.0a1 (2.1)
Firmware: V123
User Agent: Mozilla/5.0 (Mobile; rv:34.0) Gecko/34.0 Firefox/34.0

First Broken:
Device: Flame 2.1
BuildID: 20140901215313
Gaia: 59bd6619d64979f32179732f6de83f9a4f611367
Gecko: 20d4376a87ed
Version: 34.0a1 (2.1)
Firmware: V123
User Agent: Mozilla/5.0 (Mobile; rv:34.0) Gecko/34.0 Firefox/34.0

Last Working Gaia First Broken Gecko: Issue does NOT reproduce
Gaia: 82df767ab641da98a02d45a168b4ff9096e1d7b4
Gecko: 20d4376a87ed

First Broken Gaia Last Working Gecko: Issue DOES reproduce
Gaia: 59bd6619d64979f32179732f6de83f9a4f611367
Gecko: 67e9cbbbde1b

Pushlog:
https://github.com/mozilla-b2g/gaia/compare/82df767ab641da98a02d45a168b4ff9096e1d7b4...59bd6619d64979f32179732f6de83f9a4f611367

Caused by Bug 1059093
QA Whiteboard: [QAnalyst-Triage+][COM=NFC] → [QAnalyst-Triage?][COM=NFC]
Flags: needinfo?(jmitchell)
Caused by Bug 1059093 ?
Blocks: 1059093
QA Whiteboard: [QAnalyst-Triage?][COM=NFC] → [QAnalyst-Triage+][COM=NFC]
Flags: needinfo?(jmitchell) → needinfo?(gduan)
QA Contact: aalldredge
(In reply to Martin Shuman [:Marty] from comment #0)
> Created attachment 8501401 [details]
> logcat-NFC.txt
> 
> Description:
> This issue occurs during any NFC pairing request.  If the user is touching
> the screen of the sending device in the Shrinking UI when the receiving
> device is removed, the app will render as a black screen when the user
> releases the touchscreen.
> 
> Note: This issue persists if returning to the app from the Card View or
> Homescreen, and is only undone if the original app is force closed and
> relaunched.
>    
> Repro Steps:
> 1) Update two Flame devices to BuildID: 20141007000203
> 2) Activate NFC on both devices in the Settings app.
> 3) Open a webpage in the Browser on the first device.
> 4) Pair the two devices via NFC by placing them back to back.
> 5) Place a finger on the touchscreen of the first device in the Shrinking
> UI, as if to start the transfer.
> 6) Move the second device away from the first device, cancelling the NFC
> pairing.
Before my patch in bug 1059093, shrinkingui.js have many error (TypeERROR: this.current.element is null) when user try to move his finger in this step, so it actually broke shrinkingui. 

> 7) Remove the finger from the touchscreen of the first device.
>   
> Actual:
> NFC pairing is cancelled, but he user is returned from the Shrinking UI to a
> black screen of the original app.
>   
> Expected: 
> NFC pairing is cancelled, and the user is returns from the Shrinking UI to
> the original app properly.
>   
> Environmental Variables:
> Device: Flame 2.1
> BuildID: 20141007000203
> Gaia: 7f738edf66b9298bceef8a4981d05d04fd04e540
> Gecko: b9d04c58580a
> Gonk: 2c909e821d107d414f851e267dedcd7aae2cebf
> Version: 34.0a2 (2.1)
> Firmware: V180
> User Agent: Mozilla/5.0 (Mobile; rv:34.0) Gecko/34.0 Firefox/34.0
>   
> Repro frequency: 5/5
> Link to failed test case: https://moztrap.mozilla.org/manage/case/11103/
> See attached: video clip (URL), logcat
Flags: needinfo?(gduan)
Comment on attachment 8510095 [details] [review]
PR to master

Hi Greg,
could you review this for me? Thanks.
Attachment #8510095 - Flags: review?(gweng)
Comment on attachment 8510095 [details] [review]
PR to master

Please fix the |ref| pattern with |handleEvent| if possible. We don't need to migrate the whole event handler to it, but the events you fix in this patch.
Attachment #8510095 - Flags: review?(gweng)
Comment on attachment 8510095 [details] [review]
PR to master

Thanks for advice! Patch updated, please check again.
Attachment #8510095 - Flags: review?(gweng)
Comment on attachment 8510095 [details] [review]
PR to master

OK, this version is good to me.
Attachment #8510095 - Flags: review?(gweng) → review+
Thanks,
master: https://github.com/mozilla-b2g/gaia/commit/6e5893f137da8a368e7999767c6204afece06bef
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Sorry, I just found out it's not fully fixed yet. 
https://github.com/mozilla-b2g/gaia/commit/9a862c241f610a8efcf57c3155c6c71069f04d7f
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Attached file PR to master - 2
Hi Greg,
could you review my patch again? I just found out that I need to clear the delay timeout after remove the eventListener.
Attachment #8510879 - Flags: review?(gweng)
Comment on attachment 8510879 [details] [review]
PR to master - 2

OK. It looks good.
Attachment #8510879 - Flags: review?(gweng) → review+
Thanks!
Master: https://github.com/mozilla-b2g/gaia/commit/62bbf01130719498b9159987311b9a4c907d0dbf
Status: REOPENED → RESOLVED
Closed: 10 years ago10 years ago
Resolution: --- → FIXED
Comment on attachment 8510909 [details] [review]
PR to 2.1

[Approval Request Comment]
[Bug caused by] (feature/regressing bug #): Bug 1059093.
[User impact] if declined: http://youtu.be/FGygAnF5fig , tilting effect still exist event when NFC is disabled.
[Testing completed]: Yes
[Risk to taking this patch] (and alternatives if risky): No
[String changes made]:
Attachment #8510909 - Flags: approval-gaia-v2.1?
Attachment #8510909 - Flags: approval-gaia-v2.1? → approval-gaia-v2.1+
Verified on
[2.1]
Gaia-Rev        6926165a173549f2f76f26266cb5121d0411e703
Gecko-Rev       https://hg.mozilla.org/releases/mozilla-b2g34_v2_1/rev/dd48bef1b27e
Build-ID        20141028161205
Version         34.0

[2.2]
Gaia-Rev        b48f66220dff75f767eddf28a1d58192fc811410
Gecko-Rev       https://hg.mozilla.org/mozilla-central/rev/53d84829b2b8
Build-ID        20141028160206
Version         36.0a1
Status: RESOLVED → VERIFIED
Attached video video of issue verify
This issue has been verified successfully on Flame 2.1
See attachment: verify_video.MP4
Reproducing rate: 0/5
Flame 2.1 versions:
Gaia-Rev        afdfa629be209dd53a1b7b6d6c95eab7077ffcd9
Gecko-Rev       https://hg.mozilla.org/releases/mozilla-b2g34_v2_1/rev/dc3018cbdbe6
Build-ID        20141123001201
Version         34.0
Device-Name     flame
FW-Release      4.4.2
FW-Incremental  eng.cltbld.20141123.035029
FW-Date         Sun Nov 23 03:50:40 EST 2014
Bootloader      L1TC00011880
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: