summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTomi Korpipää <tomi.korpipaa@digia.com>2014-02-21 10:01:20 +0200
committerTomi Korpipää <tomi.korpipaa@digia.com>2014-02-21 10:26:46 +0200
commit980045efdc2ef15a3cf2cafb0f8f92fc4b09f380 (patch)
treefdaec82ed94ed49ee2e271a3df6539632841e942
parent73e83d139481f87ec77db0f845b151b9f50d73bd (diff)
Mac fixes for QML
Change-Id: I9598b83985aee3bbdf006f317bcc00ba95027569 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
-rw-r--r--src/datavisualizationqml2/abstractdeclarative.cpp12
-rw-r--r--src/datavisualizationqml2/declarativerendernode.cpp4
2 files changed, 13 insertions, 3 deletions
diff --git a/src/datavisualizationqml2/abstractdeclarative.cpp b/src/datavisualizationqml2/abstractdeclarative.cpp
index 5066666e..09e6cabf 100644
--- a/src/datavisualizationqml2/abstractdeclarative.cpp
+++ b/src/datavisualizationqml2/abstractdeclarative.cpp
@@ -54,11 +54,13 @@ AbstractDeclarative::AbstractDeclarative(QQuickItem *parent) :
AbstractDeclarative::~AbstractDeclarative()
{
+#if 0 //!defined(Q_OS_MAC)
// Context can be in another thread, don't delete it directly in that case
if (m_context && m_context->thread() != QThread::currentThread())
m_context->deleteLater();
else
delete m_context;
+#endif
disconnect(this, 0, this, 0);
checkWindowList(0);
@@ -93,7 +95,7 @@ void AbstractDeclarative::setRenderingMode(AbstractDeclarative::RenderingMode mo
setFlag(ItemHasContents, false);
if (win) {
QObject::connect(win, &QQuickWindow::beforeRendering, this,
- &AbstractDeclarative::render);
+ &AbstractDeclarative::render, Qt::DirectConnection);
checkWindowList(win);
int samples = win->format().samples();
if (samples != m_samples)
@@ -228,6 +230,7 @@ void AbstractDeclarative::setSharedController(Abstract3DController *controller)
void AbstractDeclarative::activateOpenGLContext(QQuickWindow *window)
{
+#if 0 //!defined(Q_OS_MAC)
if (!m_context || m_contextWindow != window) {
m_contextWindow = window;
delete m_context;
@@ -238,11 +241,18 @@ void AbstractDeclarative::activateOpenGLContext(QQuickWindow *window)
m_context->create();
}
m_context->makeCurrent(window);
+#else
+ Q_UNUSED(window)
+#endif
}
void AbstractDeclarative::doneOpenGLContext(QQuickWindow *window)
{
+#if 0 //!defined(Q_OS_MAC)
m_qtContext->makeCurrent(window);
+#else
+ Q_UNUSED(window)
+#endif
}
void AbstractDeclarative::synchDataToRenderer()
diff --git a/src/datavisualizationqml2/declarativerendernode.cpp b/src/datavisualizationqml2/declarativerendernode.cpp
index b22d2633..90e77e86 100644
--- a/src/datavisualizationqml2/declarativerendernode.cpp
+++ b/src/datavisualizationqml2/declarativerendernode.cpp
@@ -33,8 +33,8 @@ DeclarativeRenderNode::DeclarativeRenderNode(AbstractDeclarative *declarative)
m_fbo(0),
m_multisampledFBO(0),
m_window(0),
- m_dirtyFBO(false),
- m_samples(0)
+ m_samples(0),
+ m_dirtyFBO(false)
{
setMaterial(&m_material);
setOpaqueMaterial(&m_materialO);