summaryrefslogtreecommitdiff
path: root/src/input.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/input.c')
-rw-r--r--src/input.c19
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)