diff options
author | Derek Foreman <derekf@osg.samsung.com> | 2017-08-11 14:48:41 -0500 |
---|---|---|
committer | Derek Foreman <derekf@osg.samsung.com> | 2017-08-11 17:11:12 -0500 |
commit | eec565cc0fe9eca6aea73fc8963f0ebbb2bbc154 (patch) | |
tree | 3133a39c55450cf2030713a9a3f49466dc1cc91b /src/lib | |
parent | 8dbb8944b3c9980f5cb79b8c47dc9bb43fc5fdaf (diff) |
ecore_drm2: Add query for pending pageflip
We've been tracking this in ecore_evas, but ecore_evas isn't the only
caller, and it doesn't know about flips initiated by the evas engines.
Diffstat (limited to 'src/lib')
-rw-r--r-- | src/lib/ecore_drm2/Ecore_Drm2.h | 12 | ||||
-rw-r--r-- | src/lib/ecore_drm2/ecore_drm2_outputs.c | 10 |
2 files changed, 22 insertions, 0 deletions
diff --git a/src/lib/ecore_drm2/Ecore_Drm2.h b/src/lib/ecore_drm2/Ecore_Drm2.h index 031a3dac88..e1609adac2 100644 --- a/src/lib/ecore_drm2/Ecore_Drm2.h +++ b/src/lib/ecore_drm2/Ecore_Drm2.h | |||
@@ -1059,6 +1059,18 @@ EAPI Eina_Bool ecore_drm2_output_blanktime_get(Ecore_Drm2_Output *output, int se | |||
1059 | 1059 | ||
1060 | EAPI int ecore_drm2_device_fd_get(Ecore_Drm2_Device *device); | 1060 | EAPI int ecore_drm2_device_fd_get(Ecore_Drm2_Device *device); |
1061 | 1061 | ||
1062 | /** | ||
1063 | * Check if there's a pageflip in progress for an output | ||
1064 | * | ||
1065 | * Checks whether an output has submit a flip but not yet had | ||
1066 | * a callback completion event for that flip yet. | ||
1067 | * | ||
1068 | * @param output | ||
1069 | * @return Whether there's a flip in progress or not | ||
1070 | * @since 1.20 | ||
1071 | */ | ||
1072 | EAPI Eina_Bool ecore_drm2_output_pending_get(Ecore_Drm2_Output *output); | ||
1073 | |||
1062 | # endif | 1074 | # endif |
1063 | 1075 | ||
1064 | #endif | 1076 | #endif |
diff --git a/src/lib/ecore_drm2/ecore_drm2_outputs.c b/src/lib/ecore_drm2/ecore_drm2_outputs.c index 29e26c80bc..1f52953ffb 100644 --- a/src/lib/ecore_drm2/ecore_drm2_outputs.c +++ b/src/lib/ecore_drm2/ecore_drm2_outputs.c | |||
@@ -1637,3 +1637,13 @@ ecore_drm2_output_info_get(Ecore_Drm2_Output *output, int *x, int *y, int *w, in | |||
1637 | if (x) *x = output->x; | 1637 | if (x) *x = output->x; |
1638 | if (y) *y = output->y; | 1638 | if (y) *y = output->y; |
1639 | } | 1639 | } |
1640 | |||
1641 | EAPI Eina_Bool | ||
1642 | ecore_drm2_output_pending_get(Ecore_Drm2_Output *output) | ||
1643 | { | ||
1644 | EINA_SAFETY_ON_NULL_RETURN_VAL(output, EINA_FALSE); | ||
1645 | |||
1646 | if (output->pending.fb) return EINA_TRUE; | ||
1647 | |||
1648 | return EINA_FALSE; | ||
1649 | } | ||