diff options
Diffstat (limited to 'src/backends')
-rw-r--r-- | src/backends/native/meta-seat-impl.c | 27 |
1 files changed, 20 insertions, 7 deletions
diff --git a/src/backends/native/meta-seat-impl.c b/src/backends/native/meta-seat-impl.c index da87b086b..cce7cd33c 100644 --- a/src/backends/native/meta-seat-impl.c +++ b/src/backends/native/meta-seat-impl.c @@ -1249,6 +1249,8 @@ notify_pinch_gesture_event (ClutterInputDevice *input_device, uint64_t time_us, double dx, double dy, + double dx_unaccel, + double dy_unaccel, double angle_delta, double scale, uint32_t n_fingers) @@ -1268,6 +1270,8 @@ notify_pinch_gesture_event (ClutterInputDevice *input_device, event->touchpad_pinch.time = us2ms (time_us); event->touchpad_pinch.dx = dx; event->touchpad_pinch.dy = dy; + event->touchpad_pinch.dx_unaccel = dx_unaccel; + event->touchpad_pinch.dy_unaccel = dy_unaccel; event->touchpad_pinch.angle_delta = angle_delta; event->touchpad_pinch.scale = scale; event->touchpad_pinch.n_fingers = n_fingers; @@ -1286,7 +1290,9 @@ notify_swipe_gesture_event (ClutterInputDevice *input_device, uint64_t time_us, uint32_t n_fingers, double dx, - double dy) + double dy, + double dx_unaccel, + double dy_unaccel) { MetaSeatImpl *seat_impl; ClutterEvent *event = NULL; @@ -1303,6 +1309,8 @@ notify_swipe_gesture_event (ClutterInputDevice *input_device, &event->touchpad_swipe.y); event->touchpad_swipe.dx = dx; event->touchpad_swipe.dy = dy; + event->touchpad_swipe.dx_unaccel = dx_unaccel; + event->touchpad_swipe.dy_unaccel = dy_unaccel; event->touchpad_swipe.n_fingers = n_fingers; meta_xkb_translate_state (event, seat_impl->xkb, seat_impl->button_state); @@ -2278,14 +2286,14 @@ process_device_event (MetaSeatImpl *seat_impl, n_fingers = libinput_event_gesture_get_finger_count (gesture_event); device = libinput_device_get_user_data (libinput_device); time_us = libinput_event_gesture_get_time_usec (gesture_event); - notify_pinch_gesture_event (device, phase, time_us, 0, 0, 0, 0, n_fingers); + notify_pinch_gesture_event (device, phase, time_us, 0, 0, 0, 0, 0, 0, n_fingers); break; } case LIBINPUT_EVENT_GESTURE_PINCH_UPDATE: { struct libinput_event_gesture *gesture_event = libinput_event_get_gesture_event (event); - double angle_delta, scale, dx, dy; + double angle_delta, scale, dx, dy, dx_unaccel, dy_unaccel; uint32_t n_fingers; uint64_t time_us; @@ -2296,10 +2304,13 @@ process_device_event (MetaSeatImpl *seat_impl, scale = libinput_event_gesture_get_scale (gesture_event); dx = libinput_event_gesture_get_dx (gesture_event); dy = libinput_event_gesture_get_dy (gesture_event); + dx_unaccel = libinput_event_gesture_get_dx_unaccelerated (gesture_event); + dy_unaccel = libinput_event_gesture_get_dy_unaccelerated (gesture_event); notify_pinch_gesture_event (device, CLUTTER_TOUCHPAD_GESTURE_PHASE_UPDATE, - time_us, dx, dy, angle_delta, scale, n_fingers); + time_us, dx, dy, dx_unaccel, dy_unaccel, + angle_delta, scale, n_fingers); break; } case LIBINPUT_EVENT_GESTURE_SWIPE_BEGIN: @@ -2321,7 +2332,7 @@ process_device_event (MetaSeatImpl *seat_impl, phase = libinput_event_gesture_get_cancelled (gesture_event) ? CLUTTER_TOUCHPAD_GESTURE_PHASE_CANCEL : CLUTTER_TOUCHPAD_GESTURE_PHASE_END; - notify_swipe_gesture_event (device, phase, time_us, n_fingers, 0, 0); + notify_swipe_gesture_event (device, phase, time_us, n_fingers, 0, 0, 0, 0); break; } case LIBINPUT_EVENT_GESTURE_SWIPE_UPDATE: @@ -2330,17 +2341,19 @@ process_device_event (MetaSeatImpl *seat_impl, libinput_event_get_gesture_event (event); uint32_t n_fingers; uint64_t time_us; - double dx, dy; + double dx, dy, dx_unaccel, dy_unaccel; device = libinput_device_get_user_data (libinput_device); time_us = libinput_event_gesture_get_time_usec (gesture_event); n_fingers = libinput_event_gesture_get_finger_count (gesture_event); dx = libinput_event_gesture_get_dx (gesture_event); dy = libinput_event_gesture_get_dy (gesture_event); + dx_unaccel = libinput_event_gesture_get_dx_unaccelerated (gesture_event); + dy_unaccel = libinput_event_gesture_get_dy_unaccelerated (gesture_event); notify_swipe_gesture_event (device, CLUTTER_TOUCHPAD_GESTURE_PHASE_UPDATE, - time_us, n_fingers, dx, dy); + time_us, n_fingers, dx, dy, dx_unaccel, dy_unaccel); break; } case LIBINPUT_EVENT_TABLET_TOOL_AXIS: |