summaryrefslogtreecommitdiffstats
path: root/src/widgets/kernel/qopenglwidget.cpp
diff options
context:
space:
mode:
authorLaszlo Agocs <laszlo.agocs@theqtcompany.com>2015-05-07 19:00:11 +0200
committerLaszlo Agocs <laszlo.agocs@theqtcompany.com>2015-05-12 08:59:02 +0000
commit6ea636b0bd73f067c08217aa4e0ccc3f0209ede0 (patch)
treee4e6c38ae4dea32c26ac86e698ab6a464c10c856 /src/widgets/kernel/qopenglwidget.cpp
parent55225948a97ed3c405f894c617da375e6e89e9f0 (diff)
Create contexts and pbuffers with the correct screen in QOpenGLWidget
It won't be functional otherwise with GLX when the QOpenGLWidget is targeting a separate X screen. Change-Id: Ibe5b89023f833039bb67d94b78b173de2e021ac9 Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
Diffstat (limited to 'src/widgets/kernel/qopenglwidget.cpp')
-rw-r--r--src/widgets/kernel/qopenglwidget.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/widgets/kernel/qopenglwidget.cpp b/src/widgets/kernel/qopenglwidget.cpp
index d4d23604a3..b8df25b38f 100644
--- a/src/widgets/kernel/qopenglwidget.cpp
+++ b/src/widgets/kernel/qopenglwidget.cpp
@@ -739,6 +739,7 @@ void QOpenGLWidgetPrivate::initialize()
QScopedPointer<QOpenGLContext> ctx(new QOpenGLContext);
ctx->setShareContext(shareContext);
ctx->setFormat(requestedFormat);
+ ctx->setScreen(shareContext->screen());
if (!ctx->create()) {
qWarning("QOpenGLWidget: Failed to create context");
return;
@@ -762,6 +763,7 @@ void QOpenGLWidgetPrivate::initialize()
// in QQuickWidget, use a dedicated QOffscreenSurface.
surface = new QOffscreenSurface;
surface->setFormat(ctx->format());
+ surface->setScreen(ctx->screen());
surface->create();
if (!ctx->makeCurrent(surface)) {