aboutsummaryrefslogtreecommitdiffstats
path: root/src/declarative/util
diff options
context:
space:
mode:
authorGunnar Sletta <gunnar.sletta@nokia.com>2011-08-11 16:03:12 +0200
committerGunnar Sletta <gunnar.sletta@nokia.com>2011-08-11 16:03:12 +0200
commitf9949f501890a7f8289fcbda85d3a4085bdbb21a (patch)
tree759e57bb3ed156e46a98c3a4223951c3edc55d43 /src/declarative/util
parent1ddef09c351f2899b1662ddd1de190c0d0a8b7bf (diff)
parent3e0c19d5ba0e4826c3f036c3172d8ea0e30530a6 (diff)
Merge branch 'master' into refactor
Conflicts: src/declarative/declarative.pro src/imports/gestures/gestures.pro src/imports/inputcontext/inputcontext.pro src/qtquick1/graphicsitems/qdeclarativeitem.cpp src/qtquick1/qtquick1.pro Change-Id: I782be7090d8b6da9c890bc8e778722da93da8037
Diffstat (limited to 'src/declarative/util')
-rw-r--r--src/declarative/util/qdeclarativeanimation.cpp10
-rw-r--r--src/declarative/util/qdeclarativebind.cpp11
-rw-r--r--src/declarative/util/qdeclarativelistmodel.cpp4
3 files changed, 16 insertions, 9 deletions
diff --git a/src/declarative/util/qdeclarativeanimation.cpp b/src/declarative/util/qdeclarativeanimation.cpp
index 213ebe564a..977f7fa0d9 100644
--- a/src/declarative/util/qdeclarativeanimation.cpp
+++ b/src/declarative/util/qdeclarativeanimation.cpp
@@ -159,7 +159,7 @@ void QDeclarativeAbstractAnimationPrivate::commence()
q->transition(actions, properties, QDeclarativeAbstractAnimation::Forward);
q->qtAnimation()->start();
- if (q->qtAnimation()->state() != QAbstractAnimation::Running) {
+ if (q->qtAnimation()->state() == QAbstractAnimation::Stopped) {
running = false;
emit q->completed();
}
@@ -265,6 +265,10 @@ void QDeclarativeAbstractAnimation::setPaused(bool p)
}
d->paused = p;
+
+ if (!d->componentComplete)
+ return;
+
if (d->paused)
qtAnimation()->pause();
else
@@ -292,6 +296,10 @@ void QDeclarativeAbstractAnimation::componentFinalized()
d->running = false;
setRunning(true);
}
+ if (d->paused) {
+ d->paused = false;
+ setPaused(true);
+ }
}
/*!
diff --git a/src/declarative/util/qdeclarativebind.cpp b/src/declarative/util/qdeclarativebind.cpp
index 6038aca8d5..fa463ebef8 100644
--- a/src/declarative/util/qdeclarativebind.cpp
+++ b/src/declarative/util/qdeclarativebind.cpp
@@ -52,9 +52,8 @@
#include <QtCore/qfile.h>
#include <QtCore/qdebug.h>
-#include <QtScript/qscriptvalue.h>
-#include <QtScript/qscriptcontext.h>
-#include <QtScript/qscriptengine.h>
+#include <QtDeclarative/qjsvalue.h>
+#include <QtDeclarative/qjsengine.h>
#include <private/qobject_p.h>
@@ -281,11 +280,11 @@ void QDeclarativeBind::eval()
if (!d->when) {
//restore any previous binding
if (d->prevBind) {
- QDeclarativeAbstractBinding *tmp;
- tmp = QDeclarativePropertyPrivate::setBinding(d->prop, d->prevBind);
+ QDeclarativeAbstractBinding *tmp = d->prevBind;
+ d->prevBind = 0;
+ tmp = QDeclarativePropertyPrivate::setBinding(d->prop, tmp);
if (tmp) //should this ever be true?
tmp->destroy();
- d->prevBind = 0;
}
return;
}
diff --git a/src/declarative/util/qdeclarativelistmodel.cpp b/src/declarative/util/qdeclarativelistmodel.cpp
index d1496fc886..035502140b 100644
--- a/src/declarative/util/qdeclarativelistmodel.cpp
+++ b/src/declarative/util/qdeclarativelistmodel.cpp
@@ -485,7 +485,7 @@ ModelObject *ModelNode::object(const NestedListModel *model)
{
if (!objectCache) {
QDeclarativeEnginePrivate *ep = QDeclarativeEnginePrivate::get(qmlEngine(model->m_listModel));
- objectCache = new ModelObject(this, const_cast<NestedListModel*>(model), &ep->v8engine);
+ objectCache = new ModelObject(this, const_cast<NestedListModel*>(model), ep->v8engine());
QHash<QString, ModelNode *>::iterator it;
for (it = properties.begin(); it != properties.end(); ++it) {
@@ -1451,7 +1451,7 @@ v8::Handle<v8::Value> NestedListModel::get(int index) const
if (!node)
return v8::Undefined();;
- return QDeclarativeEnginePrivate::get(eng)->v8engine.newQObject(node->object(this));
+ return QDeclarativeEnginePrivate::get(eng)->v8engine()->newQObject(node->object(this));
}
void NestedListModel::set(int index, v8::Handle<v8::Value> valuemap, QList<int> *roles)