diff options
author | Dmitry Kazakov <dimula73@gmail.com> | 2018-12-04 20:11:34 +0300 |
---|---|---|
committer | Dmitry Kazakov <dimula73@gmail.com> | 2019-05-07 17:28:58 +0000 |
commit | 2841d5bf64d6228cdb5e42cdd1d4e2e8035217fa (patch) | |
tree | 2860960f87143b58aa2477fcc6212af0f2bf1d9b /src/plugins/platforms/windows/qwindowsnativeinterface.cpp | |
parent | 06b8644953fc526707b5fe24c8ef08f4829ba1c6 (diff) |
Return QScreen's HMONITOR handle via QPlatformNativeInterface
It is needed to be able to fetch extra information about the display via
DXGI interface.
Change-Id: Id83982eb07ade157719e430d0abcc2613409a343
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Diffstat (limited to 'src/plugins/platforms/windows/qwindowsnativeinterface.cpp')
-rw-r--r-- | src/plugins/platforms/windows/qwindowsnativeinterface.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/plugins/platforms/windows/qwindowsnativeinterface.cpp b/src/plugins/platforms/windows/qwindowsnativeinterface.cpp index b8ab7f8779..e581b30ced 100644 --- a/src/plugins/platforms/windows/qwindowsnativeinterface.cpp +++ b/src/plugins/platforms/windows/qwindowsnativeinterface.cpp @@ -40,6 +40,7 @@ #include "qwindowsnativeinterface.h" #include "qwindowsclipboard.h" #include "qwindowswindow.h" +#include "qwindowsscreen.h" #include "qwindowscontext.h" #include "qwindowscursor.h" #include "qwindowsopenglcontext.h" @@ -124,6 +125,21 @@ void *QWindowsNativeInterface::nativeResourceForWindow(const QByteArray &resourc return nullptr; } +void *QWindowsNativeInterface::nativeResourceForScreen(const QByteArray &resource, QScreen *screen) +{ + if (!screen || !screen->handle()) { + qWarning("%s: '%s' requested for null screen or screen without handle.", __FUNCTION__, resource.constData()); + return nullptr; + } + QWindowsScreen *bs = static_cast<QWindowsScreen *>(screen->handle()); + int type = resourceType(resource); + if (type == HandleType) + return bs->handle(); + + qWarning("%s: Invalid key '%s' requested.", __FUNCTION__, resource.constData()); + return nullptr; +} + #ifndef QT_NO_CURSOR void *QWindowsNativeInterface::nativeResourceForCursor(const QByteArray &resource, const QCursor &cursor) { |