forwarded from https://bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/925785 TL;DR, plug another pointer device with horiz scroll support, then after touching the other device try to scroll with the second device and notice how "many" scroll button events are emitted.
Actually, the scroll axis doesn't matter, it's the same for both horizontal and vertical (meant vertical originally). Just that for vertical scrolls the jumping happens to the other direction (since the axis seems reversed, I'll file another bug about that..).
another observation: - touch device 1 - scroll device 2, note that it jumps - touch device 1 - scroll device 2 to the same direction as before, note that nothing happens on the first click, the next one is normal - touch device 2 - scroll device 2 to the same direction as before, note that you get _opposite_ action on the first click, next one is normal ... :)
verified on master, thanks. Appears to be a bad update of last.valuators[], resetting that value to 0 whenever the SD changes. As a result, the next value isn't on top of the previous one but rather starting from 0, causing a bad in value. The jumps come from that
Created attachment 56877 [details] [review] 0001-dix-reset-last.scroll-when-resetting-the-valuator-45.patch How does this one work for you?
Nice! Works great. Tested-by: Timo Aaltonen <timo.aaltonen@canonical.com>
commit 6f28388187cffae9e5bc9bfc9425acff4f478b59 Author: Peter Hutterer <peter.hutterer@who-t.net> Date: Sat Feb 11 01:29:26 2012 +1000 dix: reset last.scroll when resetting the valuator (#45611)
This bug -- or something remarkably similar to it -- has reappeared in 1.17.2 (latest X package in Fedora 22).
This ended up being a GTK3 bug, not an xorg bug, see https://bugzilla.redhat.com/show_bug.cgi?id=1245247. Closing again
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.