const std::string& name,
bool isTransparent)
: EcoreWlRenderSurface( positionSize, surface, name, isTransparent ),
- mEglWindow( NULL ),
- mNeedToApproveDeiconify( false )
+ mNeedToApproveDeiconify(false)
{
DALI_LOG_INFO( gRenderSurfaceLogFilter, Debug::Verbose, "Creating Window\n" );
Init( surface );
WindowRenderSurface::~WindowRenderSurface()
{
- if( mEglWindow != NULL )
- {
- wl_egl_window_destroy(mEglWindow);
- mEglWindow = NULL;
- }
-
if( mOwnSurface )
{
ecore_wl_window_free( mWlWindow );
Internal::Adaptor::EglImplementation& eglImpl = static_cast<Internal::Adaptor::EglImplementation&>( eglIf );
// create the EGL surface
- mWlSurface = ecore_wl_window_surface_create(mWlWindow);
+ ecore_wl_window_surface_create(mWlWindow);
mEglWindow = wl_egl_window_create(ecore_wl_window_surface_get(mWlWindow), mPosition.width, mPosition.height);
eglImpl.CreateSurfaceWindow( (EGLNativeWindowType)mEglWindow, mColorDepth ); // reinterpret_cast does not compile
}
Internal::Adaptor::EglImplementation& eglImpl = static_cast<Internal::Adaptor::EglImplementation&>( eglIf );
eglImpl.DestroySurface();
+ wl_egl_window_destroy(mEglWindow);
+ mEglWindow = NULL;
}
bool WindowRenderSurface::ReplaceEGLSurface( EglInterface& egl )
{
DALI_LOG_TRACE_METHOD( gRenderSurfaceLogFilter );
- if( mEglWindow != NULL )
- {
- wl_egl_window_destroy(mEglWindow);
- mEglWindow = NULL;
- }
-
+ wl_egl_window_destroy(mEglWindow);
mEglWindow = wl_egl_window_create(ecore_wl_window_surface_get(mWlWindow), mPosition.width, mPosition.height);
Internal::Adaptor::EglImplementation& eglImpl = static_cast<Internal::Adaptor::EglImplementation&>( egl );