[RFC] Multi-Touch (MT) support - arbitration or not

Dmitry Torokhov dmitry.torokhov at gmail.com
Wed Nov 10 17:22:52 PST 2010


On Thu, Nov 11, 2010 at 01:48:44AM +0100, Henrik Rydberg wrote:
> On 11/11/2010 12:53 AM, Peter Hutterer wrote:
> 
> > On Wed, Nov 10, 2010 at 11:00:05AM +0100, Henrik Rydberg wrote:
> >> A comment on pixels and resolution:
> >>
> >> A pen and a thumb may have different resolution (signal-to-noise ratio), but
> >> there is no reason they cannot be reported on the same scale. In fact, it could
> >> be argued that it is natural for objects on the same surface to be reported in
> >> the coordinate system of the surface.
> > 
> > it may be natural from a human perspective, but the computer doesn't care
> > about it.
> 
> 
> The fact that we discuss a computer protocol suggests the computer does care.
> ;-) The question is whether we need to be able to support different scales for
> different tools types. I argue that among the three things value range, physical
> range and SN ratio, the one most naturally seen as an attribute of a tool is the
> SN ratio.
> 
> > And given that most input device interpretation is done in
> > software, the scale used doesn't matter as long as it's correct.
> 
> > in the UI, even with different ranges for different tools, top-left should
> > refer to whatever coordinate that is.
> > 
> > in other words, if the pure numbers matter in the UI, we've done something
> > wrong.
> 
> > 
> > what benefit do we get from reporting tools on the same scale if the HW
> > doesn't do so?
> 
> 
> The question is, given a set of tool types reported via MT events, what
> additional information is needed. Having tools share the same ABS axes, I would
> like to see that as a good thing. So what is missing from that picture?

I think that with devices that share the same working surface with
different tools (touch/pen) it would make sense to normalize the data in
the kernel. If for no other reason but to simplify the protocol.

In cases when tools are way to different driver writer might opt to
export the device as 2 separate logical input devices (and then take
care of coordinating them in userspace), in other cases treat them as
one input device and scale to the same range.

I tend to think [at the moment] that the latter would be most sensible
option for Bamboo...

Thanks.

-- 
Dmitry


More information about the xorg-devel mailing list