diff options
author | Laszlo Agocs <laszlo.agocs@qt.io> | 2020-06-05 12:10:06 +0200 |
---|---|---|
committer | Laszlo Agocs <laszlo.agocs@qt.io> | 2020-06-08 14:10:45 +0200 |
commit | 433dc99229c7c980f410b6692c1df17734c95385 (patch) | |
tree | 876adc33c9240e4ef782057c07c192543bc9ae3d /src/quickwidgets | |
parent | 3f5e21a0cc9f41f1747e5c431695e7798ee489db (diff) |
Make render loops OpenGL clean
Task-number: QTBUG-84718
Task-number: QTBUG-84623
Change-Id: I14392c365a52ecc410362500bbe29b4dd7953007
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
Diffstat (limited to 'src/quickwidgets')
-rw-r--r-- | src/quickwidgets/qquickwidget.cpp | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/src/quickwidgets/qquickwidget.cpp b/src/quickwidgets/qquickwidget.cpp index 6bcbb0722c..440da6b461 100644 --- a/src/quickwidgets/qquickwidget.cpp +++ b/src/quickwidgets/qquickwidget.cpp @@ -315,8 +315,10 @@ void QQuickWidgetPrivate::render(bool needsSync) if (!current && !context->isValid()) { renderControl->invalidate(); current = context->create() && context->makeCurrent(offscreenSurface); - if (current) - renderControl->initialize(context); + if (current) { + offscreenWindow->setGraphicsDevice(QQuickGraphicsDevice::fromOpenGLContext(context)); + renderControl->initialize(); + } } if (!current) { @@ -970,10 +972,7 @@ void QQuickWidgetPrivate::createContext() if (context->makeCurrent(offscreenSurface)) { if (!offscreenWindow->isSceneGraphInitialized()) { offscreenWindow->setGraphicsDevice(QQuickGraphicsDevice::fromOpenGLContext(context)); - if (QSGRhiSupport::instance()->isRhiEnabled()) - renderControl->initialize(); - else - renderControl->initialize(context); + renderControl->initialize(); } } else #endif |