wayland: Port to new input protocol mechanism

This replaces the wl_input_device with wl_pointer, wl_keyboard, wl_touch all
tied together under a wl_seat.

This is quite a radical change in protocol and for now keyboard handling is
disabled.
This commit is contained in:
Rob Bradford
2012-07-11 14:29:43 +01:00
parent b1a5b19b4a
commit 3eb0b195ed
4 changed files with 375 additions and 59 deletions

View File

@ -124,7 +124,7 @@ gdk_display_handle_global(struct wl_display *display, uint32_t id,
{
GdkWaylandDisplay *display_wayland = data;
GdkDisplay *gdk_display = GDK_DISPLAY_OBJECT (data);
struct wl_input_device *input;
struct wl_seat *seat;
if (strcmp(interface, "wl_compositor") == 0) {
display_wayland->compositor =
@ -141,10 +141,10 @@ gdk_display_handle_global(struct wl_display *display, uint32_t id,
wl_display_bind(display, id, &wl_output_interface);
wl_output_add_listener(display_wayland->output,
&output_listener, display_wayland);
} else if (strcmp(interface, "wl_input_device") == 0) {
input = wl_display_bind(display, id, &wl_input_device_interface);
} else if (strcmp(interface, "wl_seat") == 0) {
seat = wl_display_bind (display, id, &wl_seat_interface);
_gdk_wayland_device_manager_add_device (gdk_display->device_manager,
input);
seat);
} else if (strcmp(interface, "wl_data_device_manager") == 0) {
display_wayland->data_device_manager =
wl_display_bind(display, id,