On Sunday 28 September 2008, Peter Hutterer wrote: > On Sat, Sep 27, 2008 at 06:10:32PM +0100, Magnus Kessler wrote: > > Since updating to the current git version of xorg-server, inputproto > > and xf86-input-synaptics I observe extra pointer movements for every > > event generated by the touchpad. > > > > Even when not touching the pad and using the buttons instead the > > pointer moves 1 pixel to the top-left which each event (x and y > > coordinate decrease by 1 every time). Equally, each event generated > > from touching the pad seems to have this extra movement towards the > > top-left of the screen. > > what hardware do you have? > Any special options in xorg.conf/the fdi file? > > Cheers, > Peter
This is with an external mini-keyboard with built-in touchpad. Dmesg reports it as Synaptics Touchpad, model: 1, fw: 4.1, id: 0x14aa1, caps: 0x0/0x0 and in Xorg.0.log the xf86-input-synaptics driver reports (**) Option "Device" "/dev/input/event1" (II) SynPS/2 Synaptics TouchPad: x-axis range 1472 - 5472 (II) SynPS/2 Synaptics TouchPad: y-axis range 1408 - 4448 (II) SynPS/2 Synaptics TouchPad: pressure range 0 - 255 (II) SynPS/2 Synaptics TouchPad: finger width range 0 - 0 (II) SynPS/2 Synaptics TouchPad: buttons: left right middle double triple (**) Option "SHMConfig" "1" (**) Option "VertEdgeScroll" "1" (**) Option "HorizEdgeScroll" "1" (**) Option "LockedDrags" "0" (**) Option "TapButton1" "1" (**) Option "PalmDetect" "yes" The fdi file I'm using is <?xml version="1.0" encoding="ISO-8859-1"?> <deviceinfo version="0.2"> <device> <match key="info.capabilities" contains="input.touchpad"> <match key="info.product" contains="Synaptics TouchPad"> <merge key="input.x11_driver" type="string">synaptics</merge> <merge key="input.x11_options.Emulate3Buttons" type="string">yes</merge> <merge key="input.x11_options.LockedDrags" type="string">0</merge> <merge key="input.x11_options.PalmDetect" type="string">yes</merge> <merge key="input.x11_options.CoastingSpeed" type="string">20</merge> <merge key="input.x11_options.TapButton1" type="string">1</merge> <merge key="input.x11_options.VertEdgeScroll" type="string">1</merge> <merge key="input.x11_options.HorizEdgeScroll" type="string">1</merge> <merge key="input.x11_options.SHMConfig" type="string">1</merge> </match> </match> </device> </deviceinfo> I have just reverted the part of commit c405a69f83dab77cfe6c76f718a3ca5614a85918 that passes the actual x/y ranges to xf86InitValuatorAxisStruct. Now the extra movement is gone, but I get a somewhat quicker cursor movement than I was used to before. This would be due to the other recent changes that set new default values for the acceleration parameters, of course. I'm trying to see where in the valuators are actually used inside the X server. With a smaller range than [0, -1] some rounding error (?) seems to create that extra pixel offset for each event processed. This is on a 64-bit platform, in case this is important. Any hints on where to look next are welcome. Cheers, Magnus
signature.asc
Description: This is a digitally signed message part.
_______________________________________________ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg