From: Seunghun Lee Date: Thu, 2 Jan 2020 07:45:38 +0000 (+0900) Subject: video: Do not process rendering in a handler for EVAS_CALLBACK_SHOW. X-Git-Tag: submit/tizen/20200116.021659~2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=8281ba1e9fed3bb189dfccafb5c78df04914ff02;p=platform%2Fupstream%2Fenlightenment.git video: Do not process rendering in a handler for EVAS_CALLBACK_SHOW. Rendering for video client in a handler for EVAS_CALLBACK_SHOW caused making unintended information to be passed to TDM. This information has to be made after collecting all client information, such as viewport. Change-Id: Ife86dd2098148122af13e62a1076c1f6c592bc87 --- diff --git a/src/bin/video/iface/e_video_hwc.c b/src/bin/video/iface/e_video_hwc.c index 90fa4ad2ee..cfaeeea8eb 100644 --- a/src/bin/video/iface/e_video_hwc.c +++ b/src/bin/video/iface/e_video_hwc.c @@ -1109,9 +1109,9 @@ _e_video_hwc_render_job(void *data) render = EINA_TRUE; } - if ((render) || (evh->render.buffer_change)) + if ((render) || (evh->render.redraw)) { - evh->render.buffer_change = EINA_FALSE; + evh->render.redraw = EINA_FALSE; _e_video_hwc_render(evh, __FUNCTION__); } @@ -1608,7 +1608,7 @@ _e_video_hwc_cb_client_buffer_change(void *data, int type, void *event) if (e_object_is_del(E_OBJECT(ec))) return ECORE_CALLBACK_PASS_ON; - evh->render.buffer_change = EINA_TRUE; + evh->render.redraw = EINA_TRUE; _e_video_hwc_render_queue(evh); return ECORE_CALLBACK_PASS_ON; @@ -1628,7 +1628,8 @@ _e_video_hwc_cb_evas_show(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA if (evh->need_force_render) { VIN("video forcely rendering..", evh->ec); - _e_video_hwc_render(evh, __FUNCTION__); + evh->render.redraw = EINA_TRUE; + _e_video_hwc_render_queue(evh); } /* if stand_alone is true, not show */ diff --git a/src/bin/video/iface/e_video_hwc.h b/src/bin/video/iface/e_video_hwc.h index ea36e6e2bc..8dfe00fa03 100644 --- a/src/bin/video/iface/e_video_hwc.h +++ b/src/bin/video/iface/e_video_hwc.h @@ -94,7 +94,7 @@ struct _E_Video_Hwc { Ecore_Job *job; Eina_Bool map; - Eina_Bool buffer_change; + Eina_Bool redraw; Eina_Bool topmost_viewport; } render;