derekf pushed a commit to branch master.

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

commit aa8d9c1829f65c4fe0bb79a73e49f56c0aa2b92f
Author: Derek Foreman <[email protected]>
Date:   Wed Jul 12 16:29:17 2017 -0500

    ecore_evas: Add a function pointer for last_tick_get
    
    Engines that provide their own tickers may need to be able to provide the
    time of the last tick even if they weren't sending ticks to EFL at the
    time.
    
    This is a feature added during freeze as it's necessary to resolve a bug.
    
    ref T5462
---
 src/lib/ecore_evas/ecore_evas_private.h                            | 2 ++
 src/modules/ecore_evas/engines/cocoa/ecore_evas_cocoa.c            | 1 +
 src/modules/ecore_evas/engines/drm/ecore_evas_drm.c                | 1 +
 src/modules/ecore_evas/engines/extn/ecore_evas_extn.c              | 1 +
 src/modules/ecore_evas/engines/fb/ecore_evas_fb.c                  | 1 +
 src/modules/ecore_evas/engines/psl1ght/ecore_evas_psl1ght.c        | 1 +
 src/modules/ecore_evas/engines/sdl/ecore_evas_sdl.c                | 1 +
 src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c | 1 +
 src/modules/ecore_evas/engines/win32/ecore_evas_win32.c            | 1 +
 src/modules/ecore_evas/engines/x/ecore_evas_x.c                    | 1 +
 10 files changed, 11 insertions(+)

diff --git a/src/lib/ecore_evas/ecore_evas_private.h 
b/src/lib/ecore_evas/ecore_evas_private.h
index 2beabab84c..b808cb2fed 100644
--- a/src/lib/ecore_evas/ecore_evas_private.h
+++ b/src/lib/ecore_evas/ecore_evas_private.h
@@ -169,6 +169,8 @@ struct _Ecore_Evas_Engine_Func
    void (*fn_pointer_device_xy_get)(const Ecore_Evas *ee, const 
Efl_Input_Device *pointer, Evas_Coord *x, Evas_Coord *y);
 
    Eina_Bool (*fn_prepare)(Ecore_Evas *ee);
+
+   double (*fn_last_tick_get)(Ecore_Evas *ee);
 };
 
 struct _Ecore_Evas_Interface
diff --git a/src/modules/ecore_evas/engines/cocoa/ecore_evas_cocoa.c 
b/src/modules/ecore_evas/engines/cocoa/ecore_evas_cocoa.c
index 41f06fce3f..75ba1da62c 100644
--- a/src/modules/ecore_evas/engines/cocoa/ecore_evas_cocoa.c
+++ b/src/modules/ecore_evas/engines/cocoa/ecore_evas_cocoa.c
@@ -509,6 +509,7 @@ static Ecore_Evas_Engine_Func _ecore_cocoa_engine_func =
     NULL, //fn_callback_device_mouse_out_set
     NULL, //fn_pointer_device_xy_get
     NULL, //fn_prepare
+    NULL, //fn_last_tick_get
   };
 
 static Ecore_Cocoa_Window *
diff --git a/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c 
b/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c
index 4f004cecf6..96d0c27656 100644
--- a/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c
+++ b/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c
@@ -760,6 +760,7 @@ static Ecore_Evas_Engine_Func _ecore_evas_drm_engine_func =
    NULL, //fn_callback_device_mouse_out_set
    NULL, //fn_pointer_device_xy_get
    NULL, //fn_prepare
+   NULL, //fn_last_tick_get
 };
 
 static Ecore_Evas *
diff --git a/src/modules/ecore_evas/engines/extn/ecore_evas_extn.c 
b/src/modules/ecore_evas/engines/extn/ecore_evas_extn.c
index 299dd48e55..e75d6cec46 100644
--- a/src/modules/ecore_evas/engines/extn/ecore_evas_extn.c
+++ b/src/modules/ecore_evas/engines/extn/ecore_evas_extn.c
@@ -927,6 +927,7 @@ static const Ecore_Evas_Engine_Func 
_ecore_extn_plug_engine_func =
    NULL, //fn_callback_device_mouse_out_set
    NULL, //fn_pointer_device_xy_get
    NULL, //fn_prepare
+   NULL, //fn_last_tick_get
 };
 
 static Eina_Bool
diff --git a/src/modules/ecore_evas/engines/fb/ecore_evas_fb.c 
b/src/modules/ecore_evas/engines/fb/ecore_evas_fb.c
index 4aea2240cd..7dd2ddc618 100644
--- a/src/modules/ecore_evas/engines/fb/ecore_evas_fb.c
+++ b/src/modules/ecore_evas/engines/fb/ecore_evas_fb.c
@@ -562,6 +562,7 @@ static Ecore_Evas_Engine_Func _ecore_fb_engine_func =
      NULL, //fn_callback_device_mouse_out_set
      NULL, //fn_pointer_device_xy_get
      NULL, //fn_prepare
+     NULL, //fn_last_tick_get
 };
 
 EAPI Ecore_Evas *
diff --git a/src/modules/ecore_evas/engines/psl1ght/ecore_evas_psl1ght.c 
b/src/modules/ecore_evas/engines/psl1ght/ecore_evas_psl1ght.c
index 239dbde254..0ad3b87cd3 100644
--- a/src/modules/ecore_evas/engines/psl1ght/ecore_evas_psl1ght.c
+++ b/src/modules/ecore_evas/engines/psl1ght/ecore_evas_psl1ght.c
@@ -369,6 +369,7 @@ static Ecore_Evas_Engine_Func _ecore_psl1ght_engine_func =
    NULL, //fn_callback_device_mouse_out_set
    NULL, //fn_pointer_device_xy_get
    NULL, //fn_prepare
+   NULL, //fn_last_tick_get
 };
 
 EAPI Ecore_Evas *
diff --git a/src/modules/ecore_evas/engines/sdl/ecore_evas_sdl.c 
b/src/modules/ecore_evas/engines/sdl/ecore_evas_sdl.c
index 3669ef7d0c..56b789dd3c 100644
--- a/src/modules/ecore_evas/engines/sdl/ecore_evas_sdl.c
+++ b/src/modules/ecore_evas/engines/sdl/ecore_evas_sdl.c
@@ -454,6 +454,7 @@ static Ecore_Evas_Engine_Func _ecore_sdl_engine_func =
    NULL, //fn_callback_device_mouse_out_set
    NULL, //fn_pointer_device_xy_get
    NULL, //fn_prepare
+   NULL, //fn_last_tick_get
 };
 
 static Ecore_Evas*
diff --git a/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c 
b/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c
index 16a6c98876..3946f5e4ef 100644
--- a/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c
+++ b/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c
@@ -2212,6 +2212,7 @@ static Ecore_Evas_Engine_Func _ecore_wl_engine_func =
    NULL, //fn_callback_device_mouse_out_set
    _ecore_evas_wl_common_pointer_device_xy_get,
    _ecore_evas_wl_common_prepare,
+   NULL, //fn_last_tick_get
 };
 
 Ecore_Evas *
diff --git a/src/modules/ecore_evas/engines/win32/ecore_evas_win32.c 
b/src/modules/ecore_evas/engines/win32/ecore_evas_win32.c
index 44717e1c24..3b87959b1a 100644
--- a/src/modules/ecore_evas/engines/win32/ecore_evas_win32.c
+++ b/src/modules/ecore_evas/engines/win32/ecore_evas_win32.c
@@ -1281,6 +1281,7 @@ static Ecore_Evas_Engine_Func _ecore_win32_engine_func =
      NULL, //fn_callback_device_mouse_out_set
      NULL, //fn_pointer_device_xy_get
      NULL, //fn_prepare
+     NULL, //fn_last_tick_get
 };
 
 #endif /* BUILD_ECORE_EVAS_WIN32 */
diff --git a/src/modules/ecore_evas/engines/x/ecore_evas_x.c 
b/src/modules/ecore_evas/engines/x/ecore_evas_x.c
index 5a08aa853d..542b3f82e9 100644
--- a/src/modules/ecore_evas/engines/x/ecore_evas_x.c
+++ b/src/modules/ecore_evas/engines/x/ecore_evas_x.c
@@ -3758,6 +3758,7 @@ static Ecore_Evas_Engine_Func _ecore_x_engine_func =
    NULL, //fn_callback_device_mouse_out_set
    NULL, //fn_pointer_device_xy_get
    NULL, //fn_prepare
+   NULL, //fn_last_tick_get
 };
 
 /*

-- 


Reply via email to