davemds pushed a commit to branch master.

http://git.enlightenment.org/enlightenment/modules/edgar.git/commit/?id=63510bcfbefef08eafb4e0b8dc085434f6a347ab

commit 63510bcfbefef08eafb4e0b8dc085434f6a347ab
Author: Dave Andreoli <d...@gurumeditation.it>
Date:   Wed Apr 8 22:08:48 2015 +0200

    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)))

-- 


Reply via email to