Fix bug #3020, "Use theme doesn't change some icons until restart"

This commit is contained in:
Colin Leroy 2013-12-28 18:15:31 +01:00
parent 3d876eaf2f
commit 7bd41ae67a
3 changed files with 17 additions and 4 deletions

View file

@ -969,6 +969,17 @@ static void addrcompl_add_entry( CompletionWindow *cw, gchar *address ) {
#endif
}
void addrcompl_reflect_prefs_pixmap_theme(void) {
if (group_pixbuf) {
g_object_unref(G_OBJECT(group_pixbuf));
group_pixbuf = NULL;
}
if (email_pixbuf) {
g_object_unref(G_OBJECT(email_pixbuf));
email_pixbuf = NULL;
}
}
/**
* Completion idle function. This function is called by the main (UI) thread
* during UI idle time while an address search is in progress. Items from the

View file

@ -54,4 +54,5 @@ void addrcompl_teardown ( void );
void addr_compl_add_address1(const char *str, address_entry *ae);
void addrcompl_reflect_prefs_pixmap_theme(void);
#endif /* __ADDR_COMPL_H__ */

View file

@ -428,14 +428,15 @@ static void prefs_themes_btn_use_clicked_cb(GtkWidget *widget, gpointer data)
gchar *theme_str;
theme_str = tdata->displayed;
g_free(prefs_common.pixmap_theme_path);
prefs_common.pixmap_theme_path = g_strdup(theme_str);
main_window_reflect_prefs_all_real(TRUE);
compose_reflect_prefs_pixmap_theme();
addrcompl_reflect_prefs_pixmap_theme();
prefs_themes_update_buttons(tdata);
}