focus_client is already nulled from the fallback, and use client_focused for niceness in the future
This commit is contained in:
parent
b673823d0b
commit
1c4c2b92a0
1 changed files with 6 additions and 4 deletions
|
@ -493,7 +493,7 @@ void client_unmanage(ObClient *self)
|
||||||
|
|
||||||
/* update the focus lists */
|
/* update the focus lists */
|
||||||
focus_order_remove(self);
|
focus_order_remove(self);
|
||||||
if (self == focus_client) {
|
if (client_focused(self)) {
|
||||||
/* we have to fall back here because we might not get a focus out.
|
/* we have to fall back here because we might not get a focus out.
|
||||||
1. we need to xselectinput off the window before we unmap it because
|
1. we need to xselectinput off the window before we unmap it because
|
||||||
otherwise we end up getting unmapnotifies we don't want and they
|
otherwise we end up getting unmapnotifies we don't want and they
|
||||||
|
@ -503,11 +503,13 @@ void client_unmanage(ObClient *self)
|
||||||
get the focusout event.
|
get the focusout event.
|
||||||
3. we can't handle focusin events on the root window because they
|
3. we can't handle focusin events on the root window because they
|
||||||
come from all screens, so the focus change gets lost
|
come from all screens, so the focus change gets lost
|
||||||
|
|
||||||
|
if this ever gets removed in the future MAKE SURE to replace it
|
||||||
|
with:
|
||||||
|
/- don't leave an invalid focus_client -/
|
||||||
|
focus_client = NULL;
|
||||||
*/
|
*/
|
||||||
focus_fallback(FALSE);
|
focus_fallback(FALSE);
|
||||||
|
|
||||||
/* don't leave an invalid focus_client */
|
|
||||||
focus_client = NULL;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
client_list = g_list_remove(client_list, self);
|
client_list = g_list_remove(client_list, self);
|
||||||
|
|
Loading…
Reference in a new issue