Once we enable APZ on OS X, it may be a good idea to handle input events on a thread other than the main thread. This will give us better responsiveness with scrolling. However we have to either move all positioned events or none of them, because if we have any async scroll offset then that will need to be taken into account for future events. Doing something like moving the trackpad events off-main-thread but leaving mouse-click events on the main thread can result in the click going to the wrong position. Currently we have a little bit of code to move trackpad-based panning off the main thread, hidden behind the pref layers.async-pan-zoom.separate-event-thread which is disabled by default. If we decide to WONTFIX this bug then we should delete that pref and the code conditioned on it. Otherwise we should move more stuff under that pref and enable it. Filing this as a metabug to track this decision and work that might result.
Actually, recent versions of OS X already do some (native) event processing on a secondary thread. When I have time (this week or next?) I'll dig around for some references.
Created attachment 8608165 [details] Some IRC discussion on the topic mstange had some thoughts on this which we discussed briefly on IRC today.
You need to log in before you can comment on or make changes to this bug.