From 563ba755282a4feef51db54c6c3d18393021b7d7 Mon Sep 17 00:00:00 2001 From: David Walter Seikel Date: Tue, 7 Nov 2006 22:46:24 +0000 Subject: [PATCH] Allow the favorite apps menu to be completely disabled. Also at rasters request, allow the fm menu item to be disabled. SVN revision: 27005 --- configure.in | 20 ++++++++++++++++++++ src/bin/e_actions.c | 4 ++++ src/bin/e_config.c | 6 ++++++ src/bin/e_int_config_keybindings.c | 4 ++++ src/bin/e_int_config_mousebindings.c | 3 ++- src/bin/e_int_menus.c | 11 +++++++++++ src/bin/e_int_menus.h | 2 ++ 7 files changed, 49 insertions(+), 1 deletion(-) diff --git a/configure.in b/configure.in index 1ac5e03dd..110c4ce9c 100644 --- a/configure.in +++ b/configure.in @@ -159,6 +159,26 @@ fi AC_CHECK_LIB(dl, dlopen, dlopen_libs=-ldl) AC_SUBST(dlopen_libs) +AC_MSG_CHECKING([whether to enable Favorite Applications menu]) +AC_ARG_ENABLE([favorites], + AS_HELP_STRING([--enable-favorites],[enable Favorite Applications menu @<:@yes@:>@]), + [e_cv_enable_favorites=$enableval], + AC_CACHE_VAL([e_cv_enable_favorites], [e_cv_enable_favorites=yes])) +if test "[${e_cv_enable_favorites}]" = yes; then + AC_DEFINE_UNQUOTED([ENABLE_FAVORITES],[1],[enable Favorite Applications menu]) +fi +AC_MSG_RESULT([$e_cv_enable_favorites]) + +AC_MSG_CHECKING([whether to enable Files menu item]) +AC_ARG_ENABLE([files], + AS_HELP_STRING([--enable-files],[enable Files menu item @<:@yes@:>@]), + [e_cv_enable_files=$enableval], + AC_CACHE_VAL([e_cv_enable_files], [e_cv_enable_files=yes])) +if test "[${e_cv_enable_files}]" = yes; then + AC_DEFINE_UNQUOTED([ENABLE_FILES],[1],[enable Files menu item]) +fi +AC_MSG_RESULT([$e_cv_enable_files]) + AC_ARG_WITH(evas-config, [ --with-evas-config=EVAS_CONFIG use evas-config specified ], [ diff --git a/src/bin/e_actions.c b/src/bin/e_actions.c index 6cbb8e5a6..fb8a9275b 100644 --- a/src/bin/e_actions.c +++ b/src/bin/e_actions.c @@ -1111,7 +1111,9 @@ static E_Menu * _e_actions_menu_find(const char *name) { if (!strcmp(name, "main")) return e_int_menus_main_new(); +#ifdef ENABLE_FAVORITES else if (!strcmp(name, "favorites")) return e_int_menus_favorite_apps_new(); +#endif else if (!strcmp(name, "all")) return e_int_menus_all_apps_new(); else if (!strcmp(name, "clients")) return e_int_menus_clients_new(); else if (!strcmp(name, "lost_clients")) return e_int_menus_lost_clients_new(); @@ -1960,7 +1962,9 @@ e_actions_init(void) /* menu_show */ ACT_GO(menu_show); e_action_predef_name_set(_("Menu"), _("Show Main Menu"), "menu_show", "main", NULL, 0); +#ifdef ENABLE_FAVORITES e_action_predef_name_set(_("Menu"), _("Show Favorites Menu"), "menu_show", "favorites", NULL, 0); +#endif e_action_predef_name_set(_("Menu"), _("Show All Applications Menu"), "menu_show", "all", NULL, 0); e_action_predef_name_set(_("Menu"), _("Show Clients Menu"), "menu_show", "clients", NULL, 0); e_action_predef_name_set(_("Menu"), _("Show Menu..."), "menu_show", NULL, diff --git a/src/bin/e_config.c b/src/bin/e_config.c index 761a7c2c3..1e83550e4 100644 --- a/src/bin/e_config.c +++ b/src/bin/e_config.c @@ -766,9 +766,11 @@ e_config_init(void) CFG_MOUSEBIND(E_BINDING_CONTEXT_ZONE, 2, 0, 0, "menu_show", "clients"); +#ifdef ENABLE_FAVORITES CFG_MOUSEBIND(E_BINDING_CONTEXT_ZONE, 3, 0, 0, "menu_show", "favorites"); +#endif } { E_Config_Binding_Key *eb; @@ -877,18 +879,22 @@ e_config_init(void) CFG_KEYBIND(E_BINDING_CONTEXT_ANY, "m", E_BINDING_MODIFIER_CTRL | E_BINDING_MODIFIER_ALT, 0, "menu_show", "main"); +#ifdef ENABLE_FAVORITES CFG_KEYBIND(E_BINDING_CONTEXT_ANY, "a", E_BINDING_MODIFIER_CTRL | E_BINDING_MODIFIER_ALT, 0, "menu_show", "favorites"); +#endif CFG_KEYBIND(E_BINDING_CONTEXT_ANY, "Menu", 0, 0, "menu_show", "main"); CFG_KEYBIND(E_BINDING_CONTEXT_ANY, "Menu", E_BINDING_MODIFIER_CTRL, 0, "menu_show", "clients"); +#ifdef ENABLE_FAVORITES CFG_KEYBIND(E_BINDING_CONTEXT_ANY, "Menu", E_BINDING_MODIFIER_ALT, 0, "menu_show", "favorites"); +#endif CFG_KEYBIND(E_BINDING_CONTEXT_ANY, "Insert", E_BINDING_MODIFIER_CTRL | E_BINDING_MODIFIER_ALT, 0, "exec", "Eterm"); diff --git a/src/bin/e_int_config_keybindings.c b/src/bin/e_int_config_keybindings.c index 0c34da92f..64bbfa698 100644 --- a/src/bin/e_int_config_keybindings.c +++ b/src/bin/e_int_config_keybindings.c @@ -563,18 +563,22 @@ _restore_key_binding_defaults_cb(void *data, void *data2) CFG_KEYBIND_DFLT(E_BINDING_CONTEXT_ANY, "m", E_BINDING_MODIFIER_CTRL | E_BINDING_MODIFIER_ALT, 0, "menu_show", "main"); +#ifdef ENABLE_FAVORITES CFG_KEYBIND_DFLT(E_BINDING_CONTEXT_ANY, "a", E_BINDING_MODIFIER_CTRL | E_BINDING_MODIFIER_ALT, 0, "menu_show", "favorites"); +#endif CFG_KEYBIND_DFLT(E_BINDING_CONTEXT_ANY, "Menu", 0, 0, "menu_show", "main"); CFG_KEYBIND_DFLT(E_BINDING_CONTEXT_ANY, "Menu", E_BINDING_MODIFIER_CTRL, 0, "menu_show", "clients"); +#ifdef ENABLE_FAVORITES CFG_KEYBIND_DFLT(E_BINDING_CONTEXT_ANY, "Menu", E_BINDING_MODIFIER_ALT, 0, "menu_show", "favorites"); +#endif CFG_KEYBIND_DFLT(E_BINDING_CONTEXT_ANY, "Insert", E_BINDING_MODIFIER_CTRL | E_BINDING_MODIFIER_ALT, 0, "exec", "Eterm"); diff --git a/src/bin/e_int_config_mousebindings.c b/src/bin/e_int_config_mousebindings.c index 929291b10..00b871b18 100644 --- a/src/bin/e_int_config_mousebindings.c +++ b/src/bin/e_int_config_mousebindings.c @@ -651,8 +651,9 @@ _restore_mouse_binding_defaults_cb(void *data, void *data2) CFG_MOUSEBIND_DFLT(E_BINDING_CONTEXT_BORDER, 3, E_BINDING_MODIFIER_ALT, 0, "window_menu", NULL); CFG_MOUSEBIND_DFLT(E_BINDING_CONTEXT_ZONE, 1, 0, 0, "menu_show", "main"); CFG_MOUSEBIND_DFLT(E_BINDING_CONTEXT_ZONE, 2, 0, 0, "menu_show", "clients"); +#ifdef ENABLE_FAVORITES CFG_MOUSEBIND_DFLT(E_BINDING_CONTEXT_ZONE, 3, 0, 0, "menu_show", "favorites"); - +#endif #define CFG_WHEELBIND_DFLT(_context, _direction, _z, _modifiers, _anymod, _action, _params) \ bw = E_NEW(E_Config_Binding_Wheel, 1); \ diff --git a/src/bin/e_int_menus.c b/src/bin/e_int_menus.c index c86aadd69..54acdcb77 100644 --- a/src/bin/e_int_menus.c +++ b/src/bin/e_int_menus.c @@ -8,7 +8,9 @@ typedef struct _Main_Data Main_Data; struct _Main_Data { E_Menu *menu; +#ifdef ENABLE_FAVORITES E_Menu *apps; +#endif E_Menu *all_apps; E_Menu *desktops; E_Menu *clients; @@ -84,12 +86,15 @@ e_int_menus_main_new(void) e_object_del_attach_func_set(E_OBJECT(m), _e_int_menus_main_del_hook); e_menu_category_set(m, "main"); + +#ifdef ENABLE_FAVORITES subm = e_int_menus_favorite_apps_new(); dat->apps = subm; mi = e_menu_item_new(m); e_menu_item_label_set(mi, _("Favorite Applications")); e_util_menu_item_edje_icon_set(mi, "enlightenment/favorites"); e_menu_item_submenu_set(mi, subm); +#endif subm = e_int_menus_all_apps_new(); dat->all_apps = subm; @@ -98,10 +103,12 @@ e_int_menus_main_new(void) e_util_menu_item_edje_icon_set(mi, "enlightenment/applications"); e_menu_item_submenu_set(mi, subm); +#ifdef ENABLE_FILES mi = e_menu_item_new(m); e_menu_item_label_set(mi, _("Files")); e_util_menu_item_edje_icon_set(mi, "enlightenment/fileman"); e_menu_item_callback_set(mi, _e_int_menus_fwin_favorites_item_cb, NULL); +#endif mi = e_menu_item_new(m); e_menu_item_label_set(mi, _("Run Command")); @@ -241,6 +248,7 @@ e_int_menus_desktops_new(void) return m; } +#ifdef ENABLE_FAVORITES EAPI E_Menu * e_int_menus_favorite_apps_new(void) { @@ -253,6 +261,7 @@ e_int_menus_favorite_apps_new(void) m = e_int_menus_apps_new(buf); return m; } +#endif EAPI E_Menu * e_int_menus_all_apps_new(void) @@ -367,7 +376,9 @@ _e_int_menus_main_del_hook(void *obj) dat = e_object_data_get(E_OBJECT(obj)); if (dat) { +#ifdef ENABLE_FAVORITES e_object_del(E_OBJECT(dat->apps)); +#endif e_object_del(E_OBJECT(dat->all_apps)); e_object_del(E_OBJECT(dat->desktops)); e_object_del(E_OBJECT(dat->clients)); diff --git a/src/bin/e_int_menus.h b/src/bin/e_int_menus.h index 440c3c6d3..f53bdbf17 100644 --- a/src/bin/e_int_menus.h +++ b/src/bin/e_int_menus.h @@ -21,7 +21,9 @@ EAPI E_Menu *e_int_menus_main_new(void); EAPI E_Menu *e_int_menus_desktops_new(void); EAPI E_Menu *e_int_menus_clients_new(void); EAPI E_Menu *e_int_menus_apps_new(const char *dir); +#ifdef ENABLE_FAVORITES EAPI E_Menu *e_int_menus_favorite_apps_new(void); +#endif EAPI E_Menu *e_int_menus_all_apps_new(void); EAPI E_Menu *e_int_menus_config_new(void); EAPI E_Menu *e_int_menus_lost_clients_new(void);