summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/auto/declarative/qdeclarativeecmascript/data/propertySplicing.qml10
-rw-r--r--tests/auto/declarative/qdeclarativeecmascript/data/scope.2.qml8
-rw-r--r--tests/auto/declarative/qdeclarativeecmascript/testtypes.cpp1
-rw-r--r--tests/auto/declarative/qdeclarativeecmascript/testtypes.h41
-rw-r--r--tests/auto/declarative/qdeclarativeecmascript/tst_qdeclarativeecmascript.cpp57
-rw-r--r--tests/auto/declarative/qdeclarativefocusscope/tst_qdeclarativefocusscope.cpp6
-rw-r--r--tests/auto/declarative/qdeclarativegridview/data/gridview-noCurrent.qml52
-rw-r--r--tests/auto/declarative/qdeclarativegridview/tst_qdeclarativegridview.cpp43
-rw-r--r--tests/auto/declarative/qdeclarativelanguage/data/AliasPropertyChangeSignalsType.qml20
-rw-r--r--tests/auto/declarative/qdeclarativelanguage/data/aliasPropertyChangeSignals.2.qml10
-rw-r--r--tests/auto/declarative/qdeclarativelanguage/data/insertedSemicolon.1.errors.txt1
-rw-r--r--tests/auto/declarative/qdeclarativelanguage/data/insertedSemicolon.1.qml10
-rw-r--r--tests/auto/declarative/qdeclarativelanguage/tst_qdeclarativelanguage.cpp55
-rw-r--r--tests/auto/declarative/qdeclarativelistview/data/listview-noCurrent.qml50
-rw-r--r--tests/auto/declarative/qdeclarativelistview/tst_qdeclarativelistview.cpp53
-rw-r--r--tests/auto/declarative/qdeclarativepixmapcache/tst_qdeclarativepixmapcache.cpp27
-rw-r--r--tests/auto/declarative/qdeclarativevisualdatamodel/data/modelproperties.qml17
-rw-r--r--tests/auto/declarative/qdeclarativevisualdatamodel/data/modelproperties2.qml17
-rw-r--r--tests/auto/declarative/qdeclarativevisualdatamodel/tst_qdeclarativevisualdatamodel.cpp108
-rw-r--r--tests/auto/declarative/qmlvisual/animation/bindinganimation/bindinganimation.qml6
-rw-r--r--tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.0.pngbin817 -> 830 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.1.pngbin815 -> 831 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.2.pngbin817 -> 829 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.3.pngbin815 -> 832 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.4.pngbin813 -> 830 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.5.pngbin815 -> 832 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.6.pngbin817 -> 0 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.qml1170
-rw-r--r--tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.1.pngbin1173 -> 1177 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.2.pngbin1173 -> 1173 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.qml232
-rw-r--r--tests/auto/declarative/qmlvisual/fillmode/data/fillmode.0.pngbin28886 -> 28900 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.0.pngbin1701 -> 1701 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.1.pngbin1701 -> 1701 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.10.pngbin1721 -> 1721 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.11.pngbin1705 -> 1705 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.12.pngbin1705 -> 1705 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.13.pngbin1701 -> 1701 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.2.pngbin1704 -> 1704 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.3.pngbin1704 -> 1704 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.4.pngbin1705 -> 1705 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.5.pngbin1705 -> 1705 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.6.pngbin1701 -> 1701 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.7.pngbin1701 -> 1701 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.8.pngbin1705 -> 1705 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.9.pngbin1701 -> 1701 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.qml402
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/repeater.0.pngbin2790 -> 0 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/usingRepeater.0.pngbin0 -> 2782 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/usingRepeater.qml164
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/elide/elide2.qml2
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/elide/multilength.qml2
-rw-r--r--tests/auto/modeltest/dynamictreemodel.cpp7
-rw-r--r--tests/auto/qabstractitemmodel/tst_qabstractitemmodel.cpp6
-rw-r--r--tests/auto/qclipboard/test/test.pro2
-rw-r--r--tests/auto/qclipboard/tst_qclipboard.cpp82
-rw-r--r--tests/auto/qcompleter/tst_qcompleter.cpp159
-rw-r--r--tests/auto/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp250
-rw-r--r--tests/auto/qgraphicsitem/tst_qgraphicsitem.cpp28
-rw-r--r--tests/auto/qgraphicsview/tst_qgraphicsview.cpp55
-rw-r--r--tests/auto/qitemselectionmodel/tst_qitemselectionmodel.cpp66
-rw-r--r--tests/auto/qmainwindow/tst_qmainwindow.cpp6
-rw-r--r--tests/auto/qnetworkreply/tst_qnetworkreply.cpp16
-rw-r--r--tests/auto/qstring/tst_qstring.cpp38
-rw-r--r--tests/auto/qtipc/qsharedmemory/tst_qsharedmemory.cpp33
-rw-r--r--tests/auto/uic/baseline/gridalignment.ui49
-rw-r--r--tests/auto/uic/baseline/gridalignment.ui.h83
-rw-r--r--tests/benchmarks/declarative/creation/tst_creation.cpp4
-rw-r--r--tests/benchmarks/declarative/qmltime/qmltime.cpp65
-rw-r--r--tests/manual/bearerex/datatransferer.cpp2
-rw-r--r--tests/manual/qtouchevent/qtouchevent.pro (renamed from tests/manual/qtouchevent/multitouch.pro)0
71 files changed, 2161 insertions, 1354 deletions
diff --git a/tests/auto/declarative/qdeclarativeecmascript/data/propertySplicing.qml b/tests/auto/declarative/qdeclarativeecmascript/data/propertySplicing.qml
new file mode 100644
index 0000000..7deb84a
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativeecmascript/data/propertySplicing.qml
@@ -0,0 +1,10 @@
+import Qt.test 1.0
+import QtQuick 1.0
+
+MyDerivedObject {
+ property bool test: false
+
+ Component.onCompleted: {
+ test = intProperty()
+ }
+}
diff --git a/tests/auto/declarative/qdeclarativeecmascript/data/scope.2.qml b/tests/auto/declarative/qdeclarativeecmascript/data/scope.2.qml
index 95f34d8..9555b7f 100644
--- a/tests/auto/declarative/qdeclarativeecmascript/data/scope.2.qml
+++ b/tests/auto/declarative/qdeclarativeecmascript/data/scope.2.qml
@@ -2,7 +2,7 @@ import QtQuick 1.0
Item {
property int a: 0
- property int b: 0
+ property int b: 14
function b() { return 11; }
function c() { return 33; }
@@ -21,7 +21,7 @@ Item {
id: nested
property int a: 1
property int test: a.value
- property int test2: b()
+ property int test2: b
property int test3: c.value
}
@@ -30,8 +30,8 @@ Item {
property int test1: a.value
property alias test2: nested.test
- // methods takes precedence over local, and root properties
- property int test3: b()
+ // properties takes precedence over local, and root methods
+ property int test3: b
property alias test4: nested.test2
// id takes precedence over methods
diff --git a/tests/auto/declarative/qdeclarativeecmascript/testtypes.cpp b/tests/auto/declarative/qdeclarativeecmascript/testtypes.cpp
index 810a0f7..94135f9 100644
--- a/tests/auto/declarative/qdeclarativeecmascript/testtypes.cpp
+++ b/tests/auto/declarative/qdeclarativeecmascript/testtypes.cpp
@@ -109,6 +109,7 @@ void registerTypes()
qmlRegisterExtendedType<MyBaseExtendedObject, BaseExtensionObject>("Qt.test", 1,0, "MyBaseExtendedObject");
qmlRegisterExtendedType<MyExtendedObject, ExtensionObject>("Qt.test", 1,0, "MyExtendedObject");
qmlRegisterType<MyTypeObject>("Qt.test", 1,0, "MyTypeObject");
+ qmlRegisterType<MyDerivedObject>("Qt.test", 1,0, "MyDerivedObject");
qmlRegisterType<NumberAssignment>("Qt.test", 1,0, "NumberAssignment");
qmlRegisterExtendedType<DefaultPropertyExtendedObject, DefaultPropertyExtensionObject>("Qt.test", 1,0, "DefaultPropertyExtendedObject");
qmlRegisterType<OverrideDefaultPropertyObject>("Qt.test", 1,0, "OverrideDefaultPropertyObject");
diff --git a/tests/auto/declarative/qdeclarativeecmascript/testtypes.h b/tests/auto/declarative/qdeclarativeecmascript/testtypes.h
index 220318d..40451c3 100644
--- a/tests/auto/declarative/qdeclarativeecmascript/testtypes.h
+++ b/tests/auto/declarative/qdeclarativeecmascript/testtypes.h
@@ -562,8 +562,27 @@ signals:
};
Q_DECLARE_OPERATORS_FOR_FLAGS(MyTypeObject::MyFlags)
+class MyDerivedObject : public MyTypeObject
+{
+ Q_OBJECT
+public:
+ Q_INVOKABLE bool intProperty() const {
+ return true;
+ }
+};
+
Q_DECLARE_METATYPE(QScriptValue);
-class MyInvokableObject : public QObject
+class MyInvokableBaseObject : public QObject
+{
+ Q_OBJECT
+public:
+ inline ~MyInvokableBaseObject() = 0;
+
+ Q_INVOKABLE inline void method_inherited(int a);
+ Q_INVOKABLE inline void method_overload();
+};
+
+class MyInvokableObject : public MyInvokableBaseObject
{
Q_OBJECT
Q_ENUMS(TestEnum)
@@ -599,16 +618,34 @@ public:
Q_INVOKABLE void method_overload(int a) { invoke(16); m_actuals << a; }
Q_INVOKABLE void method_overload(int a, int b) { invoke(17); m_actuals << a << b; }
+ Q_INVOKABLE void method_overload(QString a) { invoke(18); m_actuals << a; }
- Q_INVOKABLE void method_with_enum(TestEnum e) { invoke(18); m_actuals << (int)e; }
+ Q_INVOKABLE void method_with_enum(TestEnum e) { invoke(19); m_actuals << (int)e; }
+
+ Q_INVOKABLE int method_default(int a, int b = 19) { invoke(20); m_actuals << a << b; return b; }
private:
+ friend class MyInvokableBaseObject;
void invoke(int idx) { if (m_invoked != -1) m_invokedError = true; m_invoked = idx;}
int m_invoked;
bool m_invokedError;
QVariantList m_actuals;
};
+MyInvokableBaseObject::~MyInvokableBaseObject() {}
+
+void MyInvokableBaseObject::method_inherited(int a)
+{
+ static_cast<MyInvokableObject *>(this)->invoke(-3);
+ static_cast<MyInvokableObject *>(this)->m_actuals << a;
+}
+
+// This is a hidden overload of the MyInvokableObject::method_overload() method
+void MyInvokableBaseObject::method_overload()
+{
+ static_cast<MyInvokableObject *>(this)->invoke(-2);
+}
+
class NumberAssignment : public QObject
{
Q_OBJECT
diff --git a/tests/auto/declarative/qdeclarativeecmascript/tst_qdeclarativeecmascript.cpp b/tests/auto/declarative/qdeclarativeecmascript/tst_qdeclarativeecmascript.cpp
index 02832f3..72e2e10 100644
--- a/tests/auto/declarative/qdeclarativeecmascript/tst_qdeclarativeecmascript.cpp
+++ b/tests/auto/declarative/qdeclarativeecmascript/tst_qdeclarativeecmascript.cpp
@@ -139,6 +139,7 @@ private slots:
void strictlyEquals();
void compiled();
void numberAssignment();
+ void propertySplicing();
void bug1();
void bug2();
@@ -802,8 +803,8 @@ void tst_qdeclarativeecmascript::scope()
QCOMPARE(object->property("test1").toInt(), 19);
QCOMPARE(object->property("test2").toInt(), 19);
- QCOMPARE(object->property("test3").toInt(), 11);
- QCOMPARE(object->property("test4").toInt(), 11);
+ QCOMPARE(object->property("test3").toInt(), 14);
+ QCOMPARE(object->property("test4").toInt(), 14);
QCOMPARE(object->property("test5").toInt(), 24);
QCOMPARE(object->property("test6").toInt(), 24);
}
@@ -1709,7 +1710,6 @@ void tst_qdeclarativeecmascript::callQtInvokables()
QCOMPARE(o.actuals().at(0), QVariant(44));
QVERIFY(qvariant_cast<QScriptValue>(o.actuals().at(1)).isArray());
- // Test overloads - QML will always invoke the *last* method
o.reset();
QCOMPARE(engine->evaluate("object.method_overload()").isError(), true);
QCOMPARE(o.error(), false);
@@ -1717,10 +1717,11 @@ void tst_qdeclarativeecmascript::callQtInvokables()
QCOMPARE(o.actuals().count(), 0);
o.reset();
- QCOMPARE(engine->evaluate("object.method_overload(10)").isError(), true);
+ QCOMPARE(engine->evaluate("object.method_overload(10)").isUndefined(), true);
QCOMPARE(o.error(), false);
- QCOMPARE(o.invoked(), -1);
- QCOMPARE(o.actuals().count(), 0);
+ QCOMPARE(o.invoked(), 16);
+ QCOMPARE(o.actuals().count(), 1);
+ QCOMPARE(o.actuals().at(0), QVariant(10));
o.reset();
QCOMPARE(engine->evaluate("object.method_overload(10, 11)").isUndefined(), true);
@@ -1731,10 +1732,40 @@ void tst_qdeclarativeecmascript::callQtInvokables()
QCOMPARE(o.actuals().at(1), QVariant(11));
o.reset();
- QCOMPARE(engine->evaluate("object.method_with_enum(9)").isUndefined(), true);
+ QCOMPARE(engine->evaluate("object.method_overload(\"Hello\")").isUndefined(), true);
QCOMPARE(o.error(), false);
QCOMPARE(o.invoked(), 18);
QCOMPARE(o.actuals().count(), 1);
+ QCOMPARE(o.actuals().at(0), QVariant(QString("Hello")));
+
+ o.reset();
+ QCOMPARE(engine->evaluate("object.method_with_enum(9)").isUndefined(), true);
+ QCOMPARE(o.error(), false);
+ QCOMPARE(o.invoked(), 19);
+ QCOMPARE(o.actuals().count(), 1);
+ QCOMPARE(o.actuals().at(0), QVariant(9));
+
+ o.reset();
+ QVERIFY(engine->evaluate("object.method_default(10)").strictlyEquals(QScriptValue(19)));
+ QCOMPARE(o.error(), false);
+ QCOMPARE(o.invoked(), 20);
+ QCOMPARE(o.actuals().count(), 2);
+ QCOMPARE(o.actuals().at(0), QVariant(10));
+ QCOMPARE(o.actuals().at(1), QVariant(19));
+
+ o.reset();
+ QVERIFY(engine->evaluate("object.method_default(10, 13)").strictlyEquals(QScriptValue(13)));
+ QCOMPARE(o.error(), false);
+ QCOMPARE(o.invoked(), 20);
+ QCOMPARE(o.actuals().count(), 2);
+ QCOMPARE(o.actuals().at(0), QVariant(10));
+ QCOMPARE(o.actuals().at(1), QVariant(13));
+
+ o.reset();
+ QCOMPARE(engine->evaluate("object.method_inherited(9)").isUndefined(), true);
+ QCOMPARE(o.error(), false);
+ QCOMPARE(o.invoked(), -3);
+ QCOMPARE(o.actuals().count(), 1);
QCOMPARE(o.actuals().at(0), QVariant(9));
}
@@ -2175,6 +2206,18 @@ void tst_qdeclarativeecmascript::numberAssignment()
delete object;
}
+void tst_qdeclarativeecmascript::propertySplicing()
+{
+ QDeclarativeComponent component(&engine, TEST_FILE("propertySplicing.qml"));
+
+ QObject *object = component.create();
+ QVERIFY(object != 0);
+
+ QCOMPARE(object->property("test").toBool(), true);
+
+ delete object;
+}
+
// Test that assigning a null object works
// Regressed with: df1788b4dbbb2826ae63f26bdf166342595343f4
void tst_qdeclarativeecmascript::nullObjectBinding()
diff --git a/tests/auto/declarative/qdeclarativefocusscope/tst_qdeclarativefocusscope.cpp b/tests/auto/declarative/qdeclarativefocusscope/tst_qdeclarativefocusscope.cpp
index 4cafbd9..1645dac 100644
--- a/tests/auto/declarative/qdeclarativefocusscope/tst_qdeclarativefocusscope.cpp
+++ b/tests/auto/declarative/qdeclarativefocusscope/tst_qdeclarativefocusscope.cpp
@@ -398,6 +398,12 @@ void tst_qdeclarativefocusscope::signalEmission()
QCOMPARE(item3->property("color"), blue);
QCOMPARE(item4->property("color"), red);
+ item4->setFocus(false);
+ QCOMPARE(item1->property("color"), blue);
+ QCOMPARE(item2->property("color"), red);
+ QCOMPARE(item3->property("color"), blue);
+ QCOMPARE(item4->property("color"), blue);
+
delete view;
}
diff --git a/tests/auto/declarative/qdeclarativegridview/data/gridview-noCurrent.qml b/tests/auto/declarative/qdeclarativegridview/data/gridview-noCurrent.qml
new file mode 100644
index 0000000..1189649
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativegridview/data/gridview-noCurrent.qml
@@ -0,0 +1,52 @@
+import QtQuick 1.0
+
+Rectangle {
+ property int current: grid.currentIndex
+ width: 240
+ height: 320
+ color: "#ffffff"
+ resources: [
+ Component {
+ id: myDelegate
+ Rectangle {
+ id: wrapper
+ objectName: "wrapper"
+ width: 80
+ height: 60
+ border.color: "blue"
+ Text {
+ text: index
+ }
+ Text {
+ x: 40
+ text: wrapper.x + ", " + wrapper.y
+ }
+ Text {
+ y: 20
+ id: textName
+ objectName: "textName"
+ text: name
+ }
+ Text {
+ y: 40
+ id: textNumber
+ objectName: "textNumber"
+ text: number
+ }
+ color: GridView.isCurrentItem ? "lightsteelblue" : "white"
+ }
+ }
+ ]
+ GridView {
+ id: grid
+ objectName: "grid"
+ focus: true
+ width: 240
+ height: 320
+ currentIndex: -1
+ cellWidth: 80
+ cellHeight: 60
+ delegate: myDelegate
+ model: testModel
+ }
+}
diff --git a/tests/auto/declarative/qdeclarativegridview/tst_qdeclarativegridview.cpp b/tests/auto/declarative/qdeclarativegridview/tst_qdeclarativegridview.cpp
index f7acd87..327bba2 100644
--- a/tests/auto/declarative/qdeclarativegridview/tst_qdeclarativegridview.cpp
+++ b/tests/auto/declarative/qdeclarativegridview/tst_qdeclarativegridview.cpp
@@ -71,6 +71,7 @@ private slots:
void moved();
void changeFlow();
void currentIndex();
+ void noCurrentIndex();
void defaultValues();
void properties();
void propertyChanges();
@@ -696,9 +697,51 @@ void tst_QDeclarativeGridView::currentIndex()
model.insertItem(0, "Foo", "1111");
QTRY_COMPARE(canvas->rootObject()->property("current").toInt(), 29);
+ // check removing highlight by setting currentIndex to -1;
+ gridview->setCurrentIndex(-1);
+
+ QCOMPARE(gridview->currentIndex(), -1);
+ QVERIFY(!gridview->highlightItem());
+ QVERIFY(!gridview->currentItem());
+
delete canvas;
}
+void tst_QDeclarativeGridView::noCurrentIndex()
+{
+ TestModel model;
+ for (int i = 0; i < 60; i++)
+ model.addItem("Item" + QString::number(i), QString::number(i));
+
+ QDeclarativeView *canvas = new QDeclarativeView(0);
+ canvas->setFixedSize(240,320);
+
+ QDeclarativeContext *ctxt = canvas->rootContext();
+ ctxt->setContextProperty("testModel", &model);
+
+ QString filename(SRCDIR "/data/gridview-noCurrent.qml");
+ canvas->setSource(QUrl::fromLocalFile(filename));
+
+ qApp->processEvents();
+
+ QDeclarativeGridView *gridview = findItem<QDeclarativeGridView>(canvas->rootObject(), "grid");
+ QVERIFY(gridview != 0);
+
+ QDeclarativeItem *contentItem = gridview->contentItem();
+ QVERIFY(contentItem != 0);
+
+ // current index should be -1
+ QCOMPARE(gridview->currentIndex(), -1);
+ QVERIFY(!gridview->currentItem());
+ QVERIFY(!gridview->highlightItem());
+ QCOMPARE(gridview->contentY(), 0.0);
+
+ gridview->setCurrentIndex(5);
+ QCOMPARE(gridview->currentIndex(), 5);
+ QVERIFY(gridview->currentItem());
+ QVERIFY(gridview->highlightItem());
+}
+
void tst_QDeclarativeGridView::changeFlow()
{
QDeclarativeView *canvas = createView();
diff --git a/tests/auto/declarative/qdeclarativelanguage/data/AliasPropertyChangeSignalsType.qml b/tests/auto/declarative/qdeclarativelanguage/data/AliasPropertyChangeSignalsType.qml
new file mode 100644
index 0000000..0bc2025
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativelanguage/data/AliasPropertyChangeSignalsType.qml
@@ -0,0 +1,20 @@
+import QtQuick 1.0
+
+QtObject {
+ id: root
+
+ signal sig1
+ signal sig2
+ signal sig3
+ signal sig4
+
+ property alias aliasProperty: root.realProperty
+
+ property int realProperty: 0
+
+ property bool test: false
+
+ Component.onCompleted: {
+ root.realProperty = 10;
+ }
+}
diff --git a/tests/auto/declarative/qdeclarativelanguage/data/aliasPropertyChangeSignals.2.qml b/tests/auto/declarative/qdeclarativelanguage/data/aliasPropertyChangeSignals.2.qml
new file mode 100644
index 0000000..a15a718
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativelanguage/data/aliasPropertyChangeSignals.2.qml
@@ -0,0 +1,10 @@
+import QtQuick 1.0
+
+AliasPropertyChangeSignalsType {
+ id: root
+ onAliasPropertyChanged: root.test = true
+
+ function blah() {}
+ property int a
+}
+
diff --git a/tests/auto/declarative/qdeclarativelanguage/data/insertedSemicolon.1.errors.txt b/tests/auto/declarative/qdeclarativelanguage/data/insertedSemicolon.1.errors.txt
new file mode 100644
index 0000000..651009c
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativelanguage/data/insertedSemicolon.1.errors.txt
@@ -0,0 +1 @@
+9:5:Expected a qualified name id
diff --git a/tests/auto/declarative/qdeclarativelanguage/data/insertedSemicolon.1.qml b/tests/auto/declarative/qdeclarativelanguage/data/insertedSemicolon.1.qml
new file mode 100644
index 0000000..4e561b4
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativelanguage/data/insertedSemicolon.1.qml
@@ -0,0 +1,10 @@
+import Test 1.0
+
+MyQmlObject {
+ function foo()
+ {
+ return
+ }
+
+ 1223
+}
diff --git a/tests/auto/declarative/qdeclarativelanguage/tst_qdeclarativelanguage.cpp b/tests/auto/declarative/qdeclarativelanguage/tst_qdeclarativelanguage.cpp
index 061ac48..50463b7 100644
--- a/tests/auto/declarative/qdeclarativelanguage/tst_qdeclarativelanguage.cpp
+++ b/tests/auto/declarative/qdeclarativelanguage/tst_qdeclarativelanguage.cpp
@@ -86,6 +86,9 @@ private slots:
void errors_data();
void errors();
+ void insertedSemicolon_data();
+ void insertedSemicolon();
+
void simpleObject();
void simpleContainer();
void interfaceProperty();
@@ -211,6 +214,31 @@ void tst_qdeclarativelanguage::cleanupTestCase()
QVERIFY(QFile::remove(TEST_FILE(QString::fromUtf8("I18nType\303\201\303\242\303\243\303\244\303\245.qml")).toLocalFile()));
}
+void tst_qdeclarativelanguage::insertedSemicolon_data()
+{
+ QTest::addColumn<QString>("file");
+ QTest::addColumn<QString>("errorFile");
+ QTest::addColumn<bool>("create");
+
+ QTest::newRow("insertedSemicolon.1") << "insertedSemicolon.1.qml" << "insertedSemicolon.1.errors.txt" << false;
+}
+
+void tst_qdeclarativelanguage::insertedSemicolon()
+{
+ QFETCH(QString, file);
+ QFETCH(QString, errorFile);
+ QFETCH(bool, create);
+
+ QDeclarativeComponent component(&engine, TEST_FILE(file));
+
+ if(create) {
+ QObject *object = component.create();
+ QVERIFY(object == 0);
+ }
+
+ VERIFY_ERRORS(errorFile.toLatin1().constData());
+}
+
void tst_qdeclarativelanguage::errors_data()
{
QTest::addColumn<QString>("file");
@@ -1890,15 +1918,30 @@ void tst_qdeclarativelanguage::initTestCase()
void tst_qdeclarativelanguage::aliasPropertyChangeSignals()
{
- QDeclarativeComponent component(&engine, TEST_FILE("aliasPropertyChangeSignals.qml"));
+ {
+ QDeclarativeComponent component(&engine, TEST_FILE("aliasPropertyChangeSignals.qml"));
- VERIFY_ERRORS(0);
- QObject *o = component.create();
- QVERIFY(o != 0);
+ VERIFY_ERRORS(0);
+ QObject *o = component.create();
+ QVERIFY(o != 0);
- QCOMPARE(o->property("test").toBool(), true);
+ QCOMPARE(o->property("test").toBool(), true);
- delete o;
+ delete o;
+ }
+
+ // QTCREATORBUG-2769
+ {
+ QDeclarativeComponent component(&engine, TEST_FILE("aliasPropertyChangeSignals.2.qml"));
+
+ VERIFY_ERRORS(0);
+ QObject *o = component.create();
+ QVERIFY(o != 0);
+
+ QCOMPARE(o->property("test").toBool(), true);
+
+ delete o;
+ }
}
QTEST_MAIN(tst_qdeclarativelanguage)
diff --git a/tests/auto/declarative/qdeclarativelistview/data/listview-noCurrent.qml b/tests/auto/declarative/qdeclarativelistview/data/listview-noCurrent.qml
new file mode 100644
index 0000000..1997010
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativelistview/data/listview-noCurrent.qml
@@ -0,0 +1,50 @@
+import QtQuick 1.0
+
+Rectangle {
+ property int current: list.currentIndex
+ width: 240
+ height: 320
+ color: "#ffffff"
+ resources: [
+ Component {
+ id: myDelegate
+ Rectangle {
+ id: wrapper
+ objectName: "wrapper"
+ height: 20
+ width: 240
+ Text {
+ text: index
+ }
+ Text {
+ x: 30
+ id: textName
+ objectName: "textName"
+ text: name
+ }
+ Text {
+ x: 120
+ id: textNumber
+ objectName: "textNumber"
+ text: number
+ }
+ Text {
+ x: 200
+ text: wrapper.y
+ }
+ color: ListView.isCurrentItem ? "lightsteelblue" : "white"
+ }
+ }
+ ]
+ ListView {
+ id: list
+ objectName: "list"
+ focus: true
+ currentIndex: -1
+ width: 240
+ height: 320
+ delegate: myDelegate
+ highlightMoveSpeed: 1000
+ model: testModel
+ }
+}
diff --git a/tests/auto/declarative/qdeclarativelistview/tst_qdeclarativelistview.cpp b/tests/auto/declarative/qdeclarativelistview/tst_qdeclarativelistview.cpp
index 2649c0d..79fef7a 100644
--- a/tests/auto/declarative/qdeclarativelistview/tst_qdeclarativelistview.cpp
+++ b/tests/auto/declarative/qdeclarativelistview/tst_qdeclarativelistview.cpp
@@ -85,6 +85,7 @@ private slots:
void itemList();
void currentIndex();
+ void noCurrentIndex();
void enforceRange();
void spacing();
void sections();
@@ -672,6 +673,15 @@ void tst_QDeclarativeListView::removed(bool animated)
QTRY_COMPARE(item->y(),80+i*20.0);
}
+ model.removeItems(1, 17);
+// QTest::qWait(300);
+
+ model.removeItems(2, 1);
+ model.addItem("New", "1");
+
+ QTRY_VERIFY(name = findItem<QDeclarativeText>(contentItem, "textName", model.count()-1));
+ QCOMPARE(name->text(), QString("New"));
+
delete canvas;
}
@@ -1087,9 +1097,52 @@ void tst_QDeclarativeListView::currentIndex()
model.insertItem(0, "Foo", "1111");
QTRY_COMPARE(canvas->rootObject()->property("current").toInt(), 29);
+ // check removing highlight by setting currentIndex to -1;
+ listview->setCurrentIndex(-1);
+
+ QCOMPARE(listview->currentIndex(), -1);
+ QVERIFY(!listview->highlightItem());
+ QVERIFY(!listview->currentItem());
+
delete canvas;
}
+void tst_QDeclarativeListView::noCurrentIndex()
+{
+ TestModel model;
+ for (int i = 0; i < 30; i++)
+ model.addItem("Item" + QString::number(i), QString::number(i));
+
+ QDeclarativeView *canvas = new QDeclarativeView(0);
+ canvas->setFixedSize(240,320);
+
+ QDeclarativeContext *ctxt = canvas->rootContext();
+ ctxt->setContextProperty("testModel", &model);
+
+ QString filename(SRCDIR "/data/listview-noCurrent.qml");
+ canvas->setSource(QUrl::fromLocalFile(filename));
+
+ qApp->processEvents();
+
+ QDeclarativeListView *listview = findItem<QDeclarativeListView>(canvas->rootObject(), "list");
+ QTRY_VERIFY(listview != 0);
+
+ QDeclarativeItem *contentItem = listview->contentItem();
+ QTRY_VERIFY(contentItem != 0);
+
+ // current index should be -1 at startup
+ // and we should not have a currentItem or highlightItem
+ QCOMPARE(listview->currentIndex(), -1);
+ QCOMPARE(listview->contentY(), 0.0);
+ QVERIFY(!listview->highlightItem());
+ QVERIFY(!listview->currentItem());
+
+ listview->setCurrentIndex(2);
+ QCOMPARE(listview->currentIndex(), 2);
+ QVERIFY(listview->highlightItem());
+ QVERIFY(listview->currentItem());
+}
+
void tst_QDeclarativeListView::itemList()
{
QDeclarativeView *canvas = createView();
diff --git a/tests/auto/declarative/qdeclarativepixmapcache/tst_qdeclarativepixmapcache.cpp b/tests/auto/declarative/qdeclarativepixmapcache/tst_qdeclarativepixmapcache.cpp
index b20d8ec..50d0731 100644
--- a/tests/auto/declarative/qdeclarativepixmapcache/tst_qdeclarativepixmapcache.cpp
+++ b/tests/auto/declarative/qdeclarativepixmapcache/tst_qdeclarativepixmapcache.cpp
@@ -74,7 +74,7 @@ private slots:
void massive();
void cancelcrash();
void shrinkcache();
-
+ void networkCrash();
private:
QDeclarativeEngine engine;
QUrl thisfile;
@@ -335,6 +335,7 @@ public:
: QDeclarativeImageProvider(Pixmap) {}
virtual QPixmap requestPixmap(const QString &d, QSize *, const QSize &) {
+ Q_UNUSED(d)
QPixmap pix(800, 600);
pix.fill(Qt::red);
return pix;
@@ -353,6 +354,30 @@ void tst_qdeclarativepixmapcache::shrinkcache()
}
}
+void createNetworkServer()
+{
+ QEventLoop eventLoop;
+ TestHTTPServer server(14453);
+ server.serveDirectory(SRCDIR "/data/http");
+ QTimer::singleShot(100, &eventLoop, SLOT(quit()));
+ eventLoop.exec();
+}
+
+// QT-3957
+void tst_qdeclarativepixmapcache::networkCrash()
+{
+ QFuture<void> future = QtConcurrent::run(createNetworkServer);
+ QDeclarativeEngine engine;
+ for (int ii = 0; ii < 100 ; ++ii) {
+ QDeclarativePixmap* pixmap = new QDeclarativePixmap;
+ pixmap->load(&engine, QUrl(QString("http://127.0.0.1:14453/exists.png")));
+ QTest::qSleep(1);
+ pixmap->clear();
+ delete pixmap;
+ }
+ future.cancel();
+}
+
QTEST_MAIN(tst_qdeclarativepixmapcache)
#include "tst_qdeclarativepixmapcache.moc"
diff --git a/tests/auto/declarative/qdeclarativevisualdatamodel/data/modelproperties.qml b/tests/auto/declarative/qdeclarativevisualdatamodel/data/modelproperties.qml
new file mode 100644
index 0000000..8cd5763
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativevisualdatamodel/data/modelproperties.qml
@@ -0,0 +1,17 @@
+import QtQuick 1.0
+
+ListView {
+ model: myModel
+ delegate: Item {
+ objectName: "delegate"
+ property variant test1: name
+ property variant test2: model.name
+ property variant test3: modelData
+ property variant test4: model.modelData
+ property variant test5: modelData.name
+ property variant test6: model
+ property variant test7: index
+ property variant test8: model.index
+ property variant test9: model.modelData.name
+ }
+}
diff --git a/tests/auto/declarative/qdeclarativevisualdatamodel/data/modelproperties2.qml b/tests/auto/declarative/qdeclarativevisualdatamodel/data/modelproperties2.qml
new file mode 100644
index 0000000..67721c9
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativevisualdatamodel/data/modelproperties2.qml
@@ -0,0 +1,17 @@
+import QtQuick 1.0
+
+ListView {
+ model: myModel
+ delegate: Item {
+ objectName: "delegate"
+ property variant test1: display
+ property variant test2: model.display
+ property variant test3: modelData
+ property variant test4: model.modelData
+ property variant test5: modelData.display
+ property variant test6: model
+ property variant test7: index
+ property variant test8: model.index
+ property variant test9: model.modelData.display
+ }
+}
diff --git a/tests/auto/declarative/qdeclarativevisualdatamodel/tst_qdeclarativevisualdatamodel.cpp b/tests/auto/declarative/qdeclarativevisualdatamodel/tst_qdeclarativevisualdatamodel.cpp
index d73a872..0aad099 100644
--- a/tests/auto/declarative/qdeclarativevisualdatamodel/tst_qdeclarativevisualdatamodel.cpp
+++ b/tests/auto/declarative/qdeclarativevisualdatamodel/tst_qdeclarativevisualdatamodel.cpp
@@ -120,6 +120,7 @@ private slots:
void childChanged();
void objectListModel();
void singleRole();
+ void modelProperties();
private:
QDeclarativeEngine engine;
@@ -364,6 +365,113 @@ void tst_qdeclarativevisualdatamodel::singleRole()
}
}
+void tst_qdeclarativevisualdatamodel::modelProperties()
+{
+ {
+ QDeclarativeView view;
+
+ SingleRoleModel model;
+
+ QDeclarativeContext *ctxt = view.rootContext();
+ ctxt->setContextProperty("myModel", &model);
+
+ view.setSource(QUrl::fromLocalFile(SRCDIR "/data/modelproperties.qml"));
+
+ QDeclarativeListView *listview = qobject_cast<QDeclarativeListView*>(view.rootObject());
+ QVERIFY(listview != 0);
+
+ QDeclarativeItem *contentItem = listview->contentItem();
+ QVERIFY(contentItem != 0);
+
+ QDeclarativeItem *delegate = findItem<QDeclarativeItem>(contentItem, "delegate", 1);
+ QCOMPARE(delegate->property("test1").toString(),QString("two"));
+ QCOMPARE(delegate->property("test2").toString(),QString("two"));
+ QCOMPARE(delegate->property("test3").toString(),QString("two"));
+ QCOMPARE(delegate->property("test4").toString(),QString("two"));
+ QVERIFY(!delegate->property("test9").isValid());
+ QCOMPARE(delegate->property("test5").toString(),QString(""));
+ QVERIFY(delegate->property("test6").value<QObject*>() != 0);
+ QCOMPARE(delegate->property("test7").toInt(),1);
+ QCOMPARE(delegate->property("test8").toInt(),1);
+ }
+
+ {
+ QDeclarativeView view;
+
+ QList<QObject*> dataList;
+ dataList.append(new DataObject("Item 1", "red"));
+ dataList.append(new DataObject("Item 2", "green"));
+ dataList.append(new DataObject("Item 3", "blue"));
+ dataList.append(new DataObject("Item 4", "yellow"));
+
+ QDeclarativeContext *ctxt = view.rootContext();
+ ctxt->setContextProperty("myModel", QVariant::fromValue(dataList));
+
+ view.setSource(QUrl::fromLocalFile(SRCDIR "/data/modelproperties.qml"));
+
+ QDeclarativeListView *listview = qobject_cast<QDeclarativeListView*>(view.rootObject());
+ QVERIFY(listview != 0);
+
+ QDeclarativeItem *contentItem = listview->contentItem();
+ QVERIFY(contentItem != 0);
+
+ QDeclarativeItem *delegate = findItem<QDeclarativeItem>(contentItem, "delegate", 1);
+ QCOMPARE(delegate->property("test1").toString(),QString("Item 2"));
+ QEXPECT_FAIL("", "QTBUG-13576", Continue);
+ QCOMPARE(delegate->property("test2").toString(),QString("Item 2"));
+ QVERIFY(qobject_cast<DataObject*>(delegate->property("test3").value<QObject*>()) != 0);
+ QVERIFY(qobject_cast<DataObject*>(delegate->property("test4").value<QObject*>()) != 0);
+ QCOMPARE(delegate->property("test5").toString(),QString("Item 2"));
+ QCOMPARE(delegate->property("test9").toString(),QString("Item 2"));
+ QVERIFY(delegate->property("test6").value<QObject*>() != 0);
+ QCOMPARE(delegate->property("test7").toInt(),1);
+ QCOMPARE(delegate->property("test8").toInt(),1);
+ }
+
+ {
+ QDeclarativeView view;
+
+ QStandardItemModel model;
+ initStandardTreeModel(&model);
+
+ view.rootContext()->setContextProperty("myModel", &model);
+
+ QUrl source(QUrl::fromLocalFile(SRCDIR "/data/modelproperties2.qml"));
+
+ //3 items, 3 warnings each
+ QTest::ignoreMessage(QtWarningMsg, source.toString().toLatin1() + ":11: ReferenceError: Can't find variable: modelData");
+ QTest::ignoreMessage(QtWarningMsg, source.toString().toLatin1() + ":11: ReferenceError: Can't find variable: modelData");
+ QTest::ignoreMessage(QtWarningMsg, source.toString().toLatin1() + ":11: ReferenceError: Can't find variable: modelData");
+ QTest::ignoreMessage(QtWarningMsg, source.toString().toLatin1() + ":9: ReferenceError: Can't find variable: modelData");
+ QTest::ignoreMessage(QtWarningMsg, source.toString().toLatin1() + ":9: ReferenceError: Can't find variable: modelData");
+ QTest::ignoreMessage(QtWarningMsg, source.toString().toLatin1() + ":9: ReferenceError: Can't find variable: modelData");
+ QTest::ignoreMessage(QtWarningMsg, source.toString().toLatin1() + ":15: TypeError: Result of expression 'model.modelData' [undefined] is not an object.");
+ QTest::ignoreMessage(QtWarningMsg, source.toString().toLatin1() + ":15: TypeError: Result of expression 'model.modelData' [undefined] is not an object.");
+ QTest::ignoreMessage(QtWarningMsg, source.toString().toLatin1() + ":15: TypeError: Result of expression 'model.modelData' [undefined] is not an object.");
+
+ view.setSource(source);
+
+ QDeclarativeListView *listview = qobject_cast<QDeclarativeListView*>(view.rootObject());
+ QVERIFY(listview != 0);
+
+ QDeclarativeItem *contentItem = listview->contentItem();
+ QVERIFY(contentItem != 0);
+
+ QDeclarativeItem *delegate = findItem<QDeclarativeItem>(contentItem, "delegate", 1);
+ QCOMPARE(delegate->property("test1").toString(),QString("Row 2 Item"));
+ QCOMPARE(delegate->property("test2").toString(),QString("Row 2 Item"));
+ QVERIFY(!delegate->property("test3").isValid());
+ QVERIFY(!delegate->property("test4").isValid());
+ QVERIFY(!delegate->property("test5").isValid());
+ QVERIFY(!delegate->property("test9").isValid());
+ QVERIFY(delegate->property("test6").value<QObject*>() != 0);
+ QCOMPARE(delegate->property("test7").toInt(),1);
+ QCOMPARE(delegate->property("test8").toInt(),1);
+ }
+
+ //### should also test QStringList and QVariantList
+}
+
template<typename T>
T *tst_qdeclarativevisualdatamodel::findItem(QGraphicsObject *parent, const QString &objectName, int index)
{
diff --git a/tests/auto/declarative/qmlvisual/animation/bindinganimation/bindinganimation.qml b/tests/auto/declarative/qmlvisual/animation/bindinganimation/bindinganimation.qml
index 611eaf5..9019812 100644
--- a/tests/auto/declarative/qmlvisual/animation/bindinganimation/bindinganimation.qml
+++ b/tests/auto/declarative/qmlvisual/animation/bindinganimation/bindinganimation.qml
@@ -14,15 +14,12 @@ Rectangle {
}
states: [
State {
+ when: myMouseArea.pressed
name: "hello"
PropertyChanges {
target: myRectangle
x: 50 + 50
}
- PropertyChanges {
- target: myMouseArea
- onClicked: page.state = ''
- }
}
]
transitions: [
@@ -35,6 +32,5 @@ Rectangle {
MouseArea {
id: myMouseArea
anchors.fill: parent
- onClicked: { page.state= 'hello' }
}
}
diff --git a/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.0.png b/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.0.png
index 1b08c81..cba9bce 100644
--- a/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.0.png
+++ b/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.1.png b/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.1.png
index f3074fc..4080c80 100644
--- a/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.1.png
+++ b/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.2.png b/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.2.png
index 1b08c81..61fec3d 100644
--- a/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.2.png
+++ b/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.3.png b/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.3.png
index e2560e0..900156f 100644
--- a/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.3.png
+++ b/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.4.png b/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.4.png
index 2ddde86..c8367ec 100644
--- a/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.4.png
+++ b/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.5.png b/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.5.png
index f3074fc..900156f 100644
--- a/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.5.png
+++ b/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.6.png b/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.6.png
deleted file mode 100644
index 1b08c81..0000000
--- a/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.6.png
+++ /dev/null
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.qml b/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.qml
index dbe0276..b4c7542 100644
--- a/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.qml
+++ b/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.qml
@@ -132,113 +132,121 @@ VisualTest {
msec: 512
hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 87; y: 129
+ modifiers: 0
+ sendToViewport: true
+ }
Frame {
msec: 528
hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 544
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "a78c9394bf3b81f192f42710cd7218b1"
}
Frame {
msec: 560
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "7f08e8170feb1d02373c9ab42b6e882d"
}
Frame {
msec: 576
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "967fbad8ac664400a3efbe66617d62aa"
}
Frame {
msec: 592
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "abc2ec0bc7a93e75b5823310e6284db1"
}
Frame {
msec: 608
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "afbd5b24e2f86646f5ec2aa22f3a4b5b"
}
Frame {
msec: 624
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "9413dffb7ee853ba0125ac22ab22abbd"
}
Frame {
msec: 640
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "fcae0317f81a3ddd713f4db1349a9da0"
}
Frame {
msec: 656
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "37739777a5979f3ebf85e47e63341660"
}
Frame {
msec: 672
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "72731478d80f024076ea639b55152360"
}
Frame {
msec: 688
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "69058485ced6bc992a1a7c5ee34add4c"
}
Frame {
msec: 704
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "391ad7ff2362e059f6170dfe306f94a7"
}
Frame {
msec: 720
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "f9f74a2e38b52c9266f33e428b6acd9d"
}
Frame {
msec: 736
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "25152412c4ea2aec6caf89486c073484"
}
Frame {
msec: 752
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "ba403842ba3128b1cdf6a9cb28c90751"
}
Frame {
msec: 768
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "e90cd68490cf3ce6ef9fe4e8f92feaa9"
}
Frame {
msec: 784
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "383ba6b9efcc58fca512982a207631f6"
}
Frame {
msec: 800
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "383ba6b9efcc58fca512982a207631f6"
}
Frame {
msec: 816
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "383ba6b9efcc58fca512982a207631f6"
}
Frame {
msec: 832
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "383ba6b9efcc58fca512982a207631f6"
}
Frame {
msec: 848
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "383ba6b9efcc58fca512982a207631f6"
}
Frame {
msec: 864
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "383ba6b9efcc58fca512982a207631f6"
}
Frame {
msec: 880
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "383ba6b9efcc58fca512982a207631f6"
}
Frame {
msec: 896
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "383ba6b9efcc58fca512982a207631f6"
}
Frame {
msec: 912
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "383ba6b9efcc58fca512982a207631f6"
}
Frame {
msec: 928
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "383ba6b9efcc58fca512982a207631f6"
}
Frame {
msec: 944
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "383ba6b9efcc58fca512982a207631f6"
}
Frame {
msec: 960
@@ -246,255 +254,255 @@ VisualTest {
}
Frame {
msec: 976
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "383ba6b9efcc58fca512982a207631f6"
}
Frame {
msec: 992
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "383ba6b9efcc58fca512982a207631f6"
}
Frame {
msec: 1008
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "383ba6b9efcc58fca512982a207631f6"
}
Frame {
msec: 1024
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "383ba6b9efcc58fca512982a207631f6"
}
Frame {
msec: 1040
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "383ba6b9efcc58fca512982a207631f6"
}
Frame {
msec: 1056
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "383ba6b9efcc58fca512982a207631f6"
}
Frame {
msec: 1072
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "383ba6b9efcc58fca512982a207631f6"
}
Frame {
msec: 1088
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "383ba6b9efcc58fca512982a207631f6"
}
Frame {
msec: 1104
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "383ba6b9efcc58fca512982a207631f6"
}
Frame {
msec: 1120
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "383ba6b9efcc58fca512982a207631f6"
}
Frame {
msec: 1136
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "383ba6b9efcc58fca512982a207631f6"
}
Frame {
msec: 1152
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "383ba6b9efcc58fca512982a207631f6"
}
Mouse {
- type: 2
+ type: 3
button: 1
- buttons: 1
- x: 136; y: 174
+ buttons: 0
+ x: 87; y: 129
modifiers: 0
sendToViewport: true
}
Frame {
msec: 1168
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "383ba6b9efcc58fca512982a207631f6"
}
Frame {
msec: 1184
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "adc501a3a2b8aaf72f58ba985b57424e"
}
Frame {
msec: 1200
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "bfa51b7c19753ef7b16d78afffc7b9dd"
}
Frame {
msec: 1216
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "ffa8471f57765b49fcdb9155393251e5"
}
Frame {
msec: 1232
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "ddb65481469c38f2331546ee03a44206"
}
Frame {
msec: 1248
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "6f48d1a9977b77cafd38a5903017605b"
}
Frame {
msec: 1264
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "4279c814163af3bd069ce21b3cd1c729"
}
Frame {
msec: 1280
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
- }
- Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 136; y: 174
- modifiers: 0
- sendToViewport: true
+ hash: "17c46242c17983478f34cb49cb91ca6e"
}
Frame {
msec: 1296
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "42f65c58b1f5f4b5ba70855f4aaa7d2f"
}
Frame {
msec: 1312
- hash: "a78c9394bf3b81f192f42710cd7218b1"
+ hash: "6a74d6dc91a8b370200d3765c55c1136"
}
Frame {
msec: 1328
- hash: "7f08e8170feb1d02373c9ab42b6e882d"
+ hash: "ecda10356cca33901c2acd0a702fee46"
}
Frame {
msec: 1344
- hash: "967fbad8ac664400a3efbe66617d62aa"
+ hash: "4f58226bdbda7339d972eca065f75766"
}
Frame {
msec: 1360
- hash: "abc2ec0bc7a93e75b5823310e6284db1"
+ hash: "a39c80859a7643c9879da9c77b644703"
}
Frame {
msec: 1376
- hash: "afbd5b24e2f86646f5ec2aa22f3a4b5b"
+ hash: "16fe17b15900ff0464ab20ea921e5b1f"
}
Frame {
msec: 1392
- hash: "9413dffb7ee853ba0125ac22ab22abbd"
+ hash: "bc5c83b2014b7260900587ae3637598f"
}
Frame {
msec: 1408
- hash: "fcae0317f81a3ddd713f4db1349a9da0"
+ hash: "96c077e3a572edff04fa9b2f7020ffd0"
}
Frame {
msec: 1424
- hash: "37739777a5979f3ebf85e47e63341660"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 1440
- hash: "72731478d80f024076ea639b55152360"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 1456
- hash: "69058485ced6bc992a1a7c5ee34add4c"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 1472
- hash: "391ad7ff2362e059f6170dfe306f94a7"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 1488
- hash: "f9f74a2e38b52c9266f33e428b6acd9d"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 1504
- hash: "25152412c4ea2aec6caf89486c073484"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 1520
- hash: "ba403842ba3128b1cdf6a9cb28c90751"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 1536
- hash: "e90cd68490cf3ce6ef9fe4e8f92feaa9"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 1552
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 1568
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 1584
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 1600
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 1616
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 1632
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 1648
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 1664
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 1680
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 1696
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 1712
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 1728
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 1744
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 1760
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 1776
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 1792
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 1808
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 1824
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 1840
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 81; y: 130
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 1856
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 1872
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "a78c9394bf3b81f192f42710cd7218b1"
}
Frame {
msec: 1888
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "7f08e8170feb1d02373c9ab42b6e882d"
}
Frame {
msec: 1904
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "967fbad8ac664400a3efbe66617d62aa"
}
Frame {
msec: 1920
@@ -502,159 +510,183 @@ VisualTest {
}
Frame {
msec: 1936
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "afbd5b24e2f86646f5ec2aa22f3a4b5b"
}
Frame {
msec: 1952
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "9413dffb7ee853ba0125ac22ab22abbd"
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 81; y: 130
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 1968
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "9413dffb7ee853ba0125ac22ab22abbd"
}
Frame {
msec: 1984
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "ecda10356cca33901c2acd0a702fee46"
}
Frame {
msec: 2000
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "5fae0bdc65c609cb766ce585b8c649db"
}
Frame {
msec: 2016
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "575d30ac088448b01f49082519bbb3a1"
}
Frame {
msec: 2032
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "ffeb3db6d3f177acf6f92049359a9025"
}
Frame {
msec: 2048
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "abc2ec0bc7a93e75b5823310e6284db1"
}
Frame {
msec: 2064
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "fcb17070ef24575c61046928a8bbe440"
}
Frame {
msec: 2080
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "4ab21e266919fb8d340f87091d8e1f62"
}
Frame {
msec: 2096
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "f141c7c4402c6bacff31d4e77785f5f1"
}
Frame {
msec: 2112
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "29e5f1388c6aaf23abe9f514d7e902d1"
+ }
+ Mouse {
+ type: 4
+ button: 1
+ buttons: 1
+ x: 81; y: 130
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 2128
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "29e5f1388c6aaf23abe9f514d7e902d1"
}
Frame {
msec: 2144
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "4ab21e266919fb8d340f87091d8e1f62"
}
Frame {
msec: 2160
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "2d21b4af3780ef2bbccfcec957ce49c8"
}
Frame {
msec: 2176
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "527b1f9e7a222483134675a73f9cf5b7"
}
Frame {
msec: 2192
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "5edaad77f334e6a01982ee89a733b1f8"
}
Frame {
msec: 2208
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "6a74d6dc91a8b370200d3765c55c1136"
}
Frame {
msec: 2224
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "42f65c58b1f5f4b5ba70855f4aaa7d2f"
}
Frame {
msec: 2240
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "3223ed179c828fadb3eca9c6373176c1"
}
Mouse {
- type: 2
+ type: 3
button: 1
- buttons: 1
- x: 122; y: 175
+ buttons: 0
+ x: 81; y: 130
modifiers: 0
sendToViewport: true
}
Frame {
msec: 2256
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "3223ed179c828fadb3eca9c6373176c1"
}
Frame {
msec: 2272
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "516c44b44c23f213f5db01f9eb164b0b"
}
Frame {
msec: 2288
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "4f41101378a104e72228eeb4ba395ca8"
}
Frame {
msec: 2304
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "f9deee3a204c939562b896a6179743d2"
}
Frame {
msec: 2320
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "772396bb23c713f34ea5c23bfbcb115e"
}
Frame {
msec: 2336
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "ecda10356cca33901c2acd0a702fee46"
}
Frame {
msec: 2352
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "527b1f9e7a222483134675a73f9cf5b7"
+ }
+ Frame {
+ msec: 2368
+ hash: "4f58226bdbda7339d972eca065f75766"
}
Mouse {
- type: 3
+ type: 2
button: 1
- buttons: 0
- x: 122; y: 175
+ buttons: 1
+ x: 81; y: 130
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 2368
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
msec: 2384
- hash: "adc501a3a2b8aaf72f58ba985b57424e"
+ hash: "4f58226bdbda7339d972eca065f75766"
}
Frame {
msec: 2400
- hash: "bfa51b7c19753ef7b16d78afffc7b9dd"
+ hash: "5fae0bdc65c609cb766ce585b8c649db"
}
Frame {
msec: 2416
- hash: "ffa8471f57765b49fcdb9155393251e5"
+ hash: "9413dffb7ee853ba0125ac22ab22abbd"
}
Frame {
msec: 2432
- hash: "ddb65481469c38f2331546ee03a44206"
+ hash: "6a74d6dc91a8b370200d3765c55c1136"
}
Frame {
msec: 2448
- hash: "6f48d1a9977b77cafd38a5903017605b"
+ hash: "4f41101378a104e72228eeb4ba395ca8"
}
Frame {
msec: 2464
- hash: "4279c814163af3bd069ce21b3cd1c729"
+ hash: "37739777a5979f3ebf85e47e63341660"
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 81; y: 130
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 2480
- hash: "17c46242c17983478f34cb49cb91ca6e"
+ hash: "37739777a5979f3ebf85e47e63341660"
}
Frame {
msec: 2496
@@ -662,95 +694,119 @@ VisualTest {
}
Frame {
msec: 2512
- hash: "6a74d6dc91a8b370200d3765c55c1136"
+ hash: "fcae0317f81a3ddd713f4db1349a9da0"
}
Frame {
msec: 2528
- hash: "ecda10356cca33901c2acd0a702fee46"
+ hash: "082e0e7650d187a54ef0948ccca98e5a"
}
Frame {
msec: 2544
- hash: "4f58226bdbda7339d972eca065f75766"
+ hash: "9413dffb7ee853ba0125ac22ab22abbd"
}
Frame {
msec: 2560
- hash: "a39c80859a7643c9879da9c77b644703"
+ hash: "d9af30557f99b086bb1a185a946b580d"
}
Frame {
msec: 2576
- hash: "16fe17b15900ff0464ab20ea921e5b1f"
+ hash: "afbd5b24e2f86646f5ec2aa22f3a4b5b"
}
Frame {
msec: 2592
- hash: "bc5c83b2014b7260900587ae3637598f"
+ hash: "ffeb3db6d3f177acf6f92049359a9025"
+ }
+ Mouse {
+ type: 4
+ button: 1
+ buttons: 1
+ x: 81; y: 130
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 2608
- hash: "96c077e3a572edff04fa9b2f7020ffd0"
+ hash: "ffeb3db6d3f177acf6f92049359a9025"
}
Frame {
msec: 2624
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "5fae0bdc65c609cb766ce585b8c649db"
}
Frame {
msec: 2640
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "9413dffb7ee853ba0125ac22ab22abbd"
}
Frame {
msec: 2656
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "6a74d6dc91a8b370200d3765c55c1136"
}
Frame {
msec: 2672
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "4f41101378a104e72228eeb4ba395ca8"
}
Frame {
msec: 2688
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "37739777a5979f3ebf85e47e63341660"
}
Frame {
msec: 2704
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "f4fe2cc93d65e086ba8ded1438269eb2"
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 81; y: 130
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 2720
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "f4fe2cc93d65e086ba8ded1438269eb2"
}
Frame {
msec: 2736
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "56c72b5da44bd5efdc47c3b9c3eac409"
}
Frame {
msec: 2752
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "b08811b237ce7a460c80d285f04d53d8"
}
Frame {
msec: 2768
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "fcae0317f81a3ddd713f4db1349a9da0"
}
Frame {
msec: 2784
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "082e0e7650d187a54ef0948ccca98e5a"
}
Frame {
msec: 2800
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "9413dffb7ee853ba0125ac22ab22abbd"
}
Frame {
msec: 2816
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "d9af30557f99b086bb1a185a946b580d"
}
Frame {
msec: 2832
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "575d30ac088448b01f49082519bbb3a1"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 81; y: 130
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 2848
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "575d30ac088448b01f49082519bbb3a1"
}
Frame {
msec: 2864
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "d9af30557f99b086bb1a185a946b580d"
}
Frame {
msec: 2880
@@ -758,898 +814,242 @@ VisualTest {
}
Frame {
msec: 2896
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "f9deee3a204c939562b896a6179743d2"
}
Frame {
msec: 2912
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "42f65c58b1f5f4b5ba70855f4aaa7d2f"
}
Frame {
msec: 2928
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "56c72b5da44bd5efdc47c3b9c3eac409"
}
Frame {
msec: 2944
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "72731478d80f024076ea639b55152360"
}
Frame {
msec: 2960
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "4279c814163af3bd069ce21b3cd1c729"
}
Frame {
msec: 2976
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "72a0c017a2fa90a4aeadfa6e552ff573"
}
Frame {
msec: 2992
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "391ad7ff2362e059f6170dfe306f94a7"
}
Frame {
msec: 3008
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "0b0c6419e1e5b016d9c22bd98fd452b1"
}
Frame {
msec: 3024
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "365c824c330398d267ea52ae9468b9ee"
}
Frame {
msec: 3040
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "65ad7e0189c096792331bd1bb0daf0db"
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 81; y: 130
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 3056
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "65ad7e0189c096792331bd1bb0daf0db"
}
Frame {
msec: 3072
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "a21aa1984f068650cce2a124a82c12be"
}
Frame {
msec: 3088
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "8006ceaa02d22b5fdfeab400d39a0caf"
}
Frame {
msec: 3104
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "6f48d1a9977b77cafd38a5903017605b"
}
Frame {
msec: 3120
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "07f751ea4cf877ba72fbb36f9da268d7"
}
Frame {
msec: 3136
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "72731478d80f024076ea639b55152360"
}
Frame {
msec: 3152
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "37739777a5979f3ebf85e47e63341660"
}
Frame {
msec: 3168
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
- }
- Mouse {
- type: 2
- button: 1
- buttons: 1
- x: 122; y: 175
- modifiers: 0
- sendToViewport: true
+ hash: "ed47684a0b21836cd27549e0989e96dd"
}
Frame {
msec: 3184
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "772396bb23c713f34ea5c23bfbcb115e"
}
Frame {
msec: 3200
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "ecda10356cca33901c2acd0a702fee46"
}
Frame {
msec: 3216
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "575d30ac088448b01f49082519bbb3a1"
}
Frame {
msec: 3232
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "2e3f134664df8204a291af2c9f81239a"
}
Frame {
msec: 3248
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "967fbad8ac664400a3efbe66617d62aa"
}
Frame {
msec: 3264
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "2b93a05b0e78e52d8d8bc2c71d898d3e"
}
Frame {
msec: 3280
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
- }
- Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 122; y: 175
- modifiers: 0
- sendToViewport: true
+ hash: "c7a9850ed078eb0cfdb5a7ef11840d64"
}
Frame {
msec: 3296
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ hash: "96c077e3a572edff04fa9b2f7020ffd0"
}
Frame {
msec: 3312
- hash: "a78c9394bf3b81f192f42710cd7218b1"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 3328
- hash: "7f08e8170feb1d02373c9ab42b6e882d"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 3344
- hash: "967fbad8ac664400a3efbe66617d62aa"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 3360
- hash: "abc2ec0bc7a93e75b5823310e6284db1"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 3376
- hash: "afbd5b24e2f86646f5ec2aa22f3a4b5b"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 3392
- hash: "9413dffb7ee853ba0125ac22ab22abbd"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 3408
- hash: "fcae0317f81a3ddd713f4db1349a9da0"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 3424
- hash: "37739777a5979f3ebf85e47e63341660"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 3440
- hash: "72731478d80f024076ea639b55152360"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 3456
- hash: "69058485ced6bc992a1a7c5ee34add4c"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 3472
- hash: "391ad7ff2362e059f6170dfe306f94a7"
- }
- Mouse {
- type: 4
- button: 1
- buttons: 1
- x: 122; y: 175
- modifiers: 0
- sendToViewport: true
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 3488
- hash: "f9f74a2e38b52c9266f33e428b6acd9d"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 3504
- hash: "25152412c4ea2aec6caf89486c073484"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 3520
- hash: "ba403842ba3128b1cdf6a9cb28c90751"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 3536
- hash: "e90cd68490cf3ce6ef9fe4e8f92feaa9"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 3552
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 3568
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 3584
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 3600
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 122; y: 175
- modifiers: 0
- sendToViewport: true
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 3616
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 3632
- hash: "adc501a3a2b8aaf72f58ba985b57424e"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 3648
- hash: "bfa51b7c19753ef7b16d78afffc7b9dd"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 3664
- hash: "ffa8471f57765b49fcdb9155393251e5"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 3680
- hash: "ddb65481469c38f2331546ee03a44206"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 3696
- hash: "6f48d1a9977b77cafd38a5903017605b"
- }
- Mouse {
- type: 2
- button: 1
- buttons: 1
- x: 122; y: 175
- modifiers: 0
- sendToViewport: true
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 3712
- hash: "4279c814163af3bd069ce21b3cd1c729"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 3728
- hash: "17c46242c17983478f34cb49cb91ca6e"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 3744
- hash: "42f65c58b1f5f4b5ba70855f4aaa7d2f"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 3760
- hash: "6a74d6dc91a8b370200d3765c55c1136"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 3776
- hash: "ecda10356cca33901c2acd0a702fee46"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 3792
- hash: "4f58226bdbda7339d972eca065f75766"
- }
- Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 122; y: 175
- modifiers: 0
- sendToViewport: true
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
Frame {
msec: 3808
- hash: "4f58226bdbda7339d972eca065f75766"
- }
- Frame {
- msec: 3824
- hash: "5fae0bdc65c609cb766ce585b8c649db"
- }
- Frame {
- msec: 3840
- image: "bindinganimation.3.png"
- }
- Frame {
- msec: 3856
- hash: "6a74d6dc91a8b370200d3765c55c1136"
- }
- Frame {
- msec: 3872
- hash: "4f41101378a104e72228eeb4ba395ca8"
- }
- Frame {
- msec: 3888
- hash: "37739777a5979f3ebf85e47e63341660"
- }
- Frame {
- msec: 3904
- hash: "f4fe2cc93d65e086ba8ded1438269eb2"
- }
- Mouse {
- type: 4
- button: 1
- buttons: 1
- x: 122; y: 175
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 3920
- hash: "4279c814163af3bd069ce21b3cd1c729"
- }
- Frame {
- msec: 3936
- hash: "72a0c017a2fa90a4aeadfa6e552ff573"
- }
- Frame {
- msec: 3952
- hash: "391ad7ff2362e059f6170dfe306f94a7"
- }
- Frame {
- msec: 3968
- hash: "0b0c6419e1e5b016d9c22bd98fd452b1"
- }
- Frame {
- msec: 3984
- hash: "365c824c330398d267ea52ae9468b9ee"
- }
- Frame {
- msec: 4000
- hash: "65ad7e0189c096792331bd1bb0daf0db"
- }
- Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 122; y: 175
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 4016
- hash: "65ad7e0189c096792331bd1bb0daf0db"
- }
- Frame {
- msec: 4032
- hash: "a21aa1984f068650cce2a124a82c12be"
- }
- Frame {
- msec: 4048
- hash: "8006ceaa02d22b5fdfeab400d39a0caf"
- }
- Frame {
- msec: 4064
- hash: "a2cebc35e5c2c709a2cd83e1df6eaeab"
- }
- Frame {
- msec: 4080
- hash: "07f751ea4cf877ba72fbb36f9da268d7"
- }
- Frame {
- msec: 4096
- hash: "72731478d80f024076ea639b55152360"
- }
- Mouse {
- type: 2
- button: 1
- buttons: 1
- x: 122; y: 175
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 4112
- hash: "37739777a5979f3ebf85e47e63341660"
- }
- Frame {
- msec: 4128
- hash: "ed47684a0b21836cd27549e0989e96dd"
- }
- Frame {
- msec: 4144
- hash: "772396bb23c713f34ea5c23bfbcb115e"
- }
- Frame {
- msec: 4160
- hash: "d9af30557f99b086bb1a185a946b580d"
- }
- Frame {
- msec: 4176
- hash: "575d30ac088448b01f49082519bbb3a1"
- }
- Frame {
- msec: 4192
- hash: "2e3f134664df8204a291af2c9f81239a"
- }
- Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 122; y: 175
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 4208
- hash: "2e3f134664df8204a291af2c9f81239a"
- }
- Frame {
- msec: 4224
- hash: "4f58226bdbda7339d972eca065f75766"
- }
- Frame {
- msec: 4240
- hash: "5fae0bdc65c609cb766ce585b8c649db"
- }
- Frame {
- msec: 4256
- hash: "82363265ed2b611a54f8d48b2af22f11"
- }
- Frame {
- msec: 4272
- hash: "f9deee3a204c939562b896a6179743d2"
- }
- Frame {
- msec: 4288
- hash: "42f65c58b1f5f4b5ba70855f4aaa7d2f"
- }
- Mouse {
- type: 4
- button: 1
- buttons: 1
- x: 122; y: 175
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 4304
- hash: "3223ed179c828fadb3eca9c6373176c1"
- }
- Frame {
- msec: 4320
- hash: "56125a260a79bc38bb0ef44fd65ba49b"
- }
- Frame {
- msec: 4336
- hash: "07f751ea4cf877ba72fbb36f9da268d7"
- }
- Frame {
- msec: 4352
- hash: "6f48d1a9977b77cafd38a5903017605b"
- }
- Frame {
- msec: 4368
- hash: "8006ceaa02d22b5fdfeab400d39a0caf"
- }
- Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 122; y: 175
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 4384
- hash: "8006ceaa02d22b5fdfeab400d39a0caf"
- }
- Frame {
- msec: 4400
- hash: "6f48d1a9977b77cafd38a5903017605b"
- }
- Frame {
- msec: 4416
- hash: "69058485ced6bc992a1a7c5ee34add4c"
- }
- Frame {
- msec: 4432
- hash: "dafcce427161a70c3513841ac22aea00"
- }
- Frame {
- msec: 4448
- hash: "3223ed179c828fadb3eca9c6373176c1"
- }
- Mouse {
- type: 2
- button: 1
- buttons: 1
- x: 122; y: 175
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 4464
- hash: "b08811b237ce7a460c80d285f04d53d8"
- }
- Frame {
- msec: 4480
- hash: "fcae0317f81a3ddd713f4db1349a9da0"
- }
- Frame {
- msec: 4496
- hash: "772396bb23c713f34ea5c23bfbcb115e"
- }
- Frame {
- msec: 4512
- hash: "ecda10356cca33901c2acd0a702fee46"
- }
- Frame {
- msec: 4528
- hash: "575d30ac088448b01f49082519bbb3a1"
- }
- Frame {
- msec: 4544
- hash: "abc2ec0bc7a93e75b5823310e6284db1"
- }
- Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 122; y: 175
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 4560
- hash: "abc2ec0bc7a93e75b5823310e6284db1"
- }
- Frame {
- msec: 4576
- hash: "575d30ac088448b01f49082519bbb3a1"
- }
- Frame {
- msec: 4592
- hash: "ecda10356cca33901c2acd0a702fee46"
- }
- Frame {
- msec: 4608
- hash: "772396bb23c713f34ea5c23bfbcb115e"
- }
- Frame {
- msec: 4624
- hash: "fcae0317f81a3ddd713f4db1349a9da0"
- }
- Frame {
- msec: 4640
- hash: "b08811b237ce7a460c80d285f04d53d8"
- }
- Mouse {
- type: 4
- button: 1
- buttons: 1
- x: 122; y: 175
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 4656
- hash: "17c46242c17983478f34cb49cb91ca6e"
- }
- Frame {
- msec: 4672
- hash: "dafcce427161a70c3513841ac22aea00"
- }
- Frame {
- msec: 4688
- hash: "69058485ced6bc992a1a7c5ee34add4c"
- }
- Frame {
- msec: 4704
- hash: "6f48d1a9977b77cafd38a5903017605b"
- }
- Frame {
- msec: 4720
- hash: "ddb65481469c38f2331546ee03a44206"
- }
- Frame {
- msec: 4736
- hash: "a21aa1984f068650cce2a124a82c12be"
- }
- Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 122; y: 175
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 4752
- hash: "a21aa1984f068650cce2a124a82c12be"
- }
- Frame {
- msec: 4768
- hash: "8006ceaa02d22b5fdfeab400d39a0caf"
- }
- Frame {
- msec: 4784
- hash: "6f48d1a9977b77cafd38a5903017605b"
- }
- Frame {
- msec: 4800
- image: "bindinganimation.4.png"
- }
- Frame {
- msec: 4816
- hash: "56125a260a79bc38bb0ef44fd65ba49b"
- }
- Mouse {
- type: 2
- button: 1
- buttons: 1
- x: 122; y: 175
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 4832
- hash: "56c72b5da44bd5efdc47c3b9c3eac409"
- }
- Frame {
- msec: 4848
- hash: "42f65c58b1f5f4b5ba70855f4aaa7d2f"
- }
- Frame {
- msec: 4864
- hash: "6a74d6dc91a8b370200d3765c55c1136"
- }
- Frame {
- msec: 4880
- hash: "9413dffb7ee853ba0125ac22ab22abbd"
- }
- Frame {
- msec: 4896
- hash: "527b1f9e7a222483134675a73f9cf5b7"
- }
- Frame {
- msec: 4912
- hash: "ffeb3db6d3f177acf6f92049359a9025"
- }
- Frame {
- msec: 4928
- hash: "a39c80859a7643c9879da9c77b644703"
- }
- Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 122; y: 175
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 4944
- hash: "a39c80859a7643c9879da9c77b644703"
- }
- Frame {
- msec: 4960
- hash: "ffeb3db6d3f177acf6f92049359a9025"
- }
- Frame {
- msec: 4976
- hash: "527b1f9e7a222483134675a73f9cf5b7"
- }
- Frame {
- msec: 4992
- hash: "9413dffb7ee853ba0125ac22ab22abbd"
- }
- Frame {
- msec: 5008
- hash: "6a74d6dc91a8b370200d3765c55c1136"
- }
- Frame {
- msec: 5024
- hash: "4f41101378a104e72228eeb4ba395ca8"
- }
- Frame {
- msec: 5040
- hash: "56c72b5da44bd5efdc47c3b9c3eac409"
- }
- Frame {
- msec: 5056
- hash: "72731478d80f024076ea639b55152360"
- }
- Frame {
- msec: 5072
- hash: "07f751ea4cf877ba72fbb36f9da268d7"
- }
- Frame {
- msec: 5088
- hash: "a2cebc35e5c2c709a2cd83e1df6eaeab"
- }
- Frame {
- msec: 5104
- hash: "8006ceaa02d22b5fdfeab400d39a0caf"
- }
- Frame {
- msec: 5120
- hash: "f9f74a2e38b52c9266f33e428b6acd9d"
- }
- Frame {
- msec: 5136
- hash: "a93f930ec8528f954cd4a770c9a8171b"
- }
- Frame {
- msec: 5152
- hash: "bfa51b7c19753ef7b16d78afffc7b9dd"
- }
- Frame {
- msec: 5168
- hash: "df62027b6b53c69a071cb3dc09c3a7ed"
- }
- Frame {
- msec: 5184
- hash: "0d59ac57f8790fe741a31d12c3438abf"
- }
- Frame {
- msec: 5200
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5216
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5232
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5248
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5264
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5280
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5296
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5312
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5328
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5344
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5360
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5376
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5392
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5408
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5424
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5440
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5456
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5472
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5488
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5504
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5520
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5536
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5552
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5568
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5584
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5600
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5616
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5632
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5648
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5664
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5680
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5696
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5712
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Key {
- type: 6
- key: 16777249
- modifiers: 0
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 5728
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5744
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5760
- image: "bindinganimation.5.png"
- }
- Frame {
- msec: 5776
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5792
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5808
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5824
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5840
- hash: "383ba6b9efcc58fca512982a207631f6"
- }
- Frame {
- msec: 5856
- hash: "383ba6b9efcc58fca512982a207631f6"
+ hash: "7cb5fc371040e587de9f06ce14a4b29a"
}
}
diff --git a/tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.1.png b/tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.1.png
index 249e0dd..e5494aa 100644
--- a/tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.1.png
+++ b/tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.2.png b/tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.2.png
index 044f823..fbb03de 100644
--- a/tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.2.png
+++ b/tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.qml b/tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.qml
index dc8e2e2..13ba289 100644
--- a/tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.qml
+++ b/tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.qml
@@ -406,119 +406,119 @@ VisualTest {
}
Frame {
msec: 1456
- hash: "8b7dd0f0a3881f10d76b47cbec4754c3"
+ hash: "cba9afe3f351e6cd6dc72d7f263401b0"
}
Frame {
msec: 1472
- hash: "b6fc4990acb245e015c35261a3c6fd75"
+ hash: "09d6255a3fc628c52a386a878bdecb4e"
}
Frame {
msec: 1488
- hash: "849fa4174134804dadc000323141b341"
+ hash: "6d5e292fecfc2ec45a5695fa9e5173f3"
}
Frame {
msec: 1504
- hash: "35f2d6405ed7d992bb62eb6e24478492"
+ hash: "848051f677a2172d8cbe75a451026459"
}
Frame {
msec: 1520
- hash: "673ebb4499522c3f27b775dff1dbbe44"
+ hash: "95b1a914c1d33866cd728ad1ad612884"
}
Frame {
msec: 1536
- hash: "96945f5489ffd0dc8ab995c96eb5da43"
+ hash: "780a03cd9aec2f0f7f61a51629261385"
}
Frame {
msec: 1552
- hash: "2e4543754429ac3db831a2432098c063"
+ hash: "c7ea3a54cfb618bb02d93f6e17e2a74d"
}
Frame {
msec: 1568
- hash: "02253fe8a9fd5009a07265c2c6ffc8e4"
+ hash: "85ea65c275c6217c44038c1bc87f2356"
}
Frame {
msec: 1584
- hash: "200a89949df1e9ef58d005a139857d2c"
+ hash: "af77f08c99d41295ef6c99089c322f61"
}
Frame {
msec: 1600
- hash: "ceb28be34c7ea8eff5fa00fdea087439"
+ hash: "1427c98bee08b57e94cea220b7c017e4"
}
Frame {
msec: 1616
- hash: "a9ece475c51f126094c5eff4e20f4a19"
+ hash: "fa1062676e7f2e429e3f5f3babbccc5f"
}
Frame {
msec: 1632
- hash: "aa0776f84aef87d6971affdfa2d8dd82"
+ hash: "016c51ef6ad6729db5328b199c18c830"
}
Frame {
msec: 1648
- hash: "4c74661e1c73fefc9c5154b257239352"
+ hash: "94a3647a5c98770d60a2b5f17281e87e"
}
Frame {
msec: 1664
- hash: "c10d23df3a75966aad5016bd8ba8e9d8"
+ hash: "fc075081b0b7d8bc2556250962e52327"
}
Frame {
msec: 1680
- hash: "41692977d654a55d3b1d037aea9f2c03"
+ hash: "0ef1d28912378939e0f82387164ace07"
}
Frame {
msec: 1696
- hash: "2f1835a1de94f962eb5dc781c85b4c32"
+ hash: "d55312d705b8ed5d188caf4f41820e0f"
}
Frame {
msec: 1712
- hash: "7cb78e2e5f6d35d456c95f2bd8652eb5"
+ hash: "41c9c187b208ec1cef4e9ffe976c38ce"
}
Frame {
msec: 1728
- hash: "4388aee9b1c8b4fde43634ad08f03557"
+ hash: "6166be5f86adfc6b4c9438358529e5ce"
}
Frame {
msec: 1744
- hash: "1cdc71100fd11cb6e60c9ab7e65e95bf"
+ hash: "aaa81e964b5c5ef2ebf2c200e7a47c26"
}
Frame {
msec: 1760
- hash: "feddbf269adfc8bb1b1a3656b5b5736d"
+ hash: "65dbdd2495e12b7dd7bbc31e1b2fa5b1"
}
Frame {
msec: 1776
- hash: "76b39ce0ee9b9b4af8aa0141577b8460"
+ hash: "b2d10e7cbccb0fdf3286fef81999d37e"
}
Frame {
msec: 1792
- hash: "bac963d3df2841ab7a3770a371f3a94d"
+ hash: "e239d20ee23a6ff680ded67182066430"
}
Frame {
msec: 1808
- hash: "403007bb6c0782fece1cedbd40994550"
+ hash: "d4f2df7f9c7a7a9e98975e44393a2e37"
}
Frame {
msec: 1824
- hash: "72076c743fdd33fab2ac789c7c22973a"
+ hash: "9c1ce93161e16704feb7d37cd01acbe9"
}
Frame {
msec: 1840
- hash: "662be553c32b0145b3f4fee9bb0d659d"
+ hash: "94e148b49b53cab2491a974eb85ab489"
}
Frame {
msec: 1856
- hash: "e6b9049949a0ee4ff8a0fcaf5464f479"
+ hash: "9a1dfb6b09218c83c89f9a2d32f92ef6"
}
Frame {
msec: 1872
- hash: "eb1939458851780b7bb51ee50f0a3bd7"
+ hash: "7cb78e2e5f6d35d456c95f2bd8652eb5"
}
Frame {
msec: 1888
- hash: "41c8d2686ddb882981a7d3a5c8c69005"
+ hash: "e3a3be52fda460050db6d2d9947d3cf8"
}
Frame {
msec: 1904
- hash: "7d3b1fc34082a160cbea4409af85fc9c"
+ hash: "6651ca6a31f281676a5ba312c306ee91"
}
Frame {
msec: 1920
@@ -526,207 +526,207 @@ VisualTest {
}
Frame {
msec: 1936
- hash: "17be4a9c3d4d19e93bf1fc3a13a374a2"
+ hash: "feddbf269adfc8bb1b1a3656b5b5736d"
}
Frame {
msec: 1952
- hash: "d449593024a59487eb92195ee6b77a64"
+ hash: "4710e2abb2d907686a5ef58c3d22b391"
}
Frame {
msec: 1968
- hash: "c6ccbc2acec8e32f043f2cfb7b7848a9"
+ hash: "2a479b302b425df282502e71b4ad7fbf"
}
Frame {
msec: 1984
- hash: "cef9f8e8cdd5e2d33b86a9a6fb64ecb4"
+ hash: "a912a2993c3a2a280e83caee932ff707"
}
Frame {
msec: 2000
- hash: "2a8956de5ce417431bdb156144985370"
+ hash: "022504443e57ee5593e5054961265a15"
}
Frame {
msec: 2016
- hash: "73721425a9c658bd9d40eac3fcbe8e25"
+ hash: "a47ccf22b66f7d62c017aa1da19904d2"
}
Frame {
msec: 2032
- hash: "9a9cf8eee0bf2f09944a4fb3b1c139d5"
+ hash: "133c29b49f3a98fb5eca71fff217252d"
}
Frame {
msec: 2048
- hash: "3673cdee04343ce679ec2cebadc9f512"
+ hash: "058c2a759a415d548fec309bfb255a70"
}
Frame {
msec: 2064
- hash: "eedd62019867e3189f9cf6e2b4149c6d"
+ hash: "662be553c32b0145b3f4fee9bb0d659d"
}
Frame {
msec: 2080
- hash: "7a66bc37f5cf917e8b121003af0530b0"
+ hash: "7c7460ff21e7c27af2326b399b5b9791"
}
Frame {
msec: 2096
- hash: "401667ed0f38858553de27164e9cadb5"
+ hash: "e6b9049949a0ee4ff8a0fcaf5464f479"
}
Frame {
msec: 2112
- hash: "b391699437c4092de3ad1684a35bfd30"
+ hash: "39db5e52253948ca5059d9c102bedea0"
}
Frame {
msec: 2128
- hash: "109c91215f075292910095a25eaded49"
+ hash: "eb1939458851780b7bb51ee50f0a3bd7"
}
Frame {
msec: 2144
- hash: "c44d3f6ce1fa1ab324dd9ef394f37f87"
+ hash: "feaaa4fab78c73321dd9ab820ec2b746"
}
Frame {
msec: 2160
- hash: "299d43cb3dcf7b95af8803df3eb17a46"
+ hash: "221c8afbedcfb8ca7e87e279e5406103"
}
Frame {
msec: 2176
- hash: "7ddd97266383d954a008fbe7b95a3169"
+ hash: "41c8d2686ddb882981a7d3a5c8c69005"
}
Frame {
msec: 2192
- hash: "941f2837ff5145a26df9a0d9f6d20bd9"
+ hash: "abb2d6a76af5114b191a4373f95cdb6f"
}
Frame {
msec: 2208
- hash: "d99d76cba43f3ae953605d7732d6ce21"
+ hash: "7d3b1fc34082a160cbea4409af85fc9c"
}
Frame {
msec: 2224
- hash: "929f49416f7ca80d7f5f2be3b13b849e"
+ hash: "55e07e33b231e3c7925c7b3cfada4839"
}
Frame {
msec: 2240
- hash: "929f49416f7ca80d7f5f2be3b13b849e"
+ hash: "55e07e33b231e3c7925c7b3cfada4839"
}
Frame {
msec: 2256
- hash: "fff9bbf16d1c3f7510ddfc44af616a5e"
+ hash: "3a616453adf2b16e23654f515d797e99"
}
Frame {
msec: 2272
- hash: "70b6cdb95ad6723d18c623e1dc79a8db"
+ hash: "b3461a3c55b9603905ad208c7396e1a9"
}
Frame {
msec: 2288
- hash: "70b6cdb95ad6723d18c623e1dc79a8db"
+ hash: "b3461a3c55b9603905ad208c7396e1a9"
}
Frame {
msec: 2304
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Frame {
msec: 2320
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Frame {
msec: 2336
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Frame {
msec: 2352
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Frame {
msec: 2368
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Frame {
msec: 2384
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Frame {
msec: 2400
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Frame {
msec: 2416
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Frame {
msec: 2432
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Frame {
msec: 2448
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Frame {
msec: 2464
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Frame {
msec: 2480
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Frame {
msec: 2496
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Frame {
msec: 2512
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Frame {
msec: 2528
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Frame {
msec: 2544
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Frame {
msec: 2560
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Frame {
msec: 2576
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Frame {
msec: 2592
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Frame {
msec: 2608
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Frame {
msec: 2624
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Frame {
msec: 2640
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Frame {
msec: 2656
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Frame {
msec: 2672
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Frame {
msec: 2688
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Frame {
msec: 2704
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Frame {
msec: 2720
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Frame {
msec: 2736
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Mouse {
type: 2
@@ -738,23 +738,23 @@ VisualTest {
}
Frame {
msec: 2752
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Frame {
msec: 2768
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Frame {
msec: 2784
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Frame {
msec: 2800
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Frame {
msec: 2816
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Mouse {
type: 5
@@ -766,7 +766,7 @@ VisualTest {
}
Frame {
msec: 2832
- hash: "cdb3c12b1b0b6ab269ba7fcf75320f69"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Mouse {
type: 5
@@ -778,7 +778,7 @@ VisualTest {
}
Frame {
msec: 2848
- hash: "2732b282b8ac482033694cd04c6f5b7e"
+ hash: "fbd9a45fc6b5a96b4e521dc5c68dbf7e"
}
Mouse {
type: 5
@@ -790,7 +790,7 @@ VisualTest {
}
Frame {
msec: 2864
- hash: "7d253797885f8b304d8fb3ba727a3c5d"
+ hash: "6f1a516cde59f142f5ac8b4e824a2bab"
}
Mouse {
type: 5
@@ -814,39 +814,39 @@ VisualTest {
}
Frame {
msec: 2896
- hash: "d85a416e4ddf59dfd0723b0be0e2b418"
+ hash: "3f6d74079d8ec38eb1f12ddde18f864a"
}
Frame {
msec: 2912
- hash: "f1934f6ca6a3c5ac5df3451596b8d8ba"
+ hash: "b58ac3c0ab5e556be249bfdc3fb85c56"
}
Frame {
msec: 2928
- hash: "28fc74a76f9eaeeccbd3063dc55a1000"
+ hash: "291dd50b6dd4ee71265631ce338f16d2"
}
Frame {
msec: 2944
- hash: "eb8ad8dae734b624664fcf584cda6ba0"
+ hash: "6af30d160a3c1126718c62fcd5e85a89"
}
Frame {
msec: 2960
- hash: "a6d0f4aba3e5ae1e003520f45b75d6dd"
+ hash: "3f09b75f49f53e83d53fdc8cb2a1a2a7"
}
Frame {
msec: 2976
- hash: "4e5a4d04dfa5f06292774e6bf4f86508"
+ hash: "7c9e03c8bc2691253eb5be656bbcfaa5"
}
Frame {
msec: 2992
- hash: "fc9e16fd8c7379d774a09fe50d4259dc"
+ hash: "95c1ca6b2550f5575c2297acad5bfd0f"
}
Frame {
msec: 3008
- hash: "721ea322d9a5e9d48117336476f568cb"
+ hash: "be05537c0b9246b0c4d48ae344275bb9"
}
Frame {
msec: 3024
- hash: "5930448341bce1c50de7acaba1f64ca1"
+ hash: "59de97652e25f49b1bf016a9b124d324"
}
Frame {
msec: 3040
@@ -854,71 +854,71 @@ VisualTest {
}
Frame {
msec: 3056
- hash: "fcf11cf70b8ac210d4bb2bc716942053"
+ hash: "09fe50cbbcc7432d6fa6bbe875eae5e3"
}
Frame {
msec: 3072
- hash: "767d707db4dbb02b6f97153b3822a1d1"
+ hash: "a95c1f6ca5a638c4d9229321a84e51a4"
}
Frame {
msec: 3088
- hash: "f8eb75b97f5233aa82b887aab34a38e3"
+ hash: "c439b31b64510ce025ad326364e8f690"
}
Frame {
msec: 3104
- hash: "1d3beb06b39fa1d5cabd31ec4297f59f"
+ hash: "c28c637ff5f0ae6d4532fba13cfb8ea4"
}
Frame {
msec: 3120
- hash: "cadc775e0764afa7b50c5bab782035dd"
+ hash: "2e095e9433e1f504163aebc8450be923"
}
Frame {
msec: 3136
- hash: "385f5a6e80da0d3ddf24539a64f26eb9"
+ hash: "5fb49164c1bad4bb96a13cfbb336312b"
}
Frame {
msec: 3152
- hash: "34204871a684ea251c9d07fb125436da"
+ hash: "34b7976b3dbf0c5462ddf77153d9d2c9"
}
Frame {
msec: 3168
- hash: "bc3e496535e66ff0d1e800092b7c78ca"
+ hash: "d4007272d676a896c99adb66afa0c10b"
}
Frame {
msec: 3184
- hash: "d6c4ff5bf223361be42c78d6d81248c3"
+ hash: "07638f1f5eb5786a12cbc74414fe29b5"
}
Frame {
msec: 3200
- hash: "cb09d41612df66a8d099153026adcbf3"
+ hash: "1fe90791c573865f425ef0e43faf7a1c"
}
Frame {
msec: 3216
- hash: "f82180b8c0389ddc3623107a049c3366"
+ hash: "b149986c7b395106a808b1fcd1d8bcb2"
}
Frame {
msec: 3232
- hash: "1b0f65e4599c65b8a603abd8da718d48"
+ hash: "ecb2b6d44eafb8a0b5493520b64e5e5b"
}
Frame {
msec: 3248
- hash: "897391a8206178356858139b3d1a4ce8"
+ hash: "fc66b2e38d477c16584eee4f541df511"
}
Frame {
msec: 3264
- hash: "b66d268dc7a42a7b1172b1ff566f4eb8"
+ hash: "023152c61ad6cd0b8726e6c8fa6043a4"
}
Frame {
msec: 3280
- hash: "0fe5d38a253dbd1ebcc67cca7ea86dc7"
+ hash: "b788f8a7e1e42f768fd1fe1198ca0344"
}
Frame {
msec: 3296
- hash: "b788f8a7e1e42f768fd1fe1198ca0344"
+ hash: "4f7f8b7f5bb78bb9327b6fa8142ce3a2"
}
Frame {
msec: 3312
- hash: "4f7f8b7f5bb78bb9327b6fa8142ce3a2"
+ hash: "30f041278c08174671568a0dfb7cbdf7"
}
Frame {
msec: 3328
@@ -950,7 +950,7 @@ VisualTest {
}
Frame {
msec: 3440
- hash: "6d79d9d0ba8da0b5654b39768b25591f"
+ hash: "cba9afe3f351e6cd6dc72d7f263401b0"
}
Frame {
msec: 3456
@@ -1111,7 +1111,7 @@ VisualTest {
Key {
type: 6
key: 16777249
- modifiers: 67108864
+ modifiers: 0
text: ""
autorep: false
count: 1
diff --git a/tests/auto/declarative/qmlvisual/fillmode/data/fillmode.0.png b/tests/auto/declarative/qmlvisual/fillmode/data/fillmode.0.png
index 02fa5c9..ee07a68 100644
--- a/tests/auto/declarative/qmlvisual/fillmode/data/fillmode.0.png
+++ b/tests/auto/declarative/qmlvisual/fillmode/data/fillmode.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.0.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.0.png
index 993610f..c9536dc 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.1.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.1.png
index 993610f..c9536dc 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.10.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.10.png
index 12c6cf5..1d9a39c 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.10.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.10.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.11.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.11.png
index ccb9fdd..8fd0a97 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.11.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.11.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.12.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.12.png
index ace0752..2cc486c 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.12.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.12.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.13.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.13.png
index 993610f..c9536dc 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.13.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.13.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.2.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.2.png
index e58c68b..903312b 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.2.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.3.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.3.png
index e58c68b..903312b 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.3.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.4.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.4.png
index cb6d2f8..64d760a 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.4.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.5.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.5.png
index db6bea2..a45da4f 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.5.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.6.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.6.png
index c18bb34..6cb4d6f 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.6.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.6.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.7.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.7.png
index c18bb34..6cb4d6f 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.7.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.7.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.8.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.8.png
index 3b56301..97cb175 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.8.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.8.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.9.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.9.png
index 993610f..c9536dc 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.9.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.9.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.qml b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.qml
index 307fef6..50ef6e8 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.qml
@@ -1202,7 +1202,7 @@ VisualTest {
}
Frame {
msec: 4576
- hash: "86b32befe0dada5bdce82a7dd14777ce"
+ hash: "d75a43305e2884759ca41d7b1cbadf52"
}
Mouse {
type: 5
@@ -1222,7 +1222,7 @@ VisualTest {
}
Frame {
msec: 4592
- hash: "7a5f69a1eecb5de0fc2295cd287eb449"
+ hash: "9f9f85d5f879b0e52ebc751d6668cfb8"
}
Mouse {
type: 5
@@ -1242,7 +1242,7 @@ VisualTest {
}
Frame {
msec: 4608
- hash: "144eeb7c2a32cedb6ebba063501c9176"
+ hash: "a569789b082296415321ba11c859abe5"
}
Mouse {
type: 5
@@ -1262,7 +1262,7 @@ VisualTest {
}
Frame {
msec: 4624
- hash: "11120d6de575ffa639b6abb3af4afef7"
+ hash: "7a5f69a1eecb5de0fc2295cd287eb449"
}
Mouse {
type: 5
@@ -1282,7 +1282,7 @@ VisualTest {
}
Frame {
msec: 4640
- hash: "ab4c936a81299adf080f3b14f7e6be49"
+ hash: "70e522f64236dfa4e1613ffc29b4b23e"
}
Mouse {
type: 5
@@ -1302,7 +1302,7 @@ VisualTest {
}
Frame {
msec: 4656
- hash: "6602009ffe3c0f3072640ebc8749b76f"
+ hash: "11120d6de575ffa639b6abb3af4afef7"
}
Mouse {
type: 5
@@ -1322,7 +1322,7 @@ VisualTest {
}
Frame {
msec: 4672
- hash: "8517007d5102af238935e93a3b38087f"
+ hash: "ab4c936a81299adf080f3b14f7e6be49"
}
Mouse {
type: 5
@@ -1342,7 +1342,7 @@ VisualTest {
}
Frame {
msec: 4688
- hash: "4e129ebba85d1f3717d09f71eb5a1a7d"
+ hash: "c29ab366ba3f11de6452949c11310b4a"
}
Mouse {
type: 5
@@ -1362,7 +1362,7 @@ VisualTest {
}
Frame {
msec: 4704
- hash: "82f54d7e254edcf499ea12a63118e8a7"
+ hash: "34ef0279e3731447f1df97784b47648a"
}
Mouse {
type: 5
@@ -1382,7 +1382,7 @@ VisualTest {
}
Frame {
msec: 4720
- hash: "572cb62d69ccb973ea18d3b0eaff571b"
+ hash: "84df34cd981e0465aaaae47881de6c3b"
}
Mouse {
type: 5
@@ -1402,7 +1402,7 @@ VisualTest {
}
Frame {
msec: 4736
- hash: "79650397b868019909b931a32a115823"
+ hash: "837deeb2a92648d830acf29e829ebb53"
}
Mouse {
type: 5
@@ -1422,7 +1422,7 @@ VisualTest {
}
Frame {
msec: 4752
- hash: "43e50f4d4d37373e26af0a5d3cb64c4c"
+ hash: "572cb62d69ccb973ea18d3b0eaff571b"
}
Mouse {
type: 5
@@ -1442,7 +1442,7 @@ VisualTest {
}
Frame {
msec: 4768
- hash: "a0f8eb8a796f67c368b0a479e8d14681"
+ hash: "3d75735eefbf95f37e2a8605b9167ba1"
}
Mouse {
type: 5
@@ -1462,7 +1462,7 @@ VisualTest {
}
Frame {
msec: 4784
- hash: "01bf03313a0229e810a24e2adbbe9775"
+ hash: "c37507a29e3a6d80446ad68f2d92f266"
}
Mouse {
type: 5
@@ -1486,7 +1486,7 @@ VisualTest {
}
Frame {
msec: 4816
- hash: "aafb12a520eb443ee1348282f2c54e4a"
+ hash: "7fb0ed99b7d751d1f335afd7c0de2f2c"
}
Mouse {
type: 5
@@ -1506,7 +1506,7 @@ VisualTest {
}
Frame {
msec: 4832
- hash: "806d22bc3533c729cd10dc889c36902d"
+ hash: "363eca81f97f20f14e8d480f83d2bc7d"
}
Mouse {
type: 5
@@ -1518,7 +1518,7 @@ VisualTest {
}
Frame {
msec: 4848
- hash: "05b3013c9e42ed9ced7009d2e2999357"
+ hash: "72e75cfa62993593303b25cbff4af0e6"
}
Mouse {
type: 5
@@ -1538,7 +1538,7 @@ VisualTest {
}
Frame {
msec: 4864
- hash: "cb49adcd2c8afe27fd5926bd622added"
+ hash: "cc6619c7cd6e4e274df4729aad6cca46"
}
Mouse {
type: 5
@@ -1558,7 +1558,7 @@ VisualTest {
}
Frame {
msec: 4880
- hash: "d0b4215b43403c97d83250add6d2b6db"
+ hash: "0b16e524cd5253d07aa9b5855967fa71"
}
Mouse {
type: 5
@@ -1578,7 +1578,7 @@ VisualTest {
}
Frame {
msec: 4896
- hash: "ee0523fe6a33b59871ad3b311ca0cbeb"
+ hash: "091d1ad7aba4b662cba98214c98a4707"
}
Mouse {
type: 5
@@ -1598,7 +1598,7 @@ VisualTest {
}
Frame {
msec: 4912
- hash: "29ca97cc573d3a1fde65320b61678c60"
+ hash: "f334bfcc3af89bf1405762a215c54ea6"
}
Mouse {
type: 5
@@ -1610,7 +1610,7 @@ VisualTest {
}
Frame {
msec: 4928
- hash: "021bda841eaefa76ce5e1c97150af6f6"
+ hash: "7b41d651ad46341859d0188db341ae10"
}
Mouse {
type: 5
@@ -1630,7 +1630,7 @@ VisualTest {
}
Frame {
msec: 4944
- hash: "80edf52cc9e64a29f677bc2203220ba9"
+ hash: "95b57cd3dac3bce56674f2c4143f42d4"
}
Mouse {
type: 5
@@ -1642,7 +1642,7 @@ VisualTest {
}
Frame {
msec: 4960
- hash: "c09f4002ed9d41f62bb1aaff95723cce"
+ hash: "1709dda08ce7494ff6d082cc5d93f0d2"
}
Mouse {
type: 5
@@ -1662,7 +1662,7 @@ VisualTest {
}
Frame {
msec: 4976
- hash: "7bb17b13db811b02c86a24a0051336d9"
+ hash: "390105f21526e1f8fda15666631578a1"
}
Mouse {
type: 5
@@ -1682,7 +1682,7 @@ VisualTest {
}
Frame {
msec: 4992
- hash: "da5c33ee9e9e1d9aaa7d5efa83b8bf69"
+ hash: "ee40862a59f14667c89fa62f380c10fb"
}
Mouse {
type: 5
@@ -1694,7 +1694,7 @@ VisualTest {
}
Frame {
msec: 5008
- hash: "3ca9742356b6ff833fd287a95520174a"
+ hash: "6d6cec95a6a2445d88b015ff76af032e"
}
Mouse {
type: 5
@@ -1714,7 +1714,7 @@ VisualTest {
}
Frame {
msec: 5024
- hash: "d1372239a681d1fccc25257b4a02fb39"
+ hash: "e87bf82b6a7a928a27bffd9cb2dd7604"
}
Mouse {
type: 5
@@ -1734,7 +1734,7 @@ VisualTest {
}
Frame {
msec: 5040
- hash: "1f37473ab2fb0643e11e4a41a2ee4561"
+ hash: "9a9d1e0b1d7b9291480b3ec641f354ce"
}
Mouse {
type: 5
@@ -1754,7 +1754,7 @@ VisualTest {
}
Frame {
msec: 5056
- hash: "1533c6ff17e79a47a5d3510aa85bcf8a"
+ hash: "d1372239a681d1fccc25257b4a02fb39"
}
Mouse {
type: 5
@@ -1774,7 +1774,7 @@ VisualTest {
}
Frame {
msec: 5072
- hash: "4cad3c6caf8d3009f63923df897c4723"
+ hash: "1f37473ab2fb0643e11e4a41a2ee4561"
}
Mouse {
type: 5
@@ -1794,7 +1794,7 @@ VisualTest {
}
Frame {
msec: 5088
- hash: "b81183233961b34c2a3f21a249b0fbfb"
+ hash: "1533c6ff17e79a47a5d3510aa85bcf8a"
}
Mouse {
type: 5
@@ -1814,7 +1814,7 @@ VisualTest {
}
Frame {
msec: 5104
- hash: "9f876eb93a16c24843dd6a5acd303ab3"
+ hash: "c5980322acf00a04efbd5e1b92aa0e98"
}
Mouse {
type: 5
@@ -1834,7 +1834,7 @@ VisualTest {
}
Frame {
msec: 5120
- hash: "237dd62011f4253970b946b335e3fb71"
+ hash: "b81183233961b34c2a3f21a249b0fbfb"
}
Mouse {
type: 5
@@ -1846,7 +1846,7 @@ VisualTest {
}
Frame {
msec: 5136
- hash: "6206ad3e633b6b1b068304caa4efe48a"
+ hash: "2dc2def0c748ac94d33d90d4a3610136"
}
Mouse {
type: 5
@@ -1858,7 +1858,7 @@ VisualTest {
}
Frame {
msec: 5152
- hash: "1eb5f0e1aa014a38e6ca66ddfc2a076b"
+ hash: "9f876eb93a16c24843dd6a5acd303ab3"
}
Mouse {
type: 5
@@ -1870,7 +1870,7 @@ VisualTest {
}
Frame {
msec: 5168
- hash: "d9e953d132330f8a58a190d61aec6ec3"
+ hash: "9f876eb93a16c24843dd6a5acd303ab3"
}
Mouse {
type: 5
@@ -1890,7 +1890,7 @@ VisualTest {
}
Frame {
msec: 5184
- hash: "c1570ad4cb688ea51818e0a09e349daa"
+ hash: "237dd62011f4253970b946b335e3fb71"
}
Mouse {
type: 5
@@ -1902,11 +1902,11 @@ VisualTest {
}
Frame {
msec: 5200
- hash: "11853dcbad9d1d9a8b7d8a4e6fcca140"
+ hash: "6206ad3e633b6b1b068304caa4efe48a"
}
Frame {
msec: 5216
- hash: "11853dcbad9d1d9a8b7d8a4e6fcca140"
+ hash: "6206ad3e633b6b1b068304caa4efe48a"
}
Mouse {
type: 5
@@ -1918,7 +1918,7 @@ VisualTest {
}
Frame {
msec: 5232
- hash: "11853dcbad9d1d9a8b7d8a4e6fcca140"
+ hash: "1eb5f0e1aa014a38e6ca66ddfc2a076b"
}
Mouse {
type: 5
@@ -1930,7 +1930,7 @@ VisualTest {
}
Frame {
msec: 5248
- hash: "c6a81be579382f25ac583734897c2570"
+ hash: "1eb5f0e1aa014a38e6ca66ddfc2a076b"
}
Mouse {
type: 5
@@ -1942,11 +1942,11 @@ VisualTest {
}
Frame {
msec: 5264
- hash: "c6a81be579382f25ac583734897c2570"
+ hash: "d9e953d132330f8a58a190d61aec6ec3"
}
Frame {
msec: 5280
- hash: "c6a81be579382f25ac583734897c2570"
+ hash: "d9e953d132330f8a58a190d61aec6ec3"
}
Mouse {
type: 5
@@ -1958,7 +1958,7 @@ VisualTest {
}
Frame {
msec: 5296
- hash: "8cbeb925f039bde9846d37a5ec6cd3f9"
+ hash: "d9e953d132330f8a58a190d61aec6ec3"
}
Mouse {
type: 5
@@ -1970,19 +1970,19 @@ VisualTest {
}
Frame {
msec: 5312
- hash: "8cbeb925f039bde9846d37a5ec6cd3f9"
+ hash: "c1570ad4cb688ea51818e0a09e349daa"
}
Frame {
msec: 5328
- hash: "8cbeb925f039bde9846d37a5ec6cd3f9"
+ hash: "c1570ad4cb688ea51818e0a09e349daa"
}
Frame {
msec: 5344
- hash: "8cbeb925f039bde9846d37a5ec6cd3f9"
+ hash: "c1570ad4cb688ea51818e0a09e349daa"
}
Frame {
msec: 5360
- hash: "8cbeb925f039bde9846d37a5ec6cd3f9"
+ hash: "c1570ad4cb688ea51818e0a09e349daa"
}
Mouse {
type: 3
@@ -1994,51 +1994,51 @@ VisualTest {
}
Frame {
msec: 5376
- hash: "8cbeb925f039bde9846d37a5ec6cd3f9"
+ hash: "c1570ad4cb688ea51818e0a09e349daa"
}
Frame {
msec: 5392
- hash: "c6a81be579382f25ac583734897c2570"
+ hash: "d9e953d132330f8a58a190d61aec6ec3"
}
Frame {
msec: 5408
- hash: "11853dcbad9d1d9a8b7d8a4e6fcca140"
+ hash: "1eb5f0e1aa014a38e6ca66ddfc2a076b"
}
Frame {
msec: 5424
- hash: "1eb5f0e1aa014a38e6ca66ddfc2a076b"
+ hash: "9f876eb93a16c24843dd6a5acd303ab3"
}
Frame {
msec: 5440
- hash: "9f876eb93a16c24843dd6a5acd303ab3"
+ hash: "4cad3c6caf8d3009f63923df897c4723"
}
Frame {
msec: 5456
- hash: "1533c6ff17e79a47a5d3510aa85bcf8a"
+ hash: "79538d2f507fd6eea7ea1f990e90388a"
}
Frame {
msec: 5472
- hash: "9a9d1e0b1d7b9291480b3ec641f354ce"
+ hash: "e87bf82b6a7a928a27bffd9cb2dd7604"
}
Frame {
msec: 5488
- hash: "ee40862a59f14667c89fa62f380c10fb"
+ hash: "390105f21526e1f8fda15666631578a1"
}
Frame {
msec: 5504
- hash: "95b57cd3dac3bce56674f2c4143f42d4"
+ hash: "7b41d651ad46341859d0188db341ae10"
}
Frame {
msec: 5520
- hash: "52d45e8dde81fef5ee93bbd5a40d4851"
+ hash: "091d1ad7aba4b662cba98214c98a4707"
}
Frame {
msec: 5536
- hash: "05b3013c9e42ed9ced7009d2e2999357"
+ hash: "1978cda418856b542d7c5a155b74f09c"
}
Frame {
msec: 5552
- hash: "7d03030f5a672d87aeabefdf4f3a39a4"
+ hash: "01bf03313a0229e810a24e2adbbe9775"
}
Frame {
msec: 5568
@@ -2046,15 +2046,15 @@ VisualTest {
}
Frame {
msec: 5584
- hash: "82f54d7e254edcf499ea12a63118e8a7"
+ hash: "84df34cd981e0465aaaae47881de6c3b"
}
Frame {
msec: 5600
- hash: "8517007d5102af238935e93a3b38087f"
+ hash: "c29ab366ba3f11de6452949c11310b4a"
}
Frame {
msec: 5616
- hash: "dc272fc8fc98d822a154da1d495d4f7e"
+ hash: "ab4c936a81299adf080f3b14f7e6be49"
}
Frame {
msec: 5632
@@ -2066,7 +2066,7 @@ VisualTest {
}
Frame {
msec: 5664
- hash: "7a5f69a1eecb5de0fc2295cd287eb449"
+ hash: "86b32befe0dada5bdce82a7dd14777ce"
}
Frame {
msec: 5680
@@ -2750,7 +2750,7 @@ VisualTest {
}
Frame {
msec: 8240
- hash: "9f9f85d5f879b0e52ebc751d6668cfb8"
+ hash: "cc1fd2f4c3be318052254a9b6be7a57b"
}
Mouse {
type: 5
@@ -2762,7 +2762,7 @@ VisualTest {
}
Frame {
msec: 8256
- hash: "70e522f64236dfa4e1613ffc29b4b23e"
+ hash: "a569789b082296415321ba11c859abe5"
}
Mouse {
type: 5
@@ -2782,7 +2782,7 @@ VisualTest {
}
Frame {
msec: 8272
- hash: "11120d6de575ffa639b6abb3af4afef7"
+ hash: "7a5f69a1eecb5de0fc2295cd287eb449"
}
Mouse {
type: 5
@@ -2802,7 +2802,7 @@ VisualTest {
}
Frame {
msec: 8288
- hash: "dc272fc8fc98d822a154da1d495d4f7e"
+ hash: "11120d6de575ffa639b6abb3af4afef7"
}
Mouse {
type: 5
@@ -2822,7 +2822,7 @@ VisualTest {
}
Frame {
msec: 8304
- hash: "4e129ebba85d1f3717d09f71eb5a1a7d"
+ hash: "c29ab366ba3f11de6452949c11310b4a"
}
Mouse {
type: 5
@@ -2834,7 +2834,7 @@ VisualTest {
}
Frame {
msec: 8320
- hash: "837deeb2a92648d830acf29e829ebb53"
+ hash: "4e129ebba85d1f3717d09f71eb5a1a7d"
}
Mouse {
type: 5
@@ -2846,7 +2846,7 @@ VisualTest {
}
Frame {
msec: 8336
- hash: "7d2606d432858288dac019e0002ff85a"
+ hash: "837deeb2a92648d830acf29e829ebb53"
}
Mouse {
type: 5
@@ -2866,7 +2866,7 @@ VisualTest {
}
Frame {
msec: 8352
- hash: "c37507a29e3a6d80446ad68f2d92f266"
+ hash: "79650397b868019909b931a32a115823"
}
Mouse {
type: 5
@@ -2878,7 +2878,7 @@ VisualTest {
}
Frame {
msec: 8368
- hash: "01bf03313a0229e810a24e2adbbe9775"
+ hash: "c37507a29e3a6d80446ad68f2d92f266"
}
Mouse {
type: 5
@@ -2890,7 +2890,7 @@ VisualTest {
}
Frame {
msec: 8384
- hash: "8ffbbed46737837e55383833b96d2624"
+ hash: "01bf03313a0229e810a24e2adbbe9775"
}
Mouse {
type: 5
@@ -2910,7 +2910,7 @@ VisualTest {
}
Frame {
msec: 8400
- hash: "6d49fc41fb6d74643c7613df7e417833"
+ hash: "8ffbbed46737837e55383833b96d2624"
}
Mouse {
type: 5
@@ -2922,7 +2922,7 @@ VisualTest {
}
Frame {
msec: 8416
- hash: "1978cda418856b542d7c5a155b74f09c"
+ hash: "6d49fc41fb6d74643c7613df7e417833"
}
Mouse {
type: 5
@@ -2942,7 +2942,7 @@ VisualTest {
}
Frame {
msec: 8432
- hash: "cc6619c7cd6e4e274df4729aad6cca46"
+ hash: "806d22bc3533c729cd10dc889c36902d"
}
Mouse {
type: 5
@@ -2962,7 +2962,7 @@ VisualTest {
}
Frame {
msec: 8448
- hash: "0b16e524cd5253d07aa9b5855967fa71"
+ hash: "cc6619c7cd6e4e274df4729aad6cca46"
}
Mouse {
type: 5
@@ -2982,7 +2982,7 @@ VisualTest {
}
Frame {
msec: 8464
- hash: "0121c18897c37481fddbac57db636a60"
+ hash: "929bf28dcb97e8c93dae5dbe23beecc8"
}
Mouse {
type: 5
@@ -3002,7 +3002,7 @@ VisualTest {
}
Frame {
msec: 8480
- hash: "091d1ad7aba4b662cba98214c98a4707"
+ hash: "0121c18897c37481fddbac57db636a60"
}
Mouse {
type: 5
@@ -3014,7 +3014,7 @@ VisualTest {
}
Frame {
msec: 8496
- hash: "f334bfcc3af89bf1405762a215c54ea6"
+ hash: "091d1ad7aba4b662cba98214c98a4707"
}
Mouse {
type: 5
@@ -3034,7 +3034,7 @@ VisualTest {
}
Frame {
msec: 8512
- hash: "66f71641c7a607152f140428ab9621d6"
+ hash: "ce673b66f695f5b002515a5416bbf913"
}
Mouse {
type: 5
@@ -3054,7 +3054,7 @@ VisualTest {
}
Frame {
msec: 8528
- hash: "7b41d651ad46341859d0188db341ae10"
+ hash: "66f71641c7a607152f140428ab9621d6"
}
Mouse {
type: 5
@@ -3066,7 +3066,7 @@ VisualTest {
}
Frame {
msec: 8544
- hash: "95b57cd3dac3bce56674f2c4143f42d4"
+ hash: "29ca97cc573d3a1fde65320b61678c60"
}
Mouse {
type: 5
@@ -3086,7 +3086,7 @@ VisualTest {
}
Frame {
msec: 8560
- hash: "80edf52cc9e64a29f677bc2203220ba9"
+ hash: "021bda841eaefa76ce5e1c97150af6f6"
}
Mouse {
type: 5
@@ -3106,7 +3106,7 @@ VisualTest {
}
Frame {
msec: 8576
- hash: "68c8c95edb8cce11320715266bd62628"
+ hash: "b1ea82b880a2fc35bf1ed117d8ab21b0"
}
Mouse {
type: 5
@@ -3126,7 +3126,7 @@ VisualTest {
}
Frame {
msec: 8592
- hash: "c09f4002ed9d41f62bb1aaff95723cce"
+ hash: "80edf52cc9e64a29f677bc2203220ba9"
}
Mouse {
type: 5
@@ -3138,7 +3138,7 @@ VisualTest {
}
Frame {
msec: 8608
- hash: "7bb17b13db811b02c86a24a0051336d9"
+ hash: "390105f21526e1f8fda15666631578a1"
}
Mouse {
type: 5
@@ -3158,7 +3158,7 @@ VisualTest {
}
Frame {
msec: 8624
- hash: "6d6cec95a6a2445d88b015ff76af032e"
+ hash: "ee40862a59f14667c89fa62f380c10fb"
}
Mouse {
type: 5
@@ -3190,7 +3190,7 @@ VisualTest {
}
Frame {
msec: 8656
- hash: "9a9d1e0b1d7b9291480b3ec641f354ce"
+ hash: "da5c33ee9e9e1d9aaa7d5efa83b8bf69"
}
Mouse {
type: 5
@@ -3210,7 +3210,7 @@ VisualTest {
}
Frame {
msec: 8672
- hash: "d1372239a681d1fccc25257b4a02fb39"
+ hash: "3ca9742356b6ff833fd287a95520174a"
}
Mouse {
type: 5
@@ -3230,7 +3230,7 @@ VisualTest {
}
Frame {
msec: 8688
- hash: "2010f6f0c34e59f505bbe1aab262b646"
+ hash: "d1372239a681d1fccc25257b4a02fb39"
}
Mouse {
type: 5
@@ -3250,7 +3250,7 @@ VisualTest {
}
Frame {
msec: 8704
- hash: "2dc2def0c748ac94d33d90d4a3610136"
+ hash: "c5980322acf00a04efbd5e1b92aa0e98"
}
Mouse {
type: 5
@@ -3270,7 +3270,7 @@ VisualTest {
}
Frame {
msec: 8720
- hash: "1eb5f0e1aa014a38e6ca66ddfc2a076b"
+ hash: "9f876eb93a16c24843dd6a5acd303ab3"
}
Mouse {
type: 5
@@ -3290,7 +3290,7 @@ VisualTest {
}
Frame {
msec: 8736
- hash: "c1570ad4cb688ea51818e0a09e349daa"
+ hash: "6206ad3e633b6b1b068304caa4efe48a"
}
Mouse {
type: 5
@@ -3302,7 +3302,7 @@ VisualTest {
}
Frame {
msec: 8752
- hash: "c6a81be579382f25ac583734897c2570"
+ hash: "d9e953d132330f8a58a190d61aec6ec3"
}
Mouse {
type: 5
@@ -3314,7 +3314,7 @@ VisualTest {
}
Frame {
msec: 8768
- hash: "8cbeb925f039bde9846d37a5ec6cd3f9"
+ hash: "c1570ad4cb688ea51818e0a09e349daa"
}
Mouse {
type: 5
@@ -3326,7 +3326,7 @@ VisualTest {
}
Frame {
msec: 8784
- hash: "b34a796f25ad62f952101b296f9c2bac"
+ hash: "11853dcbad9d1d9a8b7d8a4e6fcca140"
}
Mouse {
type: 5
@@ -3338,51 +3338,51 @@ VisualTest {
}
Frame {
msec: 8800
- hash: "a0814b5ba881e5da8a1ecae8d714b4ce"
+ hash: "c6a81be579382f25ac583734897c2570"
}
Frame {
msec: 8816
- hash: "a0814b5ba881e5da8a1ecae8d714b4ce"
+ hash: "c6a81be579382f25ac583734897c2570"
}
Frame {
msec: 8832
- hash: "a0814b5ba881e5da8a1ecae8d714b4ce"
+ hash: "c6a81be579382f25ac583734897c2570"
}
Frame {
msec: 8848
- hash: "a0814b5ba881e5da8a1ecae8d714b4ce"
+ hash: "c6a81be579382f25ac583734897c2570"
}
Frame {
msec: 8864
- hash: "a0814b5ba881e5da8a1ecae8d714b4ce"
+ hash: "c6a81be579382f25ac583734897c2570"
}
Frame {
msec: 8880
- hash: "a0814b5ba881e5da8a1ecae8d714b4ce"
+ hash: "c6a81be579382f25ac583734897c2570"
}
Frame {
msec: 8896
- hash: "a0814b5ba881e5da8a1ecae8d714b4ce"
+ hash: "c6a81be579382f25ac583734897c2570"
}
Frame {
msec: 8912
- hash: "a0814b5ba881e5da8a1ecae8d714b4ce"
+ hash: "c6a81be579382f25ac583734897c2570"
}
Frame {
msec: 8928
- hash: "a0814b5ba881e5da8a1ecae8d714b4ce"
+ hash: "c6a81be579382f25ac583734897c2570"
}
Frame {
msec: 8944
- hash: "a0814b5ba881e5da8a1ecae8d714b4ce"
+ hash: "c6a81be579382f25ac583734897c2570"
}
Frame {
msec: 8960
- hash: "a0814b5ba881e5da8a1ecae8d714b4ce"
+ hash: "c6a81be579382f25ac583734897c2570"
}
Frame {
msec: 8976
- hash: "a0814b5ba881e5da8a1ecae8d714b4ce"
+ hash: "c6a81be579382f25ac583734897c2570"
}
Mouse {
type: 3
@@ -3394,55 +3394,55 @@ VisualTest {
}
Frame {
msec: 8992
- hash: "a0814b5ba881e5da8a1ecae8d714b4ce"
+ hash: "c6a81be579382f25ac583734897c2570"
}
Frame {
msec: 9008
- hash: "b34a796f25ad62f952101b296f9c2bac"
+ hash: "11853dcbad9d1d9a8b7d8a4e6fcca140"
}
Frame {
msec: 9024
- hash: "8cbeb925f039bde9846d37a5ec6cd3f9"
+ hash: "c1570ad4cb688ea51818e0a09e349daa"
}
Frame {
msec: 9040
- hash: "c1570ad4cb688ea51818e0a09e349daa"
+ hash: "6206ad3e633b6b1b068304caa4efe48a"
}
Frame {
msec: 9056
- hash: "237dd62011f4253970b946b335e3fb71"
+ hash: "2dc2def0c748ac94d33d90d4a3610136"
}
Frame {
msec: 9072
- hash: "c5980322acf00a04efbd5e1b92aa0e98"
+ hash: "2010f6f0c34e59f505bbe1aab262b646"
}
Frame {
msec: 9088
- hash: "d1372239a681d1fccc25257b4a02fb39"
+ hash: "3ca9742356b6ff833fd287a95520174a"
}
Frame {
msec: 9104
- hash: "524db6ce45674c777d72f9206415be2f"
+ hash: "c09f4002ed9d41f62bb1aaff95723cce"
}
Frame {
msec: 9120
- hash: "021bda841eaefa76ce5e1c97150af6f6"
+ hash: "95b57cd3dac3bce56674f2c4143f42d4"
}
Frame {
msec: 9136
- hash: "ce673b66f695f5b002515a5416bbf913"
+ hash: "52d45e8dde81fef5ee93bbd5a40d4851"
}
Frame {
msec: 9152
- hash: "cc6619c7cd6e4e274df4729aad6cca46"
+ hash: "1978cda418856b542d7c5a155b74f09c"
}
Frame {
msec: 9168
- hash: "7fb0ed99b7d751d1f335afd7c0de2f2c"
+ hash: "7d03030f5a672d87aeabefdf4f3a39a4"
}
Frame {
msec: 9184
- hash: "3d75735eefbf95f37e2a8605b9167ba1"
+ hash: "79650397b868019909b931a32a115823"
}
Frame {
msec: 9200
@@ -3454,7 +3454,7 @@ VisualTest {
}
Frame {
msec: 9232
- hash: "dc272fc8fc98d822a154da1d495d4f7e"
+ hash: "ab4c936a81299adf080f3b14f7e6be49"
}
Frame {
msec: 9248
@@ -3466,7 +3466,7 @@ VisualTest {
}
Frame {
msec: 9280
- hash: "7a5f69a1eecb5de0fc2295cd287eb449"
+ hash: "86b32befe0dada5bdce82a7dd14777ce"
}
Frame {
msec: 9296
@@ -4022,7 +4022,7 @@ VisualTest {
}
Frame {
msec: 11248
- hash: "a569789b082296415321ba11c859abe5"
+ hash: "d75a43305e2884759ca41d7b1cbadf52"
}
Mouse {
type: 5
@@ -4042,7 +4042,7 @@ VisualTest {
}
Frame {
msec: 11264
- hash: "86b32befe0dada5bdce82a7dd14777ce"
+ hash: "43fc85bb3b1501f5e12f1fedaaa14c64"
}
Mouse {
type: 5
@@ -4062,7 +4062,7 @@ VisualTest {
}
Frame {
msec: 11280
- hash: "70e522f64236dfa4e1613ffc29b4b23e"
+ hash: "a569789b082296415321ba11c859abe5"
}
Mouse {
type: 5
@@ -4074,7 +4074,7 @@ VisualTest {
}
Frame {
msec: 11296
- hash: "11120d6de575ffa639b6abb3af4afef7"
+ hash: "7a5f69a1eecb5de0fc2295cd287eb449"
}
Mouse {
type: 5
@@ -4094,7 +4094,7 @@ VisualTest {
}
Frame {
msec: 11312
- hash: "8e05207e0d0d9d15a61a0d21d985a83a"
+ hash: "70e522f64236dfa4e1613ffc29b4b23e"
}
Mouse {
type: 5
@@ -4114,7 +4114,7 @@ VisualTest {
}
Frame {
msec: 11328
- hash: "6602009ffe3c0f3072640ebc8749b76f"
+ hash: "8e05207e0d0d9d15a61a0d21d985a83a"
}
Mouse {
type: 5
@@ -4134,7 +4134,7 @@ VisualTest {
}
Frame {
msec: 11344
- hash: "8517007d5102af238935e93a3b38087f"
+ hash: "dc272fc8fc98d822a154da1d495d4f7e"
}
Mouse {
type: 5
@@ -4154,7 +4154,7 @@ VisualTest {
}
Frame {
msec: 11360
- hash: "82f54d7e254edcf499ea12a63118e8a7"
+ hash: "34ef0279e3731447f1df97784b47648a"
}
Mouse {
type: 5
@@ -4174,7 +4174,7 @@ VisualTest {
}
Frame {
msec: 11376
- hash: "572cb62d69ccb973ea18d3b0eaff571b"
+ hash: "82f54d7e254edcf499ea12a63118e8a7"
}
Mouse {
type: 5
@@ -4194,7 +4194,7 @@ VisualTest {
}
Frame {
msec: 11392
- hash: "79650397b868019909b931a32a115823"
+ hash: "6ef4abc294d928381346e8ff9b012475"
}
Mouse {
type: 5
@@ -4214,7 +4214,7 @@ VisualTest {
}
Frame {
msec: 11408
- hash: "43e50f4d4d37373e26af0a5d3cb64c4c"
+ hash: "7d2606d432858288dac019e0002ff85a"
}
Mouse {
type: 5
@@ -4234,7 +4234,7 @@ VisualTest {
}
Frame {
msec: 11424
- hash: "a0f8eb8a796f67c368b0a479e8d14681"
+ hash: "3d75735eefbf95f37e2a8605b9167ba1"
}
Mouse {
type: 5
@@ -4254,7 +4254,7 @@ VisualTest {
}
Frame {
msec: 11440
- hash: "01bf03313a0229e810a24e2adbbe9775"
+ hash: "c37507a29e3a6d80446ad68f2d92f266"
}
Mouse {
type: 5
@@ -4274,7 +4274,7 @@ VisualTest {
}
Frame {
msec: 11456
- hash: "7fb0ed99b7d751d1f335afd7c0de2f2c"
+ hash: "b66571ae47bf129be88dc66785a81a7d"
}
Mouse {
type: 5
@@ -4294,7 +4294,7 @@ VisualTest {
}
Frame {
msec: 11472
- hash: "363eca81f97f20f14e8d480f83d2bc7d"
+ hash: "7d03030f5a672d87aeabefdf4f3a39a4"
}
Mouse {
type: 5
@@ -4306,7 +4306,7 @@ VisualTest {
}
Frame {
msec: 11488
- hash: "6d49fc41fb6d74643c7613df7e417833"
+ hash: "8ffbbed46737837e55383833b96d2624"
}
Mouse {
type: 5
@@ -4326,7 +4326,7 @@ VisualTest {
}
Frame {
msec: 11504
- hash: "806d22bc3533c729cd10dc889c36902d"
+ hash: "aafb12a520eb443ee1348282f2c54e4a"
}
Mouse {
type: 5
@@ -4366,7 +4366,7 @@ VisualTest {
}
Frame {
msec: 11536
- hash: "929bf28dcb97e8c93dae5dbe23beecc8"
+ hash: "05b3013c9e42ed9ced7009d2e2999357"
}
Mouse {
type: 5
@@ -4386,7 +4386,7 @@ VisualTest {
}
Frame {
msec: 11552
- hash: "cb49adcd2c8afe27fd5926bd622added"
+ hash: "1451addb43319318c794333cd1cec3fd"
}
Mouse {
type: 5
@@ -4406,7 +4406,7 @@ VisualTest {
}
Frame {
msec: 11568
- hash: "0121c18897c37481fddbac57db636a60"
+ hash: "929bf28dcb97e8c93dae5dbe23beecc8"
}
Mouse {
type: 5
@@ -4418,7 +4418,7 @@ VisualTest {
}
Frame {
msec: 11584
- hash: "c0a569ee064d844835dddab11eadcd33"
+ hash: "cb49adcd2c8afe27fd5926bd622added"
}
Mouse {
type: 5
@@ -4438,7 +4438,7 @@ VisualTest {
}
Frame {
msec: 11600
- hash: "52d45e8dde81fef5ee93bbd5a40d4851"
+ hash: "d0b4215b43403c97d83250add6d2b6db"
}
Mouse {
type: 5
@@ -4458,7 +4458,7 @@ VisualTest {
}
Frame {
msec: 11616
- hash: "ce673b66f695f5b002515a5416bbf913"
+ hash: "c0a569ee064d844835dddab11eadcd33"
}
Mouse {
type: 5
@@ -4470,7 +4470,7 @@ VisualTest {
}
Frame {
msec: 11632
- hash: "f334bfcc3af89bf1405762a215c54ea6"
+ hash: "091d1ad7aba4b662cba98214c98a4707"
}
Mouse {
type: 5
@@ -4490,7 +4490,7 @@ VisualTest {
}
Frame {
msec: 11648
- hash: "ee0523fe6a33b59871ad3b311ca0cbeb"
+ hash: "52d45e8dde81fef5ee93bbd5a40d4851"
}
Mouse {
type: 5
@@ -4502,11 +4502,11 @@ VisualTest {
}
Frame {
msec: 11664
- hash: "66f71641c7a607152f140428ab9621d6"
+ hash: "ce673b66f695f5b002515a5416bbf913"
}
Frame {
msec: 11680
- hash: "66f71641c7a607152f140428ab9621d6"
+ hash: "ce673b66f695f5b002515a5416bbf913"
}
Mouse {
type: 5
@@ -4518,7 +4518,7 @@ VisualTest {
}
Frame {
msec: 11696
- hash: "66f71641c7a607152f140428ab9621d6"
+ hash: "ce673b66f695f5b002515a5416bbf913"
}
Mouse {
type: 5
@@ -4530,7 +4530,7 @@ VisualTest {
}
Frame {
msec: 11712
- hash: "ddd3d8cb82e238358cdb16c1df7d27b7"
+ hash: "f334bfcc3af89bf1405762a215c54ea6"
}
Mouse {
type: 5
@@ -4542,7 +4542,7 @@ VisualTest {
}
Frame {
msec: 11728
- hash: "ddd3d8cb82e238358cdb16c1df7d27b7"
+ hash: "f334bfcc3af89bf1405762a215c54ea6"
}
Mouse {
type: 5
@@ -4554,7 +4554,7 @@ VisualTest {
}
Frame {
msec: 11744
- hash: "29ca97cc573d3a1fde65320b61678c60"
+ hash: "ee0523fe6a33b59871ad3b311ca0cbeb"
}
Mouse {
type: 5
@@ -4566,7 +4566,7 @@ VisualTest {
}
Frame {
msec: 11760
- hash: "29ca97cc573d3a1fde65320b61678c60"
+ hash: "ee0523fe6a33b59871ad3b311ca0cbeb"
}
Mouse {
type: 5
@@ -4578,7 +4578,7 @@ VisualTest {
}
Frame {
msec: 11776
- hash: "7b41d651ad46341859d0188db341ae10"
+ hash: "66f71641c7a607152f140428ab9621d6"
}
Mouse {
type: 5
@@ -4590,11 +4590,11 @@ VisualTest {
}
Frame {
msec: 11792
- hash: "6b236864b7d95bf9f76b8afd6ba78613"
+ hash: "ddd3d8cb82e238358cdb16c1df7d27b7"
}
Frame {
msec: 11808
- hash: "6b236864b7d95bf9f76b8afd6ba78613"
+ hash: "ddd3d8cb82e238358cdb16c1df7d27b7"
}
Mouse {
type: 5
@@ -4606,7 +4606,7 @@ VisualTest {
}
Frame {
msec: 11824
- hash: "95b57cd3dac3bce56674f2c4143f42d4"
+ hash: "29ca97cc573d3a1fde65320b61678c60"
}
Mouse {
type: 5
@@ -4618,7 +4618,7 @@ VisualTest {
}
Frame {
msec: 11840
- hash: "95b57cd3dac3bce56674f2c4143f42d4"
+ hash: "29ca97cc573d3a1fde65320b61678c60"
}
Mouse {
type: 5
@@ -4630,7 +4630,7 @@ VisualTest {
}
Frame {
msec: 11856
- hash: "021bda841eaefa76ce5e1c97150af6f6"
+ hash: "7b41d651ad46341859d0188db341ae10"
}
Mouse {
type: 5
@@ -4642,11 +4642,11 @@ VisualTest {
}
Frame {
msec: 11872
- hash: "b1ea82b880a2fc35bf1ed117d8ab21b0"
+ hash: "6b236864b7d95bf9f76b8afd6ba78613"
}
Frame {
msec: 11888
- hash: "b1ea82b880a2fc35bf1ed117d8ab21b0"
+ hash: "6b236864b7d95bf9f76b8afd6ba78613"
}
Mouse {
type: 5
@@ -4658,11 +4658,11 @@ VisualTest {
}
Frame {
msec: 11904
- hash: "b1ea82b880a2fc35bf1ed117d8ab21b0"
+ hash: "6b236864b7d95bf9f76b8afd6ba78613"
}
Frame {
msec: 11920
- hash: "b1ea82b880a2fc35bf1ed117d8ab21b0"
+ hash: "6b236864b7d95bf9f76b8afd6ba78613"
}
Mouse {
type: 5
@@ -4674,11 +4674,11 @@ VisualTest {
}
Frame {
msec: 11936
- hash: "1709dda08ce7494ff6d082cc5d93f0d2"
+ hash: "95b57cd3dac3bce56674f2c4143f42d4"
}
Frame {
msec: 11952
- hash: "1709dda08ce7494ff6d082cc5d93f0d2"
+ hash: "95b57cd3dac3bce56674f2c4143f42d4"
}
Mouse {
type: 5
@@ -4690,11 +4690,11 @@ VisualTest {
}
Frame {
msec: 11968
- hash: "1709dda08ce7494ff6d082cc5d93f0d2"
+ hash: "95b57cd3dac3bce56674f2c4143f42d4"
}
Frame {
msec: 11984
- hash: "1709dda08ce7494ff6d082cc5d93f0d2"
+ hash: "95b57cd3dac3bce56674f2c4143f42d4"
}
Mouse {
type: 5
@@ -4706,7 +4706,7 @@ VisualTest {
}
Frame {
msec: 12000
- hash: "80edf52cc9e64a29f677bc2203220ba9"
+ hash: "021bda841eaefa76ce5e1c97150af6f6"
}
Mouse {
type: 5
@@ -4718,11 +4718,11 @@ VisualTest {
}
Frame {
msec: 12016
- hash: "80edf52cc9e64a29f677bc2203220ba9"
+ hash: "021bda841eaefa76ce5e1c97150af6f6"
}
Frame {
msec: 12032
- hash: "80edf52cc9e64a29f677bc2203220ba9"
+ hash: "021bda841eaefa76ce5e1c97150af6f6"
}
Mouse {
type: 5
@@ -4734,23 +4734,23 @@ VisualTest {
}
Frame {
msec: 12048
- hash: "68c8c95edb8cce11320715266bd62628"
+ hash: "b1ea82b880a2fc35bf1ed117d8ab21b0"
}
Frame {
msec: 12064
- hash: "68c8c95edb8cce11320715266bd62628"
+ hash: "b1ea82b880a2fc35bf1ed117d8ab21b0"
}
Frame {
msec: 12080
- hash: "68c8c95edb8cce11320715266bd62628"
+ hash: "b1ea82b880a2fc35bf1ed117d8ab21b0"
}
Frame {
msec: 12096
- hash: "68c8c95edb8cce11320715266bd62628"
+ hash: "b1ea82b880a2fc35bf1ed117d8ab21b0"
}
Frame {
msec: 12112
- hash: "68c8c95edb8cce11320715266bd62628"
+ hash: "b1ea82b880a2fc35bf1ed117d8ab21b0"
}
Mouse {
type: 5
@@ -4762,23 +4762,23 @@ VisualTest {
}
Frame {
msec: 12128
- hash: "68c8c95edb8cce11320715266bd62628"
+ hash: "b1ea82b880a2fc35bf1ed117d8ab21b0"
}
Frame {
msec: 12144
- hash: "68c8c95edb8cce11320715266bd62628"
+ hash: "b1ea82b880a2fc35bf1ed117d8ab21b0"
}
Frame {
msec: 12160
- hash: "68c8c95edb8cce11320715266bd62628"
+ hash: "b1ea82b880a2fc35bf1ed117d8ab21b0"
}
Frame {
msec: 12176
- hash: "68c8c95edb8cce11320715266bd62628"
+ hash: "b1ea82b880a2fc35bf1ed117d8ab21b0"
}
Frame {
msec: 12192
- hash: "68c8c95edb8cce11320715266bd62628"
+ hash: "b1ea82b880a2fc35bf1ed117d8ab21b0"
}
Mouse {
type: 3
@@ -4790,59 +4790,59 @@ VisualTest {
}
Frame {
msec: 12208
- hash: "68c8c95edb8cce11320715266bd62628"
+ hash: "b1ea82b880a2fc35bf1ed117d8ab21b0"
}
Frame {
msec: 12224
- hash: "68c8c95edb8cce11320715266bd62628"
+ hash: "b1ea82b880a2fc35bf1ed117d8ab21b0"
}
Frame {
msec: 12240
- hash: "80edf52cc9e64a29f677bc2203220ba9"
+ hash: "021bda841eaefa76ce5e1c97150af6f6"
}
Frame {
msec: 12256
- hash: "b1ea82b880a2fc35bf1ed117d8ab21b0"
+ hash: "6b236864b7d95bf9f76b8afd6ba78613"
}
Frame {
msec: 12272
- hash: "6b236864b7d95bf9f76b8afd6ba78613"
+ hash: "ddd3d8cb82e238358cdb16c1df7d27b7"
}
Frame {
msec: 12288
- hash: "ddd3d8cb82e238358cdb16c1df7d27b7"
+ hash: "f334bfcc3af89bf1405762a215c54ea6"
}
Frame {
msec: 12304
- hash: "ce673b66f695f5b002515a5416bbf913"
+ hash: "091d1ad7aba4b662cba98214c98a4707"
}
Frame {
msec: 12320
- hash: "0121c18897c37481fddbac57db636a60"
+ hash: "0b16e524cd5253d07aa9b5855967fa71"
}
Frame {
msec: 12336
- hash: "cc6619c7cd6e4e274df4729aad6cca46"
+ hash: "1978cda418856b542d7c5a155b74f09c"
}
Frame {
msec: 12352
- hash: "aafb12a520eb443ee1348282f2c54e4a"
+ hash: "8ffbbed46737837e55383833b96d2624"
}
Frame {
msec: 12368
- hash: "c37507a29e3a6d80446ad68f2d92f266"
+ hash: "43e50f4d4d37373e26af0a5d3cb64c4c"
}
Frame {
msec: 12384
- hash: "6ef4abc294d928381346e8ff9b012475"
+ hash: "837deeb2a92648d830acf29e829ebb53"
}
Frame {
msec: 12400
- hash: "4e129ebba85d1f3717d09f71eb5a1a7d"
+ hash: "34ef0279e3731447f1df97784b47648a"
}
Frame {
msec: 12416
- hash: "6602009ffe3c0f3072640ebc8749b76f"
+ hash: "dc272fc8fc98d822a154da1d495d4f7e"
}
Frame {
msec: 12432
@@ -4894,7 +4894,7 @@ VisualTest {
}
Frame {
msec: 12624
- hash: "d75a43305e2884759ca41d7b1cbadf52"
+ hash: "cc1fd2f4c3be318052254a9b6be7a57b"
}
Frame {
msec: 12640
@@ -5083,7 +5083,7 @@ VisualTest {
Key {
type: 6
key: 16777251
- modifiers: 134217728
+ modifiers: 0
text: ""
autorep: false
count: 1
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/repeater.0.png b/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/repeater.0.png
deleted file mode 100644
index f7018fd..0000000
--- a/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/repeater.0.png
+++ /dev/null
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/usingRepeater.0.png b/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/usingRepeater.0.png
new file mode 100644
index 0000000..3234c98
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/usingRepeater.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/usingRepeater.qml b/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/usingRepeater.qml
index b293d70..bdf8fee 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/usingRepeater.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/usingRepeater.qml
@@ -6,239 +6,239 @@ VisualTest {
}
Frame {
msec: 16
- hash: "b72bfb206ae52e0e4fb8927b82d64b64"
+ hash: "e9c524091a0351926c3d658b9935f176"
}
Frame {
msec: 32
- hash: "b72bfb206ae52e0e4fb8927b82d64b64"
+ hash: "e9c524091a0351926c3d658b9935f176"
}
Frame {
msec: 48
- hash: "b72bfb206ae52e0e4fb8927b82d64b64"
+ hash: "e9c524091a0351926c3d658b9935f176"
}
Frame {
msec: 64
- hash: "b72bfb206ae52e0e4fb8927b82d64b64"
+ hash: "e9c524091a0351926c3d658b9935f176"
}
Frame {
msec: 80
- hash: "b72bfb206ae52e0e4fb8927b82d64b64"
+ hash: "e9c524091a0351926c3d658b9935f176"
}
Frame {
msec: 96
- hash: "b72bfb206ae52e0e4fb8927b82d64b64"
+ hash: "e9c524091a0351926c3d658b9935f176"
}
Frame {
msec: 112
- hash: "b72bfb206ae52e0e4fb8927b82d64b64"
+ hash: "e9c524091a0351926c3d658b9935f176"
}
Frame {
msec: 128
- hash: "b72bfb206ae52e0e4fb8927b82d64b64"
+ hash: "e9c524091a0351926c3d658b9935f176"
}
Frame {
msec: 144
- hash: "b72bfb206ae52e0e4fb8927b82d64b64"
+ hash: "e9c524091a0351926c3d658b9935f176"
}
Frame {
msec: 160
- hash: "b72bfb206ae52e0e4fb8927b82d64b64"
+ hash: "e9c524091a0351926c3d658b9935f176"
}
Frame {
msec: 176
- hash: "b72bfb206ae52e0e4fb8927b82d64b64"
+ hash: "e9c524091a0351926c3d658b9935f176"
}
Frame {
msec: 192
- hash: "b72bfb206ae52e0e4fb8927b82d64b64"
+ hash: "e9c524091a0351926c3d658b9935f176"
}
Frame {
msec: 208
- hash: "b72bfb206ae52e0e4fb8927b82d64b64"
+ hash: "e9c524091a0351926c3d658b9935f176"
}
Frame {
msec: 224
- hash: "b72bfb206ae52e0e4fb8927b82d64b64"
+ hash: "e9c524091a0351926c3d658b9935f176"
}
Frame {
msec: 240
- hash: "b72bfb206ae52e0e4fb8927b82d64b64"
+ hash: "e9c524091a0351926c3d658b9935f176"
}
Frame {
msec: 256
- hash: "b72bfb206ae52e0e4fb8927b82d64b64"
+ hash: "e9c524091a0351926c3d658b9935f176"
}
Frame {
msec: 272
- hash: "b72bfb206ae52e0e4fb8927b82d64b64"
+ hash: "e9c524091a0351926c3d658b9935f176"
}
Frame {
msec: 288
- hash: "b72bfb206ae52e0e4fb8927b82d64b64"
+ hash: "e9c524091a0351926c3d658b9935f176"
}
Frame {
msec: 304
- hash: "b72bfb206ae52e0e4fb8927b82d64b64"
+ hash: "e9c524091a0351926c3d658b9935f176"
}
Frame {
msec: 320
- hash: "b72bfb206ae52e0e4fb8927b82d64b64"
+ hash: "e9c524091a0351926c3d658b9935f176"
}
Frame {
msec: 336
- hash: "b72bfb206ae52e0e4fb8927b82d64b64"
+ hash: "e9c524091a0351926c3d658b9935f176"
}
Frame {
msec: 352
- hash: "b72bfb206ae52e0e4fb8927b82d64b64"
+ hash: "e9c524091a0351926c3d658b9935f176"
}
Frame {
msec: 368
- hash: "b72bfb206ae52e0e4fb8927b82d64b64"
+ hash: "e9c524091a0351926c3d658b9935f176"
}
Frame {
msec: 384
- hash: "b72bfb206ae52e0e4fb8927b82d64b64"
+ hash: "e9c524091a0351926c3d658b9935f176"
}
Frame {
msec: 400
- hash: "b72bfb206ae52e0e4fb8927b82d64b64"
+ hash: "e9c524091a0351926c3d658b9935f176"
}
Frame {
msec: 416
- hash: "b72bfb206ae52e0e4fb8927b82d64b64"
+ hash: "e9c524091a0351926c3d658b9935f176"
}
Frame {
msec: 432
- hash: "b72bfb206ae52e0e4fb8927b82d64b64"
+ hash: "e9c524091a0351926c3d658b9935f176"
}
Frame {
msec: 448
- hash: "b72bfb206ae52e0e4fb8927b82d64b64"
+ hash: "e9c524091a0351926c3d658b9935f176"
}
Frame {
msec: 464
- hash: "b72bfb206ae52e0e4fb8927b82d64b64"
+ hash: "e9c524091a0351926c3d658b9935f176"
}
Frame {
msec: 480
- hash: "b72bfb206ae52e0e4fb8927b82d64b64"
+ hash: "e9c524091a0351926c3d658b9935f176"
}
Frame {
msec: 496
- hash: "b72bfb206ae52e0e4fb8927b82d64b64"
+ hash: "e9c524091a0351926c3d658b9935f176"
}
Frame {
msec: 512
- hash: "b72bfb206ae52e0e4fb8927b82d64b64"
+ hash: "e9c524091a0351926c3d658b9935f176"
}
Frame {
msec: 528
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 544
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 560
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 576
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 592
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 608
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 624
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 640
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 656
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 672
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 688
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 704
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 720
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 736
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 752
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 768
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 784
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 800
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 816
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 832
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 848
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 864
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 880
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 896
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 912
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 928
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 944
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 960
@@ -246,94 +246,94 @@ VisualTest {
}
Frame {
msec: 976
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 992
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 1008
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 1024
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 1040
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 1056
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 1072
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 1088
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 1104
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 1120
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 1136
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 1152
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 1168
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 1184
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 1200
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 1216
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 1232
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 1248
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 1264
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 1280
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 1296
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 1312
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
Frame {
msec: 1328
- hash: "f2de1f70c5f242604beb4ee0251c8032"
+ hash: "2b1fb0ebb6f728fe685d95b5947cce90"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/elide2.qml b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/elide2.qml
index edf0cb5..b772982 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/elide2.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/elide2.qml
@@ -5,7 +5,7 @@ Rectangle {
height: 100
Text {
- width: NumberAnimation { from: 500; to: 0; loops: Animation.Infinite; duration: 5000 }
+ NumberAnimation on width { from: 500; to: 0; loops: Animation.Infinite; duration: 5000 }
elide: Text.ElideRight
text: 'Here is some very long text that we should truncate when sizing window'
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/multilength.qml b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/multilength.qml
index 6698421..3ef64ef 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/multilength.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/multilength.qml
@@ -11,7 +11,7 @@ Rectangle {
anchors.centerIn: parent
Text {
id: myText
- width: NumberAnimation { from: 500; to: 0; loops: Animation.Infinite; duration: 1000 }
+ NumberAnimation on width { from: 500; to: 0; loops: Animation.Infinite; duration: 5000 }
elide: "ElideRight"
text: "Brevity is the soul of wit, and tediousness the limbs and outward flourishes.\x9CBrevity is a great charm of eloquence.\x9CBe concise!\x9CSHHHHHHHHHHHHHHHHHHHHHHHHHHHH"
}
diff --git a/tests/auto/modeltest/dynamictreemodel.cpp b/tests/auto/modeltest/dynamictreemodel.cpp
index b572eb1..fa634b6 100644
--- a/tests/auto/modeltest/dynamictreemodel.cpp
+++ b/tests/auto/modeltest/dynamictreemodel.cpp
@@ -63,6 +63,13 @@ QModelIndex DynamicTreeModel::index(int row, int column, const QModelIndex &pare
QList<QList<qint64> > childIdColumns = m_childItems.value(parent.internalId());
+ const qint64 grandParent = findParentId(parent.internalId());
+ if (grandParent >= 0) {
+ QList<QList<qint64> > parentTable = m_childItems.value(grandParent);
+ Q_ASSERT(parent.column() < parentTable.size());
+ QList<qint64> parentSiblings = parentTable.at(parent.column());
+ Q_ASSERT(parent.row() < parentSiblings.size());
+ }
if (childIdColumns.size() == 0)
return QModelIndex();
diff --git a/tests/auto/qabstractitemmodel/tst_qabstractitemmodel.cpp b/tests/auto/qabstractitemmodel/tst_qabstractitemmodel.cpp
index dbcccc9..b723253 100644
--- a/tests/auto/qabstractitemmodel/tst_qabstractitemmodel.cpp
+++ b/tests/auto/qabstractitemmodel/tst_qabstractitemmodel.cpp
@@ -1167,6 +1167,7 @@ void tst_QAbstractItemModel::testMoveToGrandParent_data()
// Moving everything from one parent to another
QTest::newRow("move12") << 0 << 9 << 10;
+ QTest::newRow("move13") << 0 << 9 << 0;
}
void tst_QAbstractItemModel::testMoveToGrandParent()
@@ -1314,6 +1315,11 @@ void tst_QAbstractItemModel::testMoveToSibling_data()
QTest::newRow("move09") << 8 << 8 << 4;
QTest::newRow("move10") << 8 << 8 << 5;
QTest::newRow("move11") << 8 << 8 << 6;
+
+ // Move such that the destination parent no longer valid after the move.
+ // The destination parent is always QMI(5, 0), but after this move the
+ // row count is 5, so (5, 0) (used internally in QAIM) no longer refers to a valid index.
+ QTest::newRow("move12") << 0 << 4 << 0;
}
void tst_QAbstractItemModel::testMoveToSibling()
diff --git a/tests/auto/qclipboard/test/test.pro b/tests/auto/qclipboard/test/test.pro
index 7d5c2f3..6e61b31 100644
--- a/tests/auto/qclipboard/test/test.pro
+++ b/tests/auto/qclipboard/test/test.pro
@@ -17,6 +17,8 @@ wince*|symbian: {
paster.path = paster
symbian: {
+ LIBS += -lbafl -lestor -letext
+
load(data_caging_paths)
rsc.files = $${EPOCROOT}$$HW_ZDIR$$APP_RESOURCE_DIR/copier.rsc
rsc.files += $${EPOCROOT}$$HW_ZDIR$$APP_RESOURCE_DIR/paster.rsc
diff --git a/tests/auto/qclipboard/tst_qclipboard.cpp b/tests/auto/qclipboard/tst_qclipboard.cpp
index d1f3e86..2e0362c 100644
--- a/tests/auto/qclipboard/tst_qclipboard.cpp
+++ b/tests/auto/qclipboard/tst_qclipboard.cpp
@@ -47,6 +47,14 @@
#ifdef Q_WS_MAC
#include <Carbon/Carbon.h>
#endif
+#ifdef Q_OS_SYMBIAN
+#include "private/qcore_symbian_p.h"
+#include "txtetext.h"
+#include <baclipb.h>
+#endif
+#ifdef SYMBIAN_ENABLE_SPLIT_HEADERS
+#include "txtclipboard.h"
+#endif
//TESTED_CLASS=
//TESTED_FILES=
@@ -62,6 +70,10 @@ private slots:
void testSignals();
void setMimeData();
void clearBeforeSetText();
+#ifdef Q_OS_SYMBIAN
+ void pasteCopySymbian();
+ void copyPasteSymbian();
+#endif
private:
bool nativeClipboardWorking();
@@ -335,6 +347,76 @@ void tst_QClipboard::clearBeforeSetText()
QCOMPARE(QApplication::clipboard()->text(), text);
}
+/*
+ Test that text copied from qt application
+ can be pasted with symbian clipboard
+*/
+#ifdef Q_OS_SYMBIAN
+// ### This test case only makes sense in symbian
+void tst_QClipboard::pasteCopySymbian()
+{
+ if (!nativeClipboardWorking())
+ QSKIP("Native clipboard not working in this setup", SkipAll);
+ const QString string("Test string symbian.");
+ QApplication::clipboard()->setText(string);
+
+ const TInt KPlainTextBegin = 0;
+ RFs fs = qt_s60GetRFs();
+ CClipboard* cb = CClipboard::NewForReadingLC(fs);
+
+ CPlainText* text = CPlainText::NewL();
+ CleanupStack::PushL(text);
+ TInt dataLength = text->PasteFromStoreL(cb->Store(), cb->StreamDictionary(),
+ KPlainTextBegin);
+ if (dataLength == 0) {
+ User::Leave(KErrNotFound);
+ }
+ HBufC* hBuf = HBufC::NewL(dataLength);
+ TPtr buf = hBuf->Des();
+ text->Extract(buf, KPlainTextBegin, dataLength);
+
+ QString storeString = qt_TDesC2QString(buf);
+ CleanupStack::PopAndDestroy(text);
+ CleanupStack::PopAndDestroy(cb);
+
+ QCOMPARE(string, storeString);
+}
+#endif
+
+/*
+ Test that text copied to symbian clipboard
+ can be pasted to qt clipboard
+*/
+#ifdef Q_OS_SYMBIAN
+// ### This test case only makes sense in symbian
+void tst_QClipboard::copyPasteSymbian()
+{
+ if (!nativeClipboardWorking())
+ QSKIP("Native clipboard not working in this setup", SkipAll);
+ const QString string("Test string symbian.");
+ const TInt KPlainTextBegin = 0;
+
+ RFs fs = qt_s60GetRFs();
+ CClipboard* cb = CClipboard::NewForWritingLC(fs);
+ CStreamStore& store = cb->Store();
+ CStreamDictionary& dict = cb->StreamDictionary();
+ RStoreWriteStream symbianStream;
+ TStreamId symbianStId = symbianStream.CreateLC(cb->Store());
+
+ CPlainText* text = CPlainText::NewL();
+ CleanupStack::PushL(text);
+ TPtrC textPtr(qt_QString2TPtrC(string));
+ text->InsertL(KPlainTextBegin, textPtr);
+ text->CopyToStoreL(store, dict, KPlainTextBegin, textPtr.Length());
+ CleanupStack::PopAndDestroy(text);
+ (cb->StreamDictionary()).AssignL(KClipboardUidTypePlainText, symbianStId);
+ cb->CommitL();
+ CleanupStack::PopAndDestroy(2, cb);
+
+ QCOMPARE(QApplication::clipboard()->text(), string);
+}
+#endif
+
QTEST_MAIN(tst_QClipboard)
#include "tst_qclipboard.moc"
diff --git a/tests/auto/qcompleter/tst_qcompleter.cpp b/tests/auto/qcompleter/tst_qcompleter.cpp
index 1590528..650c328 100644
--- a/tests/auto/qcompleter/tst_qcompleter.cpp
+++ b/tests/auto/qcompleter/tst_qcompleter.cpp
@@ -119,6 +119,8 @@ private slots:
void directoryModel_data();
void directoryModel();
+ void fileSystemModel_data();
+ void fileSystemModel();
void changingModel_data();
void changingModel();
@@ -149,15 +151,17 @@ private slots:
void task253125_lineEditCompletion_data();
void task253125_lineEditCompletion();
void task247560_keyboardNavigation();
+ void QTBUG_14292_filesystem();
private:
- void filter();
+ void filter(bool assync = false);
void testRowCount();
enum ModelType {
CASE_SENSITIVELY_SORTED_MODEL,
CASE_INSENSITIVELY_SORTED_MODEL,
DIRECTORY_MODEL,
- HISTORY_MODEL
+ HISTORY_MODEL,
+ FILESYSTEM_MODEL
};
void setSourceModel(ModelType);
@@ -233,12 +237,21 @@ void tst_QCompleter::setSourceModel(ModelType type)
completer->setModel(new QDirModel(completer));
completer->setCompletionColumn(0);
break;
+ case FILESYSTEM_MODEL:
+ completer->setCsvCompletion(false);
+ {
+ QFileSystemModel *m = new QFileSystemModel(completer);
+ m->setRootPath("/");
+ completer->setModel(m);
+ }
+ completer->setCompletionColumn(0);
+ break;
default:
qDebug() << "Invalid type";
}
}
-void tst_QCompleter::filter()
+void tst_QCompleter::filter(bool assync)
{
QFETCH(QString, filterText);
QFETCH(QString, step);
@@ -250,6 +263,9 @@ void tst_QCompleter::filter()
return;
}
+ int times = 0;
+retry:
+
completer->setCompletionPrefix(filterText);
for (int i = 0; i < step.length(); i++) {
@@ -265,9 +281,13 @@ void tst_QCompleter::filter()
completer->setCurrentRow(row);
}
- //QModelIndex si = completer->currentIndex();
- //QCOMPARE(completer->model()->data(si).toString(), completion);
- QVERIFY(0 == QString::compare(completer->currentCompletion(), completionText, completer->caseSensitivity()));
+ int r = QString::compare(completer->currentCompletion(), completionText, completer->caseSensitivity());
+ if (assync && r && times < 10) {
+ times++;
+ QTest::qWait(50*times);
+ goto retry;
+ }
+ QVERIFY(!r);
}
// Testing get/set functions
@@ -552,6 +572,7 @@ void tst_QCompleter::csMatchingOnCiSortedModel()
void tst_QCompleter::directoryModel_data()
{
delete completer;
+
completer = new CsvCompleter;
completer->setModelSorting(QCompleter::CaseSensitivelySortedModel);
setSourceModel(DIRECTORY_MODEL);
@@ -598,6 +619,57 @@ void tst_QCompleter::directoryModel()
filter();
}
+void tst_QCompleter::fileSystemModel_data()
+{
+ delete completer;
+ completer = new CsvCompleter;
+ completer->setModelSorting(QCompleter::CaseSensitivelySortedModel);
+ setSourceModel(FILESYSTEM_MODEL);
+ completer->setCaseSensitivity(Qt::CaseInsensitive);
+
+ QTest::addColumn<QString>("filterText");
+ QTest::addColumn<QString>("step");
+ QTest::addColumn<QString>("completion");
+ QTest::addColumn<QString>("completionText");
+
+ // NOTE: Add tests carefully, ensurely the paths exist on all systems
+ // Output is the sourceText; currentCompletionText()
+
+ for (int i = 0; i < 2; i++) {
+ if (i == 1)
+ QTest::newRow("FILTERING_OFF") << "FILTERING_OFF" << "" << "" << "";
+
+#if defined(Q_OS_WINCE)
+ QTest::newRow("()") << "" << "" << "/" << "/";
+ QTest::newRow("()") << "\\Program" << "" << "Program Files" << "\\Program Files";
+#elif defined(Q_OS_WIN)
+ QTest::newRow("()") << "C" << "" << "C:" << "C:";
+ QTest::newRow("()") << "C:\\Program" << "" << "Program Files" << "C:\\Program Files";
+#elif defined(Q_OS_SYMBIAN)
+ QTest::newRow("()") << "C" << "" << "C:" << "C:";
+ QTest::newRow("()") << "C:\\re" << "" << "resource" << "C:\\resource";
+#elif defined (Q_OS_MAC)
+ QTest::newRow("()") << "" << "" << "/" << "/";
+ QTest::newRow("(/a)") << "/a" << "" << "Applications" << "/Applications";
+// QTest::newRow("(/d)") << "/d" << "" << "Developer" << "/Developer";
+#else
+ QTest::newRow("()") << "" << "" << "/" << "/";
+#if !defined(Q_OS_IRIX) && !defined(Q_OS_AIX) && !defined(Q_OS_HPUX)
+ QTest::newRow("(/h)") << "/h" << "" << "home" << "/home";
+#endif
+ QTest::newRow("(/et)") << "/et" << "" << "etc" << "/etc";
+ QTest::newRow("(/etc/passw)") << "/etc/passw" << "" << "passwd" << "/etc/passwd";
+#endif
+ }
+}
+
+void tst_QCompleter::fileSystemModel()
+{
+ //QFileSystemModel is assync.
+ filter(true);
+}
+
+
void tst_QCompleter::changingModel_data()
{
}
@@ -1381,5 +1453,80 @@ void tst_QCompleter::task247560_keyboardNavigation()
QCOMPARE(edit.text(), QString("row 3 column 1"));
}
+void tst_QCompleter::QTBUG_14292_filesystem()
+{
+ QDir tmpDir = QDir::temp();
+ qsrand(QTime::currentTime().msec());
+ QString d = "tst_QCompleter_" + QString::number(qrand());
+ QVERIFY(tmpDir.mkdir(d));
+
+#if 0
+ struct Cleanup {
+ QString dir;
+ ~Cleanup() {
+ qDebug() << dir <<
+ QFile::remove(dir); }
+ } cleanup;
+ cleanup.dir = tmpDir.absolutePath()+"/" +d;
+#endif
+
+ QVERIFY(tmpDir.cd(d));
+ QVERIFY(tmpDir.mkdir("hello"));
+ QVERIFY(tmpDir.mkdir("holla"));
+
+ QLineEdit edit;
+ QCompleter comp;
+ QFileSystemModel model;
+ model.setRootPath(tmpDir.path());
+ comp.setModel(&model);
+ edit.setCompleter(&comp);
+
+ edit.show();
+ QApplication::setActiveWindow(&edit);
+ QTest::qWaitForWindowShown(&edit);
+ QTRY_VERIFY(QApplication::activeWindow() == &edit);
+ edit.setFocus();
+ QTRY_VERIFY(edit.hasFocus());
+
+ QVERIFY(!comp.popup()->isVisible());
+ edit.setText(tmpDir.path());
+ QTest::keyClick(&edit, '/');
+ QTRY_VERIFY(comp.popup()->isVisible());
+ QCOMPARE(comp.popup()->model()->rowCount(), 2);
+ QApplication::processEvents();
+ QTest::keyClick(&edit, 'h');
+ QCOMPARE(comp.popup()->model()->rowCount(), 2);
+ QTest::keyClick(&edit, 'e');
+ QCOMPARE(comp.popup()->model()->rowCount(), 1);
+ QTest::keyClick(&edit, 'r');
+ QTRY_VERIFY(!comp.popup()->isVisible());
+ QVERIFY(tmpDir.mkdir("hero"));
+ QTRY_VERIFY(comp.popup()->isVisible());
+ QCOMPARE(comp.popup()->model()->rowCount(), 1);
+ QTest::keyClick(comp.popup(), Qt::Key_Escape);
+ QTRY_VERIFY(!comp.popup()->isVisible());
+ QVERIFY(tmpDir.mkdir("nothingThere"));
+ //there is no reason creating a file should open a popup, it did in Qt 4.7.0
+ QTest::qWait(60);
+ QVERIFY(!comp.popup()->isVisible());
+
+ QTest::keyClick(&edit, Qt::Key_Backspace);
+ QTRY_VERIFY(comp.popup()->isVisible());
+ QCOMPARE(comp.popup()->model()->rowCount(), 2);
+ QTest::keyClick(&edit, 'm');
+ QTRY_VERIFY(!comp.popup()->isVisible());
+
+ QWidget w;
+ w.show();
+ QApplication::setActiveWindow(&w);
+ QTest::qWaitForWindowShown(&w);
+ QTRY_VERIFY(!edit.hasFocus() && !comp.popup()->hasFocus());
+
+ QVERIFY(tmpDir.mkdir("hemo"));
+ //there is no reason creating a file should open a popup, it did in Qt 4.7.0
+ QTest::qWait(60);
+ QVERIFY(!comp.popup()->isVisible());
+}
+
QTEST_MAIN(tst_QCompleter)
#include "tst_qcompleter.moc"
diff --git a/tests/auto/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp b/tests/auto/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp
index 82af71f..b173046 100644
--- a/tests/auto/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp
+++ b/tests/auto/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp
@@ -61,13 +61,19 @@ private slots:
void qgraphicsgridlayout();
void addItem_data();
void addItem();
+ void alignment_data();
void alignment();
void alignment2();
void alignment2_data();
+ void columnAlignment_data();
void columnAlignment();
+ void columnCount_data();
void columnCount();
+ void columnMaximumWidth_data();
void columnMaximumWidth();
+ void columnMinimumWidth_data();
void columnMinimumWidth();
+ void columnPreferredWidth_data();
void columnPreferredWidth();
void setColumnFixedWidth();
void columnSpacing();
@@ -79,12 +85,18 @@ private slots:
void itemAt();
void removeAt();
void removeItem();
+ void rowAlignment_data();
void rowAlignment();
+ void rowCount_data();
void rowCount();
+ void rowMaximumHeight_data();
void rowMaximumHeight();
+ void rowMinimumHeight_data();
void rowMinimumHeight();
+ void rowPreferredHeight_data();
void rowPreferredHeight();
void rowSpacing();
+ void rowStretchFactor_data();
void rowStretchFactor();
void setColumnSpacing_data();
void setColumnSpacing();
@@ -99,6 +111,7 @@ private slots:
void sizeHint();
void verticalSpacing_data();
void verticalSpacing();
+ void layoutDirection_data();
void layoutDirection();
void removeLayout();
void defaultStretchFactors_data();
@@ -110,6 +123,7 @@ private slots:
void task236367_maxSizeHint();
void heightForWidth();
void widthForHeight();
+ void heightForWidthWithSpanning();
};
class RectWidget : public QGraphicsWidget
@@ -373,7 +387,7 @@ void tst_QGraphicsGridLayout::qgraphicsgridlayout()
layout.verticalSpacing();
}
-static void populateLayout(QGraphicsGridLayout *gridLayout, int width, int height)
+static void populateLayout(QGraphicsGridLayout *gridLayout, int width, int height, bool hasHeightForWidth = false)
{
for (int y = 0; y < height; ++y) {
for (int x = 0; x < width; ++x) {
@@ -382,6 +396,9 @@ static void populateLayout(QGraphicsGridLayout *gridLayout, int width, int heigh
item->setPreferredSize(25, 25);
item->setMaximumSize(50, 50);
gridLayout->addItem(item, y, x);
+ QSizePolicy policy = item->sizePolicy();
+ policy.setHeightForWidth(hasHeightForWidth);
+ item->setSizePolicy(policy);
}
}
}
@@ -398,18 +415,22 @@ static void populateLayout(QGraphicsGridLayout *gridLayout, int width, int heigh
* |xxxx|+---|---+|
* +----+----+----+
*/
-static void populateLayoutWithSpansAndHoles(QGraphicsGridLayout *gridLayout)
+static void populateLayoutWithSpansAndHoles(QGraphicsGridLayout *gridLayout, bool hasHeightForWidth = false)
{
QGraphicsWidget *item = new RectWidget();
item->setMinimumSize(10, 10);
item->setPreferredSize(25, 25);
item->setMaximumSize(50, 50);
+ QSizePolicy sizepolicy = item->sizePolicy();
+ sizepolicy.setHeightForWidth(hasHeightForWidth);
+ item->setSizePolicy(sizepolicy);
gridLayout->addItem(item, 0, 0, 1, 2);
item = new RectWidget();
item->setMinimumSize(10, 10);
item->setPreferredSize(25, 25);
item->setMaximumSize(50, 50);
+ item->setSizePolicy(sizepolicy);
gridLayout->addItem(item, 1, 1, 1, 2);
}
@@ -462,19 +483,28 @@ void tst_QGraphicsGridLayout::addItem()
delete layout;
}
+void tst_QGraphicsGridLayout::alignment_data()
+{
+ QTest::addColumn<bool>("hasHeightForWidth");
+
+ QTest::newRow("") << false;
+ QTest::newRow("hasHeightForWidth") << true;
+}
+
// public Qt::Alignment alignment(QGraphicsLayoutItem* item) const
void tst_QGraphicsGridLayout::alignment()
{
#ifdef Q_WS_MAC
QSKIP("Resizing a QGraphicsWidget to effectiveSizeHint(Qt::MaximumSize) is currently not supported on mac", SkipAll);
#endif
+ QFETCH(bool, hasHeightForWidth);
QGraphicsScene scene;
QGraphicsView view(&scene);
QGraphicsWidget *widget = new QGraphicsWidget(0, Qt::Window);
QGraphicsGridLayout *layout = new QGraphicsGridLayout();
scene.addItem(widget);
widget->setLayout(layout);
- populateLayout(layout, 3, 2);
+ populateLayout(layout, 3, 2, hasHeightForWidth);
layout->setContentsMargins(0, 0, 0, 0);
layout->setSpacing(0);
@@ -526,6 +556,14 @@ void tst_QGraphicsGridLayout::alignment()
delete widget;
}
+void tst_QGraphicsGridLayout::columnAlignment_data()
+{
+ QTest::addColumn<bool>("hasHeightForWidth");
+
+ QTest::newRow("") << false;
+ QTest::newRow("hasHeightForWidth") << true;
+}
+
// public void setColumnAlignment(int column, Qt::Alignment alignment)
// public Qt::Alignment columnAlignment(int column) const
void tst_QGraphicsGridLayout::columnAlignment()
@@ -533,13 +571,14 @@ void tst_QGraphicsGridLayout::columnAlignment()
#ifdef Q_WS_MAC
QSKIP("Resizing a QGraphicsWidget to effectiveSizeHint(Qt::MaximumSize) is currently not supported on mac", SkipAll);
#endif
+ QFETCH(bool, hasHeightForWidth);
QGraphicsScene scene;
QGraphicsView view(&scene);
QGraphicsWidget *widget = new QGraphicsWidget(0, Qt::Window);
QGraphicsGridLayout *layout = new QGraphicsGridLayout();
scene.addItem(widget);
widget->setLayout(layout);
- populateLayout(layout, 3, 2);
+ populateLayout(layout, 3, 2, hasHeightForWidth);
layout->setContentsMargins(0, 0, 0, 0);
layout->setSpacing(1);
widget->setContentsMargins(0, 0, 0, 0);
@@ -585,9 +624,17 @@ void tst_QGraphicsGridLayout::columnAlignment()
delete widget;
}
+void tst_QGraphicsGridLayout::columnCount_data()
+{
+ QTest::addColumn<bool>("hasHeightForWidth");
+
+ QTest::newRow("") << false;
+ QTest::newRow("hasHeightForWidth") << true;
+}
// public int columnCount() const
void tst_QGraphicsGridLayout::columnCount()
{
+ QFETCH(bool, hasHeightForWidth);
QGraphicsScene scene;
QGraphicsView view(&scene);
QGraphicsWidget *widget = new QGraphicsWidget(0, Qt::Window);
@@ -619,7 +666,7 @@ void tst_QGraphicsGridLayout::columnCount()
// ### Talk with Jasmin. Not sure if removeAt() should adjust columnCount().
widget->setLayout(0);
layout = new QGraphicsGridLayout();
- populateLayout(layout, 3, 2);
+ populateLayout(layout, 3, 2, hasHeightForWidth);
QCOMPARE(layout->columnCount(), 3);
layout->removeAt(5);
layout->removeAt(3);
@@ -634,16 +681,24 @@ void tst_QGraphicsGridLayout::columnCount()
delete widget;
}
+void tst_QGraphicsGridLayout::columnMaximumWidth_data()
+{
+ QTest::addColumn<bool>("hasHeightForWidth");
+
+ QTest::newRow("") << false;
+ QTest::newRow("hasHeightForWidth") << true;
+}
// public qreal columnMaximumWidth(int column) const
void tst_QGraphicsGridLayout::columnMaximumWidth()
{
+ QFETCH(bool, hasHeightForWidth);
QGraphicsScene scene;
QGraphicsView view(&scene);
QGraphicsWidget *widget = new QGraphicsWidget(0, Qt::Window);
QGraphicsGridLayout *layout = new QGraphicsGridLayout();
scene.addItem(widget);
widget->setLayout(layout);
- populateLayout(layout, 3, 2);
+ populateLayout(layout, 3, 2, hasHeightForWidth);
layout->setContentsMargins(0, 0, 0, 0);
layout->setSpacing(0);
@@ -669,16 +724,24 @@ void tst_QGraphicsGridLayout::columnMaximumWidth()
delete widget;
}
+void tst_QGraphicsGridLayout::columnMinimumWidth_data()
+{
+ QTest::addColumn<bool>("hasHeightForWidth");
+
+ QTest::newRow("") << false;
+ QTest::newRow("hasHeightForWidth") << true;
+}
// public qreal columnMinimumWidth(int column) const
void tst_QGraphicsGridLayout::columnMinimumWidth()
{
+ QFETCH(bool, hasHeightForWidth);
QGraphicsScene scene;
QGraphicsView view(&scene);
QGraphicsWidget *widget = new QGraphicsWidget(0, Qt::Window);
QGraphicsGridLayout *layout = new QGraphicsGridLayout();
scene.addItem(widget);
widget->setLayout(layout);
- populateLayout(layout, 3, 2);
+ populateLayout(layout, 3, 2, hasHeightForWidth);
layout->setContentsMargins(0, 0, 0, 0);
layout->setSpacing(0);
@@ -704,16 +767,24 @@ void tst_QGraphicsGridLayout::columnMinimumWidth()
delete widget;
}
+void tst_QGraphicsGridLayout::columnPreferredWidth_data()
+{
+ QTest::addColumn<bool>("hasHeightForWidth");
+
+ QTest::newRow("") << false;
+ QTest::newRow("hasHeightForWidth") << true;
+}
// public qreal columnPreferredWidth(int column) const
void tst_QGraphicsGridLayout::columnPreferredWidth()
{
+ QFETCH(bool, hasHeightForWidth);
QGraphicsScene scene;
QGraphicsView view(&scene);
QGraphicsWidget *widget = new QGraphicsWidget(0, Qt::Window);
QGraphicsGridLayout *layout = new QGraphicsGridLayout();
scene.addItem(widget);
widget->setLayout(layout);
- populateLayout(layout, 3, 2);
+ populateLayout(layout, 3, 2, hasHeightForWidth);
layout->setContentsMargins(0, 0, 0, 0);
layout->setSpacing(0);
@@ -1049,16 +1120,25 @@ void tst_QGraphicsGridLayout::removeItem()
QCOMPARE(l->count(), 4);
}
+void tst_QGraphicsGridLayout::rowAlignment_data()
+{
+ QTest::addColumn<bool>("hasHeightForWidth");
+
+ QTest::newRow("") << false;
+ QTest::newRow("hasHeightForWidth") << true;
+}
+
// public Qt::Alignment rowAlignment(int row) const
void tst_QGraphicsGridLayout::rowAlignment()
{
+ QFETCH(bool, hasHeightForWidth);
QGraphicsScene scene;
QGraphicsView view(&scene);
QGraphicsWidget *widget = new QGraphicsWidget(0, Qt::Window);
QGraphicsGridLayout *layout = new QGraphicsGridLayout();
scene.addItem(widget);
widget->setLayout(layout);
- populateLayout(layout, 2, 3);
+ populateLayout(layout, 2, 3, hasHeightForWidth);
layout->setContentsMargins(0, 0, 0, 0);
layout->setSpacing(1);
widget->setContentsMargins(0, 0, 0, 0);
@@ -1108,17 +1188,26 @@ void tst_QGraphicsGridLayout::rowAlignment()
delete widget;
}
+void tst_QGraphicsGridLayout::rowCount_data()
+{
+ QTest::addColumn<bool>("hasHeightForWidth");
+
+ QTest::newRow("") << false;
+ QTest::newRow("hasHeightForWidth") << true;
+}
+
// public int rowCount() const
// public int columnCount() const
void tst_QGraphicsGridLayout::rowCount()
{
+ QFETCH(bool, hasHeightForWidth);
QGraphicsScene scene;
QGraphicsView view(&scene);
QGraphicsWidget *widget = new QGraphicsWidget(0, Qt::Window);
QGraphicsGridLayout *layout = new QGraphicsGridLayout();
scene.addItem(widget);
widget->setLayout(layout);
- populateLayout(layout, 2, 3);
+ populateLayout(layout, 2, 3, hasHeightForWidth);
layout->setContentsMargins(0, 0, 0, 0);
layout->setSpacing(0);
widget->setContentsMargins(0, 0, 0, 0);
@@ -1128,23 +1217,32 @@ void tst_QGraphicsGridLayout::rowCount()
// with spans and holes...
widget->setLayout(0);
layout = new QGraphicsGridLayout();
- populateLayoutWithSpansAndHoles(layout);
+ populateLayoutWithSpansAndHoles(layout, hasHeightForWidth);
QCOMPARE(layout->rowCount(), 2);
QCOMPARE(layout->columnCount(), 3);
delete widget;
}
+void tst_QGraphicsGridLayout::rowMaximumHeight_data()
+{
+ QTest::addColumn<bool>("hasHeightForWidth");
+
+ QTest::newRow("") << false;
+ QTest::newRow("hasHeightForWidth") << true;
+}
+
// public qreal rowMaximumHeight(int row) const
void tst_QGraphicsGridLayout::rowMaximumHeight()
{
+ QFETCH(bool, hasHeightForWidth);
QGraphicsScene scene;
QGraphicsView view(&scene);
QGraphicsWidget *widget = new QGraphicsWidget(0, Qt::Window);
QGraphicsGridLayout *layout = new QGraphicsGridLayout;
scene.addItem(widget);
widget->setLayout(layout);
- populateLayout(layout, 2, 3);
+ populateLayout(layout, 2, 3, hasHeightForWidth);
layout->setContentsMargins(0, 0, 0, 0);
layout->setSpacing(0);
@@ -1170,16 +1268,24 @@ void tst_QGraphicsGridLayout::rowMaximumHeight()
delete widget;
}
+void tst_QGraphicsGridLayout::rowMinimumHeight_data()
+{
+ QTest::addColumn<bool>("hasHeightForWidth");
+
+ QTest::newRow("") << false;
+ QTest::newRow("hasHeightForWidth") << true;
+}
// public qreal rowMinimumHeight(int row) const
void tst_QGraphicsGridLayout::rowMinimumHeight()
{
+ QFETCH(bool, hasHeightForWidth);
QGraphicsScene scene;
QGraphicsView view(&scene);
QGraphicsWidget *widget = new QGraphicsWidget(0, Qt::Window);
QGraphicsGridLayout *layout = new QGraphicsGridLayout();
scene.addItem(widget);
widget->setLayout(layout);
- populateLayout(layout, 2, 3);
+ populateLayout(layout, 2, 3, hasHeightForWidth);
layout->setContentsMargins(0, 0, 0, 0);
layout->setSpacing(0);
@@ -1205,16 +1311,24 @@ void tst_QGraphicsGridLayout::rowMinimumHeight()
delete widget;
}
+void tst_QGraphicsGridLayout::rowPreferredHeight_data()
+{
+ QTest::addColumn<bool>("hasHeightForWidth");
+
+ QTest::newRow("") << false;
+ QTest::newRow("hasHeightForWidth") << true;
+}
// public qreal rowPreferredHeight(int row) const
void tst_QGraphicsGridLayout::rowPreferredHeight()
{
+ QFETCH(bool, hasHeightForWidth);
QGraphicsScene scene;
QGraphicsView view(&scene);
QGraphicsWidget *widget = new QGraphicsWidget(0, Qt::Window);
QGraphicsGridLayout *layout = new QGraphicsGridLayout();
scene.addItem(widget);
widget->setLayout(layout);
- populateLayout(layout, 2, 3);
+ populateLayout(layout, 2, 3, hasHeightForWidth);
layout->setContentsMargins(0, 0, 0, 0);
layout->setSpacing(0);
@@ -1303,16 +1417,25 @@ void tst_QGraphicsGridLayout::rowSpacing()
}
+void tst_QGraphicsGridLayout::rowStretchFactor_data()
+{
+ QTest::addColumn<bool>("hasHeightForWidth");
+
+ QTest::newRow("") << false;
+ QTest::newRow("hasHeightForWidth") << true;
+}
+
// public int rowStretchFactor(int row) const
void tst_QGraphicsGridLayout::rowStretchFactor()
{
+ QFETCH(bool, hasHeightForWidth);
QGraphicsScene scene;
QGraphicsView view(&scene);
QGraphicsWidget *widget = new QGraphicsWidget(0, Qt::Window);
QGraphicsGridLayout *layout = new QGraphicsGridLayout();
scene.addItem(widget);
widget->setLayout(layout);
- populateLayout(layout, 2, 3);
+ populateLayout(layout, 2, 3, hasHeightForWidth);
layout->setContentsMargins(0, 0, 0, 0);
layout->setSpacing(0);
@@ -1336,9 +1459,12 @@ void tst_QGraphicsGridLayout::setColumnSpacing_data()
{
QTest::addColumn<int>("column");
QTest::addColumn<qreal>("spacing");
- QTest::newRow("null") << 0 << qreal(0.0);
- QTest::newRow("10") << 0 << qreal(10.0);
+ QTest::addColumn<bool>("hasHeightForWidth");
+ QTest::newRow("null") << 0 << qreal(0.0) << false;
+ QTest::newRow("10") << 0 << qreal(10.0) << false;
+ QTest::newRow("null, hasHeightForWidth") << 0 << qreal(0.0) << true;
+ QTest::newRow("10, hasHeightForWidth") << 0 << qreal(10.0) << true;
}
// public void setColumnSpacing(int column, qreal spacing)
@@ -1346,6 +1472,7 @@ void tst_QGraphicsGridLayout::setColumnSpacing()
{
QFETCH(int, column);
QFETCH(qreal, spacing);
+ QFETCH(bool, hasHeightForWidth);
QGraphicsScene scene;
QGraphicsView view(&scene);
@@ -1353,7 +1480,7 @@ void tst_QGraphicsGridLayout::setColumnSpacing()
QGraphicsGridLayout *layout = new QGraphicsGridLayout();
scene.addItem(widget);
widget->setLayout(layout);
- populateLayout(layout, 3, 2);
+ populateLayout(layout, 3, 2, hasHeightForWidth);
layout->setSpacing(0);
layout->setContentsMargins(0, 0, 0, 0);
qreal oldSpacing = layout->columnSpacing(column);
@@ -1390,9 +1517,12 @@ void tst_QGraphicsGridLayout::setRowSpacing_data()
{
QTest::addColumn<int>("row");
QTest::addColumn<qreal>("spacing");
- QTest::newRow("null") << 0 << qreal(0.0);
- QTest::newRow("10") << 0 << qreal(10.0);
+ QTest::addColumn<bool>("hasHeightForWidth");
+ QTest::newRow("null") << 0 << qreal(0.0) << false;
+ QTest::newRow("10") << 0 << qreal(10.0) << false;
+ QTest::newRow("null, hasHeightForWidth") << 0 << qreal(0.0) << true;
+ QTest::newRow("10, hasHeightForWidth") << 0 << qreal(10.0) << true;
}
// public void setRowSpacing(int row, qreal spacing)
@@ -1400,6 +1530,7 @@ void tst_QGraphicsGridLayout::setRowSpacing()
{
QFETCH(int, row);
QFETCH(qreal, spacing);
+ QFETCH(bool, hasHeightForWidth);
QGraphicsScene scene;
QGraphicsView view(&scene);
@@ -1407,7 +1538,7 @@ void tst_QGraphicsGridLayout::setRowSpacing()
QGraphicsGridLayout *layout = new QGraphicsGridLayout();
scene.addItem(widget);
widget->setLayout(layout);
- populateLayout(layout, 3, 2);
+ populateLayout(layout, 3, 2, hasHeightForWidth);
layout->setSpacing(0);
layout->setContentsMargins(0, 0, 0, 0);
qreal oldSpacing = layout->rowSpacing(row);
@@ -1421,21 +1552,25 @@ void tst_QGraphicsGridLayout::setRowSpacing()
void tst_QGraphicsGridLayout::setSpacing_data()
{
QTest::addColumn<qreal>("spacing");
- QTest::newRow("zero") << qreal(0.0);
- QTest::newRow("17") << qreal(17.0);
+ QTest::addColumn<bool>("hasHeightForWidth");
+ QTest::newRow("zero") << qreal(0.0) << false;
+ QTest::newRow("17") << qreal(17.0) << false;
+ QTest::newRow("zero, hasHeightForWidth") << qreal(0.0) << true;
+ QTest::newRow("17, hasHeightForWidth") << qreal(17.0) << true;
}
// public void setSpacing(qreal spacing)
void tst_QGraphicsGridLayout::setSpacing()
{
QFETCH(qreal, spacing);
+ QFETCH(bool, hasHeightForWidth);
QGraphicsScene scene;
QGraphicsView view(&scene);
QGraphicsWidget *widget = new QGraphicsWidget(0, Qt::Window);
QGraphicsGridLayout *layout = new QGraphicsGridLayout();
scene.addItem(widget);
widget->setLayout(layout);
- populateLayout(layout, 3, 2);
+ populateLayout(layout, 3, 2, hasHeightForWidth);
layout->setContentsMargins(0, 0, 0, 0);
QSizeF sh = layout->sizeHint(Qt::PreferredSize, QSizeF());
qreal oldVSpacing = layout->verticalSpacing();
@@ -1566,8 +1701,18 @@ void tst_QGraphicsGridLayout::verticalSpacing()
delete widget;
}
+void tst_QGraphicsGridLayout::layoutDirection_data()
+{
+ QTest::addColumn<bool>("hasHeightForWidth");
+
+ QTest::newRow("") << false;
+ QTest::newRow("hasHeightForWidth") << true;
+}
+
void tst_QGraphicsGridLayout::layoutDirection()
{
+ QFETCH(bool, hasHeightForWidth);
+
QGraphicsScene scene;
QGraphicsView view(&scene);
@@ -1590,6 +1735,12 @@ void tst_QGraphicsGridLayout::layoutDirection()
w4->setMinimumSize(30, 20);
layout->addItem(w4, 1, 1);
+ QSizePolicy policy = w1->sizePolicy();
+ policy.setHeightForWidth(hasHeightForWidth);
+ w1->setSizePolicy(policy);
+ w2->setSizePolicy(policy);
+ w4->setSizePolicy(policy);
+
layout->setAlignment(w2, Qt::AlignRight);
layout->setAlignment(w3, Qt::AlignLeft);
@@ -2268,9 +2419,9 @@ void tst_QGraphicsGridLayout::geometries_data()
.preferredSize(QSizeF(50,10))
.maxSize(QSizeF(100, 100))
<< ItemDesc(1,1)
- .minSize(QSizeF(40,40))
- .preferredSize(QSizeF(50,400))
- .maxSize(QSizeF(500, 500))
+ .minSize(QSizeF(40,-1))
+ .preferredSize(QSizeF(50,-1))
+ .maxSize(QSizeF(500, -1))
.dynamicConstraint(hfw1, Qt::Vertical)
)
<< QSizeF(100, 401)
@@ -2278,8 +2429,7 @@ void tst_QGraphicsGridLayout::geometries_data()
<< QRectF(0, 0, 50, 1) << QRectF(50, 0, 50, 1)
<< QRectF(0, 1, 50,100) << QRectF(50, 1, 50,400)
);
-
-
+#if 0
QTest::newRow("hfw-100x408") << (ItemList()
<< ItemDesc(0,0)
.minSize(QSizeF(1,1))
@@ -2304,7 +2454,7 @@ void tst_QGraphicsGridLayout::geometries_data()
<< QRectF(0, 0, 50, 8) << QRectF(50, 0, 50, 8)
<< QRectF(0, 8, 50,100) << QRectF(50, 8, 50,400)
);
-
+#endif
QTest::newRow("hfw-h410") << (ItemList()
<< ItemDesc(0,0)
.minSize(QSizeF(1,1))
@@ -2329,7 +2479,7 @@ void tst_QGraphicsGridLayout::geometries_data()
<< QRectF(0, 0, 50,10) << QRectF(50, 0, 50,10)
<< QRectF(0, 10, 50,100) << QRectF(50, 10, 50,400)
);
-
+#if 0
QTest::newRow("hfw-100x470") << (ItemList()
<< ItemDesc(0,0)
.minSize(QSizeF(1,1))
@@ -2565,6 +2715,7 @@ void tst_QGraphicsGridLayout::geometries_data()
<< QRectF(0, 0, 80, 50) << QRectF( 80, 0, 80, 50)
<< QRectF(0, 50, 80, 50) << QRectF( 80, 50, 50, 50)
);
+#endif
}
@@ -2764,11 +2915,13 @@ void tst_QGraphicsGridLayout::heightForWidth()
void tst_QGraphicsGridLayout::widthForHeight()
{
+#if 0
QGraphicsWidget *widget = new QGraphicsWidget;
QGraphicsGridLayout *layout = new QGraphicsGridLayout;
widget->setLayout(layout);
layout->setContentsMargins(0, 0, 0, 0);
layout->setSpacing(0);
+
RectWidget *w00 = new RectWidget;
w00->setMinimumSize(1, 1);
w00->setPreferredSize(50, 50);
@@ -2835,8 +2988,43 @@ void tst_QGraphicsGridLayout::widthForHeight()
QCOMPARE(layout->effectiveSizeHint(Qt::MinimumSize, QSizeF(-1, 300)), QSizeF(1 + 200, 300));
QCOMPARE(layout->effectiveSizeHint(Qt::PreferredSize, QSizeF(-1, 300)), QSizeF(50 + 200, 300));
QCOMPARE(layout->effectiveSizeHint(Qt::MaximumSize, QSizeF(-1, 300)), QSizeF(100 + 200, 300));
+#endif
+}
+
+void tst_QGraphicsGridLayout::heightForWidthWithSpanning()
+{
+ QGraphicsWidget *widget = new QGraphicsWidget;
+ QGraphicsGridLayout *layout = new QGraphicsGridLayout;
+ widget->setLayout(layout);
+ layout->setContentsMargins(0, 0, 0, 0);
+ layout->setSpacing(0);
+ RectWidget *w = new RectWidget;
+ w->setSizeHint(Qt::MinimumSize, QSizeF(1,1));
+ w->setSizeHint(Qt::MaximumSize, QSizeF(30000,30000));
+ w->setConstraintFunction(hfw);
+ QSizePolicy sp(QSizePolicy::Preferred, QSizePolicy::Preferred);
+ sp.setHeightForWidth(true);
+ w->setSizePolicy(sp);
+ layout->addItem(w, 0,0,2,2);
+
+ QCOMPARE(layout->effectiveSizeHint(Qt::MinimumSize, QSizeF(-1, -1)), QSizeF(1, 100));
+ QCOMPARE(layout->effectiveSizeHint(Qt::PreferredSize, QSizeF(-1, -1)), QSizeF(200, 100));
+ QCOMPARE(layout->effectiveSizeHint(Qt::MaximumSize, QSizeF(-1, -1)), QSizeF(QWIDGETSIZE_MAX, QWIDGETSIZE_MAX));
+
+ QCOMPARE(layout->effectiveSizeHint(Qt::MinimumSize, QSizeF(200, -1)), QSizeF(200, 100));
+ QCOMPARE(layout->effectiveSizeHint(Qt::PreferredSize, QSizeF(200, -1)), QSizeF(200, 100));
+ QCOMPARE(layout->effectiveSizeHint(Qt::MaximumSize, QSizeF(200, -1)), QSizeF(200, QWIDGETSIZE_MAX));
+
+ QCOMPARE(layout->effectiveSizeHint(Qt::MinimumSize, QSizeF(2, -1)), QSizeF(2, 10000));
+ QCOMPARE(layout->effectiveSizeHint(Qt::PreferredSize, QSizeF(2, -1)), QSizeF(2, 10000));
+ QCOMPARE(layout->effectiveSizeHint(Qt::MaximumSize, QSizeF(2, -1)), QSizeF(2, QWIDGETSIZE_MAX));
+
+ QCOMPARE(layout->effectiveSizeHint(Qt::MinimumSize, QSizeF(200, -1)), QSizeF(200, 100));
+ QCOMPARE(layout->effectiveSizeHint(Qt::PreferredSize, QSizeF(200, -1)), QSizeF(200, 100));
+ QCOMPARE(layout->effectiveSizeHint(Qt::MaximumSize, QSizeF(200, -1)), QSizeF(200, QWIDGETSIZE_MAX));
}
+
QTEST_MAIN(tst_QGraphicsGridLayout)
#include "tst_qgraphicsgridlayout.moc"
diff --git a/tests/auto/qgraphicsitem/tst_qgraphicsitem.cpp b/tests/auto/qgraphicsitem/tst_qgraphicsitem.cpp
index 2ddccd2..a3bd0b0 100644
--- a/tests/auto/qgraphicsitem/tst_qgraphicsitem.cpp
+++ b/tests/auto/qgraphicsitem/tst_qgraphicsitem.cpp
@@ -466,6 +466,7 @@ private slots:
void doNotMarkFullUpdateIfNotInScene();
void itemDiesDuringDraggingOperation();
void QTBUG_12112_focusItem();
+ void QTBUG_13473_sceneposchange();
private:
QList<QGraphicsItem *> paintedItems;
@@ -9067,6 +9068,7 @@ void tst_QGraphicsItem::focusScope()
QVERIFY(!scope2->hasFocus());
QVERIFY(scope1->hasFocus());
scope2->setFocus();
+ QVERIFY(scope2->hasFocus());
scope3->setFocus();
QVERIFY(scope3->hasFocus());
@@ -11018,5 +11020,31 @@ void tst_QGraphicsItem::QTBUG_12112_focusItem()
QVERIFY(item2->focusItem());
}
+void tst_QGraphicsItem::QTBUG_13473_sceneposchange()
+{
+ ScenePosChangeTester* parent = new ScenePosChangeTester;
+ ScenePosChangeTester* child = new ScenePosChangeTester(parent);
+
+ // parent's disabled ItemSendsGeometryChanges flag must not affect
+ // child's scene pos change notifications
+ parent->setFlag(QGraphicsItem::ItemSendsGeometryChanges, false);
+ child->setFlag(QGraphicsItem::ItemSendsScenePositionChanges, true);
+
+ QGraphicsScene scene;
+ scene.addItem(parent);
+
+ // ignore uninteresting changes
+ parent->clear();
+ child->clear();
+
+ // move
+ parent->moveBy(1.0, 1.0);
+ QCOMPARE(child->changes.count(QGraphicsItem::ItemScenePositionHasChanged), 1);
+
+ // transform
+ parent->setTransform(QTransform::fromScale(0.5, 0.5));
+ QCOMPARE(child->changes.count(QGraphicsItem::ItemScenePositionHasChanged), 2);
+}
+
QTEST_MAIN(tst_QGraphicsItem)
#include "tst_qgraphicsitem.moc"
diff --git a/tests/auto/qgraphicsview/tst_qgraphicsview.cpp b/tests/auto/qgraphicsview/tst_qgraphicsview.cpp
index af02c55..a53f04d 100644
--- a/tests/auto/qgraphicsview/tst_qgraphicsview.cpp
+++ b/tests/auto/qgraphicsview/tst_qgraphicsview.cpp
@@ -244,6 +244,7 @@ private slots:
void QTBUG_4151_clipAndIgnore();
void QTBUG_5859_exposedRect();
void QTBUG_7438_cursor();
+ void hoverLeave();
public slots:
void dummySlot() {}
@@ -4394,5 +4395,59 @@ void tst_QGraphicsView::QTBUG_7438_cursor()
#endif
}
+class GraphicsItemWithHover : public QGraphicsRectItem
+{
+public:
+ GraphicsItemWithHover()
+ : receivedEnterEvent(false), receivedLeaveEvent(false),
+ enterWidget(0), leaveWidget(0)
+ {
+ setRect(0, 0, 100, 100);
+ setAcceptHoverEvents(true);
+ }
+
+ bool sceneEvent(QEvent *event)
+ {
+ if (event->type() == QEvent::GraphicsSceneHoverEnter) {
+ receivedEnterEvent = true;
+ enterWidget = static_cast<QGraphicsSceneHoverEvent *>(event)->widget();
+ } else if (event->type() == QEvent::GraphicsSceneHoverLeave) {
+ receivedLeaveEvent = true;
+ leaveWidget = static_cast<QGraphicsSceneHoverEvent *>(event)->widget();
+ }
+ return QGraphicsRectItem::sceneEvent(event);
+ }
+
+ bool receivedEnterEvent;
+ bool receivedLeaveEvent;
+ QWidget *enterWidget;
+ QWidget *leaveWidget;
+};
+
+void tst_QGraphicsView::hoverLeave()
+{
+ QGraphicsScene scene;
+ QGraphicsView view(&scene);
+ GraphicsItemWithHover *item = new GraphicsItemWithHover;
+ scene.addItem(item);
+
+ // move the cursor out of the way
+ QCursor::setPos(1,1);
+
+ view.show();
+ QTest::qWaitForWindowShown(&view);
+
+ QPoint pos = view.viewport()->mapToGlobal(view.mapFromScene(item->mapToScene(10, 10)));
+ QCursor::setPos(pos);
+ QTest::qWait(200);
+ QVERIFY(item->receivedEnterEvent);
+ QCOMPARE(item->enterWidget, view.viewport());
+
+ QCursor::setPos(0,0);
+ QTest::qWait(200);
+ QVERIFY(item->receivedLeaveEvent);
+ QCOMPARE(item->leaveWidget, view.viewport());
+}
+
QTEST_MAIN(tst_QGraphicsView)
#include "tst_qgraphicsview.moc"
diff --git a/tests/auto/qitemselectionmodel/tst_qitemselectionmodel.cpp b/tests/auto/qitemselectionmodel/tst_qitemselectionmodel.cpp
index 69b1390..865243b 100644
--- a/tests/auto/qitemselectionmodel/tst_qitemselectionmodel.cpp
+++ b/tests/auto/qitemselectionmodel/tst_qitemselectionmodel.cpp
@@ -100,6 +100,8 @@ private slots:
void testDifferentModels();
+ void testValidRangesInSelectionsAfterReset();
+
private:
QAbstractItemModel *model;
QItemSelectionModel *selection;
@@ -2589,5 +2591,69 @@ void tst_QItemSelectionModel::testDifferentModels()
QVERIFY(newSelection.isEmpty());
}
+class SelectionObserver : public QObject
+{
+ Q_OBJECT
+public:
+ SelectionObserver(QAbstractItemModel *model, QObject *parent = 0)
+ : QObject(parent), m_model(model), m_selectionModel(0)
+ {
+ connect(model, SIGNAL(modelReset()), SLOT(modelReset()));
+ }
+
+ void setSelectionModel(QItemSelectionModel *selectionModel)
+ {
+ m_selectionModel = selectionModel;
+ connect(m_selectionModel, SIGNAL(selectionChanged(QItemSelection,QItemSelection)), SLOT(selectionChanged(QItemSelection,QItemSelection)));
+ }
+
+ private slots:
+ void modelReset()
+ {
+ const QModelIndex idx = m_model->index(2, 0);
+ QVERIFY(idx.isValid());
+ m_selectionModel->select(QItemSelection(idx, idx), QItemSelectionModel::Clear);
+ }
+
+ void selectionChanged(const QItemSelection &selected, const QItemSelection &deselected)
+ {
+ foreach(const QItemSelectionRange &range, selected)
+ QVERIFY(range.isValid());
+ foreach(const QItemSelectionRange &range, deselected)
+ QVERIFY(range.isValid());
+ }
+
+private:
+ QAbstractItemModel *m_model;
+ QItemSelectionModel *m_selectionModel;
+};
+
+void tst_QItemSelectionModel::testValidRangesInSelectionsAfterReset()
+{
+ QStringListModel model;
+
+ QStringList strings;
+ strings << "one"
+ << "two"
+ << "three"
+ << "four"
+ << "five";
+
+ model.setStringList(strings);
+
+ SelectionObserver observer(&model);
+
+ QItemSelectionModel selectionModel(&model);
+
+ selectionModel.select(QItemSelection(model.index(1, 0), model.index(3, 0)), QItemSelectionModel::Select);
+
+ // Cause d->ranges to contain something.
+ model.insertRows(2, 1);
+
+ observer.setSelectionModel(&selectionModel);
+
+ model.setStringList(strings);
+}
+
QTEST_MAIN(tst_QItemSelectionModel)
#include "tst_qitemselectionmodel.moc"
diff --git a/tests/auto/qmainwindow/tst_qmainwindow.cpp b/tests/auto/qmainwindow/tst_qmainwindow.cpp
index e427863..c82c566 100644
--- a/tests/auto/qmainwindow/tst_qmainwindow.cpp
+++ b/tests/auto/qmainwindow/tst_qmainwindow.cpp
@@ -701,10 +701,12 @@ void tst_QMainWindow::statusBar()
// deleting the status bar should remove it from the main window
QMainWindow mw;
QStatusBar *sb = mw.statusBar();
- int indexOfSb = mw.layout()->indexOf(sb);
+ QMainWindowLayout *l = qFindChild<QMainWindowLayout *>(&mw);
+ QVERIFY(l);
+ int indexOfSb = l->indexOf(sb);
QVERIFY(indexOfSb != -1);
delete sb;
- indexOfSb = mw.layout()->indexOf(sb);
+ indexOfSb = l->indexOf(sb);
QVERIFY(indexOfSb == -1);
}
}
diff --git a/tests/auto/qnetworkreply/tst_qnetworkreply.cpp b/tests/auto/qnetworkreply/tst_qnetworkreply.cpp
index f7f0519..29788a3 100644
--- a/tests/auto/qnetworkreply/tst_qnetworkreply.cpp
+++ b/tests/auto/qnetworkreply/tst_qnetworkreply.cpp
@@ -299,6 +299,8 @@ private Q_SLOTS:
void ioGetFromHttpBrokenChunkedEncoding();
void qtbug12908compressedHttpReply();
+ void getFromUnreachableIp();
+
// NOTE: This test must be last!
void parentingRepliesToTheApp();
};
@@ -4573,6 +4575,20 @@ void tst_QNetworkReply::qtbug12908compressedHttpReply()
QCOMPARE(reply->error(), QNetworkReply::NoError);
}
+void tst_QNetworkReply::getFromUnreachableIp()
+{
+ QNetworkAccessManager manager;
+
+ QNetworkRequest request(QUrl("http://255.255.255.255/42/23/narf/narf/narf"));
+ QNetworkReplyPtr reply = manager.get(request);
+
+ connect(reply, SIGNAL(finished()), &QTestEventLoop::instance(), SLOT(exitLoop()));
+ QTestEventLoop::instance().enterLoop(5);
+ QVERIFY(!QTestEventLoop::instance().timeout());
+
+ QVERIFY(reply->error() != QNetworkReply::NoError);
+}
+
// NOTE: This test must be last testcase in tst_qnetworkreply!
void tst_QNetworkReply::parentingRepliesToTheApp()
{
diff --git a/tests/auto/qstring/tst_qstring.cpp b/tests/auto/qstring/tst_qstring.cpp
index af6b371..003332c 100644
--- a/tests/auto/qstring/tst_qstring.cpp
+++ b/tests/auto/qstring/tst_qstring.cpp
@@ -80,6 +80,7 @@ private slots:
void check_QTextStream();
void check_QDataStream();
void fromRawData();
+ void setRawData();
void endsWith();
void startsWith();
void setNum();
@@ -3077,7 +3078,9 @@ void tst_QString::fromRawData()
{
const QChar ptr[] = { 0x1234, 0x0000 };
QString cstr = QString::fromRawData(ptr, 1);
+ QVERIFY(cstr.isDetached());
QVERIFY(cstr.constData() == ptr);
+ QVERIFY(cstr == QString(ptr, 1));
cstr.squeeze();
QVERIFY(cstr.constData() == ptr);
cstr.detach();
@@ -3088,6 +3091,41 @@ void tst_QString::fromRawData()
QVERIFY(cstr.constData()[1] == QChar(0x0000));
}
+void tst_QString::setRawData()
+{
+ const QChar ptr[] = { 0x1234, 0x0000 };
+ const QChar ptr2[] = { 0x4321, 0x0000 };
+ QString cstr;
+
+ // This just tests the fromRawData() fallback
+ QVERIFY(!cstr.isDetached());
+ cstr.setRawData(ptr, 1);
+ QVERIFY(cstr.isDetached());
+ QVERIFY(cstr.constData() == ptr);
+ QVERIFY(cstr == QString(ptr, 1));
+
+ // This actually tests the recycling of the shared data object
+ QString::DataPtr csd = cstr.data_ptr();
+ cstr.setRawData(ptr2, 1);
+ QVERIFY(cstr.isDetached());
+ QVERIFY(cstr.constData() == ptr2);
+ QVERIFY(cstr == QString(ptr2, 1));
+ QVERIFY(cstr.data_ptr() == csd);
+
+ // This tests the discarding of the shared data object
+ cstr = "foo";
+ QVERIFY(cstr.isDetached());
+ QVERIFY(cstr.constData() != ptr2);
+
+ // Another test of the fallback
+ csd = cstr.data_ptr();
+ cstr.setRawData(ptr2, 1);
+ QVERIFY(cstr.isDetached());
+ QVERIFY(cstr.constData() == ptr2);
+ QVERIFY(cstr == QString(ptr2, 1));
+ QVERIFY(cstr.data_ptr() != csd);
+}
+
void tst_QString::fromStdString()
{
#ifdef Q_CC_HPACC
diff --git a/tests/auto/qtipc/qsharedmemory/tst_qsharedmemory.cpp b/tests/auto/qtipc/qsharedmemory/tst_qsharedmemory.cpp
index dc071ab..18a0cb0 100644
--- a/tests/auto/qtipc/qsharedmemory/tst_qsharedmemory.cpp
+++ b/tests/auto/qtipc/qsharedmemory/tst_qsharedmemory.cpp
@@ -107,6 +107,10 @@ private slots:
void useTooMuchMemory();
void attachTooMuch();
+ // unique keys
+ void uniqueKey_data();
+ void uniqueKey();
+
protected:
int remove(const QString &key);
@@ -795,6 +799,35 @@ void tst_QSharedMemory::simpleProcessProducerConsumer()
QCOMPARE(failedProcesses, (unsigned int)(0));
}
+void tst_QSharedMemory::uniqueKey_data()
+{
+ QTest::addColumn<QString>("key1");
+ QTest::addColumn<QString>("key2");
+
+ QTest::newRow("null == null") << QString() << QString();
+ QTest::newRow("key == key") << QString("key") << QString("key");
+ QTest::newRow("key1 == key1") << QString("key1") << QString("key1");
+ QTest::newRow("key != key1") << QString("key") << QString("key1");
+ QTest::newRow("ke1y != key1") << QString("ke1y") << QString("key1");
+ QTest::newRow("key1 != key2") << QString("key1") << QString("key2");
+}
+
+void tst_QSharedMemory::uniqueKey()
+{
+ QFETCH(QString, key1);
+ QFETCH(QString, key2);
+
+ QSharedMemory sm1(key1);
+ QSharedMemory sm2(key2);
+
+ bool setEqual = (key1 == key2);
+ bool keyEqual = (sm1.key() == sm2.key());
+ bool nativeEqual = (sm1.nativeKey() == sm2.nativeKey());
+
+ QCOMPARE(keyEqual, setEqual);
+ QCOMPARE(nativeEqual, setEqual);
+}
+
QTEST_MAIN(tst_QSharedMemory)
#include "tst_qsharedmemory.moc"
diff --git a/tests/auto/uic/baseline/gridalignment.ui b/tests/auto/uic/baseline/gridalignment.ui
new file mode 100644
index 0000000..11c28b1
--- /dev/null
+++ b/tests/auto/uic/baseline/gridalignment.ui
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>Form</class>
+ <widget class="QWidget" name="Form">
+ <property name="geometry">
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>279</width>
+ <height>163</height>
+ </rect>
+ </property>
+ <property name="windowTitle">
+ <string>Form</string>
+ </property>
+ <layout class="QGridLayout" name="gridLayout">
+ <item row="0" column="0" alignment="Qt::AlignLeft">
+ <widget class="QPushButton" name="pushButton">
+ <property name="text">
+ <string>Left</string>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="1" alignment="Qt::AlignTop">
+ <widget class="QPushButton" name="pushButton_3">
+ <property name="text">
+ <string>Top</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="0" alignment="Qt::AlignRight">
+ <widget class="QPushButton" name="pushButton_2">
+ <property name="text">
+ <string>Right</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="1" alignment="Qt::AlignBottom">
+ <widget class="QPushButton" name="pushButton_4">
+ <property name="text">
+ <string>Bottom</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ <resources/>
+ <connections/>
+</ui>
diff --git a/tests/auto/uic/baseline/gridalignment.ui.h b/tests/auto/uic/baseline/gridalignment.ui.h
new file mode 100644
index 0000000..8386190
--- /dev/null
+++ b/tests/auto/uic/baseline/gridalignment.ui.h
@@ -0,0 +1,83 @@
+/********************************************************************************
+** Form generated from reading UI file 'gridalignment.ui'
+**
+** Created: Fri Oct 22 14:33:59 2010
+** by: Qt User Interface Compiler version 4.8.0
+**
+** WARNING! All changes made in this file will be lost when recompiling UI file!
+********************************************************************************/
+
+#ifndef GRIDALIGNMENT_H
+#define GRIDALIGNMENT_H
+
+#include <QtCore/QVariant>
+#include <QtGui/QAction>
+#include <QtGui/QApplication>
+#include <QtGui/QButtonGroup>
+#include <QtGui/QGridLayout>
+#include <QtGui/QHeaderView>
+#include <QtGui/QPushButton>
+#include <QtGui/QWidget>
+
+QT_BEGIN_NAMESPACE
+
+class Ui_Form
+{
+public:
+ QGridLayout *gridLayout;
+ QPushButton *pushButton;
+ QPushButton *pushButton_3;
+ QPushButton *pushButton_2;
+ QPushButton *pushButton_4;
+
+ void setupUi(QWidget *Form)
+ {
+ if (Form->objectName().isEmpty())
+ Form->setObjectName(QString::fromUtf8("Form"));
+ Form->resize(279, 163);
+ gridLayout = new QGridLayout(Form);
+ gridLayout->setObjectName(QString::fromUtf8("gridLayout"));
+ pushButton = new QPushButton(Form);
+ pushButton->setObjectName(QString::fromUtf8("pushButton"));
+
+ gridLayout->addWidget(pushButton, 0, 0, 1, 1, Qt::AlignLeft);
+
+ pushButton_3 = new QPushButton(Form);
+ pushButton_3->setObjectName(QString::fromUtf8("pushButton_3"));
+
+ gridLayout->addWidget(pushButton_3, 0, 1, 1, 1, Qt::AlignTop);
+
+ pushButton_2 = new QPushButton(Form);
+ pushButton_2->setObjectName(QString::fromUtf8("pushButton_2"));
+
+ gridLayout->addWidget(pushButton_2, 1, 0, 1, 1, Qt::AlignRight);
+
+ pushButton_4 = new QPushButton(Form);
+ pushButton_4->setObjectName(QString::fromUtf8("pushButton_4"));
+
+ gridLayout->addWidget(pushButton_4, 1, 1, 1, 1, Qt::AlignBottom);
+
+
+ retranslateUi(Form);
+
+ QMetaObject::connectSlotsByName(Form);
+ } // setupUi
+
+ void retranslateUi(QWidget *Form)
+ {
+ Form->setWindowTitle(QApplication::translate("Form", "Form", 0, QApplication::UnicodeUTF8));
+ pushButton->setText(QApplication::translate("Form", "Left", 0, QApplication::UnicodeUTF8));
+ pushButton_3->setText(QApplication::translate("Form", "Top", 0, QApplication::UnicodeUTF8));
+ pushButton_2->setText(QApplication::translate("Form", "Right", 0, QApplication::UnicodeUTF8));
+ pushButton_4->setText(QApplication::translate("Form", "Bottom", 0, QApplication::UnicodeUTF8));
+ } // retranslateUi
+
+};
+
+namespace Ui {
+ class Form: public Ui_Form {};
+} // namespace Ui
+
+QT_END_NAMESPACE
+
+#endif // GRIDALIGNMENT_H
diff --git a/tests/benchmarks/declarative/creation/tst_creation.cpp b/tests/benchmarks/declarative/creation/tst_creation.cpp
index 6bf7943..7026c40 100644
--- a/tests/benchmarks/declarative/creation/tst_creation.cpp
+++ b/tests/benchmarks/declarative/creation/tst_creation.cpp
@@ -243,7 +243,7 @@ void tst_creation::qobject_alloc()
}
}
-struct QDeclarativeGraphics_DerivedObject : public QObject
+struct QDeclarativeGraphics_Derived : public QObject
{
void setParent_noEvent(QObject *parent) {
bool sce = d_ptr->sendChildEvents;
@@ -255,7 +255,7 @@ struct QDeclarativeGraphics_DerivedObject : public QObject
inline void QDeclarativeGraphics_setParent_noEvent(QObject *object, QObject *parent)
{
- static_cast<QDeclarativeGraphics_DerivedObject *>(object)->setParent_noEvent(parent);
+ static_cast<QDeclarativeGraphics_Derived *>(object)->setParent_noEvent(parent);
}
void tst_creation::itemtree_notree_cpp()
diff --git a/tests/benchmarks/declarative/qmltime/qmltime.cpp b/tests/benchmarks/declarative/qmltime/qmltime.cpp
index e1b73ca..f0a24f6 100644
--- a/tests/benchmarks/declarative/qmltime/qmltime.cpp
+++ b/tests/benchmarks/declarative/qmltime/qmltime.cpp
@@ -148,7 +148,68 @@ void Timer::runTest(QDeclarativeContext *context, uint iterations)
void usage(const char *name)
{
- qWarning("Usage: %s [-iterations <count>] [-parent] <qml file>", name);
+ qWarning("Usage: %s [-iterations <count>] [-parent] <qml file>\n", name);
+
+ qWarning("qmltime is a tool for benchmarking the runtime cost of instantiating\n"
+ "a QML component. It is typically run as follows:\n"
+ "\n"
+ "%s path/to/benchmark.qml\n"
+ "\n"
+ "If the -parent option is specified, the component being measured will also\n"
+ "be parented to an item already in the scene.\n"
+ "\n"
+ "If the -iterations option is specified, the benchmark will run the specified\n"
+ "number of iterations. If -iterations is not specified, 1024 iterations\n"
+ "are performed.\n"
+ "\n"
+ "qmltime expects the file to be benchmarked to contain a certain structure.\n"
+ "Specifically, it requires the presence of a QmlTime.Timer element. For example,\n"
+ "say we wanted to benchmark the following list delegate:\n"
+ "\n"
+ "Rectangle {\n"
+ " color: \"green\"\n"
+ " width: 400; height: 100\n"
+ " Text {\n"
+ " anchors.centerIn: parent\n"
+ " text: name\n"
+ " }\n"
+ "}\n"
+ "\n"
+ "we would create a benchmark file that looks like this:\n"
+ "\n"
+ "import QtQuick 1.0\n"
+ "import QmlTime 1.0 as QmlTime\n"
+ "\n"
+ "Item {\n"
+ "\n"
+ " property string name: \"Bob Smith\"\n"
+ "\n"
+ " QmlTime.Timer {\n"
+ " component: Rectangle {\n"
+ " color: \"green\"\n"
+ " width: 400; height: 100\n"
+ " Text {\n"
+ " anchors.centerIn: parent\n"
+ " text: name\n"
+ " }\n"
+ " }\n"
+ " }\n"
+ "}\n"
+ "\n"
+ "The outer Item functions as a dummy data provider for any additional\n"
+ "data required by the bindings in the component being benchmarked (in the\n"
+ "example above we provide a \"name\" property).\n"
+ "\n"
+ "When started, the component is instantiated once before running\n"
+ "the benchmark, which means that the reported time does not include\n"
+ "compile time (as the results of compilation are cached internally).\n"
+ "In this sense the times reported by qmltime best correspond to the\n"
+ "costs associated with delegate creation in the view classes, where the\n"
+ "same delegate is instantiated over and over. Conversely, it is not a\n"
+ "good approximation for e.g. Loader, which typically only instantiates\n"
+ "an element once (and so for Loader the compile time is very relevant\n"
+ "to the overall cost).", name);
+
exit(-1);
}
@@ -178,6 +239,8 @@ int main(int argc, char ** argv)
}
} else if (arg == "-parent") {
willParent = true;
+ } else if (arg == "-help") {
+ usage(argv[0]);
} else {
filename = QLatin1String(argv[ii]);
}
diff --git a/tests/manual/bearerex/datatransferer.cpp b/tests/manual/bearerex/datatransferer.cpp
index c3c13a8..c449bb1 100644
--- a/tests/manual/bearerex/datatransferer.cpp
+++ b/tests/manual/bearerex/datatransferer.cpp
@@ -121,7 +121,7 @@ void DataTransfererQTcp::readyRead()
qDebug() << "BearerEx DataTransferQTcp data received: " << data;
m_dataTransferOngoing = false;
- // m_qsocket.error() returns uninitialized value in case no error has occured,
+ // m_qsocket.error() returns uninitialized value in case no error has occurred,
// so emit '0'
emit finished(0, bytesAvailable, "QAbstractSocket::SocketError");
}
diff --git a/tests/manual/qtouchevent/multitouch.pro b/tests/manual/qtouchevent/qtouchevent.pro
index de1ee06..de1ee06 100644
--- a/tests/manual/qtouchevent/multitouch.pro
+++ b/tests/manual/qtouchevent/qtouchevent.pro