diff --git a/gdk/wayland/gdkdevice-wayland.c b/gdk/wayland/gdkdevice-wayland.c index 72395d1d45..96c5ebfe06 100644 --- a/gdk/wayland/gdkdevice-wayland.c +++ b/gdk/wayland/gdkdevice-wayland.c @@ -1496,7 +1496,7 @@ seat_handle_capabilities (void *data, } else if (!(caps & WL_SEAT_CAPABILITY_POINTER) && device->wl_pointer) { - wl_pointer_destroy (device->wl_pointer); + wl_pointer_release (device->wl_pointer); device->wl_pointer = NULL; _gdk_device_set_associated_device (device->pointer, NULL); @@ -1533,7 +1533,7 @@ seat_handle_capabilities (void *data, } else if (!(caps & WL_SEAT_CAPABILITY_KEYBOARD) && device->wl_keyboard) { - wl_keyboard_destroy (device->wl_keyboard); + wl_keyboard_release (device->wl_keyboard); device->wl_keyboard = NULL; _gdk_device_set_associated_device (device->keyboard, NULL); @@ -1570,7 +1570,7 @@ seat_handle_capabilities (void *data, } else if (!(caps & WL_SEAT_CAPABILITY_TOUCH) && device->wl_touch) { - wl_touch_destroy (device->wl_touch); + wl_touch_release (device->wl_touch); device->wl_touch = NULL; _gdk_device_set_associated_device (device->touch, NULL); diff --git a/gdk/wayland/gdkdisplay-wayland.c b/gdk/wayland/gdkdisplay-wayland.c index 2f13b0cc5b..e8c03e3415 100644 --- a/gdk/wayland/gdkdisplay-wayland.c +++ b/gdk/wayland/gdkdisplay-wayland.c @@ -171,7 +171,7 @@ gdk_registry_handle_global(void *data, struct wl_registry *registry, uint32_t id wl_registry_bind(display_wayland->wl_registry, id, &wl_output_interface, MIN (version, 2)); _gdk_wayland_screen_add_output(display_wayland->screen, id, output, MIN (version, 2)); } else if (strcmp(interface, "wl_seat") == 0) { - seat = wl_registry_bind(display_wayland->wl_registry, id, &wl_seat_interface, 2); + seat = wl_registry_bind(display_wayland->wl_registry, id, &wl_seat_interface, 3); _gdk_wayland_device_manager_add_seat (gdk_display->device_manager, id, seat); } else if (strcmp(interface, "wl_data_device_manager") == 0) { display_wayland->data_device_manager =