derekf pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=73aecd73abdb8cf12cd12b5e5eb2d7eb0d60fa81

commit 73aecd73abdb8cf12cd12b5e5eb2d7eb0d60fa81
Author: Derek Foreman <[email protected]>
Date:   Fri Feb 3 15:52:28 2017 -0600

    Replace all timer_add with timer_loop_add
    
    So yeah, I've literally used sed to replace every occurrence of
    ecore_time_add() with ecore_timer_loop_add() because I'm reasonably
    confident that no part of E has a legitimate need for timer based on the
    exact current time.
    
    It would be really nice if I'm not wrong. :)
    
    The reason for this is the incredible spew of clock_gettime() calls I'm
    seeing on an ARM system (that should have a vdso for gettime, but...)
    This can amount to thousands of system calls per second.
    
     #YOLO
---
 src/bin/e_actions.c                                  |  2 +-
 src/bin/e_backlight.c                                |  2 +-
 src/bin/e_bindings.c                                 |  2 +-
 src/bin/e_bryce.c                                    |  4 ++--
 src/bin/e_client.c                                   |  8 ++++----
 src/bin/e_comp.c                                     |  6 +++---
 src/bin/e_comp_canvas.c                              |  4 ++--
 src/bin/e_comp_wl.c                                  |  2 +-
 src/bin/e_comp_x.c                                   | 10 +++++-----
 src/bin/e_config.c                                   |  6 +++---
 src/bin/e_config_dialog.c                            |  2 +-
 src/bin/e_configure.c                                |  2 +-
 src/bin/e_dpms.c                                     |  6 +++---
 src/bin/e_exec.c                                     |  4 ++--
 src/bin/e_fm.c                                       | 20 ++++++++++----------
 src/bin/e_fm/e_fm_ipc.c                              |  4 ++--
 src/bin/e_fm/e_fm_main_eeze.c                        |  6 +++---
 src/bin/e_fm/e_fm_main_udisks.c                      | 12 ++++++------
 src/bin/e_fm/e_fm_main_udisks2.c                     |  8 ++++----
 src/bin/e_focus.c                                    |  2 +-
 src/bin/e_gadcon.c                                   |  4 ++--
 src/bin/e_icon.c                                     |  8 ++++----
 src/bin/e_ilist.c                                    |  2 +-
 src/bin/e_init.c                                     |  2 +-
 src/bin/e_int_gadcon_config.c                        |  4 ++--
 src/bin/e_int_menus.c                                |  2 +-
 src/bin/e_main.c                                     |  2 +-
 src/bin/e_module.c                                   |  4 ++--
 src/bin/e_order.c                                    |  2 +-
 src/bin/e_powersave.c                                |  4 ++--
 src/bin/e_randr2.c                                   |  4 ++--
 src/bin/e_screensaver.c                              | 14 +++++++-------
 src/bin/e_shelf.c                                    | 10 +++++-----
 src/bin/e_slider.c                                   |  2 +-
 src/bin/e_spectrum.c                                 |  2 +-
 src/bin/e_sys.c                                      | 10 +++++-----
 src/bin/e_test.c                                     | 18 +++++++++---------
 src/bin/e_thumb.c                                    |  2 +-
 src/bin/e_thumb_main.c                               |  4 ++--
 src/bin/e_update.c                                   |  2 +-
 src/bin/e_utils.c                                    |  6 +++---
 src/bin/e_video.c                                    |  2 +-
 src/bin/e_widget_ilist.c                             |  2 +-
 src/bin/e_xkb.c                                      |  4 ++--
 src/bin/e_xsettings.c                                |  2 +-
 src/bin/e_zone.c                                     |  2 +-
 src/modules/appmenu/e_mod_appmenu_render.c           |  2 +-
 src/modules/backlight/e_mod_main.c                   |  4 ++--
 src/modules/battery/batget.c                         |  8 ++++----
 src/modules/battery/e_mod_main.c                     |  2 +-
 src/modules/clock/e_mod_main.c                       |  2 +-
 src/modules/conf_applications/e_int_config_apps.c    |  4 ++--
 src/modules/everything/e_mod_main.c                  |  2 +-
 src/modules/everything/evry.c                        | 10 +++++-----
 src/modules/everything/evry_view_tabs.c              |  2 +-
 src/modules/fileman/e_fwin.c                         |  8 ++++----
 src/modules/fileman_opinfo/e_mod_main.c              |  2 +-
 src/modules/ibar/e_mod_main.c                        | 12 ++++++------
 src/modules/luncher/bar.c                            |  8 ++++----
 src/modules/luncher/grid.c                           |  2 +-
 src/modules/mixer/lib/backends/pulseaudio/pulse.c    |  2 +-
 src/modules/mixer/lib/backends/pulseaudio/pulse_ml.c |  4 ++--
 src/modules/notification/e_mod_main.c                |  2 +-
 src/modules/notification/e_mod_popup.c               |  2 +-
 src/modules/packagekit/e_mod_main.c                  |  2 +-
 src/modules/pager/e_mod_main.c                       |  6 +++---
 src/modules/pager/gadget/pager.c                     |  6 +++---
 src/modules/pager_plain/e_mod_main.c                 |  6 +++---
 src/modules/quickaccess/e_mod_quickaccess.c          |  8 ++++----
 src/modules/shot/e_mod_main.c                        |  4 ++--
 src/modules/syscon/e_syscon.c                        |  2 +-
 src/modules/sysinfo/batman/batman.c                  |  2 +-
 src/modules/sysinfo/batman/batman_fallback.c         |  8 ++++----
 src/modules/tasks/e_mod_main.c                       |  2 +-
 src/modules/teamwork/e_mod_tw.c                      |  8 ++++----
 src/modules/tiling/e_mod_tiling.c                    |  2 +-
 src/modules/time/clock.c                             |  2 +-
 src/modules/time/time.c                              |  2 +-
 src/modules/winlist/e_winlist.c                      |  2 +-
 src/modules/wizard/e_wizard.c                        |  4 ++--
 src/modules/wizard/page_000.c                        |  2 +-
 src/modules/wizard/page_040.c                        |  2 +-
 src/modules/wizard/page_110.c                        |  2 +-
 src/modules/xkbswitch/e_mod_config.c                 |  6 +++---
 src/tests/focusgrab.c                                |  2 +-
 src/tests/fullscreen.c                               |  2 +-
 src/tests/override_fullscreen.c                      |  2 +-
 src/tests/shaped_input.c                             |  2 +-
 88 files changed, 198 insertions(+), 198 deletions(-)

diff --git a/src/bin/e_actions.c b/src/bin/e_actions.c
index 42a716f..0cfcd1d 100644
--- a/src/bin/e_actions.c
+++ b/src/bin/e_actions.c
@@ -2686,7 +2686,7 @@ _delayed_action_list_parse(Delayed_Action *da, const char 
*params)
         eina_strlcpy(a2, a2start, a2stop - a2start + 1);
         _delayed_action_list_parse_action(a2, &delay, &da->delayed.action, 
&da->delayed.params);
      }
-   da->timer = ecore_timer_add(delay, _delayed_action_cb_timer, da);
+   da->timer = ecore_timer_loop_add(delay, _delayed_action_cb_timer, da);
 }
 
 static void
diff --git a/src/bin/e_backlight.c b/src/bin/e_backlight.c
index 69583f6..5e9c786 100644
--- a/src/bin/e_backlight.c
+++ b/src/bin/e_backlight.c
@@ -496,7 +496,7 @@ _e_bl_cb_exit(void *data EINA_UNUSED, int type EINA_UNUSED, 
void *event)
      {
         bl_sys_set_exe_ready = EINA_FALSE;
         bl_sys_set_exe = NULL;
-        ecore_timer_add(0.05, _e_bl_cb_ext_delay, NULL);
+        ecore_timer_loop_add(0.05, _e_bl_cb_ext_delay, NULL);
      }
    return ECORE_CALLBACK_RENEW;
 }
diff --git a/src/bin/e_bindings.c b/src/bin/e_bindings.c
index dc0c5b2..79b0fdf 100644
--- a/src/bin/e_bindings.c
+++ b/src/bin/e_bindings.c
@@ -904,7 +904,7 @@ e_bindings_edge_in_event_handle(E_Binding_Context ctxt, 
E_Object *obj, E_Event_Z
    ed->obj = obj;
    ed->act = act;
    ed->ev = ev2;
-   binding->timer = ecore_timer_add(((double)binding->delay), 
_e_bindings_edge_cb_timer, ed);
+   binding->timer = ecore_timer_loop_add(((double)binding->delay), 
_e_bindings_edge_cb_timer, ed);
    return act;
 }
 
diff --git a/src/bin/e_bryce.c b/src/bin/e_bryce.c
index a8e38e6..7fd223b8 100644
--- a/src/bin/e_bryce.c
+++ b/src/bin/e_bryce.c
@@ -303,7 +303,7 @@ _bryce_autohide_hide(Bryce *b)
    if (b->autohide_timer)
      ecore_timer_reset(b->autohide_timer);
    else
-     b->autohide_timer = ecore_timer_add(1.0, 
(Ecore_Task_Cb)_bryce_autohide_timeout, b);
+     b->autohide_timer = ecore_timer_loop_add(1.0, 
(Ecore_Task_Cb)_bryce_autohide_timeout, b);
 }
 
 static void
@@ -503,7 +503,7 @@ _bryce_moveresize(void *data, Evas *e EINA_UNUSED, 
Evas_Object *obj, void *event
         if (b->save_timer)
           ecore_timer_reset(b->save_timer);
         else
-          b->save_timer = ecore_timer_add(0.5, _bryce_moveresize_save, b);
+          b->save_timer = ecore_timer_loop_add(0.5, _bryce_moveresize_save, b);
      }
 
    if (starting) return;
diff --git a/src/bin/e_client.c b/src/bin/e_client.c
index bc4e254..82267f3 100644
--- a/src/bin/e_client.c
+++ b/src/bin/e_client.c
@@ -875,7 +875,7 @@ _e_client_action_move_timeout_add(void)
 {
    E_FREE_FUNC(action_timer, ecore_timer_del);
    if (EINA_DBL_NONZERO(e_config->border_keyboard.timeout))
-     action_timer = ecore_timer_add(e_config->border_keyboard.timeout, 
_e_client_action_move_timeout, NULL);
+     action_timer = ecore_timer_loop_add(e_config->border_keyboard.timeout, 
_e_client_action_move_timeout, NULL);
 }
 
 static Eina_Bool
@@ -1095,7 +1095,7 @@ _e_client_action_resize_timeout_add(void)
 {
    E_FREE_FUNC(action_timer, ecore_timer_del);
    if (EINA_DBL_NONZERO(e_config->border_keyboard.timeout))
-     action_timer = ecore_timer_add(e_config->border_keyboard.timeout, 
_e_client_action_resize_timeout, NULL);
+     action_timer = ecore_timer_loop_add(e_config->border_keyboard.timeout, 
_e_client_action_resize_timeout, NULL);
 }
 
 static Eina_Bool
@@ -4952,7 +4952,7 @@ e_client_act_kill_begin(E_Client *ec)
    if ((ec->netwm.pid > 1) && (e_config->kill_process))
      {
         kill(ec->netwm.pid, SIGINT);
-        ec->kill_timer = ecore_timer_add(e_config->kill_timer_wait,
+        ec->kill_timer = ecore_timer_loop_add(e_config->kill_timer_wait,
                                          _e_client_cb_kill_timer, ec);
      }
    else
@@ -5423,7 +5423,7 @@ e_client_pointer_warp_to_center(E_Client *ec)
    warp_client = ec;
    ecore_evas_pointer_xy_get(e_comp->ee, &warp_x[0], &warp_y[0]);
    if (warp_timer) ecore_timer_del(warp_timer);
-   warp_timer = ecore_timer_add(0.01, _e_client_pointer_warp_to_center_timer, 
ec);
+   warp_timer = ecore_timer_loop_add(0.01, 
_e_client_pointer_warp_to_center_timer, ec);
    return 1;
 }
 
diff --git a/src/bin/e_comp.c b/src/bin/e_comp.c
index f83f4fe..4c94bc3 100644
--- a/src/bin/e_comp.c
+++ b/src/bin/e_comp.c
@@ -526,7 +526,7 @@ nocomp:
              else if ((!e_comp->nocomp) && (!e_comp->nocomp_override))
                {
                   if (!e_comp->nocomp_delay_timer)
-                    e_comp->nocomp_delay_timer = ecore_timer_add(1.0, 
_e_comp_cb_nocomp_begin_timeout, NULL);
+                    e_comp->nocomp_delay_timer = ecore_timer_loop_add(1.0, 
_e_comp_cb_nocomp_begin_timeout, NULL);
                }
           }
      }
@@ -1348,7 +1348,7 @@ e_comp_style_selector_create(Evas *evas, const char 
**source)
      }
    evas_object_data_set(orec0, "list", style_list);
    evas_object_data_set(oi, "style_shadows", style_shadows);
-   timer = ecore_timer_add(3.0, _style_demo, oi);
+   timer = ecore_timer_loop_add(3.0, _style_demo, oi);
    evas_object_data_set(oi, "style_timer", timer);
    evas_object_data_set(oi, "style_demo_state", (void *)1);
    e_widget_size_min_get(oi, &wmw, &wmh);
@@ -1607,7 +1607,7 @@ e_comp_override_timed_pop(void)
    if (e_comp->nocomp_override_timer)
      e_comp->nocomp_override--;
    else
-     e_comp->nocomp_override_timer = ecore_timer_add(1.0, 
_e_comp_override_expire, NULL);
+     e_comp->nocomp_override_timer = ecore_timer_loop_add(1.0, 
_e_comp_override_expire, NULL);
 }
 
 E_API unsigned int
diff --git a/src/bin/e_comp_canvas.c b/src/bin/e_comp_canvas.c
index 29fdd13..b5671d7 100644
--- a/src/bin/e_comp_canvas.c
+++ b/src/bin/e_comp_canvas.c
@@ -258,7 +258,7 @@ _e_comp_canvas_screensaver_active(void *d EINA_UNUSED, 
Evas_Object *obj EINA_UNU
 {
    if (timer_post_screensaver_on) return;
    /* thawed in _e_comp_screensaver_off() */
-   timer_post_screensaver_on = ecore_timer_add
+   timer_post_screensaver_on = ecore_timer_loop_add
      (1.0, _e_comp_cb_screensaver_active_delay, NULL);
 }
 
@@ -279,7 +279,7 @@ _e_comp_cb_screensaver_on()
         if (e_config->desklock_post_screensaver_time <= 1.0)
           e_desklock_show_autolocked();
         else
-          timer_post_screensaver_lock = ecore_timer_add
+          timer_post_screensaver_lock = ecore_timer_loop_add
               (e_config->desklock_post_screensaver_time,
               _e_comp_cb_timer_post_screensaver_lock, NULL);
      }
diff --git a/src/bin/e_comp_wl.c b/src/bin/e_comp_wl.c
index 8299c62..478b3d4 100644
--- a/src/bin/e_comp_wl.c
+++ b/src/bin/e_comp_wl.c
@@ -659,7 +659,7 @@ _e_comp_wl_evas_cb_focus_in(void *data, Evas *evas 
EINA_UNUSED, Evas_Object *obj
    if (e_comp_util_kbd_grabbed()) return;
    e_comp_wl_data_device_keyboard_focus_set();
    ec->comp_data->on_focus_timer =
-     ecore_timer_add(0.8, (Ecore_Task_Cb)_e_comp_wl_evas_cb_focus_in_timer, 
ec);
+     ecore_timer_loop_add(0.8, 
(Ecore_Task_Cb)_e_comp_wl_evas_cb_focus_in_timer, ec);
 }
 
 static void
diff --git a/src/bin/e_comp_x.c b/src/bin/e_comp_x.c
index e906eb1..6fd584b 100644
--- a/src/bin/e_comp_x.c
+++ b/src/bin/e_comp_x.c
@@ -1484,7 +1484,7 @@ _e_comp_x_show(void *data EINA_UNUSED, int type 
EINA_UNUSED, Ecore_X_Event_Windo
              if (c->x_comp_data->retry_timer)
                ecore_timer_reset(c->x_comp_data->retry_timer);
              else
-               c->x_comp_data->retry_timer = ecore_timer_add(0.02, 
_e_comp_x_show_retry, c);
+               c->x_comp_data->retry_timer = ecore_timer_loop_add(0.02, 
_e_comp_x_show_retry, c);
              c->x_comp_data->retry_clients = 
eina_list_append(c->x_comp_data->retry_clients, (uintptr_t*)(unsigned 
long)ev->win);
              return ECORE_CALLBACK_RENEW;
           }
@@ -2879,7 +2879,7 @@ _e_comp_x_focus_timer(void)
    if (focus_timer)
      ecore_timer_reset(focus_timer);
    else /* focus has changed twice in .002 seconds; .01 seconds should be more 
than enough delay */
-     focus_timer = ecore_timer_add(0.01, _e_comp_x_focus_timer_cb, NULL);
+     focus_timer = ecore_timer_loop_add(0.01, _e_comp_x_focus_timer_cb, NULL);
 }
 
 static Eina_Bool
@@ -4571,7 +4571,7 @@ _e_comp_x_hook_client_new(void *d EINA_UNUSED, E_Client 
*ec)
 
    eina_hash_add(clients_win_hash, &win, ec);
    if (!ec->input_only)
-     ec->comp_data->first_draw_delay = 
ecore_timer_add(e_comp_config_get()->first_draw_delay, 
_e_comp_x_first_draw_delay_cb, ec);
+     ec->comp_data->first_draw_delay = 
ecore_timer_loop_add(e_comp_config_get()->first_draw_delay, 
_e_comp_x_first_draw_delay_cb, ec);
 }
 
 static void
@@ -4895,13 +4895,13 @@ _e_comp_x_screensaver_notify_cb(void *data EINA_UNUSED, 
int type EINA_UNUSED, Ec
      {
         saver_on = EINA_TRUE;
         E_FREE_FUNC(screensaver_eval_timer, ecore_timer_del);
-        screensaver_eval_timer = ecore_timer_add(0.3, 
_e_comp_x_screensaver_eval_cb, NULL);
+        screensaver_eval_timer = ecore_timer_loop_add(0.3, 
_e_comp_x_screensaver_eval_cb, NULL);
      }
    else if ((!ev->on) && (saver_on))
      {
         saver_on = EINA_FALSE;
         E_FREE_FUNC(screensaver_eval_timer, ecore_timer_del);
-        screensaver_eval_timer = ecore_timer_add(0.3, 
_e_comp_x_screensaver_eval_cb, NULL);
+        screensaver_eval_timer = ecore_timer_loop_add(0.3, 
_e_comp_x_screensaver_eval_cb, NULL);
      }
    return ECORE_CALLBACK_PASS_ON;
 }
diff --git a/src/bin/e_config.c b/src/bin/e_config.c
index b746010..df737c8 100644
--- a/src/bin/e_config.c
+++ b/src/bin/e_config.c
@@ -1020,7 +1020,7 @@ e_config_load(void)
              _e_config_free(e_config);
              e_config = NULL;
              reload = 1;
-             ecore_timer_add(1.0, _e_config_cb_timer,
+             ecore_timer_loop_add(1.0, _e_config_cb_timer,
                              _("Settings data needed upgrading. Your old 
settings have<br>"
                                "been wiped and a new set of defaults 
initialized. This<br>"
                                "will happen regularly during development, so 
don't report a<br>"
@@ -1037,7 +1037,7 @@ e_config_load(void)
              _e_config_free(e_config);
              e_config = NULL;
              reload = 1;
-             ecore_timer_add(1.0, _e_config_cb_timer,
+             ecore_timer_loop_add(1.0, _e_config_cb_timer,
                              _("Your settings are NEWER than Enlightenment. 
This is very<br>"
                                "strange. This should not happen unless you 
downgraded<br>"
                                "Enlightenment or copied the settings from a 
place where<br>"
@@ -1153,7 +1153,7 @@ e_config_load(void)
         e_bindings = e_config_domain_system_load("e_bindings", 
_e_config_binding_edd);
         e_config_profile_set(prof);
         eina_stringshare_del(prof);
-        ecore_timer_add(1.0, _e_config_cb_timer,
+        ecore_timer_loop_add(1.0, _e_config_cb_timer,
                         _("Your bindings settings version does not match the 
current settings version.<br>"
                           "As a result, all bindings have been reloaded from 
defaults.<br>"
                           "Sorry for the inconvenience.<br>"));
diff --git a/src/bin/e_config_dialog.c b/src/bin/e_config_dialog.c
index 08df400..8643189 100644
--- a/src/bin/e_config_dialog.c
+++ b/src/bin/e_config_dialog.c
@@ -413,7 +413,7 @@ _e_config_dialog_changed(E_Config_Dialog *cfd)
         if (cfd->auto_apply_timer) ecore_timer_del(cfd->auto_apply_timer);
         cfd->auto_apply_timer = NULL;
         cfd->auto_apply_timer =
-          ecore_timer_add(0.5, _e_config_dialog_cb_auto_apply_timer, cfd);
+          ecore_timer_loop_add(0.5, _e_config_dialog_cb_auto_apply_timer, cfd);
      }
 }
 
diff --git a/src/bin/e_configure.c b/src/bin/e_configure.c
index a43396f..ab59897 100644
--- a/src/bin/e_configure.c
+++ b/src/bin/e_configure.c
@@ -43,7 +43,7 @@ e_configure_init(void)
         ecore_job_del(update_job);
         update_job = NULL;
      }
-   ecore_timer_add(0.0, _configure_init_timer, NULL);
+   ecore_timer_loop_add(0.0, _configure_init_timer, NULL);
 }
 
 E_API void
diff --git a/src/bin/e_dpms.c b/src/bin/e_dpms.c
index 718b555..3e996f9 100644
--- a/src/bin/e_dpms.c
+++ b/src/bin/e_dpms.c
@@ -163,9 +163,9 @@ _e_dpms_off(void *d EINA_UNUSED)
 static Eina_Bool
 _e_dpms_screensaver_on()
 {
-   standby_timer = ecore_timer_add(STANDBY, _e_dpms_standby, NULL);
-   suspend_timer = ecore_timer_add(SUSPEND, _e_dpms_suspend, NULL);
-   off_timer = ecore_timer_add(OFF, _e_dpms_off, NULL);
+   standby_timer = ecore_timer_loop_add(STANDBY, _e_dpms_standby, NULL);
+   suspend_timer = ecore_timer_loop_add(SUSPEND, _e_dpms_suspend, NULL);
+   off_timer = ecore_timer_loop_add(OFF, _e_dpms_off, NULL);
    return ECORE_CALLBACK_RENEW;
 }
 
diff --git a/src/bin/e_exec.c b/src/bin/e_exec.c
index 702ede4..e157163 100644
--- a/src/bin/e_exec.c
+++ b/src/bin/e_exec.c
@@ -548,7 +548,7 @@ _e_exec_cb_exec(void *data, Efreet_Desktop *desktop, char 
*exec, int remaining)
    inst->exe = exe;
    inst->startup_id = startup_id;
    inst->launch_time = ecore_time_get();
-   inst->expire_timer = ecore_timer_add(e_config->exec.expire_timeout,
+   inst->expire_timer = ecore_timer_loop_add(e_config->exec.expire_timeout,
                                         _e_exec_cb_expire_timer, inst);
    l = eina_hash_find(e_exec_instances, inst->key);
    lnew = eina_list_append(l, inst);
@@ -750,7 +750,7 @@ _e_exec_cb_exit(void *data EINA_UNUSED, int type 
EINA_UNUSED, void *event)
      {
         inst->exe = NULL;
         if (inst->expire_timer) ecore_timer_del(inst->expire_timer);
-        inst->expire_timer = ecore_timer_add(e_config->exec.expire_timeout, 
_e_exec_cb_instance_finish, inst);
+        inst->expire_timer = 
ecore_timer_loop_add(e_config->exec.expire_timeout, _e_exec_cb_instance_finish, 
inst);
      }
    else
  */
diff --git a/src/bin/e_fm.c b/src/bin/e_fm.c
index 048c4d2..e2f5e09 100644
--- a/src/bin/e_fm.c
+++ b/src/bin/e_fm.c
@@ -824,8 +824,8 @@ e_fm2_init(void)
    efreet_mime_init();
 
    /* XXX: move this to a central/global place? */
-   _e_fm2_mime_flush = ecore_timer_add(60.0, _e_fm2_mime_flush_cb, NULL);
-   _e_fm2_mime_clear = ecore_timer_add(600.0, _e_fm2_mime_clear_cb, NULL);
+   _e_fm2_mime_flush = ecore_timer_loop_add(60.0, _e_fm2_mime_flush_cb, NULL);
+   _e_fm2_mime_clear = ecore_timer_loop_add(600.0, _e_fm2_mime_clear_cb, NULL);
 
    _e_fm2_icon_desktop_str = eina_stringshare_add("DESKTOP");
    _e_fm2_icon_thumb_str = eina_stringshare_add("THUMB");
@@ -2868,7 +2868,7 @@ e_fm2_client_data(Ecore_Ipc_Event_Client_Data *e)
                         if (!sd->scan_timer)
                           {
                              sd->scan_timer =
-                               ecore_timer_add(0.5,
+                               ecore_timer_loop_add(0.5,
                                                _e_fm2_cb_scan_timer,
                                                sd->obj);
                              sd->busy_count++;
@@ -2940,7 +2940,7 @@ e_fm2_client_data(Ecore_Ipc_Event_Client_Data *e)
                      {
                         ecore_timer_del(sd->scan_timer);
                         sd->scan_timer =
-                          ecore_timer_add(0.0001,
+                          ecore_timer_loop_add(0.0001,
                                           _e_fm2_cb_scan_timer,
                                           sd->obj);
                      }
@@ -5961,7 +5961,7 @@ _e_fm2_typebuf_match(Evas_Object *obj, int next)
      ;
 
    if (sd->typebuf.timer) ecore_timer_reset(sd->typebuf.timer);
-   else sd->typebuf.timer = ecore_timer_add(3.5, _e_fm_typebuf_timer_cb, sd);
+   else sd->typebuf.timer = ecore_timer_loop_add(3.5, _e_fm_typebuf_timer_cb, 
sd);
    return ic_match;
 }
 
@@ -7024,7 +7024,7 @@ _e_fm2_cb_dnd_selection_notify(void *data, const char 
*type, void *event)
                                                                    NULL, vol);
 
                        if (sd->drop_icon->mount_timer) 
ecore_timer_reset(sd->drop_icon->mount_timer);
-                       else sd->drop_icon->mount_timer = ecore_timer_add(15., 
(Ecore_Task_Cb)_e_fm2_cb_dnd_selection_notify_post_mount_timer, sd->drop_icon);
+                       else sd->drop_icon->mount_timer = 
ecore_timer_loop_add(15., 
(Ecore_Task_Cb)_e_fm2_cb_dnd_selection_notify_post_mount_timer, sd->drop_icon);
 #ifndef HAVE_WAYLAND_ONLY
                        if ((e_drop_handler_action_get() == 
ECORE_X_ATOM_XDND_ACTION_ASK) ||
                            ((sd->config->view.link_drop) || (!sd->drop_icon)))
@@ -7482,7 +7482,7 @@ _e_fm2_cb_drag_finished(E_Drag *drag, int dropped 
EINA_UNUSED)
                                  if (ic->sd->dnd_scroller) 
ecore_animator_del(ic->sd->dnd_scroller);
                                  ic->sd->dnd_scroller = NULL;
                                  if (ic->drag.dnd_end_timer) 
ecore_timer_reset(ic->drag.dnd_end_timer);
-                                 else ic->drag.dnd_end_timer = 
ecore_timer_add(0.2, (Ecore_Task_Cb)_e_fm2_cb_drag_finished_show, ic);
+                                 else ic->drag.dnd_end_timer = 
ecore_timer_loop_add(0.2, (Ecore_Task_Cb)_e_fm2_cb_drag_finished_show, ic);
                                  /* NOTE:
                                   * do not touch ic after this callback; it's 
possible that it may have been deleted
                                   */
@@ -8439,7 +8439,7 @@ _e_fm2_cb_scan_timer(void *data)
         return ECORE_CALLBACK_CANCEL;
      }
    if (sd->busy_count > 0)
-     sd->scan_timer = ecore_timer_add(0.2, _e_fm2_cb_scan_timer, sd->obj);
+     sd->scan_timer = ecore_timer_loop_add(0.2, _e_fm2_cb_scan_timer, sd->obj);
    else
      {
         if (!sd->sort_idler)
@@ -11238,7 +11238,7 @@ _e_fm2_live_process_begin(Evas_Object *obj)
    if ((sd->live.idler) || (sd->live.timer) ||
        (sd->listing) || (sd->scan_timer)) return;
    sd->live.idler = ecore_idler_add(_e_fm2_cb_live_idler, obj);
-   sd->live.timer = ecore_timer_add(0.2, _e_fm2_cb_live_timer, obj);
+   sd->live.timer = ecore_timer_loop_add(0.2, _e_fm2_cb_live_timer, obj);
    sd->tmp.last_insert = NULL;
 }
 
@@ -11414,7 +11414,7 @@ _e_fm2_cb_live_timer(void *data)
    sd->live.deletions = EINA_FALSE;
    sd->live.timer = NULL;
    if ((!sd->queue) && (!sd->live.idler)) return ECORE_CALLBACK_CANCEL;
-   sd->live.timer = ecore_timer_add(0.2, _e_fm2_cb_live_timer, data);
+   sd->live.timer = ecore_timer_loop_add(0.2, _e_fm2_cb_live_timer, data);
    return ECORE_CALLBACK_CANCEL;
 }
 
diff --git a/src/bin/e_fm/e_fm_ipc.c b/src/bin/e_fm/e_fm_ipc.c
index 09fb470..abaef6d 100644
--- a/src/bin/e_fm/e_fm_ipc.c
+++ b/src/bin/e_fm/e_fm_ipc.c
@@ -1051,7 +1051,7 @@ _e_fm_ipc_file_add_mod(E_Dir *ed, const char *path, 
E_Fm_Op_Type op, int listing
              ed->recent_mods = eina_list_append(ed->recent_mods, m);
           }
         if ((!ed->recent_clean) && (ed->recent_mods))
-          ed->recent_clean = ecore_timer_add(DEF_MOD_BACKOFF, 
_e_fm_ipc_cb_recent_clean, ed);
+          ed->recent_clean = ecore_timer_loop_add(DEF_MOD_BACKOFF, 
_e_fm_ipc_cb_recent_clean, ed);
         if (skip)
           {
 //          printf("SKIP MOD %s %3.3f\n", path, t_now);
@@ -1372,7 +1372,7 @@ e_fm_ipc_volume_add(E_Volume *v)
    if (_init_timer && (!_init_timer_run))
      ecore_timer_reset(_init_timer);
    else if ((!_init_timer) && (!_init_timer_run))
-     _init_timer = ecore_timer_add(2.0, _e_fm_ipc_timer_cb, NULL);
+     _init_timer = ecore_timer_loop_add(2.0, _e_fm_ipc_timer_cb, NULL);
 
    msg_data = _e_fm_shared_codec_volume_encode(v, &msg_size);
    if (!msg_data) return;
diff --git a/src/bin/e_fm/e_fm_main_eeze.c b/src/bin/e_fm/e_fm_main_eeze.c
index 8f22ace..a63a649 100644
--- a/src/bin/e_fm/e_fm_main_eeze.c
+++ b/src/bin/e_fm/e_fm_main_eeze.c
@@ -312,7 +312,7 @@ _e_fm_main_eeze_volume_eject(E_Volume *v)
         snprintf(buf, sizeof(buf), "%s/enlightenment/utils/enlightenment_sys", 
eina_prefix_lib_get(pfx));
         eeze_disk_mount_wrapper_set(v->disk, buf);
      }
-   v->guard = ecore_timer_add(E_FM_EJECT_TIMEOUT, 
(Ecore_Task_Cb)_e_fm_main_eeze_vol_eject_timeout, v);
+   v->guard = ecore_timer_loop_add(E_FM_EJECT_TIMEOUT, 
(Ecore_Task_Cb)_e_fm_main_eeze_vol_eject_timeout, v);
    eeze_disk_eject(v->disk);
 }
 
@@ -505,7 +505,7 @@ _e_fm_main_eeze_volume_unmount(E_Volume *v)
         snprintf(buf, sizeof(buf), "%s/enlightenment/utils/enlightenment_sys", 
eina_prefix_lib_get(pfx));
         eeze_disk_mount_wrapper_set(v->disk, buf);
      }
-   v->guard = ecore_timer_add(E_FM_UNMOUNT_TIMEOUT, 
(Ecore_Task_Cb)_e_fm_main_eeze_vol_unmount_timeout, v);
+   v->guard = ecore_timer_loop_add(E_FM_UNMOUNT_TIMEOUT, 
(Ecore_Task_Cb)_e_fm_main_eeze_vol_unmount_timeout, v);
    eeze_disk_unmount(v->disk);
 }
 
@@ -541,7 +541,7 @@ _e_fm_main_eeze_volume_mount(E_Volume *v)
         snprintf(buf2, sizeof(buf2), 
"%s/enlightenment/utils/enlightenment_sys", eina_prefix_lib_get(pfx));
         eeze_disk_mount_wrapper_set(v->disk, buf2);
      }
-   v->guard = ecore_timer_add(E_FM_MOUNT_TIMEOUT, 
(Ecore_Task_Cb)_e_fm_main_eeze_vol_mount_timeout, v);
+   v->guard = ecore_timer_loop_add(E_FM_MOUNT_TIMEOUT, 
(Ecore_Task_Cb)_e_fm_main_eeze_vol_mount_timeout, v);
    INF("MOUNT: %s", v->udi);
    if (!eeze_disk_mount(v->disk)) goto error;
    return;
diff --git a/src/bin/e_fm/e_fm_main_udisks.c b/src/bin/e_fm/e_fm_main_udisks.c
index 82ffa4b..fe8004e 100644
--- a/src/bin/e_fm/e_fm_main_udisks.c
+++ b/src/bin/e_fm/e_fm_main_udisks.c
@@ -835,7 +835,7 @@ _volume_mount(Eldbus_Proxy *proxy, const char *fstype, 
Eina_List *opt)
 static Eina_Bool
 _e_fm_main_udisks_cb_vol_ejecting_after_unmount(E_Volume *v)
 {
-   v->guard = ecore_timer_add(E_FM_EJECT_TIMEOUT, 
(Ecore_Task_Cb)_e_fm_main_udisks_vol_eject_timeout, v);
+   v->guard = ecore_timer_loop_add(E_FM_EJECT_TIMEOUT, 
(Ecore_Task_Cb)_e_fm_main_udisks_vol_eject_timeout, v);
    v->op = _volume_eject(v->storage->proxy);
 
    return ECORE_CALLBACK_CANCEL;
@@ -847,7 +847,7 @@ _e_fm_main_udisks_cb_vol_unmounted_before_eject(E_Volume    
  *v)
    _e_fm_main_udisks_cb_vol_unmounted(v);
 
    // delay is required for all message handlers were executed after unmount
-   ecore_timer_add(1.0, 
(Ecore_Task_Cb)_e_fm_main_udisks_cb_vol_ejecting_after_unmount, v);
+   ecore_timer_loop_add(1.0, 
(Ecore_Task_Cb)_e_fm_main_udisks_cb_vol_ejecting_after_unmount, v);
 }
 
 static void
@@ -974,12 +974,12 @@ _e_fm_main_udisks_volume_eject(E_Volume *v)
    if (!v || v->guard) return;
    if (v->mounted)
      {
-        v->guard = ecore_timer_add(E_FM_UNMOUNT_TIMEOUT, 
(Ecore_Task_Cb)_e_fm_main_udisks_vol_unmount_timeout, v);
+        v->guard = ecore_timer_loop_add(E_FM_UNMOUNT_TIMEOUT, 
(Ecore_Task_Cb)_e_fm_main_udisks_vol_unmount_timeout, v);
         v->op = _volume_umount(v->proxy);
      }
    else
      {
-        v->guard = ecore_timer_add(E_FM_EJECT_TIMEOUT, 
(Ecore_Task_Cb)_e_fm_main_udisks_vol_eject_timeout, v);
+        v->guard = ecore_timer_loop_add(E_FM_EJECT_TIMEOUT, 
(Ecore_Task_Cb)_e_fm_main_udisks_vol_eject_timeout, v);
         v->op = _volume_eject(v->storage->proxy);
      }
    v->optype = E_VOLUME_OP_TYPE_EJECT;
@@ -991,7 +991,7 @@ _e_fm_main_udisks_volume_unmount(E_Volume *v)
    if (!v || v->guard) return;
    INF("unmount %s %s", v->udi, v->mount_point);
 
-   v->guard = ecore_timer_add(E_FM_UNMOUNT_TIMEOUT, 
(Ecore_Task_Cb)_e_fm_main_udisks_vol_unmount_timeout, v);
+   v->guard = ecore_timer_loop_add(E_FM_UNMOUNT_TIMEOUT, 
(Ecore_Task_Cb)_e_fm_main_udisks_vol_unmount_timeout, v);
    v->op = _volume_umount(v->proxy);
    v->optype = E_VOLUME_OP_TYPE_UNMOUNT;
 }
@@ -1040,7 +1040,7 @@ _e_fm_main_udisks_volume_mount(E_Volume *v)
         opt = eina_list_append(opt, buf2);
      }
 
-   v->guard = ecore_timer_add(E_FM_MOUNT_TIMEOUT, 
(Ecore_Task_Cb)_e_fm_main_udisks_vol_mount_timeout, v);
+   v->guard = ecore_timer_loop_add(E_FM_MOUNT_TIMEOUT, 
(Ecore_Task_Cb)_e_fm_main_udisks_vol_mount_timeout, v);
 
    // It was previously noted here that ubuntu 10.04 failed to mount if opt 
was passed to
    // e_udisks_volume_mount.  The reason at the time was unknown and 
apparently never found.
diff --git a/src/bin/e_fm/e_fm_main_udisks2.c b/src/bin/e_fm/e_fm_main_udisks2.c
index a006989..4964ca7 100644
--- a/src/bin/e_fm/e_fm_main_udisks2.c
+++ b/src/bin/e_fm/e_fm_main_udisks2.c
@@ -1129,13 +1129,13 @@ _e_fm_main_udisks2_volume_eject(E_Volume *v)
      }
    if (v->mounted)
      {
-        v->guard = ecore_timer_add(E_FM_UNMOUNT_TIMEOUT, 
(Ecore_Task_Cb)_e_fm_main_udisks2_vol_unmount_timeout, v);
+        v->guard = ecore_timer_loop_add(E_FM_UNMOUNT_TIMEOUT, 
(Ecore_Task_Cb)_e_fm_main_udisks2_vol_unmount_timeout, v);
         v->op = _volume_umount(v);
         vols_ejecting = eina_list_append(vols_ejecting, v);
      }
    else
      {
-        v->guard = ecore_timer_add(E_FM_EJECT_TIMEOUT, 
(Ecore_Task_Cb)_e_fm_main_udisks2_vol_eject_timeout, v);
+        v->guard = ecore_timer_loop_add(E_FM_EJECT_TIMEOUT, 
(Ecore_Task_Cb)_e_fm_main_udisks2_vol_eject_timeout, v);
         v->op = _volume_eject(v->storage->proxy);
      }
    v->optype = E_VOLUME_OP_TYPE_EJECT;
@@ -1147,7 +1147,7 @@ _e_fm_main_udisks2_volume_unmount(E_Volume *v)
    if (!v || v->guard) return;
    INF("unmount %s %s", v->udi, v->mount_point);
 
-   v->guard = ecore_timer_add(E_FM_UNMOUNT_TIMEOUT, 
(Ecore_Task_Cb)_e_fm_main_udisks2_vol_unmount_timeout, v);
+   v->guard = ecore_timer_loop_add(E_FM_UNMOUNT_TIMEOUT, 
(Ecore_Task_Cb)_e_fm_main_udisks2_vol_unmount_timeout, v);
    v->op = _volume_umount(v);
    v->optype = E_VOLUME_OP_TYPE_UNMOUNT;
 }
@@ -1178,7 +1178,7 @@ _e_fm_main_udisks2_volume_mount(E_Volume *v)
    else if (!strcmp(v->fstype, "ntfs"))
      snprintf(buf, sizeof(buf), "uid=%i", (int)getuid());
 
-   v->guard = ecore_timer_add(E_FM_MOUNT_TIMEOUT, 
(Ecore_Task_Cb)_e_fm_main_udisks2_vol_mount_timeout, v);
+   v->guard = ecore_timer_loop_add(E_FM_MOUNT_TIMEOUT, 
(Ecore_Task_Cb)_e_fm_main_udisks2_vol_mount_timeout, v);
 
    // It was previously noted here that ubuntu 10.04 failed to mount if opt 
was passed to
    // e_udisks2_volume_mount.  The reason at the time was unknown and 
apparently never found.
diff --git a/src/bin/e_focus.c b/src/bin/e_focus.c
index 712dae8..5dd3d7b 100644
--- a/src/bin/e_focus.c
+++ b/src/bin/e_focus.c
@@ -24,7 +24,7 @@ e_focus_event_mouse_in(E_Client *ec)
                evas_object_raise(ec->frame);
           }
         else
-          ec->raise_timer = ecore_timer_add(e_config->auto_raise_delay, 
_e_focus_raise_timer, ec);
+          ec->raise_timer = ecore_timer_loop_add(e_config->auto_raise_delay, 
_e_focus_raise_timer, ec);
      }
 }
 
diff --git a/src/bin/e_gadcon.c b/src/bin/e_gadcon.c
index bd62137..081f44b 100644
--- a/src/bin/e_gadcon.c
+++ b/src/bin/e_gadcon.c
@@ -1939,7 +1939,7 @@ e_gadcon_client_autoscroll_update(E_Gadcon_Client *gcc, 
Evas_Coord x, Evas_Coord
           d = 1.0;
         if (!gcc->scroll_timer)
           gcc->scroll_timer =
-            ecore_timer_add(0.01, _e_gadcon_cb_client_scroll_timer, gcc);
+            ecore_timer_loop_add(0.01, _e_gadcon_cb_client_scroll_timer, gcc);
         if (!gcc->scroll_animator)
           gcc->scroll_animator =
             ecore_animator_add(_e_gadcon_cb_client_scroll_animator, gcc);
@@ -3283,7 +3283,7 @@ _e_gadcon_client_cb_mouse_down(void *data, Evas *e 
EINA_UNUSED, Evas_Object *obj
              if (gcc->instant_edit_timer)
                ecore_timer_del(gcc->instant_edit_timer);
              gcc->instant_edit_timer =
-               ecore_timer_add(1.0, _e_gadcon_client_cb_instant_edit_timer,
+               ecore_timer_loop_add(1.0, 
_e_gadcon_client_cb_instant_edit_timer,
                                gcc);
           }
      }
diff --git a/src/bin/e_icon.c b/src/bin/e_icon.c
index 9474fd2..b5c6187 100644
--- a/src/bin/e_icon.c
+++ b/src/bin/e_icon.c
@@ -114,7 +114,7 @@ _frame_anim(void *data)
    fr = (sd->frame % (sd->frame_count)) + 1;
    evas_object_image_animated_frame_set(sd->obj, fr);
    t = evas_object_image_animated_frame_duration_get(sd->obj, fr, 0);
-   sd->timer = ecore_timer_add(t, _frame_anim, sd);
+   sd->timer = ecore_timer_loop_add(t, _frame_anim, sd);
    return EINA_FALSE;
 }
 
@@ -132,7 +132,7 @@ _handle_anim(E_Smart_Data *sd)
    if (sd->frame_count < 2) return 0;
    if (!sd->invalid) evas_object_show(sd->obj);
    t = evas_object_image_animated_frame_duration_get(sd->obj, sd->frame, 0);
-   sd->timer = ecore_timer_add(t, _frame_anim, sd);
+   sd->timer = ecore_timer_loop_add(t, _frame_anim, sd);
    return 1;
 }
 
@@ -864,7 +864,7 @@ _e_icon_smart_resize(Evas_Object *obj, Evas_Coord w, 
Evas_Coord h)
    if (sd->fdo)
      {
         if (sd->fdo_reload_timer) ecore_timer_del(sd->fdo_reload_timer);
-        sd->fdo_reload_timer = ecore_timer_add(0.1, _e_icon_fdo_reload, sd);
+        sd->fdo_reload_timer = ecore_timer_loop_add(0.1, _e_icon_fdo_reload, 
sd);
      }
 
    if ((!sd->edje) && ((sd->loading && sd->preload) ||
@@ -874,7 +874,7 @@ _e_icon_smart_resize(Evas_Object *obj, Evas_Coord w, 
Evas_Coord h)
         evas_object_image_scale_hint_set(sd->obj,
                                          EVAS_IMAGE_SCALE_HINT_DYNAMIC);
         if (!sd->guessing_animation)
-          sd->guessing_animation = ecore_timer_add(0.3,
+          sd->guessing_animation = ecore_timer_loop_add(0.3,
                                                    _e_icon_guess_anim,
                                                    sd);
      }
diff --git a/src/bin/e_ilist.c b/src/bin/e_ilist.c
index 9482486..cc7b52d 100644
--- a/src/bin/e_ilist.c
+++ b/src/bin/e_ilist.c
@@ -1201,7 +1201,7 @@ _e_typebuf_timer_update(Evas_Object *obj)
    if (sd->typebuf.timer)
      ecore_timer_del(sd->typebuf.timer);
 
-   sd->typebuf.timer = ecore_timer_add(3.0, _e_typebuf_timer_cb, obj);
+   sd->typebuf.timer = ecore_timer_loop_add(3.0, _e_typebuf_timer_cb, obj);
 }
 
 static void
diff --git a/src/bin/e_init.c b/src/bin/e_init.c
index 3791a60..6eb1322 100644
--- a/src/bin/e_init.c
+++ b/src/bin/e_init.c
@@ -74,7 +74,7 @@ e_init_show(void)
                              "Disable splash screen");
    edje_object_signal_callback_add(_e_init_object, "e,state,done_ok", "e",
                                    _e_init_cb_signal_done_ok, NULL);
-   _e_init_timeout_timer = ecore_timer_add(240.0, _e_init_cb_timeout, NULL);
+   _e_init_timeout_timer = ecore_timer_loop_add(240.0, _e_init_cb_timeout, 
NULL);
    e_init_title_set(_("Enlightenment"));
    e_init_version_set(VERSION);
 }
diff --git a/src/bin/e_int_gadcon_config.c b/src/bin/e_int_gadcon_config.c
index e53b016..1dbd3da 100644
--- a/src/bin/e_int_gadcon_config.c
+++ b/src/bin/e_int_gadcon_config.c
@@ -722,7 +722,7 @@ _advanced_create(E_Config_Dialog *cfd, Evas *evas, 
E_Config_Dialog_Data *cfdata)
    ////////////////////////////////////////////////////////////
    e_widget_toolbook_page_show(otb, 0);
    if (cfdata->load_timer) ecore_timer_del(cfdata->load_timer);
-   cfdata->load_timer = ecore_timer_add(0.01, _cb_load_timer, cfdata);
+   cfdata->load_timer = ecore_timer_loop_add(0.01, _cb_load_timer, cfdata);
 
    elm_win_center(cfd->dia->win, 1, 1);
 
@@ -756,7 +756,7 @@ _basic_create(E_Config_Dialog *cfd, Evas *evas, 
E_Config_Dialog_Data *cfdata)
    e_widget_table_object_append(ot, cfdata->o_del, 1, 1, 1, 1, 1, 1, 1, 0);
 
    if (cfdata->load_timer) ecore_timer_del(cfdata->load_timer);
-   cfdata->load_timer = ecore_timer_add(0.01, _cb_load_timer, cfdata);
+   cfdata->load_timer = ecore_timer_loop_add(0.01, _cb_load_timer, cfdata);
 
    elm_win_center(cfd->dia->win, 1, 1);
 
diff --git a/src/bin/e_int_menus.c b/src/bin/e_int_menus.c
index 665c0e4..2439827 100644
--- a/src/bin/e_int_menus.c
+++ b/src/bin/e_int_menus.c
@@ -913,7 +913,7 @@ _e_int_menus_apps_thread_new(E_Menu *m, const char *dir)
    if (_e_int_menus_app_cleaner)
      ecore_timer_reset(_e_int_menus_app_cleaner);
    else
-     _e_int_menus_app_cleaner = ecore_timer_add(300, 
_e_int_menus_app_cleaner_cb, NULL);
+     _e_int_menus_app_cleaner = ecore_timer_loop_add(300, 
_e_int_menus_app_cleaner_cb, NULL);
    eina_stringshare_del(dir);
    if (m)
      {
diff --git a/src/bin/e_main.c b/src/bin/e_main.c
index 862a16d..f743412 100644
--- a/src/bin/e_main.c
+++ b/src/bin/e_main.c
@@ -1046,7 +1046,7 @@ main(int argc, char **argv)
    TS("Run Startup Apps Done");
 
    if (e_config->show_splash && (!after_restart))
-     ecore_timer_add(2.0, _e_main_cb_startup_fake_end, NULL);
+     ecore_timer_loop_add(2.0, _e_main_cb_startup_fake_end, NULL);
 
    TS("E_Comp Thaw");
    e_comp_all_thaw();
diff --git a/src/bin/e_module.c b/src/bin/e_module.c
index 49d5104..20156e0 100644
--- a/src/bin/e_module.c
+++ b/src/bin/e_module.c
@@ -831,7 +831,7 @@ _e_module_dialog_disable_create(const char *title, const 
char *body, E_Module *m
    dd->title = strdup(title);
    dd->body = strdup(body);
    dd->m = m;
-   ecore_timer_add(1.5, (Ecore_Task_Cb)_e_module_dialog_disable_timer, dd);
+   ecore_timer_loop_add(1.5, (Ecore_Task_Cb)_e_module_dialog_disable_timer, 
dd);
 }
 
 static void
@@ -1116,7 +1116,7 @@ _e_module_whitelist_check(void)
 #endif
 
    if (eina_list_count(badl) != known)
-     ecore_timer_add(1.5, _e_module_whitelist_dialog_timer, badl);
+     ecore_timer_loop_add(1.5, _e_module_whitelist_dialog_timer, badl);
    else
      {
         EINA_LIST_FREE(badl, s)
diff --git a/src/bin/e_order.c b/src/bin/e_order.c
index 6ad33c1..b8ca36a 100644
--- a/src/bin/e_order.c
+++ b/src/bin/e_order.c
@@ -252,7 +252,7 @@ _e_order_cb_monitor(void *data, Ecore_File_Monitor *em 
EINA_UNUSED, Ecore_File_E
    E_Order *eo = data;
 
    if (eo->delay) ecore_timer_del(eo->delay);
-   eo->delay = ecore_timer_add(0.2, _e_order_cb_monitor_delay, eo);
+   eo->delay = ecore_timer_loop_add(0.2, _e_order_cb_monitor_delay, eo);
 }
 
 static void
diff --git a/src/bin/e_powersave.c b/src/bin/e_powersave.c
index 645a979..be622b5 100644
--- a/src/bin/e_powersave.c
+++ b/src/bin/e_powersave.c
@@ -45,7 +45,7 @@ e_powersave_deferred_action_add(void (*func)(void *data), 
const void *data)
    pa = calloc(1, sizeof(E_Powersave_Deferred_Action));
    if (!pa) return NULL;
    if (deferred_timer) ecore_timer_del(deferred_timer);
-   deferred_timer = ecore_timer_add(defer_time,
+   deferred_timer = ecore_timer_loop_add(defer_time,
                                     _e_powersave_cb_deferred_timer,
                                     NULL);
    pa->func = func;
@@ -165,7 +165,7 @@ _e_powersave_mode_eval(void)
    if (!EINA_DBL_EQ(t, defer_time))
      {
         if (deferred_timer) ecore_timer_del(deferred_timer);
-        deferred_timer = ecore_timer_add(defer_time,
+        deferred_timer = ecore_timer_loop_add(defer_time,
                                          _e_powersave_cb_deferred_timer,
                                          NULL);
         defer_time = t;
diff --git a/src/bin/e_randr2.c b/src/bin/e_randr2.c
index e2ba473..4d427f3 100644
--- a/src/bin/e_randr2.c
+++ b/src/bin/e_randr2.c
@@ -235,7 +235,7 @@ _cb_fade_animator(void *data EINA_UNUSED)
      {
         if (_target_to == 255)
           {
-             _apply_delay = ecore_timer_add(5.0, _cb_delay_timer, NULL);
+             _apply_delay = ecore_timer_loop_add(5.0, _cb_delay_timer, NULL);
              _do_apply();
              _screen_check_unconfigured(e_randr2, e_randr2_cfg);
           }
@@ -1107,7 +1107,7 @@ e_randr2_screen_refresh_queue(Eina_Bool lid_event)
    if (_screen_delay_timer)
      ecore_timer_reset(_screen_delay_timer);
    else
-     _screen_delay_timer = ecore_timer_add(1.0, _cb_screen_change_delay, NULL);
+     _screen_delay_timer = ecore_timer_loop_add(1.0, _cb_screen_change_delay, 
NULL);
    event_screen |= !!lid_event;
 }
 
diff --git a/src/bin/e_screensaver.c b/src/bin/e_screensaver.c
index 41b10b6..c248a49 100644
--- a/src/bin/e_screensaver.c
+++ b/src/bin/e_screensaver.c
@@ -114,7 +114,7 @@ e_screensaver_update(void)
      {
         E_FREE_FUNC(_e_screensaver_timer, ecore_timer_del);
         if (timeout)
-          _e_screensaver_timer = ecore_timer_add(timeout, 
_e_screensaver_idle_timeout_cb, (void*)1);
+          _e_screensaver_timer = ecore_timer_loop_add(timeout, 
_e_screensaver_idle_timeout_cb, (void*)1);
      }
 #endif
 }
@@ -238,7 +238,7 @@ _e_screensaver_handler_powersave_cb(void *data EINA_UNUSED, 
int type EINA_UNUSED
         if (_e_screensaver_suspend_timer)
           ecore_timer_del(_e_screensaver_suspend_timer);
         _e_screensaver_suspend_timer =
-          ecore_timer_add(e_config->screensaver_suspend_delay,
+          ecore_timer_loop_add(e_config->screensaver_suspend_delay,
                           _e_screensaver_suspend_cb, NULL);
      }
    return ECORE_CALLBACK_PASS_ON;
@@ -257,7 +257,7 @@ _e_screensaver_handler_screensaver_on_cb(void *data 
EINA_UNUSED, int type EINA_U
      }
    if (e_config->screensaver_suspend)
      _e_screensaver_suspend_timer =
-       ecore_timer_add(e_config->screensaver_suspend_delay,
+       ecore_timer_loop_add(e_config->screensaver_suspend_delay,
                        _e_screensaver_suspend_cb, NULL);
    last_start = ecore_loop_time_get();
    _e_screensaver_ask_presentation_count = 0;
@@ -288,7 +288,7 @@ _e_screensaver_handler_screensaver_off_cb(void *data 
EINA_UNUSED, int type EINA_
      _e_screensaver_ask_presentation_count = 0;
 #ifdef HAVE_WAYLAND
    if (_e_screensaver_timeout && (e_comp->comp_type == E_PIXMAP_TYPE_WL))
-     _e_screensaver_timer = ecore_timer_add(_e_screensaver_timeout, 
_e_screensaver_idle_timeout_cb, (void*)1);
+     _e_screensaver_timer = ecore_timer_loop_add(_e_screensaver_timeout, 
_e_screensaver_idle_timeout_cb, (void*)1);
 #endif
    return ECORE_CALLBACK_PASS_ON;
 }
@@ -499,7 +499,7 @@ e_screensaver_eval(Eina_Bool saver_on)
              if (t < 1.0) t = 1.0;
              E_FREE_FUNC(screensaver_idle_timer, ecore_timer_del);
              if (e_config->screensaver_enable)
-               screensaver_idle_timer = ecore_timer_add
+               screensaver_idle_timer = ecore_timer_loop_add
                    (t, _e_screensaver_idle_timer_cb, NULL);
              if (e_backlight_mode_get(NULL) != E_BACKLIGHT_MODE_DIM)
                {
@@ -543,10 +543,10 @@ e_screensaver_notidle(void)
    if (e_screensaver_on_get())
      {
         ecore_event_add(E_EVENT_SCREENSAVER_OFF_PRE, NULL, NULL, NULL);
-        _e_screensaver_timer = ecore_timer_add(0.2, 
_e_screensaver_idle_timeout_cb, NULL);
+        _e_screensaver_timer = ecore_timer_loop_add(0.2, 
_e_screensaver_idle_timeout_cb, NULL);
      }
    else if (_e_screensaver_timeout)
-     _e_screensaver_timer = ecore_timer_add(_e_screensaver_timeout, 
_e_screensaver_idle_timeout_cb, (void*)1);
+     _e_screensaver_timer = ecore_timer_loop_add(_e_screensaver_timeout, 
_e_screensaver_idle_timeout_cb, (void*)1);
 #endif
 }
 
diff --git a/src/bin/e_shelf.c b/src/bin/e_shelf.c
index ec01cf3..e2d1fb3 100644
--- a/src/bin/e_shelf.c
+++ b/src/bin/e_shelf.c
@@ -489,7 +489,7 @@ e_shelf_toggle(E_Shelf *es, int show)
           {
              _e_shelf_cb_instant_hide_timer(es);
              es->hide_timer =
-               ecore_timer_add(es->cfg->hide_timeout,
+               ecore_timer_loop_add(es->cfg->hide_timeout,
                                _e_shelf_cb_hide_urgent_timer, es);
           }
         else
@@ -517,7 +517,7 @@ e_shelf_toggle(E_Shelf *es, int show)
              es->hidden = 1;
              if (!es->instant_timer)
                es->instant_timer =
-                 ecore_timer_add(es->instant_delay,
+                 ecore_timer_loop_add(es->instant_delay,
                                  _e_shelf_cb_instant_hide_timer, es);
           }
         else
@@ -530,7 +530,7 @@ e_shelf_toggle(E_Shelf *es, int show)
              es->hidden = 1;
              if (es->hide_timer) ecore_timer_del(es->hide_timer);
              es->hide_timer =
-               ecore_timer_add(es->cfg->hide_timeout,
+               ecore_timer_loop_add(es->cfg->hide_timeout,
                                _e_shelf_cb_hide_animator_timer, es);
           }
      }
@@ -1926,7 +1926,7 @@ _e_shelf_cb_mouse_in(void *data, int type, void *event)
              if (es->autohide_timer)
                ecore_timer_reset(es->autohide_timer);
              else
-               es->autohide_timer = ecore_timer_add(0.5, 
(Ecore_Task_Cb)_e_shelf_cb_mouse_move_autohide_fuck_systray, es);
+               es->autohide_timer = ecore_timer_loop_add(0.5, 
(Ecore_Task_Cb)_e_shelf_cb_mouse_move_autohide_fuck_systray, es);
           }
         if (inside)
           {
@@ -2143,7 +2143,7 @@ end:
      {
         es->hidden = 1;
         if (!es->hide_timer)
-          es->hide_timer = ecore_timer_add(es->cfg->hide_timeout, 
_e_shelf_cb_hide_animator_timer, es);
+          es->hide_timer = ecore_timer_loop_add(es->cfg->hide_timeout, 
_e_shelf_cb_hide_animator_timer, es);
      }
    if (es->hidden && (!es->hide_timer))
      edje_object_signal_emit(es->o_base, "e,state,hidden", "e");
diff --git a/src/bin/e_slider.c b/src/bin/e_slider.c
index 597908c..f0ee098 100644
--- a/src/bin/e_slider.c
+++ b/src/bin/e_slider.c
@@ -283,7 +283,7 @@ static void
 _e_smart_value_update(E_Smart_Data *sd)
 {
    if (sd->set_timer) ecore_timer_del(sd->set_timer);
-   sd->set_timer = ecore_timer_add(0.05, _e_smart_set_timer, sd);
+   sd->set_timer = ecore_timer_loop_add(0.05, _e_smart_set_timer, sd);
 }
 
 static void
diff --git a/src/bin/e_spectrum.c b/src/bin/e_spectrum.c
index d107d80..b0c7672 100644
--- a/src/bin/e_spectrum.c
+++ b/src/bin/e_spectrum.c
@@ -348,7 +348,7 @@ _e_spectrum_update(E_Spectrum *sp)
    if (!sp || !sp->cv) return;
 
    if (sp->draw_timer) ecore_timer_del(sp->draw_timer);
-   sp->draw_timer = ecore_timer_add(.001, _e_spectrum_redraw, sp);
+   sp->draw_timer = ecore_timer_loop_add(.001, _e_spectrum_redraw, sp);
 }
 
 Evas_Object *
diff --git a/src/bin/e_sys.c b/src/bin/e_sys.c
index 736139a..98a6a66 100644
--- a/src/bin/e_sys.c
+++ b/src/bin/e_sys.c
@@ -130,7 +130,7 @@ _e_sys_comp_emit_cb_wait(E_Sys_Action a, const char *sig, 
const char *rep, Eina_
    if (rep)
      {
         if (action_timeout) ecore_timer_del(action_timeout);
-        action_timeout = ecore_timer_add(ACTION_TIMEOUT, 
(Ecore_Task_Cb)_e_sys_comp_action_timeout, (intptr_t*)(long)a);
+        action_timeout = ecore_timer_loop_add(ACTION_TIMEOUT, 
(Ecore_Task_Cb)_e_sys_comp_action_timeout, (intptr_t*)(long)a);
      }
 }
 
@@ -429,7 +429,7 @@ _e_sys_systemd_exists_cb(void *data EINA_UNUSED, const 
Eldbus_Message *m, Eldbus
 fail:
    systemd_works = EINA_FALSE;
    /* delay this for 1.0 seconds while the rest of e starts up */
-   ecore_timer_add(1.0, _e_sys_cb_timer, NULL);
+   ecore_timer_loop_add(1.0, _e_sys_cb_timer, NULL);
 }
 
 static void
@@ -485,7 +485,7 @@ _e_sys_susp_hib_check(void)
      ecore_timer_del(_e_sys_susp_hib_check_timer);
    _e_sys_susp_hib_check_last_tick = ecore_time_unix_get();
    _e_sys_susp_hib_check_timer =
-     ecore_timer_add(0.1, _e_sys_susp_hib_check_timer_cb, NULL);
+     ecore_timer_loop_add(0.1, _e_sys_susp_hib_check_timer_cb, NULL);
 }
 
 /* local subsystem functions */
@@ -589,7 +589,7 @@ static void
 _e_sys_cb_logout_wait(void *data EINA_UNUSED, E_Dialog *dia)
 {
    if (_e_sys_logout_timer) ecore_timer_del(_e_sys_logout_timer);
-   _e_sys_logout_timer = ecore_timer_add(0.5, _e_sys_cb_logout_timer, NULL);
+   _e_sys_logout_timer = ecore_timer_loop_add(0.5, _e_sys_cb_logout_timer, 
NULL);
    _e_sys_logout_begin_time = ecore_time_get();
    e_object_del(E_OBJECT(dia));
    _e_sys_logout_confirm_dialog = NULL;
@@ -748,7 +748,7 @@ _e_sys_logout_begin(E_Sys_Action a_after, Eina_Bool raw)
    /* and poll to see if all pending windows are gone yet every 0.5 sec */
    _e_sys_logout_begin_time = ecore_time_get();
    if (_e_sys_logout_timer) ecore_timer_del(_e_sys_logout_timer);
-   _e_sys_logout_timer = ecore_timer_add(0.5, _e_sys_cb_logout_timer, NULL);
+   _e_sys_logout_timer = ecore_timer_loop_add(0.5, _e_sys_cb_logout_timer, 
NULL);
 }
 
 static void
diff --git a/src/bin/e_test.c b/src/bin/e_test.c
index 1303d9b..0cfe1af 100644
--- a/src/bin/e_test.c
+++ b/src/bin/e_test.c
@@ -33,7 +33,7 @@ e_test(void)
    _e_test_internal();
 
 #ifdef DESKMIRROR_TEST
-   ecore_timer_add(2.0, deskmirror_test, NULL);
+   ecore_timer_loop_add(2.0, deskmirror_test, NULL);
 #endif
 }
 
@@ -48,14 +48,14 @@ _e_test_timer(void *data)
      {
         e_menu_deactivate(m);
         e_object_del(E_OBJECT(m));
-        ecore_timer_add(0.05, _e_test_timer, NULL);
+        ecore_timer_loop_add(0.05, _e_test_timer, NULL);
         return 0;
      }
    m = e_int_menus_main_new();
    e_menu_activate_mouse(m,
                          eina_list_data_get(e_comp->zones),
                          0, 0, 1, 1, E_MENU_POP_DIRECTION_DOWN, 0);
-   ecore_timer_add(0.05, _e_test_timer, m);
+   ecore_timer_loop_add(0.05, _e_test_timer, m);
    return 0;
 }
 
@@ -131,7 +131,7 @@ _e_test_internal(void)
    e_menu_activate_mouse(m,
                          eina_list_data_get(e_comp->zones),
                          0, 0, 1, 1, E_MENU_POP_DIRECTION_DOWN, 0);
-   ecore_timer_add(0.02, _e_test_timer, m);
+   ecore_timer_loop_add(0.02, _e_test_timer, m);
 }
 
 #elif 0
@@ -230,13 +230,13 @@ _e_test_timer(void *data)
    if (data == NULL)
      {
         dia = _e_test_dia(tcon);
-        ecore_timer_add(0.2, _e_test_timer, dia);
+        ecore_timer_loop_add(0.2, _e_test_timer, dia);
      }
    else
      {
         dia = data;
         e_object_del(E_OBJECT(dia));
-        ecore_timer_add(0.2, _e_test_timer, NULL);
+        ecore_timer_loop_add(0.2, _e_test_timer, NULL);
      }
    return 0;
 }
@@ -744,7 +744,7 @@ _e_test_internal(void)
 static void
 _e_test_internal(void)
 {
-   ecore_timer_add(1.0, _e_test_timer, c);
+   ecore_timer_loop_add(1.0, _e_test_timer, c);
 }
 
 #elif 0
@@ -811,7 +811,7 @@ _e_test_timer(void *data)
 static void
 _e_test_internal(void)
 {
-   ecore_timer_add(1.0, _e_test_timer, c);
+   ecore_timer_loop_add(1.0, _e_test_timer, c);
 }
 
 #elif 0
@@ -878,7 +878,7 @@ _e_test_timer(void *data)
 static void
 _e_test_internal(void)
 {
-   ecore_timer_add(1.0, _e_test_timer, c);
+   ecore_timer_loop_add(1.0, _e_test_timer, c);
 }
 
 #else
diff --git a/src/bin/e_thumb.c b/src/bin/e_thumb.c
index 9d8a879..8a0e40e 100644
--- a/src/bin/e_thumb.c
+++ b/src/bin/e_thumb.c
@@ -469,7 +469,7 @@ static void
 _e_thumb_thumbnailers_kill(void)
 {
    if (_kill_timer) ecore_timer_del(_kill_timer);
-   _kill_timer = ecore_timer_add(1.0, _e_thumb_cb_kill, NULL);
+   _kill_timer = ecore_timer_loop_add(1.0, _e_thumb_cb_kill, NULL);
 }
 
 static void
diff --git a/src/bin/e_thumb_main.c b/src/bin/e_thumb_main.c
index 6632c0e..34047bc 100644
--- a/src/bin/e_thumb_main.c
+++ b/src/bin/e_thumb_main.c
@@ -237,7 +237,7 @@ _e_ipc_cb_server_data(void *data EINA_UNUSED,
                   eth->sigsrc = sigsrc;
                   if (key) eth->key = strdup(key);
                   _thumblist = eina_list_append(_thumblist, eth);
-                  if (!_timer) _timer = ecore_timer_add(0.001, _e_cb_timer, 
NULL);
+                  if (!_timer) _timer = ecore_timer_loop_add(0.001, 
_e_cb_timer, NULL);
                }
           }
         break;
@@ -289,7 +289,7 @@ _e_cb_timer(void *data EINA_UNUSED)
         free(eth->key);
         free(eth);
 
-        if (_thumblist) _timer = ecore_timer_add(0.01, _e_cb_timer, NULL);
+        if (_thumblist) _timer = ecore_timer_loop_add(0.01, _e_cb_timer, NULL);
         else _timer = NULL;
      }
    else
diff --git a/src/bin/e_update.c b/src/bin/e_update.c
index 6f4e384..a42470c 100644
--- a/src/bin/e_update.c
+++ b/src/bin/e_update.c
@@ -235,7 +235,7 @@ _update_timeout_cb(void *data)
         later++;
         t *= (later * later);
      }
-   update_timer = ecore_timer_add(t, _update_timeout_cb, data);
+   update_timer = ecore_timer_loop_add(t, _update_timeout_cb, data);
    return EINA_FALSE;
 }
 
diff --git a/src/bin/e_utils.c b/src/bin/e_utils.c
index 24d5829..914800e 100644
--- a/src/bin/e_utils.c
+++ b/src/bin/e_utils.c
@@ -24,7 +24,7 @@ E_API void
 e_util_wakeup(void)
 {
    if (_e_util_dummy_timer) return;
-   _e_util_dummy_timer = ecore_timer_add(0.0, _e_util_wakeup_cb, NULL);
+   _e_util_dummy_timer = ecore_timer_loop_add(0.0, _e_util_wakeup_cb, NULL);
 }
 
 E_API void
@@ -916,13 +916,13 @@ e_util_module_config_check(const char *module_name, int 
loaded, int current)
 {
    if (loaded > current)
      {
-        ecore_timer_add(1.0, _e_util_conf_timer_new, strdup(module_name));
+        ecore_timer_loop_add(1.0, _e_util_conf_timer_new, strdup(module_name));
         return EINA_FALSE;
      }
    loaded -= loaded % 1000000, current -= current % 1000000;
    if (loaded < current)
      {
-        ecore_timer_add(1.0, _e_util_conf_timer_old, strdup(module_name));
+        ecore_timer_loop_add(1.0, _e_util_conf_timer_old, strdup(module_name));
         return EINA_FALSE;
      }
 
diff --git a/src/bin/e_video.c b/src/bin/e_video.c
index 77dff90..cbd3846 100644
--- a/src/bin/e_video.c
+++ b/src/bin/e_video.c
@@ -123,7 +123,7 @@ vidimg_cb_screensaver_on(void *data, int type EINA_UNUSED, 
void *event EINA_UNUS
    Vidimg *vi = data;
 
    if (vi->offtimer) ecore_timer_del(vi->offtimer);
-   vi->offtimer = ecore_timer_add(10.0, vidimg_cb_suspend, vi);
+   vi->offtimer = ecore_timer_loop_add(10.0, vidimg_cb_suspend, vi);
    return ECORE_CALLBACK_PASS_ON;
 }
 
diff --git a/src/bin/e_widget_ilist.c b/src/bin/e_widget_ilist.c
index 861c008..13d1da0 100644
--- a/src/bin/e_widget_ilist.c
+++ b/src/bin/e_widget_ilist.c
@@ -219,7 +219,7 @@ _queue_queue(Evas_Object *obj)
    if (!wd) return;
    if (!wd->queue.queue) return;
    if (wd->queue.timer) return;
-   wd->queue.timer = ecore_timer_add(0.00001, _queue_timer, obj);
+   wd->queue.timer = ecore_timer_loop_add(0.00001, _queue_timer, obj);
 }
 
 static void
diff --git a/src/bin/e_xkb.c b/src/bin/e_xkb.c
index bd17e2c..24db380 100644
--- a/src/bin/e_xkb.c
+++ b/src/bin/e_xkb.c
@@ -94,7 +94,7 @@ _xkb_new_state(void* data EINA_UNUSED, int type EINA_UNUSED, 
void *event)
 
    ecore_timer_del(save_group);
 
-   save_group = ecore_timer_add(0.5, _e_xkb_save_group, 
(void*)(intptr_t)ev->group);
+   save_group = ecore_timer_loop_add(0.5, _e_xkb_save_group, 
(void*)(intptr_t)ev->group);
 
    return ECORE_CALLBACK_PASS_ON;
 }
@@ -118,7 +118,7 @@ e_xkb_init(E_Pixmap_Type comp_type)
    _e_xkb_type_reconfig(comp_type);
 
    if (comp_type == E_PIXMAP_TYPE_X)
-     ecore_timer_add(1.5, _e_xkb_init_timer, NULL);
+     ecore_timer_loop_add(1.5, _e_xkb_init_timer, NULL);
    else if (comp_type == E_PIXMAP_TYPE_WL)
      {
         _eval_cur_group();
diff --git a/src/bin/e_xsettings.c b/src/bin/e_xsettings.c
index f71f618..74d5413 100644
--- a/src/bin/e_xsettings.c
+++ b/src/bin/e_xsettings.c
@@ -166,7 +166,7 @@ static void
 _e_xsettings_retry(Settings_Manager *sm)
 {
    if (sm->timer_retry) return;
-   sm->timer_retry = ecore_timer_add
+   sm->timer_retry = ecore_timer_loop_add
      (RETRY_TIMEOUT, _e_xsettings_activate_retry, sm);
 }
 
diff --git a/src/bin/e_zone.c b/src/bin/e_zone.c
index d196d17..e9346c5 100644
--- a/src/bin/e_zone.c
+++ b/src/bin/e_zone.c
@@ -628,7 +628,7 @@ noflip:
         zone->flip.ev = zev;
         zone->flip.bind = binding;
         zone->flip.switching = edge;
-        binding->timer = ecore_timer_add(((double)binding->delay), 
_e_zone_cb_edge_timer, zone);
+        binding->timer = ecore_timer_loop_add(((double)binding->delay), 
_e_zone_cb_edge_timer, zone);
      }
 }
 
diff --git a/src/modules/appmenu/e_mod_appmenu_render.c 
b/src/modules/appmenu/e_mod_appmenu_render.c
index b866e37..082181c 100644
--- a/src/modules/appmenu/e_mod_appmenu_render.c
+++ b/src/modules/appmenu/e_mod_appmenu_render.c
@@ -168,7 +168,7 @@ item_menu_open(E_DBusMenu_Item *item, E_Gadcon *gadcon, 
Evas_Coord x, Evas_Coord
    menu_w = w;
    menu_h = h;
    if (menu_timer) ecore_timer_del(menu_timer);
-   menu_timer = ecore_timer_add(0.33, item_menu_delay, NULL);
+   menu_timer = ecore_timer_loop_add(0.33, item_menu_delay, NULL);
 }
 
 static void
diff --git a/src/modules/backlight/e_mod_main.c 
b/src/modules/backlight/e_mod_main.c
index 521a308..e7e16bd 100644
--- a/src/modules/backlight/e_mod_main.c
+++ b/src/modules/backlight/e_mod_main.c
@@ -399,13 +399,13 @@ _backlight_popup_timer_new(Instance *inst)
           {
              ecore_timer_del(inst->popup_timer);
              e_widget_slider_value_double_set(inst->o_slider, inst->val);
-             inst->popup_timer = ecore_timer_add(1.0, 
_backlight_popup_timer_cb, inst);
+             inst->popup_timer = ecore_timer_loop_add(1.0, 
_backlight_popup_timer_cb, inst);
           }
      }
    else
      {
         _backlight_popup_new(inst);
-        inst->popup_timer = ecore_timer_add(1.0, _backlight_popup_timer_cb, 
inst);
+        inst->popup_timer = ecore_timer_loop_add(1.0, 
_backlight_popup_timer_cb, inst);
      }
 }
 
diff --git a/src/modules/battery/batget.c b/src/modules/battery/batget.c
index 3a6704a..cde8e91 100644
--- a/src/modules/battery/batget.c
+++ b/src/modules/battery/batget.c
@@ -327,12 +327,12 @@ linux_sys_class_power_supply_cb_event_fd_active(void 
*data,
              free(sysev);
 
              if (re_init_timer) ecore_timer_del(re_init_timer);
-             re_init_timer = ecore_timer_add(1.0, 
linux_sys_class_power_supply_cb_re_init, NULL);
+             re_init_timer = ecore_timer_loop_add(1.0, 
linux_sys_class_power_supply_cb_re_init, NULL);
           }
         else
           {
              if (sys_class_delay_check) ecore_timer_del(sys_class_delay_check);
-             sys_class_delay_check = ecore_timer_add(0.2, 
linux_sys_class_power_supply_cb_delay_check, NULL);
+             sys_class_delay_check = ecore_timer_loop_add(0.2, 
linux_sys_class_power_supply_cb_delay_check, NULL);
           }
      }
    return ECORE_CALLBACK_CANCEL;
@@ -756,7 +756,7 @@ linux_acpi_cb_acpid_data(void *data  EINA_UNUSED,
                          void *event EINA_UNUSED)
 {
    if (delay_check) ecore_timer_del(delay_check);
-   delay_check = ecore_timer_add(0.2, linux_acpi_cb_delay_check, NULL);
+   delay_check = ecore_timer_loop_add(0.2, linux_acpi_cb_delay_check, NULL);
    return ECORE_CALLBACK_PASS_ON;
 }
 
@@ -792,7 +792,7 @@ linux_acpi_cb_event_fd_active(void *data        EINA_UNUSED,
         else
           {
              if (delay_check) ecore_timer_del(delay_check);
-             delay_check = ecore_timer_add(0.2, linux_acpi_cb_delay_check, 
NULL);
+             delay_check = ecore_timer_loop_add(0.2, 
linux_acpi_cb_delay_check, NULL);
           }
      }
    return ECORE_CALLBACK_RENEW;
diff --git a/src/modules/battery/e_mod_main.c b/src/modules/battery/e_mod_main.c
index fe5f1bc..89222fc 100644
--- a/src/modules/battery/e_mod_main.c
+++ b/src/modules/battery/e_mod_main.c
@@ -500,7 +500,7 @@ _battery_warning_popup(Instance *inst, int t, double 
percent)
        (!battery_config->alert_timer))
      {
         battery_config->alert_timer =
-          ecore_timer_add(battery_config->alert_timeout,
+          ecore_timer_loop_add(battery_config->alert_timeout,
                           _battery_cb_warning_popup_timeout, inst);
      }
 }
diff --git a/src/modules/clock/e_mod_main.c b/src/modules/clock/e_mod_main.c
index b2356a6..e2ebeda 100644
--- a/src/modules/clock/e_mod_main.c
+++ b/src/modules/clock/e_mod_main.c
@@ -540,7 +540,7 @@ _update_today_timer(void *data EINA_UNUSED)
 
    t_tomorrow = mktime(&today) + 24 * 60 * 60;
    if (update_today) ecore_timer_interval_set(update_today, t_tomorrow - t);
-   else update_today = ecore_timer_add(t_tomorrow - t, _update_today_timer, 
NULL);
+   else update_today = ecore_timer_loop_add(t_tomorrow - t, 
_update_today_timer, NULL);
    return EINA_TRUE;
 }
 
diff --git a/src/modules/conf_applications/e_int_config_apps.c 
b/src/modules/conf_applications/e_int_config_apps.c
index 7e22675..c358e43 100644
--- a/src/modules/conf_applications/e_int_config_apps.c
+++ b/src/modules/conf_applications/e_int_config_apps.c
@@ -219,7 +219,7 @@ _cache_update()
    if (cache_timer)
      ecore_timer_reset(cache_timer);
    else
-     cache_timer = ecore_timer_add(1.0, _cache_update_timer, NULL);
+     cache_timer = ecore_timer_loop_add(1.0, _cache_update_timer, NULL);
    return ECORE_CALLBACK_RENEW;
 }
 
@@ -363,7 +363,7 @@ _basic_create(E_Config_Dialog *cfd, Evas *evas, 
E_Config_Dialog_Data *cfdata)
    e_widget_toolbook_page_show(otb, 0);
 
    if (cfdata->fill_delay) ecore_timer_del(cfdata->fill_delay);
-   cfdata->fill_delay = ecore_timer_add(0.2, _cb_fill_delay, cfdata);
+   cfdata->fill_delay = ecore_timer_loop_add(0.2, _cb_fill_delay, cfdata);
 
    elm_win_center(cfd->dia->win, 1, 1);
    return otb;
diff --git a/src/modules/everything/e_mod_main.c 
b/src/modules/everything/e_mod_main.c
index 581a3df..9c556c1 100644
--- a/src/modules/everything/e_mod_main.c
+++ b/src/modules/everything/e_mod_main.c
@@ -142,7 +142,7 @@ e_modapi_init(E_Module *m)
    e_module_delayed_set(m, 1);
 
    /* cleanup every hour :) */
-   cleanup_timer = ecore_timer_add(3600, _cleanup_history, NULL);
+   cleanup_timer = ecore_timer_loop_add(3600, _cleanup_history, NULL);
 
    return m;
 }
diff --git a/src/modules/everything/evry.c b/src/modules/everything/evry.c
index 5f7a2b6..6050340 100644
--- a/src/modules/everything/evry.c
+++ b/src/modules/everything/evry.c
@@ -177,7 +177,7 @@ _evry_focus_out(void *data, Evas *e EINA_UNUSED, 
Evas_Object *obj EINA_UNUSED, v
    if (win->delay_hide_action)
      ecore_timer_del(win->delay_hide_action);
 
-   win->delay_hide_action = ecore_timer_add(0.0, _evry_focus_out_timer, win);
+   win->delay_hide_action = ecore_timer_loop_add(0.0, _evry_focus_out_timer, 
win);
 }
 
 static void
@@ -301,7 +301,7 @@ evry_show(E_Zone *zone, E_Zone_Edge edge, const char 
*params, Eina_Bool popup)
 
    win->func.hide = &_evry_hide_func;
 
-   win->delay_hide_action = ecore_timer_add(0.2, _evry_delay_hide_timer, win);
+   win->delay_hide_action = ecore_timer_loop_add(0.2, _evry_delay_hide_timer, 
win);
 
    return win;
 }
@@ -606,7 +606,7 @@ _evry_selector_update_actions(Evry_Selector *sel)
      ecore_timer_del(sel->action_timer);
 
    _evry_selector_item_clear(sel);
-   sel->action_timer = ecore_timer_add(0.2, _evry_timer_cb_actions_get, sel);
+   sel->action_timer = ecore_timer_loop_add(0.2, _evry_timer_cb_actions_get, 
sel);
 }
 
 void
@@ -2314,7 +2314,7 @@ _evry_update(Evry_Selector *sel, int fetch)
           ecore_timer_del(sel->update_timer);
 
         sel->update_timer =
-          ecore_timer_add(MATCH_LAG, _evry_cb_update_timer, sel);
+          ecore_timer_loop_add(MATCH_LAG, _evry_cb_update_timer, sel);
 
         edje_object_signal_emit(win->o_main, "list:e,signal,update", "e");
      }
@@ -2668,7 +2668,7 @@ _evry_view_hide(Evry_Window *win, Evry_View *v, int slide)
         edje_object_signal_emit(v->o_list, "e,action,hide,list", "e");
 
         /* FIXME get signal from theme when anim finished */
-        v->state->clear_timer = ecore_timer_add(1.5, _clear_timer, win);
+        v->state->clear_timer = ecore_timer_loop_add(1.5, _clear_timer, win);
 
         if (v->o_bar)
           {
diff --git a/src/modules/everything/evry_view_tabs.c 
b/src/modules/everything/evry_view_tabs.c
index 8da9eba..a220f2d 100644
--- a/src/modules/everything/evry_view_tabs.c
+++ b/src/modules/everything/evry_view_tabs.c
@@ -125,7 +125,7 @@ _tabs_update(Tab_View *v)
 
    if (!w && !v->timer)
      {
-        v->timer = ecore_timer_add(0.001, _timer_cb, v);
+        v->timer = ecore_timer_loop_add(0.001, _timer_cb, v);
         return;
      }
 
diff --git a/src/modules/fileman/e_fwin.c b/src/modules/fileman/e_fwin.c
index 0c7aa5e..2b7f710 100644
--- a/src/modules/fileman/e_fwin.c
+++ b/src/modules/fileman/e_fwin.c
@@ -363,7 +363,7 @@ _e_fwin_dnd_change_cb(E_Fwin *fwin, Evas_Object *obj 
EINA_UNUSED, void *event_in
    if (fwin->spring_timer)
      ecore_timer_reset(fwin->spring_timer);
    else
-     fwin->spring_timer = ecore_timer_add(fileman_config->view.spring_delay, 
(Ecore_Task_Cb)_e_fwin_spring_cb, fwin);
+     fwin->spring_timer = 
ecore_timer_loop_add(fileman_config->view.spring_delay, 
(Ecore_Task_Cb)_e_fwin_spring_cb, fwin);
 }
 
 static void
@@ -393,7 +393,7 @@ _e_fwin_dnd_leave_cb(E_Fwin *fwin, Evas_Object *obj 
EINA_UNUSED, void *event_inf
    if (fwin->spring_parent && (!fwin->spring_child))
      {
         if (!fwin->spring_close_timer)
-          fwin->spring_close_timer = ecore_timer_add(0.01, 
(Ecore_Task_Cb)_e_fwin_dnd_close_cb, fwin);
+          fwin->spring_close_timer = ecore_timer_loop_add(0.01, 
(Ecore_Task_Cb)_e_fwin_dnd_close_cb, fwin);
      }
    drag_fwin = NULL;
 }
@@ -963,7 +963,7 @@ _e_fwin_icon_mouse_in(void *data, Evas_Object *obj 
EINA_UNUSED, void *event_info
    if (fwin->popup_timer) ecore_timer_del(fwin->popup_timer);
    fwin->popup_timer = NULL;
    if (!fileman_config->tooltip.enable) return;
-   fwin->popup_timer = ecore_timer_add(fileman_config->tooltip.delay, 
_e_fwin_icon_popup, fwin);
+   fwin->popup_timer = ecore_timer_loop_add(fileman_config->tooltip.delay, 
_e_fwin_icon_popup, fwin);
    if (fwin->over_file) eina_stringshare_del(fwin->over_file);
    fwin->over_file = NULL;
    if (ici->file) fwin->over_file = eina_stringshare_add(ici->file);
@@ -3133,7 +3133,7 @@ static void
 _e_fwin_op_registry_free_data(void *data)
 {
    Ecore_Timer *t;
-   t = ecore_timer_add(5.0, _e_fwin_op_registry_free_data_delayed, data);
+   t = ecore_timer_loop_add(5.0, _e_fwin_op_registry_free_data_delayed, data);
    evas_object_data_set(data, "_e_fwin_op_registry_thingy", t);
    evas_object_event_callback_add(data, EVAS_CALLBACK_FREE, 
_e_fwin_op_registry_free_check, data);
 }
diff --git a/src/modules/fileman_opinfo/e_mod_main.c 
b/src/modules/fileman_opinfo/e_mod_main.c
index 62b5522..266e0fc 100644
--- a/src/modules/fileman_opinfo/e_mod_main.c
+++ b/src/modules/fileman_opinfo/e_mod_main.c
@@ -221,7 +221,7 @@ _opinfo_op_registry_listener(void *data, const 
E_Fm2_Op_Registry_Entry *ere)
 static void
 _opinfo_op_registry_free_data(void *data)
 {
-   ecore_timer_add(5.0, _opinfo_op_registry_free_data_delayed, data);
+   ecore_timer_loop_add(5.0, _opinfo_op_registry_free_data_delayed, data);
 }
 
 static Eina_Bool
diff --git a/src/modules/ibar/e_mod_main.c b/src/modules/ibar/e_mod_main.c
index a47b958..d9240a3 100644
--- a/src/modules/ibar/e_mod_main.c
+++ b/src/modules/ibar/e_mod_main.c
@@ -865,7 +865,7 @@ _ibar_cb_icon_menu_client_menu_del(void *data, Evas *e 
EINA_UNUSED, Evas_Object
    if (b->menu_icon->hide_timer)
      ecore_timer_reset(b->menu_icon->hide_timer);
    else
-     b->menu_icon->hide_timer = ecore_timer_add(0.5, _ibar_cb_out_hide_delay, 
b->menu_icon);
+     b->menu_icon->hide_timer = ecore_timer_loop_add(0.5, 
_ibar_cb_out_hide_delay, b->menu_icon);
 }
 
 static void
@@ -1233,7 +1233,7 @@ _ibar_icon_menu_mouse_out(void *data, Evas *e 
EINA_UNUSED, Evas_Object *obj EINA
    if (ic->hide_timer)
      ecore_timer_reset(ic->hide_timer);
    else
-     ic->hide_timer = ecore_timer_add(0.5, _ibar_cb_out_hide_delay, ic);
+     ic->hide_timer = ecore_timer_loop_add(0.5, _ibar_cb_out_hide_delay, ic);
 }
 
 static void
@@ -1517,7 +1517,7 @@ _ibar_cb_icon_mouse_in(void *data, Evas *e EINA_UNUSED, 
Evas_Object *obj EINA_UN
         if (ic->show_timer)
           ecore_timer_reset(ic->show_timer);
         else
-          ic->show_timer = ecore_timer_add(0.2, _ibar_icon_mouse_in_timer, ic);
+          ic->show_timer = ecore_timer_loop_add(0.2, 
_ibar_icon_mouse_in_timer, ic);
      }
 }
 
@@ -1548,7 +1548,7 @@ _ibar_cb_icon_mouse_out(void *data, Evas *e EINA_UNUSED, 
Evas_Object *obj EINA_U
         if (ic->hide_timer)
           ecore_timer_reset(ic->hide_timer);
         else
-          ic->hide_timer = ecore_timer_add(0.75, _ibar_cb_out_hide_delay, ic);
+          ic->hide_timer = ecore_timer_loop_add(0.75, _ibar_cb_out_hide_delay, 
ic);
      }
 }
 
@@ -1578,7 +1578,7 @@ _ibar_cb_icon_mouse_down(void *data, Evas *e EINA_UNUSED, 
Evas_Object *obj EINA_
         ic->drag.dnd = 0;
         ic->mouse_down = 1;
         if (!ic->timer)
-          ic->timer = ecore_timer_add(0.35, _ibar_cb_icon_menu_cb, ic);
+          ic->timer = ecore_timer_loop_add(0.35, _ibar_cb_icon_menu_cb, ic);
      }
    else if (ev->button == 2)
      {
@@ -1846,7 +1846,7 @@ _ibar_icon_go(IBar_Icon *ic, Eina_Bool keep_going)
      }
    _ibar_icon_signal_emit(ic, "e,action,exec", "e");
    if (keep_going)
-     ic->reset_timer = ecore_timer_add(1.0, _ibar_cb_icon_reset, ic);
+     ic->reset_timer = ecore_timer_loop_add(1.0, _ibar_cb_icon_reset, ic);
 }
 
 static void
diff --git a/src/modules/luncher/bar.c b/src/modules/luncher/bar.c
index 072c572..e9152fe 100644
--- a/src/modules/luncher/bar.c
+++ b/src/modules/luncher/bar.c
@@ -535,7 +535,7 @@ _bar_icon_mouse_down(void *data, Evas *e EINA_UNUSED, 
Evas_Object *obj EINA_UNUS
         ic->drag.x = ev->output.x;
         ic->drag.y = ev->output.y;
         E_FREE_FUNC(ic->drag_timer, ecore_timer_del);
-        ic->drag_timer = ecore_timer_add(.35, _bar_drag_timer, ic);
+        ic->drag_timer = ecore_timer_loop_add(.35, _bar_drag_timer, ic);
      }
    if (ev->button == 3)
      {
@@ -692,7 +692,7 @@ _bar_icon_preview_mouse_out(void *data, Evas *e 
EINA_UNUSED, Evas_Object *obj EI
    if (current_preview_menu)
      return;
    E_FREE_FUNC(ic->mouse_out_timer, ecore_timer_del);
-   ic->mouse_out_timer = ecore_timer_add(0.25, _bar_icon_preview_hide, ic);
+   ic->mouse_out_timer = ecore_timer_loop_add(0.25, _bar_icon_preview_hide, 
ic);
 }
 
 static void
@@ -916,7 +916,7 @@ _bar_icon_mouse_in(void *data, Evas *e EINA_UNUSED, 
Evas_Object *obj, void *even
    else if (_bar_check_for_iconic(ic))
      _bar_icon_preview_show(ic);
    else if (clients && !current_preview)
-     ic->mouse_in_timer = ecore_timer_add(0.3, _bar_icon_preview_show, ic);
+     ic->mouse_in_timer = ecore_timer_loop_add(0.3, _bar_icon_preview_show, 
ic);
 }
   
 static void
@@ -927,7 +927,7 @@ _bar_icon_mouse_out(void *data, Evas *e EINA_UNUSED, 
Evas_Object *obj, void *eve
    elm_object_tooltip_hide(obj);
    E_FREE_FUNC(ic->mouse_in_timer, ecore_timer_del);
    E_FREE_FUNC(ic->mouse_out_timer, ecore_timer_del);
-   ic->mouse_out_timer = ecore_timer_add(0.25, _bar_icon_preview_hide, ic);
+   ic->mouse_out_timer = ecore_timer_loop_add(0.25, _bar_icon_preview_hide, 
ic);
 }
 
 static void
diff --git a/src/modules/luncher/grid.c b/src/modules/luncher/grid.c
index 0b8c58f..68b223a 100644
--- a/src/modules/luncher/grid.c
+++ b/src/modules/luncher/grid.c
@@ -154,7 +154,7 @@ _grid_icon_mouse_down(void *data, Evas *e EINA_UNUSED, 
Evas_Object *obj EINA_UNU
         ic->drag.x = ev->output.x;
         ic->drag.y = ev->output.y;
         E_FREE_FUNC(ic->drag_timer, ecore_timer_del);
-        ic->drag_timer = ecore_timer_add(.35, _grid_drag_timer, ic);
+        ic->drag_timer = ecore_timer_loop_add(.35, _grid_drag_timer, ic);
      }
    if (ev->button == 3)
      {
diff --git a/src/modules/mixer/lib/backends/pulseaudio/pulse.c 
b/src/modules/mixer/lib/backends/pulseaudio/pulse.c
index 42f0f93..d578e85 100644
--- a/src/modules/mixer/lib/backends/pulseaudio/pulse.c
+++ b/src/modules/mixer/lib/backends/pulseaudio/pulse.c
@@ -764,7 +764,7 @@ _pulse_pa_state_cb(pa_context *context, void *data)
       case PA_CONTEXT_FAILED:
          WRN("PA_CONTEXT_FAILED");
          if (!ctx->connect)
-           ctx->connect = ecore_timer_add(1.0, _pulse_connect, data);
+           ctx->connect = ecore_timer_loop_add(1.0, _pulse_connect, data);
          goto err;
       case PA_CONTEXT_TERMINATED:
          ERR("PA_CONTEXT_TERMINATE:");
diff --git a/src/modules/mixer/lib/backends/pulseaudio/pulse_ml.c 
b/src/modules/mixer/lib/backends/pulseaudio/pulse_ml.c
index 469aaca..7c07490 100644
--- a/src/modules/mixer/lib/backends/pulseaudio/pulse_ml.c
+++ b/src/modules/mixer/lib/backends/pulseaudio/pulse_ml.c
@@ -159,7 +159,7 @@ _ecore_pa_time_new(pa_mainloop_api *api, const struct 
timeval *tv, pa_time_event
      }
 
    interval = (tv->tv_sec - now.tv_sec) + (tv->tv_usec - now.tv_usec) / 1000;
-   event->timer = ecore_timer_add(interval, _ecore_time_wrapper, event);
+   event->timer = ecore_timer_loop_add(interval, _ecore_time_wrapper, event);
 
    return event;
 }
@@ -189,7 +189,7 @@ _ecore_pa_time_restart(pa_time_event *event, const struct 
timeval *tv)
    interval = (tv->tv_sec - now.tv_sec) + (tv->tv_usec - now.tv_usec) / 1000;
    if (event->timer)
      {
-        event->timer = ecore_timer_add(interval, _ecore_time_wrapper, event);
+        event->timer = ecore_timer_loop_add(interval, _ecore_time_wrapper, 
event);
      }
    else
      {
diff --git a/src/modules/notification/e_mod_main.c 
b/src/modules/notification/e_mod_main.c
index b5c8104..c24ffff 100644
--- a/src/modules/notification/e_mod_main.c
+++ b/src/modules/notification/e_mod_main.c
@@ -217,7 +217,7 @@ e_modapi_init(E_Module *m)
    notification_cfg->handler = ecore_event_handler_add
          (E_EVENT_CONFIG_MODE_CHANGED, 
(Ecore_Event_Handler_Cb)_notification_cb_config_mode_changed,
          notification_cfg);
-   notification_cfg->initial_mode_timer = ecore_timer_add
+   notification_cfg->initial_mode_timer = ecore_timer_loop_add
        (0.1, (Ecore_Task_Cb)_notification_cb_initial_mode_timer, 
notification_cfg);
 
    notification_mod = m;
diff --git a/src/modules/notification/e_mod_popup.c 
b/src/modules/notification/e_mod_popup.c
index 9d1e24f..9191be9 100644
--- a/src/modules/notification/e_mod_popup.c
+++ b/src/modules/notification/e_mod_popup.c
@@ -165,7 +165,7 @@ notification_popup_notify(E_Notification_Notify *n,
 
 
    if (n->timeout > 0)
-     popup->timer = ecore_timer_add(n->timeout, 
(Ecore_Task_Cb)_notification_timer_cb, popup);
+     popup->timer = ecore_timer_loop_add(n->timeout, 
(Ecore_Task_Cb)_notification_timer_cb, popup);
 }
 
 void
diff --git a/src/modules/packagekit/e_mod_main.c 
b/src/modules/packagekit/e_mod_main.c
index 810050e..76c8537 100644
--- a/src/modules/packagekit/e_mod_main.c
+++ b/src/modules/packagekit/e_mod_main.c
@@ -186,7 +186,7 @@ e_modapi_init(E_Module *m)
    packagekit_mod = m;
    e_gadcon_provider_register(&_gc_class);
    packagekit_dbus_connect(ctxt);
-   ctxt->refresh_timer = ecore_timer_add(60.0, _refresh_timer_cb, ctxt);
+   ctxt->refresh_timer = ecore_timer_loop_add(60.0, _refresh_timer_cb, ctxt);
    return ctxt;
 }
 
diff --git a/src/modules/pager/e_mod_main.c b/src/modules/pager/e_mod_main.c
index 3a3b88d..9caf79e 100644
--- a/src/modules/pager/e_mod_main.c
+++ b/src/modules/pager/e_mod_main.c
@@ -1017,7 +1017,7 @@ _pager_cb_event_desk_show(void *data EINA_UNUSED, int 
type EINA_UNUSED, void *ev
         if (pp->timer)
           ecore_timer_reset(pp->timer);
         else
-          pp->timer = ecore_timer_add(pager_config->popup_speed,
+          pp->timer = ecore_timer_loop_add(pager_config->popup_speed,
                                       _pager_popup_cb_timeout, pp);
      }
 
@@ -1074,7 +1074,7 @@ _pager_cb_event_client_urgent_change(void *data 
EINA_UNUSED, int type EINA_UNUSE
              if (!pp) return ECORE_CALLBACK_RENEW;
 
              if (!pager_config->popup_urgent_stick)
-               pp->timer = ecore_timer_add(pager_config->popup_urgent_speed,
+               pp->timer = 
ecore_timer_loop_add(pager_config->popup_urgent_speed,
                                            _pager_popup_cb_timeout, pp);
              pp->urgent = 1;
           }
@@ -1782,7 +1782,7 @@ _pager_popup_hide(int switch_desk)
         handlers = eina_list_remove_list(handlers, handlers);
      }
 
-   act_popup->timer = ecore_timer_add(0.1, _pager_popup_cb_timeout, act_popup);
+   act_popup->timer = ecore_timer_loop_add(0.1, _pager_popup_cb_timeout, 
act_popup);
 
    if ((switch_desk) && (current_desk)) e_desk_show(current_desk);
 
diff --git a/src/modules/pager/gadget/pager.c b/src/modules/pager/gadget/pager.c
index d7cf771..b11c4e9 100644
--- a/src/modules/pager/gadget/pager.c
+++ b/src/modules/pager/gadget/pager.c
@@ -932,7 +932,7 @@ _pager_cb_event_desk_show(void *data EINA_UNUSED, int type 
EINA_UNUSED, void *ev
         if (pp->timer)
           ecore_timer_reset(pp->timer);
         else
-          pp->timer = ecore_timer_add(pager_config->popup_speed,
+          pp->timer = ecore_timer_loop_add(pager_config->popup_speed,
                                       _pager_popup_cb_timeout, pp);
      }
 
@@ -988,7 +988,7 @@ _pager_cb_event_client_urgent_change(void *data 
EINA_UNUSED, int type EINA_UNUSE
              if (!pp) return ECORE_CALLBACK_RENEW;
 
              if (!pager_config->popup_urgent_stick)
-               pp->timer = ecore_timer_add(pager_config->popup_urgent_speed,
+               pp->timer = 
ecore_timer_loop_add(pager_config->popup_urgent_speed,
                                            _pager_popup_cb_timeout, pp);
              pp->urgent = 1;
           }
@@ -1659,7 +1659,7 @@ _pager_popup_hide(int switch_desk)
         handlers = eina_list_remove_list(handlers, handlers);
      }
 
-   act_popup->timer = ecore_timer_add(0.1, _pager_popup_cb_timeout, act_popup);
+   act_popup->timer = ecore_timer_loop_add(0.1, _pager_popup_cb_timeout, 
act_popup);
 
    if ((switch_desk) && (current_desk)) e_desk_show(current_desk);
 
diff --git a/src/modules/pager_plain/e_mod_main.c 
b/src/modules/pager_plain/e_mod_main.c
index 2e5a4d8..106f33e 100644
--- a/src/modules/pager_plain/e_mod_main.c
+++ b/src/modules/pager_plain/e_mod_main.c
@@ -1423,7 +1423,7 @@ _pager_cb_event_client_urgent_change(void *data 
EINA_UNUSED, int type EINA_UNUSE
              pp = _pager_popup_new(zone, 0);
 
              if ((pp) && (!pager_config->popup_urgent_stick))
-               pp->timer = ecore_timer_add(pager_config->popup_urgent_speed,
+               pp->timer = 
ecore_timer_loop_add(pager_config->popup_urgent_speed,
                                            _pager_popup_cb_timeout, pp);
              if (pp) pp->urgent = 1;
           }
@@ -1693,7 +1693,7 @@ _pager_cb_event_desk_show(void *data EINA_UNUSED, int 
type EINA_UNUSED, void *ev
         if (pp->timer)
           ecore_timer_reset(pp->timer);
         else
-          pp->timer = ecore_timer_add(pager_config->popup_speed,
+          pp->timer = ecore_timer_loop_add(pager_config->popup_speed,
                                       _pager_popup_cb_timeout, pp);
      }
 
@@ -2521,7 +2521,7 @@ _pager_popup_hide(int switch_desk)
         handlers = eina_list_remove_list(handlers, handlers);
      }
 
-   act_popup->timer = ecore_timer_add(0.1, _pager_popup_cb_timeout, act_popup);
+   act_popup->timer = ecore_timer_loop_add(0.1, _pager_popup_cb_timeout, 
act_popup);
 
    if ((switch_desk) && (current_desk)) e_desk_show(current_desk);
 
diff --git a/src/modules/quickaccess/e_mod_quickaccess.c 
b/src/modules/quickaccess/e_mod_quickaccess.c
index 33f1464..6d7ae8f 100644
--- a/src/modules/quickaccess/e_mod_quickaccess.c
+++ b/src/modules/quickaccess/e_mod_quickaccess.c
@@ -949,7 +949,7 @@ _e_qa_dia_del(void *data EINA_UNUSED)
    if (qa_mod->help_timeout)
      ecore_timer_reset(qa_mod->help_timeout);
    else
-     qa_mod->help_timeout = ecore_timer_add(20.0, _e_qa_help_timeout, NULL);
+     qa_mod->help_timeout = ecore_timer_loop_add(20.0, _e_qa_help_timeout, 
NULL);
 }
 
 static void
@@ -1002,7 +1002,7 @@ _e_qa_help5(void *data EINA_UNUSED)
 
    if (_e_qa_entry_find_border(e_win_client_get(qa_mod->demo_dia->win)))
      {
-        qa_mod->help_timer = ecore_timer_add(1, _e_qa_help_timer_cb, NULL);
+        qa_mod->help_timer = ecore_timer_loop_add(1, _e_qa_help_timer_cb, 
NULL);
         return;
      }
 
@@ -1140,7 +1140,7 @@ _e_qa_help_timer_helper(void)
              qa_mod->demo_state = 0;
              qa_mod->help_timer = NULL;
              if (mi->menu != qa_mod->menu)
-               qa_mod->help_timer = ecore_timer_add(0.2, _e_qa_help_timer2_cb, 
NULL);
+               qa_mod->help_timer = ecore_timer_loop_add(0.2, 
_e_qa_help_timer2_cb, NULL);
              return EINA_FALSE;
           }
         items = qa_mod->menu->items;
@@ -1246,7 +1246,7 @@ _e_qa_help3(void *data EINA_UNUSED)
    e_dialog_text_set(dia, _("This is a demo dialog used in the Quickaccess 
tutorial"));
    e_dialog_show(dia);
 
-   qa_mod->help_timer = ecore_timer_add(1, _e_qa_help_timer_cb, NULL);
+   qa_mod->help_timer = ecore_timer_loop_add(1, _e_qa_help_timer_cb, NULL);
    ecore_timer_reset(qa_mod->help_timeout);
    ecore_timer_freeze(qa_mod->help_timeout);
 
diff --git a/src/modules/shot/e_mod_main.c b/src/modules/shot/e_mod_main.c
index 86a5eaa..74bbe8f 100644
--- a/src/modules/shot/e_mod_main.c
+++ b/src/modules/shot/e_mod_main.c
@@ -1157,14 +1157,14 @@ static void
 _shot_border(E_Client *ec)
 {
    if (border_timer) ecore_timer_del(border_timer);
-   border_timer = ecore_timer_add(1.0, _shot_delay_border, ec);
+   border_timer = ecore_timer_loop_add(1.0, _shot_delay_border, ec);
 }
 
 static void
 _shot(E_Zone *zone)
 {
    if (timer) ecore_timer_del(timer);
-   timer = ecore_timer_add(1.0, _shot_delay, zone);
+   timer = ecore_timer_loop_add(1.0, _shot_delay, zone);
 }
 
 static void
diff --git a/src/modules/syscon/e_syscon.c b/src/modules/syscon/e_syscon.c
index 31c4044..528ca05 100644
--- a/src/modules/syscon/e_syscon.c
+++ b/src/modules/syscon/e_syscon.c
@@ -273,7 +273,7 @@ e_syscon_show(E_Zone *zone, const char *defact)
 
    if (e_config->syscon.do_input)
      {
-        deftimer = ecore_timer_add(e_config->syscon.timeout,
+        deftimer = ecore_timer_loop_add(e_config->syscon.timeout,
                                    _cb_timeout_defaction, NULL);
         if (defact) do_defact = eina_stringshare_add(defact);
      }
diff --git a/src/modules/sysinfo/batman/batman.c 
b/src/modules/sysinfo/batman/batman.c
index 28c1096..534c747 100644
--- a/src/modules/sysinfo/batman/batman.c
+++ b/src/modules/sysinfo/batman/batman.c
@@ -405,7 +405,7 @@ _batman_warning_popup(Instance *inst, int t, double percent)
        (!inst->cfg->batman.alert_timer))
      {
         inst->cfg->batman.alert_timer =
-          ecore_timer_add(inst->cfg->batman.alert_timeout,
+          ecore_timer_loop_add(inst->cfg->batman.alert_timeout,
                           _batman_cb_warning_popup_timeout, inst);
      }
 }
diff --git a/src/modules/sysinfo/batman/batman_fallback.c 
b/src/modules/sysinfo/batman/batman_fallback.c
index e10ecaf..9f0cf87 100644
--- a/src/modules/sysinfo/batman/batman_fallback.c
+++ b/src/modules/sysinfo/batman/batman_fallback.c
@@ -323,12 +323,12 @@ linux_sys_class_power_supply_cb_event_fd_active(void 
*data,
              free(sysev);
 
              if (re_init_timer) ecore_timer_del(re_init_timer);
-             re_init_timer = ecore_timer_add(1.0, 
linux_sys_class_power_supply_cb_re_init, NULL);
+             re_init_timer = ecore_timer_loop_add(1.0, 
linux_sys_class_power_supply_cb_re_init, NULL);
           }
         else
           {
              if (sys_class_delay_check) ecore_timer_del(sys_class_delay_check);
-             sys_class_delay_check = ecore_timer_add(0.2, 
linux_sys_class_power_supply_cb_delay_check, NULL);
+             sys_class_delay_check = ecore_timer_loop_add(0.2, 
linux_sys_class_power_supply_cb_delay_check, NULL);
           }
      }
    return ECORE_CALLBACK_CANCEL;
@@ -750,7 +750,7 @@ linux_acpi_cb_acpid_data(void *data  EINA_UNUSED,
                          void *event EINA_UNUSED)
 {
    if (delay_check) ecore_timer_del(delay_check);
-   delay_check = ecore_timer_add(0.2, linux_acpi_cb_delay_check, NULL);
+   delay_check = ecore_timer_loop_add(0.2, linux_acpi_cb_delay_check, NULL);
    return ECORE_CALLBACK_PASS_ON;
 }
 
@@ -786,7 +786,7 @@ linux_acpi_cb_event_fd_active(void *data        EINA_UNUSED,
         else
           {
              if (delay_check) ecore_timer_del(delay_check);
-             delay_check = ecore_timer_add(0.2, linux_acpi_cb_delay_check, 
NULL);
+             delay_check = ecore_timer_loop_add(0.2, 
linux_acpi_cb_delay_check, NULL);
           }
      }
    return ECORE_CALLBACK_RENEW;
diff --git a/src/modules/tasks/e_mod_main.c b/src/modules/tasks/e_mod_main.c
index ef75cf4..3e3c553 100644
--- a/src/modules/tasks/e_mod_main.c
+++ b/src/modules/tasks/e_mod_main.c
@@ -476,7 +476,7 @@ _tasks_refill_all(void)
         if (task_refill_timer)
           ecore_timer_reset(task_refill_timer);
         else
-          task_refill_timer = ecore_timer_add(0.5, _refill_timer, NULL);
+          task_refill_timer = ecore_timer_loop_add(0.5, _refill_timer, NULL);
         return;
      }
 
diff --git a/src/modules/teamwork/e_mod_tw.c b/src/modules/teamwork/e_mod_tw.c
index 5eb2c12..b3d8be7 100644
--- a/src/modules/teamwork/e_mod_tw.c
+++ b/src/modules/teamwork/e_mod_tw.c
@@ -505,7 +505,7 @@ tw_link_hide(E_Client *ec, const char *uri)
         if (EINA_DBL_NONZERO(tw_config->mouse_out_delay))
           {
              if (tw_hide_timer) ecore_timer_reset(tw_hide_timer);
-             else tw_hide_timer = ecore_timer_add(tw_config->mouse_out_delay, 
tw_hide, NULL);
+             else tw_hide_timer = 
ecore_timer_loop_add(tw_config->mouse_out_delay, tw_hide, NULL);
           }
         else
           tw_hide(NULL);
@@ -622,7 +622,7 @@ media_cleaner_cb(void *data)
         if (ic->timestamp >= now)
           {
              /* stop the idler for now to avoid pointless spinning */
-             ecore_timer_add(24 * 60 * 60, (Ecore_Task_Cb)tw_idler_start, 
NULL);
+             ecore_timer_loop_add(24 * 60 * 60, (Ecore_Task_Cb)tw_idler_start, 
NULL);
              media_cleaner[mcl->video] = NULL;
              tw_cache_list[mcl->video] = mcl;
              return EINA_FALSE;
@@ -862,7 +862,7 @@ tw_video_closed_cb(void *data, Evas_Object *obj, void 
*event_info EINA_UNUSED)
    evas_object_hide(obj);
    evas_object_hide(data);
    emotion_object_play_set(obj, EINA_FALSE);
-   ecore_timer_add(3.0, stupid_obj_del_workaround_hack, data);
+   ecore_timer_loop_add(3.0, stupid_obj_del_workaround_hack, data);
    if (!tw_tmpfile) return;
    eina_stringshare_replace(&tw_tmpfile, NULL);
 }
@@ -1125,7 +1125,7 @@ tw_handler_hide(void)
    if (EINA_DBL_NONZERO(tw_config->mouse_out_delay))
      {
         if (tw_hide_timer) ecore_timer_reset(tw_hide_timer);
-        else tw_hide_timer = ecore_timer_add(tw_config->mouse_out_delay, 
tw_hide, NULL);
+        else tw_hide_timer = ecore_timer_loop_add(tw_config->mouse_out_delay, 
tw_hide, NULL);
      }
    else
      tw_hide(NULL);
diff --git a/src/modules/tiling/e_mod_tiling.c 
b/src/modules/tiling/e_mod_tiling.c
index 3b3f063..69f6cc8 100644
--- a/src/modules/tiling/e_mod_tiling.c
+++ b/src/modules/tiling/e_mod_tiling.c
@@ -888,7 +888,7 @@ _tiling_split_type_changed_popup(void)
 
         evas_object_show(comp_obj);
 
-        _G.split_popup.timer = ecore_timer_add(TILING_POPUP_TIMEOUT, 
_split_type_popup_timer_del_cb, NULL);
+        _G.split_popup.timer = ecore_timer_loop_add(TILING_POPUP_TIMEOUT, 
_split_type_popup_timer_del_cb, NULL);
      }
    else
      {
diff --git a/src/modules/time/clock.c b/src/modules/time/clock.c
index c52d2b6..4a6e556 100644
--- a/src/modules/time/clock.c
+++ b/src/modules/time/clock.c
@@ -205,7 +205,7 @@ _clock_timer(void *d EINA_UNUSED)
    if (clock_timer)
      ecore_timer_interval_set(clock_timer, sec);
    else
-     clock_timer = ecore_timer_add(sec, _clock_timer, NULL);
+     clock_timer = ecore_timer_loop_add(sec, _clock_timer, NULL);
    return EINA_TRUE;
 }
 
diff --git a/src/modules/time/time.c b/src/modules/time/time.c
index 4f2d2a1..f34179b 100644
--- a/src/modules/time/time.c
+++ b/src/modules/time/time.c
@@ -276,7 +276,7 @@ _update_today_timer(void *data EINA_UNUSED)
 
    t_tomorrow = mktime(&today) + 24 * 60 * 60;
    if (update_today) ecore_timer_interval_set(update_today, t_tomorrow - t);
-   else update_today = ecore_timer_add(t_tomorrow - t, _update_today_timer, 
NULL);
+   else update_today = ecore_timer_loop_add(t_tomorrow - t, 
_update_today_timer, NULL);
    return EINA_TRUE;
 }
 
diff --git a/src/modules/winlist/e_winlist.c b/src/modules/winlist/e_winlist.c
index 4e62d27..1b57383 100644
--- a/src/modules/winlist/e_winlist.c
+++ b/src/modules/winlist/e_winlist.c
@@ -890,7 +890,7 @@ _e_winlist_show_active(void)
      {
         _scroll_to = 1;
         if (!_scroll_timer)
-          _scroll_timer = ecore_timer_add(0.01, _e_winlist_scroll_timer, NULL);
+          _scroll_timer = ecore_timer_loop_add(0.01, _e_winlist_scroll_timer, 
NULL);
         if (!_animator)
           _animator = ecore_animator_add(_e_winlist_animator, NULL);
      }
diff --git a/src/modules/wizard/e_wizard.c b/src/modules/wizard/e_wizard.c
index 3129bb8..d1e01cd 100644
--- a/src/modules/wizard/e_wizard.c
+++ b/src/modules/wizard/e_wizard.c
@@ -320,7 +320,7 @@ _e_wizard_check_xdg(void)
      {
         /* Advance within 15 secs if no xdg event */
         if (!next_timer)
-          next_timer = ecore_timer_add(7.0, _e_wizard_cb_next_page, NULL);
+          next_timer = ecore_timer_loop_add(7.0, _e_wizard_cb_next_page, NULL);
         next_can = 0;
         _e_wizard_next_eval();
         return 0;
@@ -340,7 +340,7 @@ _e_wizard_check_xdg(void)
           {
              /* Advance within 15 secs if no xdg event */
              if (!next_timer)
-               next_timer = ecore_timer_add(7.0, _e_wizard_cb_next_page, NULL);
+               next_timer = ecore_timer_loop_add(7.0, _e_wizard_cb_next_page, 
NULL);
              next_can = 0;
              _e_wizard_next_eval();
              return 0;
diff --git a/src/modules/wizard/page_000.c b/src/modules/wizard/page_000.c
index 90db20b..9606a6f 100644
--- a/src/modules/wizard/page_000.c
+++ b/src/modules/wizard/page_000.c
@@ -39,7 +39,7 @@ wizard_page_show(E_Wizard_Page *pg EINA_UNUSED)
 
    /* advance in 1 sec */
    if (!_next_timer)
-     _next_timer = ecore_timer_add(1.0, _next_page, NULL);
+     _next_timer = ecore_timer_loop_add(1.0, _next_page, NULL);
    return 1;
 }
 
diff --git a/src/modules/wizard/page_040.c b/src/modules/wizard/page_040.c
index 83e14e1..36b676b 100644
--- a/src/modules/wizard/page_040.c
+++ b/src/modules/wizard/page_040.c
@@ -41,7 +41,7 @@ wizard_page_show(E_Wizard_Page *pg EINA_UNUSED)
    extra_desks = ecore_file_ls(buf);
 
    /* advance in 1 sec */
-   _next_timer = ecore_timer_add(1.0, _next_page, NULL);
+   _next_timer = ecore_timer_loop_add(1.0, _next_page, NULL);
    
    EINA_LIST_FREE(extra_desks, file)
      {
diff --git a/src/modules/wizard/page_110.c b/src/modules/wizard/page_110.c
index 5f710a3..ac48ff4 100644
--- a/src/modules/wizard/page_110.c
+++ b/src/modules/wizard/page_110.c
@@ -127,7 +127,7 @@ wizard_page_show(E_Wizard_Page *pg)
                                                _check_connman_owner, pg);
         if (connman_timeout)
           ecore_timer_del(connman_timeout);
-        connman_timeout = ecore_timer_add(0.5, _connman_fail, pg);
+        connman_timeout = ecore_timer_loop_add(0.5, _connman_fail, pg);
         have_connman = EINA_TRUE;
         e_wizard_button_next_enable_set(0);
      }
diff --git a/src/modules/xkbswitch/e_mod_config.c 
b/src/modules/xkbswitch/e_mod_config.c
index bc69303..45e41a5 100644
--- a/src/modules/xkbswitch/e_mod_config.c
+++ b/src/modules/xkbswitch/e_mod_config.c
@@ -751,7 +751,7 @@ _basic_create(E_Config_Dialog *cfd, Evas *evas, 
E_Config_Dialog_Data *cfdata)
      ecore_timer_del(cfdata->fill_delay);
 
    /* Trigger the fill */
-   cfdata->fill_delay = ecore_timer_add(0.2, _cb_fill_delay, cfdata);
+   cfdata->fill_delay = ecore_timer_loop_add(0.2, _cb_fill_delay, cfdata);
 
    return mainn;
 }
@@ -791,7 +791,7 @@ _advanced_create(E_Config_Dialog *cfd, Evas *evas, 
E_Config_Dialog_Data *cfdata)
      ecore_timer_del(cfdata->fill_delay);
 
    /* Trigger the fill */
-   cfdata->fill_delay = ecore_timer_add(0.2, _cb_fill_delay, cfdata);
+   cfdata->fill_delay = ecore_timer_loop_add(0.2, _cb_fill_delay, cfdata);
 
    return sc;
 }
@@ -1361,7 +1361,7 @@ _dlg_add_new(E_Config_Dialog_Data *cfdata)
    if (cfdata->dlg_fill_delay) ecore_timer_del(cfdata->dlg_fill_delay);
 
    /* Trigger the fill */
-   cfdata->dlg_fill_delay = ecore_timer_add(0.2, _cb_dlg_fill_delay, cfdata);
+   cfdata->dlg_fill_delay = ecore_timer_loop_add(0.2, _cb_dlg_fill_delay, 
cfdata);
 
    /* Some buttons */
    e_dialog_button_add(dlg, _("OK"), NULL, _dlg_add_cb_ok, cfdata);
diff --git a/src/tests/focusgrab.c b/src/tests/focusgrab.c
index 9645689..26e87da 100644
--- a/src/tests/focusgrab.c
+++ b/src/tests/focusgrab.c
@@ -16,7 +16,7 @@ main(void)
    ecore_evas_init();
    ee = ecore_evas_new(NULL, 0, 0, 200, 200, NULL);
    ecore_evas_show(ee);
-   ecore_timer_add(3.0, (Ecore_Task_Cb)_focus, ee);
+   ecore_timer_loop_add(3.0, (Ecore_Task_Cb)_focus, ee);
    ecore_main_loop_begin();
    return 0;
 }
diff --git a/src/tests/fullscreen.c b/src/tests/fullscreen.c
index 892574f..2fa5022 100644
--- a/src/tests/fullscreen.c
+++ b/src/tests/fullscreen.c
@@ -27,7 +27,7 @@ main(void)
 
    ecore_evas_init();
    ee = ecore_evas_new(NULL, 0, 0, 200, 200, NULL);
-   ecore_timer_add(2, fs, ee);
+   ecore_timer_loop_add(2, fs, ee);
    ecore_evas_show(ee);
    ecore_event_handler_add(ECORE_EVENT_KEY_DOWN, (Ecore_Event_Handler_Cb)key, 
ee);
    ecore_main_loop_begin();
diff --git a/src/tests/override_fullscreen.c b/src/tests/override_fullscreen.c
index 331119b..a6adf33 100644
--- a/src/tests/override_fullscreen.c
+++ b/src/tests/override_fullscreen.c
@@ -25,7 +25,7 @@ main(void)
    ecore_x_netwm_state_request_send(a, 0,
                                       ECORE_X_WINDOW_STATE_FULLSCREEN, -1, 1);
    ecore_x_icccm_name_class_set(a, "override_fullscreen", "test");
-   ecore_timer_add(1.0, test_state, NULL);
+   ecore_timer_loop_add(1.0, test_state, NULL);
    ecore_main_loop_begin();
    return 0;
 }
diff --git a/src/tests/shaped_input.c b/src/tests/shaped_input.c
index ebe9f6a..417c73b 100644
--- a/src/tests/shaped_input.c
+++ b/src/tests/shaped_input.c
@@ -37,7 +37,7 @@ main(void)
    a = ecore_x_window_input_new(0, 0, 0, 100, 100);
    ecore_x_window_show(a);
 
-   ecore_timer_add(0.01, _shape, NULL);
+   ecore_timer_loop_add(0.01, _shape, NULL);
 
 
    ecore_x_icccm_name_class_set(a, "shaped_input", "test");

-- 


Reply via email to