It seems to me that initTransform(int axis, int index) in LinuxTouchTransform calculates the wrong range. Regardless of the flipXY setting it uses for the ABS_X the device's width and for the ABS_Y the device's height. While in case with flipXY it should use for ABS_X the device's height and for ABS_Y as the device's width.

Without this correction it becomes impossible to 'calibrate' a touch screen, especially if the minX and minY aren't zero.

As an aside, I noticed that the LinuxTouchTransform's initTransform is called every time a touch event is delivered to the system. This seems unnecessary, as long as the screen is the same screen all transforms and scalars will remain the same for each touch event.

Regards,
Maurice.

Reply via email to