GtkCalendar can't be used in a multilingual application
Steps to reproduce
- Make an application with a GtkCalendar control in a dialog.
- Include a function that changes the locale from somewhere else within the application itself.
- Observe that day and month names do not change, when the locale is changed. (However, they do change if you restart your application after changing locale externally)
GtkCalendar reads in default_abbreviated_dayname[i] and default_monthname[i] during gtk_calendar_init. i.e. once only, when the first GtkCalendar is created.
If instead, default_abbreviated_dayname[i] and default_monthname[i] were read in at the start of gtk_calendar_draw, then the limitation would be fixed. Alternatively, a new function could be exposed, such as gtk_calendar_change_locale.
GTK Version 3.24.8 OS Ubuntu Linux 18.04.2