[Window Management] Drop Down List menu transitions improperly with overlap when opening.

VERIFIED FIXED in Firefox OS v2.2

Status

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

People

(Reporter: Marty, Assigned: cwiiis)

Tracking

(Depends on: 1 bug, {regression})

unspecified
2.2 S11 (1may)
ARM
Gonk (Firefox OS)
regression
Dependency tree / graph

Firefox Tracking Flags

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

Details

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

Attachments

(2 attachments)

(Reporter)

Description

3 years ago
Created attachment 8588162 [details]
logcat-list-transition.txt

Description:
When opening large Drop Down list menus, such as Language, or City in the Settings app, the list will load in awkwardly, with the list appearing to take longer to load that the border UI around the list, creating a brief box-like appearance.  Additionally, depending on where the list is scrolled to when it is opened, the list will initially load in overlapping the header.

Repro Steps:
1) Update a Flame to 20150403010203
2) Open the Settings app
3) Navigate to 'Date & Time'
4) Open the City drop down menu
5) Scroll down the list, close, and then re-open the City drop down menu

Actual:
The menu opens improperly, with the list overlapping the header, and a different elements loading in at different times.

Expected:
The menu opens properly, without overlap.

Environmental Variables:
Device: Flame 3.0 (319MB)(Full Flash)
Build ID: 20150403010203
Gaia: 7969b367a7da62877c3a24a26d3cb5fda89d766c
Gecko: 70a113676b21
Gonk: b83fc73de7b64594cd74b33e498bf08332b5d87b
Version: 40.0a1 (3.0)
Firmware Version: v18D-1
User Agent: Mozilla/5.0 (Mobile; rv:40.0) Gecko/40.0 Firefox/40.0

Repro frequency: 8/8
See attached: Logcat, Video (Url)
(Reporter)

Comment 1

3 years ago
This issue DOES occur on Flame 2.2
The menu will load in slowly and overlap the header, although the effect is not as noticeable as it is in the 3.0 branch.

Environmental Variables:
Device: Flame 2.2 (319MB)(Full Flash)
Build ID: 20150403002503
Gaia: 022eeb91197ba4a9adfd67bd6db5aa03cc69eb31
Gecko: 77fdc6fbcae9
Gonk: ebad7da532429a6f5efadc00bf6ad8a41288a429
Version: 37.0 (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 menu opens properly, without overlap.

Environmental Variables:
Device: Flame 2.1 (319MB)(Full Flash)
Build ID: 20150403001204
Gaia: 4e7d880defb83c25b49462479c02b3e64d21f421
Gecko: e76f5e7a264d
Gonk: b83fc73de7b64594cd74b33e498bf08332b5d87b
Version: 34.0 (2.1)
Firmware Version: v18D-1
User Agent: Mozilla/5.0 (Mobile; rv:34.0) Gecko/34.0 Firefox/34.0
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(pbylenga)
Regression of a core feature.

Requesting a window.
blocking-b2g: --- → 2.2?
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(pbylenga)

Updated

3 years ago
blocking-b2g: 2.2? → 2.2+
Keywords: qawanted, regressionwindow-wanted
QA Contact: ychung

Updated

3 years ago
Component: Gaia::System::Window Mgmt → Graphics
Product: Firefox OS → Core
Mozilla-inbound Regression Window:

Last Working Environmental Variables:
Device: Flame 3.0
BuildID: 20150201170935
Gaia: 740c7c2330d08eb9298597e0455f53d4619bbc1a
Gecko: 231a8c61b49f
Version: 38.0a1 (3.0) 
Firmware Version: v18D
User Agent: Mozilla/5.0 (Mobile; rv:38.0) Gecko/38.0 Firefox/38.0

First Broken Environmental Variables:
Device: Flame 3.0
BuildID: 20150201174135
Gaia: 740c7c2330d08eb9298597e0455f53d4619bbc1a
Gecko: bcefc7d8d885
Version: 38.0a1 (3.0) 
Firmware Version: v18D
User Agent: Mozilla/5.0 (Mobile; rv:38.0) Gecko/38.0 Firefox/38.0

Last Working Gaia First Broken Gecko: Issue DOES reproduce 
Gaia: 740c7c2330d08eb9298597e0455f53d4619bbc1a
Gecko: bcefc7d8d885

First Broken Gaia Last Working Gecko: Issue does NOT reproduce
Gaia: 740c7c2330d08eb9298597e0455f53d4619bbc1a
Gecko: 231a8c61b49f

http://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=231a8c61b49f&tochange=bcefc7d8d885

Caused by bug 950934
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(ktucker)
Keywords: qawanted, regressionwindow-wanted
QA Contact: ychung
Kartikaya or Botond, can you take a look at this please? Looks like the work done for bug 950934 might be the culprit here.
Blocks: 950934
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(ktucker)
Flags: needinfo?(bugmail.mozilla)
Flags: needinfo?(botond)
Whiteboard: [3.0-Daily-Testing] → [3.0-Daily-Testing], gfx-noted

Comment 5

3 years ago
Peter, could you help investigate this?
Flags: needinfo?(pchang)
Taking out the line at [1] fixes this. I think 0.5s for this animation is too long anyway (didn't somebody say on dev-gaia that they should be capped at 200ms?). I'm not really sure why bug 950934 regressed this but perhaps the transition wasn't actually taking effect before?

[1] https://github.com/mozilla-b2g/gaia/blob/b570198ace4bcb53f1d4ea5884894bcffa936c8d/apps/system/style/value_selector/value_selector.css#L8
Component: Graphics → Gaia::System
Flags: needinfo?(bugmail.mozilla)
Flags: needinfo?(botond)
Product: Core → Firefox OS

Comment 7

3 years ago
Clear ni based on comment 6.
Flags: needinfo?(pchang)
Chris, can you take a look here?
Flags: needinfo?(chrislord.net)
Whiteboard: [3.0-Daily-Testing], gfx-noted → [3.0-Daily-Testing], gfx-noted, systemsfe

Comment 9

3 years ago
Hi Chris, do you have findings here? Thanks!
Flags: needinfo?(chrislord.net)
(Assignee)

Comment 10

3 years ago
Will take a look.
Assignee: nobody → chrislord.net
Status: NEW → ASSIGNED
Flags: needinfo?(chrislord.net)
(Assignee)

Comment 11

3 years ago
This looks very much like a gfx bug to me, but I'm looking into it - we may well be able to work around it all the same.
(Assignee)

Comment 12

3 years ago
Can confirm this seems to be a gfx bug, I suppose related to elements with a displayport (so possibly low-precision tiles/progressive rendering related? Will check if turning those off fixes it), and that we can work around it by just hiding overflow during the transition.

Patch and further testing incoming.
(Assignee)

Comment 13

3 years ago
Can confirm that disabling progressive paint fixes this. Disabling low-precision tiles on its own (and leaving progressive paint enabled) also appears to fix this. I expect this is another manifestation of bug 1083119.

In the short term, let's work around this (as it's easy and more performant anyway).
Depends on: 1083119
Created attachment 8596564 [details] [review]
[gaia] Cwiiis:bug1151081-buggy-value-selector-transition > mozilla-b2g:master
(Assignee)

Comment 15

3 years ago
Comment on attachment 8596564 [details] [review]
[gaia] Cwiiis:bug1151081-buggy-value-selector-transition > mozilla-b2g:master

This works around the gfx issue and also fixes that the transition wasn't playing the first time the dialog was triggered.
Attachment #8596564 - Flags: review?(alive)
Comment on attachment 8596564 [details] [review]
[gaia] Cwiiis:bug1151081-buggy-value-selector-transition > mozilla-b2g:master

One another raf trick from Chris.
Attachment #8596564 - Flags: review?(alive) → review+
(Assignee)

Comment 17

3 years ago
Heh :) I'm not keen on these nested rafs, though they do the job - I think in v3, we should move towards using css animations for these kinds of things instead of transitions...
Keywords: checkin-needed

Updated

3 years ago
Keywords: checkin-needed

Updated

3 years ago
Status: ASSIGNED → RESOLVED
Last Resolved: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → 2.2 S11 (1may)
(Assignee)

Comment 19

3 years ago
Comment on attachment 8596564 [details] [review]
[gaia] Cwiiis:bug1151081-buggy-value-selector-transition > mozilla-b2g:master

[Approval Request Comment]
[Bug caused by] (feature/regressing bug #):
[User impact] if declined: Really awful/buggy-looking transition whenever you open a scrollable value-selector in the Settings app.
[Testing completed]: Manual testing completed
[Risk to taking this patch] (and alternatives if risky): Low risk
[String changes made]: None
Attachment #8596564 - Flags: approval-gaia-v2.2?

Updated

3 years ago
Attachment #8596564 - Flags: approval-gaia-v2.2? → approval-gaia-v2.2+
v2.2: https://github.com/mozilla-b2g/gaia/commit/7c2719a145eabcf6f81c1c5ff85f805fcbd653ef
status-b2g-v2.2: affected → fixed
status-b2g-master: affected → fixed
Keywords: verifyme
This issue is verified fixed on Flame Master and 2.2.

Result: No visual issues are found while opening the dropdown menu any more.

Environmental Variables:
Device: Flame 3.0 (KK, 319mb, full flash)
Build ID: 20150501010203
Gaia: 759a1f935a6a81c32ad66e39a6353b334dfa4f91
Gecko: 7723b15ea695
Gonk: b83fc73de7b64594cd74b33e498bf08332b5d87b
Version: 40.0a1 (3.0)
Firmware Version: v18D-1
User Agent: Mozilla/5.0 (Mobile; rv:40.0) Gecko/40.0 Firefox/40.0


Environmental Variables:
Device: Flame 2.2 (KK, 319mb, full flash)
Build ID: 20150501002503
Gaia: 209bf4d6fcb16ea6834b8bd86976c012e5914fe6
Gecko: 79e7065ceefa
Gonk: a9f3f8fb8b0844724de32426b7bcc4e6dc4fa2ed
Version: 37.0 (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)
Keywords: verifyme
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.