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!
bottom'. */
focus_order_to_top(self);
- /* Fall back focus since we're disappearing */
- if (focus_client == self)
- client_unfocus(self);
-
changed = TRUE;
}
} else {