diff options
author | Samuel Nevala <samuel.nevala@intopalo.com> | 2015-08-27 09:17:05 +0300 |
---|---|---|
committer | Samuel Nevala <samuel.nevala@intopalo.com> | 2015-08-31 11:57:56 +0000 |
commit | fb60f225e67db6c548fc2c5dfbe172251993daba (patch) | |
tree | 2152688bef71fa1fc4f7a541eee333a83832dd91 /src/plugins/platforms/winrt/qwinrtscreen.h | |
parent | 8c1fcbcd83214d7cc7efc63c12f907538664821e (diff) |
winrt: Enable window visibility for the root window.
- Minimized and Hidden: hide the status bar and collapse winrt native ui element.
- Windowed and Maximized: show the status bar and re-size the window.
- FullScreen and AutomaticVisibility: hide the status bar and re-size the window.
Showing & hiding the status bar and re-sizing the window affect only the
windows phone build.
Change-Id: Iaa412382bffc14e470720f2213bb3f6851f57a6b
Task-Id: QTBUG-47811
Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
Diffstat (limited to 'src/plugins/platforms/winrt/qwinrtscreen.h')
-rw-r--r-- | src/plugins/platforms/winrt/qwinrtscreen.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/plugins/platforms/winrt/qwinrtscreen.h b/src/plugins/platforms/winrt/qwinrtscreen.h index 4112e49c4d..3297617740 100644 --- a/src/plugins/platforms/winrt/qwinrtscreen.h +++ b/src/plugins/platforms/winrt/qwinrtscreen.h @@ -61,6 +61,9 @@ namespace ABI { struct IDependencyObject; struct IWindow; } + namespace ViewManagement { + struct IStatusBar; + } } namespace Graphics { namespace Display { @@ -83,6 +86,9 @@ public: explicit QWinRTScreen(ABI::Windows::UI::Xaml::IWindow *xamlWindow); ~QWinRTScreen(); QRect geometry() const Q_DECL_OVERRIDE; +#ifdef Q_OS_WINPHONE + QRect availableGeometry() const Q_DECL_OVERRIDE; +#endif int depth() const Q_DECL_OVERRIDE; QImage::Format format() const Q_DECL_OVERRIDE; QSizeF physicalSize() const Q_DECL_OVERRIDE; @@ -105,6 +111,10 @@ public: ABI::Windows::UI::Core::ICoreWindow *coreWindow() const; ABI::Windows::UI::Xaml::IDependencyObject *canvas() const; +#ifdef Q_OS_WINPHONE + void setStatusBarVisibility(bool visible, QWindow *window); +#endif + private: void handleExpose(); @@ -124,6 +134,11 @@ private: HRESULT onOrientationChanged(ABI::Windows::Graphics::Display::IDisplayInformation *, IInspectable *); HRESULT onDpiChanged(ABI::Windows::Graphics::Display::IDisplayInformation *, IInspectable *); +#ifdef Q_OS_WINPHONE + HRESULT onStatusBarShowing(ABI::Windows::UI::ViewManagement::IStatusBar *, IInspectable *); + HRESULT onStatusBarHiding(ABI::Windows::UI::ViewManagement::IStatusBar *, IInspectable *); +#endif + QScopedPointer<QWinRTScreenPrivate> d_ptr; Q_DECLARE_PRIVATE(QWinRTScreen) }; |