From a99e139a68bd4e5350033163dfd85b6ce6da92a2 Mon Sep 17 00:00:00 2001 From: Sebastian Keller Date: Tue, 28 May 2024 19:21:12 +0200 Subject: [PATCH] events: Don't check for stage grabs before sending events to ibus Prior to the grabs/focus rework in !3420, Wayland grabs were handled separately from ClutterGrabs. This required explicitly checking for ClutterGrabs as those were expected to prevent events from reaching Wayland clients. Now after !3420, Wayland client grabs also result in ClutterGrabs, which means that this check causes input events for popups with grabs to not get sent to ibus anymore. Instead the events are getting sent to the client directly, which results no ibus support in popups (unless the client handles that itself by using a different GTK_IM_MODULE). However due to the changes from !3420 checking for ClutterGrabs is also no longer necessary and the meta_wayland_text_input_update() focus check is now sufficient to only forward events to ibus, when the focus is actually on a Wayland client. So to fix this we can simply remove the check. Fixes: 2a584a8f0 ("wayland: Make use of Wayland event grabbing mechanism") Closes: https://gitlab.gnome.org/GNOME/mutter/-/issues/3502 Part-of: --- src/core/events.c | 1 - 1 file changed, 1 deletion(-) diff --git a/src/core/events.c b/src/core/events.c index 4261bfb98..761a9d262 100644 --- a/src/core/events.c +++ b/src/core/events.c @@ -288,7 +288,6 @@ meta_display_handle_event (MetaDisplay *display, #ifdef HAVE_WAYLAND if (wayland_text_input && - !has_grab && !meta_compositor_get_current_window_drag (compositor) && meta_wayland_text_input_update (wayland_text_input, event)) return CLUTTER_EVENT_STOP;