forked from enlightenment/enlightenment
e17/everything: fix segv on shutdown. fix macros
SVN revision: 62407
This commit is contained in:
parent
04d8b8d521
commit
ecaba44ca3
|
@ -167,7 +167,12 @@ e_modapi_shutdown(E_Module *m __UNUSED__)
|
|||
Evry_Module *em;
|
||||
|
||||
EINA_LIST_FOREACH(e_datastore_get("evry_modules"), l, em)
|
||||
em->shutdown();
|
||||
{
|
||||
if (em->active)
|
||||
em->shutdown();
|
||||
|
||||
em->active = EINA_FALSE;
|
||||
}
|
||||
|
||||
evry_plug_apps_shutdown();
|
||||
evry_plug_files_shutdown();
|
||||
|
|
|
@ -216,14 +216,15 @@ struct _Evry_Event_Action_Performed
|
|||
_p = E_NEW(Plugin, 1); \
|
||||
_p->base = *_plugin; \
|
||||
_p->base.items = NULL; \
|
||||
evry->item_new(&_p->base.base, (Evry_Plugin*)_p, \
|
||||
_plugin->base.label, NULL, \
|
||||
(Evry_Item_Free_Cb)_p->base.finish); \
|
||||
_p->base.base.ref = 1; \
|
||||
_p->base.base.plugin = (Evry_Plugin*)_p; \
|
||||
_p->base.base.free = (Evry_Item_Free_Cb)_p->base.finish; \
|
||||
_p->base.base.label = eina_stringshare_add(_plugin->base.label); \
|
||||
_p->base.base.detail = eina_stringshare_add(_plugin->base.detail); \
|
||||
_p->base.base.icon = eina_stringshare_add(_plugin->base.icon); \
|
||||
_p->base.base.context = eina_stringshare_add(_plugin->base.context); \
|
||||
_p->base.base.id = eina_stringshare_add(_plugin->base.id); \
|
||||
}
|
||||
}
|
||||
|
||||
#define EVRY_PLUGIN_FREE(_p) if (_p) evry->plugin_free(EVRY_PLUGIN(_p))
|
||||
|
||||
|
@ -254,7 +255,7 @@ typedef void (*Evry_Item_Free_Cb) (Evry_Item *it);
|
|||
|
||||
/*** Evry_Action macros ***/
|
||||
#define EVRY_ACTION_NEW(_name, _in1, _in2, _icon, _action, _check) \
|
||||
evry->action_new(_name, _(_name), _in1, _in2, _icon, _action, _check)
|
||||
evry->action_new(N_(_name), _(_name), _in1, _in2, _icon, _action, _check)
|
||||
|
||||
#define EVRY_ACTION_FREE(_act) if (_act) evry->action_free(EVRY_ACTN(_act))
|
||||
|
||||
|
|
|
@ -1052,61 +1052,61 @@ _plugins_init(const Evry_API *api)
|
|||
evry->plugin_register(p, EVRY_PLUGIN_ACTION, 1);
|
||||
_plugins = eina_list_append(_plugins, p);
|
||||
|
||||
act = EVRY_ACTION_NEW(N_("Launch"),
|
||||
act = EVRY_ACTION_NEW("Launch",
|
||||
EVRY_TYPE_APP, 0,
|
||||
"system-run",
|
||||
_exec_app_action,
|
||||
_exec_app_check_item);
|
||||
_actions = eina_list_append(_actions, act);
|
||||
|
||||
act = EVRY_ACTION_NEW(N_("Open File..."),
|
||||
act = EVRY_ACTION_NEW("Open File...",
|
||||
EVRY_TYPE_APP, EVRY_TYPE_FILE,
|
||||
"document-open",
|
||||
_exec_app_action,
|
||||
_exec_app_check_item);
|
||||
_actions = eina_list_append(_actions, act);
|
||||
|
||||
act = EVRY_ACTION_NEW(N_("Run in Terminal"),
|
||||
act = EVRY_ACTION_NEW("Run in Terminal",
|
||||
EVRY_TYPE_APP, 0,
|
||||
"system-run",
|
||||
_exec_term_action,
|
||||
_exec_term_check_item);
|
||||
_actions = eina_list_append(_actions, act);
|
||||
|
||||
act = EVRY_ACTION_NEW(N_("Edit Application Entry"),
|
||||
act = EVRY_ACTION_NEW("Edit Application Entry",
|
||||
EVRY_TYPE_APP, 0,
|
||||
"everything-launch",
|
||||
_edit_app_action,
|
||||
_edit_app_check_item);
|
||||
_actions = eina_list_append(_actions, act);
|
||||
|
||||
act = EVRY_ACTION_NEW(N_("New Application Entry"),
|
||||
act = EVRY_ACTION_NEW("New Application Entry",
|
||||
EVRY_TYPE_APP, 0,
|
||||
"everything-launch",
|
||||
_new_app_action,
|
||||
_new_app_check_item);
|
||||
_actions = eina_list_append(_actions, act);
|
||||
|
||||
act = EVRY_ACTION_NEW(N_("Run with Sudo"),
|
||||
act = EVRY_ACTION_NEW("Run with Sudo",
|
||||
EVRY_TYPE_APP, 0,
|
||||
"system-run",
|
||||
_exec_sudo_action, NULL);
|
||||
_actions = eina_list_append(_actions, act);
|
||||
|
||||
act = EVRY_ACTION_NEW(N_("Open with..."),
|
||||
act = EVRY_ACTION_NEW("Open with...",
|
||||
EVRY_TYPE_FILE, EVRY_TYPE_APP,
|
||||
"everything-launch",
|
||||
_exec_file_action, NULL);
|
||||
_act_open_with = EVRY_ITEM(act);
|
||||
_actions = eina_list_append(_actions, act);
|
||||
|
||||
act = EVRY_ACTION_NEW(N_("Open Terminal here"),
|
||||
act = EVRY_ACTION_NEW("Open Terminal here",
|
||||
EVRY_TYPE_FILE, 0,
|
||||
"system-run",
|
||||
_open_term_action, NULL);
|
||||
_actions = eina_list_append(_actions, act);
|
||||
|
||||
act = EVRY_ACTION_NEW(N_("Run Executable"),
|
||||
act = EVRY_ACTION_NEW("Run Executable",
|
||||
EVRY_TYPE_FILE, 0,
|
||||
"system-run",
|
||||
_run_executable,
|
||||
|
|
|
@ -30,7 +30,7 @@ evry_plug_clipboard_init(void)
|
|||
if (!win) return EINA_FALSE;
|
||||
|
||||
//FIXME: Icon name doesn't follow FDO Spec
|
||||
act = EVRY_ACTION_NEW(N_("Copy to Clipboard"),
|
||||
act = EVRY_ACTION_NEW("Copy to Clipboard",
|
||||
EVRY_TYPE_TEXT, 0,
|
||||
"everything-clipboard",
|
||||
_action, _check_item);
|
||||
|
|
|
@ -1325,30 +1325,30 @@ _plugins_init(const Evry_API *api)
|
|||
if (_register) evry->action_register(act, prio++); \
|
||||
_actions = eina_list_append(_actions, act); \
|
||||
|
||||
ACTION_NEW(N_("Copy To ..."), EVRY_TYPE_FILE, "go-next",
|
||||
ACTION_NEW("Copy To ...", EVRY_TYPE_FILE, "go-next",
|
||||
_file_copy_action, NULL, 1);
|
||||
act->it2.subtype = EVRY_TYPE_DIR;
|
||||
EVRY_ITEM_DATA_INT_SET(act, ACT_COPY);
|
||||
|
||||
ACTION_NEW(N_("Move To ..."), EVRY_TYPE_FILE, "go-next",
|
||||
ACTION_NEW("Move To ...", EVRY_TYPE_FILE, "go-next",
|
||||
_file_copy_action, NULL, 1);
|
||||
act->it2.subtype = EVRY_TYPE_DIR;
|
||||
EVRY_ITEM_DATA_INT_SET(act, ACT_MOVE);
|
||||
|
||||
ACTION_NEW(N_("Move to Trash"), 0, "user-trash",
|
||||
ACTION_NEW("Move to Trash", 0, "user-trash",
|
||||
_file_trash_action, NULL, 1);
|
||||
EVRY_ITEM_DATA_INT_SET(act, ACT_TRASH);
|
||||
|
||||
ACTION_NEW(N_("Open Folder (EFM)"), 0, "folder-open",
|
||||
ACTION_NEW("Open Folder (EFM)", 0, "folder-open",
|
||||
_open_folder_action, _open_folder_check, 1);
|
||||
act->remember_context = EINA_TRUE;
|
||||
|
||||
ACTION_NEW(N_("Sort by Date"), 0, "go-up",
|
||||
ACTION_NEW("Sort by Date", 0, "go-up",
|
||||
_file_sort_action, NULL, 0);
|
||||
EVRY_ITEM_DATA_INT_SET(act, ACT_SORT_DATE);
|
||||
act_sort_date = act;
|
||||
|
||||
ACTION_NEW(N_("Sort by Name"), 0, "go-up",
|
||||
ACTION_NEW("Sort by Name", 0, "go-up",
|
||||
_file_sort_action, NULL, 0);
|
||||
EVRY_ITEM_DATA_INT_SET(act, ACT_SORT_NAME);
|
||||
act_sort_name = act;
|
||||
|
|
|
@ -187,11 +187,9 @@ _plugins_init(const Evry_API *_api)
|
|||
p->browse = &_browse;
|
||||
evry->plugin_register(p, EVRY_PLUGIN_SUBJECT, 10);
|
||||
|
||||
act = EVRY_ACTION_NEW(N_("Show Dialog"), E_SETTINGS, 0,
|
||||
act = EVRY_ACTION_NEW("Show Dialog", E_SETTINGS, 0,
|
||||
"preferences-advanced", _action, _action_check);
|
||||
|
||||
/* p->actions = eina_list_append(p->actions, act); */
|
||||
|
||||
evry->action_register(act, 0);
|
||||
|
||||
return EINA_TRUE;
|
||||
|
|
|
@ -416,7 +416,7 @@ _plugins_init(const Evry_API *_api)
|
|||
_plug->transient = EINA_TRUE;
|
||||
evry->plugin_register(_plug, EVRY_PLUGIN_SUBJECT, 2);
|
||||
|
||||
act = EVRY_ACTION_NEW(_("Switch to Window"),
|
||||
act = EVRY_ACTION_NEW("Switch to Window",
|
||||
EVRY_TYPE_BORDER, 0, "go-next",
|
||||
_act_border, _check_border);
|
||||
EVRY_ITEM_DATA_INT_SET(act, BORDER_SHOW);
|
||||
|
@ -424,28 +424,28 @@ _plugins_init(const Evry_API *_api)
|
|||
|
||||
_actions = eina_list_append(_actions, act);
|
||||
|
||||
act = EVRY_ACTION_NEW(_("Iconify"),
|
||||
act = EVRY_ACTION_NEW("Iconify",
|
||||
EVRY_TYPE_BORDER, 0, "go-down",
|
||||
_act_border, _check_border);
|
||||
EVRY_ITEM_DATA_INT_SET(act, BORDER_HIDE);
|
||||
_actions = eina_list_append(_actions, act);
|
||||
evry->action_register(act, 2);
|
||||
|
||||
act = EVRY_ACTION_NEW(_("Toggle Fullscreen"),
|
||||
act = EVRY_ACTION_NEW("Toggle Fullscreen",
|
||||
EVRY_TYPE_BORDER, 0, "view-fullscreen",
|
||||
_act_border, _check_border);
|
||||
EVRY_ITEM_DATA_INT_SET(act, BORDER_FULLSCREEN);
|
||||
_actions = eina_list_append(_actions, act);
|
||||
evry->action_register(act, 4);
|
||||
|
||||
act = EVRY_ACTION_NEW(_("Close"),
|
||||
act = EVRY_ACTION_NEW("Close",
|
||||
EVRY_TYPE_BORDER, 0, "list-remove",
|
||||
_act_border, _check_border);
|
||||
EVRY_ITEM_DATA_INT_SET(act, BORDER_CLOSE);
|
||||
_actions = eina_list_append(_actions, act);
|
||||
evry->action_register(act, 3);
|
||||
|
||||
act = EVRY_ACTION_NEW(_("Send to Desktop"),
|
||||
act = EVRY_ACTION_NEW("Send to Desktop",
|
||||
EVRY_TYPE_BORDER, 0, "go-previous",
|
||||
_act_border, _check_border);
|
||||
EVRY_ITEM_DATA_INT_SET(act, BORDER_TODESK);
|
||||
|
|
Loading…
Reference in New Issue