[Window Management] Opening power menu while in security menu for joining a hidden network causes strange behaviour

VERIFIED FIXED in Firefox OS v2.2

Status

Firefox OS
Gaia::System::Window Mgmt
VERIFIED FIXED
3 years ago
3 years ago

People

(Reporter: KTucker, Assigned: timdream)

Tracking

({regression})

unspecified
2.2 S5 (6feb)
ARM
Gonk (Firefox OS)
regression

Firefox Tracking Flags

(blocking-b2g:2.2+, b2g-v2.1 unaffected, b2g-v2.2 verified, b2g-master verified)

Details

(Whiteboard: [3.0-Daily-Testing], URL)

Attachments

(2 attachments)

Description:
If the user opens the "power menu" while in the security menu for joining a hidden network, taps "cancel" and then taps "Join", the security menu will appear again.

Prerequisite:
Factory reset the device or do a fresh flash.

Repro Steps:
1) Update a Flame to 20150130010210.
2) Tap "Next" 3 times to reach the "Select a network" page.
3) Tap "Join hidden network".
4) Tap on "Security" to bring up the menu.
5) Press and hold the power button on the device to bring up the power menu.
6) Tap "Cancel" and observe. (The security menu has disappeared)
7) Tap the "Join" button and observe what happens.

Actual:
The "Security" menu will appear when the user taps "Join".

Expected:
The "Security" menu does not appear when the user taps "Join".

Environmental Variables:
Device: Flame 3.0
Build ID: 20150130010210
Gaia: 8238eeacc7030b2cdbf7ab4eba2f36779b702599
Gecko: 29b05d283b00
Gonk: e7c90613521145db090dd24147afd5ceb5703190
Version: 38.0a1 (3.0)
Firmware Version: v18D-1
User Agent: Mozilla/5.0 (Mobile; rv:38.0) Gecko/38.0 Firefox/38.0

Repro frequency: 5/5
See attached: Video and logcat
(Reporter)

Updated

3 years ago
status-b2g-master: --- → affected
Whiteboard: [3.0-Daily-Testing]
(Reporter)

Updated

3 years ago
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(pbylenga)
Created attachment 8557328 [details]
SecurityMenuLogcat.txt
This issue also occurs on the Flame 2.2

The "Join Hidden Network Security" menu will appear when tapping "Join". 

Environmental Variables:
Device: Flame 2.2 (319mb)(KK)(Full Flash)
BuildID: 20150130002501
Gaia: d6141fa3208f224393269e17c39d1fe53b7e6a05
Gecko: 63b63054948d
Gonk: e7c90613521145db090dd24147afd5ceb5703190
Version: 37.0a2 (2.2) 
Firmware Version: v18D-1
User Agent: Mozilla/5.0 (Mobile; rv:37.0) Gecko/37.0 Firefox/37.0

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

This issue does not occur on Flame 2.1

The "Security" menu does not appear when tapping "Join".

Environmental Variables:
Device: Flame 2.1 (319mb)(KK)(Full Flash)
BuildID: 20150130001202
Gaia: 01bf4bd548be38a762c4e4582925159e6226dfa2
Gecko: 934de7047791
Gonk: e7c90613521145db090dd24147afd5ceb5703190
Version: 34.0 (2.1) 
Firmware Version: v18D-1
User Agent: Mozilla/5.0 (Mobile; rv:34.0) Gecko/34.0 Firefox/34.0
status-b2g-v2.1: --- → unaffected
status-b2g-v2.2: --- → affected
Keywords: regression
(Reporter)

Updated

3 years ago
Whiteboard: [3.0-Daily-Testing] → [3.0-Daily-Testing] [systemsfe]
This actually happens in multiple areas of the OS. For example, if the user brings up the screen time out picker under display in settings and follow the steps above, the overlay will appear again once the user taps to back out. The overlay doesn't stay on the screen though like it did in the FTE. It just flashes for a brief second.
regression that breaks functionality, affects multiple apps that utilize this picker screen.

Requesting a window.
blocking-b2g: --- → 2.2?
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(pbylenga)
Keywords: regressionwindow-wanted
Whiteboard: [3.0-Daily-Testing] [systemsfe] → [3.0-Daily-Testing]
QA Contact: ychung
b2g-inbound Regression Window:

Last Working Environmental Variables:
Device: Flame 2.2
BuildID: 20141020052612
Gaia: 4c7e1e5f68ec57241d488568080732b318d652f5
Gecko: eea1504453bf
Version: 36.0a1 (2.2) 
Firmware Version: v18D-1
User Agent: Mozilla/5.0 (Mobile; rv:36.0) Gecko/36.0 Firefox/36.0

First Broken Environmental Variables:
Device: Flame 2.2
BuildID: 20141020060313
Gaia: 47faa4651f8feb11152ef475850cc9641fd5cbeb
Gecko: d659d47a591d
Version: 36.0a1 (2.2) 
Firmware Version: v18D-1
User Agent: Mozilla/5.0 (Mobile; rv:36.0) Gecko/36.0 Firefox/36.0

Last Working Gaia First Broken Gecko: Issue does NOT reproduce 
Gaia: 4c7e1e5f68ec57241d488568080732b318d652f5
Gecko: d659d47a591d

First Broken Gaia Last Working Gecko: Issue DOES reproduce
Gaia: 47faa4651f8feb11152ef475850cc9641fd5cbeb
Gecko: eea1504453bf

https://github.com/mozilla-b2g/gaia/compare/4c7e1e5f68ec57241d488568080732b318d652f5...47faa4651f8feb11152ef475850cc9641fd5cbeb

caused by bug 1085233
===================================
On the latest Master build, however, the issue is slightly different. Security menu does not appear when selecting the "Join" button, but the menu does not open at all afterwards.

Environmental Variables:
Device: Flame 3.0
BuildID: 20150202042034
Gaia: 4171327fce4803c52b2fae8071b114a70a3a68a7
Gecko: 3bf7ed413e87
Version: 38.0a1 (3.0) 
Firmware Version: v18D-1
User Agent: Mozilla/5.0 (Mobile; rv:38.0) Gecko/38.0 Firefox/38.0
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(ktucker)
Keywords: regressionwindow-wanted
QA Contact: ychung
 ===================================
> On the latest Master build, however, the issue is slightly different.
> Security menu does not appear when selecting the "Join" button, but the menu
> does not open at all afterwards.

Here's repro steps:

1) Flash or reset the device.
2) During FTU, long-press the power button.
3) Select "Cancel" on the power menu.
4) Select any menu on the FTU screens, or tap on the input area.

Actual:
None of the menu or keyboard appears during FTU.

Expected:
All menu and keyboard work properly.

Environmental Variables:
Device: Flame 3.0
BuildID: 20150202042034
Gaia: 4171327fce4803c52b2fae8071b114a70a3a68a7
Gecko: 3bf7ed413e87
Version: 38.0a1 (3.0) 
Firmware Version: v18D-1
User Agent: Mozilla/5.0 (Mobile; rv:38.0) Gecko/38.0 Firefox/38.0
Tim, an you take a look at this please? Looks like this might have been caused by the landing for Bug 1085233.
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(ktucker) → needinfo?(timdream)
In my place -- keeping needinfo.
Assignee: nobody → timdream
Status: NEW → ASSIGNED
Flags: needinfo?(timdream)

Comment 9

3 years ago
Triage: blocking
blocking-b2g: 2.2? → 2.2+
Created attachment 8558949 [details] [review]
Github: https://github.com/mozilla-b2g/gaia/pull/27900

The cause of this bug is because in bug 1085233 I removed a this.app.focus() call that I thought should be no-op, but in reality it serve it's purpose by moving the focus back to the foreground app, at the time when value selector is being hidden because of the focus is taken away by other overlays. By moving the focus back to app, it could make itself show up again if the focus inside the app is still at <select>.

This fix attempt to prevent sleep menu from taking away focus at first place, which serves the STR.

I know supposedly all overlays should register itself to HierarchyManager, so I am not entirely sure if this is the proper fix, as I said in the comment of the patch. I also wonder if we should simply backout bug 1085233 until we are sure of all overlays are either register under HierarchyManager or never take focus away. I am afraid that there are other overlays in System that could trigger the same STR here.

Alive, what's your opinion here? Backout, at least from v2.2, sounds like a viable escape hatch from blockers, given the fact bug 1085233 was just a minor clean up and does not fix anything. We can then figure out if we should land this on master, or do another proper fix. It also depend on far we are in terms of hierarchy management work.

Thanks.
Attachment #8558949 - Flags: feedback?(alive)
Comment on attachment 8558949 [details] [review]
Github: https://github.com/mozilla-b2g/gaia/pull/27900

Let's back out the root cause bug for v2.2 and consider adapt SleepMenu in HierarchyManager in v3.0
Attachment #8558949 - Flags: feedback?(alive)
Fixed by backout bug 1085233:

master: https://github.com/timdream/gaia/commit/a785391616adb07777dd0e94c8bd52d432d8fdd9
v2.2: https://github.com/timdream/gaia/commit/b29f3ae643d57f3fb24ed7e9fb6884d7f2fc533d

Let's follow-up our investigation on platform side and file bug accordingly.
status-b2g-v2.2: affected → fixed
status-b2g-master: affected → fixed
Flags: needinfo?(timdream)
Status: ASSIGNED → RESOLVED
Last Resolved: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → 2.2 S5 (6feb)
Reverting bug 1085233 caused Gij to perma-fail. Since our options were to either backout or close the tree, I've gone with a backout. Re-opening and updating branch status.
Status: RESOLVED → REOPENED
status-b2g-v2.2: fixed → affected
status-b2g-master: fixed → affected
Resolution: FIXED → ---
master pull request: 

https://github.com/mozilla-b2g/gaia/pull/27951
https://treeherder.mozilla.org/#/jobs?repo=gaia-try&revision=7e3f86c08787

I thought autolander will look pull request subject instead of the commit message :-/
Flags: needinfo?(timdream)
Hmm, I think Autolander might not yet work on "revert" pull request titles. It's something I need to fix.
v2.2 pull request: 

https://github.com/mozilla-b2g/gaia/pull/27954
https://treeherder.mozilla.org/ui/#/jobs?repo=gaia-try&revision=dceb0eea1677
(In reply to Kevin Grandon :kgrandon from comment #15)
> Hmm, I think Autolander might not yet work on "revert" pull request titles.
> It's something I need to fix.

My pull request title is "Bug 1128053 +autoland"

https://github.com/mozilla-b2g/gaia/pull/27951
Yeah - I'd recommend landing this one manually. It looks like the regexp for pull request titles might be too strict. It searches for something with the exact format of: "Bug 123456 - Some description"
(In reply to Tim Guan-tin Chien [:timdream] (MoCo-TPE) (please ni?) from comment #14)
> master pull request: 
> 
> https://github.com/mozilla-b2g/gaia/pull/27951
> https://treeherder.mozilla.org/#/jobs?repo=gaia-try&revision=7e3f86c08787
> 
> I thought autolander will look pull request subject instead of the commit
> message :-/

Rudy, could you help on this? I don't know what's wrong with Gij-3
Flags: needinfo?(rlu)
(In reply to Tim Guan-tin Chien [:timdream] (MoCo-TPE) (please ni?) from comment #16)
> v2.2 pull request: 
> 
> https://github.com/mozilla-b2g/gaia/pull/27954
> https://treeherder.mozilla.org/ui/#/jobs?repo=gaia-try&revision=dceb0eea1677

I think I can land v2.2 since Gij is always red there. Let's wait for master.
Tim,

I think this Gij failure could be fixed by Jan's patch, bug 1121274 comment 15.
The perma-red is because somehow we would trigger app.focus() in that test when the focus is blurred, which caused the keyboard to show up again, and it would cover the IME uninstallation confirm dialog.

Jan's patch looks like a workaround in the test for me, but if we would like to get this bug fixed soon, we could take that patch and I'll try to find out the root cause in value selector or system app.
Flags: needinfo?(rlu)
Depends on: 1129541
FYI https://bugzilla.mozilla.org/show_bug.cgi?id=1129526 should fix the 'user click does not focus' issue.
master force pushed:

https://github.com/mozilla-b2g/gaia/pull/27951
https://treeherder.mozilla.org/#/jobs?repo=gaia-try&revision=5a3652bcb743
master: https://github.com/mozilla-b2g/gaia/commit/31db405003f07ed4029529ea4fe4781ceea764c5

https://treeherder.mozilla.org/#/jobs?repo=gaia-try&revision=5a3652bcb743

v2.2: https://github.com/mozilla-b2g/gaia/commit/7f0ee99fd9b93812dfdc04e67face510a41b2e55

https://treeherder.mozilla.org/ui/#/jobs?repo=gaia-try&revision=dceb0eea1677
Status: REOPENED → RESOLVED
Last Resolved: 3 years ago3 years ago
status-b2g-v2.2: affected → fixed
status-b2g-master: affected → fixed
Resolution: --- → FIXED
This issue is fixed in the latest Nightly 3.0 and 2.2 Flame builds.  

Results:  The drop down menu is not dismissed when closing the power menu.  There is a small flicker of the screen showing the underlying menu, but this has been written up as bug 1134934

Environmental Variables:
Device: Flame 3.0 KK (319MB) (Full Flash)
BuildID: 20150219010228
Gaia: 620aecfde85a8b093247837c55de2708e22be1e1
Gecko: 360b5f211180
Gonk: e7c90613521145db090dd24147afd5ceb5703190
Version: 38.0a1 (3.0) 
Firmware Version: v18D-1
User Agent: Mozilla/5.0 (Mobile; rv:38.0) Gecko/38.0 Firefox/38.0

Environmental Variables:
Device: Flame 2.2 KK (319MB) (Full Flash)
BuildID: 20150219002504
Gaia: ce79d35b92261e7cbfeaefebf87859ebeb0979b4
Gecko: 159a3907b959
Gonk: e7c90613521145db090dd24147afd5ceb5703190
Version: 37.0a2 (2.2) 
Firmware Version: v18D-1
User Agent: Mozilla/5.0 (Mobile; rv:37.0) Gecko/37.0 Firefox/37.0
Status: RESOLVED → VERIFIED
QA Whiteboard: [QAnalyst-Triage+] → [QAnalyst-Triage?]
status-b2g-v2.2: fixed → verified
status-b2g-master: fixed → verified
Flags: needinfo?(ktucker)
(Reporter)

Updated

3 years ago
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.