diff --git a/screen-redraw.c b/screen-redraw.c index 50862f9e..1f51e743 100644 --- a/screen-redraw.c +++ b/screen-redraw.c @@ -456,6 +456,9 @@ screen_redraw_pane(struct client *c, struct window_pane *wp) { struct screen_redraw_ctx ctx; + if (wp->layout_cell == NULL) + return; + screen_redraw_set_context(c, &ctx); screen_redraw_draw_pane(&ctx, wp); @@ -542,6 +545,8 @@ screen_redraw_draw_panes(struct screen_redraw_ctx *ctx) log_debug("%s: %s @%u", __func__, c->name, w->id); TAILQ_FOREACH(wp, &w->panes, entry) { + if (wp->layout_cell == NULL) + continue; screen_redraw_draw_pane(ctx, wp); if (c->flags & CLIENT_IDENTIFY) screen_redraw_draw_number(ctx, wp); diff --git a/tmux.h b/tmux.h index aac96be7..76130265 100644 --- a/tmux.h +++ b/tmux.h @@ -2013,10 +2013,10 @@ void grid_view_scroll_region_up(struct grid *, u_int, u_int, u_int); void grid_view_scroll_region_down(struct grid *, u_int, u_int, u_int); void grid_view_insert_lines(struct grid *, u_int, u_int, u_int); void grid_view_insert_lines_region(struct grid *, u_int, u_int, u_int, - u_int); + u_int); void grid_view_delete_lines(struct grid *, u_int, u_int, u_int); void grid_view_delete_lines_region(struct grid *, u_int, u_int, u_int, - u_int); + u_int); void grid_view_insert_cells(struct grid *, u_int, u_int, u_int, u_int); void grid_view_delete_cells(struct grid *, u_int, u_int, u_int, u_int); char *grid_view_string_cells(struct grid *, u_int, u_int, u_int); diff --git a/tty.c b/tty.c index a6cfadf9..495366e4 100644 --- a/tty.c +++ b/tty.c @@ -1330,6 +1330,8 @@ tty_client_ready(struct client *c, struct window_pane *wp) return (0); if (c->session->curw->window != wp->window) return (0); + if (wp->layout_cell == NULL) + return (0); return (1); }