Closed
Bug 718913
Opened 13 years ago
Closed 13 years ago
Tracking: Make Gaia IME fast
Categories
(Core :: General, defect)
Tracking
()
RESOLVED
WORKSFORME
People
(Reporter: cjones, Unassigned)
References
Details
The IME has a really cool feature where pressing and holding a character will present variations on the character, like accented characters. It works great but sliding ones finger around the character-selection screen has bad perceived responsiveness; the highlighted key lags way behind the finger. See more details below
http://groups.google.com/group/mozilla.dev.b2g/browse_thread/thread/ebfe982d881acb57/99301f8c21aabd5c?lnk=gst&q=dom+is+slow#99301f8c21aabd5c
There's at least one piece of low-hanging fruit to be plucked here, tracking the rest off this bug.
Reporter | ||
Comment 1•13 years ago
|
||
Tim, from the newsgroup thread
> > Sorry about missing the question: the step to reproduce on desktop is
> > simply hold down the left button of the mouse and move across the keys
> > on keyboard; the highlight should move with the cursor without delay.
>
> Thanks.
>
> So a profile on desktop shows that over half the time is painting. The
> rest is about as expected; nothing obvious jumping out.
>
> Would be good to get some data on the execution time for
> updateKeyHighlight so we have an idea of where time is being spent on
> the device.
Did you ever get any timings from updateKeyHighlight() on device?
Comment 2•13 years ago
|
||
(In reply to Chris Jones [:cjones] [:warhammer] from comment #1)
> Did you ever get any timings from updateKeyHighlight() on device?
No, will do when I get my phone back (I hit the MediaServer crashing bug)
But I can tell you right now that even if comment out the updateKeyHighlight function, the key active gradient (triggered by target.dataset.active and the .keyboard-key[data-active] {} css selector) is still slow.
Reporter | ||
Comment 3•13 years ago
|
||
Oh, gradients! Those along with transparency (and excessive invalidation/reflow) could be contributing to the slowdown.
Is the animation noticeably faster if you disable gradients and transparency? How about just disabling one or the other?
Comment 4•13 years ago
|
||
(In reply to Chris Jones [:cjones] [:warhammer] from comment #3)
> Oh, gradients! Those along with transparency (and excessive
> invalidation/reflow) could be contributing to the slowdown.
>
> Is the animation noticeably faster if you disable gradients and
> transparency? How about just disabling one or the other?
No, neither disable gradient nor transparency would make it any faster.
> Did you ever get any timings from updateKeyHighlight() on device?
The entire mouseover function usually take 2-3ms, 6ms as most occasionally.
![]() |
||
Comment 5•13 years ago
|
||
OK, so it sounds like work is happening async from that.
If you add a layout flush at the end of the mouseover, how long does the mouseover take? If it's still quick, then the issue is likely painting....
Comment 6•13 years ago
|
||
(In reply to Boris Zbarsky (:bz) from comment #5)
> OK, so it sounds like work is happening async from that.
>
> If you add a layout flush at the end of the mouseover, how long does the
> mouseover take? If it's still quick, then the issue is likely painting....
How do I do a "layout flush"? I am sorry I don't familiar with rendering engine terminologies...
Reporter | ||
Comment 7•13 years ago
|
||
It would be fabulous if someone could analyze what's slow in here. Testing on the sgs2 is best.
We already know of bug 718914, but something in the layout/rendering of the page is causing us not to keep up with the input events.
Depends on: 718914
Reporter | ||
Comment 8•13 years ago
|
||
s/page/IME keyboard/
Reporter | ||
Comment 9•13 years ago
|
||
The original perf problems are gone. Not sure what made them go away.
Let's file new bugs for new perf problems, or problems on different devices.
Status: NEW → RESOLVED
Closed: 13 years ago
Resolution: --- → WORKSFORME
You need to log in
before you can comment on or make changes to this bug.
Description
•