summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJasper St. Pierre <jstpierre@mecheye.net>2014-02-08 18:31:10 -0500
committerKristian Høgsberg <krh@bitplanet.net>2014-02-18 16:38:53 -0800
commita0d8a309317d1bebf1e2c1cee4b08af226871009 (patch)
tree6e6e40a48d0d962a64ce36178e2d0263e3f24c3d
parent5a183329cac23d58f66de6de522b8e15e2a82f45 (diff)
clients: Add delete handler for simple-shm / simple-egl
It seems this was forgotten in the port.
-rw-r--r--clients/simple-egl.c7
-rw-r--r--clients/simple-shm.c11
2 files changed, 16 insertions, 2 deletions
diff --git a/clients/simple-egl.c b/clients/simple-egl.c
index ca1c2aab..538f45f5 100644
--- a/clients/simple-egl.c
+++ b/clients/simple-egl.c
@@ -310,6 +310,12 @@ handle_surface_focused_unset(void *data, struct xdg_surface *xdg_surface)
{
}
+static void
+handle_surface_delete(void *data, struct xdg_surface *xdg_surface)
+{
+ running = 0;
+}
+
static const struct xdg_surface_listener xdg_surface_listener = {
handle_surface_configure,
handle_surface_request_set_maximized,
@@ -318,6 +324,7 @@ static const struct xdg_surface_listener xdg_surface_listener = {
handle_surface_request_unset_fullscreen,
handle_surface_focused_set,
handle_surface_focused_unset,
+ handle_surface_delete,
};
static void
diff --git a/clients/simple-shm.c b/clients/simple-shm.c
index 2dbe7cb5..ec130ed0 100644
--- a/clients/simple-shm.c
+++ b/clients/simple-shm.c
@@ -61,6 +61,8 @@ struct window {
struct wl_callback *callback;
};
+static int running = 1;
+
static void
buffer_release(void *data, struct wl_buffer *buffer)
{
@@ -147,6 +149,12 @@ handle_focused_unset(void *data, struct xdg_surface *xdg_surface)
{
}
+static void
+handle_delete(void *data, struct xdg_surface *xdg_surface)
+{
+ running = 0;
+}
+
static const struct xdg_surface_listener xdg_surface_listener = {
handle_configure,
handle_request_set_maximized,
@@ -155,6 +163,7 @@ static const struct xdg_surface_listener xdg_surface_listener = {
handle_request_unset_fullscreen,
handle_focused_set,
handle_focused_unset,
+ handle_delete,
};
static struct window *
@@ -423,8 +432,6 @@ destroy_display(struct display *display)
free(display);
}
-static int running = 1;
-
static void
signal_int(int signum)
{