mirror of
https://github.com/tmux/tmux.git
synced 2026-01-11 16:30:22 +00:00
Add checking the redraw of floating panes and the pane border status.
This commit is contained in:
@@ -546,7 +546,7 @@ screen_redraw_draw_pane_status(struct screen_redraw_ctx *ctx)
|
|||||||
struct window_pane *wp;
|
struct window_pane *wp;
|
||||||
struct screen *s;
|
struct screen *s;
|
||||||
struct visible_ranges *vr;
|
struct visible_ranges *vr;
|
||||||
u_int i, x, width, xoff, yoff, size;
|
u_int i, x, width, xoff, yoff, size, r;
|
||||||
|
|
||||||
log_debug("%s: %s @%u", __func__, c->name, w->id);
|
log_debug("%s: %s @%u", __func__, c->name, w->id);
|
||||||
|
|
||||||
@@ -592,11 +592,15 @@ screen_redraw_draw_pane_status(struct screen_redraw_ctx *ctx)
|
|||||||
|
|
||||||
if (ctx->statustop)
|
if (ctx->statustop)
|
||||||
yoff += ctx->statuslines;
|
yoff += ctx->statuslines;
|
||||||
vr = screen_redraw_get_visible_ranges(wp, i, 0, width);
|
vr = screen_redraw_get_visible_ranges(wp, x, yoff - ctx->oy, width);
|
||||||
|
|
||||||
tty_draw_line(tty, s, i, 0, width, x, yoff - ctx->oy,
|
for (r=0; r < vr->used; r++) {
|
||||||
|
if (vr->nx[r] == 0)
|
||||||
|
continue;
|
||||||
|
tty_draw_line(tty, s, i + (vr->px[r] - x), 0, vr->nx[r], vr->px[r], yoff - ctx->oy,
|
||||||
&grid_default_cell, NULL, vr);
|
&grid_default_cell, NULL, vr);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
tty_cursor(tty, 0, 0);
|
tty_cursor(tty, 0, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user