From 6ac730cd0bc9b020090758e5b11d73eca4ce7d83 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Helleu?= Date: Sun, 4 Dec 2022 09:21:24 +0100 Subject: [PATCH] core: toggle reverse video attribute in bars for chars < 32 only if not already enabled --- src/gui/curses/gui-curses-bar-window.c | 8 ++++++-- src/gui/curses/gui-curses.h | 1 + 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/gui/curses/gui-curses-bar-window.c b/src/gui/curses/gui-curses-bar-window.c index 028ef9421..99d64b21b 100644 --- a/src/gui/curses/gui-curses-bar-window.c +++ b/src/gui/curses/gui-curses-bar-window.c @@ -352,10 +352,14 @@ gui_bar_window_print_string (struct t_gui_bar_window *bar_window, } else if (((unsigned char)utf_char[0]) < 32) { - /* display chars < 32 with letter/symbol + reverse video */ + /* + * display chars < 32 with letter/symbol + * and set reverse video (if not already enabled) + */ snprintf (utf_char, sizeof (utf_char), "%c", 'A' + ((unsigned char)utf_char[0]) - 1); - reverse_video = 1; + reverse_video = (gui_window_current_color_attr & A_REVERSE) ? + 0 : 1; } else { diff --git a/src/gui/curses/gui-curses.h b/src/gui/curses/gui-curses.h index 493bf9570..ae1905073 100644 --- a/src/gui/curses/gui-curses.h +++ b/src/gui/curses/gui-curses.h @@ -84,6 +84,7 @@ extern int gui_color_pairs_auto_reset; extern int gui_color_pairs_auto_reset_pending; extern time_t gui_color_pairs_auto_reset_last; extern int gui_color_buffer_refresh_needed; +extern int gui_window_current_color_attr; extern int gui_window_current_emphasis; /* main functions */