clients: use wl_surface_commit
Use wl_surface_commit() to commit the buffer attach, as Weston now
requires.
NOTE: GL-applications are broken until you upgrade to a version of Mesa
which does wl_surface_commit() on eglSwapBuffers(). If you have
Cairo-gl, this means all toytoolkit apps, too.
simple-shm and simple-touch OTOH will work now.
Signed-off-by: Pekka Paalanen <ppaalanen@gmail.com>
diff --git a/clients/dnd.c b/clients/dnd.c
index 44c1541..4c070ff 100644
--- a/clients/dnd.c
+++ b/clients/dnd.c
@@ -269,6 +269,7 @@
wl_surface_attach(dnd_drag->drag_surface, buffer, 0, 0);
wl_surface_damage(dnd_drag->drag_surface, 0, 0,
dnd_drag->width, dnd_drag->height);
+ wl_surface_commit(dnd_drag->drag_surface);
}
static void
@@ -450,6 +451,7 @@
-dnd_drag->hotspot_x, -dnd_drag->hotspot_y);
wl_surface_damage(dnd_drag->drag_surface, 0, 0,
dnd_drag->width, dnd_drag->height);
+ wl_surface_commit(dnd_drag->drag_surface);
dnd->current_drag = dnd_drag;
window_schedule_redraw(dnd->window);
diff --git a/clients/simple-shm.c b/clients/simple-shm.c
index fc05bb4..66b3772 100644
--- a/clients/simple-shm.c
+++ b/clients/simple-shm.c
@@ -217,6 +217,7 @@
paint_pixels(window->shm_data, 20, window->width, window->height, time);
wl_surface_damage(window->surface,
20, 20, window->width - 40, window->height - 40);
+ wl_surface_commit(window->surface);
if (callback)
wl_callback_destroy(callback);
diff --git a/clients/simple-touch.c b/clients/simple-touch.c
index 68fb368..72a7e07 100644
--- a/clients/simple-touch.c
+++ b/clients/simple-touch.c
@@ -305,6 +305,7 @@
memset(touch->data, 64, width * height * 4);
wl_surface_attach(touch->surface, touch->buffer, 0, 0);
wl_surface_damage(touch->surface, 0, 0, width, height);
+ wl_surface_commit(touch->surface);
return touch;
}
diff --git a/clients/window.c b/clients/window.c
index 8ea453d..b2ad73a 100644
--- a/clients/window.c
+++ b/clients/window.c
@@ -852,6 +852,7 @@
wl_surface_damage(window->surface, 0, 0,
window->allocation.width,
window->allocation.height);
+ wl_surface_commit(window->surface);
window->server_allocation = window->allocation;
cairo_surface_destroy(window->cairo_surface);
window->cairo_surface = NULL;
@@ -2625,6 +2626,7 @@
wl_surface_attach(input->pointer_surface, buffer, 0, 0);
wl_surface_damage(input->pointer_surface, 0, 0,
image->width, image->height);
+ wl_surface_commit(input->pointer_surface);
}
static const struct wl_callback_listener pointer_surface_listener;