ecore_evas: Perform a tick before a manual render if we're not ticking
authorDerek Foreman <derekf@osg.samsung.com>
Wed, 12 Jul 2017 21:31:19 +0000 (16:31 -0500)
committerDerek Foreman <derekf@osg.samsung.com>
Thu, 13 Jul 2017 23:07:42 +0000 (18:07 -0500)
If we turned off the ticking with manual_render_set then perform a
manual render, we need animators to update.

ref T5462

src/lib/ecore_evas/ecore_evas.c

index 5997628..c3feb3f 100644 (file)
@@ -2667,6 +2667,19 @@ EAPI void
 ecore_evas_manual_render(Ecore_Evas *ee)
 {
    ECORE_EVAS_CHECK(ee);
+
+   if (ee->manual_render)
+     {
+        double t = -1.0;
+
+        if (ee->engine.func->fn_last_tick_get)
+          t = ee->engine.func->fn_last_tick_get(ee);
+        if (t < 0.0)
+          t = ecore_loop_time_get();
+
+        ecore_evas_animator_tick(ee, NULL, t);
+     }
+
    if (ee->engine.func->fn_render)
      {
         ee->engine.func->fn_render(ee);