Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

It would be great to see this happen. Being curious, a couple years ago I read the ChromeOS touchpad driver ("CMT") to see why it worked so much better than other Linux distros. I don't have the reference handy but the short version is they bypass X11 due to the need for high frequency and subpixel scroll events. The highest fidelity technical answer is probably to bake scrolling into the UI toolkit and compositor, and you likely have to do this to match Mac / iOS performance. You can see Apple's approach reflected in the NSScrollview documentation [1] and elaborated in [2].

1. https://developer.apple.com/documentation/appkit/nsscrollvie...

2. https://gist.github.com/zwaldowski/8710fddc8b0b39d2c152#10_9...



Which components on a typical (say Ubuntu 16.04 desktop) are the toolkit and the compositor? GTK and Gnome?


With the caveat that I don't know a lot about Linux GUI infrastructure but I would bucket GTK and the X11 client library into "toolkit", and the compositor would live in the X server and probably to some extent in the display and HID drivers. If you wanted to dig in I would look at doing an analysis of everything between physical finger movement and that movement being reflected on the physical screen, and how to reduce the latency and jitter. Anything about the Firefox APZ implementation [1] and that John Carmack has written about VR latency [2] would give a feel for the problem.

1. https://hacks.mozilla.org/2016/02/smoother-scrolling-in-fire...

2. Original article is broken but this is good: https://danluu.com/latency-mitigation/




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: