Browse Source

Added support for multiple seats with touch input on Wayland

This fixes bug https://github.com/libsdl-org/SDL/issues/4517
Sam Lantinga 3 years ago
parent
commit
03c19efbd1
1 changed files with 2 additions and 2 deletions
  1. 2 2
      src/video/wayland/SDL_waylandevents.c

+ 2 - 2
src/video/wayland/SDL_waylandevents.c

@@ -941,13 +941,13 @@ seat_handle_capabilities(void *data, struct wl_seat *seat,
     }
 
     if ((caps & WL_SEAT_CAPABILITY_TOUCH) && !input->touch) {
-        SDL_AddTouch(1, SDL_TOUCH_DEVICE_DIRECT, "wayland_touch");
+        SDL_AddTouch((SDL_TouchID)seat, SDL_TOUCH_DEVICE_DIRECT, "wayland_touch");
         input->touch = wl_seat_get_touch(seat);
         wl_touch_set_user_data(input->touch, input);
         wl_touch_add_listener(input->touch, &touch_listener,
                                  input);
     } else if (!(caps & WL_SEAT_CAPABILITY_TOUCH) && input->touch) {
-        SDL_DelTouch(1);
+        SDL_DelTouch((SDL_TouchID)seat);
         wl_touch_destroy(input->touch);
         input->touch = NULL;
     }