From 2d61b8f27a74168ca06a32c4d2f077af2cbc7b88 Mon Sep 17 00:00:00 2001 From: Miikka Heikkinen Date: Thu, 30 Oct 2014 14:00:43 +0200 Subject: Use QOffscreenSurface instead of QWindow for dummy surfaces. Android doesn't like creating extra QWindows, so changed dummy surfaces used to do static initialization and cleanup to use QOffscreenSurface. Change-Id: Ia42e288a05ef49524252c457f3a3494677e3fc63 Reviewed-by: Mika Salmela --- src/datavisualization/engine/abstract3drenderer.cpp | 5 ++--- src/datavisualization/engine/abstract3drenderer_p.h | 4 ++-- 2 files changed, 4 insertions(+), 5 deletions(-) (limited to 'src/datavisualization/engine') diff --git a/src/datavisualization/engine/abstract3drenderer.cpp b/src/datavisualization/engine/abstract3drenderer.cpp index cfc691af..fc3b4a19 100644 --- a/src/datavisualization/engine/abstract3drenderer.cpp +++ b/src/datavisualization/engine/abstract3drenderer.cpp @@ -28,7 +28,7 @@ #include "scatter3drenderer_p.h" #include -#include +#include #include QT_BEGIN_NAMESPACE_DATAVISUALIZATION @@ -1789,8 +1789,7 @@ void Abstract3DRenderer::fixContextBeforeDelete() // Otherwise we expect it to be our shared context, so we can use it for cleanup. if (!QOpenGLContext::currentContext() && !m_context.isNull() && QThread::currentThread() == this->thread()) { - m_dummySurfaceAtDelete = new QWindow(); - m_dummySurfaceAtDelete->setSurfaceType(QWindow::OpenGLSurface); + m_dummySurfaceAtDelete = new QOffscreenSurface(); m_dummySurfaceAtDelete->setFormat(m_context->format()); m_dummySurfaceAtDelete->create(); diff --git a/src/datavisualization/engine/abstract3drenderer_p.h b/src/datavisualization/engine/abstract3drenderer_p.h index 1e38023d..15793797 100644 --- a/src/datavisualization/engine/abstract3drenderer_p.h +++ b/src/datavisualization/engine/abstract3drenderer_p.h @@ -39,7 +39,7 @@ #include "seriesrendercache_p.h" #include "customrenderitem_p.h" -class QSurface; +class QOffscreenSurface; QT_BEGIN_NAMESPACE_DATAVISUALIZATION @@ -327,7 +327,7 @@ protected: QOpenGLFunctions_2_1 *m_funcs_2_1; // Not owned #endif QPointer m_context; // Not owned - QWindow *m_dummySurfaceAtDelete; + QOffscreenSurface *m_dummySurfaceAtDelete; bool m_isOpenGLES; private: -- cgit v1.2.3