From 1f8256fc508bbee24b53fcd588ebf74653d69dfa Mon Sep 17 00:00:00 2001 From: Nicholas Marriott Date: Tue, 28 Apr 2020 13:50:07 +0100 Subject: Drop having a separate type for style options and make them all strings, which allows formats to be expanded. Any styles without a '#{' are still validated when they are set but any with a '#{' are not. Formats are not expanded usefully in many cases yet, that will be changed later. To make this work, a few other changes: - set-option -a with a style option automatically appends a ",". - OSC 10 and 11 don't set the window-style option anymore, instead the fg and bg are stored in the pane struct and act as the defaults that can be overridden by window-style. - status-fg and -bg now override status-style instead of trying to keep them in sync. --- screen-redraw.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'screen-redraw.c') diff --git a/screen-redraw.c b/screen-redraw.c index 5ca6024d..d0020e65 100644 --- a/screen-redraw.c +++ b/screen-redraw.c @@ -260,10 +260,9 @@ screen_redraw_make_pane_status(struct client *c, struct window *w, struct screen old; if (wp == w->active) - style_apply(&gc, w->options, "pane-active-border-style"); + style_apply(&gc, w->options, "pane-active-border-style", NULL); else - style_apply(&gc, w->options, "pane-border-style"); - + style_apply(&gc, w->options, "pane-border-style", NULL); fmt = options_get_string(w->options, "pane-border-format"); ft = format_create(c, NULL, FORMAT_PANE|wp->id, FORMAT_STATUS); @@ -536,8 +535,8 @@ screen_redraw_draw_borders(struct screen_redraw_ctx *ctx) log_debug("%s: %s @%u", __func__, c->name, w->id); - style_apply(&other_gc, oo, "pane-border-style"); - style_apply(&active_gc, oo, "pane-active-border-style"); + style_apply(&other_gc, oo, "pane-border-style", NULL); + style_apply(&active_gc, oo, "pane-active-border-style", NULL); active_gc.attr = other_gc.attr = GRID_ATTR_CHARSET; memcpy(&m_other_gc, &other_gc, sizeof m_other_gc); -- cgit