diff options
author | Laszlo Agocs <laszlo.agocs@theqtcompany.com> | 2015-05-07 19:00:11 +0200 |
---|---|---|
committer | Laszlo Agocs <laszlo.agocs@theqtcompany.com> | 2015-05-12 08:59:02 +0000 |
commit | 6ea636b0bd73f067c08217aa4e0ccc3f0209ede0 (patch) | |
tree | e4e6c38ae4dea32c26ac86e698ab6a464c10c856 /src/widgets/kernel/qopenglwidget.cpp | |
parent | 55225948a97ed3c405f894c617da375e6e89e9f0 (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.cpp | 2 |
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)) { |