tasn pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=c0363a2979ba37d4c2e8c525ef6388a003a79a06

commit c0363a2979ba37d4c2e8c525ef6388a003a79a06
Author: Tom Hacohen <t...@stosb.com>
Date:   Mon Feb 29 11:32:52 2016 +0000

    Eo events: Migrate all of elm to the new event callback signatures
---
 src/bin/test_anim.c                                |  10 +-
 src/bin/test_application_server.c                  |  22 ++--
 src/bin/test_entry.c                               |   9 +-
 src/bin/test_task_switcher.c                       |  12 +--
 src/bin/test_win_plug.c                            |   4 +-
 src/examples/filemvc.c                             |   6 +-
 src/lib/elc_combobox.c                             |  21 ++--
 src/lib/elc_fileselector.c                         | 104 +++++++-----------
 src/lib/elc_fileselector_button.c                  |  10 +-
 src/lib/elc_fileselector_entry.c                   |  19 ++--
 src/lib/elc_hoversel.c                             |  22 ++--
 src/lib/elc_multibuttonentry.c                     |  24 ++---
 src/lib/elc_naviframe.c                            |  13 +--
 src/lib/elc_player.c                               |  80 +++++---------
 src/lib/elc_popup.c                                |  24 ++---
 src/lib/elm_app_server.c                           |   4 +-
 src/lib/elm_atspi_bridge.c                         | 116 ++++++++++-----------
 src/lib/elm_box.c                                  |  20 ++--
 src/lib/elm_cnp.c                                  |   6 +-
 src/lib/elm_color_class.c                          |  14 +--
 src/lib/elm_colorselector.c                        |  54 +++++-----
 src/lib/elm_conform.c                              |  28 ++---
 src/lib/elm_dayselector.c                          |   3 +-
 src/lib/elm_entry.c                                |  25 ++---
 src/lib/elm_frame.c                                |   3 +-
 src/lib/elm_genlist.c                              |   5 +-
 src/lib/elm_helper.c                               |   7 +-
 src/lib/elm_helper.h                               |   2 +-
 src/lib/elm_interface_atspi_accessible.c           |  10 +-
 src/lib/elm_interface_atspi_image.c                |   2 +-
 src/lib/elm_interface_scrollable.c                 |  38 +++----
 src/lib/elm_map.c                                  |  10 +-
 src/lib/elm_menu.c                                 |  12 +--
 src/lib/elm_panel.c                                |   4 +-
 src/lib/elm_photo.c                                |   3 +-
 src/lib/elm_photocam.c                             |  14 +--
 src/lib/elm_spinner.c                              |  40 +++----
 src/lib/elm_store.c                                |   8 +-
 src/lib/elm_video.c                                |  48 +++------
 src/lib/elm_view_form.c                            |   4 +-
 src/lib/elm_view_list.c                            |  37 +++----
 src/lib/elm_widget.c                               |  79 +++++---------
 src/lib/elm_win.c                                  |   2 +-
 .../datetime_input_ctxpopup.c                      |  28 ++---
 src/modules/prefs/elm_button.c                     |   6 +-
 src/modules/prefs/elm_check.c                      |   6 +-
 src/modules/prefs/elm_datetime.c                   |   6 +-
 src/modules/prefs/elm_entry.c                      |   6 +-
 src/modules/prefs/elm_slider.c                     |   6 +-
 src/modules/prefs/elm_spinner.c                    |   6 +-
 50 files changed, 398 insertions(+), 644 deletions(-)

diff --git a/src/bin/test_anim.c b/src/bin/test_anim.c
index 6d6cd39..8f24281 100644
--- a/src/bin/test_anim.c
+++ b/src/bin/test_anim.c
@@ -11,7 +11,7 @@ static const char *names[] =
 };
 
 static Eina_Bool
-_anim_tick(void *data EINA_UNUSED, Eo *win, const Eo_Event_Description *desc 
EINA_UNUSED, void *event_info EINA_UNUSED)
+_anim_tick(void *data EINA_UNUSED, const Eo_Event *event)
 {
    Evas_Object *bub, *sh;
    Evas_Coord x, y, w, h, vw, vh;
@@ -19,18 +19,18 @@ _anim_tick(void *data EINA_UNUSED, Eo *win, const 
Eo_Event_Description *desc EIN
    double lx, ly;
    unsigned int i;
 
-   evas_output_viewport_get(evas_object_evas_get(win), 0, 0, &vw, &vh);
+   evas_output_viewport_get(evas_object_evas_get(event->obj), 0, 0, &vw, &vh);
    r = 48;
    t = ecore_loop_time_get();
    fac = 2.0 / (double)((sizeof(names) / sizeof(char *) / 2));
-   evas_pointer_canvas_xy_get(evas_object_evas_get(win), &x, &y);
+   evas_pointer_canvas_xy_get(evas_object_evas_get(event->obj), &x, &y);
    lx = x;
    ly = y;
 
    for (i = 0; i < (sizeof(names) / sizeof(char *) / 2); i++)
      {
-        bub = evas_object_data_get(win, names[i * 2]);
-        sh = evas_object_data_get(win, names[(i * 2) + 1]);
+        bub = evas_object_data_get(event->obj, names[i * 2]);
+        sh = evas_object_data_get(event->obj, names[(i * 2) + 1]);
         zz = (((2 + sin(t * 6 + (M_PI * (i * fac)))) / 3) * 64) * 2;
         xx = (cos(t * 4 + (M_PI * (i * fac))) * r) * 2;
         yy = (sin(t * 6 + (M_PI * (i * fac))) * r) * 2;
diff --git a/src/bin/test_application_server.c 
b/src/bin/test_application_server.c
index 114f32b..0d7874e 100644
--- a/src/bin/test_application_server.c
+++ b/src/bin/test_application_server.c
@@ -40,17 +40,17 @@ _window_create(App_View_Context *ctx)
 }
 
 static Eina_Bool
-_close_cb(void *data, Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED, void *event_info EINA_UNUSED)
+_close_cb(void *data, const Eo_Event *event)
 {
    App_View_Context *ctx = data;
    if (ctx->win)
      evas_object_del(ctx->win);
-   eo_del(obj);
+   eo_del(event->obj);
    return EINA_TRUE;
 }
 
 static Eina_Bool
-_pause_cb(void *data, Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED, void *event_info EINA_UNUSED)
+_pause_cb(void *data, const Eo_Event *event EINA_UNUSED)
 {
    App_View_Context *ctx = data;
    _text_update(ctx, "paused");
@@ -58,7 +58,7 @@ _pause_cb(void *data, Eo *obj EINA_UNUSED, const 
Eo_Event_Description *desc EINA
 }
 
 static Eina_Bool
-_resume_cb(void *data, Eo *obj, const Eo_Event_Description *desc EINA_UNUSED, 
void *event_info EINA_UNUSED)
+_resume_cb(void *data, const Eo_Event *event)
 {
    App_View_Context *ctx = data;
 
@@ -66,7 +66,7 @@ _resume_cb(void *data, Eo *obj, const Eo_Event_Description 
*desc EINA_UNUSED, vo
    if (!ctx->win)
      {
         _window_create(ctx);
-        eo_do(obj, elm_app_server_view_window_set(ctx->win));
+        eo_do(event->obj, elm_app_server_view_window_set(ctx->win));
      }
 
    _text_update(ctx, "alive");
@@ -74,13 +74,13 @@ _resume_cb(void *data, Eo *obj, const Eo_Event_Description 
*desc EINA_UNUSED, vo
 }
 
 static Eina_Bool
-_view_del_cb(void *data, Eo *obj, const Eo_Event_Description *desc 
EINA_UNUSED, void *event_info EINA_UNUSED)
+_view_del_cb(void *data, const Eo_Event *event)
 {
    App_View_Context *ctx = data;
 
    if (ctx->win)
      evas_object_del(ctx->win);
-   eo_do(obj, elm_app_server_view_window_set(NULL));
+   eo_do(event->obj, elm_app_server_view_window_set(NULL));
    eina_stringshare_del(ctx->view_name);
    free(ctx);
    return EINA_TRUE;
@@ -122,16 +122,16 @@ _create_view_cb(Elm_App_Server *app_server, const 
Eina_Value *args EINA_UNUSED,
 }
 
 static Eina_Bool
-_terminate_cb(void *data EINA_UNUSED, Eo *obj, const Eo_Event_Description 
*desc EINA_UNUSED, void *event_info EINA_UNUSED)
+_terminate_cb(void *data EINA_UNUSED, const Eo_Event *event)
 {
    const char *title = NULL;
 
    printf("terminate cb\n");
-   eo_do(obj, elm_app_server_save(),
+   eo_do(event->obj, elm_app_server_save(),
          title = elm_app_server_title_get());
 
    printf("Closing: %s\n", title);
-   eo_unref(obj);
+   eo_unref(event->obj);
    return EINA_TRUE;
 }
 
@@ -171,7 +171,7 @@ test_application_server_common(const char *pkg)
 }
 
 static Eina_Bool
-_server_del_cb(void *data, Eo *obj EINA_UNUSED, const Eo_Event_Description 
*desc EINA_UNUSED, void *event_info EINA_UNUSED)
+_server_del_cb(void *data, const Eo_Event *event EINA_UNUSED)
 {
    Elm_App_Server **server = data;
    *server = NULL;
diff --git a/src/bin/test_entry.c b/src/bin/test_entry.c
index f79505e..b92f933 100644
--- a/src/bin/test_entry.c
+++ b/src/bin/test_entry.c
@@ -333,12 +333,11 @@ _end_hide_cb(void *data, Evas_Object *obj EINA_UNUSED, 
void *event_info EINA_UNU
 }
 
 static Eina_Bool
-_context_menu_show_cb(void *data EINA_UNUSED, Eo *obj,
-                const Eo_Event_Description *desc EINA_UNUSED, void *event_info 
EINA_UNUSED)
+_context_menu_show_cb(void *data EINA_UNUSED, const Eo_Event *event)
 {
-   elm_entry_context_menu_clear(obj);
-   elm_entry_context_menu_item_add(obj, "MenuD1", NULL, ELM_ICON_NONE, 
_item_cb, NULL);
-   elm_entry_context_menu_item_add(obj, "MenuD2", NULL, ELM_ICON_NONE, 
_item_cb, NULL);
+   elm_entry_context_menu_clear(event->obj);
+   elm_entry_context_menu_item_add(event->obj, "MenuD1", NULL, ELM_ICON_NONE, 
_item_cb, NULL);
+   elm_entry_context_menu_item_add(event->obj, "MenuD2", NULL, ELM_ICON_NONE, 
_item_cb, NULL);
    return EO_CALLBACK_CONTINUE;
 }
 
diff --git a/src/bin/test_task_switcher.c b/src/bin/test_task_switcher.c
index ff7d7e4..535e88e 100644
--- a/src/bin/test_task_switcher.c
+++ b/src/bin/test_task_switcher.c
@@ -34,11 +34,11 @@ static void _btn_resume_cb(void *data, Evas_Object *obj 
EINA_UNUSED, void *event
 }
 
 static Eina_Bool
-_app_view_prop_changed_cb(void *data EINA_UNUSED, Eo *obj, const 
Eo_Event_Description *desc EINA_UNUSED, void *event_info EINA_UNUSED)
+_app_view_prop_changed_cb(void *data EINA_UNUSED, const Eo_Event *event)
 {
    Elm_App_View_State state = ELM_APP_VIEW_STATE_UNKNOWN;
 
-   eo_do(obj, state = elm_app_client_view_state_get());
+   eo_do(event->obj, state = elm_app_client_view_state_get());
 
    if (state == ELM_APP_VIEW_STATE_CLOSED)
      {
@@ -47,7 +47,7 @@ _app_view_prop_changed_cb(void *data EINA_UNUSED, Eo *obj, 
const Eo_Event_Descri
         evas_object_del(props);
      }
    else
-     _app_view_clicked(obj, NULL, NULL);
+     _app_view_clicked(event->obj, NULL, NULL);
 
    return EINA_TRUE;
 }
@@ -274,10 +274,10 @@ _app_clicked(void *data, Evas_Object *obj EINA_UNUSED, 
void *event_info EINA_UNU
 }
 
 static Eina_Bool
-_view_list_update_cb(void *data EINA_UNUSED, Eo *obj, const 
Eo_Event_Description *desc EINA_UNUSED, void *event_info EINA_UNUSED)
+_view_list_update_cb(void *data EINA_UNUSED, const Eo_Event *event)
 {
-   if (app_selected == obj)
-     _app_clicked(obj, NULL, NULL);
+   if (app_selected == event->obj)
+     _app_clicked(event->obj, NULL, NULL);
    return EINA_TRUE;
 }
 
diff --git a/src/bin/test_win_plug.c b/src/bin/test_win_plug.c
index dd5d5d3..25fad18 100644
--- a/src/bin/test_win_plug.c
+++ b/src/bin/test_win_plug.c
@@ -144,9 +144,9 @@ create_handles(Evas_Object *obj)
 }
 
 static Eina_Bool
-_notify_end(void *data EINA_UNUSED, Eo *obj, const Eo_Event_Description *desc 
EINA_UNUSED, void *event_info EINA_UNUSED)
+_notify_end(void *data EINA_UNUSED, const Eo_Event *event)
 {
-   eo_del(obj);
+   eo_del(event->obj);
    return EINA_FALSE;
 }
 
diff --git a/src/examples/filemvc.c b/src/examples/filemvc.c
index 2475d69..a1e90b7 100644
--- a/src/examples/filemvc.c
+++ b/src/examples/filemvc.c
@@ -47,10 +47,10 @@ _filter_cb(void *data EINA_UNUSED, Eio_File *handler 
EINA_UNUSED, const Eina_Fil
 }
 
 static Eina_Bool
-_list_selected_cb(void *data EINA_UNUSED, Eo *obj EINA_UNUSED, const 
Eo_Event_Description *desc EINA_UNUSED, void *event_info EINA_UNUSED)
+_list_selected_cb(void *data EINA_UNUSED, const Eo_Event *event)
 {
    Efl_Model_Test_Filemvc_Data *priv = data;
-   Eo *child = event_info;
+   Eo *child = event->event_info;
    ethumb_client_file_free(elm_thumb_ethumb_client_get());
 
    printf("LIST selected model\n");
@@ -59,7 +59,7 @@ _list_selected_cb(void *data EINA_UNUSED, Eo *obj 
EINA_UNUSED, const Eo_Event_De
 }
 
 static Eina_Bool
-_tree_selected_cb(void *data, Eo *obj EINA_UNUSED, const Eo_Event_Description 
*desc EINA_UNUSED, void *event_info)
+_tree_selected_cb(void *data, const Eo_Event *event)
 {
    Efl_Model_Test_Filemvc_Data *priv = data;
    Eo *child = event_info;
diff --git a/src/lib/elc_combobox.c b/src/lib/elc_combobox.c
index f950f58..cd8e32c 100644
--- a/src/lib/elc_combobox.c
+++ b/src/lib/elc_combobox.c
@@ -92,13 +92,11 @@ _elm_combobox_elm_widget_theme_apply(Eo *obj, 
Elm_Combobox_Data *sd)
 }
 
 static Eina_Bool
-_on_hover_clicked(void *data,
-                     Eo *obj, const Eo_Event_Description *desc EINA_UNUSED,
-                     void *event_info EINA_UNUSED)
+_on_hover_clicked(void *data, const Eo_Event *event)
 {
    const char *dismissstr;
 
-   dismissstr = elm_layout_data_get(obj, "dismiss");
+   dismissstr = elm_layout_data_get(event->obj, "dismiss");
 
    if (!dismissstr || strcmp(dismissstr, "on"))
      elm_combobox_hover_end(data); // for backward compatibility
@@ -210,8 +208,7 @@ _on_item_pressed(void *data , Evas_Object *obj EINA_UNUSED, 
void *event)
 }
 
 static Eina_Bool
-_gl_filter_finished_cb(void *data, Eo *obj EINA_UNUSED,
-                       const Eo_Event_Description *desc EINA_UNUSED, void 
*event)
+_gl_filter_finished_cb(void *data, const Eo_Event *event)
 {
    char buf[1024];
    ELM_COMBOBOX_DATA_GET(data, sd);
@@ -224,7 +221,7 @@ _gl_filter_finished_cb(void *data, Eo *obj EINA_UNUSED,
         return EINA_TRUE;
      }
 
-   eo_do(data, eo_event_callback_call(ELM_COMBOBOX_EVENT_FILTER_DONE, event));
+   eo_do(data, eo_event_callback_call(ELM_COMBOBOX_EVENT_FILTER_DONE, 
event->event_info));
 
    if (sd->count > 0)
      {
@@ -245,8 +242,7 @@ _gl_filter_finished_cb(void *data, Eo *obj EINA_UNUSED,
 }
 
 static Eina_Bool
-_on_aborted(void *data, Eo *obj EINA_UNUSED,
-            const Eo_Event_Description *desc EINA_UNUSED, void *event_info 
EINA_UNUSED)
+_on_aborted(void *data, const Eo_Event *event EINA_UNUSED)
 {
    ELM_COMBOBOX_DATA_GET(data, sd);
    if (sd->expanded) elm_combobox_hover_end(data);
@@ -254,17 +250,14 @@ _on_aborted(void *data, Eo *obj EINA_UNUSED,
 }
 
 static Eina_Bool
-_on_changed(void *data, Eo *obj EINA_UNUSED,
-            const Eo_Event_Description *desc EINA_UNUSED, void *event_info 
EINA_UNUSED)
+_on_changed(void *data, const Eo_Event *event EINA_UNUSED)
 {
    eo_do(data, eo_event_callback_call(ELM_ENTRY_EVENT_CHANGED, NULL));
    return EINA_TRUE;
 }
 
 static Eina_Bool
-_on_clicked(void *data,
-            Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED,
-            void *event_info EINA_UNUSED)
+_on_clicked(void *data, const Eo_Event *event EINA_UNUSED)
 {
    elm_combobox_hover_begin(data);
    return EINA_TRUE;
diff --git a/src/lib/elc_fileselector.c b/src/lib/elc_fileselector.c
index 0c4002e..6922594 100644
--- a/src/lib/elc_fileselector.c
+++ b/src/lib/elc_fileselector.c
@@ -54,10 +54,8 @@ static const Elm_Action key_actions[] = {
    {NULL, NULL}
 };
 
-static Eina_Bool _ok(void *data,
-      Eo *obj, const Eo_Event_Description *desc, void *event_info);
-static Eina_Bool _canc(void *data,
-      Eo *obj, const Eo_Event_Description *desc, void *event_info);
+static Eina_Bool _ok(void *data, const Eo_Event *event);
+static Eina_Bool _canc(void *data, const Eo_Event *event);
 
 /* final routine on deletion */
 static void
@@ -156,14 +154,16 @@ _elm_fileselector_elm_widget_theme_apply(Eo *obj, 
Elm_Fileselector_Data *sd)
 static Eina_Bool
 _key_action_select(Evas_Object *obj, const char *params EINA_UNUSED)
 {
-   _ok(obj, NULL, NULL, NULL);
+   Eo_Event event = {0};
+   _ok(obj, &event);
    return EINA_TRUE;
 }
 
 static Eina_Bool
 _key_action_escape(Evas_Object *obj, const char *params EINA_UNUSED)
 {
-   _canc(obj, NULL, NULL, NULL);
+   Eo_Event event = {0};
+   _canc(obj, &event);
    return EINA_TRUE;
 }
 
@@ -704,11 +704,9 @@ _populate(Evas_Object *obj,
 }
 
 static Eina_Bool
-_on_list_expanded(void *data,
-                  Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-                  void *event_info)
+_on_list_expanded(void *data, const Eo_Event *event)
 {
-   Elm_Object_Item *it = event_info;
+   Elm_Object_Item *it = event->event_info;
    const char *path = elm_object_item_data_get(it);
 
    _populate(data, path, it, NULL);
@@ -717,11 +715,9 @@ _on_list_expanded(void *data,
 }
 
 static Eina_Bool
-_on_list_contracted(void *data EINA_UNUSED,
-                    Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-                    void *event_info)
+_on_list_contracted(void *data EINA_UNUSED, const Eo_Event *event)
 {
-   Elm_Object_Item *it = event_info;
+   Elm_Object_Item *it = event->event_info;
 
    elm_genlist_item_subitems_clear(it);
 
@@ -729,11 +725,9 @@ _on_list_contracted(void *data EINA_UNUSED,
 }
 
 static Eina_Bool
-_on_list_expand_req(void *data EINA_UNUSED,
-                    Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-                    void *event_info)
+_on_list_expand_req(void *data EINA_UNUSED, const Eo_Event *event)
 {
-   Elm_Object_Item *it = event_info;
+   Elm_Object_Item *it = event->event_info;
 
    elm_genlist_item_expanded_set(it, EINA_TRUE);
 
@@ -741,11 +735,9 @@ _on_list_expand_req(void *data EINA_UNUSED,
 }
 
 static Eina_Bool
-_on_list_contract_req(void *data EINA_UNUSED,
-                      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-                      void *event_info)
+_on_list_contract_req(void *data EINA_UNUSED, const Eo_Event *event)
 {
-   Elm_Object_Item *it = event_info;
+   Elm_Object_Item *it = event->event_info;
 
    elm_genlist_item_expanded_set(it, EINA_FALSE);
 
@@ -794,12 +786,10 @@ _schedule_populate(Evas_Object *fs,
 }
 
 static Eina_Bool
-_on_item_activated(void *data,
-                   Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-                   void *event_info)
+_on_item_activated(void *data, const Eo_Event *event)
 {
    //This event_info could be a list or gengrid item
-   Elm_Object_Item *it = event_info;
+   Elm_Object_Item *it = event->event_info;
    const char *path;
    Eina_Bool is_dir;
 
@@ -852,12 +842,10 @@ _clear_selections(Elm_Fileselector_Data *sd, 
Elm_Object_Item *last_selected)
 }
 
 static Eina_Bool
-_on_item_selected(void *data,
-                  Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-                  void *event_info)
+_on_item_selected(void *data, const Eo_Event *event)
 {
    //This event_info could be a list or gengrid item
-   Elm_Object_Item *it = event_info;
+   Elm_Object_Item *it = event->event_info;
    const char *path;
    char *parent_path;
    Eina_Bool is_dir;
@@ -942,15 +930,13 @@ _on_item_selected(void *data,
 }
 
 static Eina_Bool
-_on_item_unselected(void *data,
-                    Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-                    void *event_info)
+_on_item_unselected(void *data, const Eo_Event *event)
 {
    Eina_List *li, *l;
    char *path;
    const char *unselected_path;
    Eina_Strbuf *buf;
-   Elm_Object_Item *it = event_info;
+   Elm_Object_Item *it = event->event_info;
    Eina_Bool first = EINA_TRUE;
 
    ELM_FILESELECTOR_DATA_GET(data, sd);
@@ -986,9 +972,7 @@ _on_item_unselected(void *data,
 }
 
 static Eina_Bool
-_on_dir_up(void *data,
-           Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED,
-           void *event_info EINA_UNUSED)
+_on_dir_up(void *data, const Eo_Event *event EINA_UNUSED)
 {
    Evas_Object *fs = data;
    char *parent;
@@ -1003,9 +987,7 @@ _on_dir_up(void *data,
 }
 
 static Eina_Bool
-_home(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED,
-      void *event_info EINA_UNUSED)
+_home(void *data, const Eo_Event *event EINA_UNUSED)
 {
    Evas_Object *fs = data;
 
@@ -1030,9 +1012,7 @@ _current_filter_changed(void *data,
 }
 
 static Eina_Bool
-_ok(void *data,
-    Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED,
-    void *event_info EINA_UNUSED)
+_ok(void *data, const Eo_Event *event EINA_UNUSED)
 {
    const char *name;
    const char *selection = NULL;
@@ -1065,9 +1045,7 @@ _ok(void *data,
 }
 
 static Eina_Bool
-_canc(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED,
-      void *event_info EINA_UNUSED)
+_canc(void *data, const Eo_Event *event EINA_UNUSED)
 {
    Evas_Object *fs = data;
 
@@ -1077,9 +1055,7 @@ _canc(void *data,
 }
 
 static Eina_Bool
-_on_text_activated(void *data,
-                   Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-                   void *event_info EINA_UNUSED)
+_on_text_activated(void *data, const Eo_Event *event)
 {
    Evas_Object *fs = data;
    const char *p, *path;
@@ -1087,7 +1063,7 @@ _on_text_activated(void *data,
 
    ELM_FILESELECTOR_DATA_GET(fs, sd);
 
-   path = elm_widget_part_text_get(obj, NULL);
+   path = elm_widget_part_text_get(event->obj, NULL);
 
    if (!ecore_file_exists(path))
      {
@@ -1161,7 +1137,7 @@ _on_text_activated(void *data,
    free(dir);
 
 end:
-   elm_object_focus_set(obj, EINA_FALSE);
+   elm_object_focus_set(event->obj, EINA_FALSE);
 
    return EINA_TRUE;
 }
@@ -1180,9 +1156,7 @@ _anchors_undo(void *data)
 }
 
 static Eina_Bool
-_on_text_focused(void *data,
-                 Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-                 void *event_info EINA_UNUSED)
+_on_text_focused(void *data, const Eo_Event *event EINA_UNUSED)
 {
    ELM_FILESELECTOR_DATA_GET(data, sd);
 
@@ -1193,9 +1167,7 @@ _on_text_focused(void *data,
 }
 
 static Eina_Bool
-_on_text_unfocused(void *data,
-                   Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-                   void *event_info EINA_UNUSED)
+_on_text_unfocused(void *data, const Eo_Event *event EINA_UNUSED)
 {
    ELM_FILESELECTOR_DATA_GET(data, sd);
    _anchors_do(data, sd->path);
@@ -1204,11 +1176,9 @@ _on_text_unfocused(void *data,
 }
 
 static Eina_Bool
-_anchor_clicked(void *data,
-                Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-                void *event_info)
+_anchor_clicked(void *data, const Eo_Event *event)
 {
-   Elm_Entry_Anchor_Info *info = event_info;
+   Elm_Entry_Anchor_Info *info = event->event_info;
    Evas_Object *fs = data;
    const char *p;
 
@@ -1220,7 +1190,7 @@ _anchor_clicked(void *data,
    eina_stringshare_del(p);
    /* After anchor was clicked, entry will be focused, and will be editable.
     * It's wrong. So remove focus. */
-   elm_object_focus_set(obj, EINA_FALSE);
+   elm_object_focus_set(event->obj, EINA_FALSE);
 
    if (sd->path_entry_idler) {
        ecore_idler_del(sd->path_entry_idler);
@@ -1231,10 +1201,9 @@ _anchor_clicked(void *data,
 }
 
 static Eina_Bool
-_files_key_down(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_files_key_down(void *data, const Eo_Event *event)
 {
-     Evas_Event_Key_Down *ev = event_info;
+     Evas_Event_Key_Down *ev = event->event_info;
      Evas_Object *par, *searchbar;
 
      par = data;
@@ -1464,12 +1433,11 @@ _resource_deleted(void *data, int type EINA_UNUSED, 
void *ev)
 }
 
 static Eina_Bool
-_preedit_cb(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_preedit_cb(void *data, const Eo_Event *event)
 {
    ELM_FILESELECTOR_DATA_GET(data, sd);
 
-   sd->search_string = elm_entry_entry_get(obj);
+   sd->search_string = elm_entry_entry_get(event->obj);
 
    if (sd->search_string && sd->path)
      _populate(data, sd->path, NULL, NULL);
diff --git a/src/lib/elc_fileselector_button.c 
b/src/lib/elc_fileselector_button.c
index fb5d082..eb7e35b 100644
--- a/src/lib/elc_fileselector_button.c
+++ b/src/lib/elc_fileselector_button.c
@@ -62,12 +62,10 @@ _elm_fileselector_button_elm_widget_theme_apply(Eo *obj, 
Elm_Fileselector_Button
 }
 
 static Eina_Bool
-_selection_done(void *data,
-                Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-                void *event_info)
+_selection_done(void *data, const Eo_Event *event)
 {
    Elm_Fileselector_Button_Data *sd = data;
-   const char *file = event_info;
+   const char *file = event->event_info;
    Evas_Object *del;
 
    if (file) eina_stringshare_replace(&sd->fsd.path, file);
@@ -162,9 +160,7 @@ _activate(Elm_Fileselector_Button_Data *sd)
 }
 
 static Eina_Bool
-_button_clicked(void *data,
-                Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-                void *event_info EINA_UNUSED)
+_button_clicked(void *data, const Eo_Event *event EINA_UNUSED)
 {
    _activate(data);
 
diff --git a/src/lib/elc_fileselector_entry.c b/src/lib/elc_fileselector_entry.c
index afaa433..4a2c335 100644
--- a/src/lib/elc_fileselector_entry.c
+++ b/src/lib/elc_fileselector_entry.c
@@ -45,10 +45,9 @@ static const Evas_Smart_Cb_Description _smart_callbacks[] =
 
 #define SIG_FWD(name, event)                                                   
   \
   static Eina_Bool                                                             
  \
-  _##name##_fwd(void *data,                                          \
-    Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)\
+  _##name##_fwd(void *data, const Eo_Event *ev EINA_UNUSED)                    
                      \
   {                                                                         \
-     eo_do(data, eo_event_callback_call(event, event_info));          \
+     eo_do(data, eo_event_callback_call(event, ev->event_info));          \
                                                                       \
      return EINA_TRUE;                                                \
   }
@@ -66,11 +65,9 @@ SIG_FWD(UNPRESSED, EVAS_CLICKABLE_INTERFACE_EVENT_UNPRESSED)
 #undef SIG_FWD
 
 static Eina_Bool
-_FILE_CHOSEN_fwd(void *data,
-                 Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-                 void *event_info)
+_FILE_CHOSEN_fwd(void *data, const Eo_Event *event)
 {
-   const char *file = event_info;
+   const char *file = event->event_info;
    char *s;
 
    if (!file) return EINA_TRUE;
@@ -80,15 +77,13 @@ _FILE_CHOSEN_fwd(void *data,
    elm_object_text_set(sd->entry, s);
    free(s);
    eo_do(data, eo_event_callback_call
-     (ELM_FILESELECTOR_ENTRY_EVENT_FILE_CHOSEN, event_info));
+     (ELM_FILESELECTOR_ENTRY_EVENT_FILE_CHOSEN, event->event_info));
 
    return EINA_TRUE;
 }
 
 static Eina_Bool
-_ACTIVATED_fwd(void *data,
-               Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-               void *event_info)
+_ACTIVATED_fwd(void *data, const Eo_Event *event)
 {
    const char *file;
 
@@ -97,7 +92,7 @@ _ACTIVATED_fwd(void *data,
    file = elm_object_text_get(sd->entry);
    elm_fileselector_path_set(sd->button, file);
    eo_do(data, eo_event_callback_call
-     (ELM_FILESELECTOR_ENTRY_EVENT_ACTIVATED, event_info));
+     (ELM_FILESELECTOR_ENTRY_EVENT_ACTIVATED, event->event_info));
 
    return EINA_TRUE;
 }
diff --git a/src/lib/elc_hoversel.c b/src/lib/elc_hoversel.c
index 52e2550..3613e36 100644
--- a/src/lib/elc_hoversel.c
+++ b/src/lib/elc_hoversel.c
@@ -109,13 +109,11 @@ _elm_hoversel_elm_widget_theme_apply(Eo *obj, 
Elm_Hoversel_Data *sd)
 }
 
 static Eina_Bool
-_on_hover_clicked(void *data,
-                     Eo *obj, const Eo_Event_Description *desc EINA_UNUSED,
-                     void *event_info EINA_UNUSED)
+_on_hover_clicked(void *data, const Eo_Event *event)
 {
    const char *dismissstr;
 
-   dismissstr = elm_layout_data_get(obj, "dismiss");
+   dismissstr = elm_layout_data_get(event->obj, "dismiss");
 
    if (!dismissstr || strcmp(dismissstr, "on"))
      elm_hoversel_hover_end(data); // for backward compatibility
@@ -155,9 +153,7 @@ _auto_update(void *data, Evas *e EINA_UNUSED, Evas_Object 
*obj EINA_UNUSED, void
 }
 
 static Eina_Bool
-_on_item_clicked(void *data EINA_UNUSED,
-                     Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-                     void *event_info EINA_UNUSED)
+_on_item_clicked(void *data EINA_UNUSED, const Eo_Event *event EINA_UNUSED)
 {
    Elm_Hoversel_Item_Data *item = data;
    Evas_Object *obj2 = WIDGET(item);
@@ -176,9 +172,7 @@ _on_item_clicked(void *data EINA_UNUSED,
 }
 
 static Eina_Bool
-_item_focused_cb(void *data EINA_UNUSED,
-                     Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-                     void *event_info EINA_UNUSED)
+_item_focused_cb(void *data EINA_UNUSED, const Eo_Event *event EINA_UNUSED)
 {
    Elm_Hoversel_Item_Data *it = data;
 
@@ -188,9 +182,7 @@ _item_focused_cb(void *data EINA_UNUSED,
 }
 
 static Eina_Bool
-_item_unfocused_cb(void *data EINA_UNUSED,
-                   Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-                   void *event_info EINA_UNUSED)
+_item_unfocused_cb(void *data EINA_UNUSED, const Eo_Event *event EINA_UNUSED)
 {
    Elm_Hoversel_Item_Data *it = data;
 
@@ -448,9 +440,7 @@ _activate(Evas_Object *obj)
 }
 
 static Eina_Bool
-_on_clicked(void *data EINA_UNUSED,
-            Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED,
-            void *event_info EINA_UNUSED)
+_on_clicked(void *data EINA_UNUSED, const Eo_Event *event EINA_UNUSED)
 {
    _activate(data);
 
diff --git a/src/lib/elc_multibuttonentry.c b/src/lib/elc_multibuttonentry.c
index 71aa198..e62843c 100644
--- a/src/lib/elc_multibuttonentry.c
+++ b/src/lib/elc_multibuttonentry.c
@@ -46,17 +46,13 @@ static const Evas_Smart_Cb_Description _smart_callbacks[] = 
{
 };
 
 static Eina_Bool
-_entry_changed_cb(void *data, Eo *obj EINA_UNUSED,
-                  const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED);
+_entry_changed_cb(void *data, const Eo_Event *event);
 static Eina_Bool
-_entry_focus_in_cb(void *data, Eo *obj EINA_UNUSED,
-                   const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED);
+_entry_focus_in_cb(void *data, const Eo_Event *event);
 static Eina_Bool
-_entry_focus_out_cb(void *data, Eo *obj EINA_UNUSED,
-                    const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED);
+_entry_focus_out_cb(void *data, const Eo_Event *event);
 static Eina_Bool
-_entry_clicked_cb(void *data, Eo *obj EINA_UNUSED,
-                  const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED);
+_entry_clicked_cb(void *data, const Eo_Event *event);
 
 EO_CALLBACKS_ARRAY_DEFINE(_multi_buttonentry_cb,
    { ELM_MULTIBUTTONENTRY_EVENT_CHANGED, _entry_changed_cb },
@@ -1045,8 +1041,7 @@ _entry_resize_cb(void *data,
 }
 
 static Eina_Bool
-_entry_changed_cb(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_entry_changed_cb(void *data, const Eo_Event *event EINA_UNUSED)
 {
    ELM_MULTIBUTTONENTRY_DATA_GET_OR_RETURN_VAL(data, sd, EINA_TRUE);
    const char *str;
@@ -1058,8 +1053,7 @@ _entry_changed_cb(void *data,
 }
 
 static Eina_Bool
-_entry_focus_in_cb(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_entry_focus_in_cb(void *data, const Eo_Event *event EINA_UNUSED)
 {
    Elm_Multibuttonentry_Item_Data *item = NULL;
    ELM_MULTIBUTTONENTRY_DATA_GET_OR_RETURN_VAL(data, sd, EINA_TRUE);
@@ -1075,8 +1069,7 @@ _entry_focus_in_cb(void *data,
 }
 
 static Eina_Bool
-_entry_focus_out_cb(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_entry_focus_out_cb(void *data, const Eo_Event *event EINA_UNUSED)
 {
    ELM_MULTIBUTTONENTRY_DATA_GET_OR_RETURN_VAL(data, sd, EINA_TRUE);
    const char *str;
@@ -1089,8 +1082,7 @@ _entry_focus_out_cb(void *data,
 }
 
 static Eina_Bool
-_entry_clicked_cb(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_entry_clicked_cb(void *data, const Eo_Event *event EINA_UNUSED)
 {
    ELM_MULTIBUTTONENTRY_DATA_GET_OR_RETURN_VAL(data, sd, EINA_TRUE);
 
diff --git a/src/lib/elc_naviframe.c b/src/lib/elc_naviframe.c
index 9b616e3..cbf67e2 100644
--- a/src/lib/elc_naviframe.c
+++ b/src/lib/elc_naviframe.c
@@ -39,8 +39,7 @@ static const Evas_Smart_Cb_Description _smart_callbacks[] = {
    {NULL, NULL}
 };
 
-static Eina_Bool _on_item_back_btn_clicked(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED);
+static Eina_Bool _on_item_back_btn_clicked(void *data, const Eo_Event *event);
 
 static Eina_Bool _key_action_top_item_get(Evas_Object *obj, const char 
*params);
 
@@ -953,14 +952,13 @@ _elm_naviframe_elm_layout_sizing_eval(Eo *obj, 
Elm_Naviframe_Data *sd)
 }
 
 static Eina_Bool
-_on_item_back_btn_clicked(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_on_item_back_btn_clicked(void *data, const Eo_Event *event)
 {
    /* Since edje has the event queue, clicked event could be happened
       multiple times on some heavy environment. This callback del will
       prevent those scenario and guarantee only one clicked for it's own
       page. */
-   eo_do(obj, eo_event_callback_del(
+   eo_do(event->obj, eo_event_callback_del(
             EVAS_CLICKABLE_INTERFACE_EVENT_CLICKED,  _on_item_back_btn_clicked,
             data));
    elm_naviframe_item_pop(data);
@@ -1419,10 +1417,7 @@ _send_signal(Elm_Naviframe_Item_Data *it, const char 
*sig)
 }
 
 static Eina_Bool
-_deferred(void *data,
-          Eo *o EINA_UNUSED,
-          const Eo_Event_Description *desc EINA_UNUSED,
-          void *event_info EINA_UNUSED)
+_deferred(void *data, const Eo_Event *event EINA_UNUSED)
 {
    Elm_Naviframe_Data *nfd = data;
    Elm_Naviframe_Op *nfo;
diff --git a/src/lib/elc_player.c b/src/lib/elc_player.c
index 3e17b40..79acdd9 100644
--- a/src/lib/elc_player.c
+++ b/src/lib/elc_player.c
@@ -58,26 +58,19 @@ static const Evas_Smart_Cb_Description _smart_callbacks[] = 
{
 };
 
 static Eina_Bool
-_update_frame(void *data, Eo *obj,
-              const Eo_Event_Description *desc, void *event_info);
+_update_frame(void *data, const Eo_Event *event);
 static Eina_Bool
-_update_slider(void *data, Eo *obj EINA_UNUSED,
-               const Eo_Event_Description *desc EINA_UNUSED, void *event_info 
EINA_UNUSED);
+_update_slider(void *data, const Eo_Event *event);
 static Eina_Bool
-_play_started(void *data, Eo *obj EINA_UNUSED,
-              const Eo_Event_Description *desc EINA_UNUSED, void *event_info 
EINA_UNUSED);
+_play_started(void *data, const Eo_Event *event);
 static Eina_Bool
-_play_finished(void *data, Eo *obj EINA_UNUSED,
-               const Eo_Event_Description *desc EINA_UNUSED, void *event_info 
EINA_UNUSED);
+_play_finished(void *data, const Eo_Event *event);
 static Eina_Bool
-_update_position(void *data, Eo *obj EINA_UNUSED,
-                 const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED);
+_update_position(void *data, const Eo_Event *event);
 static Eina_Bool
-_drag_start(void *data, Eo *obj EINA_UNUSED,
-            const Eo_Event_Description *desc EINA_UNUSED, void *event_info 
EINA_UNUSED);
+_drag_start(void *data, const Eo_Event *event);
 static Eina_Bool
-_drag_stop(void *data, Eo *obj EINA_UNUSED,
-           const Eo_Event_Description *desc EINA_UNUSED, void *event_info 
EINA_UNUSED);
+_drag_stop(void *data, const Eo_Event *event);
 
 static Eina_Bool _key_action_move(Evas_Object *obj, const char *params);
 static Eina_Bool _key_action_play(Evas_Object *obj, const char *params);
@@ -249,8 +242,7 @@ _elm_player_elm_layout_sizing_eval(Eo *obj, Elm_Player_Data 
*sd EINA_UNUSED)
 }
 
 static Eina_Bool
-_update_slider(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_update_slider(void *data, const Eo_Event *event EINA_UNUSED)
 {
    double pos, length;
    Eina_Bool seekable;
@@ -273,19 +265,17 @@ _update_slider(void *data,
 }
 
 static Eina_Bool
-_update_frame(void *data,
-      Eo *obj, const Eo_Event_Description *desc, void *event_info)
+_update_frame(void *data, const Eo_Event *event)
 {
    ELM_PLAYER_DATA_GET(data, sd);
    if (!sd) return EINA_TRUE;
-   _update_slider(data, obj, desc, event_info);
+   _update_slider(data, event);
 
    return EINA_TRUE;
 }
 
 static Eina_Bool
-_update_position(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_update_position(void *data, const Eo_Event *event EINA_UNUSED)
 {
    double pos;
    ELM_PLAYER_DATA_GET(data, sd);
@@ -298,8 +288,7 @@ _update_position(void *data,
 }
 
 static Eina_Bool
-_drag_start(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_drag_start(void *data, const Eo_Event *event EINA_UNUSED)
 {
    ELM_PLAYER_DATA_GET(data, sd);
    sd->dragging = EINA_TRUE;
@@ -308,8 +297,7 @@ _drag_start(void *data,
 }
 
 static Eina_Bool
-_drag_stop(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_drag_stop(void *data, const Eo_Event *event EINA_UNUSED)
 {
    ELM_PLAYER_DATA_GET(data, sd);
    sd->dragging = EINA_FALSE;
@@ -318,8 +306,7 @@ _drag_stop(void *data,
 }
 
 static Eina_Bool
-_update_volume(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_update_volume(void *data, const Eo_Event *event EINA_UNUSED)
 {
    double vol;
    ELM_PLAYER_DATA_GET(data, sd);
@@ -332,8 +319,7 @@ _update_volume(void *data,
 }
 
 static Eina_Bool
-_forward(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_forward(void *data, const Eo_Event *event EINA_UNUSED)
 {
    double pos, length;
    ELM_PLAYER_DATA_GET(data, sd);
@@ -351,8 +337,7 @@ _forward(void *data,
 }
 
 static Eina_Bool
-_info(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_info(void *data, const Eo_Event *event EINA_UNUSED)
 {
    elm_layout_signal_emit(data, "elm,button,info", "elm");
    eo_do(data, eo_event_callback_call(ELM_PLAYER_EVENT_INFO_CLICKED, NULL));
@@ -361,8 +346,7 @@ _info(void *data,
 }
 
 static Eina_Bool
-_next(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_next(void *data, const Eo_Event *event EINA_UNUSED)
 {
    elm_layout_signal_emit(data, "elm,button,next", "elm");
    eo_do(data, eo_event_callback_call(ELM_PLAYER_EVENT_NEXT_CLICKED, NULL));
@@ -371,8 +355,7 @@ _next(void *data,
 }
 
 static Eina_Bool
-_pause(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_pause(void *data, const Eo_Event *event EINA_UNUSED)
 {
    ELM_PLAYER_DATA_GET(data, sd);
 
@@ -384,8 +367,7 @@ _pause(void *data,
 }
 
 static Eina_Bool
-_play(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_play(void *data, const Eo_Event *event EINA_UNUSED)
 {
    ELM_PLAYER_DATA_GET(data, sd);
 
@@ -397,8 +379,7 @@ _play(void *data,
 }
 
 static Eina_Bool
-_prev(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_prev(void *data, const Eo_Event *event EINA_UNUSED)
 {
    eo_do(data, eo_event_callback_call(ELM_PLAYER_EVENT_PREV_CLICKED, NULL));
    elm_layout_signal_emit(data, "elm,button,prev", "elm");
@@ -407,8 +388,7 @@ _prev(void *data,
 }
 
 static Eina_Bool
-_rewind(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_rewind(void *data, const Eo_Event *event EINA_UNUSED)
 {
    double pos;
    ELM_PLAYER_DATA_GET(data, sd);
@@ -425,8 +405,7 @@ _rewind(void *data,
 }
 
 static Eina_Bool
-_stop(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_stop(void *data, const Eo_Event *event EINA_UNUSED)
 {
    elm_layout_signal_emit(data, "elm,button,stop", "elm");
    eo_do(data, eo_event_callback_call(ELM_PLAYER_EVENT_QUALITY_CLICKED, NULL));
@@ -435,8 +414,7 @@ _stop(void *data,
 }
 
 static Eina_Bool
-_eject(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_eject(void *data, const Eo_Event *event EINA_UNUSED)
 {
    ELM_PLAYER_DATA_GET(data, sd);
 
@@ -465,8 +443,7 @@ _mute_toggle(Evas_Object *obj)
 }
 
 static Eina_Bool
-_volume(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_volume(void *data, const Eo_Event *event EINA_UNUSED)
 {
    elm_layout_signal_emit(data, "elm,button,volume", "elm");
    _mute_toggle(data);
@@ -476,8 +453,7 @@ _volume(void *data,
 }
 
 static Eina_Bool
-_mute(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_mute(void *data, const Eo_Event *event EINA_UNUSED)
 {
    elm_layout_signal_emit(data, "elm,button,mute", "elm");
    _mute_toggle(data);
@@ -487,8 +463,7 @@ _mute(void *data,
 }
 
 static Eina_Bool
-_play_started(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_play_started(void *data, const Eo_Event *event EINA_UNUSED)
 {
    elm_layout_signal_emit(data, "elm,player,play", "elm");
 
@@ -496,8 +471,7 @@ _play_started(void *data,
 }
 
 static Eina_Bool
-_play_finished(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_play_finished(void *data, const Eo_Event *event EINA_UNUSED)
 {
    elm_layout_signal_emit(data, "elm,player,pause", "elm");
 
diff --git a/src/lib/elc_popup.c b/src/lib/elc_popup.c
index d9b952a..25805ff 100644
--- a/src/lib/elc_popup.c
+++ b/src/lib/elc_popup.c
@@ -45,15 +45,12 @@ static const Evas_Smart_Cb_Description _smart_callbacks[] = 
{
 static Eina_Bool _key_action_move(Evas_Object *obj, const char *params);
 static void _parent_geom_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj, 
void *event_info EINA_UNUSED);
 static Eina_Bool
-_block_clicked_cb(void *data, Eo *obj EINA_UNUSED,
-                  const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED);
+_block_clicked_cb(void *data, const Eo_Event *event);
 static Eina_Bool
-_timeout_cb(void *data, Eo *obj EINA_UNUSED,
-            const Eo_Event_Description *desc EINA_UNUSED, void *event_info 
EINA_UNUSED);
+_timeout_cb(void *data, const Eo_Event *event);
 
 static Eina_Bool
-_hide_effect_finished_cb(void *data, Eo *obj EINA_UNUSED,
-            const Eo_Event_Description *desc EINA_UNUSED, void *event_info 
EINA_UNUSED);
+_hide_effect_finished_cb(void *data, const Eo_Event *event);
 
 static const Elm_Action key_actions[] = {
    {"move", _key_action_move},
@@ -100,8 +97,7 @@ _visuals_set(Evas_Object *obj)
 }
 
 static Eina_Bool
-_block_clicked_cb(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_block_clicked_cb(void *data, const Eo_Event *event EINA_UNUSED)
 {
    eo_do(data, eo_event_callback_call(ELM_POPUP_EVENT_BLOCK_CLICKED, NULL));
 
@@ -109,8 +105,7 @@ _block_clicked_cb(void *data,
 }
 
 static Eina_Bool
-_timeout_cb(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_timeout_cb(void *data, const Eo_Event *event EINA_UNUSED)
 {
    evas_object_hide(data);
    eo_do(data, eo_event_callback_call(ELM_POPUP_EVENT_TIMEOUT, NULL));
@@ -119,8 +114,7 @@ _timeout_cb(void *data,
 }
 
 static Eina_Bool
-_hide_effect_finished_cb(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_hide_effect_finished_cb(void *data, const Eo_Event *event EINA_UNUSED)
 {
    eo_do(data, eo_event_callback_call(ELM_POPUP_EVENT_DISMISSED, NULL));
 
@@ -874,8 +868,7 @@ _elm_popup_item_elm_widget_item_signal_emit(Eo *eo_it 
EINA_UNUSED, Elm_Popup_Ite
 }
 
 static Eina_Bool
-_item_focused_cb(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_item_focused_cb(void *data, const Eo_Event *event EINA_UNUSED)
 {
    Elm_Popup_Item_Data *it = data;
 
@@ -885,8 +878,7 @@ _item_focused_cb(void *data,
 }
 
 static Eina_Bool
-_item_unfocused_cb(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_item_unfocused_cb(void *data, const Eo_Event *event EINA_UNUSED)
 {
    Elm_Popup_Item_Data *it = data;
 
diff --git a/src/lib/elm_app_server.c b/src/lib/elm_app_server.c
index 0225449..99aecc1 100644
--- a/src/lib/elm_app_server.c
+++ b/src/lib/elm_app_server.c
@@ -29,10 +29,10 @@ typedef struct
 } Elm_App_Server_Data;
 
 static Eina_Bool
-_view_del_cb(void *data, Eo *obj, const Eo_Event_Description *desc 
EINA_UNUSED, void *event_info EINA_UNUSED)
+_view_del_cb(void *data, const Eo_Event *event)
 {
    Elm_App_Server_Data *cdata = data;
-   eina_hash_del(cdata->views, NULL, obj);
+   eina_hash_del(cdata->views, NULL, event->obj);
    return EINA_TRUE;
 }
 
diff --git a/src/lib/elm_atspi_bridge.c b/src/lib/elm_atspi_bridge.c
index c53a86e..7a5267d 100644
--- a/src/lib/elm_atspi_bridge.c
+++ b/src/lib/elm_atspi_bridge.c
@@ -115,17 +115,17 @@ static Eo *_instance;
 static int _init_count = 0;
 
 // Object Event handlers
-static Eina_Bool _state_changed_signal_send(void *data, Eo *obj, const 
Eo_Event_Description *desc, void *event_info);
-static Eina_Bool _property_changed_signal_send(void *data, Eo *obj, const 
Eo_Event_Description *desc EINA_UNUSED, void *event_info);
-static Eina_Bool _children_changed_signal_send(void *data, Eo *obj, const 
Eo_Event_Description *desc EINA_UNUSED, void *event_info);
-static Eina_Bool _window_signal_send(void *data, Eo *obj, const 
Eo_Event_Description *desc, void *event_info);
-static Eina_Bool _visible_data_changed_signal_send(void *data, Eo *obj, const 
Eo_Event_Description *desc, void *event_info);
-static Eina_Bool _active_descendant_changed_signal_send(void *data, Eo *obj, 
const Eo_Event_Description *desc, void *event_info);
-static Eina_Bool _selection_signal_send(void *data, Eo *obj, const 
Eo_Event_Description *desc, void *event_info);
-static Eina_Bool _text_text_inserted_send(void *data, Eo *obj, const 
Eo_Event_Description *desc, void *event_info);
-static Eina_Bool _text_text_removed_send(void *data, Eo *obj, const 
Eo_Event_Description *desc, void *event_info);
-static Eina_Bool _text_caret_moved_send(void *data, Eo *obj, const 
Eo_Event_Description *desc, void *event_info);
-static Eina_Bool _text_selection_changed_send(void *data, Eo *obj, const 
Eo_Event_Description *desc, void *event_info EINA_UNUSED);
+static Eina_Bool _state_changed_signal_send(void *data, const Eo_Event *event);
+static Eina_Bool _property_changed_signal_send(void *data, const Eo_Event 
*event);
+static Eina_Bool _children_changed_signal_send(void *data, const Eo_Event 
*event);
+static Eina_Bool _window_signal_send(void *data, const Eo_Event *event);
+static Eina_Bool _visible_data_changed_signal_send(void *data, const Eo_Event 
*event);
+static Eina_Bool _active_descendant_changed_signal_send(void *data, const 
Eo_Event *event);
+static Eina_Bool _selection_signal_send(void *data, const Eo_Event *event);
+static Eina_Bool _text_text_inserted_send(void *data, const Eo_Event *event);
+static Eina_Bool _text_text_removed_send(void *data, const Eo_Event *event);
+static Eina_Bool _text_caret_moved_send(void *data, const Eo_Event *event);
+static Eina_Bool _text_selection_changed_send(void *data, const Eo_Event 
*event);
 
 // bridge private methods
 static void _bridge_object_register(Eo *bridge, Eo *obj);
@@ -139,8 +139,8 @@ static void _bridge_iter_object_reference_append(Eo 
*bridge, Eldbus_Message_Iter
 static void _iter_interfaces_append(Eldbus_Message_Iter *iter, const Eo *obj);
 static Eina_Bool _elm_atspi_bridge_key_filter(void *data, void *loop, int 
type, void *event);
 static void _object_desktop_reference_append(Eldbus_Message_Iter *iter);
-static Eina_Bool _on_object_add(void *data, Eo *obj, const 
Eo_Event_Description *event EINA_UNUSED, void *event_info EINA_UNUSED);
-static Eina_Bool _on_object_del(void *data, Eo *obj, const 
Eo_Event_Description *event EINA_UNUSED, void *event_info EINA_UNUSED);
+static Eina_Bool _on_object_add(void *data, const Eo_Event *event);
+static Eina_Bool _on_object_del(void *data, const Eo_Event *event);
 
 typedef struct {
      const Eo_Event_Description *desc;
@@ -3802,9 +3802,9 @@ _handle_listener_change(void *data, const Eldbus_Message 
*msg EINA_UNUSED)
 }
 
 static Eina_Bool
-_state_changed_signal_send(void *data, Eo *obj EINA_UNUSED, const 
Eo_Event_Description *desc EINA_UNUSED, void *event_info)
+_state_changed_signal_send(void *data, const Eo_Event *event)
 {
-   Elm_Atspi_Event_State_Changed_Data *state_data = event_info;
+   Elm_Atspi_Event_State_Changed_Data *state_data = event->event_info;
    const char *type_desc;
    ELM_ATSPI_BRIDGE_DATA_GET_OR_RETURN_VAL(data, pd, EINA_FALSE);
 
@@ -3817,15 +3817,15 @@ _state_changed_signal_send(void *data, Eo *obj 
EINA_UNUSED, const Eo_Event_Descr
 
    type_desc = elm_states_to_atspi_state[state_data->type].name;
 
-   _bridge_signal_send(data, obj, ATSPI_DBUS_INTERFACE_EVENT_OBJECT,
+   _bridge_signal_send(data, event->obj, ATSPI_DBUS_INTERFACE_EVENT_OBJECT,
                        &_event_obj_signals[ATSPI_OBJECT_EVENT_STATE_CHANGED], 
type_desc, state_data->new_value, 0, NULL);
    return EINA_TRUE;
 }
 
 static Eina_Bool
-_property_changed_signal_send(void *data, Eo *obj EINA_UNUSED, const 
Eo_Event_Description *desc EINA_UNUSED, void *event_info)
+_property_changed_signal_send(void *data, const Eo_Event *event)
 {
-   const char *property = event_info;
+   const char *property = event->event_info;
    char *atspi_desc;
    enum _Atspi_Object_Property prop = ATSPI_OBJECT_PROPERTY_LAST;
 
@@ -3867,20 +3867,20 @@ _property_changed_signal_send(void *data, Eo *obj 
EINA_UNUSED, const Eo_Event_De
         return EINA_FALSE;
      }
 
-   _bridge_signal_send(data, obj, ATSPI_DBUS_INTERFACE_EVENT_OBJECT,
+   _bridge_signal_send(data, event->obj, ATSPI_DBUS_INTERFACE_EVENT_OBJECT,
                        
&_event_obj_signals[ATSPI_OBJECT_EVENT_PROPERTY_CHANGED], atspi_desc, 0, 0, 
NULL, NULL);
    return EINA_TRUE;
 }
 
 static Eina_Bool
-_visible_data_changed_signal_send(void *data, Eo *obj, const 
Eo_Event_Description *desc EINA_UNUSED, void *event_info EINA_UNUSED)
+_visible_data_changed_signal_send(void *data, const Eo_Event *event)
 {
    ELM_ATSPI_BRIDGE_DATA_GET_OR_RETURN_VAL(data, pd, EINA_FALSE);
 
    if (!STATE_TYPE_GET(pd->object_children_broadcast_mask, 
ATSPI_OBJECT_EVENT_VISIBLE_DATA_CHANGED))
      return EINA_FALSE;
 
-   _bridge_signal_send(data, obj, ATSPI_DBUS_INTERFACE_EVENT_OBJECT,
+   _bridge_signal_send(data, event->obj, ATSPI_DBUS_INTERFACE_EVENT_OBJECT,
                        
&_event_obj_signals[ATSPI_OBJECT_EVENT_VISIBLE_DATA_CHANGED], "",
                        0, 0, NULL, NULL);
 
@@ -3888,9 +3888,9 @@ _visible_data_changed_signal_send(void *data, Eo *obj, 
const Eo_Event_Descriptio
 }
 
 static Eina_Bool
-_active_descendant_changed_signal_send(void *data, Eo *obj, const 
Eo_Event_Description *desc EINA_UNUSED, void *event_info)
+_active_descendant_changed_signal_send(void *data, const Eo_Event *event)
 {
-   Eo *child = event_info;
+   Eo *child = event->event_info;
    int idx;
 
    ELM_ATSPI_BRIDGE_DATA_GET_OR_RETURN_VAL(data, pd, EINA_FALSE);
@@ -3900,17 +3900,17 @@ _active_descendant_changed_signal_send(void *data, Eo 
*obj, const Eo_Event_Descr
 
    eo_do(child, idx = elm_interface_atspi_accessible_index_in_parent_get());
 
-   _bridge_signal_send(data, obj, ATSPI_DBUS_INTERFACE_EVENT_OBJECT,
+   _bridge_signal_send(data, event->obj, ATSPI_DBUS_INTERFACE_EVENT_OBJECT,
                        
&_event_obj_signals[ATSPI_OBJECT_EVENT_ACTIVE_DESCENDANT_CHANGED], "",
                        idx, 0, "(so)", 
eldbus_connection_unique_name_get(pd->a11y_bus), child);
    return EINA_TRUE;
 }
 
 static Eina_Bool
-_children_changed_signal_send(void *data, Eo *obj, const Eo_Event_Description 
*desc EINA_UNUSED, void *event_info)
+_children_changed_signal_send(void *data, const Eo_Event *event)
 {
    const char *atspi_desc = NULL;
-   Elm_Atspi_Event_Children_Changed_Data *ev_data = event_info;
+   Elm_Atspi_Event_Children_Changed_Data *ev_data = event->event_info;
    int idx;
    enum _Atspi_Object_Child_Event_Type type;
 
@@ -3935,7 +3935,7 @@ _children_changed_signal_send(void *data, Eo *obj, const 
Eo_Event_Description *d
 
    if (!atspi_desc) return EINA_FALSE;
 
-   _bridge_signal_send(data, obj, ATSPI_DBUS_INTERFACE_EVENT_OBJECT,
+   _bridge_signal_send(data, event->obj, ATSPI_DBUS_INTERFACE_EVENT_OBJECT,
                        
&_event_obj_signals[ATSPI_OBJECT_EVENT_CHILDREN_CHANGED], atspi_desc,
                        idx, 0, "(so)", 
eldbus_connection_unique_name_get(pd->a11y_bus), ev_data->child);
 
@@ -3943,25 +3943,25 @@ _children_changed_signal_send(void *data, Eo *obj, 
const Eo_Event_Description *d
 }
 
 static Eina_Bool
-_window_signal_send(void *data, Eo *obj, const Eo_Event_Description *desc, 
void *event_info EINA_UNUSED)
+_window_signal_send(void *data, const Eo_Event *event)
 {
    enum _Atspi_Window_Signals type;
 
    ELM_ATSPI_BRIDGE_DATA_GET_OR_RETURN_VAL(data, pd, EINA_FALSE);
 
-   if (desc == ELM_INTERFACE_ATSPI_WINDOW_EVENT_WINDOW_CREATED)
+   if (event->desc == ELM_INTERFACE_ATSPI_WINDOW_EVENT_WINDOW_CREATED)
      type = ATSPI_WINDOW_EVENT_CREATE;
-   else if (desc == ELM_INTERFACE_ATSPI_WINDOW_EVENT_WINDOW_DESTROYED)
+   else if (event->desc == ELM_INTERFACE_ATSPI_WINDOW_EVENT_WINDOW_DESTROYED)
      type = ATSPI_WINDOW_EVENT_DESTROY;
-   else if (desc == ELM_INTERFACE_ATSPI_WINDOW_EVENT_WINDOW_DEACTIVATED)
+   else if (event->desc == ELM_INTERFACE_ATSPI_WINDOW_EVENT_WINDOW_DEACTIVATED)
      type = ATSPI_WINDOW_EVENT_DEACTIVATE;
-   else if (desc == ELM_INTERFACE_ATSPI_WINDOW_EVENT_WINDOW_ACTIVATED)
+   else if (event->desc == ELM_INTERFACE_ATSPI_WINDOW_EVENT_WINDOW_ACTIVATED)
      type = ATSPI_WINDOW_EVENT_ACTIVATE;
-   else if (desc == ELM_INTERFACE_ATSPI_WINDOW_EVENT_WINDOW_MAXIMIZED)
+   else if (event->desc == ELM_INTERFACE_ATSPI_WINDOW_EVENT_WINDOW_MAXIMIZED)
      type = ATSPI_WINDOW_EVENT_MAXIMIZE;
-   else if (desc == ELM_INTERFACE_ATSPI_WINDOW_EVENT_WINDOW_MINIMIZED)
+   else if (event->desc == ELM_INTERFACE_ATSPI_WINDOW_EVENT_WINDOW_MINIMIZED)
      type = ATSPI_WINDOW_EVENT_MINIMIZE;
-   else if (desc == ELM_INTERFACE_ATSPI_WINDOW_EVENT_WINDOW_RESTORED)
+   else if (event->desc == ELM_INTERFACE_ATSPI_WINDOW_EVENT_WINDOW_RESTORED)
      type = ATSPI_WINDOW_EVENT_RESTORE;
    else
      return EINA_FALSE;
@@ -3975,20 +3975,20 @@ _window_signal_send(void *data, Eo *obj, const 
Eo_Event_Description *desc, void
         return EINA_FALSE;
      }
 
-   _bridge_signal_send(data, obj, ATSPI_DBUS_INTERFACE_EVENT_WINDOW,
+   _bridge_signal_send(data, event->obj, ATSPI_DBUS_INTERFACE_EVENT_WINDOW,
                        &_window_obj_signals[type], "", 0, 0, "i", 0);
    return EINA_TRUE;
 }
 
 static Eina_Bool
-_selection_signal_send(void *data, Eo *obj, const Eo_Event_Description *desc 
EINA_UNUSED, void *event_info EINA_UNUSED)
+_selection_signal_send(void *data, const Eo_Event *event)
 {
    ELM_ATSPI_BRIDGE_DATA_GET_OR_RETURN_VAL(data, pd, EINA_TRUE);
 
    if (!STATE_TYPE_GET(pd->object_broadcast_mask, 
ATSPI_OBJECT_EVENT_SELECTION_CHANGED))
      return EINA_FALSE;
 
-   _bridge_signal_send(data, obj, ATSPI_DBUS_INTERFACE_EVENT_OBJECT,
+   _bridge_signal_send(data, event->obj, ATSPI_DBUS_INTERFACE_EVENT_OBJECT,
                        
&_event_obj_signals[ATSPI_OBJECT_EVENT_SELECTION_CHANGED], "", 0, 0, "i", 0);
    return EINA_TRUE;
 }
@@ -4077,7 +4077,7 @@ static void _bridge_signal_send(Eo *bridge, Eo *obj, 
const char *infc, const Eld
 }
 
 static Eina_Bool
-_text_caret_moved_send(void *data, Eo *obj, const Eo_Event_Description *desc 
EINA_UNUSED, void *event_info EINA_UNUSED)
+_text_caret_moved_send(void *data, const Eo_Event *event)
 {
    int cursor_pos = 0;
 
@@ -4086,55 +4086,55 @@ _text_caret_moved_send(void *data, Eo *obj, const 
Eo_Event_Description *desc EIN
    if (!STATE_TYPE_GET(pd->object_broadcast_mask, 
ATSPI_OBJECT_EVENT_TEXT_CARET_MOVED))
      return EINA_TRUE;
 
-   eo_do(obj, cursor_pos = elm_interface_atspi_text_caret_offset_get());
+   eo_do(event->obj, cursor_pos = elm_interface_atspi_text_caret_offset_get());
 
-   _bridge_signal_send(data, obj, ATSPI_DBUS_INTERFACE_EVENT_OBJECT,
+   _bridge_signal_send(data, event->obj, ATSPI_DBUS_INTERFACE_EVENT_OBJECT,
                        
&_event_obj_signals[ATSPI_OBJECT_EVENT_TEXT_CARET_MOVED], "", cursor_pos, 0, 
NULL, NULL);
 
    return EINA_TRUE;
 }
 
 static Eina_Bool
-_text_text_inserted_send(void *data, Eo *obj, const Eo_Event_Description *desc 
EINA_UNUSED, void *event_info)
+_text_text_inserted_send(void *data, const Eo_Event *event)
 {
-   Elm_Atspi_Text_Change_Info *info = event_info;
+   Elm_Atspi_Text_Change_Info *info = event->event_info;
 
    ELM_ATSPI_BRIDGE_DATA_GET_OR_RETURN_VAL(data, pd, EINA_TRUE);
 
    if (!STATE_TYPE_GET(pd->object_broadcast_mask, 
ATSPI_OBJECT_EVENT_TEXT_CHANGED))
      return EINA_TRUE;
 
-   _bridge_signal_send(data, obj, ATSPI_DBUS_INTERFACE_EVENT_OBJECT,
+   _bridge_signal_send(data, event->obj, ATSPI_DBUS_INTERFACE_EVENT_OBJECT,
                        &_event_obj_signals[ATSPI_OBJECT_EVENT_TEXT_CHANGED], 
"insert", info->pos, info->len, "s", info->content);
 
    return EINA_TRUE;
 }
 
 static Eina_Bool
-_text_text_removed_send(void *data, Eo *obj, const Eo_Event_Description *desc 
EINA_UNUSED, void *event_info)
+_text_text_removed_send(void *data, const Eo_Event *event)
 {
-   Elm_Atspi_Text_Change_Info *info = event_info;
+   Elm_Atspi_Text_Change_Info *info = event->event_info;
 
    ELM_ATSPI_BRIDGE_DATA_GET_OR_RETURN_VAL(data, pd, EINA_TRUE);
 
    if (!STATE_TYPE_GET(pd->object_broadcast_mask, 
ATSPI_OBJECT_EVENT_TEXT_CHANGED))
      return EINA_TRUE;
 
-   _bridge_signal_send(data, obj, ATSPI_DBUS_INTERFACE_EVENT_OBJECT,
+   _bridge_signal_send(data, event->obj, ATSPI_DBUS_INTERFACE_EVENT_OBJECT,
                        &_event_obj_signals[ATSPI_OBJECT_EVENT_TEXT_CHANGED], 
"delete", info->pos, info->len, "s", info->content);
 
    return EINA_TRUE;
 }
 
 static Eina_Bool
-_text_selection_changed_send(void *data, Eo *obj, const Eo_Event_Description 
*desc EINA_UNUSED, void *event_info EINA_UNUSED)
+_text_selection_changed_send(void *data, const Eo_Event *event)
 {
    ELM_ATSPI_BRIDGE_DATA_GET_OR_RETURN_VAL(data, pd, EINA_TRUE);
 
    if (!STATE_TYPE_GET(pd->object_broadcast_mask, 
ATSPI_OBJECT_EVENT_TEXT_SELECTION_CHANGED))
      return EINA_TRUE;
 
-   _bridge_signal_send(data, obj, ATSPI_DBUS_INTERFACE_EVENT_OBJECT,
+   _bridge_signal_send(data, event->obj, ATSPI_DBUS_INTERFACE_EVENT_OBJECT,
                        
&_event_obj_signals[ATSPI_OBJECT_EVENT_TEXT_SELECTION_CHANGED], "", 0, 0, NULL, 
NULL);
 
    return EINA_TRUE;
@@ -4163,7 +4163,7 @@ _bridge_object_unregister(Eo *bridge, Eo *obj)
 }
 
 static Eina_Bool
-_on_object_add(void *data, Eo *obj, const Eo_Event_Description *event 
EINA_UNUSED, void *event_info EINA_UNUSED)
+_on_object_add(void *data, const Eo_Event *event)
 {
    Eldbus_Message *sig;
    Eldbus_Message_Iter *iter;
@@ -4172,7 +4172,7 @@ _on_object_add(void *data, Eo *obj, const 
Eo_Event_Description *event EINA_UNUSE
 
    sig = eldbus_service_signal_new(pd->cache_interface, 
ATSPI_OBJECT_CHILD_ADDED);
    iter = eldbus_message_iter_get(sig);
-   _cache_item_reference_append_cb(data, obj, iter);
+   _cache_item_reference_append_cb(data, event->obj, iter);
 
    eldbus_service_signal_send(pd->cache_interface, sig);
 
@@ -4180,17 +4180,17 @@ _on_object_add(void *data, Eo *obj, const 
Eo_Event_Description *event EINA_UNUSE
 }
 
 static Eina_Bool
-_on_object_del(void *data, Eo *obj, const Eo_Event_Description *event 
EINA_UNUSED, void *event_info EINA_UNUSED)
+_on_object_del(void *data, const Eo_Event *event)
 {
    Eldbus_Message *sig;
 
    ELM_ATSPI_BRIDGE_DATA_GET_OR_RETURN_VAL(data, pd, EINA_TRUE);
 
-   _bridge_object_unregister(data, obj);
+   _bridge_object_unregister(data, event->obj);
 
    sig = eldbus_service_signal_new(pd->cache_interface, 
ATSPI_OBJECT_CHILD_REMOVED);
    Eldbus_Message_Iter *iter = eldbus_message_iter_get(sig);
-   _bridge_iter_object_reference_append(data, iter, obj);
+   _bridge_iter_object_reference_append(data, iter, event->obj);
    eldbus_service_signal_send(pd->cache_interface, sig);
 
    return EINA_TRUE;
@@ -4318,14 +4318,14 @@ _interfaces_register(Eo *bridge)
 }
 
 static Eina_Bool
-_bridge_accessible_event_dispatch(void *data, Eo *accessible, const 
Eo_Event_Description *desc, void *event_info)
+_bridge_accessible_event_dispatch(void *data, const Eo_Event *event)
 {
    ELM_ATSPI_BRIDGE_DATA_GET_OR_RETURN_VAL(data, pd, EINA_TRUE);
 
-   _bridge_object_register(data, accessible);
+   _bridge_object_register(data, event->obj);
 
-   Eo_Event_Cb cb = eina_hash_find(pd->event_hash, &desc);
-   return cb ? cb(data, accessible, desc, event_info) : EINA_TRUE;
+   Eo_Event_Cb cb = eina_hash_find(pd->event_hash, &event->desc);
+   return cb ? cb(data, event) : EINA_TRUE;
 }
 
 static void
diff --git a/src/lib/elm_box.c b/src/lib/elm_box.c
index 1231f29..5bfe999 100644
--- a/src/lib/elm_box.c
+++ b/src/lib/elm_box.c
@@ -29,22 +29,20 @@ _elm_box_list_data_get(const Eina_List *list)
 }
 
 static Eina_Bool
-_child_added_cb_proxy(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info)
+_child_added_cb_proxy(void *data, const Eo_Event *event)
 {
    Evas_Object *box = data;
-   Evas_Object_Box_Option *opt = event_info;
+   Evas_Object_Box_Option *opt = event->event_info;
    eo_do(box, eo_event_callback_call(ELM_BOX_EVENT_CHILD_ADDED, opt->obj));
 
    return EINA_TRUE;
 }
 
 static Eina_Bool
-_child_removed_cb_proxy(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info)
+_child_removed_cb_proxy(void *data, const Eo_Event *event)
 {
    Evas_Object *box = data;
-   Evas_Object *child = event_info;
+   Evas_Object *child = event->event_info;
    eo_do(box, eo_event_callback_call(ELM_BOX_EVENT_CHILD_REMOVED, child));
 
    return EINA_TRUE;
@@ -195,11 +193,10 @@ _transition_animation(void *data)
 }
 
 static Eina_Bool
-_transition_layout_child_added(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info)
+_transition_layout_child_added(void *data, const Eo_Event *event)
 {
    Transition_Animation_Data *tad;
-   Evas_Object_Box_Option *opt = event_info;
+   Evas_Object_Box_Option *opt = event->event_info;
    Elm_Box_Transition *layout_data = data;
 
    tad = calloc(1, sizeof(Transition_Animation_Data));
@@ -213,8 +210,7 @@ _transition_layout_child_added(void *data,
 }
 
 static Eina_Bool
-_transition_layout_child_removed(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info)
+_transition_layout_child_removed(void *data, const Eo_Event *event)
 {
    Eina_List *l;
    Transition_Animation_Data *tad;
@@ -222,7 +218,7 @@ _transition_layout_child_removed(void *data,
 
    EINA_LIST_FOREACH(layout_data->objs, l, tad)
      {
-        if (tad->obj == event_info)
+        if (tad->obj == event->event_info)
           {
              free(eina_list_data_get(l));
              layout_data->objs = eina_list_remove_list(layout_data->objs, l);
diff --git a/src/lib/elm_cnp.c b/src/lib/elm_cnp.c
index b06b148..0bb7ff5 100644
--- a/src/lib/elm_cnp.c
+++ b/src/lib/elm_cnp.c
@@ -1706,12 +1706,10 @@ _x11_dnd_status(void *data EINA_UNUSED, int etype 
EINA_UNUSED, void *ev)
 }
 
 static Eina_Bool
-_x11_win_rotation_changed_cb(void *data,
-      Eo *obj, const Eo_Event_Description *desc EINA_UNUSED,
-      void *event_info EINA_UNUSED)
+_x11_win_rotation_changed_cb(void *data, const Eo_Event *event)
 {
    Evas_Object *win = data;
-   int rot = elm_win_rotation_get(obj);
+   int rot = elm_win_rotation_get(event->obj);
    elm_win_rotation_set(win, rot);
    return EINA_TRUE;
 }
diff --git a/src/lib/elm_color_class.c b/src/lib/elm_color_class.c
index 6d36ec8..fd9bb0e 100644
--- a/src/lib/elm_color_class.c
+++ b/src/lib/elm_color_class.c
@@ -128,9 +128,7 @@ _colorclass_select(void *data, Evas_Object *obj 
EINA_UNUSED, const char *sig, co
 }
 
 static Eina_Bool
-_colorclass_changed(void *data, Evas_Object *obj EINA_UNUSED,
-                    const Eo_Event_Description *desc EINA_UNUSED,
-                    void *event_info EINA_UNUSED)
+_colorclass_changed(void *data, const Eo_Event *event EINA_UNUSED)
 {
    Colorclass_UI *cc = data;
 
@@ -154,9 +152,7 @@ _colorclass_changed(void *data, Evas_Object *obj 
EINA_UNUSED,
 }
 
 static Eina_Bool
-_colorclass_reset(void *data, Evas_Object *obj EINA_UNUSED,
-                  const Eo_Event_Description *desc EINA_UNUSED,
-                  void *event_info EINA_UNUSED)
+_colorclass_reset(void *data, const Eo_Event *event EINA_UNUSED)
 {
    Colorclass_UI *cc = data;
    Colorclass color;
@@ -194,12 +190,10 @@ _colorclass_reset(void *data, Evas_Object *obj 
EINA_UNUSED,
 }
 
 static Eina_Bool
-_colorclass_activate(void *data, Eo *obj EINA_UNUSED,
-                     const Eo_Event_Description *desc EINA_UNUSED,
-                     void *event_info)
+_colorclass_activate(void *data, const Eo_Event *event)
 {
    Colorclass_UI *cc = data;
-   Elm_Object_Item *it = event_info;
+   Elm_Object_Item *it = event->event_info;
    Edje_Color_Class *ecc;
    Colorclass *lcc;
    Eina_List *l;
diff --git a/src/lib/elm_colorselector.c b/src/lib/elm_colorselector.c
index a4d2b0d..bc3c2b4 100644
--- a/src/lib/elm_colorselector.c
+++ b/src/lib/elm_colorselector.c
@@ -635,19 +635,17 @@ _colors_set(Evas_Object *obj,
 }
 
 static Eina_Bool
-_spinner_changed_cb(void *data, Eo *obj,
-                    const Eo_Event_Description *desc EINA_UNUSED,
-                    void *event_info EINA_UNUSED)
+_spinner_changed_cb(void *data, const Eo_Event *event)
 {
    Elm_Colorselector_Data *sd = data;
    Evas_Object *parent;
    int i, v;
 
-   for (i = 0; i < 4 && sd->spinners[i] != obj; i++);
+   for (i = 0; i < 4 && sd->spinners[i] != event->obj; i++);
 
-   parent = evas_object_data_get(obj, "parent");
-   v = elm_spinner_value_get(obj);
-   evas_object_data_set(obj, "_changed", obj);
+   parent = evas_object_data_get(event->obj, "parent");
+   v = elm_spinner_value_get(event->obj);
+   evas_object_data_set(event->obj, "_changed", event->obj);
 
    switch (i)
      {
@@ -664,7 +662,7 @@ _spinner_changed_cb(void *data, Eo *obj,
          _colors_set(parent, sd->r, sd->g, sd->b, v);
          break;
      }
-   evas_object_data_del(obj, "_changed");
+   evas_object_data_del(event->obj, "_changed");
    eo_do(parent, eo_event_callback_call(ELM_COLORSELECTOR_EVENT_CHANGED_USER, 
NULL));
 
    return EINA_TRUE;
@@ -697,15 +695,13 @@ _x11_elm_widget_xwin_get(const Evas_Object *obj)
 }
 
 static Eina_Bool
-_start_grab_pick_cb(void *data, Eo *obj,
-                    const Eo_Event_Description *desc EINA_UNUSED,
-                    void *event_info EINA_UNUSED)
+_start_grab_pick_cb(void *data, const Eo_Event *event)
 {
    Evas_Object *o = data;
 
    ELM_COLORSELECTOR_DATA_GET(o, sd);
 
-   elm_object_disabled_set(obj, EINA_TRUE);
+   elm_object_disabled_set(event->obj, EINA_TRUE);
 
    sd->grab.mouse_motion = ecore_event_handler_add(ECORE_EVENT_MOUSE_MOVE, 
_mouse_grab_pixels, o);
    sd->grab.key_up = ecore_event_handler_add(ECORE_EVENT_KEY_UP, _key_up_cb, 
o);
@@ -1016,15 +1012,13 @@ _colorbar_move_cb(void *data,
 }
 
 static Eina_Bool
-_button_clicked_cb(void *data, Eo *obj,
-                   const Eo_Event_Description *desc EINA_UNUSED,
-                   void *event_info EINA_UNUSED)
+_button_clicked_cb(void *data, const Eo_Event *event)
 {
    Color_Bar_Data *cb_data = data;
    double x, y, step;
    ELM_COLORSELECTOR_DATA_GET(cb_data->parent, sd);
 
-   if (obj == cb_data->rbt) step = 1.0;
+   if (event->obj == cb_data->rbt) step = 1.0;
    else step = -1.0;
 
    edje_object_part_drag_value_get(cb_data->colorbar, "elm.arrow", &x, &y);
@@ -1063,14 +1057,12 @@ _button_clicked_cb(void *data, Eo *obj,
 }
 
 static Eina_Bool
-_button_repeat_cb(void *data, Eo *obj,
-                  const Eo_Event_Description *desc EINA_UNUSED,
-                  void *event_info EINA_UNUSED)
+_button_repeat_cb(void *data, const Eo_Event *event EINA_UNUSED)
 {
    Color_Bar_Data *cb_data = data;
    double x, y, step;
 
-   if (obj == cb_data->rbt) step = 1.0 / BASE_STEP;
+   if (event->obj == cb_data->rbt) step = 1.0 / BASE_STEP;
    else step = -1.0 / BASE_STEP;
 
    edje_object_part_drag_value_get(cb_data->colorbar, "elm.arrow", &x, &y);
@@ -2009,19 +2001,29 @@ _key_action_move(Evas_Object *obj, const char *params)
    if (!strcmp(dir, "left"))
      {
         if (sd->focused == ELM_COLORSELECTOR_PALETTE && sd->selected)
-          cl = eina_list_prev(sd->selected);
+          {
+             cl = eina_list_prev(sd->selected);
+          }
         else if (sd->focused == ELM_COLORSELECTOR_COMPONENTS)
-          _button_clicked_cb(sd->cb_data[sd->sel_color_type],
-                             sd->cb_data[sd->sel_color_type]->lbt, NULL, NULL);
+          {
+             Eo_Event event = {0};
+             event.obj = sd->cb_data[sd->sel_color_type]->lbt;
+             _button_clicked_cb(sd->cb_data[sd->sel_color_type], &event);
+          }
         else return EINA_FALSE;
      }
    else if (!strcmp(dir, "right"))
      {
         if (sd->focused == ELM_COLORSELECTOR_PALETTE && sd->selected)
-          cl = eina_list_next(sd->selected);
+          {
+             cl = eina_list_next(sd->selected);
+          }
         else if (sd->focused == ELM_COLORSELECTOR_COMPONENTS)
-          _button_clicked_cb(sd->cb_data[sd->sel_color_type],
-                             sd->cb_data[sd->sel_color_type]->rbt, NULL, NULL);
+          {
+             Eo_Event event = {0};
+             event.obj = sd->cb_data[sd->sel_color_type]->rbt;
+             _button_clicked_cb(sd->cb_data[sd->sel_color_type], &event);
+          }
         else return EINA_FALSE;
      }
    else if (!strcmp(dir, "up"))
diff --git a/src/lib/elm_conform.c b/src/lib/elm_conform.c
index 8b56787..4f4c373 100644
--- a/src/lib/elm_conform.c
+++ b/src/lib/elm_conform.c
@@ -349,10 +349,7 @@ _land_indicator_connect_cb(void *data)
 }
 
 static Eina_Bool
-_land_indicator_disconnected(void *data,
-                             Eo *obj EINA_UNUSED,
-                             const Eo_Event_Description *desc EINA_UNUSED,
-                             void *event_info EINA_UNUSED)
+_land_indicator_disconnected(void *data, const Eo_Event *event EINA_UNUSED)
 {
    Evas_Object *conform = data;
 
@@ -364,10 +361,7 @@ _land_indicator_disconnected(void *data,
 }
 
 static Eina_Bool
-_port_indicator_disconnected(void *data,
-                             Eo *obj EINA_UNUSED,
-                             const Eo_Event_Description *desc EINA_UNUSED,
-                             void *event_info EINA_UNUSED)
+_port_indicator_disconnected(void *data, const Eo_Event *event EINA_UNUSED)
 {
    Evas_Object *conform = data;
 
@@ -513,12 +507,10 @@ _indicator_opacity_set(Evas_Object *conformant, 
Elm_Win_Indicator_Opacity_Mode i
 }
 
 static Eina_Bool
-_on_indicator_mode_changed(void *data,
-                           Eo *obj, const Eo_Event_Description *desc 
EINA_UNUSED,
-                           void *event_info EINA_UNUSED)
+_on_indicator_mode_changed(void *data, const Eo_Event *event)
 {
    Evas_Object *conformant = data;
-   Evas_Object *win = obj;
+   Evas_Object *win = event->obj;
 
    Elm_Win_Indicator_Mode indmode;
    Elm_Win_Indicator_Opacity_Mode ind_o_mode;
@@ -535,12 +527,10 @@ _on_indicator_mode_changed(void *data,
 }
 
 static Eina_Bool
-_on_rotation_changed(void *data,
-                     Eo *obj, const Eo_Event_Description *desc EINA_UNUSED,
-                     void *event_info EINA_UNUSED)
+_on_rotation_changed(void *data, const Eo_Event *event EINA_UNUSED)
 {
    int rot = 0;
-   Evas_Object *win = obj;
+   Evas_Object *win = event->obj;
    Evas_Object *conformant = data;
    Evas_Object *old_indi = NULL;
 
@@ -1012,9 +1002,11 @@ _elm_conformant_eo_base_constructor(Eo *obj, 
Elm_Conformant_Data *sd)
          evas_obj_smart_callbacks_descriptions_set(_smart_callbacks),
          elm_interface_atspi_accessible_role_set(ELM_ATSPI_ROLE_FILLER));
 
+   Eo_Event event = {0};
+   event.obj = sd->win;
    sd->win = elm_widget_top_get(obj);
-   _on_indicator_mode_changed(obj, sd->win, NULL, NULL);
-   _on_rotation_changed(obj, sd->win, NULL, NULL);
+   _on_indicator_mode_changed(obj, &event);
+   _on_rotation_changed(obj, &event);
 
    sd->indmode = elm_win_indicator_mode_get(sd->win);
    sd->ind_o_mode = elm_win_indicator_opacity_get(sd->win);
diff --git a/src/lib/elm_dayselector.c b/src/lib/elm_dayselector.c
index 0f76ab9..4b245ef 100644
--- a/src/lib/elm_dayselector.c
+++ b/src/lib/elm_dayselector.c
@@ -192,8 +192,7 @@ _item_signal_emit_cb(void *data,
 }
 
 static Eina_Bool
-_item_clicked_cb(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_item_clicked_cb(void *data, const Eo_Event *event EINA_UNUSED)
 {
    Elm_Dayselector_Item_Data *it = data;
 
diff --git a/src/lib/elm_entry.c b/src/lib/elm_entry.c
index e22fe46..95b3136 100644
--- a/src/lib/elm_entry.c
+++ b/src/lib/elm_entry.c
@@ -1313,9 +1313,7 @@ _hover_del_job(void *data)
 }
 
 static Eina_Bool
-_hover_dismissed_cb(void *data,
-                    Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-                    void *event_info EINA_UNUSED)
+_hover_dismissed_cb(void *data, const Eo_Event *event EINA_UNUSED)
 {
    ELM_ENTRY_DATA_GET(data, sd);
 
@@ -2411,8 +2409,7 @@ _anchor_hover_del_cb(void *data,
 }
 
 static Eina_Bool
-_anchor_hover_clicked_cb(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_anchor_hover_clicked_cb(void *data, const Eo_Event *event EINA_UNUSED)
 {
    elm_entry_anchor_hover_end(data);
 
@@ -3880,28 +3877,22 @@ elm_entry_add(Evas_Object *parent)
 }
 
 static Eina_Bool
-_cb_added(void *data EINA_UNUSED,
-          Eo *obj,
-          const Eo_Event_Description *desc EINA_UNUSED,
-          void *event_info)
+_cb_added(void *data EINA_UNUSED, const Eo_Event *ev)
 {
-   const Eo_Callback_Array_Item *event = event_info;
+   const Eo_Callback_Array_Item *event = ev->event_info;
 
-   ELM_ENTRY_DATA_GET(obj, sd);
+   ELM_ENTRY_DATA_GET(ev->obj, sd);
    if (event->desc == ELM_ENTRY_EVENT_VALIDATE)
      sd->validators++;
    return EO_CALLBACK_CONTINUE;
 }
 
 static Eina_Bool
-_cb_deleted(void *data EINA_UNUSED,
-          Eo *obj,
-          const Eo_Event_Description *desc EINA_UNUSED,
-          void *event_info)
+_cb_deleted(void *data EINA_UNUSED, const Eo_Event *ev)
 {
-   const Eo_Callback_Array_Item *event = event_info;
+   const Eo_Callback_Array_Item *event = ev->event_info;
 
-   ELM_ENTRY_DATA_GET(obj, sd);
+   ELM_ENTRY_DATA_GET(ev->obj, sd);
    if (event->desc == ELM_ENTRY_EVENT_VALIDATE)
      sd->validators--;
    return EO_CALLBACK_CONTINUE;
diff --git a/src/lib/elm_frame.c b/src/lib/elm_frame.c
index 7cc4112..f08ad6e 100644
--- a/src/lib/elm_frame.c
+++ b/src/lib/elm_frame.c
@@ -97,8 +97,7 @@ _elm_frame_elm_widget_focus_direction(Eo *obj EINA_UNUSED, 
Elm_Frame_Data *_pd E
 }
 
 static Eina_Bool
-_recalc(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_recalc(void *data, const Eo_Event *event EINA_UNUSED)
 {
    elm_layout_sizing_eval(data);
 
diff --git a/src/lib/elm_genlist.c b/src/lib/elm_genlist.c
index bdcbce9..a3c419a 100644
--- a/src/lib/elm_genlist.c
+++ b/src/lib/elm_genlist.c
@@ -2015,10 +2015,7 @@ _item_realize(Elm_Gen_Item *it,
 }
 
 static Eina_Bool
-_tree_effect_animator_cb(void *data,
-                         Eo *obj EINA_UNUSED,
-                         const Eo_Event_Description *desc EINA_UNUSED,
-                         void *event_info EINA_UNUSED)
+_tree_effect_animator_cb(void *data, const Eo_Event *event EINA_UNUSED)
 {
    int in = 0;
    const Eina_List *l;
diff --git a/src/lib/elm_helper.c b/src/lib/elm_helper.c
index a1aae3f..4f5710a 100644
--- a/src/lib/elm_helper.c
+++ b/src/lib/elm_helper.c
@@ -39,12 +39,9 @@ elm_validator_regexp_status_get(Elm_Validator_Regexp 
*validator)
 }
 
 EAPI Eina_Bool
-elm_validator_regexp_helper(void *data,
-                            Eo *obj EINA_UNUSED,
-                            const Eo_Event_Description *desc EINA_UNUSED,
-                            void *event_info)
+elm_validator_regexp_helper(void *data, const Eo_Event *event)
 {
-   Elm_Validate_Content *vc = event_info;
+   Elm_Validate_Content *vc = event->event_info;
    Elm_Validator_Regexp *validator = (Elm_Validator_Regexp *)data;
 
    validator->status = regexec(&validator->regex, vc->text, (size_t)0, NULL, 
0) ? ELM_REG_NOMATCH : ELM_REG_NOERROR;
diff --git a/src/lib/elm_helper.h b/src/lib/elm_helper.h
index ec92500..9d0d60b 100644
--- a/src/lib/elm_helper.h
+++ b/src/lib/elm_helper.h
@@ -102,7 +102,7 @@ elm_validator_regexp_status_get(Elm_Validator_Regexp 
*validator) EINA_ARG_NONNUL
  * @since 1.14
  */
 EAPI Eina_Bool
-elm_validator_regexp_helper(void *data, Eo *obj, const Eo_Event_Description 
*desc, void *event_info);
+elm_validator_regexp_helper(void *data, const Eo_Event *event);
 #endif
 
 /**
diff --git a/src/lib/elm_interface_atspi_accessible.c 
b/src/lib/elm_interface_atspi_accessible.c
index 19a020f..19b1985 100644
--- a/src/lib/elm_interface_atspi_accessible.c
+++ b/src/lib/elm_interface_atspi_accessible.c
@@ -343,10 +343,14 @@ _elm_interface_atspi_accessible_event_emit(Eo *class 
EINA_UNUSED, void *pd EINA_
           return;
      }
 
+   Eo_Event ev;
+   ev.obj = accessible;
+   ev.desc = event;
+   ev.event_info = event_info;
    EINA_LIST_FOREACH(global_callbacks, l, hdl)
      {
         if (hdl->cb)
-          hdl->cb(hdl->data, accessible, event, event_info);
+          hdl->cb(hdl->data, &ev);
      }
 }
 
@@ -411,7 +415,7 @@ elm_atspi_relation_clone(const Elm_Atspi_Relation *relation)
 }
 
 static Eina_Bool
-_on_rel_obj_del(void *data, Eo *obj, const Eo_Event_Description *desc 
EINA_UNUSED, void *event_info EINA_UNUSED)
+_on_rel_obj_del(void *data, const Eo_Event *event)
 {
    Elm_Atspi_Relation_Set *set = data;
    Elm_Atspi_Relation *rel;
@@ -422,7 +426,7 @@ _on_rel_obj_del(void *data, Eo *obj, const 
Eo_Event_Description *desc EINA_UNUSE
      {
         EINA_LIST_FOREACH_SAFE(rel->objects, p, p2, rel_obj)
           {
-             if (rel_obj == obj)
+          if (rel_obj == event->obj)
                rel->objects = eina_list_remove_list(rel->objects, p);
           }
         if (!rel->objects)
diff --git a/src/lib/elm_interface_atspi_image.c 
b/src/lib/elm_interface_atspi_image.c
index 7e8eeef..70492d0 100644
--- a/src/lib/elm_interface_atspi_image.c
+++ b/src/lib/elm_interface_atspi_image.c
@@ -9,7 +9,7 @@
 #include "elm_priv.h"
 
 static Eina_Bool
-_free_desc_cb(void *data, Eo *obj EINA_UNUSED, const Eo_Event_Description 
*desc EINA_UNUSED, void *event_info EINA_UNUSED)
+_free_desc_cb(void *data, const Eo_Event *event EINA_UNUSED)
 {
    eina_stringshare_del(data);
 
diff --git a/src/lib/elm_interface_scrollable.c 
b/src/lib/elm_interface_scrollable.c
index dfcaf6d..1a1aca9 100644
--- a/src/lib/elm_interface_scrollable.c
+++ b/src/lib/elm_interface_scrollable.c
@@ -61,13 +61,13 @@ 
_elm_scroll_wanted_coordinates_update(Elm_Scrollable_Smart_Interface_Data *sid,
                                       Evas_Coord x,
                                       Evas_Coord y);
 
-static Eina_Bool _elm_scroll_hold_animator(void *data, Eo *o, const 
Eo_Event_Description *desc, void *event_info);
-static Eina_Bool _elm_scroll_on_hold_animator(void *data, Eo *o, const 
Eo_Event_Description *desc, void *event_info);
-static Eina_Bool _elm_scroll_scroll_to_y_animator(void *data, Eo *o, const 
Eo_Event_Description *desc, void *event_info);
-static Eina_Bool _elm_scroll_scroll_to_x_animator(void *data, Eo *o, const 
Eo_Event_Description *desc, void *event_info);
-static Eina_Bool _elm_scroll_bounce_y_animator(void *data, Eo *o, const 
Eo_Event_Description *desc, void *event_info);
-static Eina_Bool _elm_scroll_bounce_x_animator(void *data, Eo *o, const 
Eo_Event_Description *desc, void *event_info);
-static Eina_Bool _elm_scroll_momentum_animator(void *data, Eo *o, const 
Eo_Event_Description *desc, void *event_info);
+static Eina_Bool _elm_scroll_hold_animator(void *data, const Eo_Event *event);
+static Eina_Bool _elm_scroll_on_hold_animator(void *data, const Eo_Event 
*event);
+static Eina_Bool _elm_scroll_scroll_to_y_animator(void *data, const Eo_Event 
*event);
+static Eina_Bool _elm_scroll_scroll_to_x_animator(void *data, const Eo_Event 
*event);
+static Eina_Bool _elm_scroll_bounce_y_animator(void *data, const Eo_Event 
*event);
+static Eina_Bool _elm_scroll_bounce_x_animator(void *data, const Eo_Event 
*event);
+static Eina_Bool _elm_scroll_momentum_animator(void *data, const Eo_Event 
*event);
 
 static double
 _round(double value, int pos)
@@ -1304,7 +1304,7 @@ 
_elm_scroll_momentum_end(Elm_Scrollable_Smart_Interface_Data *sid)
 }
 
 static Eina_Bool
-_elm_scroll_bounce_x_animator(void *data, Eo *o EINA_UNUSED, const 
Eo_Event_Description *desc EINA_UNUSED, void *event_info EINA_UNUSED)
+_elm_scroll_bounce_x_animator(void *data, const Eo_Event *event EINA_UNUSED)
 {
    ELM_SCROLL_IFACE_DATA_GET_OR_RETURN_VAL(data, sid, EINA_FALSE);
    Evas_Coord x, y, dx, w, odx, ed, md;
@@ -1359,7 +1359,7 @@ _elm_scroll_bounce_x_animator(void *data, Eo *o 
EINA_UNUSED, const Eo_Event_Desc
 }
 
 static Eina_Bool
-_elm_scroll_bounce_y_animator(void *data, Eo *o EINA_UNUSED, const 
Eo_Event_Description *desc EINA_UNUSED, void *event_info EINA_UNUSED)
+_elm_scroll_bounce_y_animator(void *data, const Eo_Event *event EINA_UNUSED)
 {
    ELM_SCROLL_IFACE_DATA_GET_OR_RETURN_VAL(data, sid, EINA_FALSE);
    Evas_Coord x, y, dy, h, ody, ed, md;
@@ -2088,7 +2088,7 @@ _paging_is_enabled(Elm_Scrollable_Smart_Interface_Data 
*sid)
 }
 
 static Eina_Bool
-_elm_scroll_momentum_animator(void *data, Eo *o EINA_UNUSED, const 
Eo_Event_Description *desc EINA_UNUSED, void *event_info EINA_UNUSED)
+_elm_scroll_momentum_animator(void *data, const Eo_Event *event EINA_UNUSED)
 {
    double t, at, dt, p, r;
    Elm_Scrollable_Smart_Interface_Data *sid = data;
@@ -2267,7 +2267,7 @@ 
_elm_scroll_page_y_get(Elm_Scrollable_Smart_Interface_Data *sid,
 }
 
 static Eina_Bool
-_elm_scroll_scroll_to_x_animator(void *data, Eo *o EINA_UNUSED, const 
Eo_Event_Description *desc EINA_UNUSED, void *event_info EINA_UNUSED)
+_elm_scroll_scroll_to_x_animator(void *data, const Eo_Event *event EINA_UNUSED)
 {
    Elm_Scrollable_Smart_Interface_Data *sid = data;
    Evas_Coord px, py;
@@ -2305,7 +2305,7 @@ _elm_scroll_scroll_to_x_animator(void *data, Eo *o 
EINA_UNUSED, const Eo_Event_D
 }
 
 static Eina_Bool
-_elm_scroll_scroll_to_y_animator(void *data, Eo *o EINA_UNUSED, const 
Eo_Event_Description *desc EINA_UNUSED, void *event_info EINA_UNUSED)
+_elm_scroll_scroll_to_y_animator(void *data, const Eo_Event *event EINA_UNUSED)
 {
    Elm_Scrollable_Smart_Interface_Data *sid = data;
    Evas_Coord px, py;
@@ -3101,10 +3101,7 @@ _elm_scroll_hold_enterer(void *data)
 }
 
 static Eina_Bool
-_elm_scroll_hold_animator(void *data,
-                          Eo *o EINA_UNUSED,
-                          const Eo_Event_Description *desc EINA_UNUSED,
-                          void *event_info EINA_UNUSED)
+_elm_scroll_hold_animator(void *data, const Eo_Event *event EINA_UNUSED)
 {
    Elm_Scrollable_Smart_Interface_Data *sid = data;
 
@@ -3115,10 +3112,7 @@ _elm_scroll_hold_animator(void *data,
 }
 
 static Eina_Bool
-_elm_scroll_on_hold_animator(void *data,
-                             Eo *o EINA_UNUSED,
-                             const Eo_Event_Description *desc EINA_UNUSED,
-                             void *event_info EINA_UNUSED)
+_elm_scroll_on_hold_animator(void *data, const Eo_Event *event EINA_UNUSED)
 {
    double t, td;
    double vx, vy;
@@ -3827,9 +3821,7 @@ _elm_scroll_pan_resized_cb(void *data,
 
 /* even external pan objects get this */
 static Eina_Bool
-_elm_scroll_pan_changed_cb(void *data,
-                           Eo *obj EINA_UNUSED, const Eo_Event_Description 
*desc EINA_UNUSED,
-                           void *event_info EINA_UNUSED)
+_elm_scroll_pan_changed_cb(void *data, const Eo_Event *event EINA_UNUSED)
 {
    Evas_Coord w = 0, h = 0;
    Elm_Scrollable_Smart_Interface_Data *sid = data;
diff --git a/src/lib/elm_map.c b/src/lib/elm_map.c
index 5dce3b2..395e446 100644
--- a/src/lib/elm_map.c
+++ b/src/lib/elm_map.c
@@ -1143,10 +1143,7 @@ _zoom_do(Elm_Map_Data *sd,
 }
 
 static Eina_Bool
-_zoom_anim_cb(void *data,
-              Eo *obj EINA_UNUSED,
-              const Eo_Event_Description *desc EINA_UNUSED,
-              void *event_info EINA_UNUSED)
+_zoom_anim_cb(void *data, const Eo_Event *event EINA_UNUSED)
 {
    ELM_MAP_DATA_GET(data, sd);
 
@@ -1166,10 +1163,7 @@ _zoom_anim_cb(void *data,
 }
 
 static Eina_Bool
-_zoom_bring_anim_cb(void *data,
-                    Eo *obj EINA_UNUSED,
-                    const Eo_Event_Description *desc EINA_UNUSED,
-                    void *event_info EINA_UNUSED)
+_zoom_bring_anim_cb(void *data, const Eo_Event *event EINA_UNUSED)
 {
    ELM_MAP_DATA_GET(data, sd);
 
diff --git a/src/lib/elm_menu.c b/src/lib/elm_menu.c
index 5d7cd15..3b6e22a 100644
--- a/src/lib/elm_menu.c
+++ b/src/lib/elm_menu.c
@@ -423,11 +423,9 @@ _menu_hide(void *data,
 }
 
 static Eina_Bool
-_hover_dismissed_cb(void *data,
-                    Eo *obj, const Eo_Event_Description *desc EINA_UNUSED,
-                    void *event_info)
+_hover_dismissed_cb(void *data, const Eo_Event *event)
 {
-   _menu_hide(data, obj, event_info);
+   _menu_hide(data, event->obj, event->event_info);
    eo_do(data, eo_event_callback_call
      (EVAS_CLICKABLE_INTERFACE_EVENT_CLICKED, NULL));
    eo_do(data, eo_event_callback_call(ELM_MENU_EVENT_DISMISSED, NULL));
@@ -522,8 +520,7 @@ _menu_item_inactivate_cb(void *data,
 }
 
 static Eina_Bool
-_block_menu(void *_sd,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_block_menu(void *_sd, const Eo_Event *event EINA_UNUSED)
 {
    const Eina_List *l;
    Elm_Object_Item *eo_current;
@@ -542,8 +539,7 @@ _block_menu(void *_sd,
 }
 
 static Eina_Bool
-_unblock_menu(void *_sd,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_unblock_menu(void *_sd, const Eo_Event *event EINA_UNUSED)
 {
    const Eina_List *l;
    Elm_Object_Item *eo_current;
diff --git a/src/lib/elm_panel.c b/src/lib/elm_panel.c
index 036df74..4677792 100644
--- a/src/lib/elm_panel.c
+++ b/src/lib/elm_panel.c
@@ -1086,9 +1086,7 @@ _elm_panel_evas_object_smart_move(Eo *obj, Elm_Panel_Data 
*sd, Evas_Coord x, Eva
 // FIXME: This is definitively not an animator, but a pre calc function
 // Not sure if I can hook on smart calc or on RENDER_PRE, will be left for 
later
 static Eina_Bool
-_elm_panel_anim_cb(void *data,
-                   Eo *o EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-                   void *event_info EINA_UNUSED)
+_elm_panel_anim_cb(void *data, const Eo_Event *event EINA_UNUSED)
 {
    Evas_Object *obj = data;
    ELM_PANEL_DATA_GET(obj, sd);
diff --git a/src/lib/elm_photo.c b/src/lib/elm_photo.c
index df36154..60fce2e 100644
--- a/src/lib/elm_photo.c
+++ b/src/lib/elm_photo.c
@@ -233,8 +233,7 @@ _elm_photo_internal_image_follow(Evas_Object *obj)
 }
 
 static Eina_Bool
-_on_thumb_done(void *data,
-      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED)
+_on_thumb_done(void *data, const Eo_Event *event EINA_UNUSED)
 {
    _elm_photo_internal_image_follow(data);
 
diff --git a/src/lib/elm_photocam.c b/src/lib/elm_photocam.c
index 97d878e..8c4b38b 100644
--- a/src/lib/elm_photocam.c
+++ b/src/lib/elm_photocam.c
@@ -766,10 +766,7 @@ _zoom_do(Evas_Object *obj,
 }
 
 static Eina_Bool
-_zoom_anim_cb(void *data,
-             Eo *o EINA_UNUSED,
-             const Eo_Event_Description *desc EINA_UNUSED,
-             void *event_info EINA_UNUSED)
+_zoom_anim_cb(void *data, const Eo_Event *event EINA_UNUSED)
 {
    double t;
    Evas_Object *obj = data;
@@ -1040,10 +1037,7 @@ _elm_photocam_elm_widget_event(Eo *obj, 
Elm_Photocam_Data *_pd EINA_UNUSED, Evas
 }
 
 static Eina_Bool
-_bounce_eval(void *data,
-             Eo *o EINA_UNUSED,
-             const Eo_Event_Description *desc EINA_UNUSED,
-             void *event_info EINA_UNUSED)
+_bounce_eval(void *data, const Eo_Event *event EINA_UNUSED)
 {
    Evas_Object *obj = data;
    ELM_PHOTOCAM_DATA_GET(obj, sd);
@@ -1970,7 +1964,9 @@ done:
    if (an)
      {
         // FIXME: If one day we do support partial animator in photocam, this 
would require change
-        if (!_zoom_anim_cb(obj, evas_object_evas_get(obj), NULL, NULL))
+        Eo_Event event = {0};
+        event.obj = evas_object_evas_get(obj);
+        if (!_zoom_anim_cb(obj, &event))
           {
              _elm_photocam_bounce_reset(obj, sd);
              an = 0;
diff --git a/src/lib/elm_spinner.c b/src/lib/elm_spinner.c
index 82cd6aa..8eb3c03 100644
--- a/src/lib/elm_spinner.c
+++ b/src/lib/elm_spinner.c
@@ -42,17 +42,13 @@ static Eina_Bool _key_action_spin(Evas_Object *obj, const 
char *params);
 static Eina_Bool _key_action_toggle(Evas_Object *obj, const char *params);
 
 static Eina_Bool
-_inc_dec_button_clicked_cb(void *data, Eo *obj EINA_UNUSED,
-                           const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED);
+_inc_dec_button_clicked_cb(void *data, const Eo_Event *event);
 static Eina_Bool
-_inc_dec_button_pressed_cb(void *data, Eo *obj,
-                           const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info EINA_UNUSED);
+_inc_dec_button_pressed_cb(void *data, const Eo_Event *event);
 static Eina_Bool
-_inc_dec_button_unpressed_cb(void *data, Eo *obj EINA_UNUSED,
-                             const Eo_Event_Description *desc EINA_UNUSED, 
void *event_info EINA_UNUSED);
+_inc_dec_button_unpressed_cb(void *data, const Eo_Event *event);
 static Eina_Bool
-_inc_dec_button_mouse_move_cb(void *data, Eo *obj EINA_UNUSED,
-                              const Eo_Event_Description *desc EINA_UNUSED, 
void *event_info);
+_inc_dec_button_mouse_move_cb(void *data, const Eo_Event *event);
 
 static const Elm_Action key_actions[] = {
    {"spin", _key_action_spin},
@@ -375,9 +371,7 @@ _entry_value_apply(Evas_Object *obj)
 }
 
 static Eina_Bool
-_entry_activated_cb(void *data,
-                    Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-                    void *event_info EINA_UNUSED)
+_entry_activated_cb(void *data, const Eo_Event *event EINA_UNUSED)
 {
    _entry_value_apply(data);
 
@@ -793,9 +787,7 @@ _button_inc_dec_stop_cb(void *data,
 }
 
 static Eina_Bool
-_inc_dec_button_clicked_cb(void *data,
-                       Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-                       void *event_info EINA_UNUSED)
+_inc_dec_button_clicked_cb(void *data, const Eo_Event *event EINA_UNUSED)
 {
    ELM_SPINNER_DATA_GET(data, sd);
 
@@ -811,13 +803,11 @@ _inc_dec_button_clicked_cb(void *data,
 }
 
 static Eina_Bool
-_inc_dec_button_pressed_cb(void *data,
-                       Eo *obj, const Eo_Event_Description *desc EINA_UNUSED,
-                       void *event_info EINA_UNUSED)
+_inc_dec_button_pressed_cb(void *data, const Eo_Event *event)
 {
    ELM_SPINNER_DATA_GET(data, sd);
 
-   sd->inc_clicked = sd->inc_button == obj ? EINA_TRUE : EINA_FALSE;
+   sd->inc_clicked = sd->inc_button == event->obj ? EINA_TRUE : EINA_FALSE;
 
    if (sd->longpress_timer) ecore_timer_del(sd->longpress_timer);
 
@@ -831,9 +821,7 @@ _inc_dec_button_pressed_cb(void *data,
 }
 
 static Eina_Bool
-_inc_dec_button_unpressed_cb(void *data,
-                         Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-                         void *event_info EINA_UNUSED)
+_inc_dec_button_unpressed_cb(void *data, const Eo_Event *event EINA_UNUSED)
 {
    ELM_SPINNER_DATA_GET(data, sd);
 
@@ -849,9 +837,7 @@ _inc_dec_button_unpressed_cb(void *data,
 }
 
 static Eina_Bool
-_text_button_clicked_cb(void *data,
-                        Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-                        void *event_info EINA_UNUSED)
+_text_button_clicked_cb(void *data, const Eo_Event *event EINA_UNUSED)
 {
    _toggle_entry(data);
 
@@ -859,11 +845,9 @@ _text_button_clicked_cb(void *data,
 }
 
 static Eina_Bool
-_inc_dec_button_mouse_move_cb(void *data, Eo *obj EINA_UNUSED,
-                              const Eo_Event_Description *desc EINA_UNUSED,
-                              void *event_info)
+_inc_dec_button_mouse_move_cb(void *data, const Eo_Event *event)
 {
-   Evas_Event_Mouse_Move *ev = event_info;
+   Evas_Event_Mouse_Move *ev = event->event_info;
    ELM_SPINNER_DATA_GET(data, sd);
 
    if ((ev->event_flags & EVAS_EVENT_FLAG_ON_HOLD) && sd->longpress_timer)
diff --git a/src/lib/elm_store.c b/src/lib/elm_store.c
index b4eaf2b..129ac65 100644
--- a/src/lib/elm_store.c
+++ b/src/lib/elm_store.c
@@ -224,10 +224,10 @@ _store_item_eval(void *data)
 }
 
 static Eina_Bool
-_store_genlist_item_realized(void *data, Eo *obj EINA_UNUSED, const 
Eo_Event_Description *desc EINA_UNUSED, void *event_info)
+_store_genlist_item_realized(void *data, const Eo_Event *event)
 {
    Elm_Store *st = data;
-   Elm_Object_Item *gli = event_info;
+   Elm_Object_Item *gli = event->event_info;
    Elm_Store_Item *sti = elm_object_item_data_get(gli);
    if (!sti) return EINA_TRUE;
    st->realized_count++;
@@ -238,10 +238,10 @@ _store_genlist_item_realized(void *data, Eo *obj 
EINA_UNUSED, const Eo_Event_Des
 }
 
 static Eina_Bool
-_store_genlist_item_unrealized(void *data, Eo *obj EINA_UNUSED, const 
Eo_Event_Description *desc EINA_UNUSED, void *event_info)
+_store_genlist_item_unrealized(void *data, const Eo_Event *event)
 {
    Elm_Store *st = data;
-   Elm_Object_Item *gli = event_info;
+   Elm_Object_Item *gli = event->event_info;
    Elm_Store_Item *sti = elm_object_item_data_get(gli);
    if (!sti) return EINA_TRUE;
    st->realized_count--;
diff --git a/src/lib/elm_video.c b/src/lib/elm_video.c
index 5766e69..d5b2a0a 100644
--- a/src/lib/elm_video.c
+++ b/src/lib/elm_video.c
@@ -29,29 +29,17 @@ static const Evas_Smart_Cb_Description _smart_callbacks[] = 
{
 
 
 static Eina_Bool
-_on_open_done(void *data,
-              Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-              void *event_info EINA_UNUSED);
+_on_open_done(void *data, const Eo_Event *event);
 static Eina_Bool
-_on_playback_started(void *data,
-                     Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-                     void *event_info EINA_UNUSED);
+_on_playback_started(void *data, const Eo_Event *event);
 static Eina_Bool
-_on_playback_finished(void *data,
-                      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-                      void *event_info EINA_UNUSED);
+_on_playback_finished(void *data, const Eo_Event *event);
 static Eina_Bool
-_on_aspect_ratio_updated(void *data,
-                         Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-                         void *event_info EINA_UNUSED);
+_on_aspect_ratio_updated(void *data, const Eo_Event *event);
 static Eina_Bool
-_on_title_changed(void *data,
-                  Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-                  void *event_info EINA_UNUSED);
+_on_title_changed(void *data, const Eo_Event *event);
 static Eina_Bool
-_on_audio_level_changed(void *data,
-                        Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-                        void *event_info EINA_UNUSED);
+_on_audio_level_changed(void *data, const Eo_Event *event);
 
 static Eina_Bool _key_action_move(Evas_Object *obj, const char *params);
 static Eina_Bool _key_action_play(Evas_Object *obj, const char *params);
@@ -171,9 +159,7 @@ _on_size_hints_changed(void *data EINA_UNUSED,
 }
 
 static Eina_Bool
-_on_open_done(void *data,
-              Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-              void *event_info EINA_UNUSED)
+_on_open_done(void *data, const Eo_Event *event EINA_UNUSED)
 {
    elm_layout_signal_emit(data, "elm,video,open", "elm");
 
@@ -181,9 +167,7 @@ _on_open_done(void *data,
 }
 
 static Eina_Bool
-_on_playback_started(void *data,
-                     Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-                     void *event_info EINA_UNUSED)
+_on_playback_started(void *data, const Eo_Event *event EINA_UNUSED)
 {
    elm_layout_signal_emit(data, "elm,video,play", "elm");
 
@@ -192,9 +176,7 @@ _on_playback_started(void *data,
 }
 
 static Eina_Bool
-_on_playback_finished(void *data,
-                      Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-                      void *event_info EINA_UNUSED)
+_on_playback_finished(void *data, const Eo_Event *event EINA_UNUSED)
 {
    ELM_VIDEO_DATA_GET(data, sd);
    emotion_object_play_set(sd->emotion, EINA_FALSE);
@@ -204,9 +186,7 @@ _on_playback_finished(void *data,
 }
 
 static Eina_Bool
-_on_aspect_ratio_updated(void *data,
-                         Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-                         void *event_info EINA_UNUSED)
+_on_aspect_ratio_updated(void *data, const Eo_Event *event EINA_UNUSED)
 {
    elm_layout_sizing_eval(data);
 
@@ -214,9 +194,7 @@ _on_aspect_ratio_updated(void *data,
 }
 
 static Eina_Bool
-_on_title_changed(void *data,
-                  Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-                  void *event_info EINA_UNUSED)
+_on_title_changed(void *data, const Eo_Event *event EINA_UNUSED)
 {
    const char *title;
 
@@ -230,9 +208,7 @@ _on_title_changed(void *data,
 }
 
 static Eina_Bool
-_on_audio_level_changed(void *data,
-                        Eo *obj EINA_UNUSED, const Eo_Event_Description *desc 
EINA_UNUSED,
-                        void *event_info EINA_UNUSED)
+_on_audio_level_changed(void *data, const Eo_Event *event EINA_UNUSED)
 {
    (void)data;
 
diff --git a/src/lib/elm_view_form.c b/src/lib/elm_view_form.c
index 7437a95..6a6dab9 100644
--- a/src/lib/elm_view_form.c
+++ b/src/lib/elm_view_form.c
@@ -39,9 +39,9 @@ struct _Elm_View_Form_Data
 };
 
 static Eina_Bool
-_efl_model_properties_change_cb(void *data, Eo *obj EINA_UNUSED, const 
Eo_Event_Description *desc EINA_UNUSED, void *event_info)
+_efl_model_properties_change_cb(void *data, const Eo_Event *event)
 {
-   const Efl_Model_Property_Event *evt = event_info;
+   const Efl_Model_Property_Event *evt = event->event_info;
    const Eina_Value *value;
    const char *prop;
    unsigned int i;
diff --git a/src/lib/elm_view_list.c b/src/lib/elm_view_list.c
index 271a242..bb0d253 100644
--- a/src/lib/elm_view_list.c
+++ b/src/lib/elm_view_list.c
@@ -38,13 +38,13 @@ struct _View_List_ItemData
 };
 
 static void _efl_model_load_children(View_List_ItemData *);
-static Eina_Bool _efl_model_load_status_change_cb(void *, Eo *, const 
Eo_Event_Description *, void *);
-static Eina_Bool _efl_model_children_count_change_cb(void *, Eo *, const 
Eo_Event_Description *, void *);
-static Eina_Bool _efl_model_properties_change_cb(void *, Eo *, const 
Eo_Event_Description *, void *);
+static Eina_Bool _efl_model_load_status_change_cb(void *, const Eo_Event 
*event);
+static Eina_Bool _efl_model_children_count_change_cb(void *, const Eo_Event 
*event);
+static Eina_Bool _efl_model_properties_change_cb(void *, const Eo_Event 
*event);
 
-static Eina_Bool _expand_request_cb(void *data EINA_UNUSED, Eo *obj 
EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void *event_info);
-static Eina_Bool _contract_request_cb(void *data EINA_UNUSED, Eo *obj 
EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void *event_info);
-static Eina_Bool _contracted_cb(void *data EINA_UNUSED, Eo *obj EINA_UNUSED, 
const Eo_Event_Description *desc EINA_UNUSED, void *event_info);
+static Eina_Bool _expand_request_cb(void *data EINA_UNUSED, const Eo_Event 
*event);
+static Eina_Bool _contract_request_cb(void *data EINA_UNUSED, const Eo_Event 
*event);
+static Eina_Bool _contracted_cb(void *data EINA_UNUSED, const Eo_Event *event);
 
 /* --- Genlist Callbacks --- */
 EO_CALLBACKS_ARRAY_DEFINE(model_callbacks,
@@ -159,9 +159,9 @@ _item_text_get(void *data, Evas_Object *obj EINA_UNUSED, 
const char *part)
 }
 
 static Eina_Bool
-_expand_request_cb(void *data EINA_UNUSED, Eo *obj EINA_UNUSED, const 
Eo_Event_Description *desc EINA_UNUSED, void *event_info)
+_expand_request_cb(void *data EINA_UNUSED, const Eo_Event *event)
 {
-   Elm_Object_Item *item = event_info;
+   Elm_Object_Item *item = event->event_info;
    View_List_ItemData *idata = elm_object_item_data_get(item);
    Efl_Model_Load_Status st = EFL_MODEL_LOAD_STATUS_ERROR;
 
@@ -182,9 +182,9 @@ _expand_request_cb(void *data EINA_UNUSED, Eo *obj 
EINA_UNUSED, const Eo_Event_D
 }
 
 static Eina_Bool
-_contract_request_cb(void *data EINA_UNUSED, Eo *obj EINA_UNUSED, const 
Eo_Event_Description *desc EINA_UNUSED, void *event_info)
+_contract_request_cb(void *data EINA_UNUSED, const Eo_Event *event)
 {
-   Elm_Object_Item *item = event_info;
+   Elm_Object_Item *item = event->event_info;
    View_List_ItemData *idata = elm_object_item_data_get(item);
 
    eo_do(idata->model, eo_event_callback_array_del(model_callbacks(), idata));
@@ -193,9 +193,9 @@ _contract_request_cb(void *data EINA_UNUSED, Eo *obj 
EINA_UNUSED, const Eo_Event
 }
 
 static Eina_Bool
-_contracted_cb(void *data EINA_UNUSED, Eo *obj EINA_UNUSED, const 
Eo_Event_Description *desc EINA_UNUSED, void *event_info)
+_contracted_cb(void *data EINA_UNUSED, const Eo_Event *event)
 {
-   Elm_Object_Item *glit = event_info;
+   Elm_Object_Item *glit = event->event_info;
    elm_genlist_item_subitems_clear(glit);
    return EINA_TRUE;
 }
@@ -217,11 +217,10 @@ _genlist_deleted(void *data, Evas *e EINA_UNUSED, 
Evas_Object *obj, void *event_
 
 /* --- Efl_Model Callbacks --- */
 static Eina_Bool
-_efl_model_properties_change_cb(void *data, Eo *obj EINA_UNUSED,
-                const Eo_Event_Description *desc EINA_UNUSED, void *event_info)
+_efl_model_properties_change_cb(void *data, const Eo_Event *event)
 {
    View_List_ItemData *idata = data;
-   Efl_Model_Property_Event *evt = event_info;
+   Efl_Model_Property_Event *evt = event->event_info;
 
    EINA_SAFETY_ON_NULL_RETURN_VAL(idata, EINA_TRUE);
    EINA_SAFETY_ON_NULL_RETURN_VAL(evt, EINA_TRUE);
@@ -272,8 +271,7 @@ _efl_model_load_children(View_List_ItemData *pdata)
 }
 
 static Eina_Bool
-_efl_model_children_count_change_cb(void *data, Eo *obj EINA_UNUSED,
-                const Eo_Event_Description *desc EINA_UNUSED, void *event_info 
EINA_UNUSED)
+_efl_model_children_count_change_cb(void *data, const Eo_Event *event 
EINA_UNUSED)
 {
    View_List_ItemData *idata = data;
    EINA_SAFETY_ON_NULL_RETURN_VAL(idata, EINA_FALSE);
@@ -288,11 +286,10 @@ _efl_model_children_count_change_cb(void *data, Eo *obj 
EINA_UNUSED,
 }
 
 static Eina_Bool
-_efl_model_load_status_change_cb(void *data, Eo *obj EINA_UNUSED,
-                const Eo_Event_Description *desc EINA_UNUSED, void *event_info)
+_efl_model_load_status_change_cb(void *data, const Eo_Event *event)
 {
    View_List_ItemData *idata = data;
-   Efl_Model_Load *load = event_info;
+   Efl_Model_Load *load = event->event_info;
 
    if (load->status & EFL_MODEL_LOAD_STATUS_UNLOADED)
      {
diff --git a/src/lib/elm_widget.c b/src/lib/elm_widget.c
index b13a2d9..53d4a8a 100644
--- a/src/lib/elm_widget.c
+++ b/src/lib/elm_widget.c
@@ -86,20 +86,11 @@ _elm_scrollable_is(const Evas_Object *obj)
 }
 
 static Eina_Bool
-_on_sub_obj_del(void *data,
-                Eo *obj,
-                const Eo_Event_Description *desc,
-                void *event_info);
+_on_sub_obj_del(void *data, const Eo_Event *event);
 static Eina_Bool
-_on_sub_obj_hide(void *data,
-                 Eo *obj,
-                 const Eo_Event_Description *desc,
-                 void *event_info);
+_on_sub_obj_hide(void *data, const Eo_Event *event);
 static Eina_Bool
-_propagate_event(void *data,
-                 Eo *obj,
-                 const Eo_Event_Description *desc,
-                 void *event_info);
+_propagate_event(void *data, const Eo_Event *event);
 
 EO_CALLBACKS_ARRAY_DEFINE(elm_widget_subitems_callbacks,
                           { EVAS_OBJECT_EVENT_DEL, _on_sub_obj_del },
@@ -246,40 +237,34 @@ _parents_unfocus(Evas_Object *obj)
 }
 
 static Eina_Bool
-_on_sub_obj_hide(void *data EINA_UNUSED,
-                 Eo *obj,
-                 const Eo_Event_Description *desc EINA_UNUSED,
-                 void *event_info EINA_UNUSED)
+_on_sub_obj_hide(void *data EINA_UNUSED, const Eo_Event *event)
 {
-   elm_widget_focus_hide_handle(obj);
+   elm_widget_focus_hide_handle(event->obj);
    return EO_CALLBACK_CONTINUE;
 }
 
 static Eina_Bool
-_on_sub_obj_del(void *data,
-                Eo *obj,
-                const Eo_Event_Description *desc EINA_UNUSED,
-                void *event_info EINA_UNUSED)
+_on_sub_obj_del(void *data, const Eo_Event *event)
 {
    ELM_WIDGET_DATA_GET(data, sd);
 
-   if (_elm_widget_is(obj))
+   if (_elm_widget_is(event->obj))
      {
-        if (elm_widget_focus_get(obj)) _parents_unfocus(sd->obj);
+        if (elm_widget_focus_get(event->obj)) _parents_unfocus(sd->obj);
      }
-   if (obj == sd->resize_obj)
+   if (event->obj == sd->resize_obj)
      {
         /* already dels sub object */
         elm_widget_resize_object_set(sd->obj, NULL, EINA_TRUE);
      }
-   else if (obj == sd->hover_obj)
+   else if (event->obj == sd->hover_obj)
      {
         sd->hover_obj = NULL;
      }
    else
      {
-        if (!elm_widget_sub_object_del(sd->obj, obj))
-          ERR("failed to remove sub object %p from %p\n", obj, sd->obj);
+        if (!elm_widget_sub_object_del(sd->obj, event->obj))
+          ERR("failed to remove sub object %p from %p\n", event->obj, sd->obj);
      }
 
    return EO_CALLBACK_CONTINUE;
@@ -699,37 +684,35 @@ _propagate_y_drag_lock(Evas_Object *obj,
 }
 
 static Eina_Bool
-_propagate_event(void *data EINA_UNUSED,
-                 Eo *obj,
-                 const Eo_Event_Description *desc,
-                 void *event_info)
+_propagate_event(void *data EINA_UNUSED, const Eo_Event *event)
 {
+   Eo *obj = event->obj;
    INTERNAL_ENTRY EO_CALLBACK_CONTINUE;
    Evas_Callback_Type type;
    Evas_Event_Flags *event_flags = NULL;
 
-   if (desc == EVAS_OBJECT_EVENT_KEY_DOWN)
+   if (event->desc == EVAS_OBJECT_EVENT_KEY_DOWN)
      {
-        Evas_Event_Key_Down *ev = event_info;
+        Evas_Event_Key_Down *ev = event->event_info;
         event_flags = &(ev->event_flags);
         type = EVAS_CALLBACK_KEY_DOWN;
      }
-   else if (desc == EVAS_OBJECT_EVENT_KEY_UP)
+   else if (event->desc == EVAS_OBJECT_EVENT_KEY_UP)
      {
-        Evas_Event_Key_Up *ev = event_info;
+        Evas_Event_Key_Up *ev = event->event_info;
         event_flags = &(ev->event_flags);
         type = EVAS_CALLBACK_KEY_UP;
      }
-   else if (desc == EVAS_OBJECT_EVENT_MOUSE_WHEEL)
+   else if (event->desc == EVAS_OBJECT_EVENT_MOUSE_WHEEL)
      {
-        Evas_Event_Mouse_Wheel *ev = event_info;
+        Evas_Event_Mouse_Wheel *ev = event->event_info;
         event_flags = &(ev->event_flags);
         type = EVAS_CALLBACK_MOUSE_WHEEL;
      }
    else
      return EO_CALLBACK_CONTINUE;
 
-   elm_widget_event_propagate(obj, type, event_info, event_flags);
+   elm_widget_event_propagate(obj, type, event->event_info, event_flags);
 
    return EO_CALLBACK_CONTINUE;
 }
@@ -4284,19 +4267,15 @@ _track_obj_update(Evas_Object *track, Evas_Object *obj)
 }
 
 static Eina_Bool
-_track_obj_view_update(void *data, Eo *obj,
-                       const Eo_Event_Description *desc EINA_UNUSED,
-                       void *event_info EINA_UNUSED)
+_track_obj_view_update(void *data, const Eo_Event *event)
 {
    Elm_Widget_Item_Data *item = data;
-   _track_obj_update(item->track_obj, obj);
+   _track_obj_update(item->track_obj, event->obj);
    return EO_CALLBACK_CONTINUE;
 }
 
 static Eina_Bool
-_track_obj_view_del(void *data, Eo *obj EINA_UNUSED,
-                    const Eo_Event_Description *desc EINA_UNUSED,
-                    void *event_info EINA_UNUSED);
+_track_obj_view_del(void *data, const Eo_Event *event);
 
 EO_CALLBACKS_ARRAY_DEFINE(tracker_callbacks,
                           { EVAS_OBJECT_EVENT_RESIZE, _track_obj_view_update },
@@ -4306,9 +4285,7 @@ EO_CALLBACKS_ARRAY_DEFINE(tracker_callbacks,
                           { EVAS_OBJECT_EVENT_DEL, _track_obj_view_del });
 
 static Eina_Bool
-_track_obj_view_del(void *data, Eo *obj EINA_UNUSED,
-                    const Eo_Event_Description *desc EINA_UNUSED,
-                    void *event_info EINA_UNUSED)
+_track_obj_view_del(void *data, const Eo_Event *event EINA_UNUSED)
 {
    Elm_Widget_Item_Data *item = data;
 
@@ -4371,12 +4348,12 @@ 
_elm_widget_item_signal_callback_list_get(Elm_Widget_Item_Data *item, Eina_List
 #define ERR_NOT_SUPPORTED(item, method)  ERR("%s does not support %s API.", 
elm_widget_type_get(item->widget), method);
 
 static Eina_Bool
-_eo_del_cb(void *data EINA_UNUSED, Eo *eo_item, const Eo_Event_Description 
*desc EINA_UNUSED, void *event_info EINA_UNUSED)
+_eo_del_cb(void *data EINA_UNUSED, const Eo_Event *event)
 {
-   Elm_Widget_Item_Data *item = eo_data_scope_get(eo_item, 
ELM_WIDGET_ITEM_CLASS);
+   Elm_Widget_Item_Data *item = eo_data_scope_get(event->obj, 
ELM_WIDGET_ITEM_CLASS);
    ELM_WIDGET_ITEM_CHECK_OR_RETURN(item, EINA_TRUE);
    if (item->del_func)
-      item->del_func((void *) WIDGET_ITEM_DATA_GET(eo_item), item->widget, 
item->eo_obj);
+      item->del_func((void *) WIDGET_ITEM_DATA_GET(event->obj), item->widget, 
item->eo_obj);
    return EINA_TRUE;
 }
 
diff --git a/src/lib/elm_win.c b/src/lib/elm_win.c
index 8004d29..03b3006 100644
--- a/src/lib/elm_win.c
+++ b/src/lib/elm_win.c
@@ -5677,7 +5677,7 @@ elm_win_window_id_get(const Evas_Object *obj)
 }
 
 static Eina_Bool
-_on_atspi_bus_connected(void *data EINA_UNUSED, Eo *obj EINA_UNUSED, const 
Eo_Event_Description *desc EINA_UNUSED, void *event_info EINA_UNUSED)
+_on_atspi_bus_connected(void *data EINA_UNUSED, const Eo_Event *event 
EINA_UNUSED)
 {
    Evas_Object *win;
    Eina_List *l;
diff --git a/src/modules/datetime_input_ctxpopup/datetime_input_ctxpopup.c 
b/src/modules/datetime_input_ctxpopup/datetime_input_ctxpopup.c
index 8e2d397..d62dfb1 100644
--- a/src/modules/datetime_input_ctxpopup/datetime_input_ctxpopup.c
+++ b/src/modules/datetime_input_ctxpopup/datetime_input_ctxpopup.c
@@ -34,12 +34,11 @@ _diskselector_item_free_cb(void *data, Evas_Object *obj 
EINA_UNUSED, void *event
 }
 
 static Eina_Bool
-_ctxpopup_dismissed_cb(void *data, Eo *obj, const Eo_Event_Description *desc 
EINA_UNUSED,
-                       void *event_info EINA_UNUSED)
+_ctxpopup_dismissed_cb(void *data, const Eo_Event *event)
 {
    Ctxpopup_Module_Data *ctx_mod;
    ctx_mod = (Ctxpopup_Module_Data *)data;
-   evas_object_del(obj);
+   evas_object_del(event->obj);
    ctx_mod->ctxpopup = NULL;
 
    return EINA_TRUE;
@@ -88,14 +87,13 @@ _field_value_get(struct tm *tim, Elm_Datetime_Field_Type  
field_type)
 }
 
 static Eina_Bool
-_diskselector_cb(void *data EINA_UNUSED, Eo *obj EINA_UNUSED,
-                 const Eo_Event_Description *desc EINA_UNUSED, void 
*event_info)
+_diskselector_cb(void *data EINA_UNUSED, const Eo_Event *event)
 {
    DiskItem_Data *disk_data;
    struct tm curr_time;
    const char *fmt;
 
-   disk_data = (DiskItem_Data *)elm_object_item_data_get(event_info);
+   disk_data = (DiskItem_Data *)elm_object_item_data_get(event->event_info);
    if (!disk_data || !(disk_data->ctx_mod)) return EINA_FALSE;
 
    elm_datetime_value_get(disk_data->ctx_mod->mod_data.base, &curr_time);
@@ -111,9 +109,7 @@ _diskselector_cb(void *data EINA_UNUSED, Eo *obj 
EINA_UNUSED,
 }
 
 static Eina_Bool
-_ampm_clicked_cb(void *data, Eo *obj EINA_UNUSED,
-                 const Eo_Event_Description *desc EINA_UNUSED,
-                 void *event_info EINA_UNUSED)
+_ampm_clicked_cb(void *data, const Eo_Event *event EINA_UNUSED)
 {
    Ctxpopup_Module_Data *ctx_mod;
    struct tm curr_time;
@@ -129,9 +125,7 @@ _ampm_clicked_cb(void *data, Eo *obj EINA_UNUSED,
 }
 
 static Eina_Bool
-_field_clicked_cb(void *data, Eo *obj,
-                  const Eo_Event_Description *desc EINA_UNUSED,
-                  void *event_info EINA_UNUSED)
+_field_clicked_cb(void *data, const Eo_Event *event)
 {
    Ctxpopup_Module_Data *ctx_mod;
    Evas_Object *diskselector;
@@ -149,9 +143,9 @@ _field_clicked_cb(void *data, Eo *obj,
    ctx_mod = (Ctxpopup_Module_Data *)data;
    if (!ctx_mod) return EINA_FALSE;
 
-   snprintf(buf, sizeof(buf), "datetime/%s", elm_object_style_get(obj));
+   snprintf(buf, sizeof(buf), "datetime/%s", elm_object_style_get(event->obj));
 
-   ctx_mod->ctxpopup = elm_ctxpopup_add(obj);
+   ctx_mod->ctxpopup = elm_ctxpopup_add(event->obj);
    elm_object_style_set(ctx_mod->ctxpopup, buf);
    elm_ctxpopup_horizontal_set(ctx_mod->ctxpopup, EINA_TRUE);
    evas_object_size_hint_weight_set(ctx_mod->ctxpopup, EVAS_HINT_EXPAND,
@@ -159,7 +153,7 @@ _field_clicked_cb(void *data, Eo *obj,
    evas_object_size_hint_align_set(ctx_mod->ctxpopup, EVAS_HINT_FILL, 0.5);
    eo_do(ctx_mod->ctxpopup, eo_event_callback_add
      (ELM_CTXPOPUP_EVENT_DISMISSED, _ctxpopup_dismissed_cb, ctx_mod));
-   elm_ctxpopup_hover_parent_set(ctx_mod->ctxpopup, elm_widget_top_get(obj));
+   elm_ctxpopup_hover_parent_set(ctx_mod->ctxpopup, 
elm_widget_top_get(event->obj));
 
    diskselector = 
elm_diskselector_add(elm_widget_top_get(ctx_mod->mod_data.base));
    eo_do(diskselector, eo_event_callback_add
@@ -170,7 +164,7 @@ _field_clicked_cb(void *data, Eo *obj,
    t = time(NULL);
    localtime_r(&t, &time1);
 
-   field_type = (Elm_Datetime_Field_Type )evas_object_data_get(obj, 
"_field_type");
+   field_type = (Elm_Datetime_Field_Type )evas_object_data_get(event->obj, 
"_field_type");
    fmt = ctx_mod->mod_data.field_format_get(ctx_mod->mod_data.base, 
field_type);
    elm_datetime_value_get(ctx_mod->mod_data.base, &time1);
    val = _field_value_get(&time1, field_type);
@@ -207,7 +201,7 @@ _field_clicked_cb(void *data, Eo *obj,
      }
    elm_diskselector_side_text_max_length_set(diskselector, text_len);
 
-   evas_object_geometry_get(obj, &x, &y, &w, &h);
+   evas_object_geometry_get(event->obj, &x, &y, &w, &h);
    evas_object_geometry_get(elm_widget_top_get(ctx_mod->mod_data.base), NULL, 
NULL, &width, NULL);
    evas_object_size_hint_min_set(ctx_mod->ctxpopup, width, -1);
    display_item_num = width / (w + elm_config_finger_size_get());
diff --git a/src/modules/prefs/elm_button.c b/src/modules/prefs/elm_button.c
index cff42e3..25e9759 100644
--- a/src/modules/prefs/elm_button.c
+++ b/src/modules/prefs/elm_button.c
@@ -9,13 +9,11 @@ static Elm_Prefs_Item_Type supported_types[] =
 };
 
 static Eina_Bool
-_item_changed_cb(void *data,
-                 Eo *obj, const Eo_Event_Description *desc EINA_UNUSED,
-                 void *event_info EINA_UNUSED)
+_item_changed_cb(void *data, const Eo_Event *event)
 {
    Elm_Prefs_Item_Changed_Cb prefs_it_changed_cb = data;
 
-   prefs_it_changed_cb(obj);
+   prefs_it_changed_cb(event->obj);
    return EINA_TRUE;
 }
 
diff --git a/src/modules/prefs/elm_check.c b/src/modules/prefs/elm_check.c
index b41243e..c5da552 100644
--- a/src/modules/prefs/elm_check.c
+++ b/src/modules/prefs/elm_check.c
@@ -7,13 +7,11 @@ static Elm_Prefs_Item_Type supported_types[] =
 };
 
 static Eina_Bool
-_item_changed_cb(void *data,
-                 Eo *obj, const Eo_Event_Description *desc EINA_UNUSED,
-                 void *event_info EINA_UNUSED)
+_item_changed_cb(void *data, const Eo_Event *event)
 {
     Elm_Prefs_Item_Changed_Cb prefs_it_changed_cb = data;
 
-    prefs_it_changed_cb(obj);
+    prefs_it_changed_cb(event->obj);
     return EINA_TRUE;
 }
 
diff --git a/src/modules/prefs/elm_datetime.c b/src/modules/prefs/elm_datetime.c
index 3637e91..cf076d5 100644
--- a/src/modules/prefs/elm_datetime.c
+++ b/src/modules/prefs/elm_datetime.c
@@ -7,13 +7,11 @@ static Elm_Prefs_Item_Type supported_types[] =
 };
 
 static Eina_Bool
-_item_changed_cb(void *data,
-                 Eo *obj, const Eo_Event_Description *desc EINA_UNUSED,
-                 void *event_info EINA_UNUSED)
+_item_changed_cb(void *data, const Eo_Event *event)
 {
    Elm_Prefs_Item_Changed_Cb prefs_it_changed_cb = data;
 
-   prefs_it_changed_cb(obj);
+   prefs_it_changed_cb(event->obj);
    return EINA_TRUE;
 }
 
diff --git a/src/modules/prefs/elm_entry.c b/src/modules/prefs/elm_entry.c
index ac299cb..3c15451 100644
--- a/src/modules/prefs/elm_entry.c
+++ b/src/modules/prefs/elm_entry.c
@@ -96,13 +96,11 @@ mismatch:
 }
 
 static Eina_Bool
-_item_changed_cb(void *data,
-                 Eo *obj, const Eo_Event_Description *desc EINA_UNUSED,
-                 void *event_info EINA_UNUSED)
+_item_changed_cb(void *data, const Eo_Event *event)
 {
    Elm_Prefs_Item_Changed_Cb prefs_it_changed_cb = data;
 
-   prefs_it_changed_cb(obj);
+   prefs_it_changed_cb(event->obj);
    return EINA_TRUE;
 }
 
diff --git a/src/modules/prefs/elm_slider.c b/src/modules/prefs/elm_slider.c
index bc64635..84bc418 100644
--- a/src/modules/prefs/elm_slider.c
+++ b/src/modules/prefs/elm_slider.c
@@ -8,13 +8,11 @@ static Elm_Prefs_Item_Type supported_types[] =
 };
 
 static Eina_Bool
-_item_changed_cb(void *data,
-                 Eo *obj, const Eo_Event_Description *desc EINA_UNUSED,
-                 void *event_info EINA_UNUSED)
+_item_changed_cb(void *data, const Eo_Event *event)
 {
    Elm_Prefs_Item_Changed_Cb prefs_it_changed_cb = data;
 
-   prefs_it_changed_cb(obj);
+   prefs_it_changed_cb(event->obj);
    return EINA_TRUE;
 }
 
diff --git a/src/modules/prefs/elm_spinner.c b/src/modules/prefs/elm_spinner.c
index 6617e33..45bfd85 100644
--- a/src/modules/prefs/elm_spinner.c
+++ b/src/modules/prefs/elm_spinner.c
@@ -8,13 +8,11 @@ static Elm_Prefs_Item_Type supported_types[] =
 };
 
 static Eina_Bool
-_item_changed_cb(void *data,
-                 Eo *obj, const Eo_Event_Description *desc EINA_UNUSED,
-                 void *event_info EINA_UNUSED)
+_item_changed_cb(void *data, const Eo_Event *event)
 {
     Elm_Prefs_Item_Changed_Cb prefs_it_changed_cb = data;
 
-    prefs_it_changed_cb(obj);
+    prefs_it_changed_cb(event->obj);
     return EINA_TRUE;
 }
 

-- 


Reply via email to