summaryrefslogtreecommitdiff
path: root/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c
diff options
context:
space:
mode:
authorChris Michael <cp.michael@samsung.com>2018-02-06 09:12:39 -0500
committerChris Michael <cp.michael@samsung.com>2018-02-13 11:44:23 -0500
commit32d32d402f1f26ec8b1abd0a06ace9bcb473485e (patch)
tree08188f9f57915a510d035c705da42d7710484da3 /src/modules/ecore_evas/engines/drm/ecore_evas_drm.c
parenta78dc2d8164692e984ad162f603f8b0d052934e9 (diff)
ecore-evas-drm: Use output viewport in ecore_evas_animator_tick calls
@fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
Diffstat (limited to 'src/modules/ecore_evas/engines/drm/ecore_evas_drm.c')
-rw-r--r--src/modules/ecore_evas/engines/drm/ecore_evas_drm.c13
1 files changed, 11 insertions, 2 deletions
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 73e3a45621..3059d74a09 100644
--- a/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c
+++ b/src/modules/ecore_evas/engines/drm/ecore_evas_drm.c
@@ -715,10 +715,14 @@ _cb_pageflip(int fd EINA_UNUSED, unsigned int frame EINA_UNUSED, unsigned int se
715 715
716 if (edata->ticking) 716 if (edata->ticking)
717 { 717 {
718 int x, y, w, h;
718 double t = (double)sec + ((double)usec / 1000000); 719 double t = (double)sec + ((double)usec / 1000000);
719 720
721 ecore_drm2_output_info_get(edata->output, &x, &y, &w, &h, NULL);
722
720 if (!edata->once) t = ecore_time_get(); 723 if (!edata->once) t = ecore_time_get();
721 ecore_evas_animator_tick(ee, NULL, t - edata->offset); 724 ecore_evas_animator_tick(ee, &(Eina_Rectangle){x, y, w, h},
725 t - edata->offset);
722 } 726 }
723 else if (ret) 727 else if (ret)
724 ecore_drm2_fb_flip(NULL, edata->output); 728 ecore_drm2_fb_flip(NULL, edata->output);
@@ -741,11 +745,16 @@ _tick_job(void *data)
741{ 745{
742 Ecore_Evas_Engine_Drm_Data *edata; 746 Ecore_Evas_Engine_Drm_Data *edata;
743 Ecore_Evas *ee; 747 Ecore_Evas *ee;
748 int x, y, w, h;
744 749
745 ee = data; 750 ee = data;
746 edata = ee->engine.data; 751 edata = ee->engine.data;
747 edata->tick_job = NULL; 752 edata->tick_job = NULL;
748 ecore_evas_animator_tick(ee, NULL, edata->tick_job_timestamp); 753
754 ecore_drm2_output_info_get(edata->output, &x, &y, &w, &h, NULL);
755
756 ecore_evas_animator_tick(ee, &(Eina_Rectangle){x, y, w, h},
757 edata->tick_job_timestamp);
749} 758}
750 759
751static void 760static void