output: Add _pepper_efl_output_start_repaint_loop
authorSangjin Lee <lsj119@samsung.com>
Mon, 9 Nov 2015 12:48:01 +0000 (21:48 +0900)
committerSangjin Lee <lsj119@samsung.com>
Mon, 9 Nov 2015 13:45:37 +0000 (22:45 +0900)
Change-Id: I82f4d8ab196a40eaa60bf571ef3fdeee17282541
Signed-off-by: Sangjin Lee <lsj119@samsung.com>
src/lib/output.c

index 5d891dee709f35e768f7626d536ff5fdc1d4ff29..5ade00e4934cd009af3ef60c1669a832d267f9d3 100644 (file)
@@ -87,6 +87,18 @@ _pepper_efl_output_assign_planes(void *o, const pepper_list_t *view_list)
      }
 }
 
+static void
+_pepper_efl_output_start_repaint_loop(void *o)
+{
+   pepper_efl_output_t *output = o;
+   struct timespec     ts;
+
+   DBG("callback start repaint loop");
+
+   pepper_compositor_get_time(output->comp->pepper.comp, &ts);
+   pepper_output_finish_frame(output->base, &ts);
+}
+
 static void
 _pepper_efl_output_cb_render_post(void *data, Evas *e EINA_UNUSED, void *event_info EINA_UNUSED)
 {
@@ -100,8 +112,6 @@ _pepper_efl_output_cb_render_post(void *data, Evas *e EINA_UNUSED, void *event_i
    // couldn't update image.
    EINA_LIST_FREE(output->update_list, es)
       pepper_efl_object_render(es->obj);
-
-   pepper_output_finish_frame(output->base, NULL);
 }
 
 static void
@@ -161,6 +171,7 @@ static const struct pepper_output_backend output_interface =
    _pepper_efl_output_set_mode,
 
    _pepper_efl_output_assign_planes,
+   _pepper_efl_output_start_repaint_loop,
    _pepper_efl_output_repaint,
    _pepper_efl_output_attach_surface,
    _pepper_efl_output_flush_surface