Reviewed-by: Jeremy Huddleston <[email protected]> On Oct 23, 2011, at 23:02, Peter Hutterer wrote:
> Signed-off-by: Peter Hutterer <[email protected]> > --- > Xi/xiquerydevice.c | 7 +++---- > dix/eventconvert.c | 14 ++++---------- > 2 files changed, 7 insertions(+), 14 deletions(-) > > diff --git a/Xi/xiquerydevice.c b/Xi/xiquerydevice.c > index 9961d1b..5f543f6 100644 > --- a/Xi/xiquerydevice.c > +++ b/Xi/xiquerydevice.c > @@ -41,6 +41,7 @@ > #include "xserver-properties.h" > #include "exevents.h" > #include "xace.h" > +#include "inpututils.h" > > #include "xiquerydevice.h" > > @@ -351,8 +352,7 @@ ListValuatorInfo(DeviceIntPtr dev, xXIValuatorInfo* info, > int axisnumber, > info->min.frac = 0; > info->max.integral = v->axes[axisnumber].max_value; > info->max.frac = 0; > - info->value.integral = (int)v->axisVal[axisnumber]; > - info->value.frac = (int)(v->axisVal[axisnumber] * (1 << 16) * (1 << 16)); > + info->value = double_to_fp3232(v->axisVal[axisnumber]); > info->resolution = v->axes[axisnumber].resolution; > info->number = axisnumber; > info->mode = valuator_get_mode(dev, axisnumber); > @@ -402,8 +402,7 @@ ListScrollInfo(DeviceIntPtr dev, xXIScrollInfo *info, int > axisnumber) > ErrorF("[Xi] Unknown scroll type %d. This is a bug.\n", > axis->scroll.type); > break; > } > - info->increment.integral = (int)axis->scroll.increment; > - info->increment.frac = (unsigned int)(axis->scroll.increment * (1UL << > 16) * (1UL << 16)); > + info->increment = double_to_fp3232(axis->scroll.increment); > info->sourceid = v->sourceid; > > info->flags = 0; > diff --git a/dix/eventconvert.c b/dix/eventconvert.c > index ff42b03..c9da396 100644 > --- a/dix/eventconvert.c > +++ b/dix/eventconvert.c > @@ -49,6 +49,7 @@ > #include "inpututils.h" > #include "xiquerydevice.h" > #include "xkbsrv.h" > +#include "inpututils.h" > > > static int countValuators(DeviceEvent *ev, int *first); > @@ -686,9 +687,7 @@ eventToDeviceEvent(DeviceEvent *ev, xEvent **xi) > if (BitIsOn(ev->valuators.mask, i)) > { > SetBit(ptr, i); > - axisval->integral = trunc(ev->valuators.data[i]); > - axisval->frac = (ev->valuators.data[i] - axisval->integral) * > - (1 << 16) * (1 << 16); > + *axisval = double_to_fp3232(ev->valuators.data[i]); > axisval++; > } > } > @@ -732,13 +731,8 @@ eventToRawEvent(RawDeviceEvent *ev, xEvent **xi) > if (BitIsOn(ev->valuators.mask, i)) > { > SetBit(ptr, i); > - axisval->integral = trunc(ev->valuators.data[i]); > - axisval->frac = (ev->valuators.data[i] - axisval->integral) * > - (1 << 16) * (1 << 16); > - axisval_raw->integral = trunc(ev->valuators.data_raw[i]); > - axisval_raw->frac = > - (ev->valuators.data_raw[i] - axisval_raw->integral) * > - (1 << 16) * (1 << 16); > + *axisval = double_to_fp3232(ev->valuators.data[i]); > + *axisval_raw = double_to_fp3232(ev->valuators.data_raw[i]); > axisval++; > axisval_raw++; > } > -- > 1.7.7 > > _______________________________________________ > [email protected]: X.Org development > Archives: http://lists.x.org/archives/xorg-devel > Info: http://lists.x.org/mailman/listinfo/xorg-devel > _______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
