summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/windows/qwindowsintegration.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/platforms/windows/qwindowsintegration.cpp')
-rw-r--r--src/plugins/platforms/windows/qwindowsintegration.cpp17
1 files changed, 14 insertions, 3 deletions
diff --git a/src/plugins/platforms/windows/qwindowsintegration.cpp b/src/plugins/platforms/windows/qwindowsintegration.cpp
index 797a96cda7..6b50ebe8a1 100644
--- a/src/plugins/platforms/windows/qwindowsintegration.cpp
+++ b/src/plugins/platforms/windows/qwindowsintegration.cpp
@@ -338,11 +338,18 @@ QWindowsWindow *QWindowsIntegration::createPlatformWindowHelper(QWindow *window,
QWindowsStaticOpenGLContext *QWindowsStaticOpenGLContext::doCreate()
{
#if defined(QT_OPENGL_DYNAMIC)
+ const QWindowsOpenGLTester::Renderers supportedRenderers = QWindowsOpenGLTester::supportedRenderers();
+
QWindowsOpenGLTester::Renderer requestedRenderer = QWindowsOpenGLTester::requestedRenderer();
switch (requestedRenderer) {
case QWindowsOpenGLTester::DesktopGl:
- if (QWindowsStaticOpenGLContext *glCtx = QOpenGLStaticContext::create())
+ if (QWindowsStaticOpenGLContext *glCtx = QOpenGLStaticContext::create()) {
+ if ((supportedRenderers & QWindowsOpenGLTester::DisableRotationFlag)
+ && !QWindowsScreen::setOrientationPreference(Qt::LandscapeOrientation)) {
+ qCWarning(lcQpaGl, "Unable to disable rotation.");
+ }
return glCtx;
+ }
qCWarning(lcQpaGl, "System OpenGL failed. Falling back to Software OpenGL.");
return QOpenGLStaticContext::create(true);
// If ANGLE is requested, use it, don't try anything else.
@@ -363,10 +370,14 @@ QWindowsStaticOpenGLContext *QWindowsStaticOpenGLContext::doCreate()
break;
}
- const QWindowsOpenGLTester::Renderers supportedRenderers = QWindowsOpenGLTester::supportedRenderers();
if (supportedRenderers & QWindowsOpenGLTester::DesktopGl) {
- if (QWindowsStaticOpenGLContext *glCtx = QOpenGLStaticContext::create())
+ if (QWindowsStaticOpenGLContext *glCtx = QOpenGLStaticContext::create()) {
+ if ((supportedRenderers & QWindowsOpenGLTester::DisableRotationFlag)
+ && !QWindowsScreen::setOrientationPreference(Qt::LandscapeOrientation)) {
+ qCWarning(lcQpaGl, "Unable to disable rotation.");
+ }
return glCtx;
+ }
}
if (QWindowsOpenGLTester::Renderers glesRenderers = supportedRenderers & QWindowsOpenGLTester::GlesMask) {
if (QWindowsEGLStaticContext *eglCtx = QWindowsEGLStaticContext::create(glesRenderers))