Revert "[Tizen] Revert "Support multiple window rendering""
[platform/core/uifw/dali-adaptor.git] / dali / internal / window-system / tizen-wayland / display-connection-impl-ecore-wl.cpp
index ca46418..f639ed5 100755 (executable)
@@ -17,6 +17,7 @@
 
 // CLASS HEADER
 #include <dali/internal/window-system/tizen-wayland/display-connection-impl-ecore-wl.h>
+#include <dali/internal/graphics/gles/egl-graphics.h>
 
 // EXTERNAL_HEADERS
 #include <dali/integration-api/debug.h>
@@ -45,13 +46,14 @@ DisplayConnection* DisplayConnectionEcoreWl::New()
 
 DisplayConnectionEcoreWl::DisplayConnectionEcoreWl()
 : mDisplay( NULL ),
-  mSurfaceType( RenderSurface::WINDOW_RENDER_SURFACE )
+  mSurfaceType( Integration::RenderSurface::WINDOW_RENDER_SURFACE ),
+  mGraphics( nullptr )
 {
 }
 
 DisplayConnectionEcoreWl::~DisplayConnectionEcoreWl()
 {
-  if( mSurfaceType == RenderSurface::NATIVE_RENDER_SURFACE )
+  if( mSurfaceType == Integration::RenderSurface::NATIVE_RENDER_SURFACE )
   {
     ReleaseNativeDisplay();
   }
@@ -66,9 +68,10 @@ void DisplayConnectionEcoreWl::ConsumeEvents()
 {
 }
 
-bool DisplayConnectionEcoreWl::InitializeEgl(EglInterface& egl)
+bool DisplayConnectionEcoreWl::InitializeGraphics()
 {
-  EglImplementation& eglImpl = static_cast<EglImplementation&>(egl);
+  auto eglGraphics = static_cast<EglGraphics *>(mGraphics);
+  EglImplementation& eglImpl = eglGraphics->GetEglImplementation();
 
   if( !eglImpl.InitializeGles( mDisplay ) )
   {
@@ -79,11 +82,11 @@ bool DisplayConnectionEcoreWl::InitializeEgl(EglInterface& egl)
   return true;
 }
 
-void DisplayConnectionEcoreWl::SetSurfaceType( RenderSurface::Type type )
+void DisplayConnectionEcoreWl::SetSurfaceType( Integration::RenderSurface::Type type )
 {
   mSurfaceType = type;
 
-  if( mSurfaceType == RenderSurface::NATIVE_RENDER_SURFACE )
+  if( mSurfaceType == Integration::RenderSurface::NATIVE_RENDER_SURFACE )
   {
     mDisplay = GetNativeDisplay();
   }
@@ -98,6 +101,11 @@ void DisplayConnectionEcoreWl::SetSurfaceType( RenderSurface::Type type )
   }
 }
 
+void DisplayConnectionEcoreWl::SetGraphicsInterface( GraphicsInterface& graphics )
+{
+  mGraphics = &graphics;
+}
+
 EGLNativeDisplayType DisplayConnectionEcoreWl::GetNativeDisplay()
 {
   return EGLNativeDisplayType();