jpeg pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=58c380823181ea75bc9969dc3dfe017d64b9b508

commit 58c380823181ea75bc9969dc3dfe017d64b9b508
Author: Jean-Philippe Andre <jp.an...@samsung.com>
Date:   Fri Jul 29 17:30:25 2016 +0900

    ecore_evas: Register animators for inline image ee
    
    In ecore_evas_object_image_new, register animator tick del/add
    catchers, so that animators can work. This fixes mouse scroll
    in an inline window.
---
 src/lib/ecore_evas/ecore_evas.c         | 8 +++++++-
 src/lib/ecore_evas/ecore_evas_buffer.c  | 2 ++
 src/lib/ecore_evas/ecore_evas_private.h | 1 +
 3 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/src/lib/ecore_evas/ecore_evas.c b/src/lib/ecore_evas/ecore_evas.c
index 1a6bed5..5c6bf83 100644
--- a/src/lib/ecore_evas/ecore_evas.c
+++ b/src/lib/ecore_evas/ecore_evas.c
@@ -3232,13 +3232,19 @@ EO_CALLBACKS_ARRAY_DEFINE(animator_watch,
                           { EO_EVENT_CALLBACK_DEL, 
_check_animator_event_catcher_del });
 
 EAPI void
+_ecore_evas_register_animators(Ecore_Evas *ee)
+{
+   eo_event_callback_array_add(ee->evas, animator_watch(), ee);
+}
+
+EAPI void
 _ecore_evas_register(Ecore_Evas *ee)
 {
    ee->registered = 1;
    ecore_evases = (Ecore_Evas *)eina_inlist_prepend
      (EINA_INLIST_GET(ecore_evases), EINA_INLIST_GET(ee));
 
-   eo_event_callback_array_add(ee->evas, animator_watch(), ee);
+   _ecore_evas_register_animators(ee);
 
    if (_ecore_evas_render_sync) ecore_evas_first = EINA_TRUE;
 }
diff --git a/src/lib/ecore_evas/ecore_evas_buffer.c 
b/src/lib/ecore_evas/ecore_evas_buffer.c
index be87234..795f5b7 100644
--- a/src/lib/ecore_evas/ecore_evas_buffer.c
+++ b/src/lib/ecore_evas/ecore_evas_buffer.c
@@ -910,6 +910,8 @@ ecore_evas_object_image_new(Ecore_Evas *ee_target)
    evas_key_lock_add(ee->evas, "Num_Lock");
    evas_key_lock_add(ee->evas, "Scroll_Lock");
 
+   _ecore_evas_register_animators(ee);
+
    ee_target->sub_ecore_evas = eina_list_append(ee_target->sub_ecore_evas, ee);
 
    return o;
diff --git a/src/lib/ecore_evas/ecore_evas_private.h 
b/src/lib/ecore_evas/ecore_evas_private.h
index fea4792..4eaa369 100644
--- a/src/lib/ecore_evas/ecore_evas_private.h
+++ b/src/lib/ecore_evas/ecore_evas_private.h
@@ -361,6 +361,7 @@ EAPI void _ecore_evas_fps_debug_init(void);
 EAPI void _ecore_evas_fps_debug_shutdown(void);
 EAPI void _ecore_evas_fps_debug_rendertime_add(double t);
 EAPI void _ecore_evas_register(Ecore_Evas *ee);
+EAPI void _ecore_evas_register_animators(Ecore_Evas *ee);
 EAPI void _ecore_evas_free(Ecore_Evas *ee);
 EAPI void _ecore_evas_idle_timeout_update(Ecore_Evas *ee);
 EAPI void _ecore_evas_mouse_move_process(Ecore_Evas *ee, int x, int y, 
unsigned int timestamp);

-- 


Reply via email to