From fee3707a08012905251c353d719e2f6964087565 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Florian=20M=C3=BCllner?= Date: Fri, 25 May 2018 18:18:23 +0000 Subject: [PATCH] window: Don't refuse to move focus to the grab window We refuse to move focus while a grab operation is in place. While this generally makes sense, there's no reason why the window that owns the grab shouldn't be given the regular input focus as well - we pretty much assume that the grab window is also the focus window anyway. In fact there's a strong reason for allowing the focus change here: If the grab window isn't the focus window, it probably has a modal transient that is focused instead, and a likely reason for the focus request is that the transient is being unmanaged and we must move the focus elsewhere. https://gitlab.gnome.org/GNOME/mutter/issues/15 (cherry picked from commit 148da24f9510ebd23d750b8224aa0ab3a549e69e) Bug-GNOME: https://gitlab.gnome.org/GNOME/mutter/issues/15 Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/gnome-shell/+bug/1422253 Applied-Upstream: 3.28.4, commit:https://gitlab.gnome.org/GNOME/mutter/commit/513cc535 Gbp-Pq: Name window-Don-t-refuse-to-move-focus-to-the-grab-window.patch --- src/core/window.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/core/window.c b/src/core/window.c index 743326c..5b1eb5b 100644 --- a/src/core/window.c +++ b/src/core/window.c @@ -4620,6 +4620,7 @@ meta_window_focus (MetaWindow *window, window->desc, window->input, window->take_focus); if (window->display->grab_window && + window->display->grab_window != window && window->display->grab_window->all_keys_grabbed && !window->display->grab_window->unmanaging) { -- 2.30.2