diff --git a/config.c b/config.c index 2b7ad378..22245fa6 100644 --- a/config.c +++ b/config.c @@ -32,6 +32,8 @@ static const uint32_t default_foreground = 0xdcdccc; static const uint32_t default_background = 0x111111; +static const size_t min_csd_border_width = 5; + #define cube6(r, g) \ r|g|0x00, r|g|0x5f, r|g|0x87, r|g|0xaf, r|g|0xd7, r|g|0xff @@ -2802,6 +2804,7 @@ config_load(struct config *conf, const char *conf_path, .font = {0}, .title_height = 26, .border_width = 5, + .border_width_visible = 0, .button_width = 26, }, @@ -3009,6 +3012,9 @@ config_override_apply(struct config *conf, config_override_t *overrides, } } + conf->csd.border_width = max( + min_csd_border_width, conf->csd.border_width_visible); + return true; } diff --git a/main.c b/main.c index b5a610e2..7370de29 100644 --- a/main.c +++ b/main.c @@ -429,7 +429,9 @@ main(int argc, char *const *argv) } struct config conf = {NULL}; - bool conf_successful = config_load(&conf, conf_path, &user_notifications, &overrides, check_config); + bool conf_successful = config_load( + &conf, conf_path, &user_notifications, &overrides, check_config); + tll_free(overrides); if (!conf_successful) { config_free(conf); diff --git a/render.c b/render.c index 34a4da3a..ca411c14 100644 --- a/render.c +++ b/render.c @@ -1528,8 +1528,7 @@ get_csd_data(const struct terminal *term, enum csd_surface surf_idx) /* Only title bar is rendered in maximized mode */ const int border_width = !term->window->is_maximized - ? max(term->conf->csd.border_width, - term->conf->csd.border_width_visible) * term->scale : 0; + ? term->conf->csd.border_width * term->scale : 0; const int title_height = term->window->is_fullscreen ? 0 @@ -1756,10 +1755,11 @@ render_csd_border(struct terminal *term, enum csd_surface surf_idx, * The “visible” border. */ - int bwidth = max(term->conf->csd.border_width, - term->conf->csd.border_width_visible); /* Full border size */ + int bwidth = term->conf->csd.border_width; int vwidth = term->conf->csd.border_width_visible; /* Visibls size */ + xassert(bwidth >= vwidth); + if (vwidth > 0) { const struct config *conf = term->conf;