EGLNativeWindowType windowType( mEglWindow );
eglImpl.CreateSurfaceWindow( windowType, mColorDepth );
+#ifdef SCREEN_ROTATION_ENABLED
// Check capability
wl_egl_window_capability capability = static_cast< wl_egl_window_capability >( wl_egl_window_get_capabilities( mEglWindow ) );
if( capability == WL_EGL_WINDOW_CAPABILITY_ROTATION_SUPPORTED )
}
DALI_LOG_INFO( gRenderSurfaceLogFilter, Debug::Verbose, "WindowRenderSurface::CreateEglSurface: w = %d h = %d angle = %d screen rotation = %d\n", mPositionSize.width, mPositionSize.height, mRotationAngle, mScreenRotationAngle );
+#endif
}
void WindowRenderSurface::DestroyEglSurface( EglInterface& eglIf )
bool WindowRenderSurface::PreRender( EglInterface& egl, Integration::GlAbstraction& glAbstraction, bool resizingSurface )
{
+#ifdef SCREEN_ROTATION_ENABLED
if( resizingSurface )
{
// Window rotate or screen rotate
wl_egl_window_set_window_transform( mEglWindow, windowTransform );
}
}
+#endif
return true;
}
void WindowRenderSurface::PostRender( EglInterface& egl, Integration::GlAbstraction& glAbstraction, DisplayConnection* displayConnection, bool replacingSurface, bool resizingSurface )
{
+#ifdef SCREEN_ROTATION_ENABLED
if( resizingSurface )
{
if( !mRotationFinished )
}
}
}
+#endif
Internal::Adaptor::EglImplementation& eglImpl = static_cast<Internal::Adaptor::EglImplementation&>( egl );
eglImpl.SwapBuffers();
void WindowRenderSurface::ProcessRotationRequest()
{
+#ifdef SCREEN_ROTATION_ENABLED
mRotationFinished = true;
ecore_wl_window_rotation_change_done_send( mWlWindow );
{
mThreadSynchronization->PostRenderComplete();
}
+#endif
}
} // namespace ECore