debug print in focus.c when focus goes to something that isn't a client (window already unmapped) then set focus_client to NULL so we know nothing has focus right now
Dana Jansens danakj@orodu.net
2 files changed,
7 insertions(+),
3 deletions(-)
M
openbox/event.c
→
openbox/event.c
@@ -526,7 +526,10 @@ "Focus went to a window that is already gone\n");
/* If you send focus to a window and then it disappears, you can get the FocusIn for it, after it is unmanaged. - Just wait for the next FocusOut/FocusIn pair. */ + Just wait for the next FocusOut/FocusIn pair, but note that + nothing is focused now. + */ + focus_set_client(NULL); } else if (client != focus_client) { focus_left_screen = FALSE;
M
openbox/focus.c
→
openbox/focus.c
@@ -146,8 +146,9 @@ ((send_focus && client_focus(c)) ||
/* if not just see if we could try, or it's already focused */ (!send_focus && (c == old || client_can_focus(c))))) { - ob_debug_type(OB_DEBUG_FOCUS, "found in focus order (%d)\n", - send_focus); + ob_debug_type(OB_DEBUG_FOCUS, "found in focus order (%d) 0x%x " + "from 0x%x\n", + send_focus, c, old); return c; } }