diff --git a/server-client.c b/server-client.c index 851d9fd2..8c5f3645 100644 --- a/server-client.c +++ b/server-client.c @@ -121,6 +121,7 @@ server_client_set_overlay(struct client *c, u_int delay, c->tty.flags |= TTY_FREEZE; if (c->overlay_mode == NULL) c->tty.flags |= TTY_NOCURSOR; + window_update_focus(c->session->curw->window); server_redraw_client(c); } @@ -145,6 +146,7 @@ server_client_clear_overlay(struct client *c) c->overlay_data = NULL; c->tty.flags &= ~(TTY_FREEZE|TTY_NOCURSOR); + window_update_focus(c->session->curw->window); server_redraw_client(c); } diff --git a/window.c b/window.c index 06d37453..86e8d1c0 100644 --- a/window.c +++ b/window.c @@ -482,7 +482,8 @@ window_pane_update_focus(struct window_pane *wp) if (c->session != NULL && c->session->attached != 0 && (c->flags & CLIENT_FOCUSED) && - c->session->curw->window == wp->window) { + c->session->curw->window == wp->window && + c->overlay_draw == NULL) { focused = 1; break; }