wayland: Implement gtk-shell v3

Implement the gtk_shell.set_startup_id request, so that the ID is
removed from the sequences list, and feedback updated accordingly.

https://bugzilla.gnome.org/show_bug.cgi?id=762268
This commit is contained in:
Carlos Garnacho 2016-02-06 15:04:25 +01:00
parent 3729e592a6
commit 3f60a2e48a
2 changed files with 16 additions and 3 deletions

View File

@ -2065,8 +2065,21 @@ get_gtk_surface (struct wl_client *client,
wl_resource_set_implementation (surface->gtk_surface, &meta_wayland_gtk_surface_interface, surface, gtk_surface_destructor); wl_resource_set_implementation (surface->gtk_surface, &meta_wayland_gtk_surface_interface, surface, gtk_surface_destructor);
} }
static void
set_startup_id (struct wl_client *client,
struct wl_resource *resource,
const char *startup_id)
{
MetaDisplay *display;
display = meta_get_display ();
meta_startup_notification_remove_sequence (display->startup_notification,
startup_id);
}
static const struct gtk_shell_interface meta_wayland_gtk_shell_interface = { static const struct gtk_shell_interface meta_wayland_gtk_shell_interface = {
get_gtk_surface get_gtk_surface,
set_startup_id
}; };
static void static void
@ -2080,7 +2093,7 @@ bind_gtk_shell (struct wl_client *client,
resource = wl_resource_create (client, &gtk_shell_interface, version, id); resource = wl_resource_create (client, &gtk_shell_interface, version, id);
if (version != META_GTK_SHELL_VERSION) if (version < 2)
{ {
wl_resource_post_error (resource, wl_resource_post_error (resource,
WL_DISPLAY_ERROR_INVALID_OBJECT, WL_DISPLAY_ERROR_INVALID_OBJECT,

View File

@ -42,7 +42,7 @@
#define META_WL_SEAT_VERSION 5 #define META_WL_SEAT_VERSION 5
#define META_WL_OUTPUT_VERSION 2 #define META_WL_OUTPUT_VERSION 2
#define META_XSERVER_VERSION 1 #define META_XSERVER_VERSION 1
#define META_GTK_SHELL_VERSION 2 #define META_GTK_SHELL_VERSION 3
#define META_WL_SUBCOMPOSITOR_VERSION 1 #define META_WL_SUBCOMPOSITOR_VERSION 1
#define META_ZWP_POINTER_GESTURES_V1_VERSION 1 #define META_ZWP_POINTER_GESTURES_V1_VERSION 1