main: verify primary font is monospaced at startup

Load a couple of ASCII glyphs and check if their advance widths
matches. If not, warn the user that the font is probably not
monospaced.

This can be disabled by setting tweak.font-monospace-warn=no.

Closes #704.
This commit is contained in:
Daniel Eklöf 2021-08-31 19:42:22 +02:00
parent bb948d03e1
commit 8ffc556d44
No known key found for this signature in database
GPG key ID: 5BBD4992C116573F
4 changed files with 72 additions and 0 deletions

View file

@ -253,6 +253,7 @@ struct config {
off_t max_shm_pool_size;
float box_drawing_base_thickness;
bool box_drawing_solid_shades;
bool font_monospace_warn;
} tweak;
user_notifications_t notifications;
@ -269,3 +270,6 @@ struct config *config_clone(const struct config *old);
bool config_font_parse(const char *pattern, struct config_font *font);
void config_font_list_destroy(struct config_font_list *font_list);
bool check_if_font_is_monospaced(
const char *pattern, user_notifications_t *notifications);