diff --git a/src/bin/edi_main.c b/src/bin/edi_main.c index de497c8..5599627 100644 --- a/src/bin/edi_main.c +++ b/src/bin/edi_main.c @@ -1423,12 +1423,13 @@ _edi_toolbar_visible_set(Eina_Bool visible) static void _edi_toolbar_config_changed() { - _edi_toolbar_visible_set(!_edi_project_config->gui.toolbar_hidden); // No change. if ((_edi_project_config->gui.toolbar_horizontal == _edi_toolbar_horizontal_get()) && - (_edi_project_config->gui.toolbar_text_visible == _edi_toolbar_text_visible_get())) + (_edi_project_config->gui.toolbar_text_visible == _edi_toolbar_text_visible_get()) && + (_edi_project_config->gui.internal_icons == edi_theme_internal_icons_get())) { + _edi_toolbar_visible_set(!_edi_project_config->gui.toolbar_hidden); return; } @@ -1441,8 +1442,10 @@ _edi_toolbar_config_changed() elm_box_recalculate(_edi_main_box); // Toolbar has changed, update current state. - _edi_toolbar_horizontal_set(_edi_project_config->gui.toolbar_horizontal); - _edi_toolbar_text_visible_set(_edi_project_config->gui.toolbar_text_visible); + _edi_toolbar_horizontal_set(_edi_project_config->gui.toolbar_horizontal); + _edi_toolbar_text_visible_set(_edi_project_config->gui.toolbar_text_visible); + _edi_toolbar_visible_set(!_edi_project_config->gui.toolbar_hidden); + edi_theme_internal_icons_set(_edi_project_config->gui.internal_icons); } static void @@ -1776,6 +1779,7 @@ edi_open(const char *inputpath) _edi_toolbar_horizontal_set(_edi_project_config->gui.toolbar_horizontal); _edi_toolbar_text_visible_set(_edi_project_config->gui.toolbar_text_visible); + edi_theme_internal_icons_set(_edi_project_config->gui.internal_icons); edi_toolbar_setup(); diff --git a/src/bin/edi_theme.c b/src/bin/edi_theme.c index bf3d9fd..9030ab9 100644 --- a/src/bin/edi_theme.c +++ b/src/bin/edi_theme.c @@ -11,6 +11,7 @@ #include "edi_private.h" static Eina_List *_edi_themes = NULL; +static Eina_Bool _edi_theme_internal_icons; void edi_theme_window_alpha_set(void) @@ -171,3 +172,14 @@ edi_theme_icon_path_get(const char *name) return icon_path; } +void +edi_theme_internal_icons_set(Eina_Bool enabled) +{ + _edi_theme_internal_icons = enabled; +} + +Eina_Bool +edi_theme_internal_icons_get(void) +{ + return _edi_theme_internal_icons; +} diff --git a/src/bin/edi_theme.h b/src/bin/edi_theme.h index 70bc7ef..6cef349 100644 --- a/src/bin/edi_theme.h +++ b/src/bin/edi_theme.h @@ -60,6 +60,8 @@ Edi_Theme *edi_theme_theme_by_name(const char *name); void edi_theme_window_alpha_set(void); void edi_theme_elm_code_alpha_set(Evas_Object *obj); const char *edi_theme_icon_path_get(const char *name); +void edi_theme_internal_icons_set(Eina_Bool enabled); +Eina_Bool edi_theme_internal_icons_get(void); /** * @}