2 ms·
This is because Synaptics is silently handling capacitative multitouch events from the trackpad and generating a synthetic stream of mouse button 4/5 (scroll wh
by exikyut 8y ago
This is because Synaptics is silently handling capacitative multitouch events from the trackpad and generating a synthetic stream of mouse button 4/5 (scroll wheel) events (with haptic decay and everything).
As soon as CTRL accompanies the scroll wheel events... woops.
This is primarily an input layer design failure:
- scroll up/down is not its own event, built out in such a way that the "CTRL+" could be selectively ignored
- Toolkits don't separate input sources sufficiently enough that '"CTRL+" from one device and mouse button 4/5 from another should be ignored' could be implemented. (X11 does expose everything distinctly/discretely, but pretty much nothing on top (Qt, especially GTK) really takes advantage of it. For example you can have unlimited mouse cursors on the screen, but beyond moving and resizing windows at the same time, nothing really does anything novel with this capability, and the input models (single window focused at one time, etc) don't really permit innovation either.)
Hmm...... although... maybe if you took evdev apart at a very low level, and/or maybe the synaptics driv--wait. Hack synaptics to bits so it also _watches_ the keyboard, specifically CTRL keypresses, and stops sending its synthesized stream of buttonpress/releases. Maybe.