New approach to multitouch using DIDs and bitmasked events

Chase Douglas chase.douglas at canonical.com
Fri Jul 2 06:25:29 PDT 2010


On Fri, 2010-07-02 at 19:36 +1000, Peter Hutterer wrote:
> > I heuristically determine if a device is a DID by checking whether it
> > has valuators for ABS_MT_POSITION_X or ABS_MT_POSITION_Y, but none of
> > ABS_X, ABS_Y, REL_X, or REL_Y. This check is performed at valuator class
> > device initialization. Any motion events that a DID posts are sent as
> > ET_DirectMotion events. The ET_DirectMotion events are transformed into
> > normal motion events before they are sent to an XI2 client, so XI2
> > clients will see touches as normal pointer motion events. Further, a DID
> > starts off as a floating device, unattached to any master pointer
> > device. Any attempt to attach it to a master will fail.
> 
> This is a good start. Eventually, we should have DIDs exposed as a new 
> device class on the protocol though. Likewise, I don't think ET_DM 
> should not be converted to normal XIDeviceEvents but rather to their own 
> type that can be expanded in the future to accommodate for additional 
> features (e.g. the touch area).

Ok, I'll think about this and try to hack a bit to make a new event type
like XIDirectEvent.

-- Chase



More information about the xorg-devel mailing list