[RFC] Multi-Touch (MT) support - arbitration or not
Daniel Stone
daniel at fooishbar.org
Sun Nov 7 08:30:37 PST 2010
Hi,
On Fri, Nov 05, 2010 at 11:47:28AM -0700, Ping Cheng wrote:
> Recent changes and discussion about MT support at LKML, UDS, and
> xorg-devel encouraged me to migrate Wacom MT devices to the slot-based
> MT protocol (introduced in kernel 2.6.36).
Nice!
> My goal is to understand how X server would like the MT data to be
> reported from the kernel. I hope to keep kernel and X server driver MT
> support in sync so we can avoid unnecessary confusion or extra work in
> the userland.
:)
> The existing solution for single touch events is to arbitrate touch
> when pen is in prox. This is based on the assumption that we do not
> want to have two cursors competing on the screen.
What do you mean by 'arbitrate' here? I guess you're talking about which
events should send ABS_[XY]?
> 1. Arbitrate all touch data in the kernel.
>
> This is the simplest solution for device driver developers. But I do
> not feel it is end user and userland client friendly.
>
> [...]
>
> 3. Report first finger touch as ABS_X/Y events when pen is not in prox;
> Report pen data as ABS_X/Y events when there is no finger touch;
> Report touch data as MT_TOOL_TOUCH and pen data as MT_TOOL_PEN
> events when both pen and touch data are received. No ABS_X/Y are
> reported when pen and tocuh or multi-touch data are received.
>
> I feel this one makes sense to userland since pen can be considered as
> another touch.
I'd say that either #1 or #3 is the best idea here, simply because they
seem to be the most straightforward, and thus easier to support.
Assuming that xf86-input-wacom will track the state itself and decide
(using whatever criteria) which events should send core x/y motion, then
all you need to do with ABS_[XY] is just make a best effort to have it
more or less work for dumb userspace clients.
Cheers,
Daniel
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://lists.x.org/archives/xorg-devel/attachments/20101107/c6cce498/attachment.pgp>
More information about the xorg-devel
mailing list