Closed Bug 1081365 Opened 7 years ago Closed 7 years ago

[Notifications] The notification tray can get stuck partially open when quickly opening after transitioning between apps with edge gesture

Categories

(Firefox OS Graveyard :: Gaia::System::Window Mgmt, 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 unaffected)

VERIFIED FIXED
2.1 S9 (21Nov)
blocking-b2g 2.1+
Tracking Status
b2g-v2.0 --- unaffected
b2g-v2.1 --- verified
b2g-v2.2 --- unaffected

People

(Reporter: smiko, Assigned: gmarty)

References

()

Details

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

Attachments

(4 files)

31.90 KB, text/plain
Details
46 bytes, text/x-github-pull-request
Details | Review
46 bytes, text/x-github-pull-request
Details | Review
46 bytes, text/x-github-pull-request
etienne
: review+
Details | Review
Attached file Notification.txt
Description: While a file is downloading, partially opening the notification center causes it to stick to the screen. Hitting the home button will take the user back to home, but the focus will remain on the partially opened notification center. 

Repro Steps:
1: Update a Flame to 20141010000201
2: Download a large file
3: While the file is downloading, open Music or Dialer and pull the notification tray down 1/4 of the way.

Actual: The notification center sticks partially open and retains focus

Expected: The notification center does not stick partially open. 

Flame 2.1 KK (319mb) (Full Flash)

Environmental Variables:
Device: Flame 2.1
BuildID: 20141010000201
Gaia: bc8eb493311c58f1f311a56b8b645b52bfbd2f71
Gecko: 72c13d8631ff
Gonk: 52c909e821d107d414f851e267dedcd7aae2cebf
Version: 34.0a2 (2.1)
Firmware: V180
User Agent: Mozilla/5.0 (Mobile; rv:34.0) Gecko/34.0 Firefox/34.0

Repro frequency: 100%

See attached: logcat

Video clip:http://youtu.be/hoT-y-BBwH8
This issue DOES repro on Flame 2.2 (319mb/full flash/20141009040206) and Flame 2.2 (319mb/full flash/20141010040202)

Actual result: The notification center sticks partially open and retains focus.

Device: Flame 2.2
BuildID: 20141009040206
Gaia: 7b92615bdc97e5c675cd385ec68bc5e47e0c5288
Gecko: f0bb13ef0ee4
Gonk: 52c909e821d107d414f851e267dedcd7aae2cebf
Version: 35.0a1 (2.2)
Firmware: V180
User Agent: Mozilla/5.0 (Mobile; rv:35.0) Gecko/35.0 Firefox/35.0

Device: Flame 2.2
BuildID: 20141010040202
Gaia: 1036b544b7e102592bd9fab95cd9317329ac1293
Gecko: 50b689feab5f
Gonk: 52c909e821d107d414f851e267dedcd7aae2cebf
Version: 35.0a1 (2.2)
Firmware: V180
User Agent: Mozilla/5.0 (Mobile; rv:35.0) Gecko/35.0 Firefox/35.0
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(pbylenga)
Whiteboard: [2.1-Daily-Testing]
QAWanted for branch checks.
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(pbylenga)
Keywords: qawanted
This issue does NOT occur on 2.0 Flame KK.

Environmental Variables:
Device: Flame 2.0
BuildID: 20141010074705
Gaia: 6effca669c5baaf6cd7a63c91b71a02c6bd953b3
Gecko: 54ec9cb26b59
Version: 32.0 (2.0) 
Firmware Version: L1TC10011800
User Agent: Mozilla/5.0 (Mobile; rv:32.0) Gecko/32.0 Firefox/32.0
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(jmitchell)
Keywords: qawanted
Triage - Not nomming - after discussing this bug it seems difficult to encounter in a normal user-usage
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(jmitchell)
After further investigation, we have nailed down a consistent repro using these STR:

1: Update a Flame to 20141010000201
2: Open at least 4 apps to slow performance.
3: Perform edge gesture to switch between the opened apps.
4: While the app is loading (app icon shown with white background), pull the notification tray down halfway. 

Actual: The notification tray gets stuck.

Expected: The notification tray fully opens. 

Video clip: http://youtu.be/8Kw4xFkb92w
QA Whiteboard: [QAnalyst-Triage+] → [QAnalyst-Triage?]
Flags: needinfo?(jmitchell)
Updating title to match new STR

NI to Notification Menu (windows management) owner for a blocking call - with the updated steps it seems like this might be easier to encounter now. It looks bad but is easy to recover from
Flags: needinfo?(jmitchell) → needinfo?(gchang)
Summary: [Notifications] The notification tray can get stuck when partially opening while downloading a file. → [Notifications] The notification tray can get stuck partially open when quickly opening after transitioning between apps with edge gesture
[Blocking Requested - why for this release]:

Hi Howie, 
Per comment #6, It's much easier to repro the issue. This might need your input to determine if it's 2.1 blocker.
blocking-b2g: --- → 2.1?
Flags: needinfo?(gchang) → needinfo?(hochang)
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(hochang)
Whiteboard: [2.1-Daily-Testing] → [2.1-Daily-Testing] [systemsfe]
Bad UX issue.
blocking-b2g: 2.1? → 2.1+
Assignee: nobody → gmarty
Target Milestone: --- → 2.1 S8 (7Nov)
Attached file Github PR
This bug happens because a touchEnd event is not triggered. While we investigate it on the platform side, I worked on this patch that calls the onTouchEnd() method when no new touchMove events are recorded within a second.

Also, although https://bugzilla.mozilla.org/show_bug.cgi?id=1081365#c1 above says v2.2 is affected, I wasn't able to repro and the video is the same than the bug on v2.1.
For this reason the patch is based on v2.1.

Seth, would you mind to double check that this bug affects v2.2? If so, can you please provide a solid STR?

Etienne, can you have a look at this PR?
Flags: needinfo?(smiko)
Attachment #8517394 - Flags: review?(etienne)
Comment on attachment 8517394 [details] [review]
Github PR

Just want to double-check before doing the review: did you try listening for "touchcancel"?
Attachment #8517394 - Flags: review?(etienne)
Comment on attachment 8517394 [details] [review]
Github PR

Yes but unfortunately the touchcancel event is never fired either :-(
Attachment #8517394 - Flags: review?(etienne)
I am unable to repro on Flame 2.2 (319mb/full flash) or Flame 2.2 (319mb/shallow flash) using the STR in comment #5.

Actual result: The notification tray does not get stuck. 

Device: Flame 2.2
BuildID: 20141105040206
Gaia: 7c9e7cabbde941b976e0e40a3a1d94e21aa9c5e9
Gecko: 62990ec7ad78
Gonk: 48835395daa6a49b281db62c50805bd6ca24077e
Version: 36.0a1 (2.2)
Firmware: V188
User Agent: Mozilla/5.0 (Mobile; rv:36.0) Gecko/36.0 Firefox/36.0
QA Whiteboard: [QAnalyst-Triage+] → [QAnalyst-Triage?]
Flags: needinfo?(smiko) → needinfo?(jmitchell)
changing 2.2 tracking flag to unaffected
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(jmitchell)
Comment on attachment 8517394 [details] [review]
Github PR

This was driving me crazy but I think I tracked it down to fullscreen app opening while the tray is being dragged.

Guillaume, will send you a patch for review soon :)
Attachment #8517394 - Flags: review?(etienne)
Attached file Gaia PR
What do you think?
Attachment #8518193 - Flags: review?(gmarty)
Comment on attachment 8518193 [details] [review]
Gaia PR

Talked with Guillaume, this is not fixing the issue completely.

We went back and forth on this a bit, and this is yet again a case where we're going to do an ugly workaround that wouldn't be needed if the utility tray part of bug 1061969 got uplifted.

Guillaume will make a (small) PR accordingly with the utility tray part of bug 1061969 and the quick follow up from bug 1082650.
Attachment #8518193 - Flags: review?(gmarty)
Attached file Github PR
Here is the PR I made for Bug 1084060 that uplifts the utility tray code from Bug 1061969.
It's rebased and fixes the bug described here.
Attachment #8518908 - Flags: review?(etienne)
Comment on attachment 8518908 [details] [review]
Github PR

I think we're missing the part from
https://github.com/gmarty/gaia/commit/668b3d30ebd64f755fc1d0726be18f51190daf93

And we should remove the "setActive" part for this 2.1 version (don't think we have the gecko support and we want to make this as short and simple as possible :))
Attachment #8518908 - Flags: review?(etienne)
Comment on attachment 8518908 [details] [review]
Github PR

I reworked the PR according to your suggestions. How does it look now?
Attachment #8518908 - Flags: review?(etienne)
Target Milestone: 2.1 S8 (7Nov) → 2.1 S9 (21Nov)
Comment on attachment 8518908 [details] [review]
Github PR

looking good, looking good.
(needs rebasing but nothing too bad)
Attachment #8518908 - Flags: review?(etienne) → review+
Comment on attachment 8518908 [details] [review]
Github PR

[Approval Request Comment]
[Bug caused by] (feature/regressing bug #): Utility tray visual refresh.
[User impact] if declined: The utility tray get sometime stuck in the middle, not completely opened, nor closed when CPU is under pressure. Also this patch improves the performance of swiping up/down the tray and feels much smoother.
[Testing completed]: Unit testing coverage is good and manual testing is required.
[Risk to taking this patch] (and alternatives if risky): Though this patch looks big, it is basically an uplift from master and have been there for months now and has proven to be completely stable.
[String changes made]: None.
Attachment #8518908 - Flags: approval-gaia-v2.1?(fabrice)
Marking as resolved so that it appears on Fabrice's radar.
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Attachment #8518908 - Flags: approval-gaia-v2.1?(fabrice) → approval-gaia-v2.1+
Keywords: checkin-needed
Guillaume, the try run is looking pretty bad. Might be some harness issues, or there might be real failures in there. In any case, can you figure out what is going on before we land this?

https://treeherder.mozilla.org/ui/#/jobs?repo=gaia-try&revision=db5510d24c35
Flags: needinfo?(gmarty)
Keywords: checkin-needed
Looks like a combination of infra issues and maybe-real problems. Can we get a fresh Gaia Try run for it?
Guillaume, we fixed a bunch of issues with the tests on v2.1 in bug 1103962, so try rebasing your patch and see if it's cleared up.
Thanks Michael. I rebased and the JS marionette tests are passing now. I fixed some issues in python but some tests are timing out now. I will take a look with the help of :zac tomorrow and hopefully land it.
Flags: needinfo?(gmarty)
This issue is verified fixed on Flame 2.1.

Result: Following the STRs in Comment 5, the notification tray fully opens and does not get stuck when the user pulls it down halfway.

Device: Flame 2.1 (319mb, KK, Full Flash)
BuildID: 20141201001201
Gaia: ccb49abe412c978a4045f0c75abff534372716c4
Gecko: 18fb67530b22
Gonk: 48835395daa6a49b281db62c50805bd6ca24077e
Version: 34.0 (2.1)
Firmware: V188-1
User Agent: Mozilla/5.0 (Mobile; rv:34.0) Gecko/34.0 Firefox/34.0
Status: RESOLVED → VERIFIED
QA Whiteboard: [QAnalyst-Triage+] → [QAnalyst-Triage?]
Flags: needinfo?(ktucker)
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(ktucker)
You need to log in before you can comment on or make changes to this bug.