static void touch_move(struct litest_device *d, unsigned int slot, double x, double y) { assert(slot == 0); litest_event(d, EV_ABS, ABS_X, litest_scale(d, ABS_X, x)); litest_event(d, EV_ABS, ABS_Y, litest_scale(d, ABS_Y, y)); litest_event(d, EV_SYN, SYN_REPORT, 0); }
int x, int y) { static int tracking_id; struct input_event *ev; struct input_event down[] = { { .type = EV_ABS, .code = ABS_X, .value = x }, { .type = EV_ABS, .code = ABS_Y, .value = y }, { .type = EV_ABS, .code = ABS_PRESSURE, .value = 30 }, { .type = EV_ABS, .code = ABS_MT_SLOT, .value = slot }, { .type = EV_ABS, .code = ABS_MT_TRACKING_ID, .value = ++tracking_id }, { .type = EV_ABS, .code = ABS_MT_POSITION_X, .value = x }, { .type = EV_ABS, .code = ABS_MT_POSITION_Y, .value = y }, { .type = EV_SYN, .code = SYN_REPORT, .value = 0 }, }; down[0].value = litest_scale(d, ABS_X, x); down[1].value = litest_scale(d, ABS_Y, y); down[5].value = litest_scale(d, ABS_X, x); down[6].value = litest_scale(d, ABS_Y, y); ARRAY_FOR_EACH(down, ev) litest_event(d, ev->type, ev->code, ev->value); } void litest_bcm5974_move(struct litest_device *d, unsigned int slot, int x, int y) { struct input_event *ev; struct input_event move[] = { { .type = EV_ABS, .code = ABS_MT_SLOT, .value = slot }, { .type = EV_ABS, .code = ABS_X, .value = x },