On Mon, Apr 04, 2011 at 09:40:14AM -0400, Chase Douglas wrote: > The current code overwrites *all* the stored axis values with whatever > came in from evdev. Evdev is a stateful protocol, so it only sends us > updates to the axis values that have changed. We need to only update > the values that have changed. > > Signed-off-by: Chase Douglas <[email protected]> > --- > src/evdev.c | 5 ++++- > 1 files changed, 4 insertions(+), 1 deletions(-) > > diff --git a/src/evdev.c b/src/evdev.c > index 9cf6fae..b767b0e 100644 > --- a/src/evdev.c > +++ b/src/evdev.c > @@ -504,7 +504,10 @@ EvdevProcessProximityState(InputInfoPtr pInfo) > if (!pEvdev->prox_queued) > { > if (pEvdev->abs_queued && !pEvdev->in_proximity) > - valuator_mask_copy(pEvdev->prox, pEvdev->vals); > + for (i = 0; i < valuator_mask_size(pEvdev->vals); i++) > + if (valuator_mask_isset(pEvdev->vals, i)) > + valuator_mask_set(pEvdev->prox, i, > + valuator_mask_get(pEvdev->vals, i)); > return 0; > } > > -- > 1.7.4.1
both applied, thanks. Cheers, Peter _______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
