diff options
Diffstat (limited to 'src/gui/core/core.c')
-rw-r--r-- | src/gui/core/core.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/gui/core/core.c b/src/gui/core/core.c index 8783783..a0904f8 100644 --- a/src/gui/core/core.c +++ b/src/gui/core/core.c @@ -90,10 +90,16 @@ bool load_all_gui_components(void) bool complete_loading_of_all_gui_components(GGenConfig *config) { bool result; /* Bilan à faire remonter */ + const char *name; /* Nom du thème recherché */ GtkTiledGrid *grid; /* Composant d'affichage */ GPanelItem *welcome; /* Panneau d'accueil */ - load_extra_gtk_theme(); + result = g_generic_config_get_value(config, MPK_INTERNAL_THEME, &name); + if (!result) goto no_theme; + + load_all_themes(); + + apply_gtk_theme(name); result = load_segment_rendering_parameters(); @@ -119,6 +125,8 @@ bool complete_loading_of_all_gui_components(GGenConfig *config) gtk_tiled_grid_restore_positions(grid, config); + no_theme: + return result; } @@ -140,4 +148,6 @@ void unload_all_gui_components(void) { exit_segment_content_hash_table(); + unload_all_themes(); + } |