|
|
@ -187,6 +187,17 @@ handle_touch_up(struct libinput_device *libinput_device, |
|
|
|
notify_touch(device->seat, time, slot, 0, 0, WL_TOUCH_UP); |
|
|
|
notify_touch(device->seat, time, slot, 0, 0, WL_TOUCH_UP); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static void |
|
|
|
|
|
|
|
handle_touch_frame(struct libinput_device *libinput_device, |
|
|
|
|
|
|
|
struct libinput_event_touch *touch_event) |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
struct evdev_device *device = |
|
|
|
|
|
|
|
libinput_device_get_user_data(libinput_device); |
|
|
|
|
|
|
|
struct weston_seat *seat = device->seat; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
notify_touch_frame(seat); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
int |
|
|
|
int |
|
|
|
evdev_device_process_event(struct libinput_event *event) |
|
|
|
evdev_device_process_event(struct libinput_event *event) |
|
|
|
{ |
|
|
|
{ |
|
|
@ -228,6 +239,10 @@ evdev_device_process_event(struct libinput_event *event) |
|
|
|
handle_touch_up(libinput_device, |
|
|
|
handle_touch_up(libinput_device, |
|
|
|
libinput_event_get_touch_event(event)); |
|
|
|
libinput_event_get_touch_event(event)); |
|
|
|
break; |
|
|
|
break; |
|
|
|
|
|
|
|
case LIBINPUT_EVENT_TOUCH_FRAME: |
|
|
|
|
|
|
|
handle_touch_frame(libinput_device, |
|
|
|
|
|
|
|
libinput_event_get_touch_event(event)); |
|
|
|
|
|
|
|
break; |
|
|
|
default: |
|
|
|
default: |
|
|
|
handled = 0; |
|
|
|
handled = 0; |
|
|
|
weston_log("unknown libinput event %d\n", |
|
|
|
weston_log("unknown libinput event %d\n", |
|
|
|