xinput_calibrator
xinput_calibrator copied to clipboard
swap_xy behaviour
Once swap_xy is on, the calibrator will not put it off again.
Eg if a users (without understanding why) configs swap_xy=1, then the calibrator will suggest swap_xy=1. This is because it wants to change the current swap_xy value, and it supposes that that value = 0.
It seems very unlikely that this should occur, but now that I realized it, might as well fix it someday.
Fixed in cd980502d7cb9cb4e4997120033c5eb193f6193b
I'm using xinput_calibrator with --output-type of "xinput" and have it wrapped in a script that outputs the resultant xinput calls to a script that gets sourced on X startup. So, from a fresh, uncalibrated environment, executing the calibration results in something like:
xinput set-int-prop "eGalax Inc. USB TouchController" "Evdev Axis Calibration" 32 4030 90 94 4034
xinput set-int-prop "eGalax Inc. USB TouchController" "Evdev Axes Swap" 8 1
Then, next time X starts, those get applied. If I then execute the calibration again, I get something like the following:
xinput set-int-prop "eGalax Inc. USB TouchController" "Evdev Axis Calibration" 32 129 4037 4039 78
I see that the axes swap has been excluded and the 4 calibration values have been reordered in some way (presumably because the axes really should be swapped?). I thought that the reordering of the 4 values would accomplish the same thing as axes swapping, but it doesn't (maybe I don't fully understand how evdev and xinput handle calibration parameters?).
If I start up X with the second config - axes not swapped, calibration values reordered - then executing the calibration again gives results like the first - axes swapped, calibration values not reordered. I'm thinking that SHA tias/xinput_calibrator@cd980502d7cb9cb4e4997120033c5eb193f6193b is responsible for this toggling-like behavior? Or am I doing something wrong?
Thats definitely not intended behaviour.
I've had contact with an other user before which indicated that possibly https://github.com/tias/xinput_calibrator/blob/master/src/calibrator.cpp#L162 and 163 have an error. Could you try the package at http://tias.ulyssis.org/patch/xinput_calibrator-0.7.5.1.swapxytest.tar.gz
Could you rerun it 2 times (like you did above), but with the --verbose argument and post the output? (note that you do not have to restart your X server, the settings are dynamically applied for your current session)
Thanks, Tias