ecore_evas: add infrastructure to properly track sub ecore_evas.

This commit is contained in:
Cedric Bail 2017-05-05 17:12:17 -07:00
parent 7b4b7b6696
commit 696ed3e2e8
2 changed files with 12 additions and 0 deletions

View File

@ -3098,6 +3098,17 @@ _ecore_evas_register(Ecore_Evas *ee)
evas_event_callback_add(ee->evas, EVAS_CALLBACK_RENDER_POST, _evas_evas_buffer_rendered, ee);
}
void
_ecore_evas_subregister(Ecore_Evas *ee_target, Ecore_Evas *ee)
{
_ecore_evas_register_animators(ee);
ee_target->sub_ecore_evas = eina_list_append(ee_target->sub_ecore_evas, ee);
if (!ee->engine.func->fn_render)
evas_event_callback_add(ee->evas, EVAS_CALLBACK_RENDER_POST, _evas_evas_buffer_rendered, ee);
}
EAPI void
_ecore_evas_ref(Ecore_Evas *ee)
{

View File

@ -390,6 +390,7 @@ EAPI void _ecore_evas_fps_debug_init(void);
EAPI void _ecore_evas_fps_debug_shutdown(void);
EAPI void _ecore_evas_fps_debug_rendertime_add(double t);
EAPI void _ecore_evas_register(Ecore_Evas *ee);
void _ecore_evas_subregister(Ecore_Evas *ee_target, Ecore_Evas *ee);
EAPI void _ecore_evas_register_animators(Ecore_Evas *ee);
EAPI void _ecore_evas_free(Ecore_Evas *ee);
EAPI void _ecore_evas_idle_timeout_update(Ecore_Evas *ee);