diff options
author | Qt Forward Merge Bot <qt_forward_merge_bot@qt-project.org> | 2018-07-17 01:00:21 +0200 |
---|---|---|
committer | Edward Welbourne <edward.welbourne@qt.io> | 2018-07-17 10:19:22 +0200 |
commit | 1783fca89768a9d503d886673643dc4542ec467f (patch) | |
tree | 5055f39393017219e448ade71b3842896c4679c5 /src/plugins/platforms/qnx | |
parent | b82648bd59256abb8e7084e0424a1f8a6a034c34 (diff) | |
parent | 435d1d53bd61491010dbb2130a27e35cd9798965 (diff) |
Merge remote-tracking branch 'origin/5.11' into dev
Conflicts:
src/plugins/platforms/cocoa/qcocoawindow.mm
src/plugins/platforms/xcb/qxcbintegration.cpp
Conflicts git missed:
src/plugins/platforms/qnx/qqnxglcontext.cpp
Change-Id: I0582cdc9e66e43efe79038b9c43d4f9572ac88fc
Diffstat (limited to 'src/plugins/platforms/qnx')
-rw-r--r-- | src/plugins/platforms/qnx/qqnxglcontext.cpp | 13 | ||||
-rw-r--r-- | src/plugins/platforms/qnx/qqnxintegration.cpp | 4 | ||||
-rw-r--r-- | src/plugins/platforms/qnx/qqnxintegration.h | 3 |
3 files changed, 18 insertions, 2 deletions
diff --git a/src/plugins/platforms/qnx/qqnxglcontext.cpp b/src/plugins/platforms/qnx/qqnxglcontext.cpp index d4493943e2..1d030ba1aa 100644 --- a/src/plugins/platforms/qnx/qqnxglcontext.cpp +++ b/src/plugins/platforms/qnx/qqnxglcontext.cpp @@ -38,6 +38,7 @@ ****************************************************************************/ #include "qqnxglcontext.h" +#include "qqnxintegration.h" #include "qqnxscreen.h" #include "qqnxeglwindow.h" @@ -59,8 +60,18 @@ QT_BEGIN_NAMESPACE EGLDisplay QQnxGLContext::ms_eglDisplay = EGL_NO_DISPLAY; +static QEGLPlatformContext::Flags makeFlags() +{ + QEGLPlatformContext::Flags result = 0; + + if (!QQnxIntegration::instance()->options().testFlag(QQnxIntegration::SurfacelessEGLContext)) + result |= QEGLPlatformContext::NoSurfaceless; + + return result; +} + QQnxGLContext::QQnxGLContext(const QSurfaceFormat &format, QPlatformOpenGLContext *share) - : QEGLPlatformContext(format, share, ms_eglDisplay) + : QEGLPlatformContext(format, share, ms_eglDisplay, 0, QVariant(), makeFlags()) { } diff --git a/src/plugins/platforms/qnx/qqnxintegration.cpp b/src/plugins/platforms/qnx/qqnxintegration.cpp index 0b6a7f197a..8c8521325c 100644 --- a/src/plugins/platforms/qnx/qqnxintegration.cpp +++ b/src/plugins/platforms/qnx/qqnxintegration.cpp @@ -116,6 +116,10 @@ static inline QQnxIntegration::Options parseOptions(const QStringList ¶mList options |= QQnxIntegration::RootWindow; } + if (!paramList.contains(QLatin1String("disable-EGL_KHR_surfaceless_context"))) { + options |= QQnxIntegration::SurfacelessEGLContext; + } + return options; } diff --git a/src/plugins/platforms/qnx/qqnxintegration.h b/src/plugins/platforms/qnx/qqnxintegration.h index 89654f588f..2993607489 100644 --- a/src/plugins/platforms/qnx/qqnxintegration.h +++ b/src/plugins/platforms/qnx/qqnxintegration.h @@ -81,7 +81,8 @@ public: NoOptions = 0x0, FullScreenApplication = 0x1, RootWindow = 0x2, - AlwaysFlushScreenContext = 0x4 + AlwaysFlushScreenContext = 0x4, + SurfacelessEGLContext = 0x8 }; Q_DECLARE_FLAGS(Options, Option) explicit QQnxIntegration(const QStringList ¶mList); |