-
Notifications
You must be signed in to change notification settings - Fork 105
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Various fixes & improvements #36
base: master
Are you sure you want to change the base?
Conversation
Hi Forest, Thanks for these patches, they look nice and clean. Some comments:
Now, a more general question regarding calibration: Looking forward to hearing from you, |
Hi Tias, Sorry for the delay. I have been very busy with work, but will take a look at Thanks, On Thu, Jun 07, 2012 at 04:53:10PM -0700, Tias Guns wrote:
|
Hi Tias, Sorry for the delayed response. On Thu, Jun 07, 2012 at 04:53:10PM -0700, Tias Guns wrote:
I'm looking at this now.
I agree. I see that you have updated master to use xf86ScaleAxis.
Yes, I had problems with axis swap due to swap detection not taking into
Inversion handling in xinput_calibrator was just broken. I fixed it in my pull Anyway, I think resetting the calibration parameters is necessary. Consider the Hope this makes sense. Let me know what you think and I will rebase my changes Thanks, ForestForest Bond |
On 07/26/2012 05:20 PM, Forest Bond wrote:
Neither am I, so I prefer not to touch the code for other drivers
I agree. I still feel that resetting the calibration dynamically before May I suggest that you implement it as a '--reset' option or similar? Kind regards,
|
Hi, On Tue, Jul 31, 2012 at 01:37:51PM -0700, Tias Guns wrote:
Maybe it would be good to ask the Evdev developers about axis inversion. They
It would not be hard to hide the cursor during calibration. In fact we should
I think it should be the default behavior as it is the only way to guarantee Thanks, ForestForest Bond |
The core calibration routines function ignore the XYinfo invert member, so drop it altogether and instead treat axis inversion as an input/output consideration for some drivers. This fixes axis inversion for XorgPrintCalibrator (inversion would not have been enabled before).
This method is no longer different from the Calibrator method it overrides (since axis inversion is ignored).
None of the drivers need to override this method any longer, and it is better not to as it leads to code duplciation so just don't allow it.
Refactor to move reading of calibration parameters into an explicit method ("detect_axys") in preparation. This is needed for some follow up fixes.
Previously, values specified by the user via the --precalib command-line option would be overridden by the detected values with EvdevCalibrator. Now, the detection of current parameters is not performed at all if the --precalib option was passed.
This can be used for dynamic recalibration if the driver supports it. Currently only EvdevCalibrator provides an implementation.
This forces calibration parameters to be set to the device defaults prior to calibration, which is need for accurate calibration in certain cases (i.e. when the previous values were off substantially).
Hi Tias, Here's a new set of commits for review. Let me know what you think. Thanks, |
By the way, I have an touch screen with inverted axes that works with evdev, so I have tested that case. I've also run the tests and they pass. |
Hi Tias, Did you have a chance to look at these changes? Thanks, |
Hi Tias & Forest, @forest: Just looking through your patches Forest and I can see that you and I have covered some of the same ground. For example, we both made finish() non-virtual and eliminated the evdev version. In the current HEAD there is something quite broken with calibrations where the axes are swapped. You seem to have tackled that. I have too, but your patches look better to me. @tias: I hope you get a chance to look at this stuff soon. Cheers, |
Hi Tias, Just checking in. I know you are probably busy, but do you think you can give us some indication of whether or not you intend to consider these changes for merging? Thanks, |
Hi Tias, As of right now my plan is to create a fork of xinput_calibrator. I'd rather not, of course. But it has been nearly 2.5 years since the last release and this pull request has been open for 9 months. The current state of affairs is becoming burdensome in a variety of ways. We are maintaining too many local patches and our software must depend on command-line options that are not officially supported by xinput_calibrator. What can we do to fix this situation? Would you like to transfer maintainership or give commit access to me? Or should I proceed with the fork? Thanks, |
Hello again, So, the bug I encountered is here forestbond@ee60066#L3R201. The pointer is not initialised. Best regards, |
Thanks, that's a good catch. I will fix it. |
Can you tell me what version of evdev you are running? Thanks |
Hi Tias, I am using evdev from Ubuntu 10.04 (2.3.2) and Ubuntu 12.04 (2.7.0). Thanks, |
This is the set of changes from my previous pull request, slightly reworked, plus a few new commits to improve evdev calibration. Comments welcome.