From 63510bcfbefef08eafb4e0b8dc085434f6a347ab Mon Sep 17 00:00:00 2001 From: Dave Andreoli Date: Wed, 8 Apr 2015 22:08:48 +0200 Subject: [PATCH] Try to simplify the E version check We now use E_VERSION_MAJOR provided by e19 and e20, while manually set it on e18 Minimum e version: 0.18, sorry Jef, but e17 is really too old to support in a sane and reliable way Tested only on e20, tomorrow will test in e19 and (hopefully) e18 --- configure.ac | 19 ++++++------------- src/e_mod_edgar.c | 18 +++++------------- 2 files changed, 11 insertions(+), 26 deletions(-) diff --git a/configure.ac b/configure.ac index a2b0275..1c8af96 100644 --- a/configure.ac +++ b/configure.ac @@ -46,19 +46,12 @@ AC_SUBST(EDJE_CC) AC_MSG_CHECKING([Which edje_cc to use]) AC_MSG_RESULT(${EDJE_CC}) -# Check enlightenment version -PKG_CHECK_MODULES( - E, [enlightenment >= 0.19.99], - [AC_DEFINE([HAVE_E20], [1], [Have at least E20])], - [PKG_CHECK_MODULES( - E, [enlightenment >= 0.18.99], - [AC_DEFINE([HAVE_E19], [1], [Have at least E19])], - [PKG_CHECK_MODULES( - E, [enlightenment >= 0.17] - ) - ] - ) - ] +# Check enlightenment version >=0.18 +# (for e18 we manually define E_VERSION_MAJOR) +PKG_CHECK_MODULES(E, + [enlightenment >= 0.18 enlightenment < 0.19], + [AC_DEFINE([E_VERSION_MAJOR], [18], [Have exactly E18])], + [PKG_CHECK_MODULES(E, [enlightenment >= 0.19])] ) # Explicit link to Eo diff --git a/src/e_mod_edgar.c b/src/e_mod_edgar.c index d1caf33..0b7feee 100644 --- a/src/e_mod_edgar.c +++ b/src/e_mod_edgar.c @@ -295,11 +295,7 @@ edgar_gadget_unload(Edgar_Py_Gadget *gadget) // kill all the active popups edje obj EINA_LIST_FOREACH_SAFE(gadget->pops_obj, l, l2, popup_content) -#if defined HAVE_E20 || defined HAVE_E19 - E_FREE_FUNC(popup_content, evas_object_del); -#else - E_FN_DEL(evas_object_del, popup_content); -#endif + E_FREE_FUNC(popup_content, evas_object_del); // Free the gadcon client class e_gadcon_provider_unregister(gadget->cclass); @@ -399,7 +395,7 @@ edgar_popup_new(Edgar_Py_Gadget *gadget, E_Gadcon_Client *gcc) Py_DECREF(ret); // put the popup content in a gadcon popup and show it -#if defined HAVE_E20 || defined HAVE_E19 +#if E_VERSION_MAJOR >= 19 popup = e_gadcon_popup_new(gcc, 0); #else popup = e_gadcon_popup_new(gcc); @@ -453,7 +449,7 @@ edgar_menu_info_cb(void *data, E_Menu *m, E_Menu_Item *mi) } // dialog -#if defined HAVE_E20 || defined HAVE_E19 +#if E_VERSION_MAJOR >= 19 Evas_Object *con = NULL; #else E_Container *con; @@ -464,7 +460,7 @@ edgar_menu_info_cb(void *data, E_Menu *m, E_Menu_Item *mi) e_dialog_title_set(dia, "Gadget info"); e_dialog_button_add(dia, "Close", NULL, NULL, NULL); -#if defined HAVE_E20 || defined HAVE_E19 +#if E_VERSION_MAJOR >= 19 Evas *evas = evas_object_evas_get(dia->win); #else Evas *evas = dia->win->evas; @@ -507,7 +503,7 @@ edgar_mouse_down3_cb(void *data, Evas *e, Evas_Object *obj, void *event_info) E_Menu *m; int x, y; -#ifdef HAVE_E20 +#if E_VERSION_MAJOR >= 20 zone = e_zone_current_get(); #else zone = e_util_zone_current_get(e_manager_current_get()); @@ -542,11 +538,7 @@ edgar_mouse_down1_cb(void *data, Evas *e, Evas_Object *obj, void *event_info) { if ((popup = evas_object_data_get(obj, "popup"))) { -#if defined HAVE_E20 || defined HAVE_E19 E_FREE_FUNC(popup, e_object_del); -#else - E_FN_DEL(e_object_del, popup); -#endif evas_object_data_del(obj, "popup"); } else if ((popup = edgar_popup_new(gadget, gcc)))