Closed Bug 1112031 Opened 7 years ago Closed 7 years ago

Internet Sharing Settings is not scrollable if HotSpot details panel closes with keyboard open


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

Gonk (Firefox OS)
Not set


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

blocking-b2g 2.2+
Tracking Status
b2g-v2.0 --- unaffected
b2g-v2.1 --- unaffected
b2g-v2.2 --- verified


(Reporter: mnjul, Assigned: eragonj)




(Keywords: regression)


(2 files)

1. Go to Settings -> Internet sharing -> Hotspot Settings
2. Click on the first textbox (SSID Network Name) and wait for KB to fully show
3. With the focus still on the textbox and KB still showing, directly click the close "X" button on the top-left corner.
4. (and go back to the Internet sharing panel)

Expected result:
At step 4, the Internet Sharing panel should be scrollable (as its height exceeds screen height).

Actual result:
At step 4, the Internet Sharing panel is not scrollable.

Repro rate: about 6/10
If you can't repro the bug at step 4, try click the back "<" button on the top-left corner at the Internet Sharing panel to go back to Settings root panel. If you can't scroll the root panel, then you're still repro'ing the bug.

Gaia is at a33dc866dd0661616587cab531418d5afa997133 and Gecko is at build id 20141214160202. On Flame KK v188 .

Not sure if this is a regression, so mark qawanted first. Nom'ing as this semi-breaks functionality. I'm putting this in Settings category for now but feel free to put it to Input Management and/or ping me if we identify it's the cause.

Check associated URL for video.
QA Contact: ddixon
Branch Check

Issue DOES occur in Flame 2.2 (shallow flash, engineering, 319 MB memory) 

Device: Flame 2.2
BuildID: 20141216044048
Gaia: af3d2f89f391c92667e04676fc0ac971e6021bb7
Gecko: 249dbdbe09e0
Version: 37.0a1 (2.2) 
Firmware Version: v188-1
User Agent: Mozilla/5.0 (Mobile; rv:37.0) Gecko/37.0 Firefox/37.0
Issue DOES NOT occur in Flame 2.1, 2.0 (shallow flash, engineering, 319 MB memory)

Device: Flame 2.1
BuildID: 20141216034248
Gaia: 79286eafe67707d1330966c1b1413b2d0de595d9
Gecko: e4139bd6f0ec
Version: 34.0 (2.1) 
Firmware Version: v188-1
User Agent: Mozilla/5.0 (Mobile; rv:34.0) Gecko/34.0 Firefox/34.0

Device: Flame 2.0
BuildID: 20141216034451
Gaia: d04710d5d643eeff5a6493aef92a1af672a2769c
Gecko: 72c9cb4628b3
Version: 32.0 (2.0) 
Firmware Version: v188-1
User Agent: Mozilla/5.0 (Mobile; rv:32.0) Gecko/32.0 Firefox/32.0
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(jmitchell)
Keywords: qawantedregression
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(jmitchell)
B2G Inbound Regression Window

Last Working

Device: Flame 2.2
BuildID: 20141211173954
Gaia: 1d9ae9cca415ad093beba9521c429350e1f2b14d
Gecko: 5288b15d22de
Version: 37.0a1 (2.2) 
Firmware Version: v188-1
User Agent: Mozilla/5.0 (Mobile; rv:37.0) Gecko/37.0 Firefox/37.0

First Broken 

Device: Flame 2.2
BuildID: 20141211183952
Gaia: 303a5f8707e35e00b90b0475f26ecb364bd7dc59
Gecko: 6e6e73793dec
Version: 37.0a1 (2.2) 
Firmware Version: v188-1
User Agent: Mozilla/5.0 (Mobile; rv:37.0) Gecko/37.0 Firefox/37.0

Last Working Gaia and First Broken Gecko
Issue DOES NOT occur here. 
Gaia: 1d9ae9cca415ad093beba9521c429350e1f2b14d
Gecko: 6e6e73793dec

Last Working Gecko and First Broken Gaia
Issue DOES occur here. 
Gaia: 303a5f8707e35e00b90b0475f26ecb364bd7dc59
Gecko: 5288b15d22de

Gaia Pushlog:

Possible cause: 
Bug 1103815 - [Settings][Dialog] internet_sharing/hotspot_settings sh…
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(jmitchell)
caused by patch to Bug 1103815 - Can you take a look EJ?
Blocks: 1103815
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(jmitchell) → needinfo?(ejchen)
QA Contact: ddixon
I'll check what's wrong here, so set myself as an assignee first.
Assignee: nobody → ejchen
Flags: needinfo?(ejchen)
Hi Jerry,

I did check codes from Gaia but there is nothing that would cause element not scrollable. Because this case only happens when you close a dialog when keyboard is open, is there any possibility that in such scenario, something went wrong in graphics ? 

Any idea / suggestion would be appreciated. Thanks !
Flags: needinfo?(hshih)
I just noticed that if we removed the CSS 

body[data-ready="true"] section[role="region"].dialog {
  transition: transform 0.5s, visibility 0.5s, opacity 0.5s;

from `settings/style/dialog.css` would make this problem not reproducible (I tried 3 ~ 5 times, may be a false alarm).

If this CSS would cause this problem, we have to check deeper about what's going on when this style applied with keyboard open.

Hope this information helps.
Triage: regression, blocking.
blocking-b2g: 2.2? → 2.2+
Duplicate of this bug: 1113741
After the transition animation, we might still have a pure transparent layer at the top.
Ethen will post the layer tree to show that. Maybe the scroll event is still passing to this top layer, not the setting page layer.
Flags: needinfo?(hshih)
Attached image Layer Tree Comparison
From the attached image we found that there is an additional ContainerLayer in the abnormal case. So the scroll events may be captured by the hidden layer.
Attached file patch on master
This is the patch trying to hide the layer.
Comment on attachment 8540077 [details] [review]
patch on master

Jerry, please try this patch to see whether this helps. I tried several times on my side and it seems that it works :)
Flags: needinfo?(hshih)
I tried this patch and the hidden ContainerLayer disappeared. So the patch works.
Flags: needinfo?(hshih)
Comment on attachment 8540077 [details] [review]
patch on master

Arthur, can you help review this patch ? Thanks !!
Attachment #8540077 - Flags: review?(arthur.chen)
Comment on attachment 8540077 [details] [review]
patch on master

r=me, thank you!
Attachment #8540077 - Flags: review?(arthur.chen) → review+
Thanks all ! Merged into Gaia/master :
Closed: 7 years ago
Resolution: --- → FIXED
[just a reminder]

Ethan, do you think we should open another bug that if there is one layer with "visibility: hidden; opacity: 0;" and cover on the screen, the click event would be propagated to the top while scroll event would not ?

If yes, please feel free to open a follow-up bug for it ! Thanks :)
Flags: needinfo?(etlin)
EJ, Could you provide a sample app that has a hidden layer above it? There should be a scrollable item and clickable items under that. Then we can do some test to make sure the problem.
Flags: needinfo?(etlin) → needinfo?(ejchen)
Hey Ethan, why not just use the Settings app without this patch ? [1]

This would be the easiest way to reproduce this bug and test the scroll / click events there ! WDYT ?

Flags: needinfo?(ejchen) → needinfo?(etlin)
Because if using setting page, there are several steps to reproduce the problem and not always 100%. And if we want others to join, we have to describe these steps and certain commit first. That is why I hope we can have a simple app for the event problem. For now I can use the setting page to do some test first.
I think the app is not 'must', just nice to have. :)
Flags: needinfo?(etlin)
Sure, it makes sense, let me set ni? on me to keep reminding me to make a simple app for this bug. For now, I will put more resources on 2.2 due time and will be back soon :)
Flags: needinfo?(ejchen)
Verified, the issue is fixed on 2.2 Flame

"Internet Sharing" page is scrollable 

"Flame 2.2

Device: Flame 2.2 Master (319mb)(Kitkat Base)(Full Flash)
Build ID: 20141229010215
Gaia: bdedbaf9f18a43c091ede770407d68d38582fe29
Gecko: 8850aa0f5332
Gonk: a814b2e2dfdda7140cb3a357617dc4fbb1435e76
Version: 37.0a1 (2.2)
Firmware Version: v188-1
User Agent: Mozilla/5.0 (Mobile; rv:37.0) Gecko/37.0 Firefox/37.0"
QA Whiteboard: [QAnalyst-Triage+] → [QAnalyst-Triage?]
Flags: needinfo?(ktucker)
This is my branch for testing used, but the most interesting stuff here is that we can scroll / click elements when overlay's CSS is "visibility: none; opacity: 0;". For me, this is a right behavior but we can't do the same thing in Settings app, not sure whether there are any special logics / CSS making this problem happen on Settings ...
Flags: needinfo?(ejchen)
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(ktucker)
Duplicate of this bug: 1114483
You need to log in before you can comment on or make changes to this bug.