config: CSD borders are always invisible

That is, remove all configuration options and always draw them fully
transparent.
This commit is contained in:
Daniel Eklöf 2020-03-03 18:18:59 +01:00
parent cb6616ef8a
commit c90d70b2bf
No known key found for this signature in database
GPG key ID: 5BBD4992C116573F
5 changed files with 10 additions and 56 deletions

View file

@ -350,7 +350,7 @@ parse_section_csd(const char *key, const char *value, struct config *conf,
} }
} }
else if (strcmp(key, "titlebar-color") == 0) { else if (strcmp(key, "color") == 0) {
uint32_t color; uint32_t color;
if (!str_to_color(value, &color, true, path, lineno)) { if (!str_to_color(value, &color, true, path, lineno)) {
LOG_ERR("%s:%d: invalid titlebar-color: %s", path, lineno, value); LOG_ERR("%s:%d: invalid titlebar-color: %s", path, lineno, value);
@ -361,18 +361,7 @@ parse_section_csd(const char *key, const char *value, struct config *conf,
conf->csd.color.title = color; conf->csd.color.title = color;
} }
else if (strcmp(key, "border-color") == 0) { else if (strcmp(key, "size") == 0) {
uint32_t color;
if (!str_to_color(value, &color, true, path, lineno)) {
LOG_ERR("%s:%d: invalid border-color: %s", path, lineno, value);
return false;
}
conf->csd.color.border_set = true;
conf->csd.color.border = color;
}
else if (strcmp(key, "titlebar-size") == 0) {
unsigned long pixels; unsigned long pixels;
if (!str_to_ulong(value, 10, &pixels)) { if (!str_to_ulong(value, 10, &pixels)) {
LOG_ERR("%s:%d: expected an integer: %s", path, lineno, value); LOG_ERR("%s:%d: expected an integer: %s", path, lineno, value);
@ -382,16 +371,6 @@ parse_section_csd(const char *key, const char *value, struct config *conf,
conf->csd.title_height = pixels; conf->csd.title_height = pixels;
} }
else if (strcmp(key, "border-width") == 0) {
unsigned long pixels;
if (!str_to_ulong(value, 10, &pixels)) {
LOG_ERR("%s:%d: expected an integer: %s", path, lineno, value);
return false;
}
conf->csd.border_width = pixels;
}
else if (strcmp(key, "button-width") == 0) { else if (strcmp(key, "button-width") == 0) {
unsigned long pixels; unsigned long pixels;
if (!str_to_ulong(value, 10, &pixels)) { if (!str_to_ulong(value, 10, &pixels)) {
@ -645,10 +624,6 @@ config_load(struct config *conf, const char *conf_path)
.title_height = 26, .title_height = 26,
.border_width = 5, .border_width = 5,
.button_width = 22, .button_width = 22,
.color = {
.title_set = false,
.border_set = false,
},
}, },
.render_worker_count = sysconf(_SC_NPROCESSORS_ONLN), .render_worker_count = sysconf(_SC_NPROCESSORS_ONLN),

View file

@ -45,12 +45,10 @@ struct config {
struct { struct {
bool title_set; bool title_set;
bool border_set;
bool minimize_set; bool minimize_set;
bool maximize_set; bool maximize_set;
bool close_set; bool close_set;
uint32_t title; uint32_t title;
uint32_t border;
uint32_t minimize; uint32_t minimize;
uint32_t maximize; uint32_t maximize;
uint32_t close; uint32_t close;

View file

@ -126,23 +126,16 @@ component.
compositor. Depending on the compositor's configuration and compositor. Depending on the compositor's configuration and
capabilities, it may not have any effect. Default: _server_. capabilities, it may not have any effect. Default: _server_.
*titlebar-size* *size*
Height, in pixels (but subject to output scaling), of the Height, in pixels (subject to output scaling), of the
titlebar, not including the window border. Default: _26_. titlebar. Default: _26_.
*border-width* *color*
Width, in pixels (but subject to output scaling), of the
borders. Default: _5_.
*titlebar-color*
Titlebar AARRGGBB color. Default: use the default _foreground_ Titlebar AARRGGBB color. Default: use the default _foreground_
color. color.
*border-color*
Border AARRGGBB color. Default: _transparent_.
*button-width* *button-width*
Width, in pixels (but subject to output scaling), of the Width, in pixels (subject to output scaling), of the
minimize/maximize/close buttons. Default: _22_. minimize/maximize/close buttons. Default: _22_.
*button-minimize-color* *button-minimize-color*

6
footrc
View file

@ -36,10 +36,8 @@
[csd] [csd]
# preferred=server # preferred=server
# titlebar-size=26 # size=26
# border-width=5 # color=<foreground color>
# titlebar-color=<foreground color>
# border-color=00000000
# button-width=22 # button-width=22
# button-minimize-color=ff0000ff # button-minimize-color=ff0000ff
# button-maximize-color=ff00ff00 # button-maximize-color=ff00ff00

View file

@ -779,17 +779,7 @@ render_csd_border(struct terminal *term, enum csd_surface surf_idx)
struct buffer *buf = shm_get_buffer( struct buffer *buf = shm_get_buffer(
term->wl->shm, info.width, info.height, cookie); term->wl->shm, info.width, info.height, cookie);
uint32_t _color = 0; pixman_color_t color = color_hex_to_pixman_with_alpha(0, 0);
uint16_t alpha = 0;
if (term->conf->csd.color.border_set) {
_color = term->conf->csd.color.border;
alpha = _color >> 24 | (_color >> 24 << 8);
}
pixman_color_t color = color_hex_to_pixman_with_alpha(_color, alpha);
if (!term->visual_focus)
pixman_color_dim(&color);
render_csd_part(term, surf, buf, info.width, info.height, &color); render_csd_part(term, surf, buf, info.width, info.height, &color);
csd_commit(term, surf, buf); csd_commit(term, surf, buf);
} }