diff options
Diffstat (limited to 'src/gui/kernel')
-rw-r--r-- | src/gui/kernel/qplatformscreen_p.h | 12 | ||||
-rw-r--r-- | src/gui/kernel/qscreen.cpp | 4 |
2 files changed, 16 insertions, 0 deletions
diff --git a/src/gui/kernel/qplatformscreen_p.h b/src/gui/kernel/qplatformscreen_p.h index 2d3fb2d418..6c79978f79 100644 --- a/src/gui/kernel/qplatformscreen_p.h +++ b/src/gui/kernel/qplatformscreen_p.h @@ -20,6 +20,10 @@ #include <QtCore/qpointer.h> #include <QtCore/qnativeinterface.h> +#if defined(Q_OS_WIN32) +#include <qwindowdefs_win.h> +#endif + QT_BEGIN_NAMESPACE class QScreen; @@ -68,6 +72,14 @@ struct Q_GUI_EXPORT QWebOSScreen }; #endif +#if defined(Q_OS_WIN32) || defined(Q_CLANG_QDOC) +struct Q_GUI_EXPORT QWindowsScreen +{ + QT_DECLARE_NATIVE_INTERFACE(QWindowsScreen, 1, QScreen) + virtual HMONITOR handle() const = 0; +}; +#endif + } // QNativeInterface::Private QT_END_NAMESPACE diff --git a/src/gui/kernel/qscreen.cpp b/src/gui/kernel/qscreen.cpp index ac33185900..1bc6042a1a 100644 --- a/src/gui/kernel/qscreen.cpp +++ b/src/gui/kernel/qscreen.cpp @@ -775,6 +775,10 @@ void *QScreen::resolveInterface(const char *name, int revision) const QT_NATIVE_INTERFACE_RETURN_IF(QWebOSScreen, platformScreen); #endif +#if defined(Q_OS_WIN32) + QT_NATIVE_INTERFACE_RETURN_IF(QWindowsScreen, platformScreen); +#endif + return nullptr; } |