Re: evdev interface question: ABS_X without ABS_Y?
From: Dwayne Litzenberger <hidden>
Date: 2011-10-27 13:53:16
On 2011-10-27, at 1:44 AM, Dmitry Torokhov wrote:
On Wed, Oct 26, 2011 at 05:10:23PM -0400, Dwayne Litzenberger wrote:quoted
Let's say I have a touchscreen, and I move my finger to (200,100). I'll see something line this (simplified): EV_ABS ABS_X 200 EV_ABS ABS_Y 100 EV_SYN Next, let's say I see something like this: EV_ABS ABS_Y 90 EV_SYN What is the meaning of that, from the perspective of userspace? I see two possibilities. Either: 1. It's a move to (200,90), or 2. It's a move to (0,90) Which is the correct interpretation?Door #1.quoted
Is this documented anywhere?From Documentation/input/event-codes.txt: "The input protocol is a stateful protocol. Events are emitted only when values of event codes have changed. However, the state is maintained within the Linux input subsystem; drivers do not need to maintain the state and may attempt to emit unchanged values without harm. Userspace may obtain the current state of event code values using the EVIOCG* ioctls defined in linux/input.h."quoted
Apparently, the usbhid driver is generating events that imply #1, but xserver-xorg-input-evdev interprets these according to #2. I'm trying to figure out what needs to be patched. :)xserver-xorg-input-evdev.
Awesome. That's exactly what I need. Thanks! - Dwayne