Closed Bug 1016283 Opened 11 years ago Closed 10 years ago

[Keyboard][V2.0] Flash of black happens on keyboard when you quickly switch built-in keyboard

Categories

(Firefox OS Graveyard :: Gaia::System::Input Mgmt, defect)

ARM
Gonk (Firefox OS)
defect
Not set
normal

Tracking

(b2g-v2.0 wontfix, b2g-v2.1 verified, b2g-v2.2 verified)

VERIFIED FIXED
2.0 S4 (20june)
Tracking Status
b2g-v2.0 --- wontfix
b2g-v2.1 --- verified
b2g-v2.2 --- verified

People

(Reporter: whsu, Assigned: timdream)

References

Details

(Whiteboard: [FT:System-Platform][p=1], [2.0-flame-test-run-2])

Attachments

(2 files)

Attached video WP_20140527_016.mp4
* Description: This is a regression bug. V1.4 build doesn't have this problem. Quickly switch built-in keyboard, you will see the twinkle on keyboard. Attach the demo video.(WP_20140527_016.mp4) * Reproduction steps: 1. Enable many built-in keyboard layouts 2. Launch the message app 3. Tap "Pencil" icon to edit a message 4. Tap message field 5. After keyboard pops up, quickly tap the "Globe" key to switch keyboard layout * Expected result: You can smoothly switch to the other keyboard layouts * Actual result: Twinkle happens on keyboard * Reproduction build: V2.0 (Buri) - Gaia f3b5d74dd3428c89cab06db734c62f3c9dbb8c4d - Gecko https://hg.mozilla.org/mozilla-central/rev/e86a0d92d174 - BuildID 20140525160203 - Version 32.0a1
Whiteboard: [FT:System-Platform], [3rd-party-keyboard]
Assignee: nobody → timdream
Status: NEW → ASSIGNED
I assume "Twinkle" means flash of black.
Summary: [Keyboard][V2.0] Twinkle happens on keyboard when you quickly switch built-in keyboard → [Keyboard][V2.0] Flash of black happens on keyboard when you quickly switch built-in keyboard
Keywords: regression
I am having trouble identifying the regression window of this. I thought this was due to my recent keyboard app change but it does to be the case.
This needs to be a blocker in order to get a window on it, but I'm not sure I would block on this issue.
I am now suspect this is due to the fact we setVisible(false) and setVisible(true) in the same function loop in the input management code, so, switching components.
Component: Gaia::Keyboard → Gaia::System::Input Mgmt
Whiteboard: [FT:System-Platform], [3rd-party-keyboard] → [FT:System-Platform]
I can now verify this is because we setVisible(false) and setVisible(true) the same frame in the same function loop, when we switch between layouts of the same app. Removing this line https://github.com/mozilla-b2g/gaia/blob/f60210825f0840f95819f47a878b165019f232e9/apps/system/js/keyboard_manager.js#L678 will get rid of the flash. This also means this bug is not a "regression" as the symptom only visible on mid-end phones. To properly fix this I think we need a better keyboard frame life cycle management. John, I asked you to study input management; do you think you understand this part of code well enough to address this? If not I can continuing working on this.
Flags: needinfo?(jlu)
Keywords: regression
Nope, I was distracted by several new lockscreen visual refresh bugs and haven't had time to well study the codes yet.
Flags: needinfo?(jlu)
Whiteboard: [FT:System-Platform] → [FT:System-Platform][p=1]
Comment on attachment 8438324 [details] [review] mozilla-b2g:master PR#20353 I decide to do a quick fix first before working on something else because this is annoying enough. Sadly this make keyboard_manager.js a little bigger than before. I also didn't add any tests because that function has no tests at first place.
Attachment #8438324 - Flags: review?(rlu)
Target Milestone: --- → 2.0 S4 (20june)
Comment on attachment 8438324 [details] [review] mozilla-b2g:master PR#20353 r=me. Thanks.
Attachment #8438324 - Flags: review?(rlu) → review+
Status: ASSIGNED → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Thanks Tim! I cannot reproduce this bug on the latest V2.1(Master) build. * Build information: - Gaia 83392cae2c964fa6f8a97ac3fc515c3f94ef3c1c - Gecko https://hg.mozilla.org/mozilla-central/rev/c4cf1181993e - BuildID 20140617160234 - Version 33.0a1
Status: RESOLVED → VERIFIED
This issue is still occurring on the Flame v2.0 MOZ ril since the fix was only uplifted to the v2.1 master. Environmental Variables: Device: Flame 2.0 MOZ ril Build ID: 20140623000201 Gaia: 729f214b887ce8efe7d870145d31acb2c6427817 Gecko: 117ba3eda4d2 Version: 32.0a2 (2.0) Firmware Version: v121-2 User Agent: Mozilla/5.0 (Mobile; rv:32.0) Gecko/32.0 Firefox/32.0 Tapping the language layout button to change the language of the keyboard results in the keyboard rapidly flashing in and out of view. User is able to see the background momentarily, rather than the keyboard remaining visible and transitioning smoothly.
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(ktucker)
Whiteboard: [FT:System-Platform][p=1] → [FT:System-Platform][p=1], [2.0-flame-test-run-2]
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(ktucker)
Let's change the status to re-opened to reflect that fact that the patch has been backed out.
Status: VERIFIED → REOPENED
Resolution: FIXED → ---
QA Whiteboard: [QAnalyst-Triage+] → [QAnalyst-Triage+][lead-review+]
We decide to keep the patch in master and address regression in bug 1031505. master: https://github.com/mozilla-b2g/gaia/commit/d5b9c54acdd948f39e8db714db174d90ff2d7b9e
Status: REOPENED → RESOLVED
Closed: 11 years ago10 years ago
Resolution: --- → FIXED
[Blocking Requested - why for this release]: Dear Tim Guan-tin Chien, When will be fixed on v2.0?
blocking-b2g: --- → 2.0?
This issue is verified on Flame 2.1. Result: The keyboard changes smoothly without showing the background. Device: Flame 2.1 (319mb)(Kitkat Base)(Full Flash) BuildID: 20141029001202 Gaia: eb0aab0f13c78c7ac378ad860e865c4b6eaf669f Gecko: 318019f80a8e Gonk: 48835395daa6a49b281db62c50805bd6ca24077e Version: 34.0 (2.1) Firmware: V188 User Agent: Mozilla/5.0 (Mobile; rv:34.0) Gecko/34.0 Firefox/34.0 ================================== 2.0 is marked as wontfix.
Status: RESOLVED → VERIFIED
QA Whiteboard: [QAnalyst-Triage+][lead-review+] → [QAnalyst-Triage?][lead-review+]
Flags: needinfo?(ktucker)
QA Whiteboard: [QAnalyst-Triage?][lead-review+] → [QAnalyst-Triage+][lead-review+]
Flags: needinfo?(ktucker)
Hi Wesly, From product point of view, this bug must be fixed in 2.0. It's not good that end users suffer it continuously because 2.1/2.2 is a long way to go. Thanks to push patch uplift.
Flags: needinfo?(wehuang)
[Triage] after discussion, pls partner to take patch, but Triage only nom. to 2.2 instead of 2.0.
blocking-b2g: 2.0? → 2.2?
Flags: needinfo?(wehuang)
(In reply to Wesly Huang from comment #21) > [Triage] after discussion, pls partner to take patch, but Triage only nom. > to 2.2 instead of 2.0. Thanks, will take and verify the patch then feedback.
This issue is verified on Flame 2.2. Result: The keyboard changes smoothly without showing the background. Device: Flame 2.2 (319mb, KK, Full Flash) BuildID: 20141107040206 Gaia: 779f05fead3d009f6e7fe713ad0fea16b6f2fb31 Gecko: 64f4392d0bdc Gonk: 48835395daa6a49b281db62c50805bd6ca24077e Version: 36.0a1 (2.2 Master) Firmware: V188 User Agent: Mozilla/5.0 (Mobile; rv:36.0) Gecko/36.0 Firefox/36.0
QA Whiteboard: [QAnalyst-Triage+][lead-review+] → [QAnalyst-Triage?][lead-review+]
Flags: needinfo?(ktucker)
QA Whiteboard: [QAnalyst-Triage?][lead-review+] → [QAnalyst-Triage+][lead-review+]
Flags: needinfo?(ktucker)
(In reply to Wesly Huang from comment #21) > [Triage] after discussion, pls partner to take patch, but Triage only nom. > to 2.2 instead of 2.0. Not a 2.2 blocker since the regression happens on 2.0.
blocking-b2g: 2.2? → ---
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: