Fix no-colour theme
In colour customization, pressing cancel ('ESC' by default) will
deselect all colours and put calcurse in no-color mode. For this
to work, all colour changes must be performed with the routines
custom_apply_attr()/custom_remove_attr(). Fixed for the getstring
cursor, the scroll window border and the week number.
In addition, the week number is unconditionally coloured as the
rest of the calendar contents whether CAL is selected or not.
Signed-off-by: Lukas Fleischer <lfleischer@calcurse.org>
This commit is contained in:
committed by
Lukas Fleischer
parent
9e060b96c2
commit
f8e6e0d691
@@ -67,7 +67,7 @@ void ui_calendar_view_next(void)
|
||||
ui_calendar_view = 0;
|
||||
|
||||
/* The calendar panel needs to be erased when switching views. */
|
||||
monthly_view_cache_month = 0;
|
||||
werase(sw_cal.inner);
|
||||
}
|
||||
|
||||
void ui_calendar_view_prev(void)
|
||||
@@ -77,7 +77,7 @@ void ui_calendar_view_prev(void)
|
||||
ui_calendar_view--;
|
||||
|
||||
/* The calendar panel needs to be erased when switching views. */
|
||||
monthly_view_cache_month = 0;
|
||||
werase(sw_cal.inner);
|
||||
}
|
||||
|
||||
void ui_calendar_set_view(int view)
|
||||
@@ -334,15 +334,10 @@ static void draw_week_number(struct scrollwin *sw, struct tm t)
|
||||
int weeknum = ISO8601weeknum(&t);
|
||||
|
||||
WINS_CALENDAR_LOCK;
|
||||
werase(sw_cal.inner);
|
||||
custom_apply_attr(sw->inner, ATTR_HIGHEST);
|
||||
if (wins_slctd() == CAL)
|
||||
wattron(sw->win, COLOR_PAIR(COLR_CUSTOM));
|
||||
custom_apply_attr(sw->win, ATTR_HIGHEST);
|
||||
mvwprintw(sw->win, conf.compact_panels ? 0 : 2, sw->w - 9,
|
||||
"(# %02d)", weeknum);
|
||||
if (wins_slctd() == CAL)
|
||||
wattroff(sw->win, COLOR_PAIR(COLR_CUSTOM));
|
||||
custom_remove_attr(sw->inner, ATTR_HIGHEST);
|
||||
custom_remove_attr(sw->win, ATTR_HIGHEST);
|
||||
WINS_CALENDAR_UNLOCK;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user