summaryrefslogtreecommitdiff
path: root/openbox/client.c
diff options
context:
space:
mode:
Diffstat (limited to 'openbox/client.c')
-rw-r--r--openbox/client.c18
1 files changed, 9 insertions, 9 deletions
diff --git a/openbox/client.c b/openbox/client.c
index c7d03a82..05f9d095 100644
--- a/openbox/client.c
+++ b/openbox/client.c
@@ -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);