From: Carlos Garnacho <carlosg@gnome.org> Date: Wed, 1 Mar 2023 13:58:13 +0100 Subject: core: Avoid focusing windows on map during grabs Normally, mutter implicitly allows a window being shown to take focus. This is normally desired, except it steals input from GNOME Shell self. Avoid focusing the just shown window in those situations. Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2878> Origin: upstream, 44.rc, commit:3ac82a58c51a5c8db6b49e89a1232f99c79644cc --- src/core/window.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/core/window.c b/src/core/window.c index f32a7e6..9ae2f78 100644 --- a/src/core/window.c +++ b/src/core/window.c @@ -1988,6 +1988,15 @@ window_state_on_map (MetaWindow *window, return; } + /* Do not focus window on map if input is already taken by the + * compositor. + */ + if (!meta_display_windows_are_interactable (window->display)) + { + *takes_focus = FALSE; + return; + } + /* Terminal usage may be different; some users intend to launch * many apps in quick succession or to just view things in the new * window while still interacting with the terminal. In that case,