fixed = *absinfo;
fixed.resolution = 1;
libevdev_set_abs_info(evdev, ABS_X, &fixed);
+ device->abs.fake_resolution = 1;
}
device->abs.absinfo_x = absinfo;
has_abs = 1;
fixed = *absinfo;
fixed.resolution = 1;
libevdev_set_abs_info(evdev, ABS_Y, &fixed);
+ device->abs.fake_resolution = 1;
}
device->abs.absinfo_y = absinfo;
has_abs = 1;
libevdev_set_abs_info(evdev,
ABS_MT_POSITION_X,
&fixed);
+ device->abs.fake_resolution = 1;
}
device->abs.absinfo_x = absinfo;
absinfo = libevdev_get_abs_info(evdev, ABS_MT_POSITION_Y);
libevdev_set_abs_info(evdev,
ABS_MT_POSITION_Y,
&fixed);
+ device->abs.fake_resolution = 1;
}
device->abs.absinfo_y = absinfo;
device->is_mt = 1;
x = libevdev_get_abs_info(device->evdev, ABS_X);
y = libevdev_get_abs_info(device->evdev, ABS_Y);
- if (!x || !y || !x->resolution || !y->resolution)
+ if (!x || !y || device->abs.fake_resolution ||
+ !x->resolution || !y->resolution)
return -1;
*width = evdev_convert_to_mm(x, x->maximum);