aboutsummaryrefslogtreecommitdiffstats
path: root/src/declarative/items/qsgcanvas_p.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/declarative/items/qsgcanvas_p.h')
-rw-r--r--src/declarative/items/qsgcanvas_p.h12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/declarative/items/qsgcanvas_p.h b/src/declarative/items/qsgcanvas_p.h
index d26b311e59..bf65e95812 100644
--- a/src/declarative/items/qsgcanvas_p.h
+++ b/src/declarative/items/qsgcanvas_p.h
@@ -64,7 +64,9 @@
#include <QtCore/qmutex.h>
#include <QtCore/qwaitcondition.h>
#include <private/qwidget_p.h>
+#include <private/qwindow_p.h>
#include <private/qgl_p.h>
+#include <qguiglcontext_qpa.h>
#include <QtOpenGL/qglframebufferobject.h>
QT_BEGIN_NAMESPACE
@@ -82,7 +84,7 @@ class QSGCanvasPrivate;
class QTouchEvent;
class QSGCanvasRenderThread;
-class QSGCanvasPrivate : public QGLWidgetPrivate
+class QSGCanvasPrivate : public QWindowPrivate
{
public:
Q_DECLARE_PUBLIC(QSGCanvas)
@@ -141,6 +143,9 @@ public:
void syncSceneGraph();
void renderSceneGraph(const QSize &size);
+ void updateInputContext();
+ void resetInputContext();
+
QSGItem::UpdatePaintNodeData updatePaintNodeData;
QSGItem *dirtyItemList;
@@ -156,8 +161,6 @@ public:
QSGContext *context;
- uint contextFailed : 1;
- uint threadedRendering : 1;
uint animationRunning: 1;
uint renderThreadAwakened : 1;
@@ -182,6 +185,7 @@ class QSGCanvasRenderThread : public QThread
public:
QSGCanvasRenderThread()
: mutex(QMutex::NonRecursive)
+ , guiContext(0)
, isGuiBlocked(0)
, isPaintCompleted(false)
, isGuiBlockPending(false)
@@ -225,6 +229,8 @@ public:
QSGCanvas *renderer;
QSGCanvasPrivate *d;
+ QGuiGLContext *guiContext;
+
int isGuiBlocked;
uint isPaintCompleted : 1;
uint isGuiBlockPending : 1;