Force to clear on the framebuffer after resume 42/168842/6
authorHeeyong Song <heeyong.song@samsung.com>
Wed, 31 Jan 2018 09:40:14 +0000 (18:40 +0900)
committerHeeyong Song <heeyong.song@samsung.com>
Mon, 19 Feb 2018 04:14:23 +0000 (04:14 +0000)
Change-Id: I8e1f48f71456bfbbfa934093bf2da23ee5e8bf51

automated-tests/src/dali-adaptor/dali-test-suite-utils/test-application.cpp
dali/internal/adaptor/common/combined-update-render-controller.cpp
dali/internal/adaptor/common/combined-update-render-controller.h

index a247f7d..0e640e7 100644 (file)
@@ -183,7 +183,7 @@ void TestApplication::DoUpdate( unsigned int intervalMilliseconds, const char* l
 bool TestApplication::Render( unsigned int intervalMilliseconds, const char* location )
 {
   DoUpdate( intervalMilliseconds, location );
-  mCore->Render( mRenderStatus );
+  mCore->Render( mRenderStatus, false );
 
   mFrame++;
 
@@ -209,7 +209,7 @@ bool TestApplication::GetRenderNeedsUpdate()
 bool TestApplication::RenderOnly( )
 {
   // Update Time values
-  mCore->Render( mRenderStatus );
+  mCore->Render( mRenderStatus, false );
 
   mFrame++;
 
index a0ca5f5..31cf0fd 100644 (file)
@@ -108,7 +108,8 @@ CombinedUpdateRenderController::CombinedUpdateRenderController( AdaptorInternalS
   mUseElapsedTimeAfterWait( FALSE ),
   mNewSurface( NULL ),
   mPostRendering( FALSE ),
-  mSurfaceResized( FALSE )
+  mSurfaceResized( FALSE ),
+  mForceClear( FALSE )
 {
   LOG_EVENT_TRACE;
 
@@ -198,6 +199,7 @@ void CombinedUpdateRenderController::Resume()
     AddPerformanceMarker( PerformanceInterface::RESUME );
 
     mRunning = TRUE;
+    mForceClear = TRUE;
   }
 }
 
@@ -504,9 +506,11 @@ void CombinedUpdateRenderController::UpdateRenderThread()
     Integration::RenderStatus renderStatus;
 
     AddPerformanceMarker( PerformanceInterface::RENDER_START );
-    mCore.Render( renderStatus );
+    mCore.Render( renderStatus, mForceClear );
     AddPerformanceMarker( PerformanceInterface::RENDER_END );
 
+    mForceClear = false;
+
     if( renderStatus.NeedsPostRender() )
     {
       mRenderHelper.PostRender( isRenderingToFbo );
index d318ea9..2e2dcad 100644 (file)
@@ -333,6 +333,7 @@ private:
 
   volatile unsigned int             mPostRendering;                    ///< Whether post-rendering is taking place (set by the event & render threads, read by the render-thread).
   volatile unsigned int             mSurfaceResized;                   ///< Will be set to resize the surface (set by the event-thread, read & cleared by the update-render thread).
+  volatile unsigned int             mForceClear;                       ///< Will be set to clear forcely
 };
 
 } // namespace Adaptor