mirror of
https://github.com/labwc/labwc.git
synced 2025-11-11 13:30:04 -05:00
theme: add option osd.window-switcher.item.active.border.width
...and change default values for the variables below to keep the window-switcher look the same as it was at the last release. osd.window-switcher.padding = 4 osd.window-switcher.item.padding.y = 1 osd.window-switcher.item.active.border.width = 2
This commit is contained in:
parent
55bf79c3fe
commit
660127acb0
5 changed files with 24 additions and 19 deletions
17
src/osd.c
17
src/osd.c
|
|
@ -339,12 +339,10 @@ render_osd(struct server *server, cairo_t *cairo, int w, int h,
|
|||
struct buf buf;
|
||||
buf_init(&buf);
|
||||
|
||||
/*
|
||||
* Subtract 4x border-width to allow for both the OSD border and the
|
||||
* item border. This is the width of the area available for text fields.
|
||||
*/
|
||||
int available_width = w - 4 * theme->osd_border_width
|
||||
- 2 * theme->osd_window_switcher_padding;
|
||||
/* This is the width of the area available for text fields */
|
||||
int available_width = w - 2 * theme->osd_border_width
|
||||
- 2 * theme->osd_window_switcher_padding
|
||||
- 2 * theme->osd_window_switcher_item_active_border_width;
|
||||
|
||||
/* Draw text for each node */
|
||||
wl_list_for_each_reverse(node, node_list, link) {
|
||||
|
|
@ -412,14 +410,15 @@ render_osd(struct server *server, cairo_t *cairo, int w, int h,
|
|||
/* Highlight current window */
|
||||
struct wlr_fbox fbox = {
|
||||
.x = theme->osd_border_width + theme->osd_window_switcher_padding,
|
||||
.y = y - theme->osd_border_width,
|
||||
.y = y - theme->osd_window_switcher_item_active_border_width,
|
||||
.width = theme->osd_window_switcher_width
|
||||
- 2 * theme->osd_border_width
|
||||
- 2 * theme->osd_window_switcher_padding,
|
||||
.height = theme->osd_window_switcher_item_height
|
||||
+ 2 * theme->osd_border_width,
|
||||
+ theme->osd_window_switcher_item_active_border_width,
|
||||
};
|
||||
draw_cairo_border(cairo, fbox, theme->osd_border_width);
|
||||
draw_cairo_border(cairo, fbox,
|
||||
theme->osd_window_switcher_item_active_border_width);
|
||||
cairo_stroke(cairo);
|
||||
}
|
||||
|
||||
|
|
|
|||
11
src/theme.c
11
src/theme.c
|
|
@ -141,9 +141,10 @@ theme_builtin(struct theme *theme)
|
|||
parse_hexstr("#888888", theme->menu_separator_color);
|
||||
|
||||
theme->osd_window_switcher_width = 600;
|
||||
theme->osd_window_switcher_padding = INT_MIN;
|
||||
theme->osd_window_switcher_padding = 4;
|
||||
theme->osd_window_switcher_item_padding_x = 10;
|
||||
theme->osd_window_switcher_item_padding_y = 6;
|
||||
theme->osd_window_switcher_item_padding_y = 1;
|
||||
theme->osd_window_switcher_item_active_border_width = 2;
|
||||
|
||||
/* inherit settings in post_processing() if not set elsewhere */
|
||||
theme->osd_bg_color[0] = FLT_MIN;
|
||||
|
|
@ -321,6 +322,9 @@ entry(struct theme *theme, const char *key, const char *value)
|
|||
if (match_glob(key, "osd.window-switcher.item.padding.y")) {
|
||||
theme->osd_window_switcher_item_padding_y = atoi(value);
|
||||
}
|
||||
if (match_glob(key, "osd.window-switcher.item.active.border.width")) {
|
||||
theme->osd_window_switcher_item_active_border_width = atoi(value);
|
||||
}
|
||||
if (match_glob(key, "osd.label.text.color")) {
|
||||
parse_hexstr(value, theme->osd_label_text_color);
|
||||
}
|
||||
|
|
@ -558,9 +562,6 @@ post_processing(struct theme *theme)
|
|||
if (theme->osd_border_width == INT_MIN) {
|
||||
theme->osd_border_width = theme->border_width;
|
||||
}
|
||||
if (theme->osd_window_switcher_padding == INT_MIN) {
|
||||
theme->osd_window_switcher_padding = theme->osd_border_width;
|
||||
}
|
||||
if (theme->osd_label_text_color[0] == FLT_MIN) {
|
||||
memcpy(theme->osd_label_text_color,
|
||||
theme->window_active_label_text_color,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue