summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Hartmann <Thomas.Hartmann@nokia.com>2010-01-18 18:45:02 +0100
committerThomas Hartmann <Thomas.Hartmann@nokia.com>2010-01-18 18:51:14 +0100
commit5526c2107d58ccb75d5dac66a34ed423d9a55605 (patch)
treeca9979c7339b3b6ccf88bc37956d29d940c3281a
parent031369f73f18f6a358de495f29db84f2d12fef38 (diff)
downloadqt-creator-5526c2107d58ccb75d5dac66a34ed423d9a55605.tar.gz
QmlDesigner: Java Script evalution should not block the gui thread
Expressions are still evaluated in the gui thread, but at least every 100ms QApplication::processEvents is called. Evalitation of expression does not completly block the gui anymore.
-rw-r--r--src/plugins/qmldesigner/core/instances/nodeinstanceview.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/plugins/qmldesigner/core/instances/nodeinstanceview.cpp b/src/plugins/qmldesigner/core/instances/nodeinstanceview.cpp
index ef024af87c..febc1d5c04 100644
--- a/src/plugins/qmldesigner/core/instances/nodeinstanceview.cpp
+++ b/src/plugins/qmldesigner/core/instances/nodeinstanceview.cpp
@@ -37,6 +37,7 @@
#include <QGraphicsView>
#include <QGraphicsScene>
#include <QGraphicsObject>
+#include <private/qmlengine_p.h>
#include <model.h>
#include <modelnode.h>
@@ -94,6 +95,12 @@ NodeInstanceView::NodeInstanceView(QObject *parent)
m_graphicsView->setAttribute(Qt::WA_DontShowOnScreen, true);
m_graphicsView->setViewportUpdateMode(QGraphicsView::NoViewportUpdate);
m_graphicsView->setScene(new QGraphicsScene(m_graphicsView.data()));
+
+ Q_ASSERT(!m_engine.isNull());
+
+ QmlEnginePrivate *privateQmlEngine = QmlEnginePrivate::get(m_engine.data());
+ Q_ASSERT(privateQmlEngine);
+ privateQmlEngine->scriptEngine.setProcessEventsInterval(100);
}