Switch to new subscribe protocol and wayland-egl
diff --git a/clients/simple-client.c b/clients/simple-client.c
index e71ac21..5b78fc7 100644
--- a/clients/simple-client.c
+++ b/clients/simple-client.c
@@ -35,7 +35,6 @@
 
 struct display {
 	struct wl_display *display;
-	struct wl_egl_display *native;
 	struct wl_compositor *compositor;
 	struct {
 		EGLDisplay dpy;
@@ -105,8 +104,7 @@
 	EGLint major, minor, n;
 	EGLBoolean ret;
 
-	display->egl.dpy =
-		eglGetDisplay(display->native);
+	display->egl.dpy = eglGetDisplay(display->display);
 	assert(display->egl.dpy);
 
 	ret = eglInitialize(display->egl.dpy, &major, &minor);
@@ -198,8 +196,7 @@
 	window->surface = wl_compositor_create_surface(display->compositor);
 	visual = wl_display_get_premultiplied_argb_visual(display->display);
 	window->native =
-		wl_egl_window_create(display->native,
-				     window->surface,
+		wl_egl_window_create(window->surface,
 				     window->geometry.width,
 				     window->geometry.height,
 				     visual);
@@ -280,7 +277,7 @@
 	struct display *d = data;
 
 	if (strcmp(interface, "compositor") == 0)
-		d->compositor = wl_compositor_create(display, id);
+		d->compositor = wl_compositor_create(display, id, 1);
 }
 
 static int
@@ -312,8 +309,6 @@
 	wl_display_add_global_listener(display.display,
 				       display_handle_global, &display);
 
-	display.native = wl_egl_display_create(display.display);
-
 	init_egl(&display);
 	create_surface(&window);
 	init_gl(&window);