From 084aa0b6f6adcdb3b11d1bcd384c197c2d66c0c8 Mon Sep 17 00:00:00 2001 From: "Jasper St. Pierre" Date: Fri, 13 Feb 2015 14:02:00 +0800 Subject: [PATCH] xdg-shell: Add a simple destructor request Reviewed-by: Pekka Paalanen --- desktop-shell/shell.c | 10 +++++++++- protocol/xdg-shell.xml | 5 +++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/desktop-shell/shell.c b/desktop-shell/shell.c index bec49e67..a61b27ce 100644 --- a/desktop-shell/shell.c +++ b/desktop-shell/shell.c @@ -3984,6 +3984,13 @@ static const struct weston_shell_client xdg_client = { xdg_send_configure }; +static void +xdg_shell_destroy(struct wl_client *client, + struct wl_resource *resource) +{ + wl_resource_destroy(resource); +} + static void xdg_use_unstable_version(struct wl_client *client, struct wl_resource *resource, @@ -4194,6 +4201,7 @@ shell_surface_is_xdg_popup(struct shell_surface *shsurf) } static const struct xdg_shell_interface xdg_implementation = { + xdg_shell_destroy, xdg_use_unstable_version, xdg_get_xdg_surface, xdg_get_xdg_popup, @@ -4209,7 +4217,7 @@ xdg_shell_unversioned_dispatch(const void *implementation, struct wl_resource *resource = _target; struct shell_client *sc = wl_resource_get_user_data(resource); - if (opcode != 0) { + if (opcode != 1 /* XDG_SHELL_USE_UNSTABLE_VERSION */) { wl_resource_post_error(resource, WL_DISPLAY_ERROR_INVALID_OBJECT, "must call use_unstable_version first"); diff --git a/protocol/xdg-shell.xml b/protocol/xdg-shell.xml index fbf37231..b940cff4 100644 --- a/protocol/xdg-shell.xml +++ b/protocol/xdg-shell.xml @@ -52,6 +52,11 @@ + + + + + Negotiate the unstable version of the interface. This