Closed
Bug 814778
Opened 13 years ago
Closed 13 years ago
[Gaia::Keyboard] Keyboard tooltips render slowly and sometimes don't render at all
Categories
(Firefox OS Graveyard :: Gaia::Keyboard, defect, P1)
Tracking
(blocking-basecamp:+, firefox18 fixed, firefox19 fixed, firefox20 fixed)
VERIFIED
FIXED
blocking-basecamp | + |
People
(Reporter: pla, Assigned: cjones)
References
Details
(Keywords: perf, regression, ux-trust, Whiteboard: perf, ux-trust)
Attachments
(4 files, 1 obsolete file)
522.94 KB,
video/mp4
|
Details | |
656.27 KB,
video/mp4
|
Details | |
9.39 KB,
patch
|
dbaron
:
review+
|
Details | Diff | Splinter Review |
5.47 KB,
patch
|
Details | Diff | Splinter Review |
What makes it feel slow/broken?
There is a noticeable delay between when a user taps a key on the keyboard and when the large blue tooltip containing that letter is rendered. Sometimes it doesn't render at all (it feels like 1/4 - 1/3 of the time). The faster I type, the more often it will not render.
Did it prevent you from doing what you wanted? Why?
This prevents me from being confident in what I have typed. Sometimes I think I haven't typed a certain character because the tooltip didn't show up. It also slows down my typing overall due to making more mistakes or just not being sure what I have typed was registered.
The responsiveness needs to improve.
How does this make you feel?
[ ] :) I feel happy about it
[ ] :| Meh
[ ] :( I'm upset
[X] >:O I'm angry
Device: Unagi, Nov. 22 Nightly.
Details:
There should be no delay at all in this crucial visual feedback to the user on such an often used component of the system. See videos showing the difference between B2G and our reference platform (Otoro running ICS).
Bonus: can you attach a video of the problem?
Yes
Keywords: ux-trust
Summary: [Gaia::Keyboard][perf][uxtrust] Keyboard tooltips render slowly and sometimes don't render at all → [Gaia::Keyboard][perf][ux-trust] Keyboard tooltips render slowly and sometimes don't render at all
Whiteboard: perf, uxtrust → perf, ux-trust
Updated•13 years ago
|
Priority: -- → P1
Summary: [Gaia::Keyboard][perf][ux-trust] Keyboard tooltips render slowly and sometimes don't render at all → [Gaia::Keyboard] Keyboard tooltips render slowly and sometimes don't render at all
Nominating for basecamp-blocking+.
Typing quickly and accurately is a core interaction that must be as performant as possible, and user feedback when typing is an essential component.
blocking-basecamp: --- → ?
Assignee | ||
Comment 4•13 years ago
|
||
This is just atrociously bad now, to the point where we need to either fix this or drop the "tooltips" for being too broken. bb+ based on that.
mattwoodrow/gal, one of you guys want to poke? Turn on paint flashing and prepare for a big unpleasant surprise! ;)
blocking-basecamp: ? → +
Assignee | ||
Comment 5•13 years ago
|
||
I should add that perf has regressed twice in the last couple of weeks. I suspect the more recent regression is the switch to using a mozpasspointerevents iframe for the keyboard.
Comment 6•13 years ago
|
||
Clint, I can't begin to explain how extremely urgently we need this automated to measure performance and avoid regressions. When can this be stood up? We really, really, desperately need this. Can your team help?
Comment 7•13 years ago
|
||
Two bugs here. Please file a separate bug with STR if tool tips don't show up. This bug will be about performance only.
Updated•13 years ago
|
Flags: needinfo?(ctalbert)
Comment 8•13 years ago
|
||
We are still using -moz-element for the keyboard.
Invalidation log and stack trace to what caused the biggest invalidation:
http://pastebin.mozilla.org/1964898
Lines 2-27 are the tooltip being added, these look like reasonable invalidations.
28-31 are the changed text as a result of typing.
32-32 is us detecting that the -moz-element content of the background (keyboard) has changed, and invalidate all of it. The stack trace for the bottom is how we detected this change.
Lines 38-786 are painting the keyboard.
Assignee | ||
Comment 9•13 years ago
|
||
(In reply to Andreas Gal :gal from comment #7)
> Two bugs here. Please file a separate bug with STR if tool tips don't show
> up. This bug will be about performance only.
The tool tips do show up once in a while. We're just repainting so slowly that they're not consistently appearing.
Assignee | ||
Comment 10•13 years ago
|
||
(In reply to Matt Woodrow (:mattwoodrow) from comment #8)
> We are still using -moz-element for the keyboard.
Ohnoes, I thought Vivien landed a patch to do away with that.
Flags: needinfo?(21)
Comment 11•13 years ago
|
||
I was just looking at a few random bugs and noticed that in B2G desktop it appears to only repaint a small area around each key, but in the phone it will repaint the entire keyboard. Just noting that in case it's helpful!
Comment 12•13 years ago
|
||
I started bisecting this. Reverting Gecko to 21e653481845 is *so much* better. And it only repaints a small area around the tooltip.
Updated•13 years ago
|
Assignee: nobody → ttaubert
Status: NEW → ASSIGNED
OS: Mac OS X → Gonk (Firefox OS)
Hardware: x86 → ARM
Comment 14•13 years ago
|
||
Settings font.size.inflation.minTwips to 0 makes the keyboard usable again.
Comment 15•13 years ago
|
||
Assigning to cjones because he should know best how to fix that.
Assignee: ttaubert → jones.chris.g
Assignee | ||
Comment 16•13 years ago
|
||
WTF! Nice find.
Comment 17•13 years ago
|
||
(In reply to Chris Jones [:cjones] [:warhammer] from comment #10)
> (In reply to Matt Woodrow (:mattwoodrow) from comment #8)
> > We are still using -moz-element for the keyboard.
>
> Ohnoes, I thought Vivien landed a patch to do away with that.
I reverted it because the mozpasspointerevents changes did not make it on beta. I need to reland that :/
Flags: needinfo?(21)
Comment 18•13 years ago
|
||
We have our own b2g branch now. Vivien, who is landing mozpasspointerevents?
Assignee | ||
Comment 19•13 years ago
|
||
Fixes the unfortunate thinko and gets us back to previous levels of slow. We want to take this patch for b2g regardless of the regression because we always font inflation disabled for master-process UI.
I owe filing a followup to diagnose why font inflation hurts the keyboard performance so badly.
Attachment #686205 -
Flags: review?(dbaron)
Assignee | ||
Comment 20•13 years ago
|
||
After this patch, I still see a relatively unresponsive keyboard in the SMS app, however I suspect that's in large part due to bug 812987.
That said, we still have room to improve.
Comment on attachment 686205 [details] [diff] [review]
Disable font inflation for the b2g master process
r=dbaron, though I'd probably prefer the naming as "disabled in master process", which I think could be accomplished with an s/isabledMasterProcess/isabledInMasterProcess/g on the patch file.
Attachment #686205 -
Flags: review?(dbaron) → review+
Assignee | ||
Comment 22•13 years ago
|
||
(In reply to David Baron [:dbaron] from comment #21)
> Comment on attachment 686205 [details] [diff] [review]
> Disable font inflation for the b2g master process
>
> r=dbaron, though I'd probably prefer the naming as "disabled in master
> process", which I think could be accomplished with an
> s/isabledMasterProcess/isabledInMasterProcess/g on the patch file.
Done.
Assignee | ||
Comment 23•13 years ago
|
||
Assignee | ||
Comment 24•13 years ago
|
||
Let's file a new bug to rerun the performance analysis after this change merges around and consider further fixes in followups.
Comment 25•13 years ago
|
||
Andreas, Ted has the app startup and FPS measurements nearly ready and we should be able to deploy them by the end of the week; however, I'm at a loss as to how that would have helped capture this specific regression.
Flags: needinfo?(ctalbert)
Comment 26•13 years ago
|
||
The original patch doesn't apply on beta, here's one that does.
Comment 27•13 years ago
|
||
Oops, forgot to include the header. Here's the correct version.
Attachment #686489 -
Attachment is obsolete: true
Comment 28•13 years ago
|
||
Comment on attachment 686205 [details] [diff] [review]
Disable font inflation for the b2g master process
[Approval Request Comment]
Bug caused by (feature/regressing bug #): bug 803908
User impact if declined: *Very* slow keyboad, mostly unusable.
Testing completed (on m-c, etc.): Manual tests look good.
Risk to taking this patch (and alternatives if risky): Low risk, introduces a new pref that disables the feature introduced by bug 803908 for the master process.
String or UUID changes made by this patch: None.
Attachment #686205 -
Flags: approval-mozilla-beta?
Attachment #686205 -
Flags: approval-mozilla-aurora?
Comment 29•13 years ago
|
||
Comment on attachment 686205 [details] [diff] [review]
Disable font inflation for the b2g master process
It's bb+, we don't need to ask for approval.
Attachment #686205 -
Flags: approval-mozilla-beta?
Attachment #686205 -
Flags: approval-mozilla-aurora?
Comment 30•13 years ago
|
||
Comment 31•13 years ago
|
||
(In reply to Andreas Gal :gal from comment #18)
> We have our own b2g branch now. Vivien, who is landing mozpasspointerevents?
This is now on all branches. The keyboard/iframe fix is back on gaia-master.
Comment 32•13 years ago
|
||
Status: ASSIGNED → RESOLVED
Closed: 13 years ago
Resolution: --- → FIXED
Comment 33•13 years ago
|
||
Reviewed and verified on "Unagi" device
BuildId:201301303070201
No delay between when a user taps a key on the keyboard and when the large blue tooltip containing that letter is rendered.
Status: RESOLVED → VERIFIED
You need to log in
before you can comment on or make changes to this bug.
Description
•