Open
Bug 972238
Opened 11 years ago
Updated 2 years ago
Contenteditable elements are completely repainted whenever the text changes
Categories
(Core :: Layout: Form Controls, defect, P3)
Tracking
()
NEW
People
(Reporter: mchang, Unassigned)
References
Details
(Keywords: perf, Whiteboard: [c=effect p=4 s= u=])
Attachments
(2 files)
Potential optimization. At the moment, when the new keys are typed, we are painting the whole input field + the send button as shown in the video. On a tarako device, while typing, we use up to ~45% cpu usage. Here's a profile:
https://people.mozilla.org/~bgirard/cleopatra/#report=b51d33763d1396b42f7a2830e0fe2bc302dae36a
Reporter | ||
Updated•11 years ago
|
blocking-b2g: --- → 1.3T?
Comment 2•11 years ago
|
||
We're using a contenteditable div, so that could be the reason?
Also, we know we have some bad patterns (I mean: reflows) due to history and the UX complexity, and we hope that bug 949457 can help with this.
Comment 3•11 years ago
|
||
To be clearer, I think any work on the composer should start by fixing bug 949457.
Updated•11 years ago
|
Priority: -- → P1
Whiteboard: [c=handeye p= s= u=] → [c=effect p= s= u=]
Comment 4•11 years ago
|
||
Hi mason, do we know if this is going to improve the keyboard performance much more than what we have done last week in Taipei?
Flags: needinfo?(mchang)
Reporter | ||
Comment 5•11 years ago
|
||
It might only help in the SMS app. And as Julien stated in comment 3, it will probably involve a lot of work to fix this bug as the composer needs a lot of work. I think it's too risky to block on as the keyboard is acceptable on Tarako as of last week.
Flags: needinfo?(mchang)
Reporter | ||
Updated•11 years ago
|
Priority: P1 → P2
Reporter | ||
Comment 7•11 years ago
|
||
Just retested with 949457 landed, and we still repaint the whole input field while typing just letters. This is still an issue.
Comment 8•11 years ago
|
||
Is it happening with other apps? Is it because we use contenteditable? What happens on Desktop?
Reporter | ||
Comment 9•11 years ago
|
||
Tested on desktop and browser app. Paint flashing occurs on the input field for both doh. Good question though.
Comment 10•11 years ago
|
||
picking this up to go with my other keyboard work.
Assignee: nobody → dhuseby
Updated•11 years ago
|
Whiteboard: [c=effect p= s= u=] → [c=effect p=4 s= u=]
Updated•10 years ago
|
Assignee: huseby → nobody
Updated•9 years ago
|
Flags: needinfo?(felash)
Comment 11•9 years ago
|
||
STR:
0. Turn on "nglayout.debug.paint_flashing" in about:config
1. Open the file in Firefox.
2. Put the cursor at the end of the contenteditable zone.
3. Type things without typing "enter" (you can enter "spaces" though)
=> notice how the whole contenteditable is always rerendered even that the previous words didn't change at all and so there should be no reason to rerender it. Actually we should not need to rerender anything that is more than 1 line above what is currently edited.
Flags: needinfo?(felash)
Comment 12•9 years ago
|
||
I understand _why_ it's doing this but this could be optimized for contenteditable elements. This was an issue in the SMS app in Firefox OS because users rarely used new lines, and the available cpu power was low.
Moving to Core::Editor (maybe it should be in Layout or Paint though, to better manage invalidation ?)
Component: Gaia::SMS → Editor
Product: Firefox OS → Core
Summary: The Gaia Keyboard paints the whole input field when typing → Contenteditable elements are completely repainted whenever the text changes
Comment 13•9 years ago
|
||
<textarea> also experiences the same issue.
Component: Editor → Layout: Form Controls
Comment 14•6 years ago
|
||
Moving to p3 because no activity for at least 1 year(s).
See https://github.com/mozilla/bug-handling/blob/master/policy/triage-bugzilla.md#how-do-you-triage for more information
Priority: P2 → P3
Updated•2 years ago
|
Severity: normal → S3
You need to log in
before you can comment on or make changes to this bug.
Description
•