DSRenderEngineDaliImpl: Make it to render only when RenderView updated.
- The ecore_evas renderer has a function to check if there is
an updated evas object.
Therefore, even if ecore_evas_manual_render is called each idle time,
it does not actually render if nothing has been updated.
- On the other hand, if DALi calls RenderOnce whenever idle time,
there is an overhead of waking up the render thread
even if there is nothing to draw.
- Since the RenderEngine does not have a RenderView,
it is difficult for the RenderEngine to know whether
the RenderView has been updated.
Therefore, DSRenderEngineDaliImpl inherits DSObject,
and it is modified to register BufferChanged callback
in DSWindow received at the time of makeRenderView call.
- When BufferChanged callback is called,
private member __needToRender is made true.
- Even if renderFrame is called, RenderOnce is called only
when __needToRender is true,
and __needToRender is changed to false immediately after that.
- This modification can be revised back
if it is possible to change to a better structure.
Change-Id: I5717abee1bd4819abf9629892ccb8843a4f6a209
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>