From 108b7025dc814e70b98c98634aa3b9e7e77e3446 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Guido=20G=C3=BCnther?= Date: Tue, 11 Jan 2022 20:21:55 +0100 Subject: [PATCH] wayland: xdg-activation: Don't assume there's a focus surface MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Tools like gtk4-launch can't set surface on the activation token so don't require it. If the compositor requires it we can't do anything about it anyway. This avoids a critical: (gtk4-launch:23497): Gdk-CRITICAL **: 17:07:24.704: gdk_wayland_surface_get_wl_surface: assertion 'GDK_IS_WAYLAND_SURFACE (surface)' failed Fixes: be4216e051 ("gdk/wayland: Support the xdg-activation wayland protocol") Signed-off-by: Guido Günther --- gdk/wayland/gdkapplaunchcontext-wayland.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gdk/wayland/gdkapplaunchcontext-wayland.c b/gdk/wayland/gdkapplaunchcontext-wayland.c index c9498e507c..c8bf5afd25 100644 --- a/gdk/wayland/gdkapplaunchcontext-wayland.c +++ b/gdk/wayland/gdkapplaunchcontext-wayland.c @@ -73,8 +73,9 @@ gdk_wayland_app_launch_context_get_startup_notify_id (GAppLaunchContext *context xdg_activation_token_v1_set_serial (token, _gdk_wayland_seat_get_last_implicit_grab_serial (seat, NULL), gdk_wayland_seat_get_wl_seat (GDK_SEAT (seat))); - xdg_activation_token_v1_set_surface (token, - gdk_wayland_surface_get_wl_surface (focus_surface)); + if (focus_surface) + xdg_activation_token_v1_set_surface (token, + gdk_wayland_surface_get_wl_surface (focus_surface)); xdg_activation_token_v1_commit (token); while (app_launch_data.token == NULL) -- 2.30.2