From e80251e751f5fedb64ab262c45df39e945ddfe40 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guido=20G=C3=BCnther?= Date: Wed, 25 Aug 2021 12:21:48 +0200 Subject: [PATCH] wayland: Keep startup_notification_id around long enough When using xdg_activation we need to keep the id around until we send the first activate to signal succesful startup. Backport-of: 999509be619bfa0f50a549489b5ab5c890b574fa Signed-off-by: Joan Bruguera --- gdk/wayland/gdkdisplay-wayland.c | 4 ++++ gdk/wayland/gdkwindow-wayland.c | 1 + 2 files changed, 5 insertions(+) diff --git a/gdk/wayland/gdkdisplay-wayland.c b/gdk/wayland/gdkdisplay-wayland.c index 7de55f7e52..e473996f86 100644 --- a/gdk/wayland/gdkdisplay-wayland.c +++ b/gdk/wayland/gdkdisplay-wayland.c @@ -945,6 +945,10 @@ gdk_wayland_display_notify_startup_complete (GdkDisplay *display, { GdkWaylandDisplay *display_wayland = GDK_WAYLAND_DISPLAY (display); + /* Will be signaled with focus activation */ + if (display_wayland->xdg_activation) + return; + if (startup_id == NULL) { startup_id = display_wayland->startup_notification_id; diff --git a/gdk/wayland/gdkwindow-wayland.c b/gdk/wayland/gdkwindow-wayland.c index ed49dd64ca..53790e0e31 100644 --- a/gdk/wayland/gdkwindow-wayland.c +++ b/gdk/wayland/gdkwindow-wayland.c @@ -3832,6 +3832,7 @@ gdk_wayland_window_focus (GdkWindow *window, xdg_activation_v1_activate (display_wayland->xdg_activation, display_wayland->startup_notification_id, impl->display_server.wl_surface); + gdk_wayland_display_set_startup_notification_id (GDK_DISPLAY (display_wayland), NULL); } else if (display_wayland->gtk_shell_version >= 3) {