always unfocus the window when it disappears, no special cases.. (except unmanage)
This commit is contained in:
parent
270a5b25df
commit
a9910e520b
1 changed files with 6 additions and 5 deletions
|
@ -2121,9 +2121,14 @@ void client_showhide(ObClient *self)
|
||||||
if (!self->frame->visible)
|
if (!self->frame->visible)
|
||||||
frame_show(self->frame);
|
frame_show(self->frame);
|
||||||
}
|
}
|
||||||
else if (self->frame->visible)
|
else if (self->frame->visible) {
|
||||||
frame_hide(self->frame);
|
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
|
/* 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
|
needs to be in IconicState. This includes when it is on another
|
||||||
desktop!
|
desktop!
|
||||||
|
@ -2505,10 +2510,6 @@ static void client_iconify_recursive(ObClient *self,
|
||||||
bottom'. */
|
bottom'. */
|
||||||
focus_order_to_top(self);
|
focus_order_to_top(self);
|
||||||
|
|
||||||
/* Fall back focus since we're disappearing */
|
|
||||||
if (focus_client == self)
|
|
||||||
client_unfocus(self);
|
|
||||||
|
|
||||||
changed = TRUE;
|
changed = TRUE;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Reference in a new issue