From: Heeyong Song Date: Wed, 2 May 2018 05:20:50 +0000 (+0900) Subject: Move GetDpi implementation to RenderSurface X-Git-Tag: dali_1.3.23~1 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=refs%2Fchanges%2F86%2F177586%2F2;p=platform%2Fcore%2Fuifw%2Fdali-adaptor.git Move GetDpi implementation to RenderSurface Change-Id: Ie52005b17db4d4296d487e07ca8a074ace8c2600 --- diff --git a/dali/integration-api/render-surface.h b/dali/integration-api/render-surface.h index 3db6bac..ee891a0 100644 --- a/dali/integration-api/render-surface.h +++ b/dali/integration-api/render-surface.h @@ -88,6 +88,13 @@ public: virtual PositionSize GetPositionSize() const = 0; /** + * @brief Get DPI + * @param[out] dpiHorizontal set to the horizontal dpi + * @param[out] dpiVertical set to the vertical dpi + */ + virtual void GetDpi( unsigned int& dpiHorizontal, unsigned int& dpiVertical ) = 0; + + /** * Initialize EGL, RenderSurface should create egl display and initialize * @param egl implementation to use for the creation */ diff --git a/dali/internal/adaptor/common/adaptor-impl.cpp b/dali/internal/adaptor/common/adaptor-impl.cpp index d8c92c8..843b8ee 100755 --- a/dali/internal/adaptor/common/adaptor-impl.cpp +++ b/dali/internal/adaptor/common/adaptor-impl.cpp @@ -303,7 +303,7 @@ void Adaptor::Start() unsigned int dpiHor, dpiVer; dpiHor = dpiVer = 0; - Dali::DisplayConnection::GetDpi(dpiHor, dpiVer); + mSurface->GetDpi( dpiHor, dpiVer ); // tell core about the DPI value mCore->SetDpi(dpiHor, dpiVer); diff --git a/dali/internal/window-system/common/display-connection-impl.cpp b/dali/internal/window-system/common/display-connection-impl.cpp deleted file mode 100644 index 0ba1872..0000000 --- a/dali/internal/window-system/common/display-connection-impl.cpp +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (c) 2018 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. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - */ - -// INTERNAL INCLUDES -#include -#include - -namespace Dali -{ -namespace Internal -{ -namespace Adaptor -{ - -void DisplayConnection::GetDpi(unsigned int& dpiHorizontal, unsigned int& dpiVertical) -{ - // Call static factory function - DisplayConnectionFactoryGetDpi( dpiHorizontal, dpiVertical ); -} - -} // namespace Adaptor - -} // namespace internal - -} // namespace Dali diff --git a/dali/internal/window-system/common/display-connection-impl.h b/dali/internal/window-system/common/display-connection-impl.h index cd94d76..7e73ef1 100644 --- a/dali/internal/window-system/common/display-connection-impl.h +++ b/dali/internal/window-system/common/display-connection-impl.h @@ -28,14 +28,13 @@ namespace Dali { -class RenderSurface; class DisplayConnection; namespace Internal { namespace Adaptor { -class Impl; + /** * DisplayConnection implementation */ @@ -63,11 +62,6 @@ public: virtual Any GetDisplay() = 0; /** - * @copydoc Dali::DisplayConnection::GetDpi - */ - static void GetDpi(unsigned int& dpiHorizontal, unsigned int& dpiVertical); - - /** * @copydoc Dali::DisplayConnection::ConsumeEvents */ virtual void ConsumeEvents() = 0; diff --git a/dali/internal/window-system/common/display-connection.cpp b/dali/internal/window-system/common/display-connection.cpp index 0a28469..dd5c506 100644 --- a/dali/internal/window-system/common/display-connection.cpp +++ b/dali/internal/window-system/common/display-connection.cpp @@ -64,11 +64,6 @@ Any DisplayConnection::GetDisplay() return mImpl->GetDisplay(); } -void DisplayConnection::GetDpi(unsigned int& dpiHorizontal, unsigned int& dpiVertical) -{ - Internal::Adaptor::DisplayConnection::GetDpi(dpiHorizontal, dpiVertical); -} - void DisplayConnection::ConsumeEvents() { mImpl->ConsumeEvents(); diff --git a/dali/internal/window-system/common/display-connection.h b/dali/internal/window-system/common/display-connection.h index bd6188f..c1e742c 100644 --- a/dali/internal/window-system/common/display-connection.h +++ b/dali/internal/window-system/common/display-connection.h @@ -81,13 +81,6 @@ public: Any GetDisplay(); /** - * @brief Get DPI - * @param[out] dpiHorizontal set to the horizontal dpi - * @param[out] dpiVertical set to the vertical dpi - */ - static void GetDpi(unsigned int& dpiHorizontal, unsigned int& dpiVertical); - - /** * @brief Consumes any possible events on the queue so that there is no leaking between frames */ void ConsumeEvents(); diff --git a/dali/internal/window-system/file.list b/dali/internal/window-system/file.list index 076dc72..cfc7b27 100644 --- a/dali/internal/window-system/file.list +++ b/dali/internal/window-system/file.list @@ -3,7 +3,6 @@ # module: window-system, backend: common adaptor_window_system_common_src_files=\ ${adaptor_window_system_dir}/common/display-connection.cpp \ - ${adaptor_window_system_dir}/common/display-connection-impl.cpp \ ${adaptor_window_system_dir}/common/ecore-indicator-impl.cpp \ ${adaptor_window_system_dir}/common/ecore-server-connection.cpp \ ${adaptor_window_system_dir}/common/indicator-buffer.cpp \ diff --git a/dali/internal/window-system/tizen-wayland/display-connection-factory-ecore-wl.cpp b/dali/internal/window-system/tizen-wayland/display-connection-factory-ecore-wl.cpp index e3fd4d0..488835c 100644 --- a/dali/internal/window-system/tizen-wayland/display-connection-factory-ecore-wl.cpp +++ b/dali/internal/window-system/tizen-wayland/display-connection-factory-ecore-wl.cpp @@ -25,8 +25,6 @@ namespace Internal namespace Adaptor { - - std::unique_ptr DisplayConnectionFactoryEcoreWl::CreateDisplayConnection() { return Utils::MakeUnique(); @@ -39,11 +37,6 @@ std::unique_ptr GetDisplayConnectionFactory() return Utils::MakeUnique(); } -void DisplayConnectionFactoryGetDpi(unsigned int& dpiHorizontal, unsigned int& dpiVertical) -{ - DisplayConnectionEcoreWl::GetDpi( dpiHorizontal, dpiVertical ); } - } } -} \ No newline at end of file diff --git a/dali/internal/window-system/tizen-wayland/display-connection-impl-ecore-wl.cpp b/dali/internal/window-system/tizen-wayland/display-connection-impl-ecore-wl.cpp index 62aa28f..b4d102f 100755 --- a/dali/internal/window-system/tizen-wayland/display-connection-impl-ecore-wl.cpp +++ b/dali/internal/window-system/tizen-wayland/display-connection-impl-ecore-wl.cpp @@ -22,9 +22,6 @@ #include #include -// INTERNAL HEADERS -#include - namespace Dali { @@ -91,19 +88,6 @@ void DisplayConnectionEcoreWl::SetSurfaceType( RenderSurface::Type type ) } } -void DisplayConnectionEcoreWl::GetDpi(unsigned int& dpiHorizontal, unsigned int& dpiVertical) -{ - // calculate DPI - float xres, yres; - - // 1 inch = 25.4 millimeters - xres = ecore_wl_dpi_get(); - yres = ecore_wl_dpi_get(); - - dpiHorizontal = int(xres + 0.5f); // rounding - dpiVertical = int(yres + 0.5f); -} - EGLNativeDisplayType DisplayConnectionEcoreWl::GetNativeDisplay() { return EGLNativeDisplayType(); diff --git a/dali/internal/window-system/tizen-wayland/display-connection-impl-ecore-wl.h b/dali/internal/window-system/tizen-wayland/display-connection-impl-ecore-wl.h index 5e6294f..7c63d23 100644 --- a/dali/internal/window-system/tizen-wayland/display-connection-impl-ecore-wl.h +++ b/dali/internal/window-system/tizen-wayland/display-connection-impl-ecore-wl.h @@ -18,20 +18,12 @@ * */ -// EXTERNAL INCLUDES -#include -#include -#include - // INTERNAL INCLUDES #include -#include -#include namespace Dali { -class RenderSurface; class DisplayConnection; namespace Internal @@ -67,11 +59,6 @@ public: Any GetDisplay(); /** - * @copydoc Dali::DisplayConnection::GetDpi - */ - static void GetDpi(unsigned int& dpiHorizontal, unsigned int& dpiVertical); - - /** * @copydoc Dali::DisplayConnection::ConsumeEvents */ void ConsumeEvents(); @@ -86,8 +73,6 @@ public: */ void SetSurfaceType( RenderSurface::Type type ); - - public: /** diff --git a/dali/internal/window-system/tizen-wayland/native-render-surface-ecore-wl.cpp b/dali/internal/window-system/tizen-wayland/native-render-surface-ecore-wl.cpp index 76acd2b..73b0169 100644 --- a/dali/internal/window-system/tizen-wayland/native-render-surface-ecore-wl.cpp +++ b/dali/internal/window-system/tizen-wayland/native-render-surface-ecore-wl.cpp @@ -105,6 +105,19 @@ PositionSize NativeRenderSurfaceEcoreWl::GetPositionSize() const return mPosition; } +void NativeRenderSurfaceEcoreWl::GetDpi( unsigned int& dpiHorizontal, unsigned int& dpiVertical ) +{ + // calculate DPI + float xres, yres; + + // 1 inch = 25.4 millimeters + xres = ecore_wl_dpi_get(); + yres = ecore_wl_dpi_get(); + + dpiHorizontal = int( xres + 0.5f ); // rounding + dpiVertical = int( yres + 0.5f ); +} + void NativeRenderSurfaceEcoreWl::InitializeEgl( EglInterface& egl ) { DALI_LOG_TRACE_METHOD( gNativeSurfaceLogFilter ); diff --git a/dali/internal/window-system/tizen-wayland/native-render-surface-ecore-wl.h b/dali/internal/window-system/tizen-wayland/native-render-surface-ecore-wl.h index 4651c0f..782d16d 100644 --- a/dali/internal/window-system/tizen-wayland/native-render-surface-ecore-wl.h +++ b/dali/internal/window-system/tizen-wayland/native-render-surface-ecore-wl.h @@ -74,67 +74,72 @@ public: // from Dali::RenderSurface /** * @copydoc Dali::RenderSurface::GetPositionSize() */ - virtual PositionSize GetPositionSize() const; + virtual PositionSize GetPositionSize() const override; + + /** + * @copydoc Dali::RenderSurface::GetDpi() + */ + virtual void GetDpi( unsigned int& dpiHorizontal, unsigned int& dpiVertical ) override; /** * @copydoc Dali::RenderSurface::InitializeEgl() */ - virtual void InitializeEgl( EglInterface& egl ); + virtual void InitializeEgl( EglInterface& egl ) override; /** * @copydoc Dali::RenderSurface::CreateEglSurface() */ - virtual void CreateEglSurface( EglInterface& egl ); + virtual void CreateEglSurface( EglInterface& egl ) override; /** * @copydoc Dali::RenderSurface::DestroyEglSurface() */ - virtual void DestroyEglSurface( EglInterface& egl ); + virtual void DestroyEglSurface( EglInterface& egl ) override; /** * @copydoc Dali::RenderSurface::ReplaceEGLSurface() */ - virtual bool ReplaceEGLSurface( EglInterface& egl ); + virtual bool ReplaceEGLSurface( EglInterface& egl ) override; /** * @copydoc Dali::RenderSurface::MoveResize() */ - virtual void MoveResize( Dali::PositionSize positionSize); + virtual void MoveResize( Dali::PositionSize positionSize) override; /** * @copydoc Dali::RenderSurface::SetViewMode() */ - void SetViewMode( ViewMode viewMode ); + virtual void SetViewMode( ViewMode viewMode ) override; /** * @copydoc Dali::RenderSurface::StartRender() */ - virtual void StartRender(); + virtual void StartRender() override; /** * @copydoc Dali::RenderSurface::PreRender() */ - virtual bool PreRender( EglInterface& egl, Integration::GlAbstraction& glAbstraction, bool resizingSurface ); + virtual bool PreRender( EglInterface& egl, Integration::GlAbstraction& glAbstraction, bool resizingSurface ) override; /** * @copydoc Dali::RenderSurface::PostRender() */ - virtual void PostRender( EglInterface& egl, Integration::GlAbstraction& glAbstraction, DisplayConnection* displayConnection, bool replacingSurface, bool resizingSurface ); + virtual void PostRender( EglInterface& egl, Integration::GlAbstraction& glAbstraction, DisplayConnection* displayConnection, bool replacingSurface, bool resizingSurface ) override; /** * @copydoc Dali::RenderSurface::StopRender() */ - virtual void StopRender(); + virtual void StopRender() override; /** * @copydoc Dali::RenderSurface::SetThreadSynchronization */ - virtual void SetThreadSynchronization( ThreadSynchronizationInterface& threadSynchronization ); + virtual void SetThreadSynchronization( ThreadSynchronizationInterface& threadSynchronization )override; /** * @copydoc Dali::RenderSurface::GetSurfaceType() */ - virtual RenderSurface::Type GetSurfaceType(); + virtual RenderSurface::Type GetSurfaceType() override; private: diff --git a/dali/internal/window-system/tizen-wayland/window-render-surface-ecore-wl.cpp b/dali/internal/window-system/tizen-wayland/window-render-surface-ecore-wl.cpp index 0333bb4..467635b 100644 --- a/dali/internal/window-system/tizen-wayland/window-render-surface-ecore-wl.cpp +++ b/dali/internal/window-system/tizen-wayland/window-render-surface-ecore-wl.cpp @@ -189,6 +189,19 @@ PositionSize WindowRenderSurfaceEcoreWl::GetPositionSize() const return mPositionSize; } +void WindowRenderSurfaceEcoreWl::GetDpi( unsigned int& dpiHorizontal, unsigned int& dpiVertical ) +{ + // calculate DPI + float xres, yres; + + // 1 inch = 25.4 millimeters + xres = ecore_wl_dpi_get(); + yres = ecore_wl_dpi_get(); + + dpiHorizontal = int( xres + 0.5f ); // rounding + dpiVertical = int( yres + 0.5f ); +} + void WindowRenderSurfaceEcoreWl::InitializeEgl( EglInterface& eglIf ) { DALI_LOG_TRACE_METHOD( gWindowRenderSurfaceLogFilter ); diff --git a/dali/internal/window-system/tizen-wayland/window-render-surface-ecore-wl.h b/dali/internal/window-system/tizen-wayland/window-render-surface-ecore-wl.h index 00b217d..e95d8b1 100644 --- a/dali/internal/window-system/tizen-wayland/window-render-surface-ecore-wl.h +++ b/dali/internal/window-system/tizen-wayland/window-render-surface-ecore-wl.h @@ -105,72 +105,77 @@ public: // from Dali::RenderSurface /** * @copydoc Dali::RenderSurface::GetPositionSize() */ - virtual PositionSize GetPositionSize() const; + virtual PositionSize GetPositionSize() const override; + + /** + * @copydoc Dali::RenderSurface::GetDpi() + */ + virtual void GetDpi( unsigned int& dpiHorizontal, unsigned int& dpiVertical ) override; /** * @copydoc Dali::RenderSurface::InitializeEgl() */ - virtual void InitializeEgl( EglInterface& egl ); + virtual void InitializeEgl( EglInterface& egl ) override; /** * @copydoc Dali::RenderSurface::CreateEglSurface() */ - virtual void CreateEglSurface( EglInterface& egl ); + virtual void CreateEglSurface( EglInterface& egl ) override; /** * @copydoc Dali::RenderSurface::DestroyEglSurface() */ - virtual void DestroyEglSurface( EglInterface& egl ); + virtual void DestroyEglSurface( EglInterface& egl ) override; /** * @copydoc Dali::RenderSurface::ReplaceEGLSurface() */ - virtual bool ReplaceEGLSurface( EglInterface& egl ); + virtual bool ReplaceEGLSurface( EglInterface& egl ) override; /** * @copydoc Dali::RenderSurface::MoveResize() */ - virtual void MoveResize( Dali::PositionSize positionSize); + virtual void MoveResize( Dali::PositionSize positionSize) override; /** * @copydoc Dali::RenderSurface::SetViewMode() */ - void SetViewMode( ViewMode viewMode ); + virtual void SetViewMode( ViewMode viewMode ) override; /** * @copydoc Dali::RenderSurface::StartRender() */ - virtual void StartRender(); + virtual void StartRender() override; /** * @copydoc Dali::RenderSurface::PreRender() */ - virtual bool PreRender( EglInterface& egl, Integration::GlAbstraction& glAbstraction, bool resizingSurface ); + virtual bool PreRender( EglInterface& egl, Integration::GlAbstraction& glAbstraction, bool resizingSurface ) override; /** * @copydoc Dali::RenderSurface::PostRender() */ - virtual void PostRender( EglInterface& egl, Integration::GlAbstraction& glAbstraction, DisplayConnection* displayConnection, bool replacingSurface, bool resizingSurface ); + virtual void PostRender( EglInterface& egl, Integration::GlAbstraction& glAbstraction, DisplayConnection* displayConnection, bool replacingSurface, bool resizingSurface ) override; /** * @copydoc Dali::RenderSurface::StopRender() */ - virtual void StopRender(); + virtual void StopRender() override; /** * @copydoc Dali::RenderSurface::SetThreadSynchronization */ - virtual void SetThreadSynchronization( ThreadSynchronizationInterface& threadSynchronization ); + virtual void SetThreadSynchronization( ThreadSynchronizationInterface& threadSynchronization ) override; /** * @copydoc Dali::RenderSurface::ReleaseLock() */ - virtual void ReleaseLock(); + virtual void ReleaseLock() override; /** * @copydoc Dali::RenderSurface::GetSurfaceType() */ - virtual RenderSurface::Type GetSurfaceType(); + virtual RenderSurface::Type GetSurfaceType() override; private: // from WindowRenderSurface diff --git a/dali/internal/window-system/ubuntu-x11/display-connection-factory-x.cpp b/dali/internal/window-system/ubuntu-x11/display-connection-factory-x.cpp index c05ee9d..bf544f6 100644 --- a/dali/internal/window-system/ubuntu-x11/display-connection-factory-x.cpp +++ b/dali/internal/window-system/ubuntu-x11/display-connection-factory-x.cpp @@ -25,8 +25,6 @@ namespace Internal namespace Adaptor { - - std::unique_ptr DisplayConnectionFactoryX::CreateDisplayConnection() { return Utils::MakeUnique(); @@ -39,11 +37,6 @@ std::unique_ptr GetDisplayConnectionFactory() return Utils::MakeUnique(); } -void DisplayConnectionFactoryGetDpi(unsigned int& dpiHorizontal, unsigned int& dpiVertical) -{ - DisplayConnectionX11::GetDpi( dpiHorizontal, dpiVertical ); } - } } -} \ No newline at end of file diff --git a/dali/internal/window-system/ubuntu-x11/display-connection-impl-x.cpp b/dali/internal/window-system/ubuntu-x11/display-connection-impl-x.cpp index 030373d..b003cd1 100644 --- a/dali/internal/window-system/ubuntu-x11/display-connection-impl-x.cpp +++ b/dali/internal/window-system/ubuntu-x11/display-connection-impl-x.cpp @@ -103,19 +103,6 @@ void DisplayConnectionX11::SetSurfaceType( RenderSurface::Type type ) } } -void DisplayConnectionX11::GetDpi(unsigned int& dpiHorizontal, unsigned int& dpiVertical) -{ - // calculate DPI - float xres, yres; - - // 1 inch = 25.4 millimeters - xres = ecore_x_dpi_get(); - yres = ecore_x_dpi_get(); - - dpiHorizontal = int(xres + 0.5f); // rounding - dpiVertical = int(yres + 0.5f); -} - } // namespace Adaptor } // namespace Internal diff --git a/dali/internal/window-system/ubuntu-x11/display-connection-impl-x.h b/dali/internal/window-system/ubuntu-x11/display-connection-impl-x.h index f74def4..5b5ba1e 100644 --- a/dali/internal/window-system/ubuntu-x11/display-connection-impl-x.h +++ b/dali/internal/window-system/ubuntu-x11/display-connection-impl-x.h @@ -20,14 +20,11 @@ // INTERNAL INCLUDES #include -#include -#include #include namespace Dali { -class RenderSurface; class DisplayConnection; namespace Internal @@ -72,11 +69,6 @@ public: Any GetDisplay(); /** - * @copydoc Dali::DisplayConnection::GetDpi - */ - static void GetDpi(unsigned int& dpiHorizontal, unsigned int& dpiVertical); - - /** * @copydoc Dali::DisplayConnection::ConsumeEvents */ void ConsumeEvents(); diff --git a/dali/internal/window-system/ubuntu-x11/pixmap-render-surface-ecore-x.cpp b/dali/internal/window-system/ubuntu-x11/pixmap-render-surface-ecore-x.cpp index 4a50c5c..ce91867 100644 --- a/dali/internal/window-system/ubuntu-x11/pixmap-render-surface-ecore-x.cpp +++ b/dali/internal/window-system/ubuntu-x11/pixmap-render-surface-ecore-x.cpp @@ -130,6 +130,19 @@ PositionSize PixmapRenderSurfaceEcoreX::GetPositionSize() const return mPosition; } +void PixmapRenderSurfaceEcoreX::GetDpi( unsigned int& dpiHorizontal, unsigned int& dpiVertical ) +{ + // calculate DPI + float xres, yres; + + // 1 inch = 25.4 millimeters + xres = ecore_x_dpi_get(); + yres = ecore_x_dpi_get(); + + dpiHorizontal = int( xres + 0.5f ); // rounding + dpiVertical = int( yres + 0.5f ); +} + void PixmapRenderSurfaceEcoreX::InitializeEgl( EglInterface& egl ) { DALI_LOG_TRACE_METHOD( gPixmapRenderSurfaceLogFilter ); diff --git a/dali/internal/window-system/ubuntu-x11/pixmap-render-surface-ecore-x.h b/dali/internal/window-system/ubuntu-x11/pixmap-render-surface-ecore-x.h index 91ee161..364d170 100644 --- a/dali/internal/window-system/ubuntu-x11/pixmap-render-surface-ecore-x.h +++ b/dali/internal/window-system/ubuntu-x11/pixmap-render-surface-ecore-x.h @@ -77,47 +77,52 @@ public: // from Dali::RenderSurface /** * @copydoc Dali::RenderSurface::GetPositionSize() */ - virtual PositionSize GetPositionSize() const; + virtual PositionSize GetPositionSize() const override; + + /** + * @copydoc Dali::RenderSurface::GetDpi() + */ + virtual void GetDpi( unsigned int& dpiHorizontal, unsigned int& dpiVertical ) override; /** * @copydoc Dali::RenderSurface::InitializeEgl() */ - virtual void InitializeEgl( EglInterface& egl ); + virtual void InitializeEgl( EglInterface& egl ) override; /** * @copydoc Dali::RenderSurface::CreateEglSurface() */ - virtual void CreateEglSurface( EglInterface& egl ); + virtual void CreateEglSurface( EglInterface& egl ) override; /** * @copydoc Dali::RenderSurface::DestroyEglSurface() */ - virtual void DestroyEglSurface( EglInterface& egl ); + virtual void DestroyEglSurface( EglInterface& egl ) override; /** * @copydoc Dali::RenderSurface::ReplaceEGLSurface() */ - virtual bool ReplaceEGLSurface( EglInterface& egl ); + virtual bool ReplaceEGLSurface( EglInterface& egl ) override; /** * @copydoc Dali::RenderSurface::MoveResize() */ - virtual void MoveResize( Dali::PositionSize positionSize) {} + virtual void MoveResize( Dali::PositionSize positionSize) override {} /** * @copydoc Dali::RenderSurface::SetViewMode() */ - void SetViewMode( ViewMode viewMode ) {} + void SetViewMode( ViewMode viewMode ) override {} /** * @copydoc Dali::RenderSurface::StartRender() */ - virtual void StartRender(); + virtual void StartRender() override; /** * @copydoc Dali::RenderSurface::PreRender() */ - virtual bool PreRender( EglInterface& egl, Integration::GlAbstraction& glAbstraction, bool resizingSurface ); + virtual bool PreRender( EglInterface& egl, Integration::GlAbstraction& glAbstraction, bool resizingSurface ) override; /** * @copydoc Dali::RenderSurface::PostRender() @@ -127,24 +132,24 @@ public: // from Dali::RenderSurface /** * @copydoc Dali::RenderSurface::StopRender() */ - virtual void StopRender(); + virtual void StopRender() override; /** * @copydoc Dali::RenderSurface::SetThreadSynchronization */ - virtual void SetThreadSynchronization( ThreadSynchronizationInterface& threadSynchronization ); + virtual void SetThreadSynchronization( ThreadSynchronizationInterface& threadSynchronization ) override; /** * @copydoc Dali::RenderSurface::GetSurfaceType() */ - virtual RenderSurface::Type GetSurfaceType(); + virtual RenderSurface::Type GetSurfaceType() override; private: // from PixmapRenderSurface /** * @copydoc Dali::RenderSurface::ReleaseLock() */ - virtual void ReleaseLock(); + virtual void ReleaseLock() override; /** * @copydoc Dali::Internal::Adaptor::PixmapRenderSurface::Initialize() diff --git a/dali/internal/window-system/ubuntu-x11/window-render-surface-ecore-x.cpp b/dali/internal/window-system/ubuntu-x11/window-render-surface-ecore-x.cpp index 0e2308d..f050c2b 100644 --- a/dali/internal/window-system/ubuntu-x11/window-render-surface-ecore-x.cpp +++ b/dali/internal/window-system/ubuntu-x11/window-render-surface-ecore-x.cpp @@ -134,6 +134,19 @@ PositionSize WindowRenderSurfaceEcoreX::GetPositionSize() const return mPosition; } +void WindowRenderSurfaceEcoreX::GetDpi( unsigned int& dpiHorizontal, unsigned int& dpiVertical ) +{ + // calculate DPI + float xres, yres; + + // 1 inch = 25.4 millimeters + xres = ecore_x_dpi_get(); + yres = ecore_x_dpi_get(); + + dpiHorizontal = int( xres + 0.5f ); // rounding + dpiVertical = int( yres + 0.5f ); +} + void WindowRenderSurfaceEcoreX::InitializeEgl( EglInterface& eglIf ) { DALI_LOG_TRACE_METHOD( gWindowRenderSurfaceLogFilter ); diff --git a/dali/internal/window-system/ubuntu-x11/window-render-surface-ecore-x.h b/dali/internal/window-system/ubuntu-x11/window-render-surface-ecore-x.h index 048e8f8..cff4b2a 100644 --- a/dali/internal/window-system/ubuntu-x11/window-render-surface-ecore-x.h +++ b/dali/internal/window-system/ubuntu-x11/window-render-surface-ecore-x.h @@ -105,72 +105,77 @@ public: // from Dali::RenderSurface /** * @copydoc Dali::RenderSurface::GetPositionSize() */ - virtual PositionSize GetPositionSize() const; + virtual PositionSize GetPositionSize() const override; + + /** + * @copydoc Dali::RenderSurface::GetDpi() + */ + virtual void GetDpi( unsigned int& dpiHorizontal, unsigned int& dpiVertical ) override; /** * @copydoc Dali::RenderSurface::InitializeEgl() */ - virtual void InitializeEgl( EglInterface& egl ); + virtual void InitializeEgl( EglInterface& egl ) override; /** * @copydoc Dali::RenderSurface::CreateEglSurface() */ - virtual void CreateEglSurface( EglInterface& egl ); + virtual void CreateEglSurface( EglInterface& egl ) override; /** * @copydoc Dali::RenderSurface::DestroyEglSurface() */ - virtual void DestroyEglSurface( EglInterface& egl ); + virtual void DestroyEglSurface( EglInterface& egl ) override; /** * @copydoc Dali::RenderSurface::ReplaceEGLSurface() */ - virtual bool ReplaceEGLSurface( EglInterface& egl ); + virtual bool ReplaceEGLSurface( EglInterface& egl ) override; /** * @copydoc Dali::RenderSurface::MoveResize() */ - virtual void MoveResize( Dali::PositionSize positionSize); + virtual void MoveResize( Dali::PositionSize positionSize) override; /** * @copydoc Dali::RenderSurface::SetViewMode() */ - void SetViewMode( ViewMode viewMode ); + virtual void SetViewMode( ViewMode viewMode ) override; /** * @copydoc Dali::RenderSurface::StartRender() */ - virtual void StartRender(); + virtual void StartRender() override; /** * @copydoc Dali::RenderSurface::PreRender() */ - virtual bool PreRender( EglInterface& egl, Integration::GlAbstraction& glAbstraction, bool resizingSurface ); + virtual bool PreRender( EglInterface& egl, Integration::GlAbstraction& glAbstraction, bool resizingSurface ) override; /** * @copydoc Dali::RenderSurface::PostRender() */ - virtual void PostRender( EglInterface& egl, Integration::GlAbstraction& glAbstraction, DisplayConnection* displayConnection, bool replacingSurface, bool resizingSurface ); + virtual void PostRender( EglInterface& egl, Integration::GlAbstraction& glAbstraction, DisplayConnection* displayConnection, bool replacingSurface, bool resizingSurface ) override; /** * @copydoc Dali::RenderSurface::StopRender() */ - virtual void StopRender(); + virtual void StopRender() override; /** * @copydoc Dali::RenderSurface::SetThreadSynchronization */ - virtual void SetThreadSynchronization( ThreadSynchronizationInterface& threadSynchronization ); + virtual void SetThreadSynchronization( ThreadSynchronizationInterface& threadSynchronization ) override; /** * @copydoc Dali::RenderSurface::ReleaseLock() */ - virtual void ReleaseLock(); + virtual void ReleaseLock() override; /** * @copydoc Dali::RenderSurface::GetSurfaceType() */ - virtual RenderSurface::Type GetSurfaceType(); + virtual RenderSurface::Type GetSurfaceType() override; private: // from WindowRenderSurface