mirror of
https://github.com/brl/mutter.git
synced 2024-11-24 09:00:42 -05:00
gtk-shell: Work around non-working startup notifications
GNOME Shell relies on the MetaScreen::startup-sequence-changed signal, which is tied to (lib)startup-notification and therefore X11. As a result, when we remove the startup sequence of a wayland client, GNOME Shell will not be notified about this until startup-notification's timeout is hit. As a temporary stop-gap, go through XWayland even for wayland clients, so that the signal is emitted when expected. https://bugzilla.gnome.org/show_bug.cgi?id=768531
This commit is contained in:
parent
34f5bdeea3
commit
dcfaf95ff4
@ -312,11 +312,21 @@ gtk_shell_set_startup_id (struct wl_client *client,
|
|||||||
struct wl_resource *resource,
|
struct wl_resource *resource,
|
||||||
const char *startup_id)
|
const char *startup_id)
|
||||||
{
|
{
|
||||||
|
#if 0
|
||||||
MetaDisplay *display;
|
MetaDisplay *display;
|
||||||
|
|
||||||
display = meta_get_display ();
|
display = meta_get_display ();
|
||||||
meta_startup_notification_remove_sequence (display->startup_notification,
|
meta_startup_notification_remove_sequence (display->startup_notification,
|
||||||
startup_id);
|
startup_id);
|
||||||
|
#else
|
||||||
|
/* HACK: MetaScreen::startup-sequence-changed is currently tied to
|
||||||
|
(lib)startup-notification, which means it only works on X11;
|
||||||
|
so for now, always go through XWayland, even for wayland clients */
|
||||||
|
gdk_x11_display_broadcast_startup_message (gdk_display_get_default (),
|
||||||
|
"remove",
|
||||||
|
"ID", startup_id,
|
||||||
|
NULL);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
Loading…
Reference in New Issue
Block a user