]> Dogcows Code - chaz/openbox/commitdiff
unfocus before unlinking the client from the transient tree
authorDana Jansens <danakj@orodu.net>
Sat, 27 Sep 2003 05:19:15 +0000 (05:19 +0000)
committerDana Jansens <danakj@orodu.net>
Sat, 27 Sep 2003 05:19:15 +0000 (05:19 +0000)
openbox/client.c

index c7d03a826fa61c28e8bbd9452178586b4df69cf5..05f9d0956b0e75924e4ca3a36b2f8d7fd6292d25 100644 (file)
@@ -401,6 +401,15 @@ void client_unmanage(ObClient *self)
        influence */
     screen_update_areas();
 
+    if (focus_client == self) {
+        XEvent e;
+
+        /* focus the last focused window on the desktop, and ignore enter
+           events from the unmap so it doesnt mess with the focus */
+        while (XCheckTypedEvent(ob_display, EnterNotify, &e));
+        client_unfocus(self);
+    }
+
     /* tell our parent(s) that we're gone */
     if (self->transient_for == OB_TRAN_GROUP) { /* transient of group */
         GSList *it;
@@ -427,15 +436,6 @@ void client_unmanage(ObClient *self)
         func(self);
     }
         
-    if (focus_client == self) {
-        XEvent e;
-
-        /* focus the last focused window on the desktop, and ignore enter
-           events from the unmap so it doesnt mess with the focus */
-        while (XCheckTypedEvent(ob_display, EnterNotify, &e));
-        client_unfocus(self);
-    }
-
     /* remove from its group */
     if (self->group) {
         group_remove(self->group, self);
This page took 0.031061 seconds and 4 git commands to generate.