diff options
Diffstat (limited to 'src/input.c')
-rw-r--r-- | src/input.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/input.c b/src/input.c index 9c514689..2c799f43 100644 --- a/src/input.c +++ b/src/input.c @@ -287,6 +287,15 @@ default_grab_touch_motion(struct weston_touch_grab *grab, uint32_t time, } static void +default_grab_touch_frame(struct weston_touch_grab *grab) +{ + struct wl_resource *resource; + + wl_resource_for_each(resource, &grab->touch->focus_resource_list) + wl_touch_send_frame(resource); +} + +static void default_grab_touch_cancel(struct weston_touch_grab *grab) { } @@ -295,6 +304,7 @@ static const struct weston_touch_grab_interface default_touch_grab_interface = { default_grab_touch_down, default_grab_touch_up, default_grab_touch_motion, + default_grab_touch_frame, default_grab_touch_cancel, }; @@ -1512,6 +1522,15 @@ notify_touch(struct weston_seat *seat, uint32_t time, int touch_id, } } +WL_EXPORT void +notify_touch_frame(struct weston_seat *seat) +{ + struct weston_touch *touch = seat->touch; + struct weston_touch_grab *grab = touch->grab; + + grab->interface->frame(grab); +} + static void pointer_cursor_surface_configure(struct weston_surface *es, int32_t dx, int32_t dy) |