[PATCH 08/18] Avoid unexpected jumps

Takashi Iwai tiwai at suse.de
Tue Oct 12 23:01:30 PDT 2010


At Wed, 13 Oct 2010 13:13:00 +1000,
Peter Hutterer wrote:
> 
> On Fri, Oct 08, 2010 at 07:22:32PM +0200, Takashi Iwai wrote:
> > Limit the movement size for avoiding the unexpected pointer jumps.
> 
> what pointer jumps? this patch really needs more explaining on how these
> jumps happen, under what conditions, etc. simply limiting on a fixed set is
> not enough.

This patch is basically for ST mode.  I don't think this is inevitably
needed for MT.

> any solution like this walks the blurry line between dropping coordinates
> and unexpected jumps, and neither is really acceptable (the first one
> definitely isn't). going 1/5 of the touchpad in one movement isn't actually
> hard, my finger is about 1/4 the width of my touchpad, so just moving the
> finger a little bit easily covers more than 1/5 (and yes, that's normal
> movement).
> 
> a driver solution to this that tries to cater for touchpad movement also
> completely ignores pointer acceleration. a user may have the pointer slowed
> down to a point where even 1/2 the size of a touchpad is a normal movement.

OK, the size is arguable.  But a bigger finger size shouldn't be an
issue in this case because a big finger movement is still reported
continuously.

The background of this patch is that the device sometimes doesn't report
the finger off from the pad, instead it sends z with a high value in
the last packet, then stops sending packets.  Thus the driver still
keeps tracking the position as a part of continuous pointer movement
when you touch again at a totally different point, which results in a
jump.

If you have a better idea how to filter out such a case, it'd be great.


thanks,

Takashi


More information about the xorg-devel mailing list