]> Dogcows Code - chaz/openbox/commitdiff
always unfocus the window when it disappears, no special cases.. (except unmanage)
authorDana Jansens <danakj@orodu.net>
Tue, 13 Mar 2007 04:15:25 +0000 (04:15 +0000)
committerDana Jansens <danakj@orodu.net>
Tue, 13 Mar 2007 04:15:25 +0000 (04:15 +0000)
openbox/client.c

index 569718c333287925aaf6dccf0637de378bc5e082..dc61deba21e7f332834faf15dddbdd908550f944 100644 (file)
@@ -2121,9 +2121,14 @@ void client_showhide(ObClient *self)
         if (!self->frame->visible)
             frame_show(self->frame);
     }
-    else if (self->frame->visible)
+    else if (self->frame->visible) {
         frame_hide(self->frame);
 
+        /* Fall back focus since we're disappearing */
+        if (focus_client == self)
+            client_unfocus(self);
+    }
+
     /* According to the ICCCM (sec 4.1.3.1) when a window is not visible, it
        needs to be in IconicState. This includes when it is on another
        desktop!
@@ -2505,10 +2510,6 @@ static void client_iconify_recursive(ObClient *self,
                    bottom'. */
                 focus_order_to_top(self);
 
-                /* Fall back focus since we're disappearing */
-                if (focus_client == self)
-                    client_unfocus(self);
-
                 changed = TRUE;
             }
         } else {
This page took 0.026402 seconds and 4 git commands to generate.