gdk/wayland: save custom xdg-activation startup_id
authorJoan Bruguera <joanbrugueram@gmail.com>
Tue, 6 Dec 2022 23:51:28 +0000 (23:51 +0000)
committerDmitry Shachnev <mitya57@debian.org>
Wed, 15 Feb 2023 09:45:23 +0000 (09:45 +0000)
We must save the startup id. in gdk_wayland_display_notify_startup_complete
which was set by a previous gtk_window_set_startup_id call so we can use it
later when presenting the window.

Needed for activation of gnome-terminal (also needs patches on the application
side, see https://gitlab.gnome.org/GNOME/gnome-terminal/-/issues/7952).

Signed-off-by: Joan Bruguera <joanbrugueram@gmail.com>
Bug: https://gitlab.gnome.org/GNOME/gtk/-/issues/5386
Forwarded: https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/5301
Applied-upstream: no, rejected in https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/5302#note_1622250

Gbp-Pq: Name gdk-wayland-save-custom-xdg-activation-startup_id.patch

gdk/wayland/gdkdisplay-wayland.c

index 55c0388ec6b5fba770ee4d37bd4b48626005ba1b..da366d7235b18bff54c43fc13cc0b81c8630007a 100644 (file)
@@ -952,7 +952,13 @@ gdk_wayland_display_notify_startup_complete (GdkDisplay  *display,
 #ifdef HAVE_XDG_ACTIVATION
   /* Will be signaled with focus activation */
   if (display_wayland->xdg_activation)
-    return;
+    {
+      if (startup_id != NULL)
+        {
+          display_wayland->startup_notification_id = g_strdup (startup_id);
+        }
+      return;
+    }
 #endif
 
   if (startup_id == NULL)