diff options
Diffstat (limited to 'src/platform/wayland/pointer.c')
| -rw-r--r-- | src/platform/wayland/pointer.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/platform/wayland/pointer.c b/src/platform/wayland/pointer.c index 9f8ca49..571bb12 100644 --- a/src/platform/wayland/pointer.c +++ b/src/platform/wayland/pointer.c @@ -59,6 +59,9 @@ uint32_t seat_held_press_serial(const struct seat *s) { if (!s) return 0; bool held = s->pointer_buttons != 0 || (s->tool && s->tool->in_contact); + /* A touch contact is a press too; touch_down records its serial. */ + for (int i = 0; !held && i < SEAT_TOUCH_POINTS; i++) + held = s->touch_points[i].active; return held ? s->press_serial : 0; } |
