diff --git a/server-client.c b/server-client.c index 24ea04fea..c7685a47e 100644 --- a/server-client.c +++ b/server-client.c @@ -117,6 +117,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); } @@ -141,6 +142,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 2cdc21071..0e08444c3 100644 --- a/window.c +++ b/window.c @@ -489,7 +489,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; }