From f6008ffff41f67e3c20bd8b3be8f216da6a4bb30 Mon Sep 17 00:00:00 2001 From: Consolatis <40171-Consolatis@users.noreply.gitlab.freedesktop.org> Date: Mon, 6 Feb 2023 15:27:04 +0100 Subject: [PATCH] xdg-activation: accept pointer focus for new tokens This patch allows surfaces without keyboard focus but with pointer focus to receive valid tokens. This can be relevant for applications using an older version of the layershell protocol which only provided the choice between no keyboard focus and exclusive keyboard focus. --- types/wlr_xdg_activation_v1.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/types/wlr_xdg_activation_v1.c b/types/wlr_xdg_activation_v1.c index c04827bf..74ac0a8e 100644 --- a/types/wlr_xdg_activation_v1.c +++ b/types/wlr_xdg_activation_v1.c @@ -115,9 +115,10 @@ static void token_handle_commit(struct wl_client *client, } if (token->surface != NULL && - token->surface != token->seat->keyboard_state.focused_surface) { + token->surface != token->seat->keyboard_state.focused_surface && + token->surface != token->seat->pointer_state.focused_surface) { wlr_log(WLR_DEBUG, "Rejecting token commit request: " - "surface doesn't have keyboard focus"); + "surface doesn't have focus"); goto error; } }