aboutsummaryrefslogtreecommitdiff
path: root/screen-redraw.c
diff options
context:
space:
mode:
authorThomas Adam <thomas@xteddy.org>2022-03-16 20:01:10 +0000
committerThomas Adam <thomas@xteddy.org>2022-03-16 20:01:10 +0000
commit5d4c3ef762d9073510518c24b40c1d8bf12e0b65 (patch)
treea446c630e29fcfd4a3c3a6e27699b4300e968980 /screen-redraw.c
parentee3f1d25d568a425420cf14ccba6a1b2a012f7dd (diff)
parente6e737ac0bf9a5be729b5c71f3a582355432d041 (diff)
downloadrtmux-5d4c3ef762d9073510518c24b40c1d8bf12e0b65.tar.gz
rtmux-5d4c3ef762d9073510518c24b40c1d8bf12e0b65.tar.bz2
rtmux-5d4c3ef762d9073510518c24b40c1d8bf12e0b65.zip
Merge branch 'obsd-master' into master
Diffstat (limited to 'screen-redraw.c')
-rw-r--r--screen-redraw.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/screen-redraw.c b/screen-redraw.c
index ef79d9aa..c4906ab8 100644
--- a/screen-redraw.c
+++ b/screen-redraw.c
@@ -47,11 +47,16 @@ enum screen_redraw_border_type {
/* Get cell border character. */
static void
-screen_redraw_border_set(struct window_pane *wp, enum pane_lines pane_lines,
- int cell_type, struct grid_cell *gc)
+screen_redraw_border_set(struct window *w, struct window_pane *wp,
+ enum pane_lines pane_lines, int cell_type, struct grid_cell *gc)
{
u_int idx;
+ if (cell_type == CELL_OUTSIDE && w->fill_character != NULL) {
+ utf8_copy(&gc->data, &w->fill_character[0]);
+ return;
+ }
+
switch (pane_lines) {
case PANE_LINES_NUMBER:
if (cell_type == CELL_OUTSIDE) {
@@ -409,7 +414,7 @@ screen_redraw_make_pane_status(struct client *c, struct window_pane *wp,
else
py = wp->yoff + wp->sy;
cell_type = screen_redraw_type_of_cell(c, px, py, pane_status);
- screen_redraw_border_set(wp, pane_lines, cell_type, &gc);
+ screen_redraw_border_set(w, wp, pane_lines, cell_type, &gc);
screen_write_cell(&ctx, &gc);
}
gc.attr &= ~GRID_ATTR_CHARSET;
@@ -690,7 +695,7 @@ screen_redraw_draw_borders_cell(struct screen_redraw_ctx *ctx, u_int i, u_int j)
screen_redraw_check_is(x, y, pane_status, marked_pane.wp))
gc.attr ^= GRID_ATTR_REVERSE;
}
- screen_redraw_border_set(wp, ctx->pane_lines, cell_type, &gc);
+ screen_redraw_border_set(w, wp, ctx->pane_lines, cell_type, &gc);
if (cell_type == CELL_TOPBOTTOM &&
(c->flags & CLIENT_UTF8) &&