forked from enlightenment/enlightenment
fix e_exec to successfully open .desktop files which are URLs by using e_open
This commit is contained in:
parent
65e4442f1c
commit
ca798e4d05
|
@ -1,6 +1,7 @@
|
||||||
2013-05-29 Mike Blumenkrantz
|
2013-05-29 Mike Blumenkrantz
|
||||||
|
|
||||||
* added dnd support for text/x-moz-url
|
* added dnd support for text/x-moz-url
|
||||||
|
* fixed e_exec to open .desktop url links
|
||||||
|
|
||||||
2013-05-24 Christopher Michael
|
2013-05-24 Christopher Michael
|
||||||
|
|
||||||
|
|
1
NEWS
1
NEWS
|
@ -215,3 +215,4 @@ Fixes:
|
||||||
* toolbar gadgets no longer crash when trying to display a popup
|
* toolbar gadgets no longer crash when trying to display a popup
|
||||||
* fixed theme bug which prevented windows from unshading correctly when animations were disabled
|
* fixed theme bug which prevented windows from unshading correctly when animations were disabled
|
||||||
* filemanager windows no longer resize to 0x0 when double clicked with no icons present
|
* filemanager windows no longer resize to 0x0 when double clicked with no icons present
|
||||||
|
* fixed e_exec to open .desktop url links
|
||||||
|
|
|
@ -16,6 +16,7 @@ AM_CPPFLAGS = \
|
||||||
@EMOTION_CFLAGS@ \
|
@EMOTION_CFLAGS@ \
|
||||||
@WAYLAND_CFLAGS@ \
|
@WAYLAND_CFLAGS@ \
|
||||||
@WAYLAND_EGL_CFLAGS@ \
|
@WAYLAND_EGL_CFLAGS@ \
|
||||||
|
-DE_BINDIR=\"$(bindir)\" \
|
||||||
-DPACKAGE_BIN_DIR=\"@PACKAGE_BIN_DIR@\" \
|
-DPACKAGE_BIN_DIR=\"@PACKAGE_BIN_DIR@\" \
|
||||||
-DPACKAGE_LIB_DIR=\"@PACKAGE_LIB_DIR@\" \
|
-DPACKAGE_LIB_DIR=\"@PACKAGE_LIB_DIR@\" \
|
||||||
-DPACKAGE_DATA_DIR=\"@PACKAGE_DATA_DIR@\" \
|
-DPACKAGE_DATA_DIR=\"@PACKAGE_DATA_DIR@\" \
|
||||||
|
|
|
@ -186,8 +186,13 @@ e_exec(E_Zone *zone, Efreet_Desktop *desktop, const char *exec,
|
||||||
if (exec)
|
if (exec)
|
||||||
inst = _e_exec_cb_exec(launch, NULL, strdup(exec), 0);
|
inst = _e_exec_cb_exec(launch, NULL, strdup(exec), 0);
|
||||||
else
|
else
|
||||||
inst = efreet_desktop_command_get
|
{
|
||||||
(desktop, files, (Efreet_Desktop_Command_Cb)_e_exec_cb_exec, launch);
|
if (desktop->exec)
|
||||||
|
inst = efreet_desktop_command_get(desktop, files,
|
||||||
|
(Efreet_Desktop_Command_Cb)_e_exec_cb_exec, launch);
|
||||||
|
else
|
||||||
|
inst = _e_exec_cb_exec(launch, desktop, NULL, 0);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
inst = _e_exec_cb_exec(launch, NULL, strdup(exec), 0);
|
inst = _e_exec_cb_exec(launch, NULL, strdup(exec), 0);
|
||||||
|
@ -515,6 +520,18 @@ _e_exec_cb_exec(void *data, Efreet_Desktop *desktop, char *exec, int remaining)
|
||||||
else
|
else
|
||||||
exe = ecore_exe_run(exec, inst);
|
exe = ecore_exe_run(exec, inst);
|
||||||
}
|
}
|
||||||
|
else if (desktop && desktop->url)
|
||||||
|
{
|
||||||
|
Eina_Strbuf *sb;
|
||||||
|
|
||||||
|
sb = eina_strbuf_new();
|
||||||
|
eina_strbuf_append(sb, E_BINDIR "/enlightenment_open '");
|
||||||
|
eina_strbuf_append(sb, desktop->url);
|
||||||
|
eina_strbuf_append_char(sb, '\'');
|
||||||
|
exe = ecore_exe_run(eina_strbuf_string_get(sb),
|
||||||
|
inst);
|
||||||
|
eina_strbuf_free(sb);
|
||||||
|
}
|
||||||
else
|
else
|
||||||
exe = ecore_exe_run(exec, inst);
|
exe = ecore_exe_run(exec, inst);
|
||||||
}
|
}
|
||||||
|
@ -557,7 +574,7 @@ _e_exec_cb_exec(void *data, Efreet_Desktop *desktop, char *exec, int remaining)
|
||||||
lnew = eina_list_append(l, inst);
|
lnew = eina_list_append(l, inst);
|
||||||
if (l) eina_hash_modify(e_exec_instances, inst->key, lnew);
|
if (l) eina_hash_modify(e_exec_instances, inst->key, lnew);
|
||||||
else eina_hash_add(e_exec_instances, inst->key, lnew);
|
else eina_hash_add(e_exec_instances, inst->key, lnew);
|
||||||
if (inst->desktop)
|
if (inst->desktop && inst->desktop->exec)
|
||||||
{
|
{
|
||||||
e_exec_start_pending = eina_list_append(e_exec_start_pending,
|
e_exec_start_pending = eina_list_append(e_exec_start_pending,
|
||||||
inst->desktop);
|
inst->desktop);
|
||||||
|
|
Loading…
Reference in New Issue