DSRenderEngineDaliImpl: register renderViewUpdate callback intead of window callbacks 24/242324/1
authorSooChan Lim <sc1.lim@samsung.com>
Tue, 25 Aug 2020 02:59:20 +0000 (11:59 +0900)
committerSung-Jin Park <sj76.park@samsung.com>
Tue, 25 Aug 2020 12:38:09 +0000 (21:38 +0900)
Change-Id: I7b7ea777c59746650ce1d715ca0711b55d4c059c

src/DSRender/DSRenderEngineDaliImpl.cpp
src/DSRender/DSRenderEngineDaliImpl.h

index a76fc95..d18784f 100644 (file)
@@ -61,8 +61,7 @@ std::shared_ptr<DSRenderView> DSRenderEngineDaliImpl::makeRenderView(std::shared
        std::shared_ptr<DSRenderView> renderView = std::make_shared<DSRenderViewDaliImpl>(window, __offscreenApplication.GetWindow());
 
        // callbacks
-       window->registerCallbackBufferChanged(this, std::bind(&DSRenderEngineDaliImpl::__onWindowUpdated, this, std::placeholders::_1));
-       window->registerCallbackWindowDestroyed(this, std::bind(&DSRenderEngineDaliImpl::__onWindowDestroyed, this, std::placeholders::_1));
+       renderView->registerCallbackUpdated(this, std::bind(&DSRenderEngineDaliImpl::__onRenderViewUpdated, this, std::placeholders::_1));
 
        return renderView;
 }
@@ -82,22 +81,10 @@ bool DSRenderEngineDaliImpl::renderFrame()
        return true;
 }
 
-void DSRenderEngineDaliImpl::__onWindowUpdated(std::shared_ptr<IDSBuffer> buffer)
+void DSRenderEngineDaliImpl::__onRenderViewUpdated(void *data)
 {
        if (!__needToRender) {
-               DSLOG_DBG("DSRenderEngineDaliImpl", "Something updated!! with buffer(%p)", buffer.get());
-               __needToRender = true;
-       }
-}
-
-void DSRenderEngineDaliImpl::__onWindowDestroyed(void *data)
-{
-       if (!__needToRender) {
-               DSLOG_DBG("DSRenderEngineDaliImpl", "Window destroyed!!");
-               // TODO: update twice, at this time and at idle handler.
-               //       do not update a frame only once..
-               //       NEED to check why dali does not update a frame at this time by execute one RenderOnce call.
-               Adaptor::Get().RenderOnce();
+               DSLOG_DBG("DSRenderEngineDaliImpl", "Something updated on RenderView!! with buffer(%p)");
                __needToRender = true;
        }
 }
index 2cbdc7b..977c580 100644 (file)
@@ -47,8 +47,7 @@ public:
        void                             onInitialize();
 
 private:
-       void __onWindowUpdated(std::shared_ptr<IDSBuffer> buffer);
-       void __onWindowDestroyed(void *data);
+       void __onRenderViewUpdated(void *data);
 
        std::shared_ptr<IDSBufferQueue> __bufferQueue;
        Dali::OffscreenApplication __offscreenApplication;