Closed
Bug 900990
Opened 12 years ago
Closed 11 years ago
Do not attach [mouse|touch]mode events if events target is not a scrollable area
Categories
(Firefox OS Graveyard :: Gaia::Homescreen, defect)
Firefox OS Graveyard
Gaia::Homescreen
Tracking
(blocking-b2g:-)
RESOLVED
WONTFIX
| blocking-b2g | - |
People
(Reporter: vingtetun, Unassigned)
Details
(Keywords: perf)
Attachments
(1 file, 1 obsolete file)
|
19.12 KB,
patch
|
kats
:
review+
|
Details | Diff | Splinter Review |
The scrolling in the homescreen is an app based custom panning but some platform code is still running and consume a few fps.
Calling evt.preventDefault() on the touchstart event in grid.js should shut up the platform code. Sadly this have some side effects like preventing the context menu event to fire for example, or killing focus switch :)
So someone needs to dig into the code and fix the possible regressions.
| Reporter | ||
Comment 1•12 years ago
|
||
This does ask the platform to be quiet. And it also creates regressions! \o/
| Reporter | ||
Comment 2•12 years ago
|
||
Asking koi? for performance bug on the homescreen
blocking-b2g: --- → koi?
Comment 3•12 years ago
|
||
I would like to know what that patch does, I mean, we are sure that it disables contextmenu and click events. Will it land on master?
Comment 4•12 years ago
|
||
We shouldn't block on performance bugs. Lets go through the approval process once it's done.
blocking-b2g: koi? → -
Comment 5•12 years ago
|
||
(In reply to Gregor Wagner [:gwagner] from comment #4)
> We shouldn't block on performance bugs. Lets go through the approval process
> once it's done.
Well, we shouldn't block on general perf bugs, but we should block on perf regressions impacting us maintaining target certification performance metrics. Agreed on this bug not blocking though.
| Reporter | ||
Comment 6•12 years ago
|
||
(In reply to Cristian Rodriguez (:crdlc) from comment #3)
> I would like to know what that patch does, I mean, we are sure that it
> disables contextmenu and click events. Will it land on master?
Cristian this patch is just a work in progress right now. Feel free to finish it. Basically this patch prevent the platform to intercept some of the touch events. Even if the platform does nothing with them in our case there is still some code triggers all the time that is useless here.
The relevant code is http://mxr.mozilla.org/mozilla-central/source/dom/browser-element/BrowserElementPanning.js#68
Comment 7•12 years ago
|
||
I feel free but I don't have more time to take more bugs and reviews :( Sorry
| Reporter | ||
Updated•12 years ago
|
Summary: Call evt.preventDefault on a touchstart on grid.js to avoid BrowserElementPanning.js to be running → Do not attach [mouse|touch]mode events if events target is not a scrollable area
| Reporter | ||
Comment 8•12 years ago
|
||
Fabrice, I fix the issue directly in BrowserElementPanning.js by not listening [mouse|touch[ if those are not needed (if the area is not scrollable). I also removed some dead code since subframes are directly handle by APZC now.
Attachment #785037 -
Attachment is obsolete: true
Attachment #819507 -
Flags: review?(fabrice)
| Reporter | ||
Comment 9•12 years ago
|
||
Comment on attachment 819507 [details] [diff] [review]
no.move.event.listener.patch
Asking an additional review for the removal of the relevant TabChild.cpp code.
Attachment #819507 -
Flags: review?(bugmail.mozilla)
Comment 10•12 years ago
|
||
Comment on attachment 819507 [details] [diff] [review]
no.move.event.listener.patch
Review of attachment 819507 [details] [diff] [review]:
-----------------------------------------------------------------
It would be good to push this to try and do a bunch of Marionette runs because my previous attempt to get rid of this code (along with other stuff) in bug 906877 was backed out for that reason.
Attachment #819507 -
Flags: review?(bugmail.mozilla) → review+
Comment 11•12 years ago
|
||
Vivien, do you have a test app with a subframes? Also please push to try.
| Reporter | ||
Comment 13•11 years ago
|
||
(In reply to Fabrice Desré [:fabrice] from comment #12)
> Do we still need that Vivien?
I need to double check with APZC. I guess that it will be useless once we will be able to pan the homescreen with APZC directly. Also I plan to move some of the BrowserElementPanning.js code into TabChild.cpp so maybe this bug does not worth working too much on it yet.
Status: NEW → RESOLVED
Closed: 11 years ago
Flags: needinfo?(21)
Resolution: --- → WONTFIX
Updated•11 years ago
|
Attachment #819507 -
Flags: review?(fabrice)
You need to log in
before you can comment on or make changes to this bug.
Description
•