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) {