Revert "[Tizen] Implement partial update"
[platform/core/uifw/dali-core.git] / dali / internal / event / rendering / texture-impl.cpp
index 5044890..02e7484 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2017 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -21,6 +21,7 @@
 // INTERNAL INCLUDES
 #include <dali/internal/update/manager/update-manager.h>
 #include <dali/internal/event/common/stage-impl.h>
+#include <dali/integration-api/render-controller.h>
 
 namespace Dali
 {
@@ -40,6 +41,10 @@ TexturePtr Texture::New( NativeImageInterface& nativeImageInterface )
 {
   TexturePtr texture( new Texture( &nativeImageInterface ) );
   texture->Initialize();
+
+  // Request event processing and update forcely.
+  texture->mEventThreadServices.GetRenderController().RequestProcessEventsOnIdle( true );
+  texture->mEventThreadServices.ForceNextUpdate();
   return texture;
 }
 
@@ -49,7 +54,7 @@ Render::Texture* Texture::GetRenderObject() const
 }
 
 Texture::Texture(TextureType::Type type, Pixel::Format format, ImageDimensions size )
-: mEventThreadServices( *Stage::GetCurrent() ),
+: mEventThreadServices( EventThreadServices::Get() ),
   mRenderObject( NULL ),
   mNativeImage(),
   mSize( size ),
@@ -59,7 +64,7 @@ Texture::Texture(TextureType::Type type, Pixel::Format format, ImageDimensions s
 }
 
 Texture::Texture( NativeImageInterfacePtr nativeImageInterface )
-: mEventThreadServices( *Stage::GetCurrent() ),
+: mEventThreadServices( EventThreadServices::Get() ),
   mRenderObject( NULL ),
   mNativeImage( nativeImageInterface ),
   mSize( nativeImageInterface->GetWidth(), nativeImageInterface->GetHeight() ),
@@ -151,6 +156,11 @@ bool Texture::Upload( PixelDataPtr pixelData,
                                     static_cast< uint16_t >( width ),
                                     static_cast< uint16_t >( height ) };
             UploadTextureMessage( mEventThreadServices.GetUpdateManager(), *mRenderObject, pixelData, params );
+
+            // Request event processing and update forcely
+            mEventThreadServices.GetRenderController().RequestProcessEventsOnIdle( true );
+            mEventThreadServices.ForceNextUpdate();
+
             result = true;
           }
         }