Enlightenment CVS committal Author : devilhorns Project : e_modules Module : screenshot
Dir : e_modules/screenshot Modified Files: e_mod_main.c configure.in Log Message: Use evas_list_remove_list, not evas_list_remove to remove config items. Better trapping for import/scrot installed. This allows a user to install either at a later date without having to recompile the module. Version Bump. =================================================================== RCS file: /cvs/e/e_modules/screenshot/e_mod_main.c,v retrieving revision 1.29 retrieving revision 1.30 diff -u -3 -r1.29 -r1.30 --- e_mod_main.c 20 May 2006 16:51:18 -0000 1.29 +++ e_mod_main.c 20 May 2006 17:21:42 -0000 1.30 @@ -11,7 +11,6 @@ # endif #endif #include "e_mod_main.h" -#include "config.h" typedef struct _Instance Instance; typedef struct _Screenshot Screenshot; @@ -22,6 +21,7 @@ Evas_Object *ss_obj; Screenshot *ss; Config_Item *ci; + Ecore_Exe *exe; const char *id; }; @@ -215,23 +215,24 @@ ci = E_NEW(Config_Item, 1); ci->id = evas_stringshare_add(id); ci->delay_time = 60.0; -#ifdef HAVE_IMPORT - #ifdef HAVE_SCROT - ci->use_import = 0; - ci->use_scrot = 1; - #else - ci->use_import = 1; - ci->use_scrot = 0; - #endif -#else - ci->use_import = 0; - #ifdef HAVE_SCROT - ci->use_scrot = 1; - #else - ci->use_scrot = 0; - #endif -#endif - + if (ecore_file_app_installed("import")) + { + if (ecore_file_app_installed("scrot")) + { + ci->use_import = 0; + ci->use_scrot = 1; + } + else + { + ci->use_import = 1; + ci->use_scrot = 0; + } + } + else if (ecore_file_app_installed("scrot")) + { + ci->use_import = 0; + ci->use_scrot = 1; + } ci->location = evas_stringshare_add(e_user_homedir_get()); ci->filename = evas_stringshare_add("screenshot"); ci->import.use_img_border = 1; @@ -298,22 +299,24 @@ ci->id = evas_stringshare_add("0"); ci->delay_time = 60.0; -#ifdef HAVE_IMPORT - #ifdef HAVE_SCROT - ci->use_import = 0; - ci->use_scrot = 1; - #else - ci->use_import = 1; - ci->use_scrot = 0; - #endif -#else - ci->use_import = 0; - #ifdef HAVE_SCROT - ci->use_scrot = 1; - #else - ci->use_scrot = 0; - #endif -#endif + if (ecore_file_app_installed("import")) + { + if (ecore_file_app_installed("scrot")) + { + ci->use_import = 0; + ci->use_scrot = 1; + } + else + { + ci->use_import = 1; + ci->use_scrot = 0; + } + } + else if (ecore_file_app_installed("scrot")) + { + ci->use_import = 0; + ci->use_scrot = 1; + } ci->location = evas_stringshare_add(e_user_homedir_get()); ci->filename = evas_stringshare_add("screenshot"); ci->import.use_img_border = 1; @@ -348,6 +351,7 @@ e_object_del(E_OBJECT(ss_config->menu)); ss_config->menu = NULL; } + if (ss_config->exe_exit_handler) ecore_event_handler_del(ss_config->exe_exit_handler); @@ -359,7 +363,7 @@ if (ci->id) evas_stringshare_del(ci->id); if (ci->location) evas_stringshare_del(ci->location); if (ci->filename) evas_stringshare_del(ci->filename); - ss_config->items = evas_list_remove(ss_config->items, ss_config->items); + ss_config->items = evas_list_remove_list(ss_config->items, ss_config->items); free(ci); } free(ss_config); @@ -434,7 +438,6 @@ static void _ss_handle_mouse_down(Instance *inst) { - Ecore_Exe *x; Edje_Message_Int_Set *msg; char buf[1024]; char *cmd, *opt, *f; @@ -468,8 +471,8 @@ ss_config->exe_exit_handler = ecore_event_handler_add(ECORE_EXE_EVENT_DEL, _ss_exe_cb_exit, NULL); - x = ecore_exe_run(buf, inst); - + inst->exe = ecore_exe_run(buf, inst); + if (inst->ci->delay_time > 0) { msg = malloc(sizeof(Edje_Message_Int_Set) + 1 * sizeof(int)); @@ -613,6 +616,8 @@ inst = ecore_exe_data_get(x); x = NULL; + inst->exe = NULL; + if (ss_config->exe_exit_handler) ecore_event_handler_del(ss_config->exe_exit_handler); return 0; =================================================================== RCS file: /cvs/e/e_modules/screenshot/configure.in,v retrieving revision 1.14 retrieving revision 1.15 diff -u -3 -r1.14 -r1.15 --- configure.in 20 May 2006 16:31:41 -0000 1.14 +++ configure.in 20 May 2006 17:21:42 -0000 1.15 @@ -7,7 +7,7 @@ AC_CANONICAL_BUILD AC_CANONICAL_HOST -AM_INIT_AUTOMAKE(screenshot, 0.1.0) +AM_INIT_AUTOMAKE(screenshot, 0.2.0) AM_CONFIG_HEADER(config.h) AC_ISC_POSIX ------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs