Use wl_display_bind() for binding to globals
diff --git a/compositor/compositor-wayland.c b/compositor/compositor-wayland.c
index fad04aa..128ce11 100644
--- a/compositor/compositor-wayland.c
+++ b/compositor/compositor-wayland.c
@@ -453,7 +453,8 @@
memset(input, 0, sizeof *input);
input->compositor = c;
- input->input_device = wl_input_device_create(c->parent.display, id, 1);
+ input->input_device = wl_display_bind(c->parent.display,
+ id, &wl_input_device_interface);
wl_list_insert(c->input_list.prev, &input->link);
wl_input_device_add_listener(input->input_device,
@@ -470,7 +471,8 @@
switch (token) {
case WL_COMPOSITOR_VISUAL_ARGB32:
- c->parent.visual = wl_visual_create(c->parent.display, id, 1);
+ c->parent.visual = wl_display_bind(c->parent.display,
+ id, &wl_visual_interface);
break;
}
}
@@ -486,16 +488,19 @@
struct wayland_compositor *c = data;
if (strcmp(interface, "wl_compositor") == 0) {
- c->parent.compositor = wl_compositor_create(display, id, 1);
+ c->parent.compositor =
+ wl_display_bind(display, id, &wl_compositor_interface);
wl_compositor_add_listener(c->parent.compositor,
&compositor_listener, c);
} else if (strcmp(interface, "wl_output") == 0) {
- c->parent.output = wl_output_create(display, id, 1);
+ c->parent.output =
+ wl_display_bind(display, id, &wl_output_interface);
wl_output_add_listener(c->parent.output, &output_listener, c);
} else if (strcmp(interface, "wl_input_device") == 0) {
display_add_input(c, id);
} else if (strcmp(interface, "wl_shell") == 0) {
- c->parent.shell = wl_shell_create(display, id, 1);
+ c->parent.shell =
+ wl_display_bind(display, id, &wl_shell_interface);
wl_shell_add_listener(c->parent.shell, &shell_listener, c);
}
}