mirror of
https://codeberg.org/dnkl/foot.git
synced 2026-02-04 04:06:06 -05:00
config, render: scrollback indicator: allow configuring scrollback indicator colors
This commit is contained in:
parent
7704bea876
commit
650cfa18ef
3 changed files with 27 additions and 1 deletions
13
config.c
13
config.c
|
|
@ -1324,6 +1324,18 @@ parse_section_colors(const char *key, const char *value, struct config *conf,
|
|||
return true;
|
||||
}
|
||||
|
||||
else if (strcmp(key, "scrollback-indicator") == 0) {
|
||||
if (!str_to_two_colors(
|
||||
value, &conf->colors.scrollback_indicator.fg, &conf->colors.scrollback_indicator.bg,
|
||||
false, conf, path, lineno, "colors", "scrollback-indicator"))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
conf->colors.use_custom.scrollback_indicator = true;
|
||||
return true;
|
||||
}
|
||||
|
||||
else if (strcmp(key, "urls") == 0) {
|
||||
if (!str_to_color(value, &conf->colors.url, false,
|
||||
conf, path, lineno, "colors", "urls"))
|
||||
|
|
@ -2926,6 +2938,7 @@ config_load(struct config *conf, const char *conf_path,
|
|||
.use_custom = {
|
||||
.selection = false,
|
||||
.jump_label = false,
|
||||
.scrollback_indicator = false,
|
||||
.url = false,
|
||||
},
|
||||
},
|
||||
|
|
|
|||
6
config.h
6
config.h
|
|
@ -163,9 +163,15 @@ struct config {
|
|||
uint32_t bg;
|
||||
} jump_label;
|
||||
|
||||
struct {
|
||||
uint32_t fg;
|
||||
uint32_t bg;
|
||||
} scrollback_indicator;
|
||||
|
||||
struct {
|
||||
bool selection:1;
|
||||
bool jump_label:1;
|
||||
bool scrollback_indicator:1;
|
||||
bool url:1;
|
||||
} use_custom;
|
||||
} colors;
|
||||
|
|
|
|||
9
render.c
9
render.c
|
|
@ -2147,12 +2147,19 @@ render_scrollback_position(struct terminal *term)
|
|||
wl_subsurface_set_position(
|
||||
win->scrollback_indicator.sub, x / scale, y / scale);
|
||||
|
||||
uint32_t fg = term->colors.table[0];
|
||||
uint32_t bg = term->colors.table[8 + 4];
|
||||
if (term->conf->colors.use_custom.scrollback_indicator) {
|
||||
fg = term->conf->colors.scrollback_indicator.fg;
|
||||
bg = term->conf->colors.scrollback_indicator.bg;
|
||||
}
|
||||
|
||||
render_osd(
|
||||
term,
|
||||
win->scrollback_indicator.surf,
|
||||
win->scrollback_indicator.sub,
|
||||
term->fonts[0], buf, text,
|
||||
term->colors.table[0], 0xffu << 24 | term->colors.table[8 + 4],
|
||||
fg, 0xffu << 24 | bg,
|
||||
width - margin - wcslen(text) * term->cell_width, margin);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue