]> Dogcows Code - chaz/openbox/blobdiff - openbox/client.c
also if you hide the focused window, then kill the interactive action so focus isnt...
[chaz/openbox] / openbox / client.c
index 6446a794d58ba5050d49359a17d5de10d0ba00a4..837dd0194a74a8ed4e74a362f8f91e0452f9a3b3 100644 (file)
@@ -2421,6 +2421,18 @@ gboolean client_hide(ObClient *self)
     gboolean hide = FALSE;
 
     if (!client_should_show(self)) {
+        if (self == focus_client) {
+            /* if there is a grab going on, then we need to cancel it. if we
+               move focus during the grab, applications will get
+               NotifyWhileGrabbed events and ignore them !
+
+               actions should not rely on being able to move focus during an
+               interactive grab.
+            */
+            if (keyboard_interactively_grabbed())
+                keyboard_interactive_cancel();
+        }
+
         frame_hide(self->frame);
         hide = TRUE;
     }
This page took 0.020765 seconds and 4 git commands to generate.