diff options
author | Bea Lam <bea.lam@nokia.com> | 2009-11-13 06:20:37 (GMT) |
---|---|---|
committer | Bea Lam <bea.lam@nokia.com> | 2009-11-13 06:20:37 (GMT) |
commit | a69086dd550e97957d985b5ec352f256bb8ddc29 (patch) | |
tree | ddbda4ab4449074c38d82754fc8d4a99a12d1110 /tests | |
parent | ec7590bf1b7120dd6948766280917a3db555d97f (diff) | |
parent | 7a05add9235a76f5a3fb721b574c3f41af32ea1f (diff) | |
download | Qt-a69086dd550e97957d985b5ec352f256bb8ddc29.zip Qt-a69086dd550e97957d985b5ec352f256bb8ddc29.tar.gz Qt-a69086dd550e97957d985b5ec352f256bb8ddc29.tar.bz2 |
Merge branch 'kinetic-declarativeui' of scm.dev.nokia.troll.no:qt/kinetic into kinetic-declarativeui
Diffstat (limited to 'tests')
319 files changed, 39486 insertions, 1401 deletions
diff --git a/tests/arthur/common/paintcommands.cpp b/tests/arthur/common/paintcommands.cpp index 44deb0e..feabaed 100644 --- a/tests/arthur/common/paintcommands.cpp +++ b/tests/arthur/common/paintcommands.cpp @@ -587,10 +587,10 @@ void PaintCommands::staticInit() "^image_setColor\\s+([\\w.:\\/]*)\\s+([0-9]*)\\s+#([0-9]*)$", "image_setColor <imageName> <index> <color>", "image_setColor myImage 0 black"); - DECL_PAINTCOMMAND("image_setNumColors", command_image_setNumColors, - "^image_setNumColors\\s+([\\w.:\\/]*)\\s+([0-9]*)$", - "image_setNumColors <imageName> <nbColors>", - "image_setNumColors myImage 128"); + DECL_PAINTCOMMAND("image_setColorCount", command_image_setColorCount, + "^image_setColorCount\\s+([\\w.:\\/]*)\\s+([0-9]*)$", + "image_setColorCount <imageName> <nbColors>", + "image_setColorCount myImage 128"); DECL_PAINTCOMMANDSECTION("transformations"); DECL_PAINTCOMMAND("resetMatrix", command_resetMatrix, @@ -2245,7 +2245,7 @@ void PaintCommands::command_image_load(QRegExp re) } /***************************************************************************************************/ -void PaintCommands::command_image_setNumColors(QRegExp re) +void PaintCommands::command_image_setColorCount(QRegExp re) { QStringList caps = re.capturedTexts(); @@ -2253,10 +2253,10 @@ void PaintCommands::command_image_setNumColors(QRegExp re) int count = convertToInt(caps.at(2)); if (m_verboseMode) - printf(" -(lance) image_setNumColors(%s), %d -> %d\n", - qPrintable(name), m_imageMap[name].numColors(), count); + printf(" -(lance) image_setColorCount(%s), %d -> %d\n", + qPrintable(name), m_imageMap[name].colorCount(), count); - m_imageMap[name].setNumColors(count); + m_imageMap[name].setColorCount(count); } /***************************************************************************************************/ diff --git a/tests/arthur/common/paintcommands.h b/tests/arthur/common/paintcommands.h index ba91a92..e2c4d67 100644 --- a/tests/arthur/common/paintcommands.h +++ b/tests/arthur/common/paintcommands.h @@ -239,7 +239,7 @@ private: void command_image_convertToFormat(QRegExp re); void command_image_load(QRegExp re); void command_image_setColor(QRegExp re); - void command_image_setNumColors(QRegExp re); + void command_image_setColorCount(QRegExp re); // commands: transformation void command_resetMatrix(QRegExp re); diff --git a/tests/auto/auto.pro b/tests/auto/auto.pro index 1ec4c16..46f26f8 100644 --- a/tests/auto/auto.pro +++ b/tests/auto/auto.pro @@ -135,6 +135,7 @@ SUBDIRS += \ qfocusevent \ qfocusframe \ qfont \ + qfontcombobox \ qfontdatabase \ qfontdialog \ qfontmetrics \ diff --git a/tests/auto/declarative/animations/tst_animations.cpp b/tests/auto/declarative/animations/tst_animations.cpp index 74d5f46..2692cb6 100644 --- a/tests/auto/declarative/animations/tst_animations.cpp +++ b/tests/auto/declarative/animations/tst_animations.cpp @@ -53,6 +53,7 @@ public: tst_animations() {} private slots: + void simpleProperty(); void simpleNumber(); void simpleColor(); void alwaysRunToEnd(); @@ -73,7 +74,31 @@ private slots: } \ QCOMPARE(lhs, rhs); \ } while (false) - + +void tst_animations::simpleProperty() +{ + QmlGraphicsRectangle rect; + QmlPropertyAnimation animation; + animation.setTarget(&rect); + animation.setProperty("pos"); + animation.setTo(QPointF(200,200)); + QVERIFY(animation.target() == &rect); + QVERIFY(animation.property() == "pos"); + QVERIFY(animation.to().toPointF() == QPointF(200,200)); + animation.start(); + QVERIFY(animation.isRunning()); + QTest::qWait(animation.duration()); + QTIMED_COMPARE(rect.pos(), QPointF(200,200)); + + rect.setPos(0,0); + animation.start(); + animation.pause(); + QVERIFY(animation.isRunning()); + QVERIFY(animation.isPaused()); + animation.setCurrentTime(125); + QCOMPARE(rect.pos(), QPointF(100,100)); +} + void tst_animations::simpleNumber() { QmlGraphicsRectangle rect; @@ -81,13 +106,19 @@ void tst_animations::simpleNumber() animation.setTarget(&rect); animation.setProperty("x"); animation.setTo(200); + QVERIFY(animation.target() == &rect); + QVERIFY(animation.property() == "x"); + QVERIFY(animation.to() == 200); animation.start(); + QVERIFY(animation.isRunning()); QTest::qWait(animation.duration()); QTIMED_COMPARE(rect.x(), qreal(200)); rect.setX(0); animation.start(); animation.pause(); + QVERIFY(animation.isRunning()); + QVERIFY(animation.isPaused()); animation.setCurrentTime(125); QCOMPARE(rect.x(), qreal(100)); } @@ -99,13 +130,19 @@ void tst_animations::simpleColor() animation.setTarget(&rect); animation.setProperty("color"); animation.setTo(QColor("red")); + QVERIFY(animation.target() == &rect); + QVERIFY(animation.property() == "color"); + QVERIFY(animation.to() == QColor("red")); animation.start(); + QVERIFY(animation.isRunning()); QTest::qWait(animation.duration()); QTIMED_COMPARE(rect.color(), QColor("red")); rect.setColor(QColor("blue")); animation.start(); animation.pause(); + QVERIFY(animation.isRunning()); + QVERIFY(animation.isPaused()); animation.setCurrentTime(125); QCOMPARE(rect.color(), QColor::fromRgbF(0.498039, 0, 0.498039, 1)); } diff --git a/tests/auto/declarative/declarative.pro b/tests/auto/declarative/declarative.pro index 8a3a06c..bcf908d 100644 --- a/tests/auto/declarative/declarative.pro +++ b/tests/auto/declarative/declarative.pro @@ -16,6 +16,7 @@ SUBDIRS += \ qmlconnection \ # Cover qmlcontext \ # Cover qmldom \ # Cover + qmleasefollow \ # Cover qmlecmascript \ # Cover qmlerror \ # Cover qmlfontloader \ # Cover @@ -27,6 +28,7 @@ SUBDIRS += \ qmlgraphicslistview \ # Cover qmlgraphicsloader \ # Cover qmlgraphicsparticles \ # Cover + qmlgraphicspathview \ # Cover qmlgraphicspositioners \ # Cover qmlgraphicstext \ # Cover qmlgraphicstextedit \ # Cover diff --git a/tests/auto/declarative/layouts/data/layouts.qml b/tests/auto/declarative/layouts/data/layouts.qml index b0ee63b..00d785d 100644 --- a/tests/auto/declarative/layouts/data/layouts.qml +++ b/tests/auto/declarative/layouts/data/layouts.qml @@ -6,7 +6,7 @@ Item { height:300 GraphicsObjectContainer { - anchors.fill:parent + anchors.fill: parent synchronizedResizing: true QGraphicsWidget { diff --git a/tests/auto/declarative/layouts/tst_layouts.cpp b/tests/auto/declarative/layouts/tst_layouts.cpp index 1c2330d..0f832bf 100644 --- a/tests/auto/declarative/layouts/tst_layouts.cpp +++ b/tests/auto/declarative/layouts/tst_layouts.cpp @@ -43,6 +43,7 @@ #include <qmlview.h> #include <private/qmlgraphicslayoutitem_p.h> #include <qmlexpression.h> +#include <QStyle> class tst_QmlGraphicsLayouts : public QObject { @@ -74,7 +75,12 @@ void tst_QmlGraphicsLayouts::test_qml() QmlGraphicsLayoutItem *right = static_cast<QmlGraphicsLayoutItem*>(canvas->root()->findChild<QmlGraphicsItem*>("right")); QVERIFY(right != 0); - qreal gvMargin = 9.0; + qreal l = QApplication::style()->pixelMetric(QStyle::PM_LayoutLeftMargin); + qreal r = QApplication::style()->pixelMetric(QStyle::PM_LayoutRightMargin); + qreal t = QApplication::style()->pixelMetric(QStyle::PM_LayoutTopMargin); + qreal b = QApplication::style()->pixelMetric(QStyle::PM_LayoutBottomMargin); + QVERIFY2(l == r && r == t && t == b, "Test assumes equal margins."); + qreal gvMargin = l; //Preferred Size canvas->root()->setWidth(300 + 2*gvMargin); canvas->root()->setHeight(300 + 2*gvMargin); @@ -116,6 +122,7 @@ void tst_QmlGraphicsLayouts::test_qml() QCOMPARE(right->width(), 400.0); QCOMPARE(right->height(), 300.0); + delete canvas; } void tst_QmlGraphicsLayouts::test_cpp() @@ -129,8 +136,8 @@ QmlView *tst_QmlGraphicsLayouts::createView(const QString &filename) QFile file(filename); file.open(QFile::ReadOnly); - QString xml = file.readAll(); - canvas->setQml(xml, filename); + QString qml = file.readAll(); + canvas->setQml(qml, filename); return canvas; } diff --git a/tests/auto/declarative/numberformatter/tst_numberformatter.cpp b/tests/auto/declarative/numberformatter/tst_numberformatter.cpp index 152d6e3..1d68f35 100644 --- a/tests/auto/declarative/numberformatter/tst_numberformatter.cpp +++ b/tests/auto/declarative/numberformatter/tst_numberformatter.cpp @@ -212,6 +212,8 @@ void tst_numberformat::text() QCOMPARE(formatter->format(), format); QCOMPARE(formatter->text(), text); + + delete formatter; } QTEST_MAIN(tst_numberformat) diff --git a/tests/auto/declarative/qmldom/data/MyItem.qml b/tests/auto/declarative/qmldom/data/MyItem.qml new file mode 100644 index 0000000..1472f01 --- /dev/null +++ b/tests/auto/declarative/qmldom/data/MyItem.qml @@ -0,0 +1,4 @@ +import Qt 4.6 + +Item { +} diff --git a/tests/auto/declarative/qmldom/tst_qmldom.cpp b/tests/auto/declarative/qmldom/tst_qmldom.cpp index 350e985..9e1a2a8 100644 --- a/tests/auto/declarative/qmldom/tst_qmldom.cpp +++ b/tests/auto/declarative/qmldom/tst_qmldom.cpp @@ -55,13 +55,25 @@ public: private slots: void loadSimple(); void loadProperties(); + void loadGroupedProperties(); void loadChildObject(); void loadComposite(); void loadImports(); + void loadErrors(); + void loadSyntaxErrors(); + void loadRemoteErrors(); + void loadDynamicProperty(); + void loadComponent(); void testValueSource(); void testValueInterceptor(); + void object_dynamicProperty(); + void object_property(); + void object_url(); + + void copy(); + void position(); private: QmlEngine engine; }; @@ -85,6 +97,7 @@ void tst_qmldom::loadSimple() QVERIFY(rootObject.objectTypeMinorVersion() == 6); } +// Test regular properties void tst_qmldom::loadProperties() { QByteArray qml = "import Qt 4.6\n" @@ -100,15 +113,119 @@ void tst_qmldom::loadProperties() QmlDomProperty xProperty = rootObject.property("x"); QVERIFY(xProperty.propertyName() == "x"); + QCOMPARE(xProperty.propertyNameParts().count(), 1); + QVERIFY(xProperty.propertyNameParts().at(0) == "x"); + QCOMPARE(xProperty.position(), 32); + QCOMPARE(xProperty.length(), 1); QVERIFY(xProperty.value().isLiteral()); QVERIFY(xProperty.value().toLiteral().literal() == "300"); QmlDomProperty visibleProperty = rootObject.property("visible"); QVERIFY(visibleProperty.propertyName() == "visible"); + QCOMPARE(visibleProperty.propertyNameParts().count(), 1); + QVERIFY(visibleProperty.propertyNameParts().at(0) == "visible"); + QCOMPARE(visibleProperty.position(), 41); + QCOMPARE(visibleProperty.length(), 7); QVERIFY(visibleProperty.value().isLiteral()); QVERIFY(visibleProperty.value().toLiteral().literal() == "true"); } +// Test grouped properties +void tst_qmldom::loadGroupedProperties() +{ + { + QByteArray qml = "import Qt 4.6\n" + "Item { anchors.left: parent.left; anchors.right: parent.right }"; + + QmlDomDocument document; + QVERIFY(document.load(&engine, qml)); + + QmlDomObject rootItem = document.rootObject(); + QVERIFY(rootItem.isValid()); + QVERIFY(rootItem.properties().size() == 2); + + // Order is not deterministic + QmlDomProperty p0 = rootItem.properties().at(0); + QmlDomProperty p1 = rootItem.properties().at(1); + QmlDomProperty leftProperty; + QmlDomProperty rightProperty; + if (p0.propertyName() == "anchors.left") { + leftProperty = p0; + rightProperty = p1; + } else { + leftProperty = p1; + rightProperty = p0; + } + + QVERIFY(leftProperty.propertyName() == "anchors.left"); + QCOMPARE(leftProperty.propertyNameParts().count(), 2); + QVERIFY(leftProperty.propertyNameParts().at(0) == "anchors"); + QVERIFY(leftProperty.propertyNameParts().at(1) == "left"); + QCOMPARE(leftProperty.position(), 21); + QCOMPARE(leftProperty.length(), 12); + QVERIFY(leftProperty.value().isBinding()); + QVERIFY(leftProperty.value().toBinding().binding() == "parent.left"); + + QVERIFY(rightProperty.propertyName() == "anchors.right"); + QCOMPARE(rightProperty.propertyNameParts().count(), 2); + QVERIFY(rightProperty.propertyNameParts().at(0) == "anchors"); + QVERIFY(rightProperty.propertyNameParts().at(1) == "right"); + QCOMPARE(rightProperty.position(), 48); + QCOMPARE(rightProperty.length(), 13); + QVERIFY(rightProperty.value().isBinding()); + QVERIFY(rightProperty.value().toBinding().binding() == "parent.right"); + } + + { + QByteArray qml = "import Qt 4.6\n" + "Item { \n" + " anchors {\n" + " left: parent.left\n" + " right: parent.right\n" + " }\n" + "}"; + + QmlDomDocument document; + QVERIFY(document.load(&engine, qml)); + + QmlDomObject rootItem = document.rootObject(); + QVERIFY(rootItem.isValid()); + QVERIFY(rootItem.properties().size() == 2); + + // Order is not deterministic + QmlDomProperty p0 = rootItem.properties().at(0); + QmlDomProperty p1 = rootItem.properties().at(1); + QmlDomProperty leftProperty; + QmlDomProperty rightProperty; + if (p0.propertyName() == "anchors.left") { + leftProperty = p0; + rightProperty = p1; + } else { + leftProperty = p1; + rightProperty = p0; + } + + QVERIFY(leftProperty.propertyName() == "anchors.left"); + QCOMPARE(leftProperty.propertyNameParts().count(), 2); + QVERIFY(leftProperty.propertyNameParts().at(0) == "anchors"); + QVERIFY(leftProperty.propertyNameParts().at(1) == "left"); + QCOMPARE(leftProperty.position(), 44); + QCOMPARE(leftProperty.length(), 4); + QVERIFY(leftProperty.value().isBinding()); + QVERIFY(leftProperty.value().toBinding().binding() == "parent.left"); + + QVERIFY(rightProperty.propertyName() == "anchors.right"); + QCOMPARE(rightProperty.propertyNameParts().count(), 2); + QVERIFY(rightProperty.propertyNameParts().at(0) == "anchors"); + QVERIFY(rightProperty.propertyNameParts().at(1) == "right"); + QCOMPARE(rightProperty.position(), 70); + QCOMPARE(rightProperty.length(), 5); + QVERIFY(rightProperty.value().isBinding()); + QVERIFY(rightProperty.value().toBinding().binding() == "parent.right"); + } + +} + void tst_qmldom::loadChildObject() { QByteArray qml = "import Qt 4.6\n" @@ -212,6 +329,7 @@ void tst_qmldom::testValueInterceptor() QVERIFY(animationValue.isObject()); } +// Test QmlDomDocument::imports() void tst_qmldom::loadImports() { QByteArray qml = "import Qt 4.6\n" @@ -259,6 +377,936 @@ void tst_qmldom::loadImports() QCOMPARE(import.version(), QLatin1String("")); } +// Test loading a file with errors +void tst_qmldom::loadErrors() +{ + QByteArray qml = "import Qt 4.6\n" + "Item {\n" + " foo: 12\n" + "}"; + + QmlDomDocument document; + QVERIFY(false == document.load(&engine, qml)); + + QCOMPARE(document.errors().count(), 1); + QmlError error = document.errors().first(); + + QCOMPARE(error.url(), QUrl()); + QCOMPARE(error.line(), 3); + QCOMPARE(error.column(), 3); + QCOMPARE(error.description(), QString("Cannot assign to non-existant property \"foo\"")); +} + +// Test loading a file with syntax errors +void tst_qmldom::loadSyntaxErrors() +{ + QByteArray qml = "import Qt 4.6\n" + "asdf"; + + QmlDomDocument document; + QVERIFY(false == document.load(&engine, qml)); + + QCOMPARE(document.errors().count(), 1); + QmlError error = document.errors().first(); + + QCOMPARE(error.url(), QUrl()); + QCOMPARE(error.line(), 2); + QCOMPARE(error.column(), 1); + QCOMPARE(error.description(), QString("Syntax error")); +} + +// Test attempting to load a file with remote references +void tst_qmldom::loadRemoteErrors() +{ + QByteArray qml = "import Qt 4.6\n" + "Item {\n" + " Script {\n" + " source: \"http://localhost/exampleQmlScript.js\"" + " }\n" + "}"; + QmlDomDocument document; + QVERIFY(false == document.load(&engine, qml)); + + QCOMPARE(document.errors().count(), 1); + QmlError error = document.errors().first(); + + QCOMPARE(error.url(), QUrl()); + QCOMPARE(error.line(), -1); + QCOMPARE(error.column(), -1); + QCOMPARE(error.description(), QString("QmlDomDocument supports local types only")); +} + +// Test dynamic property declarations +void tst_qmldom::loadDynamicProperty() +{ + { + QByteArray qml = "import Qt 4.6\n" + "Item {\n" + " property int a\n" + " property bool b\n" + " property double c\n" + " property real d\n" + " property string e\n" + " property url f\n" + " property color g\n" + " property date h\n" + " property var i\n" + " property variant j\n" + " property Object k\n" + "}"; + + QmlDomDocument document; + QVERIFY(document.load(&engine, qml)); + + QmlDomObject rootObject = document.rootObject(); + QVERIFY(rootObject.isValid()); + + QCOMPARE(rootObject.dynamicProperties().count(), 11); + +#define DP_TEST(index, name, type, test_position, test_length, propTypeName) \ + { \ + QmlDomDynamicProperty d = rootObject.dynamicProperties().at(index); \ + QVERIFY(d.isValid()); \ + QVERIFY(d.propertyName() == # name ); \ + QVERIFY(d.propertyType() == type); \ + QVERIFY(d.propertyTypeName() == propTypeName); \ + QVERIFY(d.isDefaultProperty() == false); \ + QVERIFY(d.defaultValue().isValid() == false); \ + QCOMPARE(d.position(), test_position); \ + QCOMPARE(d.length(), test_length); \ + } \ + + DP_TEST(0, a, QVariant::Int, 25, 14, "int"); + DP_TEST(1, b, QVariant::Bool, 44, 15, "bool"); + DP_TEST(2, c, QVariant::Double, 64, 17, "double"); + DP_TEST(3, d, QMetaType::QReal, 86, 15, "real"); + DP_TEST(4, e, QVariant::String, 106, 17, "string"); + DP_TEST(5, f, QVariant::Url, 128, 14, "url"); + DP_TEST(6, g, QVariant::Color, 147, 16, "color"); + DP_TEST(7, h, QVariant::Date, 168, 15, "date"); + DP_TEST(8, i, qMetaTypeId<QVariant>(), 188, 14, "var"); + DP_TEST(9, j, qMetaTypeId<QVariant>(), 207, 18, "variant"); + DP_TEST(10, k, -1, 230, 17, "Object"); + } + + { + QByteArray qml = "import Qt 4.6\n" + "Item {\n" + " property int a: 12\n" + " property int b: a + 6\n" + " default property Object c\n" + "}\n"; + + QmlDomDocument document; + QVERIFY(document.load(&engine, qml)); + + QmlDomObject rootObject = document.rootObject(); + QVERIFY(rootObject.isValid()); + + QCOMPARE(rootObject.dynamicProperties().count(), 3); + + { + QmlDomDynamicProperty d = rootObject.dynamicProperties().at(0); + QVERIFY(d.isDefaultProperty() == false); + QVERIFY(d.defaultValue().isValid()); + QVERIFY(d.defaultValue().propertyName() == "a"); + QVERIFY(d.defaultValue().value().isLiteral()); + } + + { + QmlDomDynamicProperty d = rootObject.dynamicProperties().at(1); + QVERIFY(d.isDefaultProperty() == false); + QVERIFY(d.defaultValue().isValid()); + QVERIFY(d.defaultValue().propertyName() == "b"); + QVERIFY(d.defaultValue().value().isBinding()); + } + + { + QmlDomDynamicProperty d = rootObject.dynamicProperties().at(2); + QVERIFY(d.isDefaultProperty() == true); + QVERIFY(d.defaultValue().isValid() == false); + } + } +} + +// Test inline components +void tst_qmldom::loadComponent() +{ + // Explicit component + { + QByteArray qml = "import Qt 4.6\n" + "Item {\n" + " Component {\n" + " id: myComponent\n" + " Item {}\n" + " }\n" + "}"; + + QmlDomDocument document; + QVERIFY(document.load(&engine, qml)); + + QmlDomObject rootItem = document.rootObject(); + QVERIFY(rootItem.isValid()); + QVERIFY(rootItem.properties().size() == 1); + + QmlDomProperty listProperty = rootItem.properties().at(0); + QVERIFY(listProperty.isDefaultProperty()); + QVERIFY(listProperty.value().isList()); + + QmlDomList list = listProperty.value().toList(); + QVERIFY(list.values().size() == 1); + + QmlDomObject componentObject = list.values().first().toObject(); + QVERIFY(componentObject.isValid()); + QVERIFY(componentObject.objectClassName() == "Component"); + QVERIFY(componentObject.isComponent()); + + QmlDomComponent component = componentObject.toComponent(); + QVERIFY(component.isValid()); + QVERIFY(component.objectType() == "Qt/Component"); + QVERIFY(component.objectTypeMajorVersion() == 4); + QVERIFY(component.objectTypeMinorVersion() == 6); + QVERIFY(component.objectClassName() == "Component"); + QVERIFY(component.objectId() == "myComponent"); + QVERIFY(component.properties().isEmpty()); + QVERIFY(component.dynamicProperties().isEmpty()); + QVERIFY(component.isCustomType() == false); + QVERIFY(component.customTypeData() == ""); + QVERIFY(component.isComponent()); + QCOMPARE(component.position(), 25); + QCOMPARE(component.length(), 57); + + QVERIFY(component.componentRoot().isValid()); + QVERIFY(component.componentRoot().objectClassName() == "Item"); + } + + // Implicit component + { + QByteArray qml = "import Qt 4.6\n" + "ListView {\n" + " delegate: Item {}\n" + "}"; + + QmlDomDocument document; + QVERIFY(document.load(&engine, qml)); + + QmlDomObject rootItem = document.rootObject(); + QVERIFY(rootItem.isValid()); + QVERIFY(rootItem.properties().size() == 1); + + QmlDomProperty delegate = rootItem.property("delegate"); + + QmlDomObject componentObject = delegate.value().toObject(); + QVERIFY(componentObject.isValid()); + QVERIFY(componentObject.objectClassName() == "Component"); + QVERIFY(componentObject.isComponent()); + + QmlDomComponent component = componentObject.toComponent(); + QVERIFY(component.isValid()); + QVERIFY(component.objectType() == "Qt/Component"); + QVERIFY(component.objectClassName() == "Component"); + QVERIFY(component.objectId() == ""); + QVERIFY(component.properties().isEmpty()); + QVERIFY(component.dynamicProperties().isEmpty()); + QVERIFY(component.isCustomType() == false); + QVERIFY(component.customTypeData() == ""); + QVERIFY(component.isComponent()); + QCOMPARE(component.position(), 39); + QCOMPARE(component.length(), 7); + + QVERIFY(component.componentRoot().isValid()); + QVERIFY(component.componentRoot().objectClassName() == "Item"); + } +} + +// Test QmlDomObject::dynamicProperty() method +void tst_qmldom::object_dynamicProperty() +{ + // Invalid object + { + QmlDomObject object; + QVERIFY(object.dynamicProperty("").isValid() == false); + QVERIFY(object.dynamicProperty("foo").isValid() == false); + } + + + // Valid object, no dynamic properties + { + QByteArray qml = "import Qt 4.6\n" + "Item {}"; + + QmlDomDocument document; + QVERIFY(document.load(&engine, qml)); + + QmlDomObject rootObject = document.rootObject(); + QVERIFY(rootObject.isValid()); + + QVERIFY(rootObject.dynamicProperty("").isValid() == false); + QVERIFY(rootObject.dynamicProperty("foo").isValid() == false); + } + + // Valid object, dynamic properties + { + QByteArray qml = "import Qt 4.6\n" + "Item {\n" + " property int a\n" + "}"; + + QmlDomDocument document; + QVERIFY(document.load(&engine, qml)); + + QmlDomObject rootObject = document.rootObject(); + QVERIFY(rootObject.isValid()); + + QVERIFY(rootObject.dynamicProperty("").isValid() == false); + QVERIFY(rootObject.dynamicProperty("foo").isValid() == false); + + QmlDomDynamicProperty p = rootObject.dynamicProperty("a"); + QVERIFY(p.isValid()); + QVERIFY(p.propertyName() == "a"); + QVERIFY(p.propertyType() == QVariant::Int); + QVERIFY(p.propertyTypeName() == "int"); + QVERIFY(p.isDefaultProperty() == false); + QCOMPARE(p.position(), 25); + QCOMPARE(p.length(), 14); + } + +} + +// Test QmlObject::property() method +void tst_qmldom::object_property() +{ + // Invalid object + { + QmlDomObject object; + QVERIFY(object.property("").isValid() == false); + QVERIFY(object.property("foo").isValid() == false); + } + + // Valid object - no default + { + QByteArray qml = "import Qt 4.6\n" + "Item {\n" + " x: 10\n" + " y: 12\n" + "}\n"; + + QmlDomDocument document; + QVERIFY(document.load(&engine, qml)); + + QmlDomObject rootObject = document.rootObject(); + QVERIFY(rootObject.isValid()); + + QVERIFY(rootObject.property("").isValid() == false); + QVERIFY(rootObject.property("foo").isValid() == false); + + QmlDomProperty x = rootObject.property("x"); + QVERIFY(x.isValid()); + QVERIFY(x.propertyName() == "x"); + QVERIFY(x.propertyNameParts().count() == 1); + QVERIFY(x.propertyNameParts().at(0) == "x"); + QVERIFY(x.isDefaultProperty() == false); + QVERIFY(x.value().isLiteral()); + QVERIFY(x.value().toLiteral().literal() == "10"); + QCOMPARE(x.position(), 25); + QCOMPARE(x.length(), 1); + + QmlDomProperty y = rootObject.property("y"); + QVERIFY(y.isValid()); + QVERIFY(y.propertyName() == "y"); + QVERIFY(y.propertyNameParts().count() == 1); + QVERIFY(y.propertyNameParts().at(0) == "y"); + QVERIFY(y.isDefaultProperty() == false); + QVERIFY(y.value().isLiteral()); + QVERIFY(y.value().toLiteral().literal() == "12"); + QCOMPARE(y.position(), 35); + QCOMPARE(y.length(), 1); + } + + // Valid object - with default + { + QByteArray qml = "import Qt 4.6\n" + "Item {\n" + " x: 10\n" + " y: 12\n" + " Item {}\n" + "}\n"; + + QmlDomDocument document; + QVERIFY(document.load(&engine, qml)); + + QmlDomObject rootObject = document.rootObject(); + QVERIFY(rootObject.isValid()); + + QVERIFY(rootObject.property("").isValid() == false); + QVERIFY(rootObject.property("foo").isValid() == false); + + QmlDomProperty x = rootObject.property("x"); + QVERIFY(x.isValid()); + QVERIFY(x.propertyName() == "x"); + QVERIFY(x.propertyNameParts().count() == 1); + QVERIFY(x.propertyNameParts().at(0) == "x"); + QVERIFY(x.isDefaultProperty() == false); + QVERIFY(x.value().isLiteral()); + QVERIFY(x.value().toLiteral().literal() == "10"); + QCOMPARE(x.position(), 25); + QCOMPARE(x.length(), 1); + + QmlDomProperty y = rootObject.property("y"); + QVERIFY(y.isValid()); + QVERIFY(y.propertyName() == "y"); + QVERIFY(y.propertyNameParts().count() == 1); + QVERIFY(y.propertyNameParts().at(0) == "y"); + QVERIFY(y.isDefaultProperty() == false); + QVERIFY(y.value().isLiteral()); + QVERIFY(y.value().toLiteral().literal() == "12"); + QCOMPARE(y.position(), 35); + QCOMPARE(y.length(), 1); + + QmlDomProperty data = rootObject.property("data"); + QVERIFY(data.isValid()); + QVERIFY(data.propertyName() == "data"); + QVERIFY(data.propertyNameParts().count() == 1); + QVERIFY(data.propertyNameParts().at(0) == "data"); + QVERIFY(data.isDefaultProperty() == true); + QVERIFY(data.value().isList()); + QCOMPARE(data.position(), 45); + QCOMPARE(data.length(), 0); + } +} + +// Tests the QmlDomObject::url() method +void tst_qmldom::object_url() +{ + // Invalid object + { + QmlDomObject object; + QCOMPARE(object.url(), QUrl()); + } + + // Valid builtin object + { + QByteArray qml = "import Qt 4.6\n" + "Item {}"; + + QmlDomDocument document; + QVERIFY(document.load(&engine, qml)); + + QmlDomObject rootObject = document.rootObject(); + QVERIFY(rootObject.isValid()); + QCOMPARE(rootObject.url(), QUrl()); + } + + // Valid composite object + { + QByteArray qml = "import Qt 4.6\n" + "MyItem {}"; + + QUrl myUrl = QUrl::fromLocalFile(SRCDIR "/data/main.qml"); + QUrl subUrl = QUrl::fromLocalFile(SRCDIR "/data/MyItem.qml"); + + QmlDomDocument document; + QVERIFY(document.load(&engine, qml, myUrl)); + + QmlDomObject rootObject = document.rootObject(); + QVERIFY(rootObject.isValid()); + QCOMPARE(rootObject.url(), subUrl); + } +} + +// Test copy constructors and operators +void tst_qmldom::copy() +{ + QByteArray qml = "import Qt 4.6\n" + "MyItem {\n" + " id: myItem\n" + " property int a: 10\n" + " x: 10\n" + " y: x + 10\n" + " z: NumberAnimation {}\n" + " opacity: Behavior {}\n" + " Component {\n" + " Item{}\n" + " }\n" + " children: [ Item{}, Item{} ]\n" + "}\n"; + + QUrl myUrl = QUrl::fromLocalFile(SRCDIR "/data/main.qml"); + + QmlDomDocument document; + QVERIFY(document.load(&engine, qml, myUrl)); + + // QmlDomDocument + { + QmlDomDocument document2(document); + QmlDomDocument document3; + document3 = document; + + QCOMPARE(document.imports().count(), document2.imports().count()); + QCOMPARE(document.errors().count(), document2.errors().count()); + QCOMPARE(document.rootObject().objectClassName(), document2.rootObject().objectClassName()); + + QCOMPARE(document.imports().count(), document3.imports().count()); + QCOMPARE(document.errors().count(), document3.errors().count()); + QCOMPARE(document.rootObject().objectClassName(), document3.rootObject().objectClassName()); + } + + // QmlDomImport + { + QCOMPARE(document.imports().count(), 1); + QmlDomImport import = document.imports().at(0); + + QmlDomImport import2(import); + QmlDomImport import3; + import3 = import2; + + QCOMPARE(import.type(), import2.type()); + QCOMPARE(import.uri(), import2.uri()); + QCOMPARE(import.version(), import2.version()); + QCOMPARE(import.qualifier(), import2.qualifier()); + + QCOMPARE(import.type(), import3.type()); + QCOMPARE(import.uri(), import3.uri()); + QCOMPARE(import.version(), import3.version()); + QCOMPARE(import.qualifier(), import3.qualifier()); + } + + // QmlDomObject + { + QmlDomObject object = document.rootObject(); + QVERIFY(object.isValid()); + + QmlDomObject object2(object); + QmlDomObject object3; + object3 = object; + + QCOMPARE(object.isValid(), object2.isValid()); + QCOMPARE(object.objectType(), object2.objectType()); + QCOMPARE(object.objectClassName(), object2.objectClassName()); + QCOMPARE(object.objectTypeMajorVersion(), object2.objectTypeMajorVersion()); + QCOMPARE(object.objectTypeMinorVersion(), object2.objectTypeMinorVersion()); + QCOMPARE(object.objectId(), object2.objectId()); + QCOMPARE(object.properties().count(), object2.properties().count()); + QCOMPARE(object.dynamicProperties().count(), object2.dynamicProperties().count()); + QCOMPARE(object.isCustomType(), object2.isCustomType()); + QCOMPARE(object.customTypeData(), object2.customTypeData()); + QCOMPARE(object.isComponent(), object2.isComponent()); + QCOMPARE(object.position(), object2.position()); + QCOMPARE(object.length(), object2.length()); + QCOMPARE(object.url(), object2.url()); + + QCOMPARE(object.isValid(), object3.isValid()); + QCOMPARE(object.objectType(), object3.objectType()); + QCOMPARE(object.objectClassName(), object3.objectClassName()); + QCOMPARE(object.objectTypeMajorVersion(), object3.objectTypeMajorVersion()); + QCOMPARE(object.objectTypeMinorVersion(), object3.objectTypeMinorVersion()); + QCOMPARE(object.objectId(), object3.objectId()); + QCOMPARE(object.properties().count(), object3.properties().count()); + QCOMPARE(object.dynamicProperties().count(), object3.dynamicProperties().count()); + QCOMPARE(object.isCustomType(), object3.isCustomType()); + QCOMPARE(object.customTypeData(), object3.customTypeData()); + QCOMPARE(object.isComponent(), object3.isComponent()); + QCOMPARE(object.position(), object3.position()); + QCOMPARE(object.length(), object3.length()); + QCOMPARE(object.url(), object3.url()); + } + + // QmlDomDynamicProperty + { + QmlDomObject object = document.rootObject(); + QmlDomDynamicProperty property = object.dynamicProperty("a"); + + QmlDomDynamicProperty property2(property); + QmlDomDynamicProperty property3; + property3 = property; + + QCOMPARE(property.isValid(), property2.isValid()); + QCOMPARE(property.propertyName(), property2.propertyName()); + QCOMPARE(property.propertyType(), property2.propertyType()); + QCOMPARE(property.propertyTypeName(), property2.propertyTypeName()); + QCOMPARE(property.isDefaultProperty(), property2.isDefaultProperty()); + QCOMPARE(property.defaultValue().propertyName(), property2.defaultValue().propertyName()); + QCOMPARE(property.position(), property2.position()); + QCOMPARE(property.length(), property2.length()); + + QCOMPARE(property.isValid(), property3.isValid()); + QCOMPARE(property.propertyName(), property3.propertyName()); + QCOMPARE(property.propertyType(), property3.propertyType()); + QCOMPARE(property.propertyTypeName(), property3.propertyTypeName()); + QCOMPARE(property.isDefaultProperty(), property3.isDefaultProperty()); + QCOMPARE(property.defaultValue().propertyName(), property3.defaultValue().propertyName()); + QCOMPARE(property.position(), property3.position()); + QCOMPARE(property.length(), property3.length()); + } + + // QmlDomProperty + { + QmlDomObject object = document.rootObject(); + QmlDomProperty property = object.property("opacity"); + + QmlDomProperty property2(property); + QmlDomProperty property3; + property3 = property; + + QCOMPARE(property.isValid(), property2.isValid()); + QCOMPARE(property.propertyName(), property2.propertyName()); + QCOMPARE(property.propertyNameParts(), property2.propertyNameParts()); + QCOMPARE(property.isDefaultProperty(), property2.isDefaultProperty()); + QCOMPARE(property.value().type(), property2.value().type()); + QCOMPARE(property.position(), property2.position()); + QCOMPARE(property.length(), property2.length()); + + QCOMPARE(property.isValid(), property3.isValid()); + QCOMPARE(property.propertyName(), property3.propertyName()); + QCOMPARE(property.propertyNameParts(), property3.propertyNameParts()); + QCOMPARE(property.isDefaultProperty(), property3.isDefaultProperty()); + QCOMPARE(property.value().type(), property3.value().type()); + QCOMPARE(property.position(), property3.position()); + QCOMPARE(property.length(), property3.length()); + } + + // QmlDomValueLiteral + { + QmlDomObject object = document.rootObject(); + QmlDomProperty property = object.property("x"); + QmlDomValueLiteral literal = property.value().toLiteral(); + QCOMPARE(literal.literal(), QString("10")); + + QmlDomValueLiteral literal2(literal); + QmlDomValueLiteral literal3; + literal3 = literal2; + + QCOMPARE(literal2.literal(), QString("10")); + QCOMPARE(literal3.literal(), QString("10")); + } + + + // QmlDomValueBinding + { + QmlDomObject object = document.rootObject(); + QmlDomProperty property = object.property("y"); + QmlDomValueBinding binding = property.value().toBinding(); + QCOMPARE(binding.binding(), QString("x + 10")); + + QmlDomValueBinding binding2(binding); + QmlDomValueBinding binding3; + binding3 = binding2; + + QCOMPARE(binding2.binding(), QString("x + 10")); + QCOMPARE(binding3.binding(), QString("x + 10")); + } + + // QmlDomValueValueSource + { + QmlDomObject object = document.rootObject(); + QmlDomProperty property = object.property("z"); + QmlDomValueValueSource source = property.value().toValueSource(); + QCOMPARE(source.object().objectClassName(), QByteArray("NumberAnimation")); + + QmlDomValueValueSource source2(source); + QmlDomValueValueSource source3; + source3 = source; + + QCOMPARE(source2.object().objectClassName(), QByteArray("NumberAnimation")); + QCOMPARE(source3.object().objectClassName(), QByteArray("NumberAnimation")); + } + + // QmlDomValueValueInterceptor + { + QmlDomObject object = document.rootObject(); + QmlDomProperty property = object.property("opacity"); + QmlDomValueValueInterceptor interceptor = property.value().toValueInterceptor(); + QCOMPARE(interceptor.object().objectClassName(), QByteArray("Behavior")); + + QmlDomValueValueInterceptor interceptor2(interceptor); + QmlDomValueValueInterceptor interceptor3; + interceptor3 = interceptor; + + QCOMPARE(interceptor2.object().objectClassName(), QByteArray("Behavior")); + QCOMPARE(interceptor3.object().objectClassName(), QByteArray("Behavior")); + } + + // QmlDomComponent + { + QmlDomObject object = document.rootObject(); + QmlDomProperty property = object.property("data"); + QCOMPARE(property.value().toList().values().count(), 1); + QmlDomComponent component = + property.value().toList().values().at(0).toObject().toComponent(); + QCOMPARE(component.componentRoot().objectClassName(), QByteArray("Item")); + + QmlDomComponent component2(component); + QmlDomComponent component3; + component3 = component; + + QCOMPARE(component.componentRoot().objectClassName(), component2.componentRoot().objectClassName()); + QCOMPARE(component.isValid(), component2.isValid()); + QCOMPARE(component.objectType(), component2.objectType()); + QCOMPARE(component.objectClassName(), component2.objectClassName()); + QCOMPARE(component.objectTypeMajorVersion(), component2.objectTypeMajorVersion()); + QCOMPARE(component.objectTypeMinorVersion(), component2.objectTypeMinorVersion()); + QCOMPARE(component.objectId(), component2.objectId()); + QCOMPARE(component.properties().count(), component2.properties().count()); + QCOMPARE(component.dynamicProperties().count(), component2.dynamicProperties().count()); + QCOMPARE(component.isCustomType(), component2.isCustomType()); + QCOMPARE(component.customTypeData(), component2.customTypeData()); + QCOMPARE(component.isComponent(), component2.isComponent()); + QCOMPARE(component.position(), component2.position()); + QCOMPARE(component.length(), component2.length()); + QCOMPARE(component.url(), component2.url()); + + QCOMPARE(component.componentRoot().objectClassName(), component3.componentRoot().objectClassName()); + QCOMPARE(component.isValid(), component3.isValid()); + QCOMPARE(component.objectType(), component3.objectType()); + QCOMPARE(component.objectClassName(), component3.objectClassName()); + QCOMPARE(component.objectTypeMajorVersion(), component3.objectTypeMajorVersion()); + QCOMPARE(component.objectTypeMinorVersion(), component3.objectTypeMinorVersion()); + QCOMPARE(component.objectId(), component3.objectId()); + QCOMPARE(component.properties().count(), component3.properties().count()); + QCOMPARE(component.dynamicProperties().count(), component3.dynamicProperties().count()); + QCOMPARE(component.isCustomType(), component3.isCustomType()); + QCOMPARE(component.customTypeData(), component3.customTypeData()); + QCOMPARE(component.isComponent(), component3.isComponent()); + QCOMPARE(component.position(), component3.position()); + QCOMPARE(component.length(), component3.length()); + QCOMPARE(component.url(), component3.url()); + } + + // QmlDomValue + { + QmlDomObject object = document.rootObject(); + QmlDomProperty property = object.property("data"); + QmlDomValue value = property.value(); + + QmlDomValue value2(value); + QmlDomValue value3; + value3 = value; + + QCOMPARE(value.type(), value2.type()); + QCOMPARE(value.isInvalid(), value2.isInvalid()); + QCOMPARE(value.isLiteral(), value2.isLiteral()); + QCOMPARE(value.isBinding(), value2.isBinding()); + QCOMPARE(value.isValueSource(), value2.isValueSource()); + QCOMPARE(value.isValueInterceptor(), value2.isValueInterceptor()); + QCOMPARE(value.isObject(), value2.isObject()); + QCOMPARE(value.isList(), value2.isList()); + QCOMPARE(value.position(), value2.position()); + QCOMPARE(value.length(), value2.length()); + + QCOMPARE(value.type(), value3.type()); + QCOMPARE(value.isInvalid(), value3.isInvalid()); + QCOMPARE(value.isLiteral(), value3.isLiteral()); + QCOMPARE(value.isBinding(), value3.isBinding()); + QCOMPARE(value.isValueSource(), value3.isValueSource()); + QCOMPARE(value.isValueInterceptor(), value3.isValueInterceptor()); + QCOMPARE(value.isObject(), value3.isObject()); + QCOMPARE(value.isList(), value3.isList()); + QCOMPARE(value.position(), value3.position()); + QCOMPARE(value.length(), value3.length()); + } + { + QmlDomObject object = document.rootObject(); + QmlDomProperty property = object.property("x"); + QmlDomValue value = property.value(); + + QmlDomValue value2(value); + QmlDomValue value3; + value3 = value; + + QCOMPARE(value.type(), value2.type()); + QCOMPARE(value.isInvalid(), value2.isInvalid()); + QCOMPARE(value.isLiteral(), value2.isLiteral()); + QCOMPARE(value.isBinding(), value2.isBinding()); + QCOMPARE(value.isValueSource(), value2.isValueSource()); + QCOMPARE(value.isValueInterceptor(), value2.isValueInterceptor()); + QCOMPARE(value.isObject(), value2.isObject()); + QCOMPARE(value.isList(), value2.isList()); + QCOMPARE(value.position(), value2.position()); + QCOMPARE(value.length(), value2.length()); + + QCOMPARE(value.type(), value3.type()); + QCOMPARE(value.isInvalid(), value3.isInvalid()); + QCOMPARE(value.isLiteral(), value3.isLiteral()); + QCOMPARE(value.isBinding(), value3.isBinding()); + QCOMPARE(value.isValueSource(), value3.isValueSource()); + QCOMPARE(value.isValueInterceptor(), value3.isValueInterceptor()); + QCOMPARE(value.isObject(), value3.isObject()); + QCOMPARE(value.isList(), value3.isList()); + QCOMPARE(value.position(), value3.position()); + QCOMPARE(value.length(), value3.length()); + } + { + QmlDomValue value; + + QmlDomValue value2(value); + QmlDomValue value3; + value3 = value; + + QCOMPARE(value.type(), value2.type()); + QCOMPARE(value.isInvalid(), value2.isInvalid()); + QCOMPARE(value.isLiteral(), value2.isLiteral()); + QCOMPARE(value.isBinding(), value2.isBinding()); + QCOMPARE(value.isValueSource(), value2.isValueSource()); + QCOMPARE(value.isValueInterceptor(), value2.isValueInterceptor()); + QCOMPARE(value.isObject(), value2.isObject()); + QCOMPARE(value.isList(), value2.isList()); + QCOMPARE(value.position(), value2.position()); + QCOMPARE(value.length(), value2.length()); + + QCOMPARE(value.type(), value3.type()); + QCOMPARE(value.isInvalid(), value3.isInvalid()); + QCOMPARE(value.isLiteral(), value3.isLiteral()); + QCOMPARE(value.isBinding(), value3.isBinding()); + QCOMPARE(value.isValueSource(), value3.isValueSource()); + QCOMPARE(value.isValueInterceptor(), value3.isValueInterceptor()); + QCOMPARE(value.isObject(), value3.isObject()); + QCOMPARE(value.isList(), value3.isList()); + QCOMPARE(value.position(), value3.position()); + QCOMPARE(value.length(), value3.length()); + } + + // QmlDomList + { + QmlDomObject object = document.rootObject(); + QmlDomProperty property = object.property("children"); + QmlDomList list = property.value().toList(); + QCOMPARE(list.values().count(), 2); + + QmlDomList list2(list); + QmlDomList list3; + list3 = list2; + + QCOMPARE(list.values().count(), list2.values().count()); + QCOMPARE(list.position(), list2.position()); + QCOMPARE(list.length(), list2.length()); + QCOMPARE(list.commaPositions(), list2.commaPositions()); + + QCOMPARE(list.values().count(), list3.values().count()); + QCOMPARE(list.position(), list3.position()); + QCOMPARE(list.length(), list3.length()); + QCOMPARE(list.commaPositions(), list3.commaPositions()); + + } +} + +// Tests the position/length of various elements +void tst_qmldom::position() +{ + QByteArray qml = "import Qt 4.6\n" + /*14*/ "Item {\n" + /*21*/ " id: myItem\n" + /*36*/ " property int a: 10\n" + /*59*/ " x: 10\n" + /*69*/ " y: x + 10\n" + /*83*/ " z: NumberAnimation {}\n" + /*109*/ " opacity: Behavior {}\n" + /*134*/ " Component {\n" + /*150*/ " Item{}\n" + /*165*/ " }\n" + /*171*/ " children: [ Item{}, Item{} ]\n" + /*204*/ "}\n"; + + + QmlDomDocument document; + QVERIFY(document.load(&engine, qml)); + + QmlDomObject root = document.rootObject(); + + // All QmlDomDynamicProperty + QmlDomDynamicProperty dynProp = root.dynamicProperty("a"); + QCOMPARE(dynProp.position(), 40); + QCOMPARE(dynProp.length(), 18); + + // All QmlDomProperty + QmlDomProperty x = root.property("x"); + QCOMPARE(x.position(), 63); + QCOMPARE(x.length(), 1); + + QmlDomProperty y = root.property("y"); + QCOMPARE(y.position(), 73); + QCOMPARE(y.length(), 1); + + QmlDomProperty z = root.property("z"); + QCOMPARE(z.position(), 87); + QCOMPARE(z.length(), 1); + + QmlDomProperty opacity = root.property("opacity"); + QCOMPARE(opacity.position(), 113); + QCOMPARE(opacity.length(), 7); + + QmlDomProperty data = root.property("data"); + QCOMPARE(data.position(), 138); + QCOMPARE(data.length(), 0); + + QmlDomProperty children = root.property("children"); + QCOMPARE(children.position(), 175); + QCOMPARE(children.length(), 8); + + QmlDomList dataList = data.value().toList(); + QCOMPARE(dataList.values().count(), 1); + QmlDomList childrenList = children.value().toList(); + QCOMPARE(childrenList.values().count(), 2); + + // All QmlDomObject + QCOMPARE(root.position(), 14); + QCOMPARE(root.length(), 191); + + QmlDomObject numberAnimation = z.value().toValueSource().object(); + QCOMPARE(numberAnimation.position(), 90); + QCOMPARE(numberAnimation.length(), 18); + + QmlDomObject behavior = opacity.value().toValueInterceptor().object(); + QCOMPARE(behavior.position(), 122); + QCOMPARE(behavior.length(), 11); + + QmlDomObject component = dataList.values().at(0).toObject(); + QCOMPARE(component.position(), 138); + QCOMPARE(component.length(), 32); + + QmlDomObject componentRoot = component.toComponent().componentRoot(); + QCOMPARE(componentRoot.position(), 158); + QCOMPARE(componentRoot.length(), 6); + + QmlDomObject child1 = childrenList.values().at(0).toObject(); + QCOMPARE(child1.position(), 187); + QCOMPARE(child1.length(), 6); + + QmlDomObject child2 = childrenList.values().at(1).toObject(); + QCOMPARE(child2.position(), 195); + QCOMPARE(child2.length(), 6); + + // All QmlDomValue + QmlDomValue xValue = x.value(); + QCOMPARE(xValue.position(), 66); + QCOMPARE(xValue.length(), 2); + + QmlDomValue yValue = y.value(); + QCOMPARE(yValue.position(), 76); + QCOMPARE(yValue.length(), 6); + + QmlDomValue zValue = z.value(); + QCOMPARE(zValue.position(), 90); + QCOMPARE(zValue.length(), 18); + + QmlDomValue opacityValue = opacity.value(); + QCOMPARE(opacityValue.position(), 122); + QCOMPARE(opacityValue.length(), 11); + + QmlDomValue dataValue = data.value(); + QCOMPARE(dataValue.position(), 138); + QCOMPARE(dataValue.length(), 32); + + QmlDomValue child1Value = childrenList.values().at(0); + QCOMPARE(child1Value.position(), 187); + QCOMPARE(child1Value.length(), 6); + + QmlDomValue child2Value = childrenList.values().at(1); + QCOMPARE(child2Value.position(), 195); + QCOMPARE(child2Value.length(), 6); + + // All QmlDomList + qWarning("QmlListValue position test required"); +} QTEST_MAIN(tst_qmldom) diff --git a/tests/auto/declarative/qmleasefollow/data/easefollow1.qml b/tests/auto/declarative/qmleasefollow/data/easefollow1.qml new file mode 100644 index 0000000..0cc19eb --- /dev/null +++ b/tests/auto/declarative/qmleasefollow/data/easefollow1.qml @@ -0,0 +1,3 @@ +import Qt 4.6 + +EaseFollow {} diff --git a/tests/auto/declarative/qmleasefollow/data/easefollow2.qml b/tests/auto/declarative/qmleasefollow/data/easefollow2.qml new file mode 100644 index 0000000..b65964e --- /dev/null +++ b/tests/auto/declarative/qmleasefollow/data/easefollow2.qml @@ -0,0 +1,5 @@ +import Qt 4.6 + +EaseFollow { + source: 10; duration: 300; enabled: true; reversingMode: EaseFollow.Immediate +} diff --git a/tests/auto/declarative/qmleasefollow/data/easefollow3.qml b/tests/auto/declarative/qmleasefollow/data/easefollow3.qml new file mode 100644 index 0000000..f8886e9 --- /dev/null +++ b/tests/auto/declarative/qmleasefollow/data/easefollow3.qml @@ -0,0 +1,6 @@ +import Qt 4.6 + +EaseFollow { + source: 10; velocity: 250; enabled: false; reversingMode: EaseFollow.Sync + maximumEasingTime: 150 +} diff --git a/tests/auto/declarative/qmleasefollow/qmleasefollow.pro b/tests/auto/declarative/qmleasefollow/qmleasefollow.pro new file mode 100644 index 0000000..4224a7e --- /dev/null +++ b/tests/auto/declarative/qmleasefollow/qmleasefollow.pro @@ -0,0 +1,8 @@ +load(qttest_p4) +contains(QT_CONFIG,declarative): QT += declarative gui +macx:CONFIG -= app_bundle + +SOURCES += tst_qmleasefollow.cpp + +# Define SRCDIR equal to test's source directory +DEFINES += SRCDIR=\\\"$$PWD\\\" diff --git a/tests/auto/declarative/qmleasefollow/tst_qmleasefollow.cpp b/tests/auto/declarative/qmleasefollow/tst_qmleasefollow.cpp new file mode 100644 index 0000000..2e2050e --- /dev/null +++ b/tests/auto/declarative/qmleasefollow/tst_qmleasefollow.cpp @@ -0,0 +1,122 @@ +/**************************************************************************** +** +** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** No Commercial Usage +** This file contains pre-release code and may not be distributed. +** You may use this file in accordance with the terms and conditions +** contained in the Technology Preview License Agreement accompanying +** this package. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** If you have questions regarding the use of this file, please contact +** Nokia at qt-info@nokia.com. +** +** +** +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +#include <qtest.h> +#include <QtDeclarative/qmlengine.h> +#include <QtDeclarative/qmlcomponent.h> +#include <private/qmleasefollow_p.h> +#include <private/qmlvaluetype_p.h> +#include "../../../shared/util.h" + +class tst_qmleasefollow : public QObject +{ + Q_OBJECT +public: + tst_qmleasefollow(); + +private slots: + void defaultValues(); + void values(); + void disabled(); + +private: + QmlEngine engine; +}; + +tst_qmleasefollow::tst_qmleasefollow() +{ +} + +void tst_qmleasefollow::defaultValues() +{ + QmlEngine engine; + QmlComponent c(&engine, QUrl("file://" SRCDIR "/data/easefollow1.qml")); + QmlEaseFollow *obj = qobject_cast<QmlEaseFollow*>(c.create()); + + QVERIFY(obj != 0); + + QCOMPARE(obj->sourceValue(), 0.); + QCOMPARE(obj->velocity(), 200.); + QCOMPARE(obj->enabled(), true); + QCOMPARE(obj->duration(), -1.); + QCOMPARE(obj->maximumEasingTime(), -1.); + QCOMPARE(obj->reversingMode(), QmlEaseFollow::Eased); + + delete obj; +} + +void tst_qmleasefollow::values() +{ + QmlEngine engine; + QmlComponent c(&engine, QUrl("file://" SRCDIR "/data/easefollow2.qml")); + QmlEaseFollow *obj = qobject_cast<QmlEaseFollow*>(c.create()); + + QVERIFY(obj != 0); + + QCOMPARE(obj->sourceValue(), 10.); + QCOMPARE(obj->velocity(), 200.); + QCOMPARE(obj->enabled(), true); + QCOMPARE(obj->duration(), 300.); + QCOMPARE(obj->maximumEasingTime(), -1.); + QCOMPARE(obj->reversingMode(), QmlEaseFollow::Immediate); + + delete obj; +} + +void tst_qmleasefollow::disabled() +{ + QmlEngine engine; + QmlComponent c(&engine, QUrl("file://" SRCDIR "/data/easefollow3.qml")); + QmlEaseFollow *obj = qobject_cast<QmlEaseFollow*>(c.create()); + + QVERIFY(obj != 0); + + QCOMPARE(obj->sourceValue(), 10.); + QCOMPARE(obj->velocity(), 250.); + QCOMPARE(obj->enabled(), false); + QCOMPARE(obj->maximumEasingTime(), 150.); + QCOMPARE(obj->reversingMode(), QmlEaseFollow::Sync); + + delete obj; +} + +QTEST_MAIN(tst_qmleasefollow) + +#include "tst_qmleasefollow.moc" diff --git a/tests/auto/declarative/qmlecmascript/data/scriptErrors.qml b/tests/auto/declarative/qmlecmascript/data/scriptErrors.qml index d39b312..ff22990 100644 --- a/tests/auto/declarative/qmlecmascript/data/scriptErrors.qml +++ b/tests/auto/declarative/qmlecmascript/data/scriptErrors.qml @@ -4,9 +4,12 @@ MyQmlObject { Script { source: "scriptErrors.js" } Script { function getValue() { a = 10; return 0; } } - property int x: a.value - property int y: getValue(); + property int t: a.value + property int w: getValue(); + property int x: undefinedObject + property int y: (a.value, undefinedObject) onBasicSignal: { print(a.value); } + } diff --git a/tests/auto/declarative/qmlecmascript/tst_qmlecmascript.cpp b/tests/auto/declarative/qmlecmascript/tst_qmlecmascript.cpp index 220f589..983ddd0 100644 --- a/tests/auto/declarative/qmlecmascript/tst_qmlecmascript.cpp +++ b/tests/auto/declarative/qmlecmascript/tst_qmlecmascript.cpp @@ -480,6 +480,12 @@ void tst_qmlecmascript::enums() // Non-existant enums { QmlComponent component(&engine, TEST_FILE("enums.2.qml")); + + QString warning1 = component.url().toString() + ":5: Unable to assign [undefined] to int"; + QString warning2 = component.url().toString() + ":6: Unable to assign [undefined] to int"; + QTest::ignoreMessage(QtWarningMsg, qPrintable(warning1)); + QTest::ignoreMessage(QtWarningMsg, qPrintable(warning2)); + QObject *object = component.create(); QVERIFY(object != 0); QCOMPARE(object->property("a").toInt(), 0); @@ -586,6 +592,10 @@ Tests for a regression where this used to crash. void tst_qmlecmascript::nonExistantAttachedObject() { QmlComponent component(&engine, TEST_FILE("nonExistantAttachedObject.qml")); + + QString warning = component.url().toString() + ":4: Unable to assign [undefined] to QString"; + QTest::ignoreMessage(QtWarningMsg, qPrintable(warning)); + QObject *object = component.create(); QVERIFY(object != 0); } @@ -683,6 +693,10 @@ Tests that only methods of Script {} blocks are exposed. void tst_qmlecmascript::scriptAccess() { QmlComponent component(&engine, TEST_FILE("scriptAccess.qml")); + + QString warning = component.url().toString() + ":16: Unable to assign [undefined] to int"; + QTest::ignoreMessage(QtWarningMsg, qPrintable(warning)); + QObject *object = component.create(); QVERIFY(object != 0); @@ -811,11 +825,15 @@ void tst_qmlecmascript::scriptErrors() QString warning1 = url.left(url.length() - 3) + "js:2: Error: Invalid write to global property \"a\""; QString warning2 = url + ":7: TypeError: Result of expression 'a' [undefined] is not an object."; QString warning3 = url + ":5: Error: Invalid write to global property \"a\""; - QString warning4 = url + ":10: TypeError: Result of expression 'a' [undefined] is not an object."; + QString warning4 = url + ":12: TypeError: Result of expression 'a' [undefined] is not an object."; + QString warning5 = url + ":10: TypeError: Result of expression 'a' [undefined] is not an object."; + QString warning6 = url + ":9: Unable to assign [undefined] to int"; QTest::ignoreMessage(QtWarningMsg, warning1.toLatin1().constData()); QTest::ignoreMessage(QtWarningMsg, warning2.toLatin1().constData()); QTest::ignoreMessage(QtWarningMsg, warning3.toLatin1().constData()); + QTest::ignoreMessage(QtWarningMsg, warning5.toLatin1().constData()); + QTest::ignoreMessage(QtWarningMsg, warning6.toLatin1().constData()); MyQmlObject *object = qobject_cast<MyQmlObject *>(component.create()); QVERIFY(object != 0); diff --git a/tests/auto/declarative/qmlgraphicsgridview/data/gridview2.qml b/tests/auto/declarative/qmlgraphicsgridview/data/gridview2.qml new file mode 100644 index 0000000..62b5bd3 --- /dev/null +++ b/tests/auto/declarative/qmlgraphicsgridview/data/gridview2.qml @@ -0,0 +1,26 @@ +import Qt 4.6 + +GridView { + anchors.fill: parent + width: 320; height: 200 + cellWidth: 100; cellHeight: 100; cacheBuffer: 200; focus: true + keyNavigationWraps: true; highlightFollowsCurrentItem: false + + model: ListModel { + id: appModel + ListElement { lColor: "red" } + ListElement { lColor: "yellow" } + ListElement { lColor: "green" } + ListElement { lColor: "blue" } + } + + delegate: Item { + width: 100; height: 100 + Rectangle { + color: lColor; x: 4; y: 4 + width: 92; height: 92 + } + } + + highlight: Rectangle { width: 100; height: 100; color: "black" } +} diff --git a/tests/auto/declarative/qmlgraphicsgridview/data/gridview3.qml b/tests/auto/declarative/qmlgraphicsgridview/data/gridview3.qml new file mode 100644 index 0000000..b133d55 --- /dev/null +++ b/tests/auto/declarative/qmlgraphicsgridview/data/gridview3.qml @@ -0,0 +1,6 @@ +import Qt 4.6 + +GridView { + anchors.fill: parent + width: 320; height: 200 +} diff --git a/tests/auto/declarative/qmlgraphicsgridview/tst_qmlgraphicsgridview.cpp b/tests/auto/declarative/qmlgraphicsgridview/tst_qmlgraphicsgridview.cpp index d99b16f..d09aad7 100644 --- a/tests/auto/declarative/qmlgraphicsgridview/tst_qmlgraphicsgridview.cpp +++ b/tests/auto/declarative/qmlgraphicsgridview/tst_qmlgraphicsgridview.cpp @@ -38,6 +38,9 @@ ** $QT_END_LICENSE$ ** ****************************************************************************/ + +#include <qmlengine.h> +#include <qmlcomponent.h> #include <QtTest/QtTest> #include <private/qlistmodelinterface_p.h> #include <qmlview.h> @@ -60,6 +63,8 @@ private slots: void moved(); void currentIndex(); void changeFlow(); + void defaultValues(); + void properties(); private: QmlView *createView(const QString &filename); @@ -690,6 +695,52 @@ void tst_QmlGraphicsGridView::changeFlow() delete canvas; } +void tst_QmlGraphicsGridView::defaultValues() +{ + QmlEngine engine; + QmlComponent c(&engine, QUrl("file://" SRCDIR "/data/gridview3.qml")); + QmlGraphicsGridView *obj = qobject_cast<QmlGraphicsGridView*>(c.create()); + + QVERIFY(obj != 0); + QVERIFY(obj->model() == QVariant()); + QVERIFY(obj->delegate() == 0); + QCOMPARE(obj->currentIndex(), -1); + QVERIFY(obj->currentItem() == 0); + QCOMPARE(obj->count(), 0); + QVERIFY(obj->highlight() == 0); + QVERIFY(obj->highlightItem() == 0); + QCOMPARE(obj->highlightFollowsCurrentItem(), true); + QVERIFY(obj->flow() == 0); + QCOMPARE(obj->isWrapEnabled(), false); + QCOMPARE(obj->cacheBuffer(), 0); + QCOMPARE(obj->cellWidth(), 100); //### Should 100 be the default? + QCOMPARE(obj->cellHeight(), 100); + delete obj; +} + +void tst_QmlGraphicsGridView::properties() +{ + QmlEngine engine; + QmlComponent c(&engine, QUrl("file://" SRCDIR "/data/gridview2.qml")); + QmlGraphicsGridView *obj = qobject_cast<QmlGraphicsGridView*>(c.create()); + + QVERIFY(obj != 0); + QVERIFY(obj->model() != QVariant()); + QVERIFY(obj->delegate() != 0); + QCOMPARE(obj->currentIndex(), 0); + QVERIFY(obj->currentItem() != 0); + QCOMPARE(obj->count(), 4); + QVERIFY(obj->highlight() != 0); + QVERIFY(obj->highlightItem() != 0); + QCOMPARE(obj->highlightFollowsCurrentItem(), false); + QVERIFY(obj->flow() == 0); + QCOMPARE(obj->isWrapEnabled(), true); + QCOMPARE(obj->cacheBuffer(), 200); + QCOMPARE(obj->cellWidth(), 100); + QCOMPARE(obj->cellHeight(), 100); + delete obj; +} + QmlView *tst_QmlGraphicsGridView::createView(const QString &filename) { QmlView *canvas = new QmlView(0); diff --git a/tests/auto/declarative/qmlgraphicsloader/tst_qmlgraphicsloader.cpp b/tests/auto/declarative/qmlgraphicsloader/tst_qmlgraphicsloader.cpp index 8fda991..a88026b 100644 --- a/tests/auto/declarative/qmlgraphicsloader/tst_qmlgraphicsloader.cpp +++ b/tests/auto/declarative/qmlgraphicsloader/tst_qmlgraphicsloader.cpp @@ -114,7 +114,7 @@ void tst_QmlGraphicsLoader::component() void tst_QmlGraphicsLoader::invalidUrl() { -// QTest::ignoreMessage(QtWarningMsg, "(:-1: File error for URL file://" SRCDIR "/IDontExist.qml)"); + QTest::ignoreMessage(QtWarningMsg, "(:-1: File error for URL file://" SRCDIR "/IDontExist.qml) "); QmlComponent component(&engine, QByteArray("import Qt 4.6\nLoader { source: \"IDontExist.qml\" }"), QUrl("file://" SRCDIR "/")); QmlGraphicsLoader *loader = qobject_cast<QmlGraphicsLoader*>(component.create()); diff --git a/tests/auto/declarative/qmlgraphicspathview/data/pathview1.qml b/tests/auto/declarative/qmlgraphicspathview/data/pathview1.qml new file mode 100644 index 0000000..b3b0a9a --- /dev/null +++ b/tests/auto/declarative/qmlgraphicspathview/data/pathview1.qml @@ -0,0 +1,4 @@ +import Qt 4.6 + +PathView { +} diff --git a/tests/auto/declarative/qmlgraphicspathview/data/pathview2.qml b/tests/auto/declarative/qmlgraphicspathview/data/pathview2.qml new file mode 100644 index 0000000..0d5c98b --- /dev/null +++ b/tests/auto/declarative/qmlgraphicspathview/data/pathview2.qml @@ -0,0 +1,57 @@ +import Qt 4.6 + +PathView { + id: photoPathView; model: rssModel; delegate: photoDelegate + y: 100; width: 800; height: 330; pathItemCount: 10; z: 1 + + path: Path { + startX: -50; startY: 40; + + PathAttribute { name: "scale"; value: 0.5 } + PathAttribute { name: "angle"; value: -45 } + + PathCubic { + x: 400; y: 220 + control1X: 140; control1Y: 40 + control2X: 210; control2Y: 220 + } + + PathAttribute { name: "scale"; value: 1.2 } + PathAttribute { name: "angle"; value: 0 } + + PathCubic { + x: 850; y: 40 + control2X: 660; control2Y: 40 + control1X: 590; control1Y: 220 + } + + PathAttribute { name: "scale"; value: 0.5 } + PathAttribute { name: "angle"; value: 45 } + } + + model: ListModel { + id: rssModel + ListElement { lColor: "red" } + ListElement { lColor: "green" } + ListElement { lColor: "yellow" } + ListElement { lColor: "blue" } + ListElement { lColor: "purple" } + ListElement { lColor: "gray" } + ListElement { lColor: "brown" } + ListElement { lColor: "thistle" } + } + + delegate: Component { + id: photoDelegate + Rectangle { + id: wrapper + width: 85; height: 85; color: lColor + scale: wrapper.PathView.scale + + transform: Rotation { + id: itemRotation; origin.x: wrapper.width/2; origin.y: wrapper.height/2 + axis.y: 1; axis.z: 0; angle: wrapper.PathView.angle + } + } + } +} diff --git a/tests/auto/declarative/qmlgraphicspathview/data/pathview3.qml b/tests/auto/declarative/qmlgraphicspathview/data/pathview3.qml new file mode 100644 index 0000000..a8c1e91 --- /dev/null +++ b/tests/auto/declarative/qmlgraphicspathview/data/pathview3.qml @@ -0,0 +1,58 @@ +import Qt 4.6 + +PathView { + id: photoPathView; model: rssModel; delegate: photoDelegate + y: 100; width: 800; height: 330; pathItemCount: 4; offset: 10 + dragMargin: 24; snapPosition: 50 + + path: Path { + startX: -50; startY: 40; + + PathAttribute { name: "scale"; value: 0.5 } + PathAttribute { name: "angle"; value: -45 } + + PathCubic { + x: 400; y: 220 + control1X: 140; control1Y: 40 + control2X: 210; control2Y: 220 + } + + PathAttribute { name: "scale"; value: 1.2 } + PathAttribute { name: "angle"; value: 0 } + + PathCubic { + x: 850; y: 40 + control2X: 660; control2Y: 40 + control1X: 590; control1Y: 220 + } + + PathAttribute { name: "scale"; value: 0.5 } + PathAttribute { name: "angle"; value: 45 } + } + + model: ListModel { + id: rssModel + ListElement { lColor: "red" } + ListElement { lColor: "green" } + ListElement { lColor: "yellow" } + ListElement { lColor: "blue" } + ListElement { lColor: "purple" } + ListElement { lColor: "gray" } + ListElement { lColor: "brown" } + ListElement { lColor: "thistle" } + } + + delegate: Component { + id: photoDelegate + Rectangle { + id: wrapper + width: 85; height: 85; color: lColor + scale: wrapper.PathView.scale + + transform: Rotation { + id: itemRotation; origin.x: wrapper.width/2; origin.y: wrapper.height/2 + axis.y: 1; axis.z: 0; angle: wrapper.PathView.angle + } + } + } +} diff --git a/tests/auto/declarative/qmlgraphicspathview/qmlgraphicspathview.pro b/tests/auto/declarative/qmlgraphicspathview/qmlgraphicspathview.pro new file mode 100644 index 0000000..142a256 --- /dev/null +++ b/tests/auto/declarative/qmlgraphicspathview/qmlgraphicspathview.pro @@ -0,0 +1,8 @@ +load(qttest_p4) +contains(QT_CONFIG,declarative): QT += declarative +macx:CONFIG -= app_bundle + +SOURCES += tst_qmlgraphicspathview.cpp + +# Define SRCDIR equal to test's source directory +DEFINES += SRCDIR=\\\"$$PWD\\\" diff --git a/tests/auto/declarative/qmlgraphicspathview/tst_qmlgraphicspathview.cpp b/tests/auto/declarative/qmlgraphicspathview/tst_qmlgraphicspathview.cpp new file mode 100644 index 0000000..c36b969 --- /dev/null +++ b/tests/auto/declarative/qmlgraphicspathview/tst_qmlgraphicspathview.cpp @@ -0,0 +1,123 @@ +/**************************************************************************** +** +** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** No Commercial Usage +** This file contains pre-release code and may not be distributed. +** You may use this file in accordance with the terms and conditions +** contained in the Technology Preview License Agreement accompanying +** this package. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** If you have questions regarding the use of this file, please contact +** Nokia at qt-info@nokia.com. +** +** +** +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +#include <private/qmlgraphicspathview_p.h> +#include <qmlcontext.h> +#include <qmlexpression.h> +#include <qtest.h> +#include <QtDeclarative/qmlengine.h> +#include <QtDeclarative/qmlcomponent.h> +#include <private/qmlvaluetype_p.h> +#include "../../../shared/util.h" + +class tst_QmlGraphicsPathView : public QObject +{ + Q_OBJECT +public: + tst_QmlGraphicsPathView(); + +private slots: + void initValues(); + void pathview2(); + void pathview3(); +}; + + +tst_QmlGraphicsPathView::tst_QmlGraphicsPathView() +{ +} + +void tst_QmlGraphicsPathView::initValues() +{ + QmlEngine engine; + QmlComponent c(&engine, QUrl("file://" SRCDIR "/data/pathview1.qml")); + QmlGraphicsPathView *obj = qobject_cast<QmlGraphicsPathView*>(c.create()); + + QVERIFY(obj != 0); + QVERIFY(obj->path() == 0); + QVERIFY(obj->delegate() == 0); + QCOMPARE(obj->model(), QVariant()); + QCOMPARE(obj->currentIndex(), 0); + QCOMPARE(obj->offset(), 0.); + QCOMPARE(obj->snapPosition(), 0.); + QCOMPARE(obj->dragMargin(), 0.); + QCOMPARE(obj->count(), 0); + QCOMPARE(obj->pathItemCount(), -1); +} + +void tst_QmlGraphicsPathView::pathview2() +{ + QmlEngine engine; + QmlComponent c(&engine, QUrl("file://" SRCDIR "/data/pathview2.qml")); + QmlGraphicsPathView *obj = qobject_cast<QmlGraphicsPathView*>(c.create()); + + QVERIFY(obj != 0); + QVERIFY(obj->path() != 0); + QVERIFY(obj->delegate() != 0); + QVERIFY(obj->model() != QVariant()); + QCOMPARE(obj->currentIndex(), 0); + QCOMPARE(obj->offset(), 0.); + QCOMPARE(obj->snapPosition(), 0.); + QCOMPARE(obj->dragMargin(), 0.); + QCOMPARE(obj->count(), 8); + QCOMPARE(obj->pathItemCount(), 10); +} + +void tst_QmlGraphicsPathView::pathview3() +{ + QmlEngine engine; + QmlComponent c(&engine, QUrl("file://" SRCDIR "/data/pathview3.qml")); + QmlGraphicsPathView *obj = qobject_cast<QmlGraphicsPathView*>(c.create()); + + QVERIFY(obj != 0); + QVERIFY(obj->path() != 0); + QVERIFY(obj->delegate() != 0); + QVERIFY(obj->model() != QVariant()); + QCOMPARE(obj->currentIndex(), 0); + QCOMPARE(obj->offset(), 50.); // ??? + QCOMPARE(obj->snapPosition(), 0.5); // ??? + QCOMPARE(obj->dragMargin(), 24.); + QCOMPARE(obj->count(), 8); + QCOMPARE(obj->pathItemCount(), 4); +} + +QTEST_MAIN(tst_QmlGraphicsPathView) + +#include "tst_qmlgraphicspathview.moc" diff --git a/tests/auto/declarative/qmlgraphicstextedit/data/http/ErrItem.qml b/tests/auto/declarative/qmlgraphicstextedit/data/http/ErrItem.qml new file mode 100644 index 0000000..34b3883 --- /dev/null +++ b/tests/auto/declarative/qmlgraphicstextedit/data/http/ErrItem.qml @@ -0,0 +1,7 @@ +import Qt 4.6 + +Item{ + Fungus{ + palatable: false; + } +} diff --git a/tests/auto/declarative/qmlgraphicstextedit/data/http/NormItem.qml b/tests/auto/declarative/qmlgraphicstextedit/data/http/NormItem.qml new file mode 100644 index 0000000..718cb71 --- /dev/null +++ b/tests/auto/declarative/qmlgraphicstextedit/data/http/NormItem.qml @@ -0,0 +1,6 @@ +import Qt 4.6 + +Item { + objectName: "delegateOkay" + Rectangle { } +} diff --git a/tests/auto/declarative/qmlgraphicstextedit/data/http/cursorHttpTest.qml b/tests/auto/declarative/qmlgraphicstextedit/data/http/cursorHttpTest.qml new file mode 100644 index 0000000..3c31e11 --- /dev/null +++ b/tests/auto/declarative/qmlgraphicstextedit/data/http/cursorHttpTest.qml @@ -0,0 +1,22 @@ +import Qt 4.6 + +Rectangle { width: 300; height: 300; color: "white" + resources: [ + Component { id:cursorFail; FailItem { objectName: "delegateFail" } }, + Component { id:cursorWait; WaitItem { objectName: "delegateSlow" } }, + Component { id:cursorNorm; NormItem { objectName: "delegateOkay" } }, + Component { id:cursorErr; ErrItem { objectName: "delegateErrorA" } } + ] + TextEdit { + cursorDelegate: cursorFail + } + TextEdit { + cursorDelegate: cursorWait + } + TextEdit { + cursorDelegate: cursorNorm + } + TextEdit { + cursorDelegate: cursorErr + } +} diff --git a/tests/auto/declarative/qmlgraphicstextedit/data/http/cursorHttpTestFail1.qml b/tests/auto/declarative/qmlgraphicstextedit/data/http/cursorHttpTestFail1.qml new file mode 100644 index 0000000..a44aec2 --- /dev/null +++ b/tests/auto/declarative/qmlgraphicstextedit/data/http/cursorHttpTestFail1.qml @@ -0,0 +1,18 @@ +import Qt 4.6 + +Rectangle { width: 300; height: 300; color: "white" + resources: [ + Component { id:cursorFail; FailItem { objectName: "delegateFail" } }, + Component { id:cursorWait; WaitItem { objectName: "delegateSlow" } }, + Component { id:cursorNorm; NormItem { objectName: "delegateOkay" } } + ] + TextEdit { + cursorDelegate: cursorFail + } + TextEdit { + cursorDelegate: cursorWait + } + TextEdit { + cursorDelegate: cursorNorm + } +} diff --git a/tests/auto/declarative/qmlgraphicstextedit/data/http/cursorHttpTestFail2.qml b/tests/auto/declarative/qmlgraphicstextedit/data/http/cursorHttpTestFail2.qml new file mode 100644 index 0000000..57d3e47 --- /dev/null +++ b/tests/auto/declarative/qmlgraphicstextedit/data/http/cursorHttpTestFail2.qml @@ -0,0 +1,18 @@ +import Qt 4.6 + +Rectangle { width: 300; height: 300; color: "white" + resources: [ + Component { id:cursorWait; WaitItem { objectName: "delegateSlow" } }, + Component { id:cursorNorm; NormItem { objectName: "delegateOkay" } }, + Component { id:cursorErr; ErrItem { objectName: "delegateErrorA" } } + ] + TextEdit { + cursorDelegate: cursorWait + } + TextEdit { + cursorDelegate: cursorNorm + } + TextEdit { + cursorDelegate: cursorErr + } +} diff --git a/tests/auto/declarative/qmlgraphicstextedit/data/http/cursorHttpTestPass.qml b/tests/auto/declarative/qmlgraphicstextedit/data/http/cursorHttpTestPass.qml new file mode 100644 index 0000000..a44e867 --- /dev/null +++ b/tests/auto/declarative/qmlgraphicstextedit/data/http/cursorHttpTestPass.qml @@ -0,0 +1,18 @@ +import Qt 4.6 + +Rectangle { width: 300; height: 300; color: "white" + resources: [ + Component { id:cursorWait; WaitItem { objectName: "delegateSlow" } }, + Component { id:cursorNorm; NormItem { objectName: "delegateOkay" } } + ] + TextEdit { + cursorDelegate: cursorWait + text: "Hello" + } + TextEdit { + objectName: "textEditObject" + cursorDelegate: cursorNorm + focus: true; + text: "Hello" + } +} diff --git a/tests/auto/declarative/qmlgraphicstextedit/data/httpfail/FailItem.qml b/tests/auto/declarative/qmlgraphicstextedit/data/httpfail/FailItem.qml new file mode 100644 index 0000000..ddbf526 --- /dev/null +++ b/tests/auto/declarative/qmlgraphicstextedit/data/httpfail/FailItem.qml @@ -0,0 +1,5 @@ +import Qt 4.6 + +Item { + Rectangle { } +} diff --git a/tests/auto/declarative/qmlgraphicstextedit/data/httpslow/WaitItem.qml b/tests/auto/declarative/qmlgraphicstextedit/data/httpslow/WaitItem.qml new file mode 100644 index 0000000..ddbf526 --- /dev/null +++ b/tests/auto/declarative/qmlgraphicstextedit/data/httpslow/WaitItem.qml @@ -0,0 +1,5 @@ +import Qt 4.6 + +Item { + Rectangle { } +} diff --git a/tests/auto/declarative/qmlgraphicstextedit/qmlgraphicstextedit.pro b/tests/auto/declarative/qmlgraphicstextedit/qmlgraphicstextedit.pro index 9e6a71a..a129120 100644 --- a/tests/auto/declarative/qmlgraphicstextedit/qmlgraphicstextedit.pro +++ b/tests/auto/declarative/qmlgraphicstextedit/qmlgraphicstextedit.pro @@ -1,8 +1,9 @@ load(qttest_p4) -contains(QT_CONFIG,declarative): QT += declarative gui +contains(QT_CONFIG,declarative): QT += declarative gui network macx:CONFIG -= app_bundle -SOURCES += tst_qmlgraphicstextedit.cpp +SOURCES += tst_qmlgraphicstextedit.cpp ../shared/testhttpserver.cpp +HEADERS += ../shared/testhttpserver.h # Define SRCDIR equal to test's source directory DEFINES += SRCDIR=\\\"$$PWD\\\" diff --git a/tests/auto/declarative/qmlgraphicstextedit/tst_qmlgraphicstextedit.cpp b/tests/auto/declarative/qmlgraphicstextedit/tst_qmlgraphicstextedit.cpp index 4dc036d..543c650 100644 --- a/tests/auto/declarative/qmlgraphicstextedit/tst_qmlgraphicstextedit.cpp +++ b/tests/auto/declarative/qmlgraphicstextedit/tst_qmlgraphicstextedit.cpp @@ -40,6 +40,7 @@ ****************************************************************************/ #include <qtest.h> #include "../../../shared/util.h" +#include "../shared/testhttpserver.h" #include <math.h> #include <QFile> #include <QTextDocument> @@ -75,6 +76,7 @@ private slots: void selection(); void cursorDelegate(); + void delegateLoading(); void navigation(); void readOnly(); @@ -592,6 +594,51 @@ void tst_qmlgraphicstextedit::cursorDelegate() QVERIFY(!textEditObject->findChild<QmlGraphicsItem*>("cursorInstance")); } +void tst_qmlgraphicstextedit::delegateLoading() +{ + TestHTTPServer server(42332); + server.serveDirectory("data/httpfail", TestHTTPServer::Disconnect); + server.serveDirectory("data/httpslow", TestHTTPServer::Delay); + server.serveDirectory("data/http"); + QmlView* view= new QmlView(0); + view->setUrl(QUrl("http://localhost:42332/cursorHttpTestPass.qml")); + view->execute(); + view->show(); + view->setFocus(); + QTest::qWait(500); + QmlGraphicsTextEdit *textEditObject = view->root()->findChild<QmlGraphicsTextEdit*>("textEditObject"); + QEXPECT_FAIL("","QT-2498", Continue); + QVERIFY(textEditObject != 0); + //textEditObject->setFocus(true); + QmlGraphicsItem *delegate; + QEXPECT_FAIL("","QT-2498", Continue); + delegate = view->root()->findChild<QmlGraphicsItem*>("delegateOkay"); + QVERIFY(delegate); + QEXPECT_FAIL("","QT-2498", Continue); + delegate = view->root()->findChild<QmlGraphicsItem*>("delegateSlow"); + QVERIFY(delegate); + view->setUrl(QUrl("http://localhost:42332/cursorHttpTestFail1.qml")); + view->execute(); + view->show(); + view->setFocus(); + delegate = view->root()->findChild<QmlGraphicsItem*>("delegateOkay"); + QVERIFY(!delegate); + delegate = view->root()->findChild<QmlGraphicsItem*>("delegateFail"); + QVERIFY(!delegate); + view->setUrl(QUrl("http://localhost:42332/cursorHttpTestFail2.qml")); + view->execute(); + view->show(); + view->setFocus(); + delegate = view->root()->findChild<QmlGraphicsItem*>("delegateOkay"); + QVERIFY(!delegate); + delegate = view->root()->findChild<QmlGraphicsItem*>("delegateErrorA"); + QVERIFY(!delegate); + //ErrorB should get a component which is ready but component.create() returns null + //Not sure how to accomplish this with QmlGraphicsTextEdits cursor delegate + //delegate = view->root()->findChild<QmlGraphicsItem*>("delegateErrorB"); + //QVERIFY(!delegate); +} + /* TextEdit element should only handle left/right keys until the cursor reaches the extent of the text, then they should ignore the keys. diff --git a/tests/auto/declarative/qmlgraphicswebview/data/elements.html b/tests/auto/declarative/qmlgraphicswebview/data/elements.html new file mode 100644 index 0000000..9236867 --- /dev/null +++ b/tests/auto/declarative/qmlgraphicswebview/data/elements.html @@ -0,0 +1,14 @@ +<body leftmargin=0 topmargin=0> +<table width="300px" border=1 cellpadding=0 cellspacing=0> +<tr> +<td align=center width=25%%><p>A</p></td> +<td width=75% height=50px> + <table width=100% border=1 cellpadding=0 cellspacing=0> + <tr> + <td align=center width=50% height=50px><p>B</p></td> + <td align=center width=50% height=50px><p>C</p></td> + </tr> + </table> +</td> +</tr> +</table> diff --git a/tests/auto/declarative/qmlgraphicswebview/data/elements.qml b/tests/auto/declarative/qmlgraphicswebview/data/elements.qml new file mode 100644 index 0000000..7c030e6 --- /dev/null +++ b/tests/auto/declarative/qmlgraphicswebview/data/elements.qml @@ -0,0 +1,7 @@ +import Qt 4.6 + +WebView { + url: "elements.html" + width: 310 + height: 100 +} diff --git a/tests/auto/declarative/qmlgraphicswebview/data/newwindows.html b/tests/auto/declarative/qmlgraphicswebview/data/newwindows.html new file mode 100644 index 0000000..dd541f9 --- /dev/null +++ b/tests/auto/declarative/qmlgraphicswebview/data/newwindows.html @@ -0,0 +1,16 @@ +<html> +<head> +<script type="text/javascript"> +<!-- +function clickTheLink() +{ + var ev = document.createEvent('MouseEvents'); + ev.initEvent( "click", true, false ); + document.getElementById('thelink').dispatchEvent(ev); +} +// --> +</script> +</head> +<h1>Multiple windows...</h1> + +<a id=thelink target="_blank" href="newwindows.html">Popup!</a> diff --git a/tests/auto/declarative/qmlgraphicswebview/data/newwindows.qml b/tests/auto/declarative/qmlgraphicswebview/data/newwindows.qml new file mode 100644 index 0000000..9d13715 --- /dev/null +++ b/tests/auto/declarative/qmlgraphicswebview/data/newwindows.qml @@ -0,0 +1,32 @@ +// Demonstrates opening new WebViews from HTML + +import Qt 4.6 + +Grid { + columns: 3 + id: pages + height: 300; width: 600 + property int total: 0 + + Component { + id: webViewPage + Rectangle { + width: webView.width + height: webView.height + border.color: "gray" + + WebView { + id: webView + newWindowComponent: webViewPage + newWindowParent: pages + url: "newwindows.html" + Timer { + interval: 10; running: total<4; repeat: false; + onTriggered: {total++; webView.evaluateJavaScript("clickTheLink()")} + } + } + } + } + + Loader { sourceComponent: webViewPage } +} diff --git a/tests/auto/declarative/qmlgraphicswebview/tst_qmlgraphicswebview.cpp b/tests/auto/declarative/qmlgraphicswebview/tst_qmlgraphicswebview.cpp index 44319c1..da43e68 100644 --- a/tests/auto/declarative/qmlgraphicswebview/tst_qmlgraphicswebview.cpp +++ b/tests/auto/declarative/qmlgraphicswebview/tst_qmlgraphicswebview.cpp @@ -43,6 +43,8 @@ #include <QtDeclarative/qmlengine.h> #include <QtDeclarative/qmlcomponent.h> #include <private/qmlgraphicswebview_p.h> +#include <private/qmlgraphicswebview_p_p.h> +#include <private/qmlgraphicspositioners_p.h> #include <QtWebKit/qwebpage.h> #include <QtWebKit/qwebframe.h> #include <QtCore/qdir.h> @@ -56,7 +58,10 @@ public: private slots: void basicProperties(); + void settings(); void historyNav(); + void multipleWindows(); + void elementAreaAt(); void loadError(); void setHtml(); void javaScript(); @@ -153,6 +158,71 @@ void tst_qmlgraphicswebview::basicProperties() QTRY_COMPARE(wv->progress(), 1.0); } +void tst_qmlgraphicswebview::settings() +{ + QmlComponent component(&engine, QUrl::fromLocalFile(SRCDIR "/data/basic.qml")); + checkNoErrors(component); + QmlGraphicsWebView *wv = qobject_cast<QmlGraphicsWebView*>(component.create()); + QVERIFY(wv != 0); + QTRY_COMPARE(wv->progress(), 1.0); + + QmlGraphicsWebSettings *s = wv->settingsObject(); + + // merely tests that setting gets stored (in QWebSettings) + // behavioural tests are in WebKit. + for (int b=0; b<=1; ++b) { + bool on = !!b; + + s->setAutoLoadImages(on); + s->setDeveloperExtrasEnabled(on); + s->setJavaEnabled(on); + s->setJavascriptCanAccessClipboard(on); + s->setJavascriptCanOpenWindows(on); + s->setJavascriptEnabled(on); + s->setLinksIncludedInFocusChain(on); + s->setLocalContentCanAccessRemoteUrls(on); + s->setLocalStorageDatabaseEnabled(on); + s->setOfflineStorageDatabaseEnabled(on); + s->setOfflineWebApplicationCacheEnabled(on); + s->setPluginsEnabled(on); + s->setPrintElementBackgrounds(on); + s->setPrivateBrowsingEnabled(on); + s->setZoomTextOnly(on); + + QVERIFY(s->autoLoadImages() == on); + QVERIFY(s->developerExtrasEnabled() == on); + QVERIFY(s->javaEnabled() == on); + QVERIFY(s->javascriptCanAccessClipboard() == on); + QVERIFY(s->javascriptCanOpenWindows() == on); + QVERIFY(s->javascriptEnabled() == on); + QVERIFY(s->linksIncludedInFocusChain() == on); + QVERIFY(s->localContentCanAccessRemoteUrls() == on); + QVERIFY(s->localStorageDatabaseEnabled() == on); + QVERIFY(s->offlineStorageDatabaseEnabled() == on); + QVERIFY(s->offlineWebApplicationCacheEnabled() == on); + QVERIFY(s->pluginsEnabled() == on); + QVERIFY(s->printElementBackgrounds() == on); + QVERIFY(s->privateBrowsingEnabled() == on); + QVERIFY(s->zoomTextOnly() == on); + + QVERIFY(s->property("autoLoadImages") == on); + QVERIFY(s->property("developerExtrasEnabled") == on); + QVERIFY(s->property("javaEnabled") == on); + QVERIFY(s->property("javascriptCanAccessClipboard") == on); + QVERIFY(s->property("javascriptCanOpenWindows") == on); + QVERIFY(s->property("javascriptEnabled") == on); + QVERIFY(s->property("linksIncludedInFocusChain") == on); + QVERIFY(s->property("localContentCanAccessRemoteUrls") == on); + QVERIFY(s->property("localStorageDatabaseEnabled") == on); + QVERIFY(s->property("offlineStorageDatabaseEnabled") == on); + QVERIFY(s->property("offlineWebApplicationCacheEnabled") == on); + QVERIFY(s->property("pluginsEnabled") == on); + QVERIFY(s->property("printElementBackgrounds") == on); + QVERIFY(s->property("privateBrowsingEnabled") == on); + QVERIFY(s->property("zoomTextOnly") == on); + } +} + void tst_qmlgraphicswebview::historyNav() { QmlComponent component(&engine, QUrl::fromLocalFile(SRCDIR "/data/basic.qml")); @@ -218,6 +288,16 @@ void tst_qmlgraphicswebview::historyNav() QVERIFY(!wv->stopAction()->isEnabled()); } +void tst_qmlgraphicswebview::multipleWindows() +{ + QmlComponent component(&engine, QUrl::fromLocalFile(SRCDIR "/data/newwindows.qml")); + checkNoErrors(component); + + QmlGraphicsGrid *grid = qobject_cast<QmlGraphicsGrid*>(component.create()); + QVERIFY(grid != 0); + QTRY_COMPARE(grid->children().count(), 2+5); // Component, Loader, 5 WebViews +} + void tst_qmlgraphicswebview::loadError() { QmlComponent component(&engine, QUrl::fromLocalFile(SRCDIR "/data/loadError.qml")); @@ -246,6 +326,21 @@ void tst_qmlgraphicswebview::setHtml() QCOMPARE(wv->html(),QString("<html><head></head><body><p>This is a <b>string</b> set on the WebView</p></body></html>")); } +void tst_qmlgraphicswebview::elementAreaAt() +{ + QmlComponent component(&engine, QUrl::fromLocalFile(SRCDIR "/data/elements.qml")); + checkNoErrors(component); + QmlGraphicsWebView *wv = qobject_cast<QmlGraphicsWebView*>(component.create()); + QVERIFY(wv != 0); + QTRY_COMPARE(wv->progress(), 1.0); + + QCOMPARE(wv->elementAreaAt(40,30,100,100),QRect(1,1,75,54)); // Area A in data/elements.html + QCOMPARE(wv->elementAreaAt(130,30,200,100),QRect(78,3,110,50)); // Area B + QCOMPARE(wv->elementAreaAt(40,30,400,400),QRect(0,0,310,100)); // Whole view + QCOMPARE(wv->elementAreaAt(130,30,280,280),QRect(76,1,223,54)); // Area BC + QCOMPARE(wv->elementAreaAt(130,30,400,400),QRect(0,0,310,100)); // Whole view +} + void tst_qmlgraphicswebview::javaScript() { QmlComponent component(&engine, QUrl::fromLocalFile(SRCDIR "/data/javaScript.qml")); diff --git a/tests/auto/declarative/qmllanguage/data/cppnamespace.2.qml b/tests/auto/declarative/qmllanguage/data/cppnamespace.2.qml new file mode 100644 index 0000000..e3b32ca --- /dev/null +++ b/tests/auto/declarative/qmllanguage/data/cppnamespace.2.qml @@ -0,0 +1,5 @@ +import Test 1.0 + +MySecondNamespacedType { + list: [ MyNamespacedType {} ] +} diff --git a/tests/auto/declarative/qmllanguage/qmllanguage.pro b/tests/auto/declarative/qmllanguage/qmllanguage.pro index e45d73a..d1876ef 100644 --- a/tests/auto/declarative/qmllanguage/qmllanguage.pro +++ b/tests/auto/declarative/qmllanguage/qmllanguage.pro @@ -1,11 +1,14 @@ load(qttest_p4) contains(QT_CONFIG,declarative): QT += declarative -QT += script +QT += script network macx:CONFIG -= app_bundle SOURCES += tst_qmllanguage.cpp \ testtypes.cpp HEADERS += testtypes.h -# QMAKE_CXXFLAGS = -fprofile-arcs -ftest-coverage -# LIBS += -lgcov +INCLUDEPATH += ../shared/ +HEADERS += ../shared/testhttpserver.h +SOURCES += ../shared/testhttpserver.cpp + +DEFINES += SRCDIR=\\\"$$PWD\\\" diff --git a/tests/auto/declarative/qmllanguage/qtest/declarative/qmllanguage/LocalInternal.qml b/tests/auto/declarative/qmllanguage/qtest/declarative/qmllanguage/LocalInternal.qml new file mode 100644 index 0000000..836c20a --- /dev/null +++ b/tests/auto/declarative/qmllanguage/qtest/declarative/qmllanguage/LocalInternal.qml @@ -0,0 +1,3 @@ +import Qt 4.6 + +Image { source: "pics/blue.png" } diff --git a/tests/auto/declarative/qmllanguage/qtest/declarative/qmllanguage/Test.qml b/tests/auto/declarative/qmllanguage/qtest/declarative/qmllanguage/Test.qml new file mode 100644 index 0000000..c4d5905 --- /dev/null +++ b/tests/auto/declarative/qmllanguage/qtest/declarative/qmllanguage/Test.qml @@ -0,0 +1,2 @@ +import Qt 4.6 +Rectangle { } diff --git a/tests/auto/declarative/qmllanguage/qtest/declarative/qmllanguage/TestLocal.qml b/tests/auto/declarative/qmllanguage/qtest/declarative/qmllanguage/TestLocal.qml new file mode 100644 index 0000000..11443ca --- /dev/null +++ b/tests/auto/declarative/qmllanguage/qtest/declarative/qmllanguage/TestLocal.qml @@ -0,0 +1 @@ +LocalInternal {} diff --git a/tests/auto/declarative/qmllanguage/qtest/declarative/qmllanguage/TestSubDir.qml b/tests/auto/declarative/qmllanguage/qtest/declarative/qmllanguage/TestSubDir.qml new file mode 100644 index 0000000..0dfede4 --- /dev/null +++ b/tests/auto/declarative/qmllanguage/qtest/declarative/qmllanguage/TestSubDir.qml @@ -0,0 +1,2 @@ +import "subdir" +SubTest { } diff --git a/tests/auto/declarative/qmllanguage/qtest/declarative/qmllanguage/pics/blue.png b/tests/auto/declarative/qmllanguage/qtest/declarative/qmllanguage/pics/blue.png Binary files differnew file mode 100644 index 0000000..46f815f --- /dev/null +++ b/tests/auto/declarative/qmllanguage/qtest/declarative/qmllanguage/pics/blue.png diff --git a/tests/auto/declarative/qmllanguage/qtest/declarative/qmllanguage/qmldir b/tests/auto/declarative/qmllanguage/qtest/declarative/qmllanguage/qmldir new file mode 100644 index 0000000..b32f82b --- /dev/null +++ b/tests/auto/declarative/qmllanguage/qtest/declarative/qmllanguage/qmldir @@ -0,0 +1,3 @@ +Test 0.0 Test.qml +TestSubDir 0.0 TestSubDir.qml +TestLocal 0.0 TestLocal.qml diff --git a/tests/auto/declarative/qmllanguage/qtest/declarative/qmllanguage/subdir/SubTest.qml b/tests/auto/declarative/qmllanguage/qtest/declarative/qmllanguage/subdir/SubTest.qml new file mode 100644 index 0000000..0ea9ec6 --- /dev/null +++ b/tests/auto/declarative/qmllanguage/qtest/declarative/qmllanguage/subdir/SubTest.qml @@ -0,0 +1,3 @@ +import Qt 4.6 + +Text {} diff --git a/tests/auto/declarative/qmllanguage/qtest/declarative/qmllanguage/subdir/qmldir b/tests/auto/declarative/qmllanguage/qtest/declarative/qmllanguage/subdir/qmldir new file mode 100644 index 0000000..f7016c7 --- /dev/null +++ b/tests/auto/declarative/qmllanguage/qtest/declarative/qmllanguage/subdir/qmldir @@ -0,0 +1 @@ +SubTest 0.0 SubTest.qml diff --git a/tests/auto/declarative/qmllanguage/testtypes.cpp b/tests/auto/declarative/qmllanguage/testtypes.cpp index c370c09..933431d 100644 --- a/tests/auto/declarative/qmllanguage/testtypes.cpp +++ b/tests/auto/declarative/qmllanguage/testtypes.cpp @@ -47,4 +47,5 @@ QML_DEFINE_TYPE(Test,1,0,MyContainer,MyContainer); QML_DEFINE_TYPE(Test,1,0,MyPropertyValueSource,MyPropertyValueSource); QML_DEFINE_TYPE(Test,1,0,MyDotPropertyObject,MyDotPropertyObject); QML_DEFINE_TYPE(Test,1,0,MyNamespacedType,MyNamespace::MyNamespacedType); +QML_DEFINE_TYPE(Test,1,0,MySecondNamespacedType,MyNamespace::MySecondNamespacedType); QML_DEFINE_NOCREATE_TYPE(MyGroupedObject); diff --git a/tests/auto/declarative/qmllanguage/testtypes.h b/tests/auto/declarative/qmllanguage/testtypes.h index b251f87..3598d68 100644 --- a/tests/auto/declarative/qmllanguage/testtypes.h +++ b/tests/auto/declarative/qmllanguage/testtypes.h @@ -535,7 +535,19 @@ namespace MyNamespace { { Q_OBJECT }; + + class MySecondNamespacedType : public QObject + { + Q_OBJECT + Q_PROPERTY(QmlList<MyNamespace::MyNamespacedType *> *list READ list); + public: + QmlList<MyNamespacedType *> *list() { return &m_list; } + + private: + QmlConcreteList<MyNamespacedType *> m_list; + }; } QML_DECLARE_TYPE(MyNamespace::MyNamespacedType); +QML_DECLARE_TYPE(MyNamespace::MySecondNamespacedType); #endif // TESTTYPES_H diff --git a/tests/auto/declarative/qmllanguage/tst_qmllanguage.cpp b/tests/auto/declarative/qmllanguage/tst_qmllanguage.cpp index c23bb2d..d5c5c4d 100644 --- a/tests/auto/declarative/qmllanguage/tst_qmllanguage.cpp +++ b/tests/auto/declarative/qmllanguage/tst_qmllanguage.cpp @@ -49,7 +49,6 @@ #include "testtypes.h" #include "../../../shared/util.h" -#include "../../network-settings.h" /* This test case covers QML language issues. This covers everything that does @@ -694,11 +693,22 @@ void tst_qmllanguage::valueTypes() void tst_qmllanguage::cppnamespace() { - QmlComponent component(&engine, TEST_FILE("cppnamespace.qml")); - VERIFY_ERRORS(0); - QObject *object = component.create(); - QVERIFY(object != 0); - delete object; + { + QmlComponent component(&engine, TEST_FILE("cppnamespace.qml")); + VERIFY_ERRORS(0); + QObject *object = component.create(); + QVERIFY(object != 0); + delete object; + } + + { + QmlComponent component(&engine, TEST_FILE("cppnamespace.2.qml")); + qWarning() << component.errors(); + VERIFY_ERRORS(0); + QObject *object = component.create(); + QVERIFY(object != 0); + delete object; + } } void tst_qmllanguage::aliasProperties() @@ -1070,19 +1080,23 @@ void tst_qmllanguage::importsRemote_data() QTest::addColumn<QString>("qml"); QTest::addColumn<QString>("type"); - QString serverdir = "http://" - + QtNetworkSettings::serverName() - + "/qtest/declarative/qmllanguage"; + QString serverdir = "http://127.0.0.1:14445/qtest/declarative/qmllanguage"; QTest::newRow("remote import") << "import \""+serverdir+"\"\nTest {}" << "QmlGraphicsRectangle"; QTest::newRow("remote import with subdir") << "import \""+serverdir+"\"\nTestSubDir {}" << "QmlGraphicsText"; QTest::newRow("remote import with local") << "import \""+serverdir+"\"\nTestLocal {}" << "QmlGraphicsImage"; } +#include "testhttpserver.h" + void tst_qmllanguage::importsRemote() { QFETCH(QString, qml); QFETCH(QString, type); + + TestHTTPServer server(14445); + server.serveDirectory(SRCDIR); + testType(qml,type); } diff --git a/tests/auto/declarative/qmllistaccessor/tst_qmllistaccessor.cpp b/tests/auto/declarative/qmllistaccessor/tst_qmllistaccessor.cpp index b2d42ff..4c8219a 100644 --- a/tests/auto/declarative/qmllistaccessor/tst_qmllistaccessor.cpp +++ b/tests/auto/declarative/qmllistaccessor/tst_qmllistaccessor.cpp @@ -41,6 +41,7 @@ #include <qtest.h> #include <QtDeclarative/qml.h> #include <private/qmllistaccessor_p.h> +#include <QDebug> class tst_QmlListAccessor : public QObject { @@ -51,7 +52,7 @@ public: private slots: void qmllist(); //void qlist(); - //void qstringlist(); + void qstringlist(); }; void tst_QmlListAccessor::qmllist() @@ -71,31 +72,30 @@ void tst_QmlListAccessor::qmllist() QVariant v = accessor.at(0); QCOMPARE(qvariant_cast<QObject*>(v), obj); - accessor.removeAt(3); - QVERIFY(accessor.count() == 1); - - accessor.removeAt(0); - QVERIFY(accessor.count() == 0); + QVERIFY(accessor.isValid()); +} - accessor.insert(4, qVariantFromValue(obj)); - QVERIFY(accessor.count() == 1); +void tst_QmlListAccessor::qstringlist() +{ + QStringList list; + list.append(QLatin1String("Item1")); + list.append(QLatin1String("Item2")); + QVERIFY(list.count() == 2); - v = accessor.at(0); - QCOMPARE(qvariant_cast<QObject*>(v), obj); + QmlListAccessor accessor; + accessor.setList(list); - QObject *obj2 = new QObject; - accessor.append(qVariantFromValue(obj2)); + QVERIFY(accessor.isValid()); QVERIFY(accessor.count() == 2); - v = accessor.at(1); - QCOMPARE(qvariant_cast<QObject*>(v), obj2); - - accessor.clear(); - QVERIFY(accessor.count() == 0); + QVariant v = accessor.at(0); + QCOMPARE(qvariant_cast<QString>(v), QLatin1String("Item1")); - QVERIFY(accessor.isValid()); + v = accessor.at(1); + QCOMPARE(qvariant_cast<QString>(v), QLatin1String("Item2")); } + QTEST_MAIN(tst_QmlListAccessor) #include "tst_qmllistaccessor.moc" diff --git a/tests/auto/declarative/qmlmetatype/tst_qmlmetatype.cpp b/tests/auto/declarative/qmlmetatype/tst_qmlmetatype.cpp index 36a7332..abc1fbe 100644 --- a/tests/auto/declarative/qmlmetatype/tst_qmlmetatype.cpp +++ b/tests/auto/declarative/qmlmetatype/tst_qmlmetatype.cpp @@ -239,7 +239,7 @@ void tst_qmlmetatype::copy() QT_COPY_TEST(QTextFormat, QTextFormat(QTextFormat::ListFormat)); QT_COPY_TEST(QMatrix, QMatrix().translate(10, 10)); QT_COPY_TEST(QTransform, QTransform().translate(10, 10)); - QT_COPY_TEST(QMatrix4x4, QMatrix4x4(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1)); + QT_COPY_TEST(QMatrix4x4, QMatrix4x4(1,0,2,3,0,1,0,0,9,0,1,0,0,0,10,1)); QT_COPY_TEST(QVector2D, QVector2D(10.2, 1)); QT_COPY_TEST(QVector3D, QVector3D(10.2, 1, -2)); QT_COPY_TEST(QVector4D, QVector4D(10.2, 1, -2, 1.2)); diff --git a/tests/auto/declarative/qmlpropertymap/tst_qmlpropertymap.cpp b/tests/auto/declarative/qmlpropertymap/tst_qmlpropertymap.cpp index ece6030..fe2658c 100644 --- a/tests/auto/declarative/qmlpropertymap/tst_qmlpropertymap.cpp +++ b/tests/auto/declarative/qmlpropertymap/tst_qmlpropertymap.cpp @@ -41,7 +41,7 @@ #include <qtest.h> #include <QtDeclarative/qmlengine.h> #include <QtDeclarative/qmlcontext.h> -#include <private/qmlpropertymap_p.h> +#include <QtDeclarative/qmlpropertymap.h> #include <QtDeclarative/qmlcomponent.h> #include <private/qmlgraphicstext_p.h> #include <QSignalSpy> diff --git a/tests/auto/declarative/qmlqt/data/md5.qml b/tests/auto/declarative/qmlqt/data/md5.qml new file mode 100644 index 0000000..3c96a6b --- /dev/null +++ b/tests/auto/declarative/qmlqt/data/md5.qml @@ -0,0 +1,6 @@ +import Qt 4.6 + +Object { + property string test1: Qt.md5() + property string test2: Qt.md5("Hello World") +} diff --git a/tests/auto/declarative/qmlqt/tst_qmlqt.cpp b/tests/auto/declarative/qmlqt/tst_qmlqt.cpp index e9c9052..13f4904 100644 --- a/tests/auto/declarative/qmlqt/tst_qmlqt.cpp +++ b/tests/auto/declarative/qmlqt/tst_qmlqt.cpp @@ -46,6 +46,7 @@ #include <QmlComponent> #include <QDir> #include <QVector3D> +#include <QCryptographicHash> class tst_qmlqt : public QObject { @@ -67,6 +68,7 @@ private slots: void closestAngle(); void playSound(); void openUrlExternally(); + void md5(); private: QmlEngine engine; @@ -279,6 +281,19 @@ void tst_qmlqt::openUrlExternally() QVERIFY(false); } +void tst_qmlqt::md5() +{ + QmlComponent component(&engine, TEST_FILE("md5.qml")); + QObject *object = component.create(); + QVERIFY(object != 0); + + QCOMPARE(object->property("test1").toString(), QLatin1String(QCryptographicHash::hash(QByteArray(), QCryptographicHash::Md5).toHex())); + QCOMPARE(object->property("test2").toString(), QLatin1String(QCryptographicHash::hash("Hello World", QCryptographicHash::Md5).toHex())); + + delete object; +} + + QTEST_MAIN(tst_qmlqt) #include "tst_qmlqt.moc" diff --git a/tests/auto/declarative/qmlxmllistmodel/data/roleErrors.qml b/tests/auto/declarative/qmlxmllistmodel/data/roleErrors.qml new file mode 100644 index 0000000..26c533f --- /dev/null +++ b/tests/auto/declarative/qmlxmllistmodel/data/roleErrors.qml @@ -0,0 +1,10 @@ +import Qt 4.6 + +XmlListModel { + source: "model.xml" + query: "/Pets/Pet" + XmlRole { name: "name"; query: "/name/string()" } //starts with '/' + XmlRole { name: "type"; query: "type" } //no type + XmlRole { name: "age"; query: "age/" } //ends with '/' + XmlRole { name: "size"; query: "size/number()" } //wrong type +} diff --git a/tests/auto/declarative/qmlxmllistmodel/data/unique.qml b/tests/auto/declarative/qmlxmllistmodel/data/unique.qml new file mode 100644 index 0000000..ed0f293 --- /dev/null +++ b/tests/auto/declarative/qmlxmllistmodel/data/unique.qml @@ -0,0 +1,8 @@ +import Qt 4.6 + +XmlListModel { + source: "model.xml" + query: "/Pets/Pet" + XmlRole { name: "name"; query: "name/string()" } + XmlRole { name: "name"; query: "type/string()" } +} diff --git a/tests/auto/declarative/qmlxmllistmodel/tst_qmlxmllistmodel.cpp b/tests/auto/declarative/qmlxmllistmodel/tst_qmlxmllistmodel.cpp index 4898686..a68006d 100644 --- a/tests/auto/declarative/qmlxmllistmodel/tst_qmlxmllistmodel.cpp +++ b/tests/auto/declarative/qmlxmllistmodel/tst_qmlxmllistmodel.cpp @@ -56,6 +56,9 @@ private slots: void missingFields(); void cdata(); void attributes(); + void roles(); + void roleErrors(); + void uniqueRoleNames(); private: QmlEngine engine; @@ -76,6 +79,8 @@ void tst_qmlxmllistmodel::buildModel() QCOMPARE(data.value(Qt::UserRole+1).toString(), QLatin1String("Dog")); QCOMPARE(data.value(Qt::UserRole+2).toInt(), 9); QCOMPARE(data.value(Qt::UserRole+3).toString(), QLatin1String("Medium")); + + delete listModel; } void tst_qmlxmllistmodel::missingFields() @@ -95,6 +100,8 @@ void tst_qmlxmllistmodel::missingFields() data = listModel->data(7, roles); QVERIFY(data.count() == 5); QCOMPARE(data.value(Qt::UserRole+2).toString(), QLatin1String("")); + + delete listModel; } void tst_qmlxmllistmodel::cdata() @@ -109,6 +116,8 @@ void tst_qmlxmllistmodel::cdata() QHash<int, QVariant> data = listModel->data(2, roles); QVERIFY(data.count() == 1); QVERIFY(data.value(Qt::UserRole+2).toString().startsWith(QLatin1String("<html>"))); + + delete listModel; } void tst_qmlxmllistmodel::attributes() @@ -123,8 +132,63 @@ void tst_qmlxmllistmodel::attributes() QHash<int, QVariant> data = listModel->data(2, roles); QVERIFY(data.count() == 1); QCOMPARE(data.value(Qt::UserRole).toString(), QLatin1String("Vegetable Soup")); + + delete listModel; } +void tst_qmlxmllistmodel::roles() +{ + QmlComponent component(&engine, QUrl("file://" SRCDIR "/data/model.qml")); + QmlXmlListModel *listModel = qobject_cast<QmlXmlListModel*>(component.create()); + QVERIFY(listModel != 0); + QTRY_COMPARE(listModel->count(), 9); + + QList<int> roles = listModel->roles(); + QCOMPARE(roles.count(), 4); + QCOMPARE(listModel->toString(roles.at(0)), QLatin1String("name")); + QCOMPARE(listModel->toString(roles.at(1)), QLatin1String("type")); + QCOMPARE(listModel->toString(roles.at(2)), QLatin1String("age")); + QCOMPARE(listModel->toString(roles.at(3)), QLatin1String("size")); + + delete listModel; +} + +void tst_qmlxmllistmodel::roleErrors() +{ + QmlComponent component(&engine, QUrl("file://" SRCDIR "/data/roleErrors.qml")); + QTest::ignoreMessage(QtWarningMsg, "QML QmlXmlListModelRole (file://" SRCDIR "/data/roleErrors.qml:6:5) An XmlRole query must not start with '/'"); + //### make sure we receive all expected warning messages. + QmlXmlListModel *listModel = qobject_cast<QmlXmlListModel*>(component.create()); + QVERIFY(listModel != 0); + QTRY_COMPARE(listModel->count(), 9); + + QList<int> roles; + roles << Qt::UserRole << Qt::UserRole + 1 << Qt::UserRole + 2 << Qt::UserRole + 3; + QHash<int, QVariant> data = listModel->data(3, roles); + QVERIFY(data.count() == 4); + + //### should any of these return valid values? + QCOMPARE(data.value(Qt::UserRole), QVariant()); + QCOMPARE(data.value(Qt::UserRole+1), QVariant()); + QCOMPARE(data.value(Qt::UserRole+2), QVariant()); + QCOMPARE(data.value(Qt::UserRole+3), QVariant()); + + delete listModel; +} + +void tst_qmlxmllistmodel::uniqueRoleNames() +{ + QmlComponent component(&engine, QUrl("file://" SRCDIR "/data/unique.qml")); + QTest::ignoreMessage(QtWarningMsg, "QML QmlXmlListModelRole (file://" SRCDIR "/data/unique.qml:7:5) \"name\" duplicates a previous role name and will be disabled."); + QmlXmlListModel *listModel = qobject_cast<QmlXmlListModel*>(component.create()); + QVERIFY(listModel != 0); + QTRY_COMPARE(listModel->count(), 9); + + QList<int> roles = listModel->roles(); + QCOMPARE(roles.count(), 1); + + delete listModel; +} QTEST_MAIN(tst_qmlxmllistmodel) diff --git a/tests/auto/declarative/repeater/data/intmodel.qml b/tests/auto/declarative/repeater/data/intmodel.qml new file mode 100644 index 0000000..a779079 --- /dev/null +++ b/tests/auto/declarative/repeater/data/intmodel.qml @@ -0,0 +1,17 @@ +import Qt 4.6 + +Rectangle { + id: container + objectName: "container" + width: 240 + height: 320 + color: "white" + Repeater { + id: repeater + objectName: "repeater" + model: testData + Component { + Item{} + } + } +} diff --git a/tests/auto/declarative/repeater/data/objlist.qml b/tests/auto/declarative/repeater/data/objlist.qml new file mode 100644 index 0000000..ecc6d02 --- /dev/null +++ b/tests/auto/declarative/repeater/data/objlist.qml @@ -0,0 +1,21 @@ +import Qt 4.6 + +Rectangle { + id: container + objectName: "container" + width: 240 + height: 320 + color: "white" + Repeater { + id: repeater + objectName: "repeater" + model: testData + property int errors: 0 + property int instantiated: 0 + Component { + Item{ + Component.onCompleted: {if(index!=modelData.idx) repeater.errors += 1; repeater.instantiated++} + } + } + } +} diff --git a/tests/auto/declarative/repeater/tst_repeater.cpp b/tests/auto/declarative/repeater/tst_repeater.cpp index dc0f1be..e002ee1 100644 --- a/tests/auto/declarative/repeater/tst_repeater.cpp +++ b/tests/auto/declarative/repeater/tst_repeater.cpp @@ -52,6 +52,8 @@ public: tst_QmlGraphicsRepeater(); private slots: + void numberModel(); + void objectList(); void stringList(); private: @@ -64,6 +66,42 @@ tst_QmlGraphicsRepeater::tst_QmlGraphicsRepeater() { } +void tst_QmlGraphicsRepeater::numberModel() +{ + QmlView *canvas = createView(SRCDIR "/data/intmodel.qml"); + canvas->execute(); + qApp->processEvents(); + + QmlContext *ctxt = canvas->rootContext(); + ctxt->setContextProperty("testData", 5); + + QmlGraphicsRepeater *repeater = findItem<QmlGraphicsRepeater>(canvas->root(), "repeater"); + QVERIFY(repeater != 0); + QCOMPARE(repeater->parentItem()->childItems().count(), 5+1); +} + +void tst_QmlGraphicsRepeater::objectList() +{ + QmlView *canvas = createView(SRCDIR "/data/objlist.qml"); + + QObjectList* data = new QObjectList; + for(int i=0; i<100; i++){ + *data << new QObject(); + data->back()->setProperty("idx", i); + } + + QmlContext *ctxt = canvas->rootContext(); + ctxt->setContextProperty("testData", QVariant::fromValue<QObjectList*>(data)); + + canvas->execute(); + qApp->processEvents(); + + QmlGraphicsRepeater *repeater = findItem<QmlGraphicsRepeater>(canvas->root(), "repeater"); + QVERIFY(repeater != 0); + QCOMPARE(repeater->property("errors").toInt(), 0);//If this fails either they are out of order or can't find the object's data + QCOMPARE(repeater->property("instantiated").toInt(), 100); +} + /* The Repeater element creates children at its own position in its parent's stacking order. In this test we insert a repeater between two other Text diff --git a/tests/auto/declarative/runall.sh b/tests/auto/declarative/runall.sh index e4b18da..33087a1 100755 --- a/tests/auto/declarative/runall.sh +++ b/tests/auto/declarative/runall.sh @@ -1,14 +1,21 @@ #!/bin/sh Xnest :7 2>/dev/null & +sleep 1 trap "kill $!" EXIT export DISPLAY=:7 -make install 2>&1 | +make -k -j1 install 2>&1 | while read line do case "$line" in + make*Error) echo "$line";; + make*Stop) echo "$line";; make*) ;; + */qmake*) ;; + */bin/moc*) ;; + *targ.debug*) ;; + g++*) ;; cd*) ;; PASS*) ;; QDEBUG*) ;; diff --git a/tests/auto/declarative/states/data/explicit.qml b/tests/auto/declarative/states/data/explicit.qml new file mode 100644 index 0000000..271115a --- /dev/null +++ b/tests/auto/declarative/states/data/explicit.qml @@ -0,0 +1,14 @@ +import Qt 4.6 +Rectangle { + id: MyRectangle + property color sourceColor: "blue" + width: 100; height: 100 + color: "red" + states: State { + name: "blue" + PropertyChanges { + target: MyRectangle; explicit: true + color: sourceColor + } + } +} diff --git a/tests/auto/declarative/states/data/parentChange4.qml b/tests/auto/declarative/states/data/parentChange4.qml new file mode 100644 index 0000000..ee75176 --- /dev/null +++ b/tests/auto/declarative/states/data/parentChange4.qml @@ -0,0 +1,30 @@ +import Qt 4.6 + +Rectangle { + width: 400; height: 400 + Rectangle { + id: myRect + objectName: "MyRect" + x: 5; y: 5 + width: 100; height: 100 + color: "red" + } + MouseRegion { + id: Clickable + anchors.fill: parent + } + + Item { + id: newParent + transform: Scale { xScale: .5; yScale: .7} + } + + states: State { + name: "reparented" + when: Clickable.pressed + ParentChange { + target: myRect + parent: newParent + } + } +} diff --git a/tests/auto/declarative/states/data/parentChange5.qml b/tests/auto/declarative/states/data/parentChange5.qml new file mode 100644 index 0000000..47b733b --- /dev/null +++ b/tests/auto/declarative/states/data/parentChange5.qml @@ -0,0 +1,30 @@ +import Qt 4.6 + +Rectangle { + width: 400; height: 400 + Rectangle { + id: myRect + objectName: "MyRect" + x: 5; y: 5 + width: 100; height: 100 + color: "red" + } + MouseRegion { + id: Clickable + anchors.fill: parent + } + + Item { + id: newParent + transform: Rotation { angle: 30; axis { x: 0; y: 1; z: 0 } } + } + + states: State { + name: "reparented" + when: Clickable.pressed + ParentChange { + target: myRect + parent: newParent + } + } +} diff --git a/tests/auto/declarative/states/data/restoreEntryValues.qml b/tests/auto/declarative/states/data/restoreEntryValues.qml new file mode 100644 index 0000000..d86f033 --- /dev/null +++ b/tests/auto/declarative/states/data/restoreEntryValues.qml @@ -0,0 +1,14 @@ +import Qt 4.6 +Rectangle { + id: MyRectangle + width: 100; height: 100 + color: "red" + states: State { + name: "blue" + PropertyChanges { + target: MyRectangle + restoreEntryValues: false + color: "blue" + } + } +} diff --git a/tests/auto/declarative/states/tst_states.cpp b/tests/auto/declarative/states/tst_states.cpp index 40e9aa8..3d8f303 100644 --- a/tests/auto/declarative/states/tst_states.cpp +++ b/tests/auto/declarative/states/tst_states.cpp @@ -56,8 +56,11 @@ private slots: void signalOverride(); void signalOverrideCrash(); void parentChange(); + void parentChangeErrors(); void anchorChanges(); void script(); + void restoreEntryValues(); + void explicitChanges(); }; void tst_states::basicChanges() @@ -425,6 +428,43 @@ void tst_states::parentChange() } } +void tst_states::parentChangeErrors() +{ + QmlEngine engine; + + { + QmlComponent rectComponent(&engine, SRCDIR "/data/parentChange4.qml"); + QmlGraphicsRectangle *rect = qobject_cast<QmlGraphicsRectangle*>(rectComponent.create()); + QVERIFY(rect != 0); + + QmlGraphicsRectangle *innerRect = qobject_cast<QmlGraphicsRectangle*>(rect->findChild<QmlGraphicsRectangle*>("MyRect")); + QVERIFY(innerRect != 0); + + QTest::ignoreMessage(QtWarningMsg, "QML QmlParentChange (file://" SRCDIR "/data/parentChange4.qml:25:9) Unable to preserve appearance under non-uniform scale"); + rect->setState("reparented"); + QCOMPARE(innerRect->rotation(), qreal(0)); + QCOMPARE(innerRect->scale(), qreal(1)); + QCOMPARE(innerRect->x(), qreal(5)); + QCOMPARE(innerRect->y(), qreal(5)); + } + + { + QmlComponent rectComponent(&engine, SRCDIR "/data/parentChange5.qml"); + QmlGraphicsRectangle *rect = qobject_cast<QmlGraphicsRectangle*>(rectComponent.create()); + QVERIFY(rect != 0); + + QmlGraphicsRectangle *innerRect = qobject_cast<QmlGraphicsRectangle*>(rect->findChild<QmlGraphicsRectangle*>("MyRect")); + QVERIFY(innerRect != 0); + + QTest::ignoreMessage(QtWarningMsg, "QML QmlParentChange (file://" SRCDIR "/data/parentChange5.qml:25:9) Unable to preserve appearance under complex transform"); + rect->setState("reparented"); + QCOMPARE(innerRect->rotation(), qreal(0)); + QCOMPARE(innerRect->scale(), qreal(1)); + QCOMPARE(innerRect->x(), qreal(5)); + QCOMPARE(innerRect->y(), qreal(5)); + } +} + void tst_states::anchorChanges() { QmlEngine engine; @@ -479,6 +519,48 @@ void tst_states::script() } } +void tst_states::restoreEntryValues() +{ + QmlEngine engine; + + QmlComponent rectComponent(&engine, SRCDIR "/data/restoreEntryValues.qml"); + QmlGraphicsRectangle *rect = qobject_cast<QmlGraphicsRectangle*>(rectComponent.create()); + QVERIFY(rect != 0); + + QCOMPARE(rect->color(),QColor("red")); + + rect->setState("blue"); + QCOMPARE(rect->color(),QColor("blue")); + + rect->setState(""); + QCOMPARE(rect->color(),QColor("blue")); +} + +void tst_states::explicitChanges() +{ + QmlEngine engine; + + QmlComponent rectComponent(&engine, SRCDIR "/data/explicit.qml"); + QmlGraphicsRectangle *rect = qobject_cast<QmlGraphicsRectangle*>(rectComponent.create()); + QVERIFY(rect != 0); + + QCOMPARE(rect->color(),QColor("red")); + + rect->setState("blue"); + QCOMPARE(rect->color(),QColor("blue")); + + rect->setProperty("sourceColor", QColor("green")); + QCOMPARE(rect->color(),QColor("blue")); + + rect->setState(""); + QCOMPARE(rect->color(),QColor("red")); + rect->setProperty("sourceColor", QColor("yellow")); + QCOMPARE(rect->color(),QColor("red")); + + rect->setState("blue"); + QCOMPARE(rect->color(),QColor("yellow")); +} + QTEST_MAIN(tst_states) #include "tst_states.moc" diff --git a/tests/auto/declarative/visual/ListView/data-MAC/basic1.qml b/tests/auto/declarative/visual/ListView/data-MAC/basic1.qml new file mode 100644 index 0000000..83b700d --- /dev/null +++ b/tests/auto/declarative/visual/ListView/data-MAC/basic1.qml @@ -0,0 +1,159 @@ +import Qt.VisualTest 4.6 + +VisualTest { + Frame { + msec: 0 + } + Frame { + msec: 16 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 32 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 48 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 64 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 80 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 96 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 112 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 128 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 144 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 160 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 176 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 192 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 208 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 224 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 240 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 256 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 272 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 288 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 304 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 320 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 336 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 352 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 368 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 384 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 400 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 416 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 432 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 448 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 464 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 480 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 496 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 512 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 528 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Key { + type: 6 + key: 16777249 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 544 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 560 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 576 + hash: "895c70434a24da42144e60e6d8dcf323" + } +} diff --git a/tests/auto/declarative/visual/ListView/data-MAC/basic2.qml b/tests/auto/declarative/visual/ListView/data-MAC/basic2.qml new file mode 100644 index 0000000..1483512 --- /dev/null +++ b/tests/auto/declarative/visual/ListView/data-MAC/basic2.qml @@ -0,0 +1,187 @@ +import Qt.VisualTest 4.6 + +VisualTest { + Frame { + msec: 0 + } + Frame { + msec: 16 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 32 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 48 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 64 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 80 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 96 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 112 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 128 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 144 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 160 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 176 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 192 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 208 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 224 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 240 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 256 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 272 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 288 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 304 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 320 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 336 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 352 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 368 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 384 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 400 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 416 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 432 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 448 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 464 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 480 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 496 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 512 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 528 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 544 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 560 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 576 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 592 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 608 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 624 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 640 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Key { + type: 6 + key: 16777249 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 656 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 672 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 688 + hash: "895c70434a24da42144e60e6d8dcf323" + } +} diff --git a/tests/auto/declarative/visual/ListView/data-MAC/basic3.qml b/tests/auto/declarative/visual/ListView/data-MAC/basic3.qml new file mode 100644 index 0000000..bf68998 --- /dev/null +++ b/tests/auto/declarative/visual/ListView/data-MAC/basic3.qml @@ -0,0 +1,147 @@ +import Qt.VisualTest 4.6 + +VisualTest { + Frame { + msec: 0 + } + Frame { + msec: 16 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 32 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 48 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 64 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 80 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 96 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 112 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 128 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 144 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 160 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 176 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 192 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 208 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 224 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 240 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 256 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 272 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 288 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 304 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 320 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 336 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 352 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 368 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 384 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 400 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 416 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 432 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 448 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 464 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Key { + type: 6 + key: 16777249 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 480 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 496 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 512 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 528 + hash: "895c70434a24da42144e60e6d8dcf323" + } +} diff --git a/tests/auto/declarative/visual/ListView/data-MAC/basic4.qml b/tests/auto/declarative/visual/ListView/data-MAC/basic4.qml new file mode 100644 index 0000000..4aa9ab6 --- /dev/null +++ b/tests/auto/declarative/visual/ListView/data-MAC/basic4.qml @@ -0,0 +1,171 @@ +import Qt.VisualTest 4.6 + +VisualTest { + Frame { + msec: 0 + } + Frame { + msec: 16 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 32 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 48 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 64 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 80 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 96 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 112 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 128 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 144 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 160 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 176 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 192 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 208 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 224 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 240 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 256 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 272 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 288 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 304 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 320 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 336 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 352 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 368 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 384 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 400 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 416 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 432 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 448 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 464 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 480 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 496 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 512 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 528 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Key { + type: 6 + key: 16777249 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 544 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 560 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 576 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 592 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 608 + hash: "895c70434a24da42144e60e6d8dcf323" + } + Frame { + msec: 624 + hash: "895c70434a24da42144e60e6d8dcf323" + } +} diff --git a/tests/auto/declarative/visual/ListView/data-MAC/itemlist.0.png b/tests/auto/declarative/visual/ListView/data-MAC/itemlist.0.png Binary files differnew file mode 100644 index 0000000..13b280c --- /dev/null +++ b/tests/auto/declarative/visual/ListView/data-MAC/itemlist.0.png diff --git a/tests/auto/declarative/visual/ListView/data-MAC/itemlist.1.png b/tests/auto/declarative/visual/ListView/data-MAC/itemlist.1.png Binary files differnew file mode 100644 index 0000000..402872b --- /dev/null +++ b/tests/auto/declarative/visual/ListView/data-MAC/itemlist.1.png diff --git a/tests/auto/declarative/visual/ListView/data-MAC/itemlist.2.png b/tests/auto/declarative/visual/ListView/data-MAC/itemlist.2.png Binary files differnew file mode 100644 index 0000000..afd0830 --- /dev/null +++ b/tests/auto/declarative/visual/ListView/data-MAC/itemlist.2.png diff --git a/tests/auto/declarative/visual/ListView/data-MAC/itemlist.3.png b/tests/auto/declarative/visual/ListView/data-MAC/itemlist.3.png Binary files differnew file mode 100644 index 0000000..7c15f61 --- /dev/null +++ b/tests/auto/declarative/visual/ListView/data-MAC/itemlist.3.png diff --git a/tests/auto/declarative/visual/ListView/data-MAC/itemlist.4.png b/tests/auto/declarative/visual/ListView/data-MAC/itemlist.4.png Binary files differnew file mode 100644 index 0000000..afd0830 --- /dev/null +++ b/tests/auto/declarative/visual/ListView/data-MAC/itemlist.4.png diff --git a/tests/auto/declarative/visual/ListView/data-MAC/itemlist.5.png b/tests/auto/declarative/visual/ListView/data-MAC/itemlist.5.png Binary files differnew file mode 100644 index 0000000..fddf1cb --- /dev/null +++ b/tests/auto/declarative/visual/ListView/data-MAC/itemlist.5.png diff --git a/tests/auto/declarative/visual/ListView/data-MAC/itemlist.6.png b/tests/auto/declarative/visual/ListView/data-MAC/itemlist.6.png Binary files differnew file mode 100644 index 0000000..13b280c --- /dev/null +++ b/tests/auto/declarative/visual/ListView/data-MAC/itemlist.6.png diff --git a/tests/auto/declarative/visual/ListView/data-MAC/itemlist.qml b/tests/auto/declarative/visual/ListView/data-MAC/itemlist.qml new file mode 100644 index 0000000..073749f --- /dev/null +++ b/tests/auto/declarative/visual/ListView/data-MAC/itemlist.qml @@ -0,0 +1,2203 @@ +import Qt.VisualTest 4.6 + +VisualTest { + Frame { + msec: 0 + } + Frame { + msec: 16 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 32 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 48 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 64 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 80 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 96 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 112 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 128 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 144 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 160 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 176 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 192 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 208 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 224 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 240 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 256 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 272 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 288 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 304 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 320 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 336 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 352 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 368 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 384 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 400 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 416 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 432 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 448 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 464 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 480 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 496 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 512 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 528 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 544 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 560 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 576 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 592 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 608 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 624 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 640 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 656 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 672 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 688 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 704 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 720 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 736 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 752 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 768 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 784 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 800 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 816 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 832 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 848 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 864 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 880 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 896 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 912 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 928 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 944 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 960 + image: "itemlist.0.png" + } + Frame { + msec: 976 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 992 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1008 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1024 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1040 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1056 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1072 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1088 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1104 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1120 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1136 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1152 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1168 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1184 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1200 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1216 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1232 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1248 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1264 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1280 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1296 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1312 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1328 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1344 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1360 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1376 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1392 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1408 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1424 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1440 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1456 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1472 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1488 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1504 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1520 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1536 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1552 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1568 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1584 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1600 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1616 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1632 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 1648 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Mouse { + type: 2 + button: 1 + buttons: 1 + x: 192; y: 111 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1664 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 191; y: 111 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1680 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 190; y: 112 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 187; y: 113 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1696 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 184; y: 113 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 180; y: 113 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1712 + hash: "a68b1bc6c2963ee92c3a45f500667b3b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 174; y: 114 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 167; y: 115 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1728 + hash: "7cda93e59466b3348e7ffe3895f89e86" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 160; y: 117 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1744 + hash: "06e0008c78e919f7270402938d9d764b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 140; y: 121 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 132; y: 122 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1760 + hash: "9d8da9199efebb95f56e5d4ebc9a585e" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 114; y: 126 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 98; y: 132 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1776 + hash: "54a60a4279911ba4a8a5741bcadfa783" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 91; y: 132 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 91; y: 132 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1792 + hash: "a1a19370a1a8ed78e475f0d0eb12311c" + } + Frame { + msec: 1808 + hash: "196a3b127cf7065614c34856bf8d8bca" + } + Frame { + msec: 1824 + hash: "5fbefbd7c7be4374382cc4c8b86ac78a" + } + Frame { + msec: 1840 + hash: "d6a544c622e504c1b931e1a8a1310a6e" + } + Frame { + msec: 1856 + hash: "20e76f0eb4ec5f691999faf8ad313370" + } + Frame { + msec: 1872 + hash: "7f84a3545907c754ae8a6a30ef61c98d" + } + Frame { + msec: 1888 + hash: "b544901eae32903ad054e8cdfed715eb" + } + Frame { + msec: 1904 + hash: "a010ed1e3312f4ca9f429b7e32cdcef9" + } + Frame { + msec: 1920 + image: "itemlist.1.png" + } + Frame { + msec: 1936 + hash: "93a731dc6f71b6ff5400bf74c87e6c46" + } + Frame { + msec: 1952 + hash: "c73f63d1a024ba956e693487b3ccc761" + } + Frame { + msec: 1968 + hash: "539d3d00fce2d0128cd697d86d237fe7" + } + Frame { + msec: 1984 + hash: "52752d7d6f2d0e085f7132313907b72b" + } + Frame { + msec: 2000 + hash: "f46dd5803a6075e979e0fc733d503bfb" + } + Frame { + msec: 2016 + hash: "b8734698a6bad00ecf019f85328c2c21" + } + Frame { + msec: 2032 + hash: "1cfc499ca756023430cc5b2fa95a599d" + } + Frame { + msec: 2048 + hash: "63a816548837c19f8f0494c137fc0174" + } + Frame { + msec: 2064 + hash: "1bce9b85235e9a1a472c079dfec70ec5" + } + Frame { + msec: 2080 + hash: "6677863e7f74c12648409883f73adbe2" + } + Frame { + msec: 2096 + hash: "98e707a3e39a5f7bd4a101c2ed83535c" + } + Frame { + msec: 2112 + hash: "c1f6d8842d14a9394d4b7797314f50e8" + } + Frame { + msec: 2128 + hash: "579758b477bcd2112b305a5aac7df338" + } + Frame { + msec: 2144 + hash: "4a7bb81090db246db53e2dbc56f710ea" + } + Frame { + msec: 2160 + hash: "074995cdd8a70817d1c8a7bb0ad4c542" + } + Frame { + msec: 2176 + hash: "bd8d7bda4d2e9ad1fba2895d568f36cc" + } + Frame { + msec: 2192 + hash: "40cce3d2d80ac470af44fc334cec1d5b" + } + Frame { + msec: 2208 + hash: "15cbc226b032d5a97199735ea7a1408b" + } + Frame { + msec: 2224 + hash: "12b296aea9b058a5402d0d0a620f8edc" + } + Frame { + msec: 2240 + hash: "6ffd2b79cf0e941a59e74bc6f9025bcb" + } + Frame { + msec: 2256 + hash: "589a58ef76ea709dc8d80390c9044f99" + } + Frame { + msec: 2272 + hash: "c009924bfa30153f22ab168b539494e9" + } + Frame { + msec: 2288 + hash: "4b83674a7c2daa68d735901ad40be2bd" + } + Frame { + msec: 2304 + hash: "0525908c0302ada989e28990bac3f2ca" + } + Frame { + msec: 2320 + hash: "89eb13976ba3ba4413cafeb0cc91c01b" + } + Frame { + msec: 2336 + hash: "75c1295ef99680784b2e11fb88fa1423" + } + Frame { + msec: 2352 + hash: "93d89165cf6a97c76ae6e7f75678a3cd" + } + Frame { + msec: 2368 + hash: "53064c1938f08a55603a99b0db225174" + } + Frame { + msec: 2384 + hash: "31db5684466c0c32128a9a8c7b1835e1" + } + Frame { + msec: 2400 + hash: "99d9e58697736198e0a00443d237e85b" + } + Frame { + msec: 2416 + hash: "6c1e860aef983367365d53f5849ad441" + } + Frame { + msec: 2432 + hash: "6c1e860aef983367365d53f5849ad441" + } + Frame { + msec: 2448 + hash: "6c1e860aef983367365d53f5849ad441" + } + Frame { + msec: 2464 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 2480 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 2496 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 2512 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 2528 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 2544 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 2560 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 2576 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 2592 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 2608 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 2624 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 2640 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 2656 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 2672 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 2688 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 2704 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 2720 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 2736 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 2752 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 2768 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 2784 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 2800 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 2816 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 2832 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 2848 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 2864 + hash: "99f9988040a389576cb6420b5391f768" + } + Mouse { + type: 2 + button: 1 + buttons: 1 + x: 181; y: 104 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2880 + image: "itemlist.2.png" + } + Frame { + msec: 2896 + hash: "99f9988040a389576cb6420b5391f768" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 179; y: 105 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 177; y: 106 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2912 + hash: "99f9988040a389576cb6420b5391f768" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 174; y: 108 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 170; y: 110 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2928 + hash: "5bb06b4e74532ba5bc8c7bc38bf77d7f" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 166; y: 112 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 160; y: 115 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2944 + hash: "b10a6206830a876017799ef2fcf61b1a" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 154; y: 117 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 140; y: 123 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2960 + hash: "b2e24759ba10afd6cff90f4b1e04b496" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 124; y: 127 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 124; y: 127 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2976 + hash: "ccbcd6f45cb529c2db71504c0f69d73e" + } + Frame { + msec: 2992 + hash: "7b31c6d5931677f1aa1e8c7d48a4ff22" + } + Frame { + msec: 3008 + hash: "c52f691a0a6cf155118bdfea2dfea623" + } + Frame { + msec: 3024 + hash: "dd639d1df3d4a9b8f06718def63d588f" + } + Frame { + msec: 3040 + hash: "39d767b09a648ef6295cec2848f9226f" + } + Frame { + msec: 3056 + hash: "5dd46d5f386431e7b13348ac9a9630ed" + } + Frame { + msec: 3072 + hash: "0354e5183b0e66e7ba146d292c559df4" + } + Frame { + msec: 3088 + hash: "984aa6d7075e24de429e05b1b0eda94a" + } + Frame { + msec: 3104 + hash: "1af58a2f44f1f613712d4df85e38356d" + } + Frame { + msec: 3120 + hash: "6e4085e7f1fee724d78808753f04b471" + } + Frame { + msec: 3136 + hash: "73a019ef9057639d631cd99a431b3f3b" + } + Frame { + msec: 3152 + hash: "c9414a2e655a90dfdcb6fb288b4ba0ca" + } + Frame { + msec: 3168 + hash: "3f4c24f7ac89da982af22032309637fb" + } + Frame { + msec: 3184 + hash: "a50e6ada8f73a257657f4348ceaffcfd" + } + Frame { + msec: 3200 + hash: "a67bf40d09259bbd079c12ae4f49150f" + } + Frame { + msec: 3216 + hash: "a2fc512b7c234a9d0b2c1a83387a8a46" + } + Frame { + msec: 3232 + hash: "85090683ce9a3c9833b1cb0b3df076ee" + } + Frame { + msec: 3248 + hash: "275f3594a0e2cc4b6717f9f336e7e1b6" + } + Frame { + msec: 3264 + hash: "2473eb11f7b65a784a2b166114026488" + } + Frame { + msec: 3280 + hash: "4865c30dc45fbf5ca82047b77eca0912" + } + Frame { + msec: 3296 + hash: "54de88bca395449fbaea2c090c7a5d91" + } + Frame { + msec: 3312 + hash: "833f9295cf9a34934f001eac48551b59" + } + Frame { + msec: 3328 + hash: "5bf565f57ababa7380faeee94add91ca" + } + Frame { + msec: 3344 + hash: "6325578867f1eb3b2d47ed40b017b571" + } + Frame { + msec: 3360 + hash: "046a6114176b3a3206b7a2acd6e30b41" + } + Frame { + msec: 3376 + hash: "f8d4120a17f28c2d1d9c4be959098058" + } + Frame { + msec: 3392 + hash: "71356d2e48aad2900784ea6bc1a3d908" + } + Frame { + msec: 3408 + hash: "b84ad460fb81fdc4049abe8f3ff180bb" + } + Frame { + msec: 3424 + hash: "0354239f5eaea23474d9f81385392a8a" + } + Frame { + msec: 3440 + hash: "8ef0eef3393e07ae7605c865a95edc30" + } + Frame { + msec: 3456 + hash: "5b8b384cc8e3faf4310015e19b3eb487" + } + Frame { + msec: 3472 + hash: "77c18ac7dfff2a4e516915e3e3df0717" + } + Frame { + msec: 3488 + hash: "c1d3264384c26345eb8100de829309ca" + } + Frame { + msec: 3504 + hash: "6b21f71d0bedef4bbcb445a13f61e7a3" + } + Frame { + msec: 3520 + hash: "f619097356671f6eb54d3b1c481e709d" + } + Frame { + msec: 3536 + hash: "e56e3a90da446e0c482cb93717f6aacc" + } + Frame { + msec: 3552 + hash: "aa94ebdbb4b8423aff28c95daff0baf5" + } + Frame { + msec: 3568 + hash: "e1744d9cacd1a2c96af4cfdd5c486995" + } + Frame { + msec: 3584 + hash: "7f19ea52e9e41a3b1bd90bb2a144d305" + } + Frame { + msec: 3600 + hash: "7f19ea52e9e41a3b1bd90bb2a144d305" + } + Frame { + msec: 3616 + hash: "7f19ea52e9e41a3b1bd90bb2a144d305" + } + Frame { + msec: 3632 + hash: "88143ff6c278a5433b314b551b7b8b1d" + } + Frame { + msec: 3648 + hash: "88143ff6c278a5433b314b551b7b8b1d" + } + Frame { + msec: 3664 + hash: "88143ff6c278a5433b314b551b7b8b1d" + } + Frame { + msec: 3680 + hash: "88143ff6c278a5433b314b551b7b8b1d" + } + Frame { + msec: 3696 + hash: "88143ff6c278a5433b314b551b7b8b1d" + } + Frame { + msec: 3712 + hash: "88143ff6c278a5433b314b551b7b8b1d" + } + Frame { + msec: 3728 + hash: "88143ff6c278a5433b314b551b7b8b1d" + } + Frame { + msec: 3744 + hash: "88143ff6c278a5433b314b551b7b8b1d" + } + Frame { + msec: 3760 + hash: "88143ff6c278a5433b314b551b7b8b1d" + } + Frame { + msec: 3776 + hash: "88143ff6c278a5433b314b551b7b8b1d" + } + Frame { + msec: 3792 + hash: "88143ff6c278a5433b314b551b7b8b1d" + } + Frame { + msec: 3808 + hash: "88143ff6c278a5433b314b551b7b8b1d" + } + Frame { + msec: 3824 + hash: "88143ff6c278a5433b314b551b7b8b1d" + } + Frame { + msec: 3840 + image: "itemlist.3.png" + } + Frame { + msec: 3856 + hash: "88143ff6c278a5433b314b551b7b8b1d" + } + Frame { + msec: 3872 + hash: "88143ff6c278a5433b314b551b7b8b1d" + } + Frame { + msec: 3888 + hash: "88143ff6c278a5433b314b551b7b8b1d" + } + Frame { + msec: 3904 + hash: "88143ff6c278a5433b314b551b7b8b1d" + } + Frame { + msec: 3920 + hash: "88143ff6c278a5433b314b551b7b8b1d" + } + Frame { + msec: 3936 + hash: "88143ff6c278a5433b314b551b7b8b1d" + } + Frame { + msec: 3952 + hash: "88143ff6c278a5433b314b551b7b8b1d" + } + Frame { + msec: 3968 + hash: "88143ff6c278a5433b314b551b7b8b1d" + } + Frame { + msec: 3984 + hash: "88143ff6c278a5433b314b551b7b8b1d" + } + Frame { + msec: 4000 + hash: "88143ff6c278a5433b314b551b7b8b1d" + } + Frame { + msec: 4016 + hash: "88143ff6c278a5433b314b551b7b8b1d" + } + Frame { + msec: 4032 + hash: "88143ff6c278a5433b314b551b7b8b1d" + } + Frame { + msec: 4048 + hash: "88143ff6c278a5433b314b551b7b8b1d" + } + Frame { + msec: 4064 + hash: "88143ff6c278a5433b314b551b7b8b1d" + } + Frame { + msec: 4080 + hash: "88143ff6c278a5433b314b551b7b8b1d" + } + Frame { + msec: 4096 + hash: "88143ff6c278a5433b314b551b7b8b1d" + } + Mouse { + type: 2 + button: 1 + buttons: 1 + x: 31; y: 137 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4112 + hash: "88143ff6c278a5433b314b551b7b8b1d" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 32; y: 137 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4128 + hash: "88143ff6c278a5433b314b551b7b8b1d" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 33; y: 136 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 36; y: 135 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4144 + hash: "88143ff6c278a5433b314b551b7b8b1d" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 40; y: 134 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 46; y: 132 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4160 + hash: "c2c9c284b185a89faf4ddb5a7867f449" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 64; y: 130 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4176 + hash: "de1c18aeda5d2fbd6dad4554c78617bd" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 86; y: 126 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 110; y: 118 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 110; y: 118 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4192 + hash: "a67bf40d09259bbd079c12ae4f49150f" + } + Frame { + msec: 4208 + hash: "94514668dafbe41c5890a578efd6dea4" + } + Frame { + msec: 4224 + hash: "2e97a74eb9ddb1c9613c89e2d78db018" + } + Frame { + msec: 4240 + hash: "4b5368f0d86bffeb6bd31b58aec88650" + } + Frame { + msec: 4256 + hash: "b459bde7bb4ce51e6ecdab58f64fcbb9" + } + Frame { + msec: 4272 + hash: "7bac8cc3ec64c9ad1c0da282e38c953e" + } + Frame { + msec: 4288 + hash: "a73a58c3d7a757547740a2a161f4c756" + } + Frame { + msec: 4304 + hash: "b35edcb1fa3568a3e770ab2364b82e75" + } + Frame { + msec: 4320 + hash: "d6c863ef57c5e5cb04cdac72f920db0b" + } + Frame { + msec: 4336 + hash: "0db5e4588ff851918b07796f0cf07382" + } + Frame { + msec: 4352 + hash: "71ec8c363ca6a6f7556afb70faccffe6" + } + Frame { + msec: 4368 + hash: "18d026e9c965ada1db67c643576d2a80" + } + Frame { + msec: 4384 + hash: "69f71c22dff981a4da8ec1edcf90e79f" + } + Frame { + msec: 4400 + hash: "680460f5e4d9e649931601041af046b2" + } + Frame { + msec: 4416 + hash: "3028763fd15de2607b20b1331b904a4a" + } + Frame { + msec: 4432 + hash: "333eb60e217fe1ea7469eab52ac461f1" + } + Frame { + msec: 4448 + hash: "ccbcd6f45cb529c2db71504c0f69d73e" + } + Frame { + msec: 4464 + hash: "3445df9b41a0a3e74738cbf328ab7d5c" + } + Frame { + msec: 4480 + hash: "bd2c072558479e9de7a97207e58cc57f" + } + Frame { + msec: 4496 + hash: "3d34b0b24a30eda93377dcb4585afed8" + } + Frame { + msec: 4512 + hash: "d3045703863b0c5a327b9355c23d69f2" + } + Frame { + msec: 4528 + hash: "2f2eb55f693415b840a317211b250e9f" + } + Frame { + msec: 4544 + hash: "791b9ca7d47a3343474c30a35e336d4b" + } + Frame { + msec: 4560 + hash: "73a0c02ebad6d3d5f939d9a00dd898bf" + } + Frame { + msec: 4576 + hash: "d5c11135d586711b12f236430a2c2795" + } + Frame { + msec: 4592 + hash: "34f9ea214fe714ff4e994f715ea6ea39" + } + Frame { + msec: 4608 + hash: "8e49afa00983b156b818533923fb6edd" + } + Frame { + msec: 4624 + hash: "e7e7bef17cee92eca9191fd734d7a577" + } + Frame { + msec: 4640 + hash: "e407f6ed7cb3c130365ab5515d6308c0" + } + Frame { + msec: 4656 + hash: "5bb06b4e74532ba5bc8c7bc38bf77d7f" + } + Frame { + msec: 4672 + hash: "0ad7411316031e22034c14e81ca3a806" + } + Frame { + msec: 4688 + hash: "dd81d7a9b48c922b4c42cba1b5f2b9d7" + } + Frame { + msec: 4704 + hash: "32bef6f5005ad94e29ff59165958fbdc" + } + Frame { + msec: 4720 + hash: "87758dd311f91193bf1e3536c2f58525" + } + Frame { + msec: 4736 + hash: "015be92a4ff4e735fcc3cbc7a8b9d763" + } + Frame { + msec: 4752 + hash: "d4c34ed49317c6692d71681fcd9842b6" + } + Frame { + msec: 4768 + hash: "abaa235bb946a8abaddd52981d632c2d" + } + Frame { + msec: 4784 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 4800 + image: "itemlist.4.png" + } + Frame { + msec: 4816 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 4832 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 4848 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 4864 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 4880 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 4896 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 4912 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 4928 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 4944 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 4960 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 4976 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 4992 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 5008 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 5024 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 5040 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 5056 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 5072 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 5088 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 5104 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 5120 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 5136 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 5152 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 5168 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 5184 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 5200 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 5216 + hash: "99f9988040a389576cb6420b5391f768" + } + Frame { + msec: 5232 + hash: "99f9988040a389576cb6420b5391f768" + } + Mouse { + type: 2 + button: 1 + buttons: 1 + x: 17; y: 120 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5248 + hash: "99f9988040a389576cb6420b5391f768" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 19; y: 120 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 21; y: 120 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5264 + hash: "99f9988040a389576cb6420b5391f768" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 24; y: 119 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 28; y: 119 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5280 + hash: "95b380c9ab6f8db7b822faf023d94546" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 35; y: 119 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 44; y: 119 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5296 + hash: "bb79e53556698c62ec30c75be9f6b7d7" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 70; y: 119 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 96; y: 117 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 96; y: 117 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5312 + hash: "285cc2f0df1f59f25a0135560ab6edf2" + } + Frame { + msec: 5328 + hash: "93a731dc6f71b6ff5400bf74c87e6c46" + } + Frame { + msec: 5344 + hash: "eb555741ab128a50de5a18a454f2e639" + } + Frame { + msec: 5360 + hash: "5dbe6cf898c1e37fcaacecfcf57b2194" + } + Frame { + msec: 5376 + hash: "e7795610115593e78bb32f7bcc0ae2eb" + } + Frame { + msec: 5392 + hash: "20e76f0eb4ec5f691999faf8ad313370" + } + Frame { + msec: 5408 + hash: "d6a544c622e504c1b931e1a8a1310a6e" + } + Frame { + msec: 5424 + hash: "e7a3a21feed244c5b1c710a9254c15f0" + } + Frame { + msec: 5440 + hash: "5a4b1aca24f121d1373646e9d80b86fd" + } + Frame { + msec: 5456 + hash: "331d2ec7021655c86aa64e47718a1088" + } + Frame { + msec: 5472 + hash: "92096bc872e7395aa5b75c44646a0b60" + } + Frame { + msec: 5488 + hash: "0d9aa6cee4d21488cbb5153f8f3ed593" + } + Frame { + msec: 5504 + hash: "c1b943d43701605563fffffcb75f9fa7" + } + Frame { + msec: 5520 + hash: "1b680025d5ad1ddd8f8d5f570ba73e71" + } + Frame { + msec: 5536 + hash: "5539a3b9f60ea747c10ed8328b467cbf" + } + Frame { + msec: 5552 + hash: "0a1317bcb606cd3488c5b14ee5d96585" + } + Frame { + msec: 5568 + hash: "8844af68b11db7d92c69804c7371a746" + } + Frame { + msec: 5584 + hash: "28d7fd127739c6e3b8488651b725c802" + } + Frame { + msec: 5600 + hash: "0cf1a7d958a96aa2768995dddc5ccc09" + } + Frame { + msec: 5616 + hash: "64b902fe7ab4d89ef0c7b760974e3488" + } + Frame { + msec: 5632 + hash: "aba11c597eba550fc1eaddbf554057f6" + } + Frame { + msec: 5648 + hash: "1bacaa3bb9dc3cac9ffc7491cb4dc1a5" + } + Frame { + msec: 5664 + hash: "0ba8b582234d9f0c198c0c9e18e1cb02" + } + Frame { + msec: 5680 + hash: "f66eaf2b5c3529987c0d9d005351ed73" + } + Frame { + msec: 5696 + hash: "75b0bb720fa4c77da3783b3ff31c2fae" + } + Frame { + msec: 5712 + hash: "345b235bb7f13409378e5c0c370f2a41" + } + Frame { + msec: 5728 + hash: "83b7e902dce4e0fdc4ef5d629188c23c" + } + Frame { + msec: 5744 + hash: "04b9041c6f10969889d92e94785c7e88" + } + Frame { + msec: 5760 + image: "itemlist.5.png" + } + Frame { + msec: 5776 + hash: "4f3a902addc34ecdaf390e2427cc52e7" + } + Frame { + msec: 5792 + hash: "68d443f16c16821ffc9ca68b17c76034" + } + Frame { + msec: 5808 + hash: "9d25adc77befa761ee376a9b43595b5e" + } + Frame { + msec: 5824 + hash: "a68b1bc6c2963ee92c3a45f500667b3b" + } + Frame { + msec: 5840 + hash: "d5268cd58c222451d48038e715e83802" + } + Frame { + msec: 5856 + hash: "f37d461541a8ec7a4161b18748de6aea" + } + Frame { + msec: 5872 + hash: "805319ac7ca842feb3649e92f8b5b72f" + } + Frame { + msec: 5888 + hash: "73124472a05080891d4948d8ca273f8c" + } + Frame { + msec: 5904 + hash: "b6e433a23282a50db2e165a2447ba3f6" + } + Frame { + msec: 5920 + hash: "fd8d3f5688b1806998c6087e18c6c730" + } + Frame { + msec: 5936 + hash: "f132dd459950ef2d18aa93ca950d0692" + } + Frame { + msec: 5952 + hash: "ade5beb259b5277c333ca806fc9bdbec" + } + Frame { + msec: 5968 + hash: "ade5beb259b5277c333ca806fc9bdbec" + } + Frame { + msec: 5984 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6000 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6016 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6032 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6048 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6064 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6080 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6096 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6112 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6128 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6144 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6160 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6176 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6192 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6208 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6224 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6240 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6256 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6272 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6288 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6304 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6320 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6336 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6352 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6368 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6384 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6400 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6416 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6432 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6448 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6464 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6480 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6496 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6512 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6528 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6544 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6560 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6576 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6592 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6608 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6624 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6640 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6656 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6672 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6688 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6704 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6720 + image: "itemlist.6.png" + } + Frame { + msec: 6736 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6752 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6768 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6784 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6800 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6816 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6832 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6848 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6864 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6880 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6896 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6912 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6928 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6944 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6960 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6976 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 6992 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 7008 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 7024 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 7040 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 7056 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 7072 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 7088 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 7104 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 7120 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 7136 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 7152 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 7168 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 7184 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 7200 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 7216 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 7232 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 7248 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 7264 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 7280 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 7296 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } + Frame { + msec: 7312 + hash: "bf47cc398a702dd17c8efebb3d2f8073" + } +} diff --git a/tests/auto/declarative/visual/ListView/data-MAC/listview.0.png b/tests/auto/declarative/visual/ListView/data-MAC/listview.0.png Binary files differnew file mode 100644 index 0000000..a1ab987 --- /dev/null +++ b/tests/auto/declarative/visual/ListView/data-MAC/listview.0.png diff --git a/tests/auto/declarative/visual/ListView/data-MAC/listview.1.png b/tests/auto/declarative/visual/ListView/data-MAC/listview.1.png Binary files differnew file mode 100644 index 0000000..a1ab987 --- /dev/null +++ b/tests/auto/declarative/visual/ListView/data-MAC/listview.1.png diff --git a/tests/auto/declarative/visual/ListView/data-MAC/listview.10.png b/tests/auto/declarative/visual/ListView/data-MAC/listview.10.png Binary files differnew file mode 100644 index 0000000..dcfca3f --- /dev/null +++ b/tests/auto/declarative/visual/ListView/data-MAC/listview.10.png diff --git a/tests/auto/declarative/visual/ListView/data-MAC/listview.11.png b/tests/auto/declarative/visual/ListView/data-MAC/listview.11.png Binary files differnew file mode 100644 index 0000000..7cc4047 --- /dev/null +++ b/tests/auto/declarative/visual/ListView/data-MAC/listview.11.png diff --git a/tests/auto/declarative/visual/ListView/data-MAC/listview.12.png b/tests/auto/declarative/visual/ListView/data-MAC/listview.12.png Binary files differnew file mode 100644 index 0000000..a97f4ad --- /dev/null +++ b/tests/auto/declarative/visual/ListView/data-MAC/listview.12.png diff --git a/tests/auto/declarative/visual/ListView/data-MAC/listview.13.png b/tests/auto/declarative/visual/ListView/data-MAC/listview.13.png Binary files differnew file mode 100644 index 0000000..7a8c6bd --- /dev/null +++ b/tests/auto/declarative/visual/ListView/data-MAC/listview.13.png diff --git a/tests/auto/declarative/visual/ListView/data-MAC/listview.14.png b/tests/auto/declarative/visual/ListView/data-MAC/listview.14.png Binary files differnew file mode 100644 index 0000000..ae47356 --- /dev/null +++ b/tests/auto/declarative/visual/ListView/data-MAC/listview.14.png diff --git a/tests/auto/declarative/visual/ListView/data-MAC/listview.15.png b/tests/auto/declarative/visual/ListView/data-MAC/listview.15.png Binary files differnew file mode 100644 index 0000000..b3a7260 --- /dev/null +++ b/tests/auto/declarative/visual/ListView/data-MAC/listview.15.png diff --git a/tests/auto/declarative/visual/ListView/data-MAC/listview.16.png b/tests/auto/declarative/visual/ListView/data-MAC/listview.16.png Binary files differnew file mode 100644 index 0000000..581e824 --- /dev/null +++ b/tests/auto/declarative/visual/ListView/data-MAC/listview.16.png diff --git a/tests/auto/declarative/visual/ListView/data-MAC/listview.17.png b/tests/auto/declarative/visual/ListView/data-MAC/listview.17.png Binary files differnew file mode 100644 index 0000000..581e824 --- /dev/null +++ b/tests/auto/declarative/visual/ListView/data-MAC/listview.17.png diff --git a/tests/auto/declarative/visual/ListView/data-MAC/listview.18.png b/tests/auto/declarative/visual/ListView/data-MAC/listview.18.png Binary files differnew file mode 100644 index 0000000..581e824 --- /dev/null +++ b/tests/auto/declarative/visual/ListView/data-MAC/listview.18.png diff --git a/tests/auto/declarative/visual/ListView/data-MAC/listview.19.png b/tests/auto/declarative/visual/ListView/data-MAC/listview.19.png Binary files differnew file mode 100644 index 0000000..581e824 --- /dev/null +++ b/tests/auto/declarative/visual/ListView/data-MAC/listview.19.png diff --git a/tests/auto/declarative/visual/ListView/data-MAC/listview.2.png b/tests/auto/declarative/visual/ListView/data-MAC/listview.2.png Binary files differnew file mode 100644 index 0000000..9877b92 --- /dev/null +++ b/tests/auto/declarative/visual/ListView/data-MAC/listview.2.png diff --git a/tests/auto/declarative/visual/ListView/data-MAC/listview.3.png b/tests/auto/declarative/visual/ListView/data-MAC/listview.3.png Binary files differnew file mode 100644 index 0000000..603bd24 --- /dev/null +++ b/tests/auto/declarative/visual/ListView/data-MAC/listview.3.png diff --git a/tests/auto/declarative/visual/ListView/data-MAC/listview.4.png b/tests/auto/declarative/visual/ListView/data-MAC/listview.4.png Binary files differnew file mode 100644 index 0000000..5fdfbb8 --- /dev/null +++ b/tests/auto/declarative/visual/ListView/data-MAC/listview.4.png diff --git a/tests/auto/declarative/visual/ListView/data-MAC/listview.5.png b/tests/auto/declarative/visual/ListView/data-MAC/listview.5.png Binary files differnew file mode 100644 index 0000000..a1ab987 --- /dev/null +++ b/tests/auto/declarative/visual/ListView/data-MAC/listview.5.png diff --git a/tests/auto/declarative/visual/ListView/data-MAC/listview.6.png b/tests/auto/declarative/visual/ListView/data-MAC/listview.6.png Binary files differnew file mode 100644 index 0000000..9ccf9b0 --- /dev/null +++ b/tests/auto/declarative/visual/ListView/data-MAC/listview.6.png diff --git a/tests/auto/declarative/visual/ListView/data-MAC/listview.7.png b/tests/auto/declarative/visual/ListView/data-MAC/listview.7.png Binary files differnew file mode 100644 index 0000000..6b40e1b --- /dev/null +++ b/tests/auto/declarative/visual/ListView/data-MAC/listview.7.png diff --git a/tests/auto/declarative/visual/ListView/data-MAC/listview.8.png b/tests/auto/declarative/visual/ListView/data-MAC/listview.8.png Binary files differnew file mode 100644 index 0000000..2fda36d --- /dev/null +++ b/tests/auto/declarative/visual/ListView/data-MAC/listview.8.png diff --git a/tests/auto/declarative/visual/ListView/data-MAC/listview.9.png b/tests/auto/declarative/visual/ListView/data-MAC/listview.9.png Binary files differnew file mode 100644 index 0000000..581e824 --- /dev/null +++ b/tests/auto/declarative/visual/ListView/data-MAC/listview.9.png diff --git a/tests/auto/declarative/visual/ListView/data-MAC/listview.qml b/tests/auto/declarative/visual/ListView/data-MAC/listview.qml new file mode 100644 index 0000000..3765668 --- /dev/null +++ b/tests/auto/declarative/visual/ListView/data-MAC/listview.qml @@ -0,0 +1,3079 @@ +import Qt.VisualTest 4.6 + +VisualTest { + Frame { + msec: 0 + } + Frame { + msec: 16 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 32 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 48 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 64 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 80 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 96 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 112 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 128 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 144 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 160 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 176 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 192 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 208 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 224 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 240 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 256 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 272 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 288 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 304 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 320 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 336 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 352 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 368 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 384 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 400 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 416 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 432 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 448 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 464 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 480 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 496 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 512 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 528 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 544 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 560 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 576 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 592 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 608 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 624 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 640 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 656 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 672 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 688 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 704 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 720 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 736 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 752 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 768 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 784 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 800 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 816 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 832 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 848 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 864 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 880 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 896 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 912 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 928 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 944 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 960 + image: "listview.0.png" + } + Frame { + msec: 976 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 992 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1008 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1024 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1040 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1056 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1072 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1088 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1104 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1120 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1136 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1152 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1168 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1184 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1200 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1216 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1232 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1248 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1264 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1280 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1296 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1312 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1328 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1344 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1360 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1376 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1392 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1408 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1424 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1440 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1456 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1472 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1488 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1504 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1520 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1536 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1552 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1568 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1584 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1600 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1616 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1632 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1648 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1664 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1680 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1696 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1712 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1728 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1744 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1760 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1776 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1792 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1808 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1824 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1840 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1856 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1872 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1888 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1904 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1920 + image: "listview.1.png" + } + Frame { + msec: 1936 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1952 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1968 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 1984 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2000 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2016 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2032 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2048 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2064 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2080 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2096 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2112 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2128 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2144 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2160 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2176 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2192 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2208 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2224 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2240 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2256 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2272 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2288 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2304 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2320 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2336 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2352 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2368 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2384 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2400 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2416 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2432 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2448 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2464 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2480 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2496 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2512 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2528 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2544 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2560 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2576 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2592 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Mouse { + type: 2 + button: 1 + buttons: 1 + x: 553; y: 267 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2608 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 2624 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 554; y: 267 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 555; y: 266 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2640 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 556; y: 265 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 558; y: 260 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2656 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 560; y: 256 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2672 + hash: "c315e184c4dcb11d7e9fd4509a8b6a1f" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 562; y: 250 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 566; y: 234 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2688 + hash: "aeef1cacca9518408519b670443e396f" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 568; y: 216 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2704 + hash: "621626927f83bf7b36b78f5ca7ed4ed0" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 572; y: 192 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 572; y: 192 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2720 + hash: "b2aca965b745e98365195c52b9dd9a2c" + } + Frame { + msec: 2736 + hash: "4cc8c162afcc45c79afd8230893d4ddd" + } + Frame { + msec: 2752 + hash: "b9c0815086393878ad00566db7a3c577" + } + Frame { + msec: 2768 + hash: "23cbc15fce97f966c24e3ec626e01960" + } + Frame { + msec: 2784 + hash: "3a7ce897b47ba39e63be31a020de6f3d" + } + Frame { + msec: 2800 + hash: "2a8a32cd27fad2c57c9eb518c7b3b3ca" + } + Frame { + msec: 2816 + hash: "96d676ad58119430b440a5f0a2215f26" + } + Frame { + msec: 2832 + hash: "5f9cd251615ee6a98470a7b6098f7890" + } + Frame { + msec: 2848 + hash: "c9b1c073cbfbf1c353685b3f38baa675" + } + Frame { + msec: 2864 + hash: "cf5bfbfe8904ea40b796d2b33d5cc363" + } + Frame { + msec: 2880 + image: "listview.2.png" + } + Frame { + msec: 2896 + hash: "c75c3342b476f75fc0c5f56a374da13e" + } + Frame { + msec: 2912 + hash: "0dfcd15d21b7e949b56bc69d881c52f5" + } + Frame { + msec: 2928 + hash: "73b7352bb11d29cbf64b6b594e761e42" + } + Frame { + msec: 2944 + hash: "876361c2fc18c2236c1dffd36f517f44" + } + Frame { + msec: 2960 + hash: "0dfaf61e3a86ee056a5d76cf6f7994b2" + } + Frame { + msec: 2976 + hash: "391995cfc5d8d3808b30d74ba5ea3188" + } + Frame { + msec: 2992 + hash: "6fd4f14c16a8870355fa190c94e4be2d" + } + Frame { + msec: 3008 + hash: "0aac04c8092505d934220e61c7959512" + } + Frame { + msec: 3024 + hash: "6cb0fbe22fcd60b5ed6385e49522b32e" + } + Frame { + msec: 3040 + hash: "2eb7fd1a773e32ae94284cf57efaaff2" + } + Frame { + msec: 3056 + hash: "e143ed5eeb94b35ef97e965f34d45e4d" + } + Frame { + msec: 3072 + hash: "529e85f2cd48c1f0d056682b8350445b" + } + Frame { + msec: 3088 + hash: "d74bded985c00ecd192ff8fdce708450" + } + Frame { + msec: 3104 + hash: "f71568b2173f72c4433a019775923c02" + } + Frame { + msec: 3120 + hash: "1185a1c936ac08633c14d39ca9c4f5e9" + } + Frame { + msec: 3136 + hash: "e641720bf75f1e4f0a8471f3a8b35094" + } + Frame { + msec: 3152 + hash: "cecc41fb42abb95505c094829fd415bf" + } + Frame { + msec: 3168 + hash: "7ad89090beb9de3cd7c5a5a03fca900d" + } + Frame { + msec: 3184 + hash: "2a98fe4406367d4e286d8932d6a21318" + } + Frame { + msec: 3200 + hash: "9aad024b2fc25ce886ccaa4ac106b1d8" + } + Frame { + msec: 3216 + hash: "3c4a787a4d590efd2e72706e40df7b6d" + } + Frame { + msec: 3232 + hash: "1135e06c2981bdaed13c13400e178dc3" + } + Frame { + msec: 3248 + hash: "1fbceedf1c20f2aa3f05be36126280e2" + } + Frame { + msec: 3264 + hash: "5d1ec83f43b649c732cc3f7815100428" + } + Frame { + msec: 3280 + hash: "27501f6b6adccfdb77a5228611e2a95a" + } + Frame { + msec: 3296 + hash: "218dc244352c14467f2b2a39d78a1bc7" + } + Frame { + msec: 3312 + hash: "33a998563d2c053e375f619b7a75a224" + } + Frame { + msec: 3328 + hash: "02d34b79e25367e6d0dc1765cab12353" + } + Frame { + msec: 3344 + hash: "2698cf68138aa7d292167bcc85f60b74" + } + Frame { + msec: 3360 + hash: "0b33e929b420596ff1dce2eeef8480db" + } + Frame { + msec: 3376 + hash: "d8ec307a85cecaacaa908ceb34d5db5b" + } + Frame { + msec: 3392 + hash: "4afe1df3e802b41d1b89b5fab4e35190" + } + Frame { + msec: 3408 + hash: "e8f484ed8d2a6745ee87ac9544281d55" + } + Frame { + msec: 3424 + hash: "6df053920e87d7e6e3ec0368b4b14c25" + } + Frame { + msec: 3440 + hash: "6e94791acce321417a37132821c0260d" + } + Frame { + msec: 3456 + hash: "fea3e31cbf3078615f57c934197dac35" + } + Frame { + msec: 3472 + hash: "e8d15890a8bd95db39889d19f046901b" + } + Frame { + msec: 3488 + hash: "038b422b154dfef2d955b833892c581e" + } + Frame { + msec: 3504 + hash: "01180b3d9b504ca2814382eadaf3a4e0" + } + Frame { + msec: 3520 + hash: "869a0aa0d67043822c65383e0f3264d4" + } + Frame { + msec: 3536 + hash: "43785b1214510c10b65018a9d68a93b1" + } + Frame { + msec: 3552 + hash: "95e6ebc35c2fb128b6e6ac0743268523" + } + Frame { + msec: 3568 + hash: "f8c22a6ca3169de4d29b3b0e2908f581" + } + Frame { + msec: 3584 + hash: "6baf16c321847d269718bcb3468aeeb2" + } + Frame { + msec: 3600 + hash: "30804b5eb2a6d99116475cbdc1a9c043" + } + Frame { + msec: 3616 + hash: "c892c17ec947a910b74f5b8704405e9f" + } + Frame { + msec: 3632 + hash: "696029b77512943001c9eba64191e633" + } + Frame { + msec: 3648 + hash: "4c26bb0ca28d74a2bb79d0bfc8127361" + } + Frame { + msec: 3664 + hash: "6e8c50cc14c9afe73b4baf09a6a8f1a4" + } + Frame { + msec: 3680 + hash: "fd20e4259b44357c93f22f35c698fe1b" + } + Frame { + msec: 3696 + hash: "5d49efe1383065f0b88f1bfdbbe5e165" + } + Frame { + msec: 3712 + hash: "5d49efe1383065f0b88f1bfdbbe5e165" + } + Frame { + msec: 3728 + hash: "5d49efe1383065f0b88f1bfdbbe5e165" + } + Frame { + msec: 3744 + hash: "5d49efe1383065f0b88f1bfdbbe5e165" + } + Frame { + msec: 3760 + hash: "5d49efe1383065f0b88f1bfdbbe5e165" + } + Frame { + msec: 3776 + hash: "5d49efe1383065f0b88f1bfdbbe5e165" + } + Frame { + msec: 3792 + hash: "5d49efe1383065f0b88f1bfdbbe5e165" + } + Frame { + msec: 3808 + hash: "5d49efe1383065f0b88f1bfdbbe5e165" + } + Frame { + msec: 3824 + hash: "5d49efe1383065f0b88f1bfdbbe5e165" + } + Frame { + msec: 3840 + image: "listview.3.png" + } + Frame { + msec: 3856 + hash: "5d49efe1383065f0b88f1bfdbbe5e165" + } + Frame { + msec: 3872 + hash: "5d49efe1383065f0b88f1bfdbbe5e165" + } + Frame { + msec: 3888 + hash: "5d49efe1383065f0b88f1bfdbbe5e165" + } + Frame { + msec: 3904 + hash: "5d49efe1383065f0b88f1bfdbbe5e165" + } + Frame { + msec: 3920 + hash: "5d49efe1383065f0b88f1bfdbbe5e165" + } + Frame { + msec: 3936 + hash: "5d49efe1383065f0b88f1bfdbbe5e165" + } + Frame { + msec: 3952 + hash: "5d49efe1383065f0b88f1bfdbbe5e165" + } + Frame { + msec: 3968 + hash: "5d49efe1383065f0b88f1bfdbbe5e165" + } + Frame { + msec: 3984 + hash: "5d49efe1383065f0b88f1bfdbbe5e165" + } + Frame { + msec: 4000 + hash: "5d49efe1383065f0b88f1bfdbbe5e165" + } + Frame { + msec: 4016 + hash: "5d49efe1383065f0b88f1bfdbbe5e165" + } + Frame { + msec: 4032 + hash: "5d49efe1383065f0b88f1bfdbbe5e165" + } + Frame { + msec: 4048 + hash: "5d49efe1383065f0b88f1bfdbbe5e165" + } + Frame { + msec: 4064 + hash: "5d49efe1383065f0b88f1bfdbbe5e165" + } + Frame { + msec: 4080 + hash: "5d49efe1383065f0b88f1bfdbbe5e165" + } + Frame { + msec: 4096 + hash: "5d49efe1383065f0b88f1bfdbbe5e165" + } + Frame { + msec: 4112 + hash: "5d49efe1383065f0b88f1bfdbbe5e165" + } + Frame { + msec: 4128 + hash: "5d49efe1383065f0b88f1bfdbbe5e165" + } + Frame { + msec: 4144 + hash: "5d49efe1383065f0b88f1bfdbbe5e165" + } + Mouse { + type: 2 + button: 1 + buttons: 1 + x: 521; y: 24 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4160 + hash: "5d49efe1383065f0b88f1bfdbbe5e165" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 521; y: 25 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4176 + hash: "5d49efe1383065f0b88f1bfdbbe5e165" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 521; y: 32 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 521; y: 37 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4192 + hash: "a5df688148c264de1d376c9b87ddfa6b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 521; y: 46 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4208 + hash: "a4e2c1878b0afce0ee1eebd63e9c951a" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 521; y: 66 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 521; y: 88 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4224 + hash: "2f9a79278d492790ef86a09c77e95ff4" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 531; y: 136 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 531; y: 136 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4240 + hash: "5b5ce7206b26528157c426f4e1e3e0a8" + } + Frame { + msec: 4256 + hash: "65a1e5f81ab89b163aed46b984cca45e" + } + Frame { + msec: 4272 + hash: "e28253ad5a2415251b68bcda1d7d4bd0" + } + Frame { + msec: 4288 + hash: "71aae5abb4a9e9077053ea21dd3ec315" + } + Frame { + msec: 4304 + hash: "33fcea38fc3b328b3294f9ac2a26aa1a" + } + Frame { + msec: 4320 + hash: "6299eb1d87f371966307668b92de6a0b" + } + Frame { + msec: 4336 + hash: "4f66d8c7cb6971d0fc24089d123c547b" + } + Frame { + msec: 4352 + hash: "d9906d61b31fabf968290ebcd6688f34" + } + Frame { + msec: 4368 + hash: "5a1945993ff8096ba6b933d45586044a" + } + Frame { + msec: 4384 + hash: "331535e54da9bbdbc2fbf2b244ad0199" + } + Frame { + msec: 4400 + hash: "4dc39de0c54f6e0b77f94f6ae6c345ec" + } + Frame { + msec: 4416 + hash: "ec309a298ce246c13eb666488eb75016" + } + Frame { + msec: 4432 + hash: "a133819f8adc6265eb0e438261c869e3" + } + Frame { + msec: 4448 + hash: "da4d64fd6b3ae7d49ee5c5c8d0117a37" + } + Frame { + msec: 4464 + hash: "620dd1c3fc41ce657eac9d1a5b765fd4" + } + Frame { + msec: 4480 + hash: "ff1c370bd1bf75a98ae7125e7dd5a9db" + } + Frame { + msec: 4496 + hash: "59c6e4297109b5cc7c197749867dddae" + } + Frame { + msec: 4512 + hash: "91b1719e86529d0c35a53a2d0a095dd6" + } + Frame { + msec: 4528 + hash: "2994663d35c9eb453a27c1a1fa9aeeb8" + } + Frame { + msec: 4544 + hash: "ae4ec37b9f6a00b3c9139e5cfe13d32e" + } + Frame { + msec: 4560 + hash: "a98340236d1b65f47e88684168c1429d" + } + Frame { + msec: 4576 + hash: "34848b483ea6a2bd412e29d26beb3ab0" + } + Frame { + msec: 4592 + hash: "dd9bae0e2fca84b265d8cb59686ff88d" + } + Frame { + msec: 4608 + hash: "18b6ef6f5913b0612b76e7b2e25073dd" + } + Frame { + msec: 4624 + hash: "9398aab9478279aed1bc40c9378f8da4" + } + Frame { + msec: 4640 + hash: "a297a304c12102f23bd1e0f0207e0df9" + } + Frame { + msec: 4656 + hash: "091db9138cd6ae801ad857105a83c8f9" + } + Frame { + msec: 4672 + hash: "253938ca4a4f13433ddd502eb94cb7cd" + } + Frame { + msec: 4688 + hash: "6002df1793d290e4e31ee0c91c37bbe6" + } + Frame { + msec: 4704 + hash: "212476fa1c3a52fb8eba03ec3aecdcd8" + } + Frame { + msec: 4720 + hash: "80d4d8434d4e96a2bc23f5ed060d6ddc" + } + Frame { + msec: 4736 + hash: "2d4add725f31a04558635ce4b73a758a" + } + Frame { + msec: 4752 + hash: "57c06022ec1e502c4f49f43063c433e7" + } + Frame { + msec: 4768 + hash: "8393e97990993f9d5f68ea65f8e4a2db" + } + Frame { + msec: 4784 + hash: "9a1fcd96dffaf5c79ecc7f9427e02499" + } + Frame { + msec: 4800 + image: "listview.4.png" + } + Frame { + msec: 4816 + hash: "5ae722cf541e3453e73bbee57dc379e9" + } + Frame { + msec: 4832 + hash: "fc7326c2e2e56d9c3036e8dfc2ea77a8" + } + Frame { + msec: 4848 + hash: "f22a2a68cea158f333b0457025d75490" + } + Frame { + msec: 4864 + hash: "d684c8aa9b835779080f170cafead40f" + } + Frame { + msec: 4880 + hash: "dd451e5e421f929d015981bc7aeb8c66" + } + Frame { + msec: 4896 + hash: "d066f228295db7f46520495167d3e946" + } + Frame { + msec: 4912 + hash: "ebf640a457e3498bade3220aafa70331" + } + Frame { + msec: 4928 + hash: "190f5b1f3ce9d200790c34c50bcc62c5" + } + Frame { + msec: 4944 + hash: "9d4ad865246eb008afa40740b5c9a208" + } + Frame { + msec: 4960 + hash: "81c8b2c0b4f9e74f24d328a1d9b40a9f" + } + Frame { + msec: 4976 + hash: "24acc300307e71bee79bce8de76f56cb" + } + Frame { + msec: 4992 + hash: "1f9d31f94cfce6f868bfcc8a104d2465" + } + Frame { + msec: 5008 + hash: "7a3cab008dcb7a893ae30797b33df6f2" + } + Frame { + msec: 5024 + hash: "38d561a2950434e59513439c7f1120ea" + } + Frame { + msec: 5040 + hash: "8d34131faa15bc126bd4d9ef3be39ef5" + } + Frame { + msec: 5056 + hash: "85d57ef15791b56deb537795dd87911e" + } + Frame { + msec: 5072 + hash: "71e932169915a6c8c2cef0b22febf316" + } + Frame { + msec: 5088 + hash: "8b3452981963aeebadc9ac2013150263" + } + Frame { + msec: 5104 + hash: "a3fb8abecfeb48ba1cd1fd8f40896fa0" + } + Frame { + msec: 5120 + hash: "f53ab533f6a58ae45139f3da4bf8ab4e" + } + Frame { + msec: 5136 + hash: "9ec7012404f3c1c7795810dcee5acc3b" + } + Frame { + msec: 5152 + hash: "99ca43bab532dd5d7566e596c65053ce" + } + Frame { + msec: 5168 + hash: "0af83ad2416821cc230cd2856d1a3e39" + } + Frame { + msec: 5184 + hash: "86fa23ddf2005bbf35238ae04ae554ac" + } + Frame { + msec: 5200 + hash: "bb52a748f1d85dde410cfa4f24e3ed20" + } + Frame { + msec: 5216 + hash: "898b96bc5ee9a3ac61764e5cd9af8cfb" + } + Frame { + msec: 5232 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5248 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5264 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5280 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5296 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5312 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5328 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5344 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5360 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5376 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5392 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5408 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5424 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5440 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5456 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5472 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5488 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5504 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5520 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5536 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5552 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5568 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5584 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5600 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5616 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5632 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5648 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5664 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5680 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5696 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5712 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5728 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5744 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5760 + image: "listview.5.png" + } + Frame { + msec: 5776 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5792 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5808 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5824 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5840 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5856 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5872 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5888 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5904 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5920 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5936 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5952 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Frame { + msec: 5968 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Mouse { + type: 2 + button: 1 + buttons: 1 + x: 111; y: 230 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 111; y: 227 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5984 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 111; y: 223 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6000 + hash: "3b88645092be28037fca4a6034f5b2f7" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 111; y: 216 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 111; y: 210 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6016 + hash: "0076b55d3da4ca365688b6a2c984103f" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 112; y: 205 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6032 + hash: "db846ad8e3200ca1fce36a38dc7beab8" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 112; y: 192 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6048 + hash: "3cb6b25725b4285f9c096d595224c5ca" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 111; y: 180 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6064 + hash: "1832e12fdf3b464b02b296e727b33694" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 110; y: 173 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6080 + hash: "6d18d2b5f65cbba4915d0725d24b40f3" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 109; y: 158 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 107; y: 140 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6096 + hash: "79bc7afc6b1aa5f8904b3e6d5d4a9389" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 103; y: 124 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6112 + hash: "4436f2d15304c839aacec486c1fd6d96" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 101; y: 111 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6128 + hash: "c3bffc7c95893cf9bbd8596208b7f657" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 101; y: 105 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 101; y: 100 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6144 + hash: "04231c2fdc02729aa34ed4e403dd373b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 101; y: 96 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6160 + hash: "392d75c4b372825e78366eb63a618170" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 101; y: 87 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 102; y: 83 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6176 + hash: "7f91f7bdb0cb62d600ac4aa573681fe3" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 102; y: 79 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6192 + hash: "69207181a382650c5e33145555f0d9ba" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 103; y: 76 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 103; y: 72 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6208 + hash: "65a184b5c49b02e08114e437483f928d" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 104; y: 68 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 105; y: 64 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6224 + hash: "c22da9ce54d04f51fb55da755753a509" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 105; y: 61 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6240 + hash: "59dbd5216847a62f60a1d0701a15bb62" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 106; y: 57 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 106; y: 53 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6256 + hash: "bbfc902db6e6ca253afb1c90306b2a63" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 106; y: 47 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 106; y: 47 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6272 + hash: "5c41f194afec5f7e3db9d98673d03d5c" + } + Frame { + msec: 6288 + hash: "deb06d0f915d5f6ec39b1820d57b6af6" + } + Frame { + msec: 6304 + hash: "deb06d0f915d5f6ec39b1820d57b6af6" + } + Frame { + msec: 6320 + hash: "2a1a1f9239a6ccb308e51796f9b0bb89" + } + Frame { + msec: 6336 + hash: "3c1b44201616b8271023bf05a3f3f0f7" + } + Frame { + msec: 6352 + hash: "87afcef49db8b2b547e85e834f8ec304" + } + Frame { + msec: 6368 + hash: "290081b4b1272ef09ec9964c128e61b5" + } + Frame { + msec: 6384 + hash: "19bb3b23ee4b14a5f0a313106ef7c8c1" + } + Frame { + msec: 6400 + hash: "65a184b5c49b02e08114e437483f928d" + } + Frame { + msec: 6416 + hash: "832d2aefbcaf776f35039be527d367c5" + } + Frame { + msec: 6432 + hash: "69207181a382650c5e33145555f0d9ba" + } + Frame { + msec: 6448 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 6464 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 6480 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 6496 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 6512 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 6528 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 6544 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 6560 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 6576 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 6592 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 6608 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 6624 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 6640 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 6656 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 6672 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 6688 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 6704 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 6720 + image: "listview.6.png" + } + Frame { + msec: 6736 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 6752 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 6768 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 6784 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 6800 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 6816 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 6832 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 6848 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 6864 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 6880 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 6896 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 6912 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 6928 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 6944 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 6960 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 6976 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 6992 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 7008 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 7024 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 7040 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 7056 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 7072 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 7088 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 7104 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 7120 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 7136 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 7152 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 7168 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 7184 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 7200 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 7216 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 7232 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 7248 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 7264 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 7280 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Frame { + msec: 7296 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Mouse { + type: 2 + button: 1 + buttons: 1 + x: 519; y: 276 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7312 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 519; y: 275 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7328 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 519; y: 274 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7344 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 518; y: 273 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 518; y: 272 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7360 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 518; y: 271 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7376 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 518; y: 268 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7392 + hash: "89fe95733476bd000457e36ee4ecfc73" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 518; y: 266 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 518; y: 265 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7408 + hash: "9047f597b9e59ca652c172338bed6ef9" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 517; y: 262 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7424 + hash: "87476f78daecd6bb49e8d6e673d28100" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 517; y: 260 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7440 + hash: "6bfd895c6b7d97e4102eb26608cdfeca" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 517; y: 254 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7456 + hash: "e4c2b75beaee54a5781a5acbeb37ea64" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 517; y: 249 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7472 + hash: "d5e816768e9c3db0631416bd86b1b461" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 517; y: 243 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7488 + hash: "df6c7252ebb51e7447396b640e1c6ead" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 517; y: 237 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7504 + hash: "5f4db5386dc76b9f2dac47618c733dee" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 517; y: 231 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7520 + hash: "534d1d16d8321996969b54875ec5f1e0" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 517; y: 225 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7536 + hash: "5263016e53327df1972498b55a60c0ed" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 517; y: 219 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7552 + hash: "6787a5a16d2a61643bb1435f6488ada6" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 518; y: 215 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7568 + hash: "1feabcd683590c3d28d899167e6278b3" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 519; y: 208 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7584 + hash: "c0495d6083b2e4ddd2b1dca2f231529c" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 520; y: 202 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7600 + hash: "cb302493a17c1806dfcdf002c44e7acd" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 521; y: 196 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7616 + hash: "f3822b79b678532ce7f826952636be90" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 521; y: 189 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7632 + hash: "6e30eed182c38be110ba9c7e95b223be" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 521; y: 185 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7648 + hash: "9e3ad0331c0c041b9a5747a1d44a43fe" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 521; y: 177 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7664 + hash: "791e6abf9dae670770c2429ee9f1ad71" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 521; y: 169 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7680 + image: "listview.7.png" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 521; y: 160 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7696 + hash: "d3ae366fb8212cb987e23150802c88e3" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 521; y: 156 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7712 + hash: "b87708e19d7e8b64fe1ab50ec1723975" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 521; y: 147 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7728 + hash: "512678e45cdd8d48e10b08ee020afe8e" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 521; y: 144 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7744 + hash: "211aa70e813819d476996b3396e9e5a0" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 521; y: 137 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7760 + hash: "f16eaa360604be84ce61364ad9733b52" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 521; y: 130 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7776 + hash: "d3af36dfb187d08abe1458f186a935a2" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 521; y: 124 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7792 + hash: "9d0a0ba1deb7c4a4a8838e5e6a27f2f6" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 521; y: 122 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7808 + hash: "69aac14f4c137e66724ca33f00a86676" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 521; y: 116 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7824 + hash: "893d56e2a2ca257fae9f0c6c0629903d" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 521; y: 111 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7840 + hash: "b9f734e57a72e33973740a59776948d9" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 521; y: 106 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7856 + hash: "e4b0f3f6a6785d7a183e4a36c5803301" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 521; y: 104 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7872 + hash: "99ee1e8803c05e546a721b0c9ee39499" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 521; y: 101 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7888 + hash: "96e7da2f895500a786ed36cb295e9003" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 521; y: 99 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7904 + hash: "cd369fc5dc31814208e56cf7cd0decea" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 521; y: 97 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7920 + hash: "5fee72994b65a45b4900a3073f86a3e1" + } + Frame { + msec: 7936 + hash: "9a2f8a65d842b8f92998e6411f7cd53c" + } + Frame { + msec: 7952 + hash: "2848d69017ce71ae101ccdfa7c67f933" + } + Frame { + msec: 7968 + hash: "6568aa88e81f988f65da435df7166167" + } + Frame { + msec: 7984 + hash: "d5f15ee08a2d7667786757a378a7a7f4" + } + Frame { + msec: 8000 + hash: "9b566bd02a561b32d1a4c1ec99c2e2c3" + } + Frame { + msec: 8016 + hash: "580419e1c9e91046547d913f6b8790a4" + } + Frame { + msec: 8032 + hash: "a5a3cd610ec0b35af1295ee6c41e09e3" + } + Frame { + msec: 8048 + hash: "a5a3cd610ec0b35af1295ee6c41e09e3" + } + Frame { + msec: 8064 + hash: "a5a3cd610ec0b35af1295ee6c41e09e3" + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 521; y: 97 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 8080 + hash: "a5a3cd610ec0b35af1295ee6c41e09e3" + } + Frame { + msec: 8096 + hash: "a5a3cd610ec0b35af1295ee6c41e09e3" + } + Frame { + msec: 8112 + hash: "83b91a371d682a501bc3a3fceabe4f8c" + } + Frame { + msec: 8128 + hash: "798b1dbfa0cce362213f426e2c60ac0e" + } + Frame { + msec: 8144 + hash: "d71b6a693c430a618c23413cb65bb320" + } + Frame { + msec: 8160 + hash: "2baae394390da39447a67151bc503d65" + } + Frame { + msec: 8176 + hash: "06688b05c61a7b862d39534207a8adab" + } + Frame { + msec: 8192 + hash: "a1d3042e16709817906dcdc673ee52c7" + } + Frame { + msec: 8208 + hash: "236dd41feac1b1a8a4bd7911bb184da2" + } + Frame { + msec: 8224 + hash: "f3ec821bba1d32e90bdab0e85c07d7d8" + } + Frame { + msec: 8240 + hash: "e328c35adf7ffc3d7e3af97e798ec8a5" + } + Frame { + msec: 8256 + hash: "651101db68fd3ed1dc5f441c126dc31b" + } + Frame { + msec: 8272 + hash: "651101db68fd3ed1dc5f441c126dc31b" + } + Frame { + msec: 8288 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8304 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8320 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8336 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8352 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8368 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8384 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8400 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8416 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8432 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8448 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8464 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8480 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8496 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8512 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8528 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8544 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8560 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8576 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8592 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8608 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8624 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8640 + image: "listview.8.png" + } + Frame { + msec: 8656 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8672 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8688 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8704 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8720 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8736 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8752 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8768 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8784 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8800 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8816 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8832 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8848 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8864 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8880 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8896 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8912 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8928 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8944 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8960 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8976 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 8992 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 9008 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 9024 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 9040 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 9056 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 9072 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 9088 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 9104 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 9120 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 9136 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 9152 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 9168 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 9184 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 9200 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 9216 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 9232 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 9248 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 9264 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 9280 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 9296 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 9312 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 9328 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 9344 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 9360 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 9376 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 9392 + hash: "1171be123a361d72859c25434573482c" + } + Frame { + msec: 9408 + hash: "1171be123a361d72859c25434573482c" + } +} diff --git a/tests/auto/declarative/visual/Package_Views/data/packageviews.0.png b/tests/auto/declarative/visual/Package_Views/data/packageviews.0.png Binary files differnew file mode 100644 index 0000000..c59b816 --- /dev/null +++ b/tests/auto/declarative/visual/Package_Views/data/packageviews.0.png diff --git a/tests/auto/declarative/visual/Package_Views/data/packageviews.1.png b/tests/auto/declarative/visual/Package_Views/data/packageviews.1.png Binary files differnew file mode 100644 index 0000000..c59b816 --- /dev/null +++ b/tests/auto/declarative/visual/Package_Views/data/packageviews.1.png diff --git a/tests/auto/declarative/visual/Package_Views/data/packageviews.10.png b/tests/auto/declarative/visual/Package_Views/data/packageviews.10.png Binary files differnew file mode 100644 index 0000000..3e79d41 --- /dev/null +++ b/tests/auto/declarative/visual/Package_Views/data/packageviews.10.png diff --git a/tests/auto/declarative/visual/Package_Views/data/packageviews.11.png b/tests/auto/declarative/visual/Package_Views/data/packageviews.11.png Binary files differnew file mode 100644 index 0000000..75acd3f --- /dev/null +++ b/tests/auto/declarative/visual/Package_Views/data/packageviews.11.png diff --git a/tests/auto/declarative/visual/Package_Views/data/packageviews.12.png b/tests/auto/declarative/visual/Package_Views/data/packageviews.12.png Binary files differnew file mode 100644 index 0000000..258c8b3 --- /dev/null +++ b/tests/auto/declarative/visual/Package_Views/data/packageviews.12.png diff --git a/tests/auto/declarative/visual/Package_Views/data/packageviews.13.png b/tests/auto/declarative/visual/Package_Views/data/packageviews.13.png Binary files differnew file mode 100644 index 0000000..c6fec5b --- /dev/null +++ b/tests/auto/declarative/visual/Package_Views/data/packageviews.13.png diff --git a/tests/auto/declarative/visual/Package_Views/data/packageviews.14.png b/tests/auto/declarative/visual/Package_Views/data/packageviews.14.png Binary files differnew file mode 100644 index 0000000..c6fec5b --- /dev/null +++ b/tests/auto/declarative/visual/Package_Views/data/packageviews.14.png diff --git a/tests/auto/declarative/visual/Package_Views/data/packageviews.2.png b/tests/auto/declarative/visual/Package_Views/data/packageviews.2.png Binary files differnew file mode 100644 index 0000000..c59b816 --- /dev/null +++ b/tests/auto/declarative/visual/Package_Views/data/packageviews.2.png diff --git a/tests/auto/declarative/visual/Package_Views/data/packageviews.3.png b/tests/auto/declarative/visual/Package_Views/data/packageviews.3.png Binary files differnew file mode 100644 index 0000000..2b54c1b --- /dev/null +++ b/tests/auto/declarative/visual/Package_Views/data/packageviews.3.png diff --git a/tests/auto/declarative/visual/Package_Views/data/packageviews.4.png b/tests/auto/declarative/visual/Package_Views/data/packageviews.4.png Binary files differnew file mode 100644 index 0000000..346e6eb --- /dev/null +++ b/tests/auto/declarative/visual/Package_Views/data/packageviews.4.png diff --git a/tests/auto/declarative/visual/Package_Views/data/packageviews.5.png b/tests/auto/declarative/visual/Package_Views/data/packageviews.5.png Binary files differnew file mode 100644 index 0000000..b7b0cfa --- /dev/null +++ b/tests/auto/declarative/visual/Package_Views/data/packageviews.5.png diff --git a/tests/auto/declarative/visual/Package_Views/data/packageviews.6.png b/tests/auto/declarative/visual/Package_Views/data/packageviews.6.png Binary files differnew file mode 100644 index 0000000..3e79d41 --- /dev/null +++ b/tests/auto/declarative/visual/Package_Views/data/packageviews.6.png diff --git a/tests/auto/declarative/visual/Package_Views/data/packageviews.7.png b/tests/auto/declarative/visual/Package_Views/data/packageviews.7.png Binary files differnew file mode 100644 index 0000000..db23a20 --- /dev/null +++ b/tests/auto/declarative/visual/Package_Views/data/packageviews.7.png diff --git a/tests/auto/declarative/visual/Package_Views/data/packageviews.8.png b/tests/auto/declarative/visual/Package_Views/data/packageviews.8.png Binary files differnew file mode 100644 index 0000000..3e79d41 --- /dev/null +++ b/tests/auto/declarative/visual/Package_Views/data/packageviews.8.png diff --git a/tests/auto/declarative/visual/Package_Views/data/packageviews.9.png b/tests/auto/declarative/visual/Package_Views/data/packageviews.9.png Binary files differnew file mode 100644 index 0000000..82a3a0f --- /dev/null +++ b/tests/auto/declarative/visual/Package_Views/data/packageviews.9.png diff --git a/tests/auto/declarative/visual/Package_Views/data/packageviews.qml b/tests/auto/declarative/visual/Package_Views/data/packageviews.qml new file mode 100644 index 0000000..45921d9 --- /dev/null +++ b/tests/auto/declarative/visual/Package_Views/data/packageviews.qml @@ -0,0 +1,3935 @@ +import Qt.VisualTest 4.6 + +VisualTest { + Frame { + msec: 0 + } + Frame { + msec: 16 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 32 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 48 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 64 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 80 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 96 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 112 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 128 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 144 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 160 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 176 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 192 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 208 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 224 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 240 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 256 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 272 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 288 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 304 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 320 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 336 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 352 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 368 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 384 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 400 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 416 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 432 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 448 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 464 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 480 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 496 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 512 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 528 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 544 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 560 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 576 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 592 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 608 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 624 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 640 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 656 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 672 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 688 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 704 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 720 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 736 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 752 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 768 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 784 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 800 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 816 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 832 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 848 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 864 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 880 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 896 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 912 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 928 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 944 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 960 + image: "packageviews.0.png" + } + Frame { + msec: 976 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 992 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1008 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1024 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1040 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1056 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1072 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1088 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1104 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1120 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1136 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1152 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1168 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1184 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1200 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1216 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1232 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1248 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1264 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1280 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1296 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1312 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1328 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1344 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1360 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1376 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1392 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1408 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1424 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1440 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1456 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1472 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1488 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1504 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1520 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1536 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1552 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1568 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1584 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1600 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1616 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1632 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1648 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1664 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1680 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1696 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1712 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1728 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1744 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1760 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1776 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1792 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1808 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1824 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1840 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1856 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1872 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1888 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1904 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1920 + image: "packageviews.1.png" + } + Frame { + msec: 1936 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1952 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1968 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 1984 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2000 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2016 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2032 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2048 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2064 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2080 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2096 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2112 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2128 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2144 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2160 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2176 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2192 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2208 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2224 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2240 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2256 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2272 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2288 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2304 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2320 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2336 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2352 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2368 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2384 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2400 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2416 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2432 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2448 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2464 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2480 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2496 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2512 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2528 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2544 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2560 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2576 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2592 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2608 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2624 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2640 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2656 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2672 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2688 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2704 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2720 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2736 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2752 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2768 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2784 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2800 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2816 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2832 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2848 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2864 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2880 + image: "packageviews.2.png" + } + Frame { + msec: 2896 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2912 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2928 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2944 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2960 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2976 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 2992 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3008 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3024 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3040 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3056 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3072 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3088 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3104 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3120 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3136 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3152 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3168 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3184 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3200 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3216 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3232 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3248 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3264 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3280 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3296 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3312 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3328 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3344 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3360 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3376 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3392 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3408 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3424 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3440 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3456 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3472 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3488 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3504 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3520 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3536 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3552 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3568 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3584 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3600 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3616 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3632 + hash: "a327426c93b523526f993b5271ab4501" + } + Mouse { + type: 2 + button: 1 + buttons: 1 + x: 177; y: 29 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 3648 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3664 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3680 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3696 + hash: "a327426c93b523526f993b5271ab4501" + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 177; y: 29 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 3712 + hash: "a327426c93b523526f993b5271ab4501" + } + Frame { + msec: 3728 + hash: "39ed6105057543d350665c46abd08eea" + } + Frame { + msec: 3744 + hash: "d7a9b575f3a792de5e1717cb85ee3b5d" + } + Frame { + msec: 3760 + hash: "2a848259290f6654c1ae18cad3449fe2" + } + Frame { + msec: 3776 + hash: "873e4ef69a8d6a5615576680e49a77b7" + } + Frame { + msec: 3792 + hash: "63a588428459dbeaac87799f34bf6c82" + } + Frame { + msec: 3808 + hash: "87da56ad18ba4a5992898947f6720132" + } + Frame { + msec: 3824 + hash: "45262c15160d8b4dfe72f44b1756ccf4" + } + Frame { + msec: 3840 + image: "packageviews.3.png" + } + Frame { + msec: 3856 + hash: "c595d69c44d217cb38091d44b27f147d" + } + Frame { + msec: 3872 + hash: "9a508ec7a226a8020985e2c601cff282" + } + Frame { + msec: 3888 + hash: "909e57750bc392e5246d691e11efb6d4" + } + Frame { + msec: 3904 + hash: "cafd51b43b7b73e85dcf6e263f5e4b7e" + } + Frame { + msec: 3920 + hash: "27a245e5592a39815c443cd5e493f540" + } + Frame { + msec: 3936 + hash: "17a57ba0abcfa57efc7d72fc92f9e60b" + } + Frame { + msec: 3952 + hash: "ad207c4e6403840433c00f1e76ad90e5" + } + Frame { + msec: 3968 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 3984 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4000 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4016 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4032 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4048 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4064 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4080 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4096 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4112 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4128 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4144 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4160 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4176 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4192 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4208 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4224 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4240 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4256 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4272 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4288 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4304 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4320 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4336 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4352 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4368 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4384 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4400 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4416 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4432 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4448 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4464 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4480 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4496 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4512 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4528 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4544 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4560 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4576 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4592 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4608 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4624 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4640 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4656 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4672 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4688 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4704 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4720 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4736 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4752 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4768 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4784 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4800 + image: "packageviews.4.png" + } + Frame { + msec: 4816 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4832 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4848 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4864 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4880 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4896 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4912 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4928 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4944 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4960 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4976 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 4992 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5008 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5024 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5040 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5056 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5072 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5088 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5104 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5120 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5136 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5152 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5168 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5184 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5200 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5216 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5232 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5248 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5264 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5280 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5296 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5312 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5328 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5344 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5360 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5376 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5392 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5408 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5424 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5440 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5456 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5472 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5488 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5504 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5520 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5536 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5552 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5568 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5584 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5600 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Frame { + msec: 5616 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Mouse { + type: 2 + button: 1 + buttons: 1 + x: 53; y: 171 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 53; y: 170 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5632 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 53; y: 168 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5648 + hash: "ff7eb2fc2731ffd5ee96eb24696ffaf4" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 54; y: 165 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 55; y: 162 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5664 + hash: "1a95eb98d66c2169674c70d35a5ceba1" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 55; y: 157 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 55; y: 150 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5680 + hash: "985e040417d2bf2cb2f4f59ec0df6b4f" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 55; y: 143 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 55; y: 137 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5696 + hash: "72d3b6286138d30fd6cfe6e8eb04d79a" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 56; y: 132 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5712 + hash: "e3fea4dd47d0c9d18b75c2300a8ab9bf" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 59; y: 128 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 62; y: 123 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 62; y: 123 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5728 + hash: "e017f31e4d30f60eae5abfcf9cbe954a" + } + Frame { + msec: 5744 + hash: "27188a640e20aca2013b7b6b72fda89c" + } + Frame { + msec: 5760 + image: "packageviews.5.png" + } + Frame { + msec: 5776 + hash: "e5f56ee86145c107644d8b97dce91085" + } + Frame { + msec: 5792 + hash: "0b959b652850085da5d0911804913891" + } + Frame { + msec: 5808 + hash: "a1e49cb952b3c476a5fedea5082c5c0a" + } + Frame { + msec: 5824 + hash: "4983768fa165f2e9e55e48c78c6f8dea" + } + Frame { + msec: 5840 + hash: "9714a821c76a41fd7d5e0439f47854d2" + } + Frame { + msec: 5856 + hash: "e5db5d7c1a6c692af9e292ac4b3dbc32" + } + Frame { + msec: 5872 + hash: "0a69dfa9e6f056343651e2a2c067286b" + } + Frame { + msec: 5888 + hash: "64faabf715d912b5abc8e86b91f68558" + } + Frame { + msec: 5904 + hash: "b61b51a773a36e739322aa7301a4fb38" + } + Frame { + msec: 5920 + hash: "0214367822797dcbe83e694addeafd33" + } + Frame { + msec: 5936 + hash: "bc30176481cc47d6242ff21e037e4db9" + } + Frame { + msec: 5952 + hash: "24eb0a98d26e88e4f39de2f6b2cd8ca5" + } + Frame { + msec: 5968 + hash: "b5c4c8778820be865cb8372d716c9d2d" + } + Frame { + msec: 5984 + hash: "228ac20aa0331c3ddeac862f01097742" + } + Frame { + msec: 6000 + hash: "05e50f9ef2829b9a3d703d20b2588747" + } + Frame { + msec: 6016 + hash: "b0738bf4dffd1e65f63204f1db4329a7" + } + Frame { + msec: 6032 + hash: "b54b343a4905746297b4a150924477f4" + } + Frame { + msec: 6048 + hash: "05cc4965322ff085c66953c1d39c46b6" + } + Frame { + msec: 6064 + hash: "caf0233a179d83e8c1e0b26ec0a4f77d" + } + Frame { + msec: 6080 + hash: "1a2a719be8cb1f9aad8c3f7fead652ae" + } + Frame { + msec: 6096 + hash: "18438e347c4246fbfffd5401fc9915b3" + } + Frame { + msec: 6112 + hash: "18438e347c4246fbfffd5401fc9915b3" + } + Frame { + msec: 6128 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6144 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6160 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6176 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6192 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6208 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6224 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6240 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6256 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6272 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6288 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6304 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6320 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6336 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6352 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6368 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6384 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6400 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6416 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6432 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6448 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6464 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6480 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6496 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6512 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6528 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6544 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6560 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6576 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6592 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6608 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6624 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6640 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6656 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6672 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6688 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6704 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6720 + image: "packageviews.6.png" + } + Frame { + msec: 6736 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6752 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6768 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6784 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6800 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6816 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6832 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6848 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6864 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6880 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6896 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6912 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6928 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6944 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6960 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6976 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 6992 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 7008 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 7024 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 7040 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 7056 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 7072 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 7088 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 7104 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 7120 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 7136 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 7152 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 7168 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 7184 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 7200 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 7216 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 7232 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Mouse { + type: 2 + button: 1 + buttons: 1 + x: 167; y: 169 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7248 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 7264 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 7280 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 7296 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 167; y: 169 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7312 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 7328 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 7344 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 7360 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 7376 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 7392 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 7408 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 7424 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 7440 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 7456 + hash: "79a4237bc56d77b719d8472831f20a90" + } + Frame { + msec: 7472 + hash: "df2eebdf2a8ce789a2429b40693eb82e" + } + Frame { + msec: 7488 + hash: "a22f0abb89b5cfa85e01ed4db150eda7" + } + Frame { + msec: 7504 + hash: "9364b1c7f3a15aad1a3f8e9e95cdb3a3" + } + Frame { + msec: 7520 + hash: "43b8da45116dd87b8f044e698c7ea437" + } + Frame { + msec: 7536 + hash: "10f0779a2d0cb5ccb879f0065eea70a3" + } + Frame { + msec: 7552 + hash: "bd0c8df943774bbce144f745cbf9c6b9" + } + Frame { + msec: 7568 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 7584 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 7600 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 7616 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 7632 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 7648 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 7664 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 7680 + image: "packageviews.7.png" + } + Frame { + msec: 7696 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 7712 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 7728 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 7744 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 7760 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 7776 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 7792 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 7808 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 7824 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 7840 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 7856 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 7872 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 7888 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 7904 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 7920 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 7936 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 7952 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 7968 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 7984 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 8000 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 8016 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 8032 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 8048 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 8064 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 8080 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 8096 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 8112 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 8128 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 8144 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 8160 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 8176 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 8192 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 8208 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 8224 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 8240 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 8256 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 8272 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 8288 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 8304 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 8320 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 8336 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 8352 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 8368 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 8384 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 8400 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 8416 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Mouse { + type: 2 + button: 1 + buttons: 1 + x: 173; y: 165 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 8432 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 8448 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 8464 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Frame { + msec: 8480 + hash: "787eda91c0d26d7d81b853338dff0ae5" + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 173; y: 165 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 8496 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 8512 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 8528 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 8544 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 8560 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 8576 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 8592 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 8608 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 8624 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 8640 + image: "packageviews.8.png" + } + Frame { + msec: 8656 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 8672 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 8688 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 8704 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 8720 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 8736 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 8752 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 8768 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 8784 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 8800 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 8816 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 8832 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 8848 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 8864 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 8880 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 8896 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 8912 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 8928 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 8944 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 8960 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 8976 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 8992 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 9008 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 9024 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 9040 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 9056 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 9072 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 9088 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 9104 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 9120 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 9136 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 9152 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 9168 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 9184 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 9200 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 9216 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 9232 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 9248 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Mouse { + type: 2 + button: 1 + buttons: 1 + x: 131; y: 159 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 9264 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 9280 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 9296 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 9312 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 9328 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 131; y: 159 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 9344 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 9360 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 9376 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 9392 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 9408 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 9424 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 9440 + hash: "3a8f58987c5a6197579217854ae1752e" + } + Frame { + msec: 9456 + hash: "1617b7cdd44fe79dbdf4cb3a9d4683f3" + } + Frame { + msec: 9472 + hash: "401fce6c56951704dc0993345ea931f5" + } + Frame { + msec: 9488 + hash: "26fc730a372dc62e37dee377a91b390e" + } + Frame { + msec: 9504 + hash: "9b1c2ddc3df2f7e890e37291c71254ff" + } + Frame { + msec: 9520 + hash: "4ab79e1d14cc42f0958fac6e7a9f0a7d" + } + Frame { + msec: 9536 + hash: "cc0f70388def738d2e6c044810b51d76" + } + Frame { + msec: 9552 + hash: "d5fdd502b988ce596775ec10cf8c847e" + } + Frame { + msec: 9568 + hash: "22398208dee9f63b16392fe0296d96a2" + } + Frame { + msec: 9584 + hash: "6159fdeefda4c1514eb4cdc139f5db0d" + } + Frame { + msec: 9600 + image: "packageviews.9.png" + } + Frame { + msec: 9616 + hash: "b5c261081134314705594b3349cb4f53" + } + Frame { + msec: 9632 + hash: "b5c261081134314705594b3349cb4f53" + } + Frame { + msec: 9648 + hash: "b5c261081134314705594b3349cb4f53" + } + Frame { + msec: 9664 + hash: "b5c261081134314705594b3349cb4f53" + } + Frame { + msec: 9680 + hash: "b5c261081134314705594b3349cb4f53" + } + Frame { + msec: 9696 + hash: "b5c261081134314705594b3349cb4f53" + } + Frame { + msec: 9712 + hash: "b5c261081134314705594b3349cb4f53" + } + Frame { + msec: 9728 + hash: "b5c261081134314705594b3349cb4f53" + } + Frame { + msec: 9744 + hash: "b5c261081134314705594b3349cb4f53" + } + Frame { + msec: 9760 + hash: "b5c261081134314705594b3349cb4f53" + } + Frame { + msec: 9776 + hash: "b5c261081134314705594b3349cb4f53" + } + Frame { + msec: 9792 + hash: "b5c261081134314705594b3349cb4f53" + } + Mouse { + type: 2 + button: 1 + buttons: 1 + x: 131; y: 159 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 9808 + hash: "b5c261081134314705594b3349cb4f53" + } + Frame { + msec: 9824 + hash: "b5c261081134314705594b3349cb4f53" + } + Frame { + msec: 9840 + hash: "b5c261081134314705594b3349cb4f53" + } + Frame { + msec: 9856 + hash: "b5c261081134314705594b3349cb4f53" + } + Frame { + msec: 9872 + hash: "b5c261081134314705594b3349cb4f53" + } + Frame { + msec: 9888 + hash: "b5c261081134314705594b3349cb4f53" + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 131; y: 159 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 9904 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 9920 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 9936 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 9952 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 9968 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 9984 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10000 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10016 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10032 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10048 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10064 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10080 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10096 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10112 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10128 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10144 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10160 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10176 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10192 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10208 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10224 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10240 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10256 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10272 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10288 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10304 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10320 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10336 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10352 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10368 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10384 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10400 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10416 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10432 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10448 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10464 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10480 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10496 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10512 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10528 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10544 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10560 + image: "packageviews.10.png" + } + Frame { + msec: 10576 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10592 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Frame { + msec: 10608 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Mouse { + type: 2 + button: 1 + buttons: 1 + x: 59; y: 159 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 59; y: 158 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 10624 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 60; y: 156 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 10640 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 61; y: 154 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 63; y: 151 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 10656 + hash: "f0eb6047898c866e8852242a672c79b5" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 64; y: 147 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 65; y: 143 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 10672 + hash: "4d932a26e4c9b1653468a27dfc3d6b85" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 65; y: 137 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 65; y: 131 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 10688 + hash: "a8cb864554c2b99580e2f8117dea075b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 64; y: 125 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 10704 + hash: "9f9b0514c3e9c527e65e595e7e1dc387" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 63; y: 119 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 63; y: 119 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 10720 + hash: "98b2701acdafcdc2400ebae72e619e5c" + } + Frame { + msec: 10736 + hash: "8f1931199a51b4f8bc6f9a909c6de4e4" + } + Frame { + msec: 10752 + hash: "54cd80bc91c526fb3889eb9534f7d572" + } + Frame { + msec: 10768 + hash: "86c73e42f723a19a7f22f2ff17fc8323" + } + Frame { + msec: 10784 + hash: "094cc9f26672919260acd6009d73b867" + } + Frame { + msec: 10800 + hash: "0985b09c5623c486d7c39b37dfe00035" + } + Frame { + msec: 10816 + hash: "0643039f9dc9b28a5dc728d3c42f675c" + } + Frame { + msec: 10832 + hash: "6a814bf21ed200673809707de8ec9f03" + } + Frame { + msec: 10848 + hash: "5d211606c6e53e18bce07d4024f07757" + } + Frame { + msec: 10864 + hash: "cefcd9532017d873070889e4cc097879" + } + Frame { + msec: 10880 + hash: "088117e4c32bd5d9dc3387c941e1fcdc" + } + Frame { + msec: 10896 + hash: "05c9a90ba3b8d0ea5f775c6ca9f145f6" + } + Frame { + msec: 10912 + hash: "0b440555c55aa67cccfce02a98b53748" + } + Frame { + msec: 10928 + hash: "12fa35ebaf85d57be38984ceea2bdbae" + } + Frame { + msec: 10944 + hash: "86b9ad23b79062a97f29c861333660fc" + } + Frame { + msec: 10960 + hash: "45787d249a82149cf1f45756eb58751f" + } + Frame { + msec: 10976 + hash: "de12cea0ebe645e365d2141e82eb107c" + } + Frame { + msec: 10992 + hash: "41171745747d2a03d33c0ab59bfe0b5d" + } + Frame { + msec: 11008 + hash: "5b9abaf20116ddd0142ee28ca3887ea6" + } + Frame { + msec: 11024 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 11040 + hash: "93ce707a06141bfe27ebd922934f1aed" + } + Frame { + msec: 11056 + hash: "49e8a33a1955ee8f267eba98532124bc" + } + Frame { + msec: 11072 + hash: "1f4e4f815c0ad7a5edf01f4dc493ec1d" + } + Frame { + msec: 11088 + hash: "058ad87d035643f027e0469d54e35f2a" + } + Frame { + msec: 11104 + hash: "822cf2c6da969a99f6413a659845a333" + } + Frame { + msec: 11120 + hash: "a4e8d8093c1876af6669d8df92b515b5" + } + Frame { + msec: 11136 + hash: "236f7f1a0c3b25ad7f33fa1700f3f947" + } + Frame { + msec: 11152 + hash: "dec16d1e0edd3befa2d31972da2b57a6" + } + Frame { + msec: 11168 + hash: "ae85e93afa88929f15fc668bab619ab8" + } + Frame { + msec: 11184 + hash: "3f2ef5ecc13e0ef10c72dc3e05305c81" + } + Frame { + msec: 11200 + hash: "0611193af6fc504048a06a7423172768" + } + Frame { + msec: 11216 + hash: "82e4e806158be1a812d9b6a175c11b4a" + } + Frame { + msec: 11232 + hash: "b7e8ae87deffc9ccbacce9b132ceeeed" + } + Frame { + msec: 11248 + hash: "ae511e7358aaecc6a368dacd8a3f4b40" + } + Frame { + msec: 11264 + hash: "b67b59b182ea950e830b85c393bc2bd1" + } + Frame { + msec: 11280 + hash: "cfc6eccff56498ff38e98ff3252de1db" + } + Frame { + msec: 11296 + hash: "542c54779a40b56091e6741c447dc223" + } + Frame { + msec: 11312 + hash: "38a4fcbf35f24c9be706f238003a70f4" + } + Frame { + msec: 11328 + hash: "38a4fcbf35f24c9be706f238003a70f4" + } + Frame { + msec: 11344 + hash: "38a4fcbf35f24c9be706f238003a70f4" + } + Frame { + msec: 11360 + hash: "542c54779a40b56091e6741c447dc223" + } + Frame { + msec: 11376 + hash: "b67b59b182ea950e830b85c393bc2bd1" + } + Frame { + msec: 11392 + hash: "79b8823ac67f6cc612f1b6aea743c413" + } + Frame { + msec: 11408 + hash: "3f2ef5ecc13e0ef10c72dc3e05305c81" + } + Frame { + msec: 11424 + hash: "dec16d1e0edd3befa2d31972da2b57a6" + } + Frame { + msec: 11440 + hash: "cf7217bb1ceea9d3bf9f5ca604c15056" + } + Frame { + msec: 11456 + hash: "8ad3c6a174f0876905db889a2d772c8a" + } + Frame { + msec: 11472 + hash: "c45588ccc0aa28fc9b3414251c9689e3" + } + Frame { + msec: 11488 + hash: "6cc42773631600d1eff92f3ba05a49f3" + } + Frame { + msec: 11504 + hash: "51c4ad052c4c74cfc05ccd5de87418aa" + } + Frame { + msec: 11520 + image: "packageviews.11.png" + } + Frame { + msec: 11536 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 11552 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 11568 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 11584 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 11600 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 11616 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 11632 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 11648 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 11664 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 11680 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 11696 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 11712 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 11728 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 11744 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 11760 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 11776 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 11792 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 11808 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 11824 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 11840 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 11856 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 11872 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 11888 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 11904 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 11920 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 11936 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 11952 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 11968 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 11984 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12000 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12016 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12032 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12048 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12064 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12080 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12096 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12112 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12128 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12144 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12160 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12176 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12192 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12208 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12224 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12240 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12256 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12272 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12288 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12304 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12320 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12336 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12352 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12368 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12384 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12400 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12416 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12432 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12448 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12464 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12480 + image: "packageviews.12.png" + } + Frame { + msec: 12496 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12512 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12528 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12544 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12560 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12576 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12592 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12608 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12624 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12640 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12656 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12672 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12688 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12704 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12720 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12736 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12752 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12768 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12784 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12800 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12816 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12832 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12848 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12864 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12880 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12896 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12912 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12928 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12944 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12960 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12976 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 12992 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Mouse { + type: 2 + button: 1 + buttons: 1 + x: 170; y: 27 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 13008 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 13024 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 13040 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 13056 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Frame { + msec: 13072 + hash: "a4fc0dbc0ebe550f5aa3a91350bbbf3f" + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 170; y: 27 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 13088 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13104 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13120 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13136 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13152 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13168 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13184 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13200 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13216 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13232 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13248 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13264 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13280 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13296 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13312 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13328 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13344 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13360 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13376 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13392 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13408 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13424 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13440 + image: "packageviews.13.png" + } + Frame { + msec: 13456 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13472 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13488 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13504 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13520 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13536 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13552 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13568 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13584 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13600 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13616 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13632 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13648 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13664 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13680 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13696 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13712 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13728 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13744 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13760 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13776 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13792 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13808 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13824 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13840 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13856 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13872 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13888 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13904 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13920 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13936 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13952 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13968 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 13984 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 14000 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 14016 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 14032 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 14048 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 14064 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 14080 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 14096 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 14112 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 14128 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 14144 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 14160 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 14176 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 14192 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 14208 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 14224 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 14240 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 14256 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 14272 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 14288 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 14304 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 14320 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 14336 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 14352 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 14368 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 14384 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 14400 + image: "packageviews.14.png" + } + Frame { + msec: 14416 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 14432 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 14448 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 14464 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 14480 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 14496 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 14512 + hash: "dbca3bbd626c61d30731f84693bc939b" + } + Frame { + msec: 14528 + hash: "dbca3bbd626c61d30731f84693bc939b" + } +} diff --git a/tests/auto/declarative/visual/Package_Views/packageviews.qml b/tests/auto/declarative/visual/Package_Views/packageviews.qml new file mode 100644 index 0000000..a9719ca --- /dev/null +++ b/tests/auto/declarative/visual/Package_Views/packageviews.qml @@ -0,0 +1,81 @@ +import Qt 4.6 + +Rectangle { + id: root + width: 200 + height: 200 + color: "black" + + VisualDataModel { + id: Model + model: ListModel { + ListElement { itemColor: "red" } + ListElement { itemColor: "green" } + ListElement { itemColor: "blue" } + ListElement { itemColor: "orange" } + ListElement { itemColor: "purple" } + ListElement { itemColor: "yellow" } + ListElement { itemColor: "slategrey" } + ListElement { itemColor: "cyan" } + } + delegate: Package { + Rectangle { + id: listItem; Package.name: "list"; width:root.width/2; height: 50; color: "transparent"; border.color: "white" + MouseRegion { + anchors.fill: parent + onClicked: myState.state = myState.state == "list" ? "grid" : "list" + } + } + Rectangle { + id: gridItem; Package.name: "grid"; width:50; height: 50; color: "transparent"; border.color: "white" + MouseRegion { + anchors.fill: parent + onClicked: myState.state = myState.state == "list" ? "grid" : "list" + } + } + Rectangle { id: myContent; width:50; height: 50; color: itemColor } + + StateGroup { + id: myState + state: "list" + states: [ + State { + name: "list" + ParentChange { target: myContent; parent: listItem } + PropertyChanges { target: myContent; x: 0; y: 0; width: listItem.width } + }, + State { + name: "grid" + ParentChange { target: myContent; parent: gridItem } + PropertyChanges { target: myContent; x: 0; y: 0; width: gridItem.width } + } + ] + + transitions: [ + Transition { + from: "*"; to: "*" + SequentialAnimation { + ParentAction{} + NumberAnimation { matchProperties: "x,y,width"; easing: "easeInOutQuad" } + } + } + ] + } + } + } + + ListView { + width: parent.width/2 + height: parent.height + model: Model.parts.list + } + + GridView { + x: parent.width/2 + width: parent.width/2 + cellWidth: 50 + cellHeight: 50 + height: parent.height + model: Model.parts.grid + } +} diff --git a/tests/auto/declarative/visual/bindinganimation/bindinganimation.qml b/tests/auto/declarative/visual/animation/bindinganimation/bindinganimation.qml index efbb1b4..1afd4cd 100644 --- a/tests/auto/declarative/visual/bindinganimation/bindinganimation.qml +++ b/tests/auto/declarative/visual/animation/bindinganimation/bindinganimation.qml @@ -17,11 +17,11 @@ Rectangle { name: "hello" PropertyChanges { target: MyRectangle - x: 100 + x: 50 + 50 } PropertyChanges { target: MyMouseRegion - onClicked: "Page.currentState = ''" + onClicked: Page.state = '' } } ] diff --git a/tests/auto/declarative/visual/bindinganimation/data/bindinganimation.0.png b/tests/auto/declarative/visual/animation/bindinganimation/data/bindinganimation.0.png Binary files differindex 1b08c81..1b08c81 100644 --- a/tests/auto/declarative/visual/bindinganimation/data/bindinganimation.0.png +++ b/tests/auto/declarative/visual/animation/bindinganimation/data/bindinganimation.0.png diff --git a/tests/auto/declarative/visual/bindinganimation/data/bindinganimation.1.png b/tests/auto/declarative/visual/animation/bindinganimation/data/bindinganimation.1.png Binary files differindex f3074fc..f3074fc 100644 --- a/tests/auto/declarative/visual/bindinganimation/data/bindinganimation.1.png +++ b/tests/auto/declarative/visual/animation/bindinganimation/data/bindinganimation.1.png diff --git a/tests/auto/declarative/visual/animation/bindinganimation/data/bindinganimation.2.png b/tests/auto/declarative/visual/animation/bindinganimation/data/bindinganimation.2.png Binary files differnew file mode 100644 index 0000000..1b08c81 --- /dev/null +++ b/tests/auto/declarative/visual/animation/bindinganimation/data/bindinganimation.2.png diff --git a/tests/auto/declarative/visual/animation/bindinganimation/data/bindinganimation.3.png b/tests/auto/declarative/visual/animation/bindinganimation/data/bindinganimation.3.png Binary files differnew file mode 100644 index 0000000..e2560e0 --- /dev/null +++ b/tests/auto/declarative/visual/animation/bindinganimation/data/bindinganimation.3.png diff --git a/tests/auto/declarative/visual/animation/bindinganimation/data/bindinganimation.4.png b/tests/auto/declarative/visual/animation/bindinganimation/data/bindinganimation.4.png Binary files differnew file mode 100644 index 0000000..2ddde86 --- /dev/null +++ b/tests/auto/declarative/visual/animation/bindinganimation/data/bindinganimation.4.png diff --git a/tests/auto/declarative/visual/animation/bindinganimation/data/bindinganimation.5.png b/tests/auto/declarative/visual/animation/bindinganimation/data/bindinganimation.5.png Binary files differnew file mode 100644 index 0000000..f3074fc --- /dev/null +++ b/tests/auto/declarative/visual/animation/bindinganimation/data/bindinganimation.5.png diff --git a/tests/auto/declarative/visual/animation/bindinganimation/data/bindinganimation.6.png b/tests/auto/declarative/visual/animation/bindinganimation/data/bindinganimation.6.png Binary files differnew file mode 100644 index 0000000..1b08c81 --- /dev/null +++ b/tests/auto/declarative/visual/animation/bindinganimation/data/bindinganimation.6.png diff --git a/tests/auto/declarative/visual/animation/bindinganimation/data/bindinganimation.qml b/tests/auto/declarative/visual/animation/bindinganimation/data/bindinganimation.qml new file mode 100644 index 0000000..8297c5a --- /dev/null +++ b/tests/auto/declarative/visual/animation/bindinganimation/data/bindinganimation.qml @@ -0,0 +1,1655 @@ +import Qt.VisualTest 4.6 + +VisualTest { + Frame { + msec: 0 + } + Frame { + msec: 16 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 32 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 48 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 64 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 80 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 96 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 112 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 128 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 144 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 160 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 176 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 192 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 208 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 224 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 240 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 256 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 272 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 288 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 304 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 320 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 336 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 352 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 368 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 384 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 400 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 416 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 432 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 448 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 464 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 480 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 496 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 512 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 528 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 544 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 560 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 576 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 592 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 608 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 624 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 640 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 656 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 672 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 688 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 704 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 720 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 736 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 752 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 768 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 784 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 800 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 816 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 832 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 848 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 864 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 880 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 896 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 912 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 928 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 944 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 960 + image: "bindinganimation.0.png" + } + Frame { + msec: 976 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 992 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 1008 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 1024 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 1040 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 1056 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 1072 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 1088 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 1104 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 1120 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 1136 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 1152 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Mouse { + type: 2 + button: 1 + buttons: 1 + x: 136; y: 174 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1168 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 1184 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 1200 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 1216 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 1232 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 1248 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 1264 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 1280 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 136; y: 174 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1296 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 1312 + hash: "a78c9394bf3b81f192f42710cd7218b1" + } + Frame { + msec: 1328 + hash: "7f08e8170feb1d02373c9ab42b6e882d" + } + Frame { + msec: 1344 + hash: "967fbad8ac664400a3efbe66617d62aa" + } + Frame { + msec: 1360 + hash: "abc2ec0bc7a93e75b5823310e6284db1" + } + Frame { + msec: 1376 + hash: "afbd5b24e2f86646f5ec2aa22f3a4b5b" + } + Frame { + msec: 1392 + hash: "9413dffb7ee853ba0125ac22ab22abbd" + } + Frame { + msec: 1408 + hash: "fcae0317f81a3ddd713f4db1349a9da0" + } + Frame { + msec: 1424 + hash: "37739777a5979f3ebf85e47e63341660" + } + Frame { + msec: 1440 + hash: "72731478d80f024076ea639b55152360" + } + Frame { + msec: 1456 + hash: "69058485ced6bc992a1a7c5ee34add4c" + } + Frame { + msec: 1472 + hash: "391ad7ff2362e059f6170dfe306f94a7" + } + Frame { + msec: 1488 + hash: "f9f74a2e38b52c9266f33e428b6acd9d" + } + Frame { + msec: 1504 + hash: "25152412c4ea2aec6caf89486c073484" + } + Frame { + msec: 1520 + hash: "ba403842ba3128b1cdf6a9cb28c90751" + } + Frame { + msec: 1536 + hash: "e90cd68490cf3ce6ef9fe4e8f92feaa9" + } + Frame { + msec: 1552 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 1568 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 1584 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 1600 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 1616 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 1632 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 1648 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 1664 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 1680 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 1696 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 1712 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 1728 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 1744 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 1760 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 1776 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 1792 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 1808 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 1824 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 1840 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 1856 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 1872 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 1888 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 1904 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 1920 + image: "bindinganimation.1.png" + } + Frame { + msec: 1936 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 1952 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 1968 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 1984 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 2000 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 2016 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 2032 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 2048 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 2064 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 2080 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 2096 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 2112 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 2128 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 2144 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 2160 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 2176 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 2192 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 2208 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 2224 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 2240 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Mouse { + type: 2 + button: 1 + buttons: 1 + x: 122; y: 175 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2256 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 2272 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 2288 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 2304 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 2320 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 2336 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 2352 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 122; y: 175 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2368 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 2384 + hash: "adc501a3a2b8aaf72f58ba985b57424e" + } + Frame { + msec: 2400 + hash: "bfa51b7c19753ef7b16d78afffc7b9dd" + } + Frame { + msec: 2416 + hash: "ffa8471f57765b49fcdb9155393251e5" + } + Frame { + msec: 2432 + hash: "ddb65481469c38f2331546ee03a44206" + } + Frame { + msec: 2448 + hash: "6f48d1a9977b77cafd38a5903017605b" + } + Frame { + msec: 2464 + hash: "4279c814163af3bd069ce21b3cd1c729" + } + Frame { + msec: 2480 + hash: "17c46242c17983478f34cb49cb91ca6e" + } + Frame { + msec: 2496 + hash: "42f65c58b1f5f4b5ba70855f4aaa7d2f" + } + Frame { + msec: 2512 + hash: "6a74d6dc91a8b370200d3765c55c1136" + } + Frame { + msec: 2528 + hash: "ecda10356cca33901c2acd0a702fee46" + } + Frame { + msec: 2544 + hash: "4f58226bdbda7339d972eca065f75766" + } + Frame { + msec: 2560 + hash: "a39c80859a7643c9879da9c77b644703" + } + Frame { + msec: 2576 + hash: "16fe17b15900ff0464ab20ea921e5b1f" + } + Frame { + msec: 2592 + hash: "bc5c83b2014b7260900587ae3637598f" + } + Frame { + msec: 2608 + hash: "96c077e3a572edff04fa9b2f7020ffd0" + } + Frame { + msec: 2624 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 2640 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 2656 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 2672 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 2688 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 2704 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 2720 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 2736 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 2752 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 2768 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 2784 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 2800 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 2816 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 2832 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 2848 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 2864 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 2880 + image: "bindinganimation.2.png" + } + Frame { + msec: 2896 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 2912 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 2928 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 2944 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 2960 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 2976 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 2992 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 3008 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 3024 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 3040 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 3056 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 3072 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 3088 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 3104 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 3120 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 3136 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 3152 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 3168 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Mouse { + type: 2 + button: 1 + buttons: 1 + x: 122; y: 175 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 3184 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 3200 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 3216 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 3232 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 3248 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 3264 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 3280 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 122; y: 175 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 3296 + hash: "7cb5fc371040e587de9f06ce14a4b29a" + } + Frame { + msec: 3312 + hash: "a78c9394bf3b81f192f42710cd7218b1" + } + Frame { + msec: 3328 + hash: "7f08e8170feb1d02373c9ab42b6e882d" + } + Frame { + msec: 3344 + hash: "967fbad8ac664400a3efbe66617d62aa" + } + Frame { + msec: 3360 + hash: "abc2ec0bc7a93e75b5823310e6284db1" + } + Frame { + msec: 3376 + hash: "afbd5b24e2f86646f5ec2aa22f3a4b5b" + } + Frame { + msec: 3392 + hash: "9413dffb7ee853ba0125ac22ab22abbd" + } + Frame { + msec: 3408 + hash: "fcae0317f81a3ddd713f4db1349a9da0" + } + Frame { + msec: 3424 + hash: "37739777a5979f3ebf85e47e63341660" + } + Frame { + msec: 3440 + hash: "72731478d80f024076ea639b55152360" + } + Frame { + msec: 3456 + hash: "69058485ced6bc992a1a7c5ee34add4c" + } + Frame { + msec: 3472 + hash: "391ad7ff2362e059f6170dfe306f94a7" + } + Mouse { + type: 4 + button: 1 + buttons: 1 + x: 122; y: 175 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 3488 + hash: "f9f74a2e38b52c9266f33e428b6acd9d" + } + Frame { + msec: 3504 + hash: "25152412c4ea2aec6caf89486c073484" + } + Frame { + msec: 3520 + hash: "ba403842ba3128b1cdf6a9cb28c90751" + } + Frame { + msec: 3536 + hash: "e90cd68490cf3ce6ef9fe4e8f92feaa9" + } + Frame { + msec: 3552 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 3568 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 3584 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 3600 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 122; y: 175 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 3616 + hash: "383ba6b9efcc58fca512982a207631f6" + } + Frame { + msec: 3632 + hash: "adc501a3a2b8aaf72f58ba985b57424e" + } + Frame { + msec: 3648 + hash: "bfa51b7c19753ef7b16d78afffc7b9dd" + } + Frame { + msec: 3664 + hash: "ffa8471f57765b49fcdb9155393251e5" + } + Frame { + msec: 3680 + hash: "ddb65481469c38f2331546ee03a44206" + } + Frame { + msec: 3696 + hash: "6f48d1a9977b77cafd38a5903017605b" + } + Mouse { + type: 2 + button: 1 + buttons: 1 + x: 122; y: 175 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 3712 + hash: "4279c814163af3bd069ce21b3cd1c729" + } + Frame { + msec: 3728 + hash: "17c46242c17983478f34cb49cb91ca6e" + } + Frame { + msec: 3744 + hash: "42f65c58b1f5f4b5ba70855f4aaa7d2f" + } + Frame { + msec: 3760 + hash: "6a74d6dc91a8b370200d3765c55c1136" + } + Frame { + msec: 3776 + hash: "ecda10356cca33901c2acd0a702fee46" + } + Frame { + msec: 3792 + hash: "4f58226bdbda7339d972eca065f75766" + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 122; y: 175 + modifiers: 0 + sendToViewport: true + } + 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" + } +} diff --git a/tests/auto/declarative/visual/colorAnimation/colorAnimation.qml b/tests/auto/declarative/visual/animation/colorAnimation/colorAnimation.qml index 0e98d7e..0e98d7e 100644 --- a/tests/auto/declarative/visual/colorAnimation/colorAnimation.qml +++ b/tests/auto/declarative/visual/animation/colorAnimation/colorAnimation.qml diff --git a/tests/auto/declarative/visual/colorAnimation/data/colorAnimation.0.png b/tests/auto/declarative/visual/animation/colorAnimation/data/colorAnimation.0.png Binary files differindex f4a6cfd..f4a6cfd 100644 --- a/tests/auto/declarative/visual/colorAnimation/data/colorAnimation.0.png +++ b/tests/auto/declarative/visual/animation/colorAnimation/data/colorAnimation.0.png diff --git a/tests/auto/declarative/visual/colorAnimation/data/colorAnimation.1.png b/tests/auto/declarative/visual/animation/colorAnimation/data/colorAnimation.1.png Binary files differindex f4a6cfd..f4a6cfd 100644 --- a/tests/auto/declarative/visual/colorAnimation/data/colorAnimation.1.png +++ b/tests/auto/declarative/visual/animation/colorAnimation/data/colorAnimation.1.png diff --git a/tests/auto/declarative/visual/colorAnimation/data/colorAnimation.2.png b/tests/auto/declarative/visual/animation/colorAnimation/data/colorAnimation.2.png Binary files differindex f4a6cfd..f4a6cfd 100644 --- a/tests/auto/declarative/visual/colorAnimation/data/colorAnimation.2.png +++ b/tests/auto/declarative/visual/animation/colorAnimation/data/colorAnimation.2.png diff --git a/tests/auto/declarative/visual/colorAnimation/data/colorAnimation.qml b/tests/auto/declarative/visual/animation/colorAnimation/data/colorAnimation.qml index 900bf5c..900bf5c 100644 --- a/tests/auto/declarative/visual/colorAnimation/data/colorAnimation.qml +++ b/tests/auto/declarative/visual/animation/colorAnimation/data/colorAnimation.qml diff --git a/tests/auto/declarative/visual/easing/data/easing.0.png b/tests/auto/declarative/visual/animation/easing/data/easing.0.png Binary files differindex 4f75bfd..4f75bfd 100644 --- a/tests/auto/declarative/visual/easing/data/easing.0.png +++ b/tests/auto/declarative/visual/animation/easing/data/easing.0.png diff --git a/tests/auto/declarative/visual/easing/data/easing.1.png b/tests/auto/declarative/visual/animation/easing/data/easing.1.png Binary files differindex dc17765..dc17765 100644 --- a/tests/auto/declarative/visual/easing/data/easing.1.png +++ b/tests/auto/declarative/visual/animation/easing/data/easing.1.png diff --git a/tests/auto/declarative/visual/easing/data/easing.2.png b/tests/auto/declarative/visual/animation/easing/data/easing.2.png Binary files differindex 7f83548..7f83548 100644 --- a/tests/auto/declarative/visual/easing/data/easing.2.png +++ b/tests/auto/declarative/visual/animation/easing/data/easing.2.png diff --git a/tests/auto/declarative/visual/easing/data/easing.3.png b/tests/auto/declarative/visual/animation/easing/data/easing.3.png Binary files differindex c68e0fa..c68e0fa 100644 --- a/tests/auto/declarative/visual/easing/data/easing.3.png +++ b/tests/auto/declarative/visual/animation/easing/data/easing.3.png diff --git a/tests/auto/declarative/visual/easing/data/easing.qml b/tests/auto/declarative/visual/animation/easing/data/easing.qml index d8e8688..d8e8688 100644 --- a/tests/auto/declarative/visual/easing/data/easing.qml +++ b/tests/auto/declarative/visual/animation/easing/data/easing.qml diff --git a/tests/auto/declarative/visual/easing/easing.qml b/tests/auto/declarative/visual/animation/easing/easing.qml index 1e8e907..1e8e907 100644 --- a/tests/auto/declarative/visual/easing/easing.qml +++ b/tests/auto/declarative/visual/animation/easing/easing.qml diff --git a/tests/auto/declarative/visual/pauseAnimation/pics/qtlogo.png b/tests/auto/declarative/visual/animation/easing/pics/qtlogo.png Binary files differindex 399bd0b..399bd0b 100644 --- a/tests/auto/declarative/visual/pauseAnimation/pics/qtlogo.png +++ b/tests/auto/declarative/visual/animation/easing/pics/qtlogo.png diff --git a/tests/auto/declarative/visual/animation/parallelAnimation/data/parallelAnimation.0.png b/tests/auto/declarative/visual/animation/parallelAnimation/data/parallelAnimation.0.png Binary files differnew file mode 100644 index 0000000..82c18d7 --- /dev/null +++ b/tests/auto/declarative/visual/animation/parallelAnimation/data/parallelAnimation.0.png diff --git a/tests/auto/declarative/visual/animation/parallelAnimation/data/parallelAnimation.1.png b/tests/auto/declarative/visual/animation/parallelAnimation/data/parallelAnimation.1.png Binary files differnew file mode 100644 index 0000000..b9a3b89 --- /dev/null +++ b/tests/auto/declarative/visual/animation/parallelAnimation/data/parallelAnimation.1.png diff --git a/tests/auto/declarative/visual/animation/parallelAnimation/data/parallelAnimation.2.png b/tests/auto/declarative/visual/animation/parallelAnimation/data/parallelAnimation.2.png Binary files differnew file mode 100644 index 0000000..789615b --- /dev/null +++ b/tests/auto/declarative/visual/animation/parallelAnimation/data/parallelAnimation.2.png diff --git a/tests/auto/declarative/visual/animation/parallelAnimation/data/parallelAnimation.qml b/tests/auto/declarative/visual/animation/parallelAnimation/data/parallelAnimation.qml new file mode 100644 index 0000000..5f5b8fc --- /dev/null +++ b/tests/auto/declarative/visual/animation/parallelAnimation/data/parallelAnimation.qml @@ -0,0 +1,463 @@ +import Qt.VisualTest 4.6 + +VisualTest { + Frame { + msec: 0 + } + Frame { + msec: 16 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 32 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 48 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 64 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 80 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 96 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 112 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 128 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 144 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 160 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 176 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 192 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 208 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 224 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 240 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 256 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 272 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 288 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 304 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 320 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 336 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 352 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 368 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 384 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 400 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 416 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 432 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 448 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 464 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 480 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 496 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 512 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 528 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 544 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 560 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 576 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 592 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 608 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 624 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 640 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 656 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 672 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 688 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 704 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 720 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 736 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 752 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Mouse { + type: 2 + button: 1 + buttons: 1 + x: 137; y: 74 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 768 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 784 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 800 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 816 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 832 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 848 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 864 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 137; y: 74 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 880 + hash: "4faa7727bafeea0771f2db62f0141ac9" + } + Frame { + msec: 896 + hash: "0fada111cb977c4de8c7499e44714f38" + } + Frame { + msec: 912 + hash: "1817e010332117dcddc1a1b1a2caf52d" + } + Frame { + msec: 928 + hash: "e4add6bf93479c9bca571419fe2fabf9" + } + Frame { + msec: 944 + hash: "d8812e206d2cbf434d58db6a35439a44" + } + Frame { + msec: 960 + image: "parallelAnimation.0.png" + } + Frame { + msec: 976 + hash: "a238178c584aaf2563d29bff927d5bab" + } + Frame { + msec: 992 + hash: "f583e9fe8feda02e796a61c5fed7b0eb" + } + Frame { + msec: 1008 + hash: "b3a1a4fd85912831e551a8c07da1a561" + } + Frame { + msec: 1024 + hash: "f7c111ee4a04af6c1da958f8b56c28ee" + } + Frame { + msec: 1040 + hash: "f53fa374817d81ee44fb98e64e464b36" + } + Frame { + msec: 1056 + hash: "547ddef13cbcaaf57bb1f4e2bb7bc822" + } + Frame { + msec: 1072 + hash: "8b10ccfef926103a6d67d68eee250f83" + } + Frame { + msec: 1088 + hash: "008bbb50dc659e6f5eea15290680edd7" + } + Frame { + msec: 1104 + hash: "0217e3230d3df44363a023d0d7defc5f" + } + Frame { + msec: 1120 + hash: "ab9907a92452de6878f4c346febe705c" + } + Frame { + msec: 1136 + hash: "7bce31f347a7f0598d2d64026c702f3e" + } + Frame { + msec: 1152 + hash: "032080184907bc5b01db7675802d7dbe" + } + Frame { + msec: 1168 + hash: "2cba43a2e5febcc44bfd1379b9cb2591" + } + Frame { + msec: 1184 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Frame { + msec: 1200 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Frame { + msec: 1216 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Frame { + msec: 1232 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Frame { + msec: 1248 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Frame { + msec: 1264 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Frame { + msec: 1280 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Frame { + msec: 1296 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Frame { + msec: 1312 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Frame { + msec: 1328 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Frame { + msec: 1344 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Frame { + msec: 1360 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Frame { + msec: 1376 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Frame { + msec: 1392 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Frame { + msec: 1408 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Frame { + msec: 1424 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Frame { + msec: 1440 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Frame { + msec: 1456 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Frame { + msec: 1472 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Frame { + msec: 1488 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Frame { + msec: 1504 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Key { + type: 6 + key: 16777249 + modifiers: 67108864 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 1520 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Frame { + msec: 1536 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Frame { + msec: 1552 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Frame { + msec: 1568 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Frame { + msec: 1584 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Frame { + msec: 1600 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Frame { + msec: 1616 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Frame { + msec: 1632 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Frame { + msec: 1648 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Frame { + msec: 1664 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Frame { + msec: 1680 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Frame { + msec: 1696 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Frame { + msec: 1712 + hash: "b901a51b5605621adff7b34c61f8f320" + } + Frame { + msec: 1728 + hash: "b901a51b5605621adff7b34c61f8f320" + } +} diff --git a/tests/auto/declarative/visual/animation/parallelAnimation/parallelAnimation.qml b/tests/auto/declarative/visual/animation/parallelAnimation/parallelAnimation.qml new file mode 100644 index 0000000..9e0422f --- /dev/null +++ b/tests/auto/declarative/visual/animation/parallelAnimation/parallelAnimation.qml @@ -0,0 +1,43 @@ +import Qt 4.6 + +Rectangle { + width: 400; height: 200 + Rectangle { + id: redRect + width: 100; height: 100 + color: "red" + } + Rectangle { + id: redRect2 + width: 100; height: 100 + y: 100 + color: "red" + } + + MouseRegion { + anchors.fill: parent + onClicked: parent.state = "state1" + } + + states: State { + name: "state1" + PropertyChanges { + target: redRect + x: 300 + color: "purple" + } + PropertyChanges { + target: redRect2 + x: 300 + color: "purple" + } + } + + transitions: Transition { + PropertyAnimation { matchTargets: redRect; matchProperties: "x,color"; duration: 300 } + ParallelAnimation { + NumberAnimation { matchTargets: redRect2; matchProperties: "x"; duration: 300 } + ColorAnimation { matchTargets: redRect2; matchProperties: "color"; duration: 300 } + } + } +} diff --git a/tests/auto/declarative/visual/parentAction/data/parentAction.0.png b/tests/auto/declarative/visual/animation/parentAction/data/parentAction.0.png Binary files differindex a0032f8..a0032f8 100644 --- a/tests/auto/declarative/visual/parentAction/data/parentAction.0.png +++ b/tests/auto/declarative/visual/animation/parentAction/data/parentAction.0.png diff --git a/tests/auto/declarative/visual/parentAction/data/parentAction.1.png b/tests/auto/declarative/visual/animation/parentAction/data/parentAction.1.png Binary files differindex 958b6af..958b6af 100644 --- a/tests/auto/declarative/visual/parentAction/data/parentAction.1.png +++ b/tests/auto/declarative/visual/animation/parentAction/data/parentAction.1.png diff --git a/tests/auto/declarative/visual/parentAction/data/parentAction.2.png b/tests/auto/declarative/visual/animation/parentAction/data/parentAction.2.png Binary files differindex 3a1811f..3a1811f 100644 --- a/tests/auto/declarative/visual/parentAction/data/parentAction.2.png +++ b/tests/auto/declarative/visual/animation/parentAction/data/parentAction.2.png diff --git a/tests/auto/declarative/visual/parentAction/data/parentAction.3.png b/tests/auto/declarative/visual/animation/parentAction/data/parentAction.3.png Binary files differindex 36064c2..36064c2 100644 --- a/tests/auto/declarative/visual/parentAction/data/parentAction.3.png +++ b/tests/auto/declarative/visual/animation/parentAction/data/parentAction.3.png diff --git a/tests/auto/declarative/visual/parentAction/data/parentAction.4.png b/tests/auto/declarative/visual/animation/parentAction/data/parentAction.4.png Binary files differindex c493a1d..c493a1d 100644 --- a/tests/auto/declarative/visual/parentAction/data/parentAction.4.png +++ b/tests/auto/declarative/visual/animation/parentAction/data/parentAction.4.png diff --git a/tests/auto/declarative/visual/parentAction/data/parentAction.5.png b/tests/auto/declarative/visual/animation/parentAction/data/parentAction.5.png Binary files differindex c493a1d..c493a1d 100644 --- a/tests/auto/declarative/visual/parentAction/data/parentAction.5.png +++ b/tests/auto/declarative/visual/animation/parentAction/data/parentAction.5.png diff --git a/tests/auto/declarative/visual/parentAction/data/parentAction.qml b/tests/auto/declarative/visual/animation/parentAction/data/parentAction.qml index de27af7..de27af7 100644 --- a/tests/auto/declarative/visual/parentAction/data/parentAction.qml +++ b/tests/auto/declarative/visual/animation/parentAction/data/parentAction.qml diff --git a/tests/auto/declarative/visual/parentAction/parentAction.qml b/tests/auto/declarative/visual/animation/parentAction/parentAction.qml index e69d234..e69d234 100644 --- a/tests/auto/declarative/visual/parentAction/parentAction.qml +++ b/tests/auto/declarative/visual/animation/parentAction/parentAction.qml diff --git a/tests/auto/declarative/visual/pauseAnimation/data/pauseAnimation.0.png b/tests/auto/declarative/visual/animation/pauseAnimation/data/pauseAnimation.0.png Binary files differindex 693a794..693a794 100644 --- a/tests/auto/declarative/visual/pauseAnimation/data/pauseAnimation.0.png +++ b/tests/auto/declarative/visual/animation/pauseAnimation/data/pauseAnimation.0.png diff --git a/tests/auto/declarative/visual/pauseAnimation/data/pauseAnimation.1.png b/tests/auto/declarative/visual/animation/pauseAnimation/data/pauseAnimation.1.png Binary files differindex 06d43f1..06d43f1 100644 --- a/tests/auto/declarative/visual/pauseAnimation/data/pauseAnimation.1.png +++ b/tests/auto/declarative/visual/animation/pauseAnimation/data/pauseAnimation.1.png diff --git a/tests/auto/declarative/visual/pauseAnimation/data/pauseAnimation.2.png b/tests/auto/declarative/visual/animation/pauseAnimation/data/pauseAnimation.2.png Binary files differindex e619baf..e619baf 100644 --- a/tests/auto/declarative/visual/pauseAnimation/data/pauseAnimation.2.png +++ b/tests/auto/declarative/visual/animation/pauseAnimation/data/pauseAnimation.2.png diff --git a/tests/auto/declarative/visual/pauseAnimation/data/pauseAnimation.3.png b/tests/auto/declarative/visual/animation/pauseAnimation/data/pauseAnimation.3.png Binary files differindex 30c7671..30c7671 100644 --- a/tests/auto/declarative/visual/pauseAnimation/data/pauseAnimation.3.png +++ b/tests/auto/declarative/visual/animation/pauseAnimation/data/pauseAnimation.3.png diff --git a/tests/auto/declarative/visual/pauseAnimation/data/pauseAnimation.4.png b/tests/auto/declarative/visual/animation/pauseAnimation/data/pauseAnimation.4.png Binary files differindex 132803c..132803c 100644 --- a/tests/auto/declarative/visual/pauseAnimation/data/pauseAnimation.4.png +++ b/tests/auto/declarative/visual/animation/pauseAnimation/data/pauseAnimation.4.png diff --git a/tests/auto/declarative/visual/pauseAnimation/data/pauseAnimation.5.png b/tests/auto/declarative/visual/animation/pauseAnimation/data/pauseAnimation.5.png Binary files differindex 8372bc3..8372bc3 100644 --- a/tests/auto/declarative/visual/pauseAnimation/data/pauseAnimation.5.png +++ b/tests/auto/declarative/visual/animation/pauseAnimation/data/pauseAnimation.5.png diff --git a/tests/auto/declarative/visual/pauseAnimation/data/pauseAnimation.qml b/tests/auto/declarative/visual/animation/pauseAnimation/data/pauseAnimation.qml index 73c6542..73c6542 100644 --- a/tests/auto/declarative/visual/pauseAnimation/data/pauseAnimation.qml +++ b/tests/auto/declarative/visual/animation/pauseAnimation/data/pauseAnimation.qml diff --git a/tests/auto/declarative/visual/pauseAnimation/pauseAnimation.qml b/tests/auto/declarative/visual/animation/pauseAnimation/pauseAnimation.qml index fba8ae6..fba8ae6 100644 --- a/tests/auto/declarative/visual/pauseAnimation/pauseAnimation.qml +++ b/tests/auto/declarative/visual/animation/pauseAnimation/pauseAnimation.qml diff --git a/tests/auto/declarative/visual/easing/pics/qtlogo.png b/tests/auto/declarative/visual/animation/pauseAnimation/pics/qtlogo.png Binary files differindex 399bd0b..399bd0b 100644 --- a/tests/auto/declarative/visual/easing/pics/qtlogo.png +++ b/tests/auto/declarative/visual/animation/pauseAnimation/pics/qtlogo.png diff --git a/tests/auto/declarative/visual/propertyAction/data/propertyAction.0.png b/tests/auto/declarative/visual/animation/propertyAction/data/propertyAction.0.png Binary files differindex 64d6b06..64d6b06 100644 --- a/tests/auto/declarative/visual/propertyAction/data/propertyAction.0.png +++ b/tests/auto/declarative/visual/animation/propertyAction/data/propertyAction.0.png diff --git a/tests/auto/declarative/visual/propertyAction/data/propertyAction.1.png b/tests/auto/declarative/visual/animation/propertyAction/data/propertyAction.1.png Binary files differindex f7fce15..f7fce15 100644 --- a/tests/auto/declarative/visual/propertyAction/data/propertyAction.1.png +++ b/tests/auto/declarative/visual/animation/propertyAction/data/propertyAction.1.png diff --git a/tests/auto/declarative/visual/propertyAction/data/propertyAction.2.png b/tests/auto/declarative/visual/animation/propertyAction/data/propertyAction.2.png Binary files differindex 3080df5..3080df5 100644 --- a/tests/auto/declarative/visual/propertyAction/data/propertyAction.2.png +++ b/tests/auto/declarative/visual/animation/propertyAction/data/propertyAction.2.png diff --git a/tests/auto/declarative/visual/propertyAction/data/propertyAction.qml b/tests/auto/declarative/visual/animation/propertyAction/data/propertyAction.qml index 7c8c233..7c8c233 100644 --- a/tests/auto/declarative/visual/propertyAction/data/propertyAction.qml +++ b/tests/auto/declarative/visual/animation/propertyAction/data/propertyAction.qml diff --git a/tests/auto/declarative/visual/propertyAction/propertyAction.qml b/tests/auto/declarative/visual/animation/propertyAction/propertyAction.qml index a9d3c74..a9d3c74 100644 --- a/tests/auto/declarative/visual/propertyAction/propertyAction.qml +++ b/tests/auto/declarative/visual/animation/propertyAction/propertyAction.qml diff --git a/tests/auto/declarative/visual/scriptAction/data/scriptAction.0.png b/tests/auto/declarative/visual/animation/scriptAction/data/scriptAction.0.png Binary files differindex 64d6b06..64d6b06 100644 --- a/tests/auto/declarative/visual/scriptAction/data/scriptAction.0.png +++ b/tests/auto/declarative/visual/animation/scriptAction/data/scriptAction.0.png diff --git a/tests/auto/declarative/visual/scriptAction/data/scriptAction.1.png b/tests/auto/declarative/visual/animation/scriptAction/data/scriptAction.1.png Binary files differindex 1a25c63..1a25c63 100644 --- a/tests/auto/declarative/visual/scriptAction/data/scriptAction.1.png +++ b/tests/auto/declarative/visual/animation/scriptAction/data/scriptAction.1.png diff --git a/tests/auto/declarative/visual/scriptAction/data/scriptAction.qml b/tests/auto/declarative/visual/animation/scriptAction/data/scriptAction.qml index 01da490..01da490 100644 --- a/tests/auto/declarative/visual/scriptAction/data/scriptAction.qml +++ b/tests/auto/declarative/visual/animation/scriptAction/data/scriptAction.qml diff --git a/tests/auto/declarative/visual/scriptAction/scriptAction.qml b/tests/auto/declarative/visual/animation/scriptAction/scriptAction.qml index 872701b..872701b 100644 --- a/tests/auto/declarative/visual/scriptAction/scriptAction.qml +++ b/tests/auto/declarative/visual/animation/scriptAction/scriptAction.qml diff --git a/tests/auto/declarative/visual/bindinganimation/data/bindinganimation.qml b/tests/auto/declarative/visual/bindinganimation/data/bindinganimation.qml deleted file mode 100644 index 2501797..0000000 --- a/tests/auto/declarative/visual/bindinganimation/data/bindinganimation.qml +++ /dev/null @@ -1,659 +0,0 @@ -import Qt.VisualTest 4.6 - -VisualTest { - Frame { - msec: 0 - } - Frame { - msec: 16 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 32 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 48 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 64 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 80 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 96 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 112 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 128 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 144 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 160 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 176 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 192 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 208 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 224 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 240 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 256 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 272 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 288 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 304 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 320 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 336 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 352 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 368 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 384 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 400 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 416 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 432 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 448 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 464 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 480 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 496 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 512 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 528 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 544 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 560 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 576 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 592 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 608 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 624 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 640 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 656 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 672 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 688 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 704 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 720 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 736 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 752 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 768 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 784 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 800 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 816 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 832 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 848 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 864 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 880 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 896 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 912 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 928 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 944 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 960 - image: "bindinganimation.0.png" - } - Frame { - msec: 976 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 992 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1008 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1024 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1040 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1056 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1072 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1088 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1104 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1120 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1136 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1152 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1168 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1184 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1200 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1216 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1232 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1248 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1264 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1280 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1296 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1312 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1328 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1344 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1360 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1376 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1392 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1408 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1424 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1440 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1456 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1472 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1488 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Mouse { - type: 2 - button: 1 - buttons: 1 - x: 150; y: 158 - modifiers: 0 - sendToViewport: true - } - Frame { - msec: 1504 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1520 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1536 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1552 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1568 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Mouse { - type: 3 - button: 1 - buttons: 0 - x: 150; y: 158 - modifiers: 0 - sendToViewport: true - } - Frame { - msec: 1584 - hash: "7cb5fc371040e587de9f06ce14a4b29a" - } - Frame { - msec: 1600 - hash: "a78c9394bf3b81f192f42710cd7218b1" - } - Frame { - msec: 1616 - hash: "7f08e8170feb1d02373c9ab42b6e882d" - } - Frame { - msec: 1632 - hash: "967fbad8ac664400a3efbe66617d62aa" - } - Frame { - msec: 1648 - hash: "abc2ec0bc7a93e75b5823310e6284db1" - } - Frame { - msec: 1664 - hash: "afbd5b24e2f86646f5ec2aa22f3a4b5b" - } - Frame { - msec: 1680 - hash: "9413dffb7ee853ba0125ac22ab22abbd" - } - Frame { - msec: 1696 - hash: "fcae0317f81a3ddd713f4db1349a9da0" - } - Frame { - msec: 1712 - hash: "37739777a5979f3ebf85e47e63341660" - } - Frame { - msec: 1728 - hash: "72731478d80f024076ea639b55152360" - } - Frame { - msec: 1744 - hash: "69058485ced6bc992a1a7c5ee34add4c" - } - Frame { - msec: 1760 - hash: "391ad7ff2362e059f6170dfe306f94a7" - } - Frame { - msec: 1776 - hash: "f9f74a2e38b52c9266f33e428b6acd9d" - } - Frame { - msec: 1792 - hash: "25152412c4ea2aec6caf89486c073484" - } - Frame { - msec: 1808 - hash: "ba403842ba3128b1cdf6a9cb28c90751" - } - Frame { - msec: 1824 - hash: "e90cd68490cf3ce6ef9fe4e8f92feaa9" - } - Frame { - msec: 1840 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 1856 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 1872 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 1888 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 1904 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 1920 - image: "bindinganimation.1.png" - } - Frame { - msec: 1936 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 1952 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 1968 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 1984 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 2000 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 2016 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 2032 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 2048 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 2064 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 2080 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 2096 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 2112 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 2128 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 2144 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 2160 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 2176 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 2192 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 2208 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 2224 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 2240 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 2256 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 2272 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 2288 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 2304 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 2320 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 2336 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 2352 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 2368 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 2384 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 2400 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 2416 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Key { - type: 6 - key: 16777249 - modifiers: 67108864 - text: "" - autorep: false - count: 1 - } - Frame { - msec: 2432 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 2448 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 2464 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 2480 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 2496 - hash: "383ba6b9efcc58fca512982a207631f6" - } - Frame { - msec: 2512 - hash: "383ba6b9efcc58fca512982a207631f6" - } -} diff --git a/tests/auto/declarative/visual/qmleasefollow/data/easefollow.0.png b/tests/auto/declarative/visual/qmleasefollow/data/easefollow.0.png Binary files differnew file mode 100644 index 0000000..21b6afb --- /dev/null +++ b/tests/auto/declarative/visual/qmleasefollow/data/easefollow.0.png diff --git a/tests/auto/declarative/visual/qmleasefollow/data/easefollow.1.png b/tests/auto/declarative/visual/qmleasefollow/data/easefollow.1.png Binary files differnew file mode 100644 index 0000000..bb8a02b --- /dev/null +++ b/tests/auto/declarative/visual/qmleasefollow/data/easefollow.1.png diff --git a/tests/auto/declarative/visual/qmleasefollow/data/easefollow.2.png b/tests/auto/declarative/visual/qmleasefollow/data/easefollow.2.png Binary files differnew file mode 100644 index 0000000..da60237 --- /dev/null +++ b/tests/auto/declarative/visual/qmleasefollow/data/easefollow.2.png diff --git a/tests/auto/declarative/visual/qmleasefollow/data/easefollow.3.png b/tests/auto/declarative/visual/qmleasefollow/data/easefollow.3.png Binary files differnew file mode 100644 index 0000000..3e943e8 --- /dev/null +++ b/tests/auto/declarative/visual/qmleasefollow/data/easefollow.3.png diff --git a/tests/auto/declarative/visual/qmleasefollow/data/easefollow.4.png b/tests/auto/declarative/visual/qmleasefollow/data/easefollow.4.png Binary files differnew file mode 100644 index 0000000..4fbaf26 --- /dev/null +++ b/tests/auto/declarative/visual/qmleasefollow/data/easefollow.4.png diff --git a/tests/auto/declarative/visual/qmleasefollow/data/easefollow.5.png b/tests/auto/declarative/visual/qmleasefollow/data/easefollow.5.png Binary files differnew file mode 100644 index 0000000..c10d196 --- /dev/null +++ b/tests/auto/declarative/visual/qmleasefollow/data/easefollow.5.png diff --git a/tests/auto/declarative/visual/qmleasefollow/data/easefollow.6.png b/tests/auto/declarative/visual/qmleasefollow/data/easefollow.6.png Binary files differnew file mode 100644 index 0000000..a672c06 --- /dev/null +++ b/tests/auto/declarative/visual/qmleasefollow/data/easefollow.6.png diff --git a/tests/auto/declarative/visual/qmleasefollow/data/easefollow.qml b/tests/auto/declarative/visual/qmleasefollow/data/easefollow.qml new file mode 100644 index 0000000..029a2fc --- /dev/null +++ b/tests/auto/declarative/visual/qmleasefollow/data/easefollow.qml @@ -0,0 +1,1807 @@ +import Qt.VisualTest 4.6 + +VisualTest { + Frame { + msec: 0 + } + Frame { + msec: 16 + hash: "1f60efdb8704b92c9361daa468a25391" + } + Frame { + msec: 32 + hash: "3bb6a87617e0e5d4922e573eec975886" + } + Frame { + msec: 48 + hash: "268941737e6324d580890b151de621fb" + } + Frame { + msec: 64 + hash: "99c674eccc082d7f0982257a748d93e5" + } + Frame { + msec: 80 + hash: "2970467e8262c8a3f0b11be71245d048" + } + Frame { + msec: 96 + hash: "63cbd06d6bb035d27c18dba49238d8b2" + } + Frame { + msec: 112 + hash: "49f77bb3d323f882c0ec56e1f1040b3a" + } + Frame { + msec: 128 + hash: "40263c5f9b5d2236536163785f832b4d" + } + Frame { + msec: 144 + hash: "dc63b1c21a2027c4beb9c297a3677fbd" + } + Frame { + msec: 160 + hash: "4fab52ea29a819fec032f19dbcbef012" + } + Frame { + msec: 176 + hash: "60b48407a8f8ae2cce7d3e7c8b21991c" + } + Frame { + msec: 192 + hash: "6e542c681092a5ebeef0534fa2bd2d6c" + } + Frame { + msec: 208 + hash: "c7c6471969bbf81efdb86d1695548fc6" + } + Frame { + msec: 224 + hash: "b7f4ad9a49feb400894209c02b94478a" + } + Frame { + msec: 240 + hash: "3eb58b2f5233aead976183c13f241113" + } + Frame { + msec: 256 + hash: "54f2036c50c6d8079fc0cadc01385980" + } + Frame { + msec: 272 + hash: "f297659d75f6e724d72bd548821f4c9f" + } + Frame { + msec: 288 + hash: "112798f080336fc9c603a7e9097dd8aa" + } + Frame { + msec: 304 + hash: "c432e6ec2b53ca43cb7a7325d0cc379b" + } + Frame { + msec: 320 + hash: "4a6d3db3efd665ad7f372bf3f2508ed7" + } + Frame { + msec: 336 + hash: "0befa5dc4d2cc196fed0eb1a3aa75b8f" + } + Frame { + msec: 352 + hash: "a34d010b50d59c362b54e44d69c2df91" + } + Frame { + msec: 368 + hash: "cbdacced50186c87066ce1d46548b27e" + } + Frame { + msec: 384 + hash: "a4060010ae4d3c0973bda48d68f7bd0a" + } + Frame { + msec: 400 + hash: "47353437da587f732f986004c09884d0" + } + Frame { + msec: 416 + hash: "080c348145167bbec671a04da6f7564f" + } + Frame { + msec: 432 + hash: "69dead737c717a076ae3865680341fb4" + } + Frame { + msec: 448 + hash: "1efdc31c5c8fa72fc848877deb6caaa4" + } + Frame { + msec: 464 + hash: "28d7da1e933d0585d03acf4a529e7b42" + } + Frame { + msec: 480 + hash: "bf85534124bf025b7ede0d6c80b8e443" + } + Frame { + msec: 496 + hash: "cdbeb2d51541b1b1eff060efe993db91" + } + Frame { + msec: 512 + hash: "52ad56ae16c8ab523adda8edc512dd87" + } + Frame { + msec: 528 + hash: "61b1937f4c8dd2cb0ddd7031c5bfb3ab" + } + Frame { + msec: 544 + hash: "1b109baba71b16827f90da654af093a3" + } + Frame { + msec: 560 + hash: "d56621362802c8626868f36ba1e7db22" + } + Frame { + msec: 576 + hash: "ee5555ec3ad8760f43bbf5958a925936" + } + Frame { + msec: 592 + hash: "1ed2831144a453af1978605c0e42d17c" + } + Frame { + msec: 608 + hash: "c74d5cdb3395a702269dfa88c8c9d975" + } + Frame { + msec: 624 + hash: "ea98ddd9588cc23fd82a342ec2925ba8" + } + Frame { + msec: 640 + hash: "e76b94d6d57f1a510f7649eaab892562" + } + Frame { + msec: 656 + hash: "022f40b6fe9dbaf8019855234acb3461" + } + Frame { + msec: 672 + hash: "467da4f48aa6aeb113f0797facf157e8" + } + Frame { + msec: 688 + hash: "8df407aadd4d896eb6537e1555a0242f" + } + Frame { + msec: 704 + hash: "122e4671881e31f54e617729f4fbb3b0" + } + Frame { + msec: 720 + hash: "562718f101c3cd7525b890076413df5e" + } + Frame { + msec: 736 + hash: "07feae99ecf4b70eb094fd3e10deca56" + } + Frame { + msec: 752 + hash: "0980d133b1006cc07796023880415163" + } + Frame { + msec: 768 + hash: "7112b6ac97678b3b942c64c5108f0329" + } + Frame { + msec: 784 + hash: "bb9f893a9aaee60ab6c30918552828a4" + } + Frame { + msec: 800 + hash: "65d1f29437aaaea33676757276f1e434" + } + Frame { + msec: 816 + hash: "52adcf2509f3236ac8ef571708e77206" + } + Frame { + msec: 832 + hash: "22df5e7eda8a813531d0e0366cbfbf64" + } + Frame { + msec: 848 + hash: "fe9b7b7812dd2410b8ed2eb19aa78f4d" + } + Frame { + msec: 864 + hash: "141e22de4469f316b5ef5471f3c7bba0" + } + Frame { + msec: 880 + hash: "1125c0a105fc4a2cae36b798058ce23f" + } + Frame { + msec: 896 + hash: "8c17c5da2ae867fb0016a485ba9e4166" + } + Frame { + msec: 912 + hash: "d8da9fc7ec4dcefb894c5a6a71e9d001" + } + Frame { + msec: 928 + hash: "00ff642bea89fd89de394d78f8c5db33" + } + Frame { + msec: 944 + hash: "8549063d517a3ce1ffd44c56b3b6cf5e" + } + Frame { + msec: 960 + image: "easefollow.0.png" + } + Frame { + msec: 976 + hash: "95a642caa72bb31cc1e04ecc12d07cd0" + } + Frame { + msec: 992 + hash: "e65c823476bf920d0386f62ca831e6a0" + } + Frame { + msec: 1008 + hash: "91e8913dc693c91a674a10b5b088dd8f" + } + Frame { + msec: 1024 + hash: "1a469ffa0d530f72c78dc14783891c78" + } + Frame { + msec: 1040 + hash: "6e46a83d07f8bc034b421103ef0e4f8c" + } + Frame { + msec: 1056 + hash: "8ddacab411a8b73b6c9e69576fa1b003" + } + Frame { + msec: 1072 + hash: "41f419a85fe44efe27c9a526d83a1e9a" + } + Frame { + msec: 1088 + hash: "73d4ece31b258f9caf4556ce20a5be1f" + } + Frame { + msec: 1104 + hash: "ef3ebe0acb50386cf79b9f08fbba2fbc" + } + Frame { + msec: 1120 + hash: "c11a84d2fa80f28adb1466409812e987" + } + Frame { + msec: 1136 + hash: "2e9db854b02d28b38063ff2a8e821ed1" + } + Frame { + msec: 1152 + hash: "48e073c0e6b19aea8314629a2179af87" + } + Frame { + msec: 1168 + hash: "77e518b7428d93b67a8fb0d33d85ed97" + } + Frame { + msec: 1184 + hash: "1d18323af9c62e015513451883f8b39f" + } + Frame { + msec: 1200 + hash: "df49889ba157cdc1ca240d08d2760ad7" + } + Frame { + msec: 1216 + hash: "7b8cd2bcf0a4c38ab870f27894a43d2f" + } + Frame { + msec: 1232 + hash: "84f10e0c9fd57dd1799df7fc34c5ef01" + } + Frame { + msec: 1248 + hash: "ead4e609bc4a0755032b1648485b9625" + } + Frame { + msec: 1264 + hash: "9a9829c3bd4a3a4155383c37e21e8db8" + } + Frame { + msec: 1280 + hash: "5008917f60256abad867f32c1caf954d" + } + Frame { + msec: 1296 + hash: "c21455d66ed0754177af5ce44b7c7600" + } + Frame { + msec: 1312 + hash: "e8332f2586d80a2700b610e8fe5c72d9" + } + Frame { + msec: 1328 + hash: "0d0c8af138f98bae8a370ebec4a4796c" + } + Frame { + msec: 1344 + hash: "04065e8feeb900d18deeb941572f7f10" + } + Frame { + msec: 1360 + hash: "992a225b1f25bf5b21dd7f8a55dc4b70" + } + Frame { + msec: 1376 + hash: "8ef739d91ee2a4337cbfc3dc94ce9845" + } + Frame { + msec: 1392 + hash: "46744977a26b37ab65e65e1891ceafe7" + } + Frame { + msec: 1408 + hash: "1b4c0d79eeb8d6b2e30172f3664407b9" + } + Frame { + msec: 1424 + hash: "d572831ed34d14d1125570b8b8767bdb" + } + Frame { + msec: 1440 + hash: "8b785c756d11e0fc18959d0897a45673" + } + Frame { + msec: 1456 + hash: "164a71ffcea63ceb6c1ebeb8d0d07af1" + } + Frame { + msec: 1472 + hash: "e128dc12d5117eed9f7c0a16e8348ba2" + } + Frame { + msec: 1488 + hash: "4c7db5b12d83bf22b1c88ac06ca7c385" + } + Frame { + msec: 1504 + hash: "c7283df8dbd78121e17a5893e3ea4f3c" + } + Frame { + msec: 1520 + hash: "fea768e5bb43f6d86d88ced9f73915de" + } + Frame { + msec: 1536 + hash: "b99b54f8e75452c539bb4e7b6a36e944" + } + Frame { + msec: 1552 + hash: "b7274938d16f03b376ad9739e2e893f1" + } + Frame { + msec: 1568 + hash: "e61601942193add8c1c8ebf5c5319932" + } + Frame { + msec: 1584 + hash: "8fdc2181e0120391505706716ba7e5d7" + } + Frame { + msec: 1600 + hash: "66f737ed28453da5175d6b5e807c374d" + } + Frame { + msec: 1616 + hash: "2e00a7895d61edbe794f0a8000871b30" + } + Frame { + msec: 1632 + hash: "1a279fc6b7c4105eccc4e3bc99481bef" + } + Frame { + msec: 1648 + hash: "bc1dea4d23ca9bc29b72a8c2bde4787b" + } + Frame { + msec: 1664 + hash: "8ef40e0be5fb82b32b365b3d4b85421d" + } + Frame { + msec: 1680 + hash: "ee37c68bf38d5eed4e3e9a31306f6801" + } + Frame { + msec: 1696 + hash: "303d760c87a7a833606c8e9f46cb5fc0" + } + Frame { + msec: 1712 + hash: "cc2563b47c58efd39bec6b4e0f2995bb" + } + Frame { + msec: 1728 + hash: "33f7daf09497510475283d6dc7c51228" + } + Frame { + msec: 1744 + hash: "5b5e2de9934c80bd49e0eb7afd85151d" + } + Frame { + msec: 1760 + hash: "5e6bf706336789ca6b60a82998b70113" + } + Frame { + msec: 1776 + hash: "b4d4a860f49bfb88dd2079862b40b7ec" + } + Frame { + msec: 1792 + hash: "07b571fa55327487e34a592c778beb67" + } + Frame { + msec: 1808 + hash: "cb5b349a536cf75a83734181b3eab92b" + } + Frame { + msec: 1824 + hash: "ce903bb58c5c86f2955e68412893aedf" + } + Frame { + msec: 1840 + hash: "ffa89e879558c83ed538812a93e2fe29" + } + Frame { + msec: 1856 + hash: "562aa66bf537853be82a654542c8b80e" + } + Frame { + msec: 1872 + hash: "dc45dac0cc20220bcc81210fb5506ee2" + } + Frame { + msec: 1888 + hash: "3b429eb827df0800a1ad8b906ea32ef9" + } + Frame { + msec: 1904 + hash: "d6ebaf12515d9e24cdbf6d75080c0b28" + } + Frame { + msec: 1920 + image: "easefollow.1.png" + } + Frame { + msec: 1936 + hash: "9f6d26224055c809dc2f3490cd0ff880" + } + Frame { + msec: 1952 + hash: "5630cc8f0b401f7d81bdceaaae5cce68" + } + Frame { + msec: 1968 + hash: "dafda60467e5e2b99c41543dd191ac2d" + } + Frame { + msec: 1984 + hash: "e053cb07a734278cd111d612883c165e" + } + Frame { + msec: 2000 + hash: "63870f3e99c11707004dab9439d61389" + } + Frame { + msec: 2016 + hash: "14c311a6fab45f828c3a19535ea9edc8" + } + Frame { + msec: 2032 + hash: "13e614446cbfcbfd2a7ecc5f0e8688df" + } + Frame { + msec: 2048 + hash: "173c97f59da05b9347180a4824e60c06" + } + Frame { + msec: 2064 + hash: "932e2a9bbcb7dc5befca8f63d8fa3c95" + } + Frame { + msec: 2080 + hash: "4b8f232ffe0cbc7f900de5737c9f95be" + } + Frame { + msec: 2096 + hash: "9686d294d4e931a5eed0e6b5bda63377" + } + Frame { + msec: 2112 + hash: "969c569d92e3ec51dfbdd20d64432224" + } + Frame { + msec: 2128 + hash: "0cef3550cca9fb5611b836098c517dd1" + } + Frame { + msec: 2144 + hash: "6728080a09aa5d48462a3abb8e285e8a" + } + Frame { + msec: 2160 + hash: "4b904dc671b7fc72db0b6e52543e96bd" + } + Frame { + msec: 2176 + hash: "38232f89dffc9b16db6ea60b02f8d1be" + } + Frame { + msec: 2192 + hash: "6b41f2a0f950eddad217a03e137f9a9b" + } + Frame { + msec: 2208 + hash: "be576ea74c2c404da46fcf1d22de6df9" + } + Frame { + msec: 2224 + hash: "3f44bad4b51ceff2944337064a5efa91" + } + Frame { + msec: 2240 + hash: "e1ab98ac1366e9fd8af62a6a26878c73" + } + Frame { + msec: 2256 + hash: "bd131e1725a54b3dbbb86a29ca8a56a9" + } + Frame { + msec: 2272 + hash: "4d3e8af70f228643803f780c4e36f1a6" + } + Frame { + msec: 2288 + hash: "853a5ab4271af7a7638454cfa883aa33" + } + Frame { + msec: 2304 + hash: "ede9260157000f346900153ce2409278" + } + Frame { + msec: 2320 + hash: "b2b16d8ce1ba89f0d9558ac387e25c3d" + } + Frame { + msec: 2336 + hash: "387d338910453637c5cf80fa35528e56" + } + Frame { + msec: 2352 + hash: "26deabf9cdd994455f2a8802eb0e04dc" + } + Frame { + msec: 2368 + hash: "13939659a315dae1b81e3ea166102edf" + } + Frame { + msec: 2384 + hash: "be92b55bb7562372401b25a9167abb2b" + } + Frame { + msec: 2400 + hash: "ee7bf60d7ee97b7de5e909b9af88df80" + } + Frame { + msec: 2416 + hash: "434313a3bcd1d7582b0d89b9a145ef09" + } + Frame { + msec: 2432 + hash: "0857ca59a283897e3df62b9633488f83" + } + Frame { + msec: 2448 + hash: "76718fc7e3d21b54930bc8307a57733a" + } + Frame { + msec: 2464 + hash: "93a91588b38129053a462b920fd686e3" + } + Frame { + msec: 2480 + hash: "2a2486c52fde915696fd8cbd3682e8db" + } + Frame { + msec: 2496 + hash: "b1f4ab6cc5fb4a3a1b4885f2d1b29277" + } + Frame { + msec: 2512 + hash: "4258afce8a85a2e9ead149e34b43d8fc" + } + Frame { + msec: 2528 + hash: "6672c71b98e13d51ebb523aed9036a72" + } + Frame { + msec: 2544 + hash: "eaa39af7eb78948f433e3b44a9454317" + } + Frame { + msec: 2560 + hash: "0a766bc97bea67d4b848c703eaa6777a" + } + Frame { + msec: 2576 + hash: "0b461ec1885ede1dd96b71cf38bfd3d6" + } + Frame { + msec: 2592 + hash: "15efc929370a3864529080e30db1026a" + } + Frame { + msec: 2608 + hash: "e1529e30ff1e4ea1b092a88e85f2f1f6" + } + Frame { + msec: 2624 + hash: "f29bd9dbf7317e94b885da63f0cb7374" + } + Frame { + msec: 2640 + hash: "e5294e087e2ce0d7d936c0129b6c37ae" + } + Frame { + msec: 2656 + hash: "9c63129e774b391cc398cf5da5c9339c" + } + Frame { + msec: 2672 + hash: "4371d85854419d4b00671176bb7c5a2b" + } + Frame { + msec: 2688 + hash: "dd10b3f50e2fdc56c75f00321634b1cc" + } + Frame { + msec: 2704 + hash: "aac6256b21152a5f1f8c576b667d275e" + } + Frame { + msec: 2720 + hash: "c937c44037b2228590d334df4d56a86f" + } + Frame { + msec: 2736 + hash: "f6c714db51cbd1bdb737afe612c33f9c" + } + Frame { + msec: 2752 + hash: "0bba45af79f3201bc7cf042d5c648f73" + } + Frame { + msec: 2768 + hash: "941b08ddbafea3bd46262c060b1e290b" + } + Frame { + msec: 2784 + hash: "d898918dc2023de239b4ab38f7420960" + } + Frame { + msec: 2800 + hash: "d1a16dc2282329113093d06862e7a871" + } + Frame { + msec: 2816 + hash: "bba5359475f643fbeee240e71e843d4c" + } + Frame { + msec: 2832 + hash: "03cf861f4b6bc767e723e47e95c2448b" + } + Frame { + msec: 2848 + hash: "a64bf158c6199b88bc2db3b741d342f0" + } + Frame { + msec: 2864 + hash: "cf0fe7cb42ba842f1c28c1211adb768d" + } + Frame { + msec: 2880 + image: "easefollow.2.png" + } + Frame { + msec: 2896 + hash: "9b3c6414e4ef5a452a5c92bb0b893fc3" + } + Frame { + msec: 2912 + hash: "7cc7ddec3ac2d8cac33c0b0f80a7544d" + } + Frame { + msec: 2928 + hash: "7dd4e7d606e953c872c57fad786d64aa" + } + Frame { + msec: 2944 + hash: "117cc903a39d99ca22f6556095e6f883" + } + Frame { + msec: 2960 + hash: "c6c9304fd65fee1909473bdb21ac7806" + } + Frame { + msec: 2976 + hash: "8e704fe81c040f49c4d80e7dcc46084d" + } + Frame { + msec: 2992 + hash: "d202d5c0a058e1e088fdd280e59f17bb" + } + Frame { + msec: 3008 + hash: "90c072dea32c056f8bd6d010df681929" + } + Frame { + msec: 3024 + hash: "80b4e99f1b47e64084e295a2a3e1121e" + } + Frame { + msec: 3040 + hash: "41d6307075ec9ae9e92d227921f71289" + } + Frame { + msec: 3056 + hash: "f33de23cf4a5c4881310c6866261d387" + } + Frame { + msec: 3072 + hash: "441faa0a1fc95d66b27479dfc1e40188" + } + Frame { + msec: 3088 + hash: "2314b5f6ba3864abd5e87bc87bd621b0" + } + Frame { + msec: 3104 + hash: "e71e3b0ad953258ceef3101e38283fdb" + } + Frame { + msec: 3120 + hash: "890c3b0e727f136bf1ccc486531c9677" + } + Frame { + msec: 3136 + hash: "2a0d23e6dcc6475c323dbf8eb36e8094" + } + Frame { + msec: 3152 + hash: "692682e82347936f87a66484b428e959" + } + Frame { + msec: 3168 + hash: "cf4005c08789762ad21be1a1d78755c9" + } + Frame { + msec: 3184 + hash: "566184563091626bb20ae679e3ce3b91" + } + Frame { + msec: 3200 + hash: "f88a24ad3bbc2699924bb9a7ff6490b3" + } + Frame { + msec: 3216 + hash: "23f3f63d07b2bdc2b82ff4e8606a634d" + } + Frame { + msec: 3232 + hash: "fe121c71ce469ec6f0bf957eb2f0447b" + } + Frame { + msec: 3248 + hash: "ba217690a33c701afe11842aa8105cbb" + } + Frame { + msec: 3264 + hash: "e5c7c1323108f13ba26f5198cc62c137" + } + Frame { + msec: 3280 + hash: "664f76d3d0008b56be2790c470befc91" + } + Frame { + msec: 3296 + hash: "b3f54070ba64b983ccd2a15941ef4c35" + } + Frame { + msec: 3312 + hash: "8a0ba2ae36ad3811778f3a3bc55743f5" + } + Frame { + msec: 3328 + hash: "bfdc71733ca45a2ba2e8abf751554a62" + } + Frame { + msec: 3344 + hash: "686e4d7bb5ae148d37fc2a1f6004a33a" + } + Frame { + msec: 3360 + hash: "29c553d9fe42fdbbd019d0ead61dffa0" + } + Frame { + msec: 3376 + hash: "bfa2b72c6554a2ed80a3b86f2cbed986" + } + Frame { + msec: 3392 + hash: "074ff90417a947f0a04926d5675d073b" + } + Frame { + msec: 3408 + hash: "6f56f9e0aa40149156ca71d6f8d4476a" + } + Frame { + msec: 3424 + hash: "950ce749bbf572021de2dd1688cb87e6" + } + Frame { + msec: 3440 + hash: "2d0903bd71862dc6f28bd702d955ae99" + } + Frame { + msec: 3456 + hash: "2733adae56728f1b744a4086ecb98052" + } + Frame { + msec: 3472 + hash: "779859d739e799bba15beeb97d18e682" + } + Frame { + msec: 3488 + hash: "9074386cfabe136b8839637e5cd58f57" + } + Frame { + msec: 3504 + hash: "fa5bcbf20c6ad0a218f23d98961229a1" + } + Frame { + msec: 3520 + hash: "5406c94da1717eaa5eb0010564216059" + } + Frame { + msec: 3536 + hash: "27d0a3c3a33c04df843bebd72ef79824" + } + Frame { + msec: 3552 + hash: "270df9c99c2679071b854b3d82337f79" + } + Frame { + msec: 3568 + hash: "5b3945505443a67e7a91f66fe42b4fe3" + } + Frame { + msec: 3584 + hash: "9a2f8565c354cb366725368ed323ccf4" + } + Frame { + msec: 3600 + hash: "6702cb7ccd61c008b511932d7bd5d107" + } + Frame { + msec: 3616 + hash: "f6b86c3a1cc88357f588b6dae11aae30" + } + Frame { + msec: 3632 + hash: "b10c23937f420db72af8abaf126f71c2" + } + Frame { + msec: 3648 + hash: "7d6b0810ffc6e488c8168e19bccb7358" + } + Frame { + msec: 3664 + hash: "c01ef69ec46391909619434e9d9dd0ce" + } + Frame { + msec: 3680 + hash: "a046464fccb0c5ba1f63f8b569821a44" + } + Frame { + msec: 3696 + hash: "8763c526924d882438f9aa9bfb4fe87d" + } + Frame { + msec: 3712 + hash: "dede7a62d6e5c10e8f30caa075bd8dfd" + } + Frame { + msec: 3728 + hash: "3b408e5c986f5bb01d8c3949876b792f" + } + Frame { + msec: 3744 + hash: "0a458f3b17cdd3ea85522779c9346af9" + } + Frame { + msec: 3760 + hash: "fef521f0301cce90af88d37e6d441ec8" + } + Frame { + msec: 3776 + hash: "3d083e0822242b3b37c6839ca91a1f68" + } + Frame { + msec: 3792 + hash: "f8fe013a717e6e61830137bdc78a8b40" + } + Frame { + msec: 3808 + hash: "0ae80ad65dd194043500fa50b5a547a6" + } + Frame { + msec: 3824 + hash: "a53c67fa32ef971eaea202fa5d8a6ad6" + } + Frame { + msec: 3840 + image: "easefollow.3.png" + } + Frame { + msec: 3856 + hash: "41f86bbf0658b127f01e8d46d7ec941b" + } + Frame { + msec: 3872 + hash: "d20f21df127565f9eb87c5d759a638d9" + } + Frame { + msec: 3888 + hash: "85ff94f03cea3e111807e90d062c1367" + } + Frame { + msec: 3904 + hash: "aa637850fe5f05a71ac4c7d31dbb36ee" + } + Frame { + msec: 3920 + hash: "c86a67096c5e62bb73b785cdf6a5b6b1" + } + Frame { + msec: 3936 + hash: "9d53537f2c50a0016bf7bb522b2ec3d8" + } + Frame { + msec: 3952 + hash: "b48630c27c27785ddce568a85d4dc58f" + } + Frame { + msec: 3968 + hash: "01c1bdb6e261cc509f26712b13eeb554" + } + Frame { + msec: 3984 + hash: "af8a44284695fd999acd5944434f0372" + } + Frame { + msec: 4000 + hash: "b156d9d6d5163f007ac4a309d8927ae9" + } + Frame { + msec: 4016 + hash: "2df3715416c3c005f04b66fe1258c0d8" + } + Frame { + msec: 4032 + hash: "96b4a7c6b8542b50fc345b54d38ec82a" + } + Frame { + msec: 4048 + hash: "7e62e757fafa06833444c3a7e1d96ce4" + } + Frame { + msec: 4064 + hash: "5222a8f9366c7d974d0687d05d229069" + } + Frame { + msec: 4080 + hash: "ec96169f4633c3bddfd582feeb8e9ad4" + } + Frame { + msec: 4096 + hash: "cb10db893d1e1cb2a370507dc5679985" + } + Frame { + msec: 4112 + hash: "d7e346c2ac77796bde639bd829b72e85" + } + Frame { + msec: 4128 + hash: "ba5bea8857e4fb444bedd3873563e7db" + } + Frame { + msec: 4144 + hash: "05556fba5d1714f70fd6c2bfb43d213b" + } + Frame { + msec: 4160 + hash: "aeeabf35f9759f045a670a9b9f90dc68" + } + Frame { + msec: 4176 + hash: "131bd453f4c7726e5fdd546252700e2e" + } + Frame { + msec: 4192 + hash: "7c5c3b5bb7a4082e6b9b43640e29f4e2" + } + Frame { + msec: 4208 + hash: "07515e21b7a7895f333e4a8bbd2202eb" + } + Frame { + msec: 4224 + hash: "6cf136f223ac6edd39ba6ed9b4445884" + } + Frame { + msec: 4240 + hash: "84264f5745add8a922101735ed8def84" + } + Frame { + msec: 4256 + hash: "660863d1e4b361f2e5445b417be0d2ad" + } + Frame { + msec: 4272 + hash: "7ceb86f4b16546370d72164d0ca3147c" + } + Frame { + msec: 4288 + hash: "a13e97da9722545ad87ac3c5eb92c497" + } + Frame { + msec: 4304 + hash: "5896b5307cbd609d2062d3607786d40c" + } + Frame { + msec: 4320 + hash: "c8c511115394116e4544c67f615ea5d5" + } + Frame { + msec: 4336 + hash: "59ca5fdf12a735e5c292901b54acccb2" + } + Frame { + msec: 4352 + hash: "155cce2738d34e0eac86f5eb63d638f0" + } + Frame { + msec: 4368 + hash: "83a840c3ae7dbd9a05c17fdd8be07d7a" + } + Frame { + msec: 4384 + hash: "800a15de28b14d88f0ad58fc3f4a2520" + } + Frame { + msec: 4400 + hash: "c8381439a3cd3f9e7f80061023723a6e" + } + Frame { + msec: 4416 + hash: "e3d63000db4b9458b202dece49d1bdba" + } + Frame { + msec: 4432 + hash: "c943e56781695798f3c221f8ab09681a" + } + Frame { + msec: 4448 + hash: "1137ee66d7fbf5a84c33f5ffff15b3dd" + } + Frame { + msec: 4464 + hash: "5a98013cc4462aad18cad8d941f77aa0" + } + Frame { + msec: 4480 + hash: "d0b3748fb49a13c0ad9a68b0e2914921" + } + Frame { + msec: 4496 + hash: "12113f71f9117670acbd7877edded7e0" + } + Frame { + msec: 4512 + hash: "22983424da08cdae7a9c6a8905b37736" + } + Frame { + msec: 4528 + hash: "b2db5618a025cefb2650124c81880c49" + } + Frame { + msec: 4544 + hash: "84fb5e7edc5b42163a83e0cd362b3a46" + } + Frame { + msec: 4560 + hash: "39d6f1ed0f60a0c366c22e1442c455ac" + } + Frame { + msec: 4576 + hash: "702367f6e4aaa2a862e57f9e02a08758" + } + Frame { + msec: 4592 + hash: "ecc75293bc156c560d55cb7d278a4e58" + } + Frame { + msec: 4608 + hash: "e68af8e97ce65376fd7904e599440c92" + } + Frame { + msec: 4624 + hash: "75fe9f766d6cf636cd72d8879a461439" + } + Frame { + msec: 4640 + hash: "162aef147ef4bbb0cd92bd70e4f37f62" + } + Frame { + msec: 4656 + hash: "d879aae8949976c7bad4d97f1e5b5549" + } + Frame { + msec: 4672 + hash: "8a983d7228190721f988de2d72cb3aa2" + } + Frame { + msec: 4688 + hash: "a4f3c63fde664d128cd35b129a4f9a23" + } + Frame { + msec: 4704 + hash: "115fb5f3c9b7f1c28ab379596faba91c" + } + Frame { + msec: 4720 + hash: "ea9600c4d6c77a3b32e59401aa84fe96" + } + Frame { + msec: 4736 + hash: "bd6531fdd9cfd46af2df73bacb31f4c5" + } + Frame { + msec: 4752 + hash: "33bdcf1df50eab5e7963c649fbd32226" + } + Frame { + msec: 4768 + hash: "236e88fb72369a55f9eba4b50712ae85" + } + Frame { + msec: 4784 + hash: "5eb3c14a6296fb3a1c58603b2fc937c8" + } + Frame { + msec: 4800 + image: "easefollow.4.png" + } + Frame { + msec: 4816 + hash: "31d11a1ce6422524241c77603fe53e61" + } + Frame { + msec: 4832 + hash: "44e8b9947026c10b922c84883dd8e889" + } + Frame { + msec: 4848 + hash: "d049e4f7c4bc1849398859a4d630c1b3" + } + Frame { + msec: 4864 + hash: "e83b4757898e4eeef74be8213619fbfa" + } + Frame { + msec: 4880 + hash: "d08f40615f2d5abc6236e856a67575dd" + } + Frame { + msec: 4896 + hash: "d9cb26bf1b8bbafb2aed8f74bd454077" + } + Frame { + msec: 4912 + hash: "aa321b94a6cc53b2ebac80e834c0a908" + } + Frame { + msec: 4928 + hash: "48da37164be156b67a4b3b14e50f2375" + } + Frame { + msec: 4944 + hash: "f522ce7728a4a9e7fad86c72f29bd8f9" + } + Frame { + msec: 4960 + hash: "9bc1d16b4bda596702a3d8a3fad8a5c5" + } + Frame { + msec: 4976 + hash: "5275dccf18745dec6c59b846de17d9ef" + } + Frame { + msec: 4992 + hash: "4eb6babc177b96f69b148d52f56d82d7" + } + Frame { + msec: 5008 + hash: "ccdfb454070ac04c4fe4f3513c52f8c8" + } + Frame { + msec: 5024 + hash: "07f6adad6e8ff4f0eff92c758636a951" + } + Frame { + msec: 5040 + hash: "241e0ad9218d49be477509e008e45548" + } + Frame { + msec: 5056 + hash: "151a482e821779da8a61063f1cc73f8c" + } + Frame { + msec: 5072 + hash: "1499d207c5a3a9bc7bbb84d9c5e35578" + } + Frame { + msec: 5088 + hash: "c253753f653157a5058ef071f16b8bbb" + } + Frame { + msec: 5104 + hash: "ec9fea5a870724a106b952edef7fb466" + } + Frame { + msec: 5120 + hash: "99b673f8ed049d31a2aecabcc46d841d" + } + Frame { + msec: 5136 + hash: "61e77fea693ea55aafbdc94c40c3ab33" + } + Frame { + msec: 5152 + hash: "53e44a3732ee6858d5bd596b4c5d5305" + } + Frame { + msec: 5168 + hash: "5b25d3894a56dc4f4a0aa8f88cb69e23" + } + Frame { + msec: 5184 + hash: "5683ad02f1b9126f4e4ff6b03044fdc6" + } + Frame { + msec: 5200 + hash: "0a3ec255575ec1b70e0b10cf59c7c5fd" + } + Frame { + msec: 5216 + hash: "0f5f46fe3fdf42d4651891f13c8afc7e" + } + Frame { + msec: 5232 + hash: "b6955407245c73e356a460d99dad77be" + } + Frame { + msec: 5248 + hash: "6018b53414921943b37c33fa04a29697" + } + Frame { + msec: 5264 + hash: "ff184d349ce0b648f8c1fce91ae997f6" + } + Frame { + msec: 5280 + hash: "9c112a3a785d970593887eeab72fa7fe" + } + Frame { + msec: 5296 + hash: "00384fb20d4c6cd6236d519d2d734cc3" + } + Frame { + msec: 5312 + hash: "601ea99400e5f50ee9a5a4b74b6f3017" + } + Frame { + msec: 5328 + hash: "9afed04bf7eca24d9b6d31ac84ae59c2" + } + Frame { + msec: 5344 + hash: "1983319c8043bfe403513af7ccb5b924" + } + Frame { + msec: 5360 + hash: "b0244e4e1b61202ede78405415c22bca" + } + Frame { + msec: 5376 + hash: "ec5516b1aaeace8784b04649c51ab40b" + } + Frame { + msec: 5392 + hash: "8ff7d2001594abb588f769bab15406d7" + } + Frame { + msec: 5408 + hash: "64d5fd96a1726aa5276f9b508566676f" + } + Frame { + msec: 5424 + hash: "ab49497a6c825038354f076bdbbbc235" + } + Frame { + msec: 5440 + hash: "6b821e43be932800b20af58a7b5a1ff7" + } + Frame { + msec: 5456 + hash: "683a2902300f930e2a81a82dc37c583b" + } + Frame { + msec: 5472 + hash: "86d7946d7fbb66369ccbf26430939225" + } + Frame { + msec: 5488 + hash: "fb38f5fb6555fc14e95a47c595a6ea0c" + } + Frame { + msec: 5504 + hash: "3878f685d9fa3299e9ffe78c22595387" + } + Frame { + msec: 5520 + hash: "b48840a68ff007901b02332c7177f315" + } + Frame { + msec: 5536 + hash: "9d847abc99220b04aceef12e5c09aac0" + } + Frame { + msec: 5552 + hash: "9893ac89fda64d96ec4140c3c87e17a5" + } + Frame { + msec: 5568 + hash: "cd94e1c36e6be9877cd9c12df42bd968" + } + Frame { + msec: 5584 + hash: "c1ce5e53b74af022dc103ad74ff5f1af" + } + Frame { + msec: 5600 + hash: "b3630e08eac02a9578a00b01baabaaba" + } + Frame { + msec: 5616 + hash: "0eb9241aa1f9526c1e24ba76d630805c" + } + Frame { + msec: 5632 + hash: "1b532ae7f9253469467522d4ca66c47b" + } + Frame { + msec: 5648 + hash: "7e6e49079ed6330da2e337a5e4ffd730" + } + Frame { + msec: 5664 + hash: "0391d668f4b906b244a5f5c1713573c2" + } + Frame { + msec: 5680 + hash: "8070fa3280d0d64bf976d4a276359c4c" + } + Frame { + msec: 5696 + hash: "f7d0d36a2d40c798f56ac7ecc1effca6" + } + Frame { + msec: 5712 + hash: "9f8e35ee5080e811c670c480a9c2bd9f" + } + Frame { + msec: 5728 + hash: "c7fea75a43a59a11aa504df32afcdaf8" + } + Frame { + msec: 5744 + hash: "7e549a93ffc6ddcc3d8111f10c05b29e" + } + Frame { + msec: 5760 + image: "easefollow.5.png" + } + Frame { + msec: 5776 + hash: "92d298262f610a2dafa095e3d67c80af" + } + Frame { + msec: 5792 + hash: "db8826b0b2feece0999863b8827a6234" + } + Frame { + msec: 5808 + hash: "12c7050e8094bb39212aed0163666d1a" + } + Frame { + msec: 5824 + hash: "69531beace5c749bf90160a4b25f736a" + } + Frame { + msec: 5840 + hash: "ce873e4dbc8853183b54d59991b2e030" + } + Frame { + msec: 5856 + hash: "fa1078973634578d69527402b11fb7e0" + } + Frame { + msec: 5872 + hash: "1e3b3db590567c0afd1913101192cda9" + } + Frame { + msec: 5888 + hash: "7b9e097018278b784973a546da3d401a" + } + Frame { + msec: 5904 + hash: "a7b0667093888480de6697280aeea9ba" + } + Frame { + msec: 5920 + hash: "e381f2422ead86575abf643b0b0c9797" + } + Frame { + msec: 5936 + hash: "44b08f5a0de2a6955e02f67753f409c8" + } + Frame { + msec: 5952 + hash: "db04665e58448ecc7f95baa3e4ea79a5" + } + Frame { + msec: 5968 + hash: "0e4aae728d8d543538a9446c41e18e91" + } + Frame { + msec: 5984 + hash: "e3cd1bbb1d9963e5c74d36e526a871b0" + } + Frame { + msec: 6000 + hash: "bcd893a0e200ddda4e1468c159018865" + } + Frame { + msec: 6016 + hash: "9c5293356aa6312f909e655e9bcf961b" + } + Frame { + msec: 6032 + hash: "0bab7b9166f6af554d4fa0badeec739e" + } + Frame { + msec: 6048 + hash: "e74996581f0aaeced118c5cbfd977d90" + } + Frame { + msec: 6064 + hash: "5d128eb20a2a23da8c2d9a35293e5769" + } + Frame { + msec: 6080 + hash: "ebbbc343698287faf7ffa7526a726b54" + } + Frame { + msec: 6096 + hash: "d812172192cc19590f9a2d7dbf970439" + } + Frame { + msec: 6112 + hash: "60263addb1b4b5ac43f8199b8ed77e40" + } + Frame { + msec: 6128 + hash: "702a1ff2876eaaa59359811bb6437c5b" + } + Frame { + msec: 6144 + hash: "8f81dc43decce5094ee7a089f0009730" + } + Frame { + msec: 6160 + hash: "efda5dd9edd83a0da089d0b28806c6b6" + } + Frame { + msec: 6176 + hash: "7274a33a7a5272d7abdaf41f4b2bf664" + } + Frame { + msec: 6192 + hash: "0cc80077476e721a3da85c17cc56a65e" + } + Frame { + msec: 6208 + hash: "e65a534f0e7e70520a9c2cfa09ee8159" + } + Frame { + msec: 6224 + hash: "b05b514c63bd8998785382e6a9cbd849" + } + Frame { + msec: 6240 + hash: "10a04d641e0cc65c120d8bcf2f3e54c8" + } + Frame { + msec: 6256 + hash: "68418e2206a496dd15a05b50fec6f87e" + } + Frame { + msec: 6272 + hash: "6549e0989e1c86e3a7eb0dcc8dd31380" + } + Frame { + msec: 6288 + hash: "bd0193c2cbc8958f674f4ec52a693b72" + } + Frame { + msec: 6304 + hash: "746440b45a3688dbd32b34c57454e956" + } + Frame { + msec: 6320 + hash: "6b54ee8af30be2178e8b3afab5dcb4c7" + } + Frame { + msec: 6336 + hash: "ba2fbad3fe2fe25ec0c0c542659168dc" + } + Frame { + msec: 6352 + hash: "84bd72703bd8200f8f090783d06ae451" + } + Frame { + msec: 6368 + hash: "17c9fb063280c2ee4cb4a13273bbb199" + } + Frame { + msec: 6384 + hash: "df28fd55719f5c2d164596d02c2faff2" + } + Frame { + msec: 6400 + hash: "c2e280e78e892200d40022d17ce695b7" + } + Frame { + msec: 6416 + hash: "c657caa0c5158e178ec5df80bbad6bcb" + } + Frame { + msec: 6432 + hash: "d91f4f6ec6503fe8280f9b02dd11e64a" + } + Frame { + msec: 6448 + hash: "0fb9400cdca9dbd4035fbf8af9952360" + } + Frame { + msec: 6464 + hash: "cac0e1b4aa094306b95f90ede4705391" + } + Frame { + msec: 6480 + hash: "e60a4bb14300a937a767effee931c60f" + } + Frame { + msec: 6496 + hash: "8b461397e3f210ee7e9305dcab2af2db" + } + Frame { + msec: 6512 + hash: "6ce9ec0942dd06c9f73929a7e176852c" + } + Frame { + msec: 6528 + hash: "da36e254635eea854a6552ba008117f9" + } + Frame { + msec: 6544 + hash: "0bec6402b5eb09d05ce8e9ff5253ea8d" + } + Frame { + msec: 6560 + hash: "72f6610527d395ca590eda166ef6bc4e" + } + Frame { + msec: 6576 + hash: "622ae3fd47adb2432e2a40d3c5539393" + } + Frame { + msec: 6592 + hash: "0b18c49e2bbf9370216e06b555faf183" + } + Frame { + msec: 6608 + hash: "0c090bb975fb883301b52479fd6f5fdf" + } + Frame { + msec: 6624 + hash: "c4205d7ecb7327426d9591e77247acab" + } + Frame { + msec: 6640 + hash: "f0e0075243e4b8aa97056248fe6033ed" + } + Frame { + msec: 6656 + hash: "47f99b40a8764ee9d9e429061fb7acb2" + } + Frame { + msec: 6672 + hash: "49e8c1e974b0716570d85109b53817a5" + } + Frame { + msec: 6688 + hash: "72f981bad831b6ed858009527902f734" + } + Frame { + msec: 6704 + hash: "e959a0493b06369a429f90f66cb65977" + } + Frame { + msec: 6720 + image: "easefollow.6.png" + } + Frame { + msec: 6736 + hash: "93470d983282f24425558f47ad705154" + } + Frame { + msec: 6752 + hash: "cdccbe1a7c7abd4a6a6ee754ed0c9759" + } + Frame { + msec: 6768 + hash: "0e1b7b5332a9fcdb492db5314a2a0267" + } + Frame { + msec: 6784 + hash: "1e1ffe3439aab51d0b325474e7d8dc28" + } + Frame { + msec: 6800 + hash: "e8e7e9b5871caf77f15678616d6c9c8a" + } + Frame { + msec: 6816 + hash: "9771fff3b7752154d093c038bea73d28" + } + Frame { + msec: 6832 + hash: "1af851ea214cbddb0e3a743084a5cf6b" + } + Frame { + msec: 6848 + hash: "1566182a7e29bbb738705a90c4909617" + } + Frame { + msec: 6864 + hash: "feed650e1d948fe622234d212fb745f2" + } + Frame { + msec: 6880 + hash: "3cd3d063275b91f9680717421c118ba4" + } + Frame { + msec: 6896 + hash: "c1f088801334762cd499e7cc70e1e59a" + } + Frame { + msec: 6912 + hash: "e8f8d153e7a027a5092a9209411d97f7" + } + Frame { + msec: 6928 + hash: "f11747c3533b4b2fc77a64ca0cace8b0" + } + Frame { + msec: 6944 + hash: "21618c67a2a8bbce86fc872060ad40e8" + } + Frame { + msec: 6960 + hash: "02da96335db74b87ceefe91b1dfe72e6" + } + Frame { + msec: 6976 + hash: "2b2e4143143ead8dea5865fd782f1775" + } + Frame { + msec: 6992 + hash: "13e710900b05e26cdb030b1e2b2be715" + } + Frame { + msec: 7008 + hash: "29e8995d17aac4d02034debcbb9fcb98" + } + Frame { + msec: 7024 + hash: "1099db1b3e4c69e84c6ab1b7c311bf1e" + } + Frame { + msec: 7040 + hash: "cc7cb720043334f1eeb385dce4389dc2" + } + Frame { + msec: 7056 + hash: "34c7a62c1bc7261e2fd31c40068b37a7" + } + Frame { + msec: 7072 + hash: "7fafbe05cbcaa21893e3aa0f1fcfb5a0" + } + Key { + type: 6 + key: 16777249 + modifiers: 67108864 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 7088 + hash: "5b26c8cf047706633795a8ed3e703a89" + } + Frame { + msec: 7104 + hash: "e0774bf9e74d0cde81c5cb216a9258fc" + } + Frame { + msec: 7120 + hash: "0870262f643245e13f4fba79fd575897" + } + Frame { + msec: 7136 + hash: "8faf0d050bb435ade8af5012c1a6b0dc" + } + Frame { + msec: 7152 + hash: "382c037895cc39a6870db57b5016c01f" + } + Frame { + msec: 7168 + hash: "f1f5a2cbc103ab1bee9f537fa8266e03" + } +} diff --git a/tests/auto/declarative/visual/qmleasefollow/easefollow.qml b/tests/auto/declarative/visual/qmleasefollow/easefollow.qml new file mode 100644 index 0000000..d0fac42 --- /dev/null +++ b/tests/auto/declarative/visual/qmleasefollow/easefollow.qml @@ -0,0 +1,40 @@ +import Qt 4.6 + +Rectangle { + width: 800; height: 240; color: "gray" + + Rectangle { + id: rect + width: 50; height: 20; y: 30; color: "black" + x: SequentialAnimation { + running: true; repeat: true + NumberAnimation { from: 50; to: 700; duration: 2000 } + NumberAnimation { from: 700; to: 50; duration: 2000 } + } + } + + Rectangle { + width: 50; height: 20; y: 60; color: "red" + x: EaseFollow { source: rect.x; velocity: 400 } + } + + Rectangle { + width: 50; height: 20; y: 90; color: "yellow" + x: EaseFollow { source: rect.x; velocity: 300; reversingMode: EaseFollow.Immediate } + } + + Rectangle { + width: 50; height: 20; y: 120; color: "green" + x: EaseFollow { source: rect.x; reversingMode: EaseFollow.Sync } + } + + Rectangle { + width: 50; height: 20; y: 150; color: "purple" + x: EaseFollow { source: rect.x; maximumEasingTime: 200 } + } + + Rectangle { + width: 50; height: 20; y: 180; color: "blue" + x: EaseFollow { source: rect.x; duration: 300 } + } +} diff --git a/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview.0.png b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview.0.png Binary files differnew file mode 100644 index 0000000..6c82777 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview.0.png diff --git a/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview.1.png b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview.1.png Binary files differnew file mode 100644 index 0000000..07b1f7c --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview.1.png diff --git a/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview.2.png b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview.2.png Binary files differnew file mode 100644 index 0000000..f2f08c0 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview.2.png diff --git a/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview.3.png b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview.3.png Binary files differnew file mode 100644 index 0000000..08649f9 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview.3.png diff --git a/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview.4.png b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview.4.png Binary files differnew file mode 100644 index 0000000..f9c2f17 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview.4.png diff --git a/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview.5.png b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview.5.png Binary files differnew file mode 100644 index 0000000..52ec0bd --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview.5.png diff --git a/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview.6.png b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview.6.png Binary files differnew file mode 100644 index 0000000..3fe25be --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview.6.png diff --git a/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview.7.png b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview.7.png Binary files differnew file mode 100644 index 0000000..4cc12a6 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview.7.png diff --git a/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview.8.png b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview.8.png Binary files differnew file mode 100644 index 0000000..2267f23 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview.8.png diff --git a/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview.9.png b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview.9.png Binary files differnew file mode 100644 index 0000000..6c82777 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview.9.png diff --git a/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview.qml b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview.qml new file mode 100644 index 0000000..c7ac52d --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview.qml @@ -0,0 +1,2859 @@ +import Qt.VisualTest 4.6 + +VisualTest { + Frame { + msec: 0 + } + Frame { + msec: 16 + hash: "c33447c78ea64452ec3cd1696fb502eb" + } + Frame { + msec: 32 + hash: "c33447c78ea64452ec3cd1696fb502eb" + } + Frame { + msec: 48 + hash: "c33447c78ea64452ec3cd1696fb502eb" + } + Frame { + msec: 64 + hash: "c33447c78ea64452ec3cd1696fb502eb" + } + Frame { + msec: 80 + hash: "c33447c78ea64452ec3cd1696fb502eb" + } + Frame { + msec: 96 + hash: "c33447c78ea64452ec3cd1696fb502eb" + } + Frame { + msec: 112 + hash: "c33447c78ea64452ec3cd1696fb502eb" + } + Frame { + msec: 128 + hash: "c33447c78ea64452ec3cd1696fb502eb" + } + Frame { + msec: 144 + hash: "c33447c78ea64452ec3cd1696fb502eb" + } + Frame { + msec: 160 + hash: "c33447c78ea64452ec3cd1696fb502eb" + } + Frame { + msec: 176 + hash: "c33447c78ea64452ec3cd1696fb502eb" + } + Frame { + msec: 192 + hash: "c33447c78ea64452ec3cd1696fb502eb" + } + Frame { + msec: 208 + hash: "c33447c78ea64452ec3cd1696fb502eb" + } + Frame { + msec: 224 + hash: "c33447c78ea64452ec3cd1696fb502eb" + } + Frame { + msec: 240 + hash: "c33447c78ea64452ec3cd1696fb502eb" + } + Frame { + msec: 256 + hash: "c33447c78ea64452ec3cd1696fb502eb" + } + Frame { + msec: 272 + hash: "c33447c78ea64452ec3cd1696fb502eb" + } + Frame { + msec: 288 + hash: "c33447c78ea64452ec3cd1696fb502eb" + } + Frame { + msec: 304 + hash: "c33447c78ea64452ec3cd1696fb502eb" + } + Frame { + msec: 320 + hash: "c33447c78ea64452ec3cd1696fb502eb" + } + Frame { + msec: 336 + hash: "c33447c78ea64452ec3cd1696fb502eb" + } + Frame { + msec: 352 + hash: "c33447c78ea64452ec3cd1696fb502eb" + } + Frame { + msec: 368 + hash: "c33447c78ea64452ec3cd1696fb502eb" + } + Frame { + msec: 384 + hash: "c33447c78ea64452ec3cd1696fb502eb" + } + Frame { + msec: 400 + hash: "c33447c78ea64452ec3cd1696fb502eb" + } + Frame { + msec: 416 + hash: "c33447c78ea64452ec3cd1696fb502eb" + } + Frame { + msec: 432 + hash: "c33447c78ea64452ec3cd1696fb502eb" + } + Key { + type: 6 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 448 + hash: "96ad89eafa7f99269518a192573af91b" + } + Frame { + msec: 464 + hash: "735b00b968d0e2ea1f34cc0bdc028a8e" + } + Frame { + msec: 480 + hash: "ce37c8e15fbb1aea72aff9629683fa96" + } + Frame { + msec: 496 + hash: "a3f2471ef4ceac77a1c20ac327550d8d" + } + Frame { + msec: 512 + hash: "28f120bd3bda9552dbc8cc908409c67d" + } + Frame { + msec: 528 + hash: "f21cf0ed746fa48e67dc90c70c5bbae8" + } + Key { + type: 7 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 544 + hash: "485d55730366b68e01582879f6970fa1" + } + Frame { + msec: 560 + hash: "700e53c78b28993dce5dafb4035f4760" + } + Frame { + msec: 576 + hash: "1e538e175a5e402e2334cf354392e8a7" + } + Frame { + msec: 592 + hash: "0fbfba93eebaf05ae60067b365b6b4bc" + } + Frame { + msec: 608 + hash: "7b1893397b76b0c95094eeca1dd21446" + } + Frame { + msec: 624 + hash: "7b1893397b76b0c95094eeca1dd21446" + } + Frame { + msec: 640 + hash: "7b1893397b76b0c95094eeca1dd21446" + } + Frame { + msec: 656 + hash: "7b1893397b76b0c95094eeca1dd21446" + } + Frame { + msec: 672 + hash: "7b1893397b76b0c95094eeca1dd21446" + } + Frame { + msec: 688 + hash: "7b1893397b76b0c95094eeca1dd21446" + } + Frame { + msec: 704 + hash: "7b1893397b76b0c95094eeca1dd21446" + } + Key { + type: 6 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 720 + hash: "25e48099a8194ed2674651818d854c61" + } + Frame { + msec: 736 + hash: "b75d02dfc238ba2292306ca1421279c3" + } + Frame { + msec: 752 + hash: "7e48b7d9c1291b4e438c81f44228d8ad" + } + Frame { + msec: 768 + hash: "fe4b009abe081a6eaeab6ef9e996f3fd" + } + Frame { + msec: 784 + hash: "edea8c305fe88708dbafc03e427caa09" + } + Frame { + msec: 800 + hash: "7b58803f12d0ab893acf539799d79e31" + } + Frame { + msec: 816 + hash: "9b56c3d1d140114dcc57d0a8568e9b95" + } + Key { + type: 7 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 832 + hash: "35e38e273dbc8e565917b21d00fc1530" + } + Frame { + msec: 848 + hash: "116e294391333e8780daeca54c3d51ea" + } + Frame { + msec: 864 + hash: "6219676215f82540d7a53b2a8aa60279" + } + Frame { + msec: 880 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 896 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 912 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 928 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 944 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 960 + image: "gridview.0.png" + } + Frame { + msec: 976 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 992 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 1008 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 1024 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 1040 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 1056 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 1072 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 1088 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 1104 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 1120 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 1136 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 1152 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Key { + type: 6 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 1168 + hash: "2667c2596de97dc15353158eba03495f" + } + Frame { + msec: 1184 + hash: "6a7b64e1427dcb7e438aa09a739cbc7b" + } + Frame { + msec: 1200 + hash: "5bad6dc745958f5827403ea593c78752" + } + Key { + type: 7 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 1216 + hash: "b393401219ada7d094a451dba8af3f1a" + } + Frame { + msec: 1232 + hash: "ba656452f8adf3d1ca7db9286274c37f" + } + Frame { + msec: 1248 + hash: "1e9725c8c364a491f34035fad1f77c63" + } + Frame { + msec: 1264 + hash: "a0aef0b65446dec0673b5cec3a260390" + } + Frame { + msec: 1280 + hash: "d60c11a5d376af0831d6f05f2a839a92" + } + Frame { + msec: 1296 + hash: "1dd2c456c6ee9cc8f9be0e9f3617d44b" + } + Frame { + msec: 1312 + hash: "56208e6551e2f4202bab2d62a1cf46a2" + } + Frame { + msec: 1328 + hash: "caa3c1a106d549e6bb94a1746bd7a53c" + } + Frame { + msec: 1344 + hash: "caa3c1a106d549e6bb94a1746bd7a53c" + } + Frame { + msec: 1360 + hash: "caa3c1a106d549e6bb94a1746bd7a53c" + } + Frame { + msec: 1376 + hash: "caa3c1a106d549e6bb94a1746bd7a53c" + } + Frame { + msec: 1392 + hash: "caa3c1a106d549e6bb94a1746bd7a53c" + } + Frame { + msec: 1408 + hash: "caa3c1a106d549e6bb94a1746bd7a53c" + } + Frame { + msec: 1424 + hash: "caa3c1a106d549e6bb94a1746bd7a53c" + } + Frame { + msec: 1440 + hash: "caa3c1a106d549e6bb94a1746bd7a53c" + } + Frame { + msec: 1456 + hash: "caa3c1a106d549e6bb94a1746bd7a53c" + } + Frame { + msec: 1472 + hash: "caa3c1a106d549e6bb94a1746bd7a53c" + } + Frame { + msec: 1488 + hash: "caa3c1a106d549e6bb94a1746bd7a53c" + } + Frame { + msec: 1504 + hash: "caa3c1a106d549e6bb94a1746bd7a53c" + } + Frame { + msec: 1520 + hash: "caa3c1a106d549e6bb94a1746bd7a53c" + } + Frame { + msec: 1536 + hash: "caa3c1a106d549e6bb94a1746bd7a53c" + } + Frame { + msec: 1552 + hash: "caa3c1a106d549e6bb94a1746bd7a53c" + } + Frame { + msec: 1568 + hash: "caa3c1a106d549e6bb94a1746bd7a53c" + } + Frame { + msec: 1584 + hash: "caa3c1a106d549e6bb94a1746bd7a53c" + } + Frame { + msec: 1600 + hash: "caa3c1a106d549e6bb94a1746bd7a53c" + } + Frame { + msec: 1616 + hash: "caa3c1a106d549e6bb94a1746bd7a53c" + } + Frame { + msec: 1632 + hash: "caa3c1a106d549e6bb94a1746bd7a53c" + } + Frame { + msec: 1648 + hash: "caa3c1a106d549e6bb94a1746bd7a53c" + } + Key { + type: 6 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 1664 + hash: "f0f00d22d15ed9828db7b5f3a3669fe9" + } + Frame { + msec: 1680 + hash: "153e7984089530bbd052c9e4f62eb14c" + } + Frame { + msec: 1696 + hash: "0525d40cc58d054a3abd7ee2486576f8" + } + Frame { + msec: 1712 + hash: "8c23d5245774ab5252c98c19c33f8171" + } + Frame { + msec: 1728 + hash: "5ca243794d1350f04cf973d4bfc8ab89" + } + Frame { + msec: 1744 + hash: "d19b7f4c0897aba498e122d83b4cbbf1" + } + Frame { + msec: 1760 + hash: "99e41460dd8efc6e5c3faf54b14c3d43" + } + Key { + type: 7 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 1776 + hash: "703469f8b133156ed3aabe02762d66c3" + } + Frame { + msec: 1792 + hash: "1cc2c383e988048db76a80d8d7f5a0e2" + } + Frame { + msec: 1808 + hash: "8e87117c19eb9d6e600c44e0f3869ae1" + } + Frame { + msec: 1824 + hash: "8304d2432168a2ea8a887d9a135b40b4" + } + Frame { + msec: 1840 + hash: "8304d2432168a2ea8a887d9a135b40b4" + } + Frame { + msec: 1856 + hash: "8304d2432168a2ea8a887d9a135b40b4" + } + Frame { + msec: 1872 + hash: "8304d2432168a2ea8a887d9a135b40b4" + } + Frame { + msec: 1888 + hash: "8304d2432168a2ea8a887d9a135b40b4" + } + Frame { + msec: 1904 + hash: "8304d2432168a2ea8a887d9a135b40b4" + } + Frame { + msec: 1920 + image: "gridview.1.png" + } + Frame { + msec: 1936 + hash: "8304d2432168a2ea8a887d9a135b40b4" + } + Frame { + msec: 1952 + hash: "8304d2432168a2ea8a887d9a135b40b4" + } + Frame { + msec: 1968 + hash: "8304d2432168a2ea8a887d9a135b40b4" + } + Frame { + msec: 1984 + hash: "8304d2432168a2ea8a887d9a135b40b4" + } + Key { + type: 6 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 2000 + hash: "4924037ce643d0748b8b2c666e61fd62" + } + Frame { + msec: 2016 + hash: "ef9750584e669a8b2d415d13854e12a6" + } + Frame { + msec: 2032 + hash: "69937eacef6e6b11ad1d5741c69a1faa" + } + Frame { + msec: 2048 + hash: "a1bd870fffd95a0604dd8e170e571632" + } + Frame { + msec: 2064 + hash: "a3a72386594aacc88977cdaa6441df48" + } + Frame { + msec: 2080 + hash: "6d8e89de38d52f0f0f871dfa18361cb5" + } + Key { + type: 7 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 2096 + hash: "96cfb1eb6893fac86c9434d1ffb82fcb" + } + Frame { + msec: 2112 + hash: "5e11df1660634ff317be474118174ec5" + } + Frame { + msec: 2128 + hash: "2eb75858b50c3a9a80673ab89014ed63" + } + Frame { + msec: 2144 + hash: "3ff5d66f7902af92d49ebebf04d16c26" + } + Frame { + msec: 2160 + hash: "570da61e2d48acd11474fe005110ab4b" + } + Frame { + msec: 2176 + hash: "570da61e2d48acd11474fe005110ab4b" + } + Frame { + msec: 2192 + hash: "570da61e2d48acd11474fe005110ab4b" + } + Frame { + msec: 2208 + hash: "570da61e2d48acd11474fe005110ab4b" + } + Frame { + msec: 2224 + hash: "570da61e2d48acd11474fe005110ab4b" + } + Frame { + msec: 2240 + hash: "570da61e2d48acd11474fe005110ab4b" + } + Frame { + msec: 2256 + hash: "570da61e2d48acd11474fe005110ab4b" + } + Frame { + msec: 2272 + hash: "570da61e2d48acd11474fe005110ab4b" + } + Frame { + msec: 2288 + hash: "570da61e2d48acd11474fe005110ab4b" + } + Frame { + msec: 2304 + hash: "570da61e2d48acd11474fe005110ab4b" + } + Frame { + msec: 2320 + hash: "570da61e2d48acd11474fe005110ab4b" + } + Frame { + msec: 2336 + hash: "570da61e2d48acd11474fe005110ab4b" + } + Key { + type: 6 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 2352 + hash: "efeda5b2d97e1b7c22e2308250501cb7" + } + Frame { + msec: 2368 + hash: "d6158379b699279f66b94a8418e53af1" + } + Frame { + msec: 2384 + hash: "ab960b0669fa594e0552df623a9136ea" + } + Frame { + msec: 2400 + hash: "0ebf6be1305ee1eb8740f4d0365ef4c5" + } + Frame { + msec: 2416 + hash: "46cde47dffc6f2687c8c643eca09b95d" + } + Frame { + msec: 2432 + hash: "2b8698ce02a6964115d960ae19f40c37" + } + Frame { + msec: 2448 + hash: "ff1e7d800bb27b41710c50554adc1091" + } + Key { + type: 7 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 2464 + hash: "5837b3aca09038cae23dcb149acc8b0b" + } + Frame { + msec: 2480 + hash: "dbe7c571cdbdb9de4fd01faa6d5374cf" + } + Frame { + msec: 2496 + hash: "f431abcaf05f49ead909296d7649f8a9" + } + Frame { + msec: 2512 + hash: "043583b19c921740dbc990afd4f508ed" + } + Frame { + msec: 2528 + hash: "043583b19c921740dbc990afd4f508ed" + } + Frame { + msec: 2544 + hash: "043583b19c921740dbc990afd4f508ed" + } + Frame { + msec: 2560 + hash: "043583b19c921740dbc990afd4f508ed" + } + Frame { + msec: 2576 + hash: "043583b19c921740dbc990afd4f508ed" + } + Frame { + msec: 2592 + hash: "043583b19c921740dbc990afd4f508ed" + } + Frame { + msec: 2608 + hash: "043583b19c921740dbc990afd4f508ed" + } + Frame { + msec: 2624 + hash: "043583b19c921740dbc990afd4f508ed" + } + Frame { + msec: 2640 + hash: "043583b19c921740dbc990afd4f508ed" + } + Frame { + msec: 2656 + hash: "043583b19c921740dbc990afd4f508ed" + } + Frame { + msec: 2672 + hash: "043583b19c921740dbc990afd4f508ed" + } + Frame { + msec: 2688 + hash: "043583b19c921740dbc990afd4f508ed" + } + Frame { + msec: 2704 + hash: "043583b19c921740dbc990afd4f508ed" + } + Frame { + msec: 2720 + hash: "043583b19c921740dbc990afd4f508ed" + } + Frame { + msec: 2736 + hash: "043583b19c921740dbc990afd4f508ed" + } + Frame { + msec: 2752 + hash: "043583b19c921740dbc990afd4f508ed" + } + Frame { + msec: 2768 + hash: "043583b19c921740dbc990afd4f508ed" + } + Frame { + msec: 2784 + hash: "043583b19c921740dbc990afd4f508ed" + } + Key { + type: 6 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 2800 + hash: "4f2fafdb59db544352e3067d67c0a714" + } + Frame { + msec: 2816 + hash: "4dcd4cdf6f4e305732185ec52cd2f2f6" + } + Frame { + msec: 2832 + hash: "dfd3c29b0520edbbee57dfacfa7e2b30" + } + Frame { + msec: 2848 + hash: "257d3d8bcf78671d35a898befec091cb" + } + Frame { + msec: 2864 + hash: "20e89c544284603943396694abe86756" + } + Frame { + msec: 2880 + image: "gridview.2.png" + } + Frame { + msec: 2896 + hash: "b88c6af89423b32b3a4413035711df03" + } + Key { + type: 7 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 2912 + hash: "e34de13af44c449c9ecc86e06ce01ed2" + } + Frame { + msec: 2928 + hash: "98ffe81129aa7cc7325764221f1dae59" + } + Frame { + msec: 2944 + hash: "db2d545de9879362738e71a02a3d1d26" + } + Frame { + msec: 2960 + hash: "e67ae32a47213b360c1a445bf645dde2" + } + Frame { + msec: 2976 + hash: "e67ae32a47213b360c1a445bf645dde2" + } + Frame { + msec: 2992 + hash: "e67ae32a47213b360c1a445bf645dde2" + } + Frame { + msec: 3008 + hash: "e67ae32a47213b360c1a445bf645dde2" + } + Frame { + msec: 3024 + hash: "e67ae32a47213b360c1a445bf645dde2" + } + Frame { + msec: 3040 + hash: "e67ae32a47213b360c1a445bf645dde2" + } + Frame { + msec: 3056 + hash: "e67ae32a47213b360c1a445bf645dde2" + } + Frame { + msec: 3072 + hash: "e67ae32a47213b360c1a445bf645dde2" + } + Frame { + msec: 3088 + hash: "e67ae32a47213b360c1a445bf645dde2" + } + Frame { + msec: 3104 + hash: "e67ae32a47213b360c1a445bf645dde2" + } + Key { + type: 6 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 3120 + hash: "02d8c90faf56c65252e4f938944bda7b" + } + Frame { + msec: 3136 + hash: "a32994e2320e357241f63b956b6db236" + } + Frame { + msec: 3152 + hash: "9ada466c26c217adbcd7a93df264ed75" + } + Frame { + msec: 3168 + hash: "79d1a3489be95d113e8c611a2ba63456" + } + Frame { + msec: 3184 + hash: "d3aa82455c4ae3ac25097354e132a30f" + } + Frame { + msec: 3200 + hash: "62d12e5933ed4ed048ccafd229f4b2b7" + } + Key { + type: 7 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 3216 + hash: "5bc4ac94ae20e425084d0811dee1ba08" + } + Frame { + msec: 3232 + hash: "6d5113e3732dc7a9172eea3667a01f7b" + } + Frame { + msec: 3248 + hash: "e435a2588b25d3336f290331931f5981" + } + Frame { + msec: 3264 + hash: "bce201adbeb319b181cce139f179d7f0" + } + Frame { + msec: 3280 + hash: "5fa3ec31176bed2de8cb076b87e0be74" + } + Frame { + msec: 3296 + hash: "5fa3ec31176bed2de8cb076b87e0be74" + } + Frame { + msec: 3312 + hash: "5fa3ec31176bed2de8cb076b87e0be74" + } + Frame { + msec: 3328 + hash: "5fa3ec31176bed2de8cb076b87e0be74" + } + Frame { + msec: 3344 + hash: "5fa3ec31176bed2de8cb076b87e0be74" + } + Frame { + msec: 3360 + hash: "5fa3ec31176bed2de8cb076b87e0be74" + } + Frame { + msec: 3376 + hash: "5fa3ec31176bed2de8cb076b87e0be74" + } + Frame { + msec: 3392 + hash: "5fa3ec31176bed2de8cb076b87e0be74" + } + Frame { + msec: 3408 + hash: "5fa3ec31176bed2de8cb076b87e0be74" + } + Frame { + msec: 3424 + hash: "5fa3ec31176bed2de8cb076b87e0be74" + } + Frame { + msec: 3440 + hash: "5fa3ec31176bed2de8cb076b87e0be74" + } + Frame { + msec: 3456 + hash: "5fa3ec31176bed2de8cb076b87e0be74" + } + Key { + type: 6 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 3472 + hash: "8f0f3cd35ae92047f23084f447046eb8" + } + Frame { + msec: 3488 + hash: "ceb12e6c5e9f0566039040d9f3ff587f" + } + Frame { + msec: 3504 + hash: "dfd0c89c3ea73aceefcdafa71609c720" + } + Frame { + msec: 3520 + hash: "8d8ed1a9dc6a9f74dfc81b79f02af4c5" + } + Frame { + msec: 3536 + hash: "d450bd62e03e1e4c7cb66e98ece05f97" + } + Frame { + msec: 3552 + hash: "d1ece2210cd24eedd5361e5c3a162236" + } + Frame { + msec: 3568 + hash: "77589e48b9db95e702055753046319e5" + } + Key { + type: 7 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 3584 + hash: "7793263ecb831a1e63fbd76c8addde03" + } + Frame { + msec: 3600 + hash: "bfa9675f981c37fed27dea100226f61a" + } + Frame { + msec: 3616 + hash: "9780849fe8abd22c32ccafcdd46b0d65" + } + Frame { + msec: 3632 + hash: "e63d987ba303a42046827f14941b444a" + } + Frame { + msec: 3648 + hash: "e63d987ba303a42046827f14941b444a" + } + Frame { + msec: 3664 + hash: "e63d987ba303a42046827f14941b444a" + } + Frame { + msec: 3680 + hash: "e63d987ba303a42046827f14941b444a" + } + Frame { + msec: 3696 + hash: "e63d987ba303a42046827f14941b444a" + } + Frame { + msec: 3712 + hash: "e63d987ba303a42046827f14941b444a" + } + Frame { + msec: 3728 + hash: "e63d987ba303a42046827f14941b444a" + } + Frame { + msec: 3744 + hash: "e63d987ba303a42046827f14941b444a" + } + Frame { + msec: 3760 + hash: "e63d987ba303a42046827f14941b444a" + } + Frame { + msec: 3776 + hash: "e63d987ba303a42046827f14941b444a" + } + Frame { + msec: 3792 + hash: "e63d987ba303a42046827f14941b444a" + } + Frame { + msec: 3808 + hash: "e63d987ba303a42046827f14941b444a" + } + Frame { + msec: 3824 + hash: "e63d987ba303a42046827f14941b444a" + } + Frame { + msec: 3840 + image: "gridview.3.png" + } + Frame { + msec: 3856 + hash: "e63d987ba303a42046827f14941b444a" + } + Frame { + msec: 3872 + hash: "e63d987ba303a42046827f14941b444a" + } + Frame { + msec: 3888 + hash: "e63d987ba303a42046827f14941b444a" + } + Frame { + msec: 3904 + hash: "e63d987ba303a42046827f14941b444a" + } + Frame { + msec: 3920 + hash: "e63d987ba303a42046827f14941b444a" + } + Key { + type: 6 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 3936 + hash: "a61dbcb7d914afe34009085bf37fb8e2" + } + Frame { + msec: 3952 + hash: "89175b83b4f7ee4b5d99219cdc97aa59" + } + Frame { + msec: 3968 + hash: "f524421286503f6175e4ad71dd89145f" + } + Frame { + msec: 3984 + hash: "ca5af7d98a008eccba1e21be0da61f3c" + } + Frame { + msec: 4000 + hash: "77c19e7e17e00787ff0d7a4e7bad7bc8" + } + Frame { + msec: 4016 + hash: "04c8db761e324101ad92e0ac9ceed7d4" + } + Frame { + msec: 4032 + hash: "97a3dcb81349efab6b44d458e83ce5c4" + } + Key { + type: 7 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 4048 + hash: "e86ebc276b88705c97cc9efb66ccc6b2" + } + Frame { + msec: 4064 + hash: "a134bbfd14879f13b288a04d23382348" + } + Frame { + msec: 4080 + hash: "9530ad3f58ad1c66401572869f7d91bc" + } + Frame { + msec: 4096 + hash: "db3d030de94b19ea1db5c60be7c7ca5c" + } + Frame { + msec: 4112 + hash: "db3d030de94b19ea1db5c60be7c7ca5c" + } + Frame { + msec: 4128 + hash: "db3d030de94b19ea1db5c60be7c7ca5c" + } + Frame { + msec: 4144 + hash: "db3d030de94b19ea1db5c60be7c7ca5c" + } + Frame { + msec: 4160 + hash: "db3d030de94b19ea1db5c60be7c7ca5c" + } + Frame { + msec: 4176 + hash: "db3d030de94b19ea1db5c60be7c7ca5c" + } + Frame { + msec: 4192 + hash: "db3d030de94b19ea1db5c60be7c7ca5c" + } + Frame { + msec: 4208 + hash: "db3d030de94b19ea1db5c60be7c7ca5c" + } + Frame { + msec: 4224 + hash: "db3d030de94b19ea1db5c60be7c7ca5c" + } + Key { + type: 6 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 4240 + hash: "980e0fa84fd3bab496623936f5f220a2" + } + Frame { + msec: 4256 + hash: "ed3268911723d664699bbc31317befc1" + } + Frame { + msec: 4272 + hash: "3bfda4b3b0b2d2a97ec1c0b5b3f4da63" + } + Frame { + msec: 4288 + hash: "1616c6def28659d51905564ff83cc112" + } + Frame { + msec: 4304 + hash: "68342f34c18956d3a093f8eeeae6977e" + } + Frame { + msec: 4320 + hash: "ac1b12959e9055a28fe2bda0a12b75bc" + } + Frame { + msec: 4336 + hash: "009b85ff6b86e418c78ed33a5e88d3f1" + } + Key { + type: 7 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 4352 + hash: "59753bc7dc69767fe2109fdc41f20dae" + } + Frame { + msec: 4368 + hash: "1c87d3d8c8d564d4d95a26f57fd28f38" + } + Frame { + msec: 4384 + hash: "4e43b7b6787002c9013010dd74c83f49" + } + Frame { + msec: 4400 + hash: "2476aa1a7191b485a76c76e98c9be2b0" + } + Frame { + msec: 4416 + hash: "2476aa1a7191b485a76c76e98c9be2b0" + } + Frame { + msec: 4432 + hash: "2476aa1a7191b485a76c76e98c9be2b0" + } + Frame { + msec: 4448 + hash: "2476aa1a7191b485a76c76e98c9be2b0" + } + Frame { + msec: 4464 + hash: "2476aa1a7191b485a76c76e98c9be2b0" + } + Frame { + msec: 4480 + hash: "2476aa1a7191b485a76c76e98c9be2b0" + } + Frame { + msec: 4496 + hash: "2476aa1a7191b485a76c76e98c9be2b0" + } + Frame { + msec: 4512 + hash: "2476aa1a7191b485a76c76e98c9be2b0" + } + Frame { + msec: 4528 + hash: "2476aa1a7191b485a76c76e98c9be2b0" + } + Frame { + msec: 4544 + hash: "2476aa1a7191b485a76c76e98c9be2b0" + } + Frame { + msec: 4560 + hash: "2476aa1a7191b485a76c76e98c9be2b0" + } + Frame { + msec: 4576 + hash: "2476aa1a7191b485a76c76e98c9be2b0" + } + Frame { + msec: 4592 + hash: "2476aa1a7191b485a76c76e98c9be2b0" + } + Key { + type: 6 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 4608 + hash: "84de5b5e8b0fba190a783c72967661c7" + } + Frame { + msec: 4624 + hash: "60b696f4913379d28f300fd1b531c6cb" + } + Frame { + msec: 4640 + hash: "d01e651d9094332fd82ad1cea3e93e9d" + } + Frame { + msec: 4656 + hash: "87be4cd7c894b03b2b64c996e915d71f" + } + Frame { + msec: 4672 + hash: "b07fccb0c5565d2feed5a9fcdf8acead" + } + Frame { + msec: 4688 + hash: "3dca3165fd34be549d21fb6c414c67d8" + } + Frame { + msec: 4704 + hash: "5f69f3298f8ca73fa9b3b6e630c60186" + } + Key { + type: 7 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 4720 + hash: "d7f41e9a29d550a7d9a41bb947569abe" + } + Frame { + msec: 4736 + hash: "4ede2e90ad216a2d44580c50a25dea23" + } + Frame { + msec: 4752 + hash: "9b339845ee588b789dc9095c272e0bdf" + } + Frame { + msec: 4768 + hash: "9cdea4790972efaecabd52b435107e69" + } + Frame { + msec: 4784 + hash: "9cdea4790972efaecabd52b435107e69" + } + Frame { + msec: 4800 + image: "gridview.4.png" + } + Frame { + msec: 4816 + hash: "9cdea4790972efaecabd52b435107e69" + } + Frame { + msec: 4832 + hash: "9cdea4790972efaecabd52b435107e69" + } + Frame { + msec: 4848 + hash: "9cdea4790972efaecabd52b435107e69" + } + Frame { + msec: 4864 + hash: "9cdea4790972efaecabd52b435107e69" + } + Frame { + msec: 4880 + hash: "9cdea4790972efaecabd52b435107e69" + } + Frame { + msec: 4896 + hash: "9cdea4790972efaecabd52b435107e69" + } + Frame { + msec: 4912 + hash: "9cdea4790972efaecabd52b435107e69" + } + Frame { + msec: 4928 + hash: "9cdea4790972efaecabd52b435107e69" + } + Frame { + msec: 4944 + hash: "9cdea4790972efaecabd52b435107e69" + } + Frame { + msec: 4960 + hash: "9cdea4790972efaecabd52b435107e69" + } + Frame { + msec: 4976 + hash: "9cdea4790972efaecabd52b435107e69" + } + Frame { + msec: 4992 + hash: "9cdea4790972efaecabd52b435107e69" + } + Frame { + msec: 5008 + hash: "9cdea4790972efaecabd52b435107e69" + } + Frame { + msec: 5024 + hash: "9cdea4790972efaecabd52b435107e69" + } + Frame { + msec: 5040 + hash: "9cdea4790972efaecabd52b435107e69" + } + Frame { + msec: 5056 + hash: "9cdea4790972efaecabd52b435107e69" + } + Frame { + msec: 5072 + hash: "9cdea4790972efaecabd52b435107e69" + } + Frame { + msec: 5088 + hash: "9cdea4790972efaecabd52b435107e69" + } + Frame { + msec: 5104 + hash: "9cdea4790972efaecabd52b435107e69" + } + Frame { + msec: 5120 + hash: "9cdea4790972efaecabd52b435107e69" + } + Frame { + msec: 5136 + hash: "9cdea4790972efaecabd52b435107e69" + } + Frame { + msec: 5152 + hash: "9cdea4790972efaecabd52b435107e69" + } + Key { + type: 6 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 5168 + hash: "d6f0a6d7604bad811eeba13fd7c45368" + } + Frame { + msec: 5184 + hash: "5f92e1531a3f6c21ec82e3c908167fc7" + } + Frame { + msec: 5200 + hash: "5214e99ff052dcdc8f85bad29de92e03" + } + Frame { + msec: 5216 + hash: "d4abed9f0f1115c9a45b0b9b4f54754e" + } + Frame { + msec: 5232 + hash: "cfae8a0281e704b0e62f6bf31b32800f" + } + Frame { + msec: 5248 + hash: "c203f0674596ae690bf19f2d49be62ac" + } + Frame { + msec: 5264 + hash: "2e2c7e05aade104bdc4f6c489b6f0601" + } + Key { + type: 7 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 5280 + hash: "b4b2148b0557dcab3a441165e5e4de5f" + } + Frame { + msec: 5296 + hash: "c5e791d27a42a63d25cdbd492b4af29a" + } + Frame { + msec: 5312 + hash: "0f94ebcb407f8e6ae263bd954f2c8177" + } + Frame { + msec: 5328 + hash: "d9b56b817a411812789881697a28fe4c" + } + Frame { + msec: 5344 + hash: "d9b56b817a411812789881697a28fe4c" + } + Frame { + msec: 5360 + hash: "d9b56b817a411812789881697a28fe4c" + } + Frame { + msec: 5376 + hash: "d9b56b817a411812789881697a28fe4c" + } + Frame { + msec: 5392 + hash: "d9b56b817a411812789881697a28fe4c" + } + Frame { + msec: 5408 + hash: "d9b56b817a411812789881697a28fe4c" + } + Frame { + msec: 5424 + hash: "d9b56b817a411812789881697a28fe4c" + } + Frame { + msec: 5440 + hash: "d9b56b817a411812789881697a28fe4c" + } + Frame { + msec: 5456 + hash: "d9b56b817a411812789881697a28fe4c" + } + Key { + type: 6 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 5472 + hash: "6fdfe69e377da72e04dc130f5677ed2c" + } + Frame { + msec: 5488 + hash: "c041d26d43766fa1735f2ada2a43225b" + } + Frame { + msec: 5504 + hash: "aa62dbd6c6256665ee1b4ef468607978" + } + Frame { + msec: 5520 + hash: "987fcdf6483a83b1242053f4e7fb7a26" + } + Frame { + msec: 5536 + hash: "fbde70c34709b68eb22f5460a8815fba" + } + Frame { + msec: 5552 + hash: "911ddc838ebaf5ade1bb026dff2741ba" + } + Frame { + msec: 5568 + hash: "120bbf35b2a3b756bdeaea0df43e49b2" + } + Key { + type: 7 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 5584 + hash: "ea93e33c079d6dc5fb18c69fb4fed441" + } + Frame { + msec: 5600 + hash: "b9ac8ab01cb59b1fee11967bdb6d2dd6" + } + Frame { + msec: 5616 + hash: "3ff266bf29cbcaa30bc1e7af5dd9866b" + } + Frame { + msec: 5632 + hash: "edd6c3a9493a63674e2d7af5f3e8467e" + } + Frame { + msec: 5648 + hash: "edd6c3a9493a63674e2d7af5f3e8467e" + } + Frame { + msec: 5664 + hash: "edd6c3a9493a63674e2d7af5f3e8467e" + } + Frame { + msec: 5680 + hash: "edd6c3a9493a63674e2d7af5f3e8467e" + } + Frame { + msec: 5696 + hash: "edd6c3a9493a63674e2d7af5f3e8467e" + } + Frame { + msec: 5712 + hash: "edd6c3a9493a63674e2d7af5f3e8467e" + } + Frame { + msec: 5728 + hash: "edd6c3a9493a63674e2d7af5f3e8467e" + } + Frame { + msec: 5744 + hash: "edd6c3a9493a63674e2d7af5f3e8467e" + } + Frame { + msec: 5760 + image: "gridview.5.png" + } + Frame { + msec: 5776 + hash: "edd6c3a9493a63674e2d7af5f3e8467e" + } + Frame { + msec: 5792 + hash: "edd6c3a9493a63674e2d7af5f3e8467e" + } + Frame { + msec: 5808 + hash: "edd6c3a9493a63674e2d7af5f3e8467e" + } + Key { + type: 6 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 5824 + hash: "de1f83d25751639dff42f1755a6534c3" + } + Frame { + msec: 5840 + hash: "edefdea8b2461d03fb97cf5ed66e9b6d" + } + Frame { + msec: 5856 + hash: "cef1886397e3932a511f37571b5011f4" + } + Frame { + msec: 5872 + hash: "05589ad354314d9e04ef90c1addd99f5" + } + Frame { + msec: 5888 + hash: "ff88b52e3755b9b4785d2719ddd4f090" + } + Frame { + msec: 5904 + hash: "f59edc3016b177a2e8faa6612d718b17" + } + Key { + type: 7 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 5920 + hash: "dc673a7cdd927f70b28ebcfe51cd3d89" + } + Frame { + msec: 5936 + hash: "3abec0da85fb663e63ab22188e092827" + } + Frame { + msec: 5952 + hash: "50c2c8ac68cafad7c47b576cd8f4a037" + } + Frame { + msec: 5968 + hash: "06c31b861e2b96e6595b2244d7b3f4d5" + } + Frame { + msec: 5984 + hash: "0aa7ce5ba9c875619a6e4629a0eb4065" + } + Frame { + msec: 6000 + hash: "0aa7ce5ba9c875619a6e4629a0eb4065" + } + Frame { + msec: 6016 + hash: "0aa7ce5ba9c875619a6e4629a0eb4065" + } + Frame { + msec: 6032 + hash: "0aa7ce5ba9c875619a6e4629a0eb4065" + } + Frame { + msec: 6048 + hash: "0aa7ce5ba9c875619a6e4629a0eb4065" + } + Frame { + msec: 6064 + hash: "0aa7ce5ba9c875619a6e4629a0eb4065" + } + Frame { + msec: 6080 + hash: "0aa7ce5ba9c875619a6e4629a0eb4065" + } + Frame { + msec: 6096 + hash: "0aa7ce5ba9c875619a6e4629a0eb4065" + } + Frame { + msec: 6112 + hash: "0aa7ce5ba9c875619a6e4629a0eb4065" + } + Frame { + msec: 6128 + hash: "0aa7ce5ba9c875619a6e4629a0eb4065" + } + Frame { + msec: 6144 + hash: "0aa7ce5ba9c875619a6e4629a0eb4065" + } + Frame { + msec: 6160 + hash: "0aa7ce5ba9c875619a6e4629a0eb4065" + } + Frame { + msec: 6176 + hash: "0aa7ce5ba9c875619a6e4629a0eb4065" + } + Frame { + msec: 6192 + hash: "0aa7ce5ba9c875619a6e4629a0eb4065" + } + Frame { + msec: 6208 + hash: "0aa7ce5ba9c875619a6e4629a0eb4065" + } + Frame { + msec: 6224 + hash: "0aa7ce5ba9c875619a6e4629a0eb4065" + } + Frame { + msec: 6240 + hash: "0aa7ce5ba9c875619a6e4629a0eb4065" + } + Frame { + msec: 6256 + hash: "0aa7ce5ba9c875619a6e4629a0eb4065" + } + Frame { + msec: 6272 + hash: "0aa7ce5ba9c875619a6e4629a0eb4065" + } + Frame { + msec: 6288 + hash: "0aa7ce5ba9c875619a6e4629a0eb4065" + } + Frame { + msec: 6304 + hash: "0aa7ce5ba9c875619a6e4629a0eb4065" + } + Frame { + msec: 6320 + hash: "0aa7ce5ba9c875619a6e4629a0eb4065" + } + Frame { + msec: 6336 + hash: "0aa7ce5ba9c875619a6e4629a0eb4065" + } + Frame { + msec: 6352 + hash: "0aa7ce5ba9c875619a6e4629a0eb4065" + } + Frame { + msec: 6368 + hash: "0aa7ce5ba9c875619a6e4629a0eb4065" + } + Frame { + msec: 6384 + hash: "0aa7ce5ba9c875619a6e4629a0eb4065" + } + Frame { + msec: 6400 + hash: "0aa7ce5ba9c875619a6e4629a0eb4065" + } + Frame { + msec: 6416 + hash: "0aa7ce5ba9c875619a6e4629a0eb4065" + } + Key { + type: 6 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 6432 + hash: "7f52a770775c19e10784b4c5f7874210" + } + Frame { + msec: 6448 + hash: "827cfb74286a2a80aca8b6c5277d6cfd" + } + Frame { + msec: 6464 + hash: "8399231eda9b66821d43a3d8c4c7d645" + } + Frame { + msec: 6480 + hash: "fc163583671f3c4023361460b436c895" + } + Frame { + msec: 6496 + hash: "893dea6496c95c32095ad1d673e500c2" + } + Frame { + msec: 6512 + hash: "808c7403b2cdcc882059da56a2f806fe" + } + Frame { + msec: 6528 + hash: "7466b2e5b86ba8ad46be75818659786c" + } + Key { + type: 7 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 6544 + hash: "dd2561cd780e24401130305d47757a53" + } + Frame { + msec: 6560 + hash: "bee89299532d43fc3e6c3e69c343b381" + } + Frame { + msec: 6576 + hash: "94f8474aedee94098592c05d8fc7d868" + } + Frame { + msec: 6592 + hash: "b6ee51bfa4d4ab7a83cca5c18453f0b8" + } + Frame { + msec: 6608 + hash: "b6ee51bfa4d4ab7a83cca5c18453f0b8" + } + Frame { + msec: 6624 + hash: "b6ee51bfa4d4ab7a83cca5c18453f0b8" + } + Frame { + msec: 6640 + hash: "b6ee51bfa4d4ab7a83cca5c18453f0b8" + } + Frame { + msec: 6656 + hash: "b6ee51bfa4d4ab7a83cca5c18453f0b8" + } + Frame { + msec: 6672 + hash: "b6ee51bfa4d4ab7a83cca5c18453f0b8" + } + Frame { + msec: 6688 + hash: "b6ee51bfa4d4ab7a83cca5c18453f0b8" + } + Frame { + msec: 6704 + hash: "b6ee51bfa4d4ab7a83cca5c18453f0b8" + } + Key { + type: 6 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 6720 + image: "gridview.6.png" + } + Frame { + msec: 6736 + hash: "ccd58be20d47422121d6ef799b927a7a" + } + Frame { + msec: 6752 + hash: "e090c7f39649786a1796870e25bd0f0d" + } + Frame { + msec: 6768 + hash: "acf3dcd9f4a869169dbc1ae7fe60e9d0" + } + Frame { + msec: 6784 + hash: "51795e9a720845e8305d23507785e1ca" + } + Frame { + msec: 6800 + hash: "0d34a43e177e6b73e2ff9155747d0385" + } + Frame { + msec: 6816 + hash: "1876c3cdffc1af01da1aaa0ac636d0a8" + } + Frame { + msec: 6832 + hash: "3131296b6edf4190520e2cdb3f8b936e" + } + Key { + type: 7 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 6848 + hash: "ee92f0a764e5081b130e205a5c362b07" + } + Frame { + msec: 6864 + hash: "8737ea2c60aeb215228c00a7fddd1baa" + } + Frame { + msec: 6880 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 6896 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 6912 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 6928 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 6944 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 6960 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 6976 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 6992 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7008 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7024 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Key { + type: 6 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 7040 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7056 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7072 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7088 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7104 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7120 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7136 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7152 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Key { + type: 7 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 7168 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7184 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7200 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7216 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7232 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7248 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7264 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7280 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7296 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7312 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7328 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7344 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7360 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7376 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7392 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7408 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7424 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7440 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7456 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7472 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7488 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7504 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7520 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7536 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7552 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7568 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7584 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Key { + type: 6 + key: 16777235 + modifiers: 536870912 + text: "1e" + autorep: false + count: 1 + } + Frame { + msec: 7600 + hash: "ac036f1f5c5ae23ddfca3060dff83f15" + } + Frame { + msec: 7616 + hash: "eb0d1be15f63af6eaf6634b02e5f240a" + } + Frame { + msec: 7632 + hash: "2423c305bebb3449e87c78e8fb447c88" + } + Frame { + msec: 7648 + hash: "f0ede6ea85647728db80878b3e525edc" + } + Frame { + msec: 7664 + hash: "387d127b2b000dc344ee4768cf2d29b2" + } + Frame { + msec: 7680 + image: "gridview.7.png" + } + Frame { + msec: 7696 + hash: "1d0d8100e994c16d7973ad9a97b0068f" + } + Key { + type: 7 + key: 16777235 + modifiers: 536870912 + text: "1e" + autorep: false + count: 1 + } + Frame { + msec: 7712 + hash: "95fb4a6d0331ffc4773e39ec8c3e6511" + } + Frame { + msec: 7728 + hash: "34738f16150228d971972833d4bd5c8f" + } + Frame { + msec: 7744 + hash: "9b71c8dacc530f32d7c6f409928caf5c" + } + Frame { + msec: 7760 + hash: "831efd0970c5c29fbe10b3be7707f915" + } + Frame { + msec: 7776 + hash: "831efd0970c5c29fbe10b3be7707f915" + } + Frame { + msec: 7792 + hash: "831efd0970c5c29fbe10b3be7707f915" + } + Frame { + msec: 7808 + hash: "831efd0970c5c29fbe10b3be7707f915" + } + Frame { + msec: 7824 + hash: "831efd0970c5c29fbe10b3be7707f915" + } + Frame { + msec: 7840 + hash: "831efd0970c5c29fbe10b3be7707f915" + } + Frame { + msec: 7856 + hash: "831efd0970c5c29fbe10b3be7707f915" + } + Frame { + msec: 7872 + hash: "831efd0970c5c29fbe10b3be7707f915" + } + Frame { + msec: 7888 + hash: "831efd0970c5c29fbe10b3be7707f915" + } + Frame { + msec: 7904 + hash: "831efd0970c5c29fbe10b3be7707f915" + } + Frame { + msec: 7920 + hash: "831efd0970c5c29fbe10b3be7707f915" + } + Frame { + msec: 7936 + hash: "831efd0970c5c29fbe10b3be7707f915" + } + Frame { + msec: 7952 + hash: "831efd0970c5c29fbe10b3be7707f915" + } + Frame { + msec: 7968 + hash: "831efd0970c5c29fbe10b3be7707f915" + } + Key { + type: 6 + key: 16777235 + modifiers: 536870912 + text: "1e" + autorep: false + count: 1 + } + Frame { + msec: 7984 + hash: "831efd0970c5c29fbe10b3be7707f915" + } + Frame { + msec: 8000 + hash: "0587fc809c38c3bbe1fbac2960596974" + } + Frame { + msec: 8016 + hash: "d20eba806cf4730a850db4c095fa36f9" + } + Key { + type: 7 + key: 16777235 + modifiers: 536870912 + text: "1e" + autorep: false + count: 1 + } + Frame { + msec: 8032 + hash: "c1663e75ba05b341e1e970a451958ea0" + } + Frame { + msec: 8048 + hash: "ea40cc33b689d6b42fc5a69fa30178e4" + } + Frame { + msec: 8064 + hash: "a07a1c61de1813158ff743cd326ee427" + } + Frame { + msec: 8080 + hash: "6dfddaa340df8999ca77f6a6e4c6c3ce" + } + Frame { + msec: 8096 + hash: "76ca40bb169c1ddc291847d4be2d38d7" + } + Frame { + msec: 8112 + hash: "e44778541b76208981a3944a64235cac" + } + Frame { + msec: 8128 + hash: "fdf45ea650d31957cc675c3bec8bf53e" + } + Frame { + msec: 8144 + hash: "b78cdb727535ab7e567af08abf25e64c" + } + Frame { + msec: 8160 + hash: "b78cdb727535ab7e567af08abf25e64c" + } + Frame { + msec: 8176 + hash: "b78cdb727535ab7e567af08abf25e64c" + } + Frame { + msec: 8192 + hash: "b78cdb727535ab7e567af08abf25e64c" + } + Frame { + msec: 8208 + hash: "b78cdb727535ab7e567af08abf25e64c" + } + Frame { + msec: 8224 + hash: "b78cdb727535ab7e567af08abf25e64c" + } + Frame { + msec: 8240 + hash: "b78cdb727535ab7e567af08abf25e64c" + } + Key { + type: 6 + key: 16777235 + modifiers: 536870912 + text: "1e" + autorep: false + count: 1 + } + Frame { + msec: 8256 + hash: "b78cdb727535ab7e567af08abf25e64c" + } + Frame { + msec: 8272 + hash: "338481e6390f2a61e975084c16427584" + } + Frame { + msec: 8288 + hash: "8923c45c23b1f4250b7d1e483b07a4da" + } + Frame { + msec: 8304 + hash: "b21de834906d0eecea985561e2e41e4f" + } + Frame { + msec: 8320 + hash: "a8c9761cfb20631520ed890cd2648c4b" + } + Frame { + msec: 8336 + hash: "abf96a042ef12190bc48ff49732ef55a" + } + Key { + type: 7 + key: 16777235 + modifiers: 536870912 + text: "1e" + autorep: false + count: 1 + } + Frame { + msec: 8352 + hash: "5b9506dfb038cd26dfc81ecd2406ada9" + } + Frame { + msec: 8368 + hash: "be75b8d39f81b2fdaff01469bfc67d4a" + } + Frame { + msec: 8384 + hash: "488aa2977f349df82b5f6ae5e3619d35" + } + Frame { + msec: 8400 + hash: "d69f17f0ce8537511353d20b59d20de0" + } + Frame { + msec: 8416 + hash: "7647efcc0152cc3d6544106f969ace26" + } + Frame { + msec: 8432 + hash: "7647efcc0152cc3d6544106f969ace26" + } + Frame { + msec: 8448 + hash: "7647efcc0152cc3d6544106f969ace26" + } + Frame { + msec: 8464 + hash: "7647efcc0152cc3d6544106f969ace26" + } + Frame { + msec: 8480 + hash: "7647efcc0152cc3d6544106f969ace26" + } + Frame { + msec: 8496 + hash: "7647efcc0152cc3d6544106f969ace26" + } + Frame { + msec: 8512 + hash: "7647efcc0152cc3d6544106f969ace26" + } + Frame { + msec: 8528 + hash: "7647efcc0152cc3d6544106f969ace26" + } + Frame { + msec: 8544 + hash: "7647efcc0152cc3d6544106f969ace26" + } + Key { + type: 6 + key: 16777235 + modifiers: 536870912 + text: "1e" + autorep: false + count: 1 + } + Frame { + msec: 8560 + hash: "7647efcc0152cc3d6544106f969ace26" + } + Frame { + msec: 8576 + hash: "8f74d33bf95cbf37fdb4521c69373a64" + } + Frame { + msec: 8592 + hash: "e33bb4cd12790c9d9992efdd3e23bee9" + } + Frame { + msec: 8608 + hash: "36f32e34b4093091c4707f26c52896ad" + } + Frame { + msec: 8624 + hash: "5ab5e142f8dc883287c116cedbacfd55" + } + Frame { + msec: 8640 + image: "gridview.8.png" + } + Key { + type: 7 + key: 16777235 + modifiers: 536870912 + text: "1e" + autorep: false + count: 1 + } + Frame { + msec: 8656 + hash: "c74212e45a6c4b6a18caeb6a22350609" + } + Frame { + msec: 8672 + hash: "8919643a7d13677dd902941860093209" + } + Frame { + msec: 8688 + hash: "6f2ab4400fadf51b994351f0975e31fc" + } + Frame { + msec: 8704 + hash: "4798559ce6f9bd7455ed5385d0030763" + } + Frame { + msec: 8720 + hash: "72759bd1e2618c61c42bbe4de3ad3a96" + } + Frame { + msec: 8736 + hash: "72759bd1e2618c61c42bbe4de3ad3a96" + } + Frame { + msec: 8752 + hash: "72759bd1e2618c61c42bbe4de3ad3a96" + } + Frame { + msec: 8768 + hash: "72759bd1e2618c61c42bbe4de3ad3a96" + } + Frame { + msec: 8784 + hash: "72759bd1e2618c61c42bbe4de3ad3a96" + } + Frame { + msec: 8800 + hash: "72759bd1e2618c61c42bbe4de3ad3a96" + } + Frame { + msec: 8816 + hash: "72759bd1e2618c61c42bbe4de3ad3a96" + } + Frame { + msec: 8832 + hash: "72759bd1e2618c61c42bbe4de3ad3a96" + } + Frame { + msec: 8848 + hash: "72759bd1e2618c61c42bbe4de3ad3a96" + } + Frame { + msec: 8864 + hash: "72759bd1e2618c61c42bbe4de3ad3a96" + } + Key { + type: 6 + key: 16777235 + modifiers: 536870912 + text: "1e" + autorep: false + count: 1 + } + Frame { + msec: 8880 + hash: "72759bd1e2618c61c42bbe4de3ad3a96" + } + Frame { + msec: 8896 + hash: "fac81cf6f45cb47abc1fa36d23e39d34" + } + Frame { + msec: 8912 + hash: "862f4deee01183fd38b094da59048b23" + } + Frame { + msec: 8928 + hash: "2f3b147221da30d8857d25fc788b3eac" + } + Frame { + msec: 8944 + hash: "5b295b187c6cfc6aefa51e5efc2c27e3" + } + Frame { + msec: 8960 + hash: "fe3139ddc8fdbc1b0c25bd641f83e833" + } + Key { + type: 7 + key: 16777235 + modifiers: 536870912 + text: "1e" + autorep: false + count: 1 + } + Frame { + msec: 8976 + hash: "8f2a9585dc6248a403aafd0f151d6ba0" + } + Frame { + msec: 8992 + hash: "39eca8cc6bb8ea30cc452dc24f8e46dc" + } + Frame { + msec: 9008 + hash: "8dbbc6026942cb6e572f1cb7e2675713" + } + Frame { + msec: 9024 + hash: "62dfa07b96dd18c6be89822654bf09f3" + } + Frame { + msec: 9040 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9056 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9072 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9088 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9104 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9120 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9136 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9152 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9168 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9184 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9200 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9216 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9232 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9248 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9264 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Key { + type: 6 + key: 16777235 + modifiers: 536870912 + text: "1e" + autorep: false + count: 1 + } + Frame { + msec: 9280 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9296 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9312 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9328 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9344 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9360 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9376 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Key { + type: 7 + key: 16777235 + modifiers: 536870912 + text: "1e" + autorep: false + count: 1 + } + Frame { + msec: 9392 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9408 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9424 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9440 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9456 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9472 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9488 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9504 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9520 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9536 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9552 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9568 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9584 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9600 + image: "gridview.9.png" + } + Frame { + msec: 9616 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9632 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9648 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9664 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9680 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9696 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9712 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9728 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9744 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9760 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Key { + type: 6 + key: 16777249 + modifiers: 67108864 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 9776 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9792 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9808 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9824 + hash: "02c632713d0dc64bff9d8e58f745df95" + } + Frame { + msec: 9840 + hash: "02c632713d0dc64bff9d8e58f745df95" + } +} diff --git a/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.0.png b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.0.png Binary files differnew file mode 100644 index 0000000..3021d58 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.0.png diff --git a/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.1.png b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.1.png Binary files differnew file mode 100644 index 0000000..baeb1a6 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.1.png diff --git a/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.10.png b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.10.png Binary files differnew file mode 100644 index 0000000..b0486e5 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.10.png diff --git a/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.2.png b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.2.png Binary files differnew file mode 100644 index 0000000..2d0c731 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.2.png diff --git a/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.3.png b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.3.png Binary files differnew file mode 100644 index 0000000..af9ed05 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.3.png diff --git a/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.4.png b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.4.png Binary files differnew file mode 100644 index 0000000..0b0945d --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.4.png diff --git a/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.5.png b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.5.png Binary files differnew file mode 100644 index 0000000..618ae0c --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.5.png diff --git a/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.6.png b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.6.png Binary files differnew file mode 100644 index 0000000..fc31262 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.6.png diff --git a/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.7.png b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.7.png Binary files differnew file mode 100644 index 0000000..22291ac --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.7.png diff --git a/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.8.png b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.8.png Binary files differnew file mode 100644 index 0000000..3021d58 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.8.png diff --git a/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.9.png b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.9.png Binary files differnew file mode 100644 index 0000000..2f2f5b9 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.9.png diff --git a/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.qml b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.qml new file mode 100644 index 0000000..fb5f1fb --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicsgridview/data/gridview2.qml @@ -0,0 +1,2479 @@ +import Qt.VisualTest 4.6 + +VisualTest { + Frame { + msec: 0 + } + Frame { + msec: 16 + hash: "dba2f6f1c773bd4cd9523108fca861c4" + } + Frame { + msec: 32 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 48 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 64 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 80 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 96 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 112 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 128 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 144 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 160 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 176 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 192 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 208 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 224 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 240 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 256 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 272 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 288 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 304 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 320 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 336 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 352 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 368 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 384 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 400 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 416 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 432 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 448 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 464 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 480 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 496 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 512 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 528 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 544 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 560 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 576 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 592 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 608 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 624 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 640 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 656 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 672 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 688 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 704 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 720 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 736 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 752 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 768 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 784 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 800 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 816 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 832 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 848 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 864 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 880 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 896 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 912 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 928 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 944 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 960 + image: "gridview2.0.png" + } + Frame { + msec: 976 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 992 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 1008 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 1024 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 1040 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 1056 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 1072 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 1088 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 1104 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 1120 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 1136 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 1152 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 1168 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 1184 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 1200 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 1216 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 1232 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 1248 + hash: "33d81c39d16c6a326012499796e50e03" + } + Key { + type: 6 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 1264 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 1280 + hash: "aaec7184a27e6700d96ffff376b8fa53" + } + Frame { + msec: 1296 + hash: "3fa3a890a4ff4a59336a9a2d478d0dde" + } + Frame { + msec: 1312 + hash: "3711c6c2f4f9aba7f2c72bd1f1d85016" + } + Frame { + msec: 1328 + hash: "23da2f9a800b805ce7b77ff08218907d" + } + Frame { + msec: 1344 + hash: "12e4bc953b06cdaad0720f87fb96a37e" + } + Frame { + msec: 1360 + hash: "46e69658bda69bab202a2790a76ba1cd" + } + Key { + type: 7 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 1376 + hash: "44608e67c69b92ccbb45e119e1158fe3" + } + Frame { + msec: 1392 + hash: "97a309b47017d38294644a486a7ce68e" + } + Frame { + msec: 1408 + hash: "41f42b50b22e0496c8aca5019b24b9cb" + } + Frame { + msec: 1424 + hash: "8603ea1cb60c804563f50bc41c0180fe" + } + Frame { + msec: 1440 + hash: "e29777fa70daafe9640c6e9bb7bd63d6" + } + Frame { + msec: 1456 + hash: "2c4c360320f527e99fee799e68c2c0aa" + } + Frame { + msec: 1472 + hash: "0d30916c7e05ff8609af5894f47a89bb" + } + Frame { + msec: 1488 + hash: "0d30916c7e05ff8609af5894f47a89bb" + } + Frame { + msec: 1504 + hash: "0d30916c7e05ff8609af5894f47a89bb" + } + Frame { + msec: 1520 + hash: "0d30916c7e05ff8609af5894f47a89bb" + } + Frame { + msec: 1536 + hash: "0d30916c7e05ff8609af5894f47a89bb" + } + Frame { + msec: 1552 + hash: "0d30916c7e05ff8609af5894f47a89bb" + } + Frame { + msec: 1568 + hash: "0d30916c7e05ff8609af5894f47a89bb" + } + Frame { + msec: 1584 + hash: "0d30916c7e05ff8609af5894f47a89bb" + } + Key { + type: 6 + key: 16777237 + modifiers: 536870912 + text: "1f" + autorep: false + count: 1 + } + Frame { + msec: 1600 + hash: "0d30916c7e05ff8609af5894f47a89bb" + } + Frame { + msec: 1616 + hash: "17027b7c099b11cb5382f30dbbd1e647" + } + Frame { + msec: 1632 + hash: "0e17461a4ca843f9903b7f03e99a0b00" + } + Frame { + msec: 1648 + hash: "a5e61901920553e59892fa405beea15a" + } + Frame { + msec: 1664 + hash: "310eaf71fe8d3807606e58a666c65ccd" + } + Frame { + msec: 1680 + hash: "76f556d05fb77082f33eb1836c10587a" + } + Key { + type: 7 + key: 16777237 + modifiers: 536870912 + text: "1f" + autorep: false + count: 1 + } + Frame { + msec: 1696 + hash: "4e7e4b7790a96396e7ea3533b5c32ed9" + } + Frame { + msec: 1712 + hash: "b065287b6490f58ca6f0e9eb2027cf20" + } + Frame { + msec: 1728 + hash: "907cd9dbdffa1d395caaabd466dc8e86" + } + Frame { + msec: 1744 + hash: "3b144e5b4867328beafa3020ce931480" + } + Frame { + msec: 1760 + hash: "b59b2b60b7d55424b61b1b0ed3e227b8" + } + Frame { + msec: 1776 + hash: "4032e934871b315b68c7c2abea42efee" + } + Frame { + msec: 1792 + hash: "8f80127b2f8d6fc10aa84062544cc381" + } + Frame { + msec: 1808 + hash: "77d5193bc5f53fe5cb98a236c55f841e" + } + Frame { + msec: 1824 + hash: "77d5193bc5f53fe5cb98a236c55f841e" + } + Frame { + msec: 1840 + hash: "77d5193bc5f53fe5cb98a236c55f841e" + } + Frame { + msec: 1856 + hash: "77d5193bc5f53fe5cb98a236c55f841e" + } + Frame { + msec: 1872 + hash: "77d5193bc5f53fe5cb98a236c55f841e" + } + Frame { + msec: 1888 + hash: "77d5193bc5f53fe5cb98a236c55f841e" + } + Frame { + msec: 1904 + hash: "77d5193bc5f53fe5cb98a236c55f841e" + } + Frame { + msec: 1920 + image: "gridview2.1.png" + } + Frame { + msec: 1936 + hash: "77d5193bc5f53fe5cb98a236c55f841e" + } + Frame { + msec: 1952 + hash: "77d5193bc5f53fe5cb98a236c55f841e" + } + Frame { + msec: 1968 + hash: "77d5193bc5f53fe5cb98a236c55f841e" + } + Frame { + msec: 1984 + hash: "77d5193bc5f53fe5cb98a236c55f841e" + } + Frame { + msec: 2000 + hash: "77d5193bc5f53fe5cb98a236c55f841e" + } + Frame { + msec: 2016 + hash: "77d5193bc5f53fe5cb98a236c55f841e" + } + Key { + type: 6 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 2032 + hash: "77d5193bc5f53fe5cb98a236c55f841e" + } + Frame { + msec: 2048 + hash: "a45d2630872a14541f39b862e15ff461" + } + Frame { + msec: 2064 + hash: "714711d7382ef8bba5fb39e2e44bd59c" + } + Frame { + msec: 2080 + hash: "63deed0356e761f94f88be18a7d10053" + } + Frame { + msec: 2096 + hash: "d5b4fc1b568a4a1b63a91b422272c704" + } + Frame { + msec: 2112 + hash: "b6d2c80925cc6b4b7b297bd6ee903c7c" + } + Key { + type: 7 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 2128 + hash: "38117482196360353586cb7ace593894" + } + Frame { + msec: 2144 + hash: "2301f3a148bf4e311cc8ce011ddf65f8" + } + Frame { + msec: 2160 + hash: "2a4982a0961f89a15618f8d4c2081f5a" + } + Frame { + msec: 2176 + hash: "acf8666d6a8a29925f3895aa8e93f713" + } + Frame { + msec: 2192 + hash: "967ed026bc92a6d2747c5227105543a6" + } + Frame { + msec: 2208 + hash: "ff72f3fb95f25990c99c1c14cfef57da" + } + Frame { + msec: 2224 + hash: "0874a4f863596c3860dcf5b1f7f6ceb2" + } + Frame { + msec: 2240 + hash: "520445d8619ad9bdde0db0e61f17567c" + } + Frame { + msec: 2256 + hash: "520445d8619ad9bdde0db0e61f17567c" + } + Frame { + msec: 2272 + hash: "520445d8619ad9bdde0db0e61f17567c" + } + Frame { + msec: 2288 + hash: "520445d8619ad9bdde0db0e61f17567c" + } + Frame { + msec: 2304 + hash: "520445d8619ad9bdde0db0e61f17567c" + } + Frame { + msec: 2320 + hash: "520445d8619ad9bdde0db0e61f17567c" + } + Frame { + msec: 2336 + hash: "520445d8619ad9bdde0db0e61f17567c" + } + Frame { + msec: 2352 + hash: "520445d8619ad9bdde0db0e61f17567c" + } + Frame { + msec: 2368 + hash: "520445d8619ad9bdde0db0e61f17567c" + } + Key { + type: 6 + key: 16777237 + modifiers: 536870912 + text: "1f" + autorep: false + count: 1 + } + Frame { + msec: 2384 + hash: "520445d8619ad9bdde0db0e61f17567c" + } + Frame { + msec: 2400 + hash: "7c4bbf0423d63d7642d218cac56a6215" + } + Frame { + msec: 2416 + hash: "e8c77dbc89721b51549f8d46453fe09d" + } + Frame { + msec: 2432 + hash: "7953503590b639872ac12215695e8cea" + } + Frame { + msec: 2448 + hash: "edaee946a2e25fed6de9acfda0d44a14" + } + Frame { + msec: 2464 + hash: "4996ef39bb0122c10d65f8dd8674b386" + } + Frame { + msec: 2480 + hash: "ede7c6ca9d6deb7819c3715e98755d6e" + } + Frame { + msec: 2496 + hash: "e703fad2fcf9244ec9865200c7d17ce3" + } + Key { + type: 7 + key: 16777237 + modifiers: 536870912 + text: "1f" + autorep: false + count: 1 + } + Frame { + msec: 2512 + hash: "e2bfc16fd893bb3eb0e5df89a0169af3" + } + Frame { + msec: 2528 + hash: "cfd0eb2bc378bd46644f3f7820150685" + } + Frame { + msec: 2544 + hash: "442b05b04762c2bcda291aaa0341398e" + } + Frame { + msec: 2560 + hash: "55842a6503057eea98e2075ef160873e" + } + Frame { + msec: 2576 + hash: "730f80233dacf1119660a76d2a34c5fc" + } + Frame { + msec: 2592 + hash: "d4a48ee79a18cc5c0bc123fbb40c3efd" + } + Frame { + msec: 2608 + hash: "d4a48ee79a18cc5c0bc123fbb40c3efd" + } + Frame { + msec: 2624 + hash: "d4a48ee79a18cc5c0bc123fbb40c3efd" + } + Frame { + msec: 2640 + hash: "d4a48ee79a18cc5c0bc123fbb40c3efd" + } + Frame { + msec: 2656 + hash: "d4a48ee79a18cc5c0bc123fbb40c3efd" + } + Frame { + msec: 2672 + hash: "d4a48ee79a18cc5c0bc123fbb40c3efd" + } + Frame { + msec: 2688 + hash: "d4a48ee79a18cc5c0bc123fbb40c3efd" + } + Frame { + msec: 2704 + hash: "d4a48ee79a18cc5c0bc123fbb40c3efd" + } + Frame { + msec: 2720 + hash: "d4a48ee79a18cc5c0bc123fbb40c3efd" + } + Frame { + msec: 2736 + hash: "d4a48ee79a18cc5c0bc123fbb40c3efd" + } + Key { + type: 6 + key: 16777234 + modifiers: 536870912 + text: "1c" + autorep: false + count: 1 + } + Frame { + msec: 2752 + hash: "d4a48ee79a18cc5c0bc123fbb40c3efd" + } + Frame { + msec: 2768 + hash: "4d04c12bc7fab0b22df3135bf3a87a22" + } + Frame { + msec: 2784 + hash: "fdca5a3f8312452feba7f37b1caa6419" + } + Frame { + msec: 2800 + hash: "97b955e0f8cde30299b238d9ac0eb308" + } + Frame { + msec: 2816 + hash: "19664de1a738458810896959ba4087ad" + } + Frame { + msec: 2832 + hash: "4f9a4b6de6a2969e4639076a8f7c258e" + } + Key { + type: 7 + key: 16777234 + modifiers: 536870912 + text: "1c" + autorep: false + count: 1 + } + Frame { + msec: 2848 + hash: "a10f18aa686be2681a48082ec9f01df7" + } + Frame { + msec: 2864 + hash: "b8f39a6cca377dd573429d879286dd63" + } + Frame { + msec: 2880 + image: "gridview2.2.png" + } + Frame { + msec: 2896 + hash: "3301e52a46efbc49882401c77853ffde" + } + Frame { + msec: 2912 + hash: "0c614597f17496ebc701efe7b0c1fbb6" + } + Frame { + msec: 2928 + hash: "6dda2d6b034c932e279cf216c9b3e6ad" + } + Frame { + msec: 2944 + hash: "7bf08cd5fe3ad3f83bbef28f452e0545" + } + Frame { + msec: 2960 + hash: "1b7ebcf0e3d68e429cb04966120985e5" + } + Frame { + msec: 2976 + hash: "1b7ebcf0e3d68e429cb04966120985e5" + } + Frame { + msec: 2992 + hash: "1b7ebcf0e3d68e429cb04966120985e5" + } + Frame { + msec: 3008 + hash: "1b7ebcf0e3d68e429cb04966120985e5" + } + Frame { + msec: 3024 + hash: "1b7ebcf0e3d68e429cb04966120985e5" + } + Key { + type: 6 + key: 16777237 + modifiers: 536870912 + text: "1f" + autorep: false + count: 1 + } + Frame { + msec: 3040 + hash: "1b7ebcf0e3d68e429cb04966120985e5" + } + Frame { + msec: 3056 + hash: "0fe7d46e7c18ce7bb5a098c5c662d557" + } + Frame { + msec: 3072 + hash: "cd5df541cc1ed545bc27da9e4a937261" + } + Frame { + msec: 3088 + hash: "35762467b83fee1870cff9b0436994d3" + } + Frame { + msec: 3104 + hash: "75a620b42caabf5b1576041dbd4c2808" + } + Frame { + msec: 3120 + hash: "f1b06290a6cbd48b8d3d4ce1e42ed754" + } + Frame { + msec: 3136 + hash: "8e1a50dc082828587a4656117760a852" + } + Frame { + msec: 3152 + hash: "aae8e5f166e736040138d8e222a844dd" + } + Frame { + msec: 3168 + hash: "f69e5cf2bcb26fe49126776695b0b7e0" + } + Key { + type: 7 + key: 16777237 + modifiers: 536870912 + text: "1f" + autorep: false + count: 1 + } + Frame { + msec: 3184 + hash: "7b482fece0255ea07496ef0545b008a2" + } + Frame { + msec: 3200 + hash: "3f96eaebfebe8d4eeb347b201b59ab11" + } + Frame { + msec: 3216 + hash: "9943626d2226c3be711c8213906133f0" + } + Frame { + msec: 3232 + hash: "fd5fd8177b3957c27f1de0d95621351a" + } + Frame { + msec: 3248 + hash: "506283ccfe9670633ce0bf60b437b37b" + } + Frame { + msec: 3264 + hash: "506283ccfe9670633ce0bf60b437b37b" + } + Frame { + msec: 3280 + hash: "506283ccfe9670633ce0bf60b437b37b" + } + Frame { + msec: 3296 + hash: "506283ccfe9670633ce0bf60b437b37b" + } + Frame { + msec: 3312 + hash: "506283ccfe9670633ce0bf60b437b37b" + } + Frame { + msec: 3328 + hash: "506283ccfe9670633ce0bf60b437b37b" + } + Frame { + msec: 3344 + hash: "506283ccfe9670633ce0bf60b437b37b" + } + Frame { + msec: 3360 + hash: "506283ccfe9670633ce0bf60b437b37b" + } + Frame { + msec: 3376 + hash: "506283ccfe9670633ce0bf60b437b37b" + } + Key { + type: 6 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 3392 + hash: "506283ccfe9670633ce0bf60b437b37b" + } + Frame { + msec: 3408 + hash: "fb437f6c23561092a124e498f1604ff2" + } + Frame { + msec: 3424 + hash: "402ba144bbb7260eec4553e68eb35cda" + } + Frame { + msec: 3440 + hash: "76a983de9e85e0c81dfb8908252bd6c9" + } + Frame { + msec: 3456 + hash: "09219f55fae47a0afed887ebf68a36bc" + } + Frame { + msec: 3472 + hash: "344e81cc262093facef2f6a235a734dc" + } + Frame { + msec: 3488 + hash: "8f1c5544eb537555b1c59a377b15e31d" + } + Frame { + msec: 3504 + hash: "606b9bb549fe2e4bbd09d67b7dea0d1a" + } + Key { + type: 7 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 3520 + hash: "63e239c97bd01a61cb31ef2869e7f47c" + } + Frame { + msec: 3536 + hash: "f7c176550c39f8a1ad64590cf33a60a4" + } + Frame { + msec: 3552 + hash: "8581cb14ed81efdf9abb638b5e542cc3" + } + Frame { + msec: 3568 + hash: "7a1e9354ecc49d8bc27d303c7bdc81f9" + } + Frame { + msec: 3584 + hash: "610288b97276ee03702ed8a814ef333d" + } + Frame { + msec: 3600 + hash: "8d36bc2f3ab614d19f3ec8821f3e81ed" + } + Frame { + msec: 3616 + hash: "8d36bc2f3ab614d19f3ec8821f3e81ed" + } + Frame { + msec: 3632 + hash: "8d36bc2f3ab614d19f3ec8821f3e81ed" + } + Frame { + msec: 3648 + hash: "8d36bc2f3ab614d19f3ec8821f3e81ed" + } + Frame { + msec: 3664 + hash: "8d36bc2f3ab614d19f3ec8821f3e81ed" + } + Frame { + msec: 3680 + hash: "8d36bc2f3ab614d19f3ec8821f3e81ed" + } + Frame { + msec: 3696 + hash: "8d36bc2f3ab614d19f3ec8821f3e81ed" + } + Frame { + msec: 3712 + hash: "8d36bc2f3ab614d19f3ec8821f3e81ed" + } + Frame { + msec: 3728 + hash: "8d36bc2f3ab614d19f3ec8821f3e81ed" + } + Frame { + msec: 3744 + hash: "8d36bc2f3ab614d19f3ec8821f3e81ed" + } + Frame { + msec: 3760 + hash: "8d36bc2f3ab614d19f3ec8821f3e81ed" + } + Frame { + msec: 3776 + hash: "8d36bc2f3ab614d19f3ec8821f3e81ed" + } + Key { + type: 6 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 3792 + hash: "8d36bc2f3ab614d19f3ec8821f3e81ed" + } + Frame { + msec: 3808 + hash: "9713c6b9aff051dd0cc45c545d34b688" + } + Frame { + msec: 3824 + hash: "1f8fd4d759e343720a8681b6ad126b72" + } + Frame { + msec: 3840 + image: "gridview2.3.png" + } + Frame { + msec: 3856 + hash: "8550d916d91a40b0c3a886b962e07ffc" + } + Key { + type: 7 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 3872 + hash: "df0c2e474139e79429bfc19c79a65ef8" + } + Frame { + msec: 3888 + hash: "acfb99d081d754276e5ed59bd590aeab" + } + Frame { + msec: 3904 + hash: "2b34cd101b442f7a3de2893fd5514c16" + } + Frame { + msec: 3920 + hash: "df92ced66faa1d59354d8010278438ec" + } + Frame { + msec: 3936 + hash: "dd39a8e6fa3784453461193a6da416cd" + } + Frame { + msec: 3952 + hash: "5670e8f91ea2df451f0974a51cd77d7d" + } + Frame { + msec: 3968 + hash: "74b97a09bfe7400872a2c6214e04a5ac" + } + Frame { + msec: 3984 + hash: "cfd55b963506ab54cf09a7311e84bcc9" + } + Frame { + msec: 4000 + hash: "59657ee9293c03f064d62de826931435" + } + Frame { + msec: 4016 + hash: "31f6a4adf31be5ed0af0ea4097e3acee" + } + Frame { + msec: 4032 + hash: "8f5bfc40c8cdb2f8ce69adb72e7efe76" + } + Frame { + msec: 4048 + hash: "9dc38985113124130e2ca7950e0bd144" + } + Frame { + msec: 4064 + hash: "786e6e8b9e74876a6f393d61a78b8fc7" + } + Frame { + msec: 4080 + hash: "1f4d59a4e4684aab309363a711b30006" + } + Frame { + msec: 4096 + hash: "a11e332de151b43051796e16dbcf75c3" + } + Frame { + msec: 4112 + hash: "1a0e82029ae107cb2a018786752433ff" + } + Frame { + msec: 4128 + hash: "b14c51977c7fbf51f9cf6fec309bff6a" + } + Frame { + msec: 4144 + hash: "2b418f811992399c3f87c268db745632" + } + Frame { + msec: 4160 + hash: "0e9a056207053ca98c4e9f42de244c62" + } + Frame { + msec: 4176 + hash: "1945c3f9e3a1337e7d111e15adea345f" + } + Frame { + msec: 4192 + hash: "d8cf36b6cc15a01ead815d814ae81cb4" + } + Frame { + msec: 4208 + hash: "d8cf36b6cc15a01ead815d814ae81cb4" + } + Frame { + msec: 4224 + hash: "d8cf36b6cc15a01ead815d814ae81cb4" + } + Frame { + msec: 4240 + hash: "d8cf36b6cc15a01ead815d814ae81cb4" + } + Frame { + msec: 4256 + hash: "d8cf36b6cc15a01ead815d814ae81cb4" + } + Frame { + msec: 4272 + hash: "d8cf36b6cc15a01ead815d814ae81cb4" + } + Frame { + msec: 4288 + hash: "d8cf36b6cc15a01ead815d814ae81cb4" + } + Frame { + msec: 4304 + hash: "d8cf36b6cc15a01ead815d814ae81cb4" + } + Frame { + msec: 4320 + hash: "d8cf36b6cc15a01ead815d814ae81cb4" + } + Frame { + msec: 4336 + hash: "d8cf36b6cc15a01ead815d814ae81cb4" + } + Frame { + msec: 4352 + hash: "d8cf36b6cc15a01ead815d814ae81cb4" + } + Frame { + msec: 4368 + hash: "d8cf36b6cc15a01ead815d814ae81cb4" + } + Frame { + msec: 4384 + hash: "d8cf36b6cc15a01ead815d814ae81cb4" + } + Frame { + msec: 4400 + hash: "d8cf36b6cc15a01ead815d814ae81cb4" + } + Frame { + msec: 4416 + hash: "d8cf36b6cc15a01ead815d814ae81cb4" + } + Key { + type: 6 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 4432 + hash: "d8cf36b6cc15a01ead815d814ae81cb4" + } + Frame { + msec: 4448 + hash: "1945c3f9e3a1337e7d111e15adea345f" + } + Frame { + msec: 4464 + hash: "0e9a056207053ca98c4e9f42de244c62" + } + Frame { + msec: 4480 + hash: "2b418f811992399c3f87c268db745632" + } + Frame { + msec: 4496 + hash: "b14c51977c7fbf51f9cf6fec309bff6a" + } + Frame { + msec: 4512 + hash: "1a0e82029ae107cb2a018786752433ff" + } + Frame { + msec: 4528 + hash: "a11e332de151b43051796e16dbcf75c3" + } + Key { + type: 7 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 4544 + hash: "1f4d59a4e4684aab309363a711b30006" + } + Frame { + msec: 4560 + hash: "786e6e8b9e74876a6f393d61a78b8fc7" + } + Frame { + msec: 4576 + hash: "9dc38985113124130e2ca7950e0bd144" + } + Frame { + msec: 4592 + hash: "8f5bfc40c8cdb2f8ce69adb72e7efe76" + } + Frame { + msec: 4608 + hash: "31f6a4adf31be5ed0af0ea4097e3acee" + } + Frame { + msec: 4624 + hash: "59657ee9293c03f064d62de826931435" + } + Frame { + msec: 4640 + hash: "23aa652a0de7fced4a780d72f0940a1b" + } + Frame { + msec: 4656 + hash: "23aa652a0de7fced4a780d72f0940a1b" + } + Frame { + msec: 4672 + hash: "23aa652a0de7fced4a780d72f0940a1b" + } + Frame { + msec: 4688 + hash: "23aa652a0de7fced4a780d72f0940a1b" + } + Frame { + msec: 4704 + hash: "23aa652a0de7fced4a780d72f0940a1b" + } + Frame { + msec: 4720 + hash: "23aa652a0de7fced4a780d72f0940a1b" + } + Frame { + msec: 4736 + hash: "23aa652a0de7fced4a780d72f0940a1b" + } + Frame { + msec: 4752 + hash: "23aa652a0de7fced4a780d72f0940a1b" + } + Frame { + msec: 4768 + hash: "23aa652a0de7fced4a780d72f0940a1b" + } + Frame { + msec: 4784 + hash: "23aa652a0de7fced4a780d72f0940a1b" + } + Frame { + msec: 4800 + image: "gridview2.4.png" + } + Frame { + msec: 4816 + hash: "23aa652a0de7fced4a780d72f0940a1b" + } + Key { + type: 6 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 4832 + hash: "23aa652a0de7fced4a780d72f0940a1b" + } + Frame { + msec: 4848 + hash: "d46eea049d6156a5e85d9c6811d9d367" + } + Frame { + msec: 4864 + hash: "d5796ae85247cb8502f92f0d044e4e1f" + } + Frame { + msec: 4880 + hash: "90987ac49c1a4e6b668436e3ff631e6c" + } + Frame { + msec: 4896 + hash: "c38d69759ad80242b1fe83ba191cd421" + } + Frame { + msec: 4912 + hash: "09d08aed76a04e492d8a39cc4dd2b8f5" + } + Key { + type: 7 + key: 16777236 + modifiers: 536870912 + text: "1d" + autorep: false + count: 1 + } + Frame { + msec: 4928 + hash: "9671d2ff9a2ef46ce3c750a1965404a4" + } + Frame { + msec: 4944 + hash: "f55857816d666ece4a7987a70883b3d1" + } + Frame { + msec: 4960 + hash: "a2d80527b30316d9120b057bbfcfa666" + } + Frame { + msec: 4976 + hash: "87ca69287c1469cbc7e65d1673016de7" + } + Frame { + msec: 4992 + hash: "51588c7ebbe2dcd87a3c9bebf028aee3" + } + Frame { + msec: 5008 + hash: "917a9a171273fe9fd4c450eeed6f58ed" + } + Frame { + msec: 5024 + hash: "6e7ade250a9a9692caee2a220dd2ac53" + } + Frame { + msec: 5040 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5056 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5072 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5088 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5104 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5120 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5136 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5152 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5168 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5184 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5200 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5216 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5232 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5248 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5264 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5280 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5296 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5312 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5328 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5344 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5360 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5376 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5392 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5408 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5424 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5440 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5456 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5472 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5488 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5504 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5520 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5536 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5552 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5568 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5584 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5600 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Key { + type: 6 + key: 16777237 + modifiers: 536870912 + text: "1f" + autorep: false + count: 1 + } + Frame { + msec: 5616 + hash: "ca2dcb16d553889a3a57b48700c2a595" + } + Frame { + msec: 5632 + hash: "c5c9aab9bea757f1c451e89df72bd836" + } + Frame { + msec: 5648 + hash: "a8cf3085f8c3b743f3f15db1ad7b8801" + } + Frame { + msec: 5664 + hash: "c25a92050eced1c304506572723273a3" + } + Frame { + msec: 5680 + hash: "cff981039c1a3eb6c3c1a20f142fbae2" + } + Frame { + msec: 5696 + hash: "930765587fe3355873bbdff66b812b74" + } + Frame { + msec: 5712 + hash: "6a60f97c7b39add465e1bd366e9c644b" + } + Key { + type: 7 + key: 16777237 + modifiers: 536870912 + text: "1f" + autorep: false + count: 1 + } + Frame { + msec: 5728 + hash: "7a1fd3c488d1064a75dc598c9a773291" + } + Frame { + msec: 5744 + hash: "e2ecd7e68e27eb3d2dcb5e368d3ee5a0" + } + Frame { + msec: 5760 + image: "gridview2.5.png" + } + Frame { + msec: 5776 + hash: "20f3aaca2efc3066076e73d1d95e5363" + } + Frame { + msec: 5792 + hash: "b18d476cadc36e22dddc3185f595c123" + } + Frame { + msec: 5808 + hash: "8cbc47555178c8ee355774eab17b4b19" + } + Frame { + msec: 5824 + hash: "e488fb76fb550fba51b95bee3fee80d5" + } + Frame { + msec: 5840 + hash: "e488fb76fb550fba51b95bee3fee80d5" + } + Frame { + msec: 5856 + hash: "e488fb76fb550fba51b95bee3fee80d5" + } + Frame { + msec: 5872 + hash: "e488fb76fb550fba51b95bee3fee80d5" + } + Frame { + msec: 5888 + hash: "e488fb76fb550fba51b95bee3fee80d5" + } + Frame { + msec: 5904 + hash: "e488fb76fb550fba51b95bee3fee80d5" + } + Frame { + msec: 5920 + hash: "e488fb76fb550fba51b95bee3fee80d5" + } + Frame { + msec: 5936 + hash: "e488fb76fb550fba51b95bee3fee80d5" + } + Frame { + msec: 5952 + hash: "e488fb76fb550fba51b95bee3fee80d5" + } + Frame { + msec: 5968 + hash: "e488fb76fb550fba51b95bee3fee80d5" + } + Frame { + msec: 5984 + hash: "e488fb76fb550fba51b95bee3fee80d5" + } + Frame { + msec: 6000 + hash: "e488fb76fb550fba51b95bee3fee80d5" + } + Frame { + msec: 6016 + hash: "e488fb76fb550fba51b95bee3fee80d5" + } + Frame { + msec: 6032 + hash: "e488fb76fb550fba51b95bee3fee80d5" + } + Frame { + msec: 6048 + hash: "e488fb76fb550fba51b95bee3fee80d5" + } + Frame { + msec: 6064 + hash: "e488fb76fb550fba51b95bee3fee80d5" + } + Frame { + msec: 6080 + hash: "e488fb76fb550fba51b95bee3fee80d5" + } + Frame { + msec: 6096 + hash: "e488fb76fb550fba51b95bee3fee80d5" + } + Key { + type: 6 + key: 16777237 + modifiers: 536870912 + text: "1f" + autorep: false + count: 1 + } + Frame { + msec: 6112 + hash: "e488fb76fb550fba51b95bee3fee80d5" + } + Frame { + msec: 6128 + hash: "8c2fab0c73d1cfbeeb0ec937085d6b3b" + } + Frame { + msec: 6144 + hash: "5d9353517177ef7c6314d8a65cb009ec" + } + Frame { + msec: 6160 + hash: "ed8de504f7e2028cd369c1555314fd81" + } + Frame { + msec: 6176 + hash: "8fe84d8badbe5bd08d097ba6bda10611" + } + Frame { + msec: 6192 + hash: "d77419a55a3cf933505e793bb258e6af" + } + Frame { + msec: 6208 + hash: "457ac82be02e2f5e08e51ccc78c94781" + } + Frame { + msec: 6224 + hash: "e57e2852f065afff9c24c5bc9f29edee" + } + Frame { + msec: 6240 + hash: "f72cd6ad3324936c3a18c264e23e05a9" + } + Key { + type: 7 + key: 16777237 + modifiers: 536870912 + text: "1f" + autorep: false + count: 1 + } + Frame { + msec: 6256 + hash: "a4bf7eae6fc7a05239d09421ae95304a" + } + Frame { + msec: 6272 + hash: "423f3bd07df8bee25818644c07201a3c" + } + Frame { + msec: 6288 + hash: "225e9c698424f287b9458b7839b4479b" + } + Frame { + msec: 6304 + hash: "0f463db7e4acc184a4efb7b5e5c0d397" + } + Frame { + msec: 6320 + hash: "b92ad1c3be35c46c0d12bf7701c56f23" + } + Frame { + msec: 6336 + hash: "b92ad1c3be35c46c0d12bf7701c56f23" + } + Frame { + msec: 6352 + hash: "b92ad1c3be35c46c0d12bf7701c56f23" + } + Frame { + msec: 6368 + hash: "b92ad1c3be35c46c0d12bf7701c56f23" + } + Frame { + msec: 6384 + hash: "b92ad1c3be35c46c0d12bf7701c56f23" + } + Frame { + msec: 6400 + hash: "b92ad1c3be35c46c0d12bf7701c56f23" + } + Frame { + msec: 6416 + hash: "b92ad1c3be35c46c0d12bf7701c56f23" + } + Frame { + msec: 6432 + hash: "b92ad1c3be35c46c0d12bf7701c56f23" + } + Frame { + msec: 6448 + hash: "b92ad1c3be35c46c0d12bf7701c56f23" + } + Frame { + msec: 6464 + hash: "b92ad1c3be35c46c0d12bf7701c56f23" + } + Frame { + msec: 6480 + hash: "b92ad1c3be35c46c0d12bf7701c56f23" + } + Frame { + msec: 6496 + hash: "b92ad1c3be35c46c0d12bf7701c56f23" + } + Frame { + msec: 6512 + hash: "b92ad1c3be35c46c0d12bf7701c56f23" + } + Frame { + msec: 6528 + hash: "b92ad1c3be35c46c0d12bf7701c56f23" + } + Frame { + msec: 6544 + hash: "b92ad1c3be35c46c0d12bf7701c56f23" + } + Frame { + msec: 6560 + hash: "b92ad1c3be35c46c0d12bf7701c56f23" + } + Frame { + msec: 6576 + hash: "b92ad1c3be35c46c0d12bf7701c56f23" + } + Frame { + msec: 6592 + hash: "b92ad1c3be35c46c0d12bf7701c56f23" + } + Frame { + msec: 6608 + hash: "b92ad1c3be35c46c0d12bf7701c56f23" + } + Frame { + msec: 6624 + hash: "b92ad1c3be35c46c0d12bf7701c56f23" + } + Frame { + msec: 6640 + hash: "b92ad1c3be35c46c0d12bf7701c56f23" + } + Frame { + msec: 6656 + hash: "b92ad1c3be35c46c0d12bf7701c56f23" + } + Frame { + msec: 6672 + hash: "b92ad1c3be35c46c0d12bf7701c56f23" + } + Frame { + msec: 6688 + hash: "b92ad1c3be35c46c0d12bf7701c56f23" + } + Frame { + msec: 6704 + hash: "b92ad1c3be35c46c0d12bf7701c56f23" + } + Frame { + msec: 6720 + image: "gridview2.6.png" + } + Frame { + msec: 6736 + hash: "b92ad1c3be35c46c0d12bf7701c56f23" + } + Key { + type: 6 + key: 16777237 + modifiers: 536870912 + text: "1f" + autorep: false + count: 1 + } + Frame { + msec: 6752 + hash: "b92ad1c3be35c46c0d12bf7701c56f23" + } + Frame { + msec: 6768 + hash: "738f6bcc043d221488285c7e529b1d1c" + } + Frame { + msec: 6784 + hash: "cb0a4e8e79372dd67e8ecfea2143a47c" + } + Frame { + msec: 6800 + hash: "544d1825b36f4e7950c1a62b26c1fd9b" + } + Frame { + msec: 6816 + hash: "df99396622342b4f092b0db34a224c3d" + } + Frame { + msec: 6832 + hash: "47391f51e5df2249a6ca1f1f6e8e80e0" + } + Key { + type: 7 + key: 16777237 + modifiers: 536870912 + text: "1f" + autorep: false + count: 1 + } + Frame { + msec: 6848 + hash: "d8079a874ca18d00aeeb611effcbeb8b" + } + Frame { + msec: 6864 + hash: "4cfd9264af6935aca425da75ebb2d7cc" + } + Frame { + msec: 6880 + hash: "aee6547cb653cd2d56d07285d836149d" + } + Frame { + msec: 6896 + hash: "969720f17eae51258e2e143e14bfa737" + } + Frame { + msec: 6912 + hash: "b6a0ee0b24737bc0045ff3fb68cfe3ad" + } + Frame { + msec: 6928 + hash: "b6a0ee0b24737bc0045ff3fb68cfe3ad" + } + Frame { + msec: 6944 + hash: "b6a0ee0b24737bc0045ff3fb68cfe3ad" + } + Frame { + msec: 6960 + hash: "b6a0ee0b24737bc0045ff3fb68cfe3ad" + } + Frame { + msec: 6976 + hash: "b6a0ee0b24737bc0045ff3fb68cfe3ad" + } + Frame { + msec: 6992 + hash: "b6a0ee0b24737bc0045ff3fb68cfe3ad" + } + Frame { + msec: 7008 + hash: "b6a0ee0b24737bc0045ff3fb68cfe3ad" + } + Frame { + msec: 7024 + hash: "b6a0ee0b24737bc0045ff3fb68cfe3ad" + } + Frame { + msec: 7040 + hash: "b6a0ee0b24737bc0045ff3fb68cfe3ad" + } + Frame { + msec: 7056 + hash: "b6a0ee0b24737bc0045ff3fb68cfe3ad" + } + Frame { + msec: 7072 + hash: "b6a0ee0b24737bc0045ff3fb68cfe3ad" + } + Frame { + msec: 7088 + hash: "b6a0ee0b24737bc0045ff3fb68cfe3ad" + } + Frame { + msec: 7104 + hash: "b6a0ee0b24737bc0045ff3fb68cfe3ad" + } + Frame { + msec: 7120 + hash: "b6a0ee0b24737bc0045ff3fb68cfe3ad" + } + Frame { + msec: 7136 + hash: "b6a0ee0b24737bc0045ff3fb68cfe3ad" + } + Frame { + msec: 7152 + hash: "beeaec4b983c970ae448e33047dfdfea" + } + Frame { + msec: 7168 + hash: "7c415ab1b7d8e25b71af75d3eec8ee4a" + } + Frame { + msec: 7184 + hash: "8913037e57b9a6a58b68f2d6e69b1bd1" + } + Frame { + msec: 7200 + hash: "19e59e9409fdaf90ccf75606b58688b7" + } + Frame { + msec: 7216 + hash: "1ae71ef5b1006f637bd8df0769af65a6" + } + Frame { + msec: 7232 + hash: "1f0aa8b368b2dbccafd54b923d8cce95" + } + Frame { + msec: 7248 + hash: "c5079fb25a8c80a995d7aa5fbbd91428" + } + Frame { + msec: 7264 + hash: "59f41220fa5d23db298c9e94f115c17b" + } + Frame { + msec: 7280 + hash: "48259dfe8b266d9e7f50b187be98c3cb" + } + Frame { + msec: 7296 + hash: "f7554552598351c3b8dfcbe3ebc32b3b" + } + Frame { + msec: 7312 + hash: "219e9cd84d7e5c5c0e6cb80100aa3ab5" + } + Frame { + msec: 7328 + hash: "5578e870ee8ce00bce5a59bb25e3d0a9" + } + Frame { + msec: 7344 + hash: "4d9cebbf750c03380694245e0e22ab94" + } + Frame { + msec: 7360 + hash: "a60a8032e97ed0a3caa05012c1283de5" + } + Frame { + msec: 7376 + hash: "3bee20b349a7e9d67f7770ede6da8673" + } + Frame { + msec: 7392 + hash: "d8c34576c25fb8b5e4fa12680ac32e99" + } + Frame { + msec: 7408 + hash: "cd1360aa7db7c3b2f2012dfc44de2198" + } + Frame { + msec: 7424 + hash: "cd82782f63c9a7d21d51b3440c2f038b" + } + Frame { + msec: 7440 + hash: "e59061967a841aa45607c0828b687527" + } + Frame { + msec: 7456 + hash: "01962406c9aaf1aa8bf3ab49e30ddf5f" + } + Frame { + msec: 7472 + hash: "5a5732a568189e598c7985ee806bc67e" + } + Frame { + msec: 7488 + hash: "54775aed3a6283c1fa330d65de5bc70c" + } + Frame { + msec: 7504 + hash: "66640b4a5c1e68924b25de24e3c3f008" + } + Frame { + msec: 7520 + hash: "76999d3125f20ba47dbdff38ee722a8a" + } + Frame { + msec: 7536 + hash: "5159c81533bee8825cff11910bcb90dc" + } + Frame { + msec: 7552 + hash: "ac0295495345987d1e000f6bb2436927" + } + Frame { + msec: 7568 + hash: "d56b4a04f1d2835a0852ea20e8e2f451" + } + Frame { + msec: 7584 + hash: "ae41fe23e2ab508d7642973c0d9d35b0" + } + Frame { + msec: 7600 + hash: "730ca01fbee6ec4928715ec52773c06c" + } + Frame { + msec: 7616 + hash: "ad1fa52c617a2b119d61eb9fb7d58a82" + } + Frame { + msec: 7632 + hash: "c74321a822b515a393e8e218bd45e8e3" + } + Frame { + msec: 7648 + hash: "a9e2f3bee1d47166204c74bdf90cd8c8" + } + Frame { + msec: 7664 + hash: "e10d4bf08980ea7d079a2f359ee62b95" + } + Frame { + msec: 7680 + image: "gridview2.7.png" + } + Frame { + msec: 7696 + hash: "9f0ba6051e684e54ff4e36d980a7e600" + } + Frame { + msec: 7712 + hash: "aa6268d8d7fb3d2b91db3e225e8c818a" + } + Frame { + msec: 7728 + hash: "8e547e55279b1929f42bf51e753f142e" + } + Frame { + msec: 7744 + hash: "5386c71f8d6701379e177f161d714da2" + } + Frame { + msec: 7760 + hash: "a184e9e6012c72fc1aeaed9f98b0fb1e" + } + Frame { + msec: 7776 + hash: "777a6b70ca77c45e2e5e3914cc328dcb" + } + Frame { + msec: 7792 + hash: "424f73f25a1e91126f951838d45adc3b" + } + Frame { + msec: 7808 + hash: "3f7f2eb6b9a5d19fbfcd700baf566dfb" + } + Frame { + msec: 7824 + hash: "c3c4c72b25c2295b82a5fd7454942f77" + } + Frame { + msec: 7840 + hash: "3b35e93d3eb9d28c5c03d6d353f805d2" + } + Frame { + msec: 7856 + hash: "5dcad019a1c0eaaab381a7602e1914ff" + } + Frame { + msec: 7872 + hash: "602a5c569555767413bf445af44c744f" + } + Frame { + msec: 7888 + hash: "3e9facab95dae772f695b6f7c5175063" + } + Frame { + msec: 7904 + hash: "0921220ec36ca7b25eaae699872a2006" + } + Frame { + msec: 7920 + hash: "1d5fa7fd630af62bcc805bdc6686df37" + } + Frame { + msec: 7936 + hash: "165c02de63604aa118d9f8995e6b45af" + } + Frame { + msec: 7952 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 7968 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 7984 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8000 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8016 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8032 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8048 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8064 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8080 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8096 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8112 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8128 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8144 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8160 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8176 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8192 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8208 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8224 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8240 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8256 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8272 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8288 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8304 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8320 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8336 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8352 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8368 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8384 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8400 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8416 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8432 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8448 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8464 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8480 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8496 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8512 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8528 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8544 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8560 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8576 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8592 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8608 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8624 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8640 + image: "gridview2.8.png" + } + Frame { + msec: 8656 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8672 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8688 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8704 + hash: "33d81c39d16c6a326012499796e50e03" + } + Key { + type: 6 + key: 16777249 + modifiers: 67108864 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 8720 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8736 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8752 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8768 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8784 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8800 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8816 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8832 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8848 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8864 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8880 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8896 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8912 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8928 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8944 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8960 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8976 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 8992 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 9008 + hash: "33d81c39d16c6a326012499796e50e03" + } + Frame { + msec: 9024 + hash: "33d81c39d16c6a326012499796e50e03" + } +} diff --git a/tests/auto/declarative/visual/qmlgraphicsgridview/gridview.qml b/tests/auto/declarative/visual/qmlgraphicsgridview/gridview.qml new file mode 100644 index 0000000..f8782a5 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicsgridview/gridview.qml @@ -0,0 +1,51 @@ +import Qt 4.6 + +Rectangle { + width: 300; height: 400; color: "black" + + ListModel { + id: appModel + ListElement { lColor: "red" } + ListElement { lColor: "yellow" } + ListElement { lColor: "green" } + ListElement { lColor: "blue" } + ListElement { lColor: "purple" } + ListElement { lColor: "orange" } + ListElement { lColor: "pink" } + ListElement { lColor: "brown" } + ListElement { lColor: "gray" } + ListElement { lColor: "red" } + ListElement { lColor: "yellow" } + ListElement { lColor: "green" } + ListElement { lColor: "blue" } + ListElement { lColor: "purple" } + ListElement { lColor: "orange" } + ListElement { lColor: "pink" } + ListElement { lColor: "brown" } + ListElement { lColor: "gray" } + } + + Component { + id: appDelegate + Item { + width: 100; height: 100 + Rectangle { + color: lColor; x: 4; y: 4 + width: 92; height: 92 + } + } + } + + Component { + id: appHighlight + Rectangle { width: 100; height: 100; color: "white"; z: 3000 } + } + + GridView { + anchors.fill: parent + cellWidth: 100; cellHeight: 100; cacheBuffer: 200 + model: appModel; delegate: appDelegate + highlight: appHighlight + focus: true + } +} diff --git a/tests/auto/declarative/visual/qmlgraphicsgridview/gridview2.qml b/tests/auto/declarative/visual/qmlgraphicsgridview/gridview2.qml new file mode 100644 index 0000000..81d06cf --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicsgridview/gridview2.qml @@ -0,0 +1,58 @@ +import Qt 4.6 + +Rectangle { + width: 300; height: 400; color: "black" + + ListModel { + id: appModel + ListElement { lColor: "red" } + ListElement { lColor: "yellow" } + ListElement { lColor: "green" } + ListElement { lColor: "blue" } + ListElement { lColor: "purple" } + ListElement { lColor: "orange" } + ListElement { lColor: "pink" } + ListElement { lColor: "brown" } + ListElement { lColor: "gray" } + ListElement { lColor: "red" } + ListElement { lColor: "yellow" } + ListElement { lColor: "green" } + ListElement { lColor: "blue" } + ListElement { lColor: "purple" } + ListElement { lColor: "orange" } + ListElement { lColor: "pink" } + ListElement { lColor: "brown" } + ListElement { lColor: "gray" } + ListElement { lColor: "red" } + ListElement { lColor: "yellow" } + ListElement { lColor: "green" } + } + + Component { + id: appDelegate + Item { + width: 100; height: 100 + Rectangle { + color: lColor; x: 4; y: 4 + width: 92; height: 92 + } + } + } + + GridView { + id: gridView; anchors.fill: parent + cellWidth: 100; cellHeight: 100; cacheBuffer: 200 + model: appModel; delegate: appDelegate; focus: true + keyNavigationWraps: true + + flickableData: [ + Rectangle { + color: "transparent"; border.color: "white"; border.width: 8; z: 3000 + height: 100; width: 100; x: 4; y: 4 + x: EaseFollow { source: gridView.currentItem.x; velocity: 500 } + y: EaseFollow { source: gridView.currentItem.y; velocity: 500 } + } + ] + } + +} diff --git a/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview-2.0.png b/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview-2.0.png Binary files differnew file mode 100644 index 0000000..18c8a9e --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview-2.0.png diff --git a/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview-2.1.png b/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview-2.1.png Binary files differnew file mode 100644 index 0000000..e86acb4 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview-2.1.png diff --git a/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview-2.2.png b/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview-2.2.png Binary files differnew file mode 100644 index 0000000..17990b7 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview-2.2.png diff --git a/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview-2.3.png b/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview-2.3.png Binary files differnew file mode 100644 index 0000000..18c8a9e --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview-2.3.png diff --git a/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview-2.4.png b/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview-2.4.png Binary files differnew file mode 100644 index 0000000..18c8a9e --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview-2.4.png diff --git a/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview-2.5.png b/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview-2.5.png Binary files differnew file mode 100644 index 0000000..8636f8f --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview-2.5.png diff --git a/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview-2.6.png b/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview-2.6.png Binary files differnew file mode 100644 index 0000000..fa7c4b6 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview-2.6.png diff --git a/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview-2.qml b/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview-2.qml new file mode 100644 index 0000000..b8ff925 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview-2.qml @@ -0,0 +1,2303 @@ +import Qt.VisualTest 4.6 + +VisualTest { + Frame { + msec: 0 + } + Frame { + msec: 16 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 32 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 48 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 64 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 80 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 96 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 112 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 128 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 144 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 160 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 176 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 192 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 208 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 224 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 240 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 256 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 272 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 288 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 304 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 320 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 336 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 352 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 368 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 384 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 400 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 416 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 432 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 448 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 464 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 480 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 496 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 512 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 528 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 544 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 560 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 576 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 592 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 608 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 624 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 640 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 656 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 672 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 688 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 704 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 720 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 736 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 752 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 768 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 784 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 800 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 816 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 832 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 848 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 864 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 880 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 896 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 912 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 928 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 944 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 960 + image: "test-pathview-2.0.png" + } + Frame { + msec: 976 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 992 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 1008 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 1024 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 1040 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Mouse { + type: 2 + button: 1 + buttons: 1 + x: 562; y: 250 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1056 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 557; y: 251 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1072 + hash: "1ed6fa56736cf7cb2f99b5d362974463" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 544; y: 254 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1088 + hash: "24f3dd6c49dd8b19cd0c387409405e18" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 534; y: 258 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1104 + hash: "08c828e7fdfba4252fa7a9fb06eb728e" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 511; y: 267 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1120 + hash: "b76110faf8520f52128b5e1af8f2b838" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 499; y: 272 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1136 + hash: "5f56acb5f39ac291cc8e73c0268df214" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 473; y: 281 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1152 + hash: "840ee0c0d8ea94e22e783a15687f979d" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 459; y: 285 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1168 + hash: "69827007bbdf5a360ccc34a016315113" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 446; y: 288 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1184 + hash: "2437beb8f9cb39b125611fb186bad820" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 433; y: 290 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 433; y: 290 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1200 + hash: "df07c389b26fc191234c70b97bfaa432" + } + Frame { + msec: 1216 + hash: "8d4e23f4e91d0e0df9d87c3171d5971f" + } + Frame { + msec: 1232 + hash: "dd79837aefeabffa7184be07f2a98969" + } + Frame { + msec: 1248 + hash: "2d9bb2aaf4b882902f090ff0c89053c8" + } + Frame { + msec: 1264 + hash: "b1ec9adbb026d8002a7f16fe9a8d56d2" + } + Frame { + msec: 1280 + hash: "43b23d6e1aeeb36350c3530650e9156f" + } + Frame { + msec: 1296 + hash: "03f231597c4d5010ee71c74217f2483d" + } + Frame { + msec: 1312 + hash: "8607c7412a5a1b4ea1522f28c465a83e" + } + Frame { + msec: 1328 + hash: "671e80e290bec997eb36320ff76fdccf" + } + Frame { + msec: 1344 + hash: "5f6717112bd45e5ebe194e0f87d12be6" + } + Frame { + msec: 1360 + hash: "ca8e33c7a5428d70ae13cb64e5098a48" + } + Frame { + msec: 1376 + hash: "86e60eb395f66bbaa1ec07b3e07013c0" + } + Frame { + msec: 1392 + hash: "342fa6ddc02d0a793e97a79ba8882415" + } + Frame { + msec: 1408 + hash: "a907fbcc47807d4eb6d66e070ea7f2de" + } + Frame { + msec: 1424 + hash: "04838f8b495bed6d050cbe54d00aad31" + } + Frame { + msec: 1440 + hash: "d485534916473ea6c4612230c5a95421" + } + Frame { + msec: 1456 + hash: "1d3da7cc5b9120724645558584f2f0f3" + } + Frame { + msec: 1472 + hash: "c271f057d5f1745e910b2b407c52a4f3" + } + Frame { + msec: 1488 + hash: "050d1814a9ced514db6cfd2732eb76be" + } + Frame { + msec: 1504 + hash: "cfcd21aadfe3fd611caad83920fb2432" + } + Frame { + msec: 1520 + hash: "472f900ef8eef74522da3338ce7fa93e" + } + Frame { + msec: 1536 + hash: "f9d892a81c6ba3b9fc4c6e76082d4fa7" + } + Frame { + msec: 1552 + hash: "a3febe1c3c4585e25a410a91cc34c1fa" + } + Frame { + msec: 1568 + hash: "74cd765c9d9a6fb243070b4a56a07e87" + } + Frame { + msec: 1584 + hash: "469d324abbef017a99bc587bfae622b3" + } + Frame { + msec: 1600 + hash: "6054ff6e658f0a5f5e313f0a724d9610" + } + Frame { + msec: 1616 + hash: "67cee7ebe428c9d35f1f28274f3049d5" + } + Frame { + msec: 1632 + hash: "ce6c3a1dd726eacbba6306e56121beef" + } + Frame { + msec: 1648 + hash: "a7d5f703c98c0c8cd32b189a79e1fd05" + } + Frame { + msec: 1664 + hash: "41cfd9982767ba904843fb73a5a0ed71" + } + Frame { + msec: 1680 + hash: "388dcde17a820800237d1185372d889f" + } + Frame { + msec: 1696 + hash: "3bd72585388f04d55900ccd345cd576e" + } + Frame { + msec: 1712 + hash: "0e5c63b066f2b70000eca7f3aaa3a195" + } + Frame { + msec: 1728 + hash: "15199f3e9f00afc76279b5bbffb78d92" + } + Frame { + msec: 1744 + hash: "596ad681a3b96afbc284e3af5fd173cb" + } + Frame { + msec: 1760 + hash: "e5ae2d0245fc5d74c6ea3f7dddd1ca2a" + } + Frame { + msec: 1776 + hash: "0d152716f9ebe5f0fae3f5cabb20630f" + } + Frame { + msec: 1792 + hash: "74afbfa464b0d19b53432fa4d5ea2804" + } + Frame { + msec: 1808 + hash: "c8aa3f4738a8c07cdf2450a24c885ce6" + } + Frame { + msec: 1824 + hash: "2e4e0003f1b1cb10593075862b972643" + } + Frame { + msec: 1840 + hash: "acea518c7da7330ae78daf5fbfd1a423" + } + Frame { + msec: 1856 + hash: "0b8d4ea6947b522c6aa9a32d9f16723e" + } + Frame { + msec: 1872 + hash: "19f2aef82586817ef574a70865060997" + } + Frame { + msec: 1888 + hash: "115565eb0ba3024dbf15d00ed242c389" + } + Frame { + msec: 1904 + hash: "7e59425c85acf93f5bf55e139c148737" + } + Frame { + msec: 1920 + image: "test-pathview-2.1.png" + } + Frame { + msec: 1936 + hash: "ce96601476cf55f665bef09bb1b038e2" + } + Frame { + msec: 1952 + hash: "dc6eaacefe37fc709ac0bef99110f796" + } + Frame { + msec: 1968 + hash: "82ad9b84425bd8e385524cb052a8fdd4" + } + Frame { + msec: 1984 + hash: "608000b44ade998e225010d5ea562316" + } + Frame { + msec: 2000 + hash: "ec6b4d519b7bafcf5293c2b5e6585007" + } + Frame { + msec: 2016 + hash: "9895792ffa929ba6fc600949f11766b6" + } + Frame { + msec: 2032 + hash: "0d2b27c9ca22520b269f93c90de08df4" + } + Frame { + msec: 2048 + hash: "78a61e4565db709215b419aa56f6efab" + } + Frame { + msec: 2064 + hash: "d6f2aebed062d093c00b27a52f0b14b8" + } + Frame { + msec: 2080 + hash: "21b7a438ad1e835b84e5576e52abbe84" + } + Frame { + msec: 2096 + hash: "703e32f43e9a71b8677d6839a0eafe06" + } + Frame { + msec: 2112 + hash: "b04bea8af558de4120723fc5abd0f36c" + } + Frame { + msec: 2128 + hash: "ac8e91c3b55e058ce8ff08ad6e3af9b6" + } + Frame { + msec: 2144 + hash: "54846c8c70b232d05ff5eaf144f6f7d3" + } + Frame { + msec: 2160 + hash: "52281806f5c80512b4bcab7f61139f74" + } + Frame { + msec: 2176 + hash: "a352657ff34ef8962162c00647df343a" + } + Frame { + msec: 2192 + hash: "3a0b12d1f8bf5cae8ac06289dd30d52a" + } + Frame { + msec: 2208 + hash: "2c6bbcd05719f69b9a67be18de2084a6" + } + Frame { + msec: 2224 + hash: "ab091484522587412b0e8aceeb8987ce" + } + Frame { + msec: 2240 + hash: "13682b0d45bcbad0f011d08899085b1d" + } + Frame { + msec: 2256 + hash: "3c5d6f82eafd1b04edfbcbffbdbe2177" + } + Frame { + msec: 2272 + hash: "151803d70b7c3327df32c8602fcd677a" + } + Frame { + msec: 2288 + hash: "78613cec5364fe3f0df84188793d8eac" + } + Frame { + msec: 2304 + hash: "fc05a3cad43af35230c5ba89f6fd13c5" + } + Frame { + msec: 2320 + hash: "9f826733b300c89eeb80452129505e8b" + } + Frame { + msec: 2336 + hash: "8565efc5c1fb1bdf5629e3bd495bb611" + } + Frame { + msec: 2352 + hash: "3b8f6e8c526ab8cce170277c378a5a69" + } + Frame { + msec: 2368 + hash: "07db3bc0ab19e0ca829e89558bacf1a1" + } + Frame { + msec: 2384 + hash: "ed8843024c6ac28a8c782839b362149c" + } + Frame { + msec: 2400 + hash: "381a9f6564c090613aa2cd0476b95210" + } + Frame { + msec: 2416 + hash: "c3fabd891fa8e27fd71df175db383667" + } + Frame { + msec: 2432 + hash: "9b441792fdaa9ba9d340fc0c6a9c11bd" + } + Frame { + msec: 2448 + hash: "3209c9ba69fa016370e3d56e7e1e37a4" + } + Frame { + msec: 2464 + hash: "34da0a01453fbb2571b370257fd35f8e" + } + Mouse { + type: 2 + button: 1 + buttons: 1 + x: 591; y: 245 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 588; y: 245 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2480 + hash: "32e6204a07c493d0a0f9f50773fe8f32" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 585; y: 245 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2496 + hash: "2a1814768ae500ba9c24bc2e3e4de1d5" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 582; y: 245 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2512 + hash: "7cf6e3c52d12d590beafd061979a49cb" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 574; y: 245 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 565; y: 246 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2528 + hash: "c66c36642ab7f6c32b45e27de38d23b6" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 553; y: 246 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2544 + hash: "6e003380cc6fd303ae3b499863225ba5" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 538; y: 246 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2560 + hash: "a790259cea2c247493be58c6018435b9" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 523; y: 247 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 523; y: 247 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2576 + hash: "e6cce7468a27b5063821df8dbaa15c18" + } + Frame { + msec: 2592 + hash: "ff8386cbe89aeac184f4a75237ef4a14" + } + Frame { + msec: 2608 + hash: "1a11a90853b025837b991be40efb78f8" + } + Frame { + msec: 2624 + hash: "17da10de7e2d2fcf125207e2873bdee8" + } + Frame { + msec: 2640 + hash: "dfbda435d05903cc3a31f4f8f31e8985" + } + Frame { + msec: 2656 + hash: "1f3753e809099f20c6289f150a096935" + } + Frame { + msec: 2672 + hash: "9454afc9d70103e1f1c00eb0ad2ca534" + } + Frame { + msec: 2688 + hash: "860ab90e2421a0c8faab304915b5e6f2" + } + Frame { + msec: 2704 + hash: "600258507426a8c3c89e3591ee9328f1" + } + Frame { + msec: 2720 + hash: "0795a607b893da2bdc0970195f3039fd" + } + Frame { + msec: 2736 + hash: "e300b9109e242d85537fc3f4461eaf8e" + } + Frame { + msec: 2752 + hash: "dbb84b38e2bda694f210f133dc133180" + } + Frame { + msec: 2768 + hash: "2455e9de47da4db88eef35fea1dc2abe" + } + Frame { + msec: 2784 + hash: "5f0c3d7e089c921a68813a48f0fd8844" + } + Frame { + msec: 2800 + hash: "e6d9e7d0fdc724a6a1804bc94629cab4" + } + Frame { + msec: 2816 + hash: "d177183bcbaa27ad061fd88bd037277d" + } + Frame { + msec: 2832 + hash: "78dd13fa6367abd14374462d89a3d066" + } + Frame { + msec: 2848 + hash: "41d12e4c362ccc99a1a04b3a09f0e68c" + } + Frame { + msec: 2864 + hash: "5112700bf72aacb176e63ef054fce244" + } + Frame { + msec: 2880 + image: "test-pathview-2.2.png" + } + Frame { + msec: 2896 + hash: "0257e67512c62ffc42a272fd304e4ed3" + } + Frame { + msec: 2912 + hash: "42cd0a98aa0f3768cf77aac284072fa9" + } + Frame { + msec: 2928 + hash: "811d27f89b0c434fc49e4280f85c2f27" + } + Frame { + msec: 2944 + hash: "887406c50c666d08e4d98c040efae9a5" + } + Frame { + msec: 2960 + hash: "27e10fa9d82920c7f761465501d44564" + } + Frame { + msec: 2976 + hash: "ba67dbe0010ba2aae3ca100886b11553" + } + Frame { + msec: 2992 + hash: "8064db575e2c74c0faf7782adc527a08" + } + Frame { + msec: 3008 + hash: "b7fd5446ad957610ab853e0c597b9a36" + } + Frame { + msec: 3024 + hash: "092b53eb50e91d74db7899328899cfd3" + } + Frame { + msec: 3040 + hash: "0346065ad603b41db9365987ebe81586" + } + Frame { + msec: 3056 + hash: "705083f27a338fea544c9806f0d8fcb3" + } + Frame { + msec: 3072 + hash: "fc29b4888e26deec4c983e487b9bd058" + } + Frame { + msec: 3088 + hash: "0ff734e0509908eba292c1814f677e5b" + } + Frame { + msec: 3104 + hash: "7181d9011ddd3ad49ee95fac2e146b12" + } + Frame { + msec: 3120 + hash: "4478b07b0331bb30e60f23ee74475f73" + } + Frame { + msec: 3136 + hash: "514aa7a4b1230ae1701004f479eeb5f2" + } + Frame { + msec: 3152 + hash: "56e51f8f36e0f1a5a4b6b21c41151375" + } + Frame { + msec: 3168 + hash: "f58216f12e507a91482ded5372f960c7" + } + Frame { + msec: 3184 + hash: "18e8675ca5ea7ade7e32b29f1632e1ff" + } + Frame { + msec: 3200 + hash: "13ec0166cc7dd82042e596739c598a1e" + } + Frame { + msec: 3216 + hash: "5cebf9afa912b17ac3161619d238e5da" + } + Frame { + msec: 3232 + hash: "f096b191e347b7e2eab51b6adc1a5aac" + } + Frame { + msec: 3248 + hash: "81cffc13a615ab673172912760863c08" + } + Frame { + msec: 3264 + hash: "e89c7acfc07bc0eb6e9740d545400064" + } + Frame { + msec: 3280 + hash: "e681f06f57d43a38acb29a3cb45e4384" + } + Frame { + msec: 3296 + hash: "945bfe7808fb620dc3f7ad887183244c" + } + Frame { + msec: 3312 + hash: "4d1fc53701adce4e4af87c32e6c5a8de" + } + Frame { + msec: 3328 + hash: "c42bbf27e800558fab33bc6e9a0f36b9" + } + Frame { + msec: 3344 + hash: "5f48f59812b17a9be466f0601f0ed0df" + } + Frame { + msec: 3360 + hash: "f3a3f645115077b7aeb66465280b7a16" + } + Frame { + msec: 3376 + hash: "d1c295b2157001ff1020515f4b2aceaa" + } + Frame { + msec: 3392 + hash: "e5f364e0e4bd75dd04280f6b6f48b8ba" + } + Frame { + msec: 3408 + hash: "f439df4b5907ba0201c0dad934115721" + } + Frame { + msec: 3424 + hash: "2e7eb0e999792f3aa87c63865f68d26b" + } + Frame { + msec: 3440 + hash: "45d3ccb3b03adc8323445207d2dca502" + } + Frame { + msec: 3456 + hash: "c345f92a25406e33256bfe47dc7f72f3" + } + Frame { + msec: 3472 + hash: "dcb2663d27d644c0b50aa7386aa9d488" + } + Frame { + msec: 3488 + hash: "ebe4b9eaf39676bcdd968f8517efa222" + } + Frame { + msec: 3504 + hash: "deb3e3e6fdf8fe18de907f88822538e8" + } + Frame { + msec: 3520 + hash: "30e8ab0e6cf32a45190c4b29e458d858" + } + Frame { + msec: 3536 + hash: "059e6f57c2c78a25ab8b515c878231f9" + } + Frame { + msec: 3552 + hash: "fa7621f338ae187edac5cb69b22e64b3" + } + Frame { + msec: 3568 + hash: "bf287cbb0963fc8e575cd95808e1983d" + } + Frame { + msec: 3584 + hash: "741dc09e0ae13d6afbdaae701cb699ef" + } + Frame { + msec: 3600 + hash: "8dd52007df5585aed4b9737a8314a74d" + } + Frame { + msec: 3616 + hash: "ddcd945a3a4467d8dd0b7a4197aafed5" + } + Frame { + msec: 3632 + hash: "015deb5f228fa2f77978315ccca4f4c8" + } + Frame { + msec: 3648 + hash: "e1c960e966873e694837fd98f231cfcb" + } + Frame { + msec: 3664 + hash: "17a177d37b427d9488e36d19b345a397" + } + Frame { + msec: 3680 + hash: "d4aded08d04f79d50536ecf539c0583d" + } + Frame { + msec: 3696 + hash: "72890e9b84acf9df6083e23ab9270da1" + } + Frame { + msec: 3712 + hash: "313859115de570f8d41f67c4db7cf49e" + } + Frame { + msec: 3728 + hash: "98918d73b6d6b375db53470dd72c7b35" + } + Frame { + msec: 3744 + hash: "ff706517a4d257747893c11a3b059926" + } + Frame { + msec: 3760 + hash: "73e62664a31232c1a349568c8da6ce64" + } + Frame { + msec: 3776 + hash: "bed046c6eae90d267e859cd76d3eacfb" + } + Frame { + msec: 3792 + hash: "4643348fc1b47f0d3244e7e717247953" + } + Frame { + msec: 3808 + hash: "0305bfc35b5618da19e9eabb3c1b5d2b" + } + Frame { + msec: 3824 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 3840 + image: "test-pathview-2.3.png" + } + Frame { + msec: 3856 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 3872 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 3888 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 3904 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 3920 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 3936 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 3952 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 3968 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 3984 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4000 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4016 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Mouse { + type: 2 + button: 1 + buttons: 1 + x: 305; y: 280 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4032 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 305; y: 281 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4048 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 306; y: 281 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4064 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 308; y: 281 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4080 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 310; y: 282 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4096 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 313; y: 283 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 317; y: 283 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4112 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 321; y: 283 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4128 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 328; y: 283 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4144 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 341; y: 283 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 347; y: 282 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4160 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 360; y: 281 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4176 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 385; y: 282 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4192 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 433; y: 292 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 486; y: 307 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4208 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 538; y: 322 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4224 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 588; y: 336 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4240 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 620; y: 343 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 677; y: 354 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4256 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 733; y: 362 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4272 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 785; y: 365 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4288 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 830; y: 365 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 861; y: 357 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4304 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 879; y: 346 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4320 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 888; y: 335 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4336 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 893; y: 326 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 893; y: 326 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4352 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4368 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4384 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4400 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4416 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4432 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4448 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4464 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4480 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4496 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4512 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4528 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4544 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4560 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4576 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4592 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4608 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4624 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4640 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4656 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4672 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4688 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4704 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4720 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4736 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4752 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4768 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4784 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4800 + image: "test-pathview-2.4.png" + } + Frame { + msec: 4816 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4832 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4848 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4864 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4880 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4896 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4912 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4928 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4944 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4960 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4976 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 4992 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 5008 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 5024 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 5040 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 5056 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 5072 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 5088 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 5104 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 5120 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 5136 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 5152 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 5168 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 5184 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 5200 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 5216 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 5232 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 5248 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 5264 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 5280 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 5296 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 5312 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 5328 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 5344 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 5360 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Frame { + msec: 5376 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Mouse { + type: 2 + button: 1 + buttons: 1 + x: 242; y: 280 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5392 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 244; y: 280 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 246; y: 281 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5408 + hash: "754f9689239e6154a762a6a1e9e0131b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 251; y: 282 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5424 + hash: "ba4e61f8de7f078cfc1e5fc8dd3c65f3" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 261; y: 282 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5440 + hash: "00389598468dbd1a90cada9543715770" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 300; y: 279 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5456 + hash: "ab020b76bc23554e176bd3a59712c3bc" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 350; y: 282 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5472 + hash: "96483c5c51cc851c55166b13617b12ea" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 417; y: 290 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5488 + hash: "1ad679d1400a0f185a380a75840c6a50" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 500; y: 300 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 585; y: 309 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5504 + hash: "b5ed338d402d16a831c0595311350789" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 669; y: 315 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 669; y: 315 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5520 + hash: "bf51ff7b6f264170d9c5700559e03262" + } + Frame { + msec: 5536 + hash: "0d62681e661aad7b67b880e13afeb4de" + } + Frame { + msec: 5552 + hash: "3371739270c458d4ce8a08f2e12d4ba5" + } + Frame { + msec: 5568 + hash: "db271b0ebfa0172d8386ac9afde9f296" + } + Frame { + msec: 5584 + hash: "d64c064ab483c9636b2736c67b2b1a48" + } + Frame { + msec: 5600 + hash: "20a8ccb0ff1c0d5ff606b343f1a32bff" + } + Frame { + msec: 5616 + hash: "5547bb0a4d6b51733829597b9d8d141a" + } + Frame { + msec: 5632 + hash: "1135177a5cb24aa11372653985599775" + } + Frame { + msec: 5648 + hash: "5031ea6ca8ec59155edb7c1f10f77925" + } + Frame { + msec: 5664 + hash: "7c5c1015af23f32c002a24a880201883" + } + Frame { + msec: 5680 + hash: "c1dd3ad07775d74d2e81b830d07543e0" + } + Frame { + msec: 5696 + hash: "ad6651f644be3c6f1ebf340809fe516f" + } + Frame { + msec: 5712 + hash: "1eb69541ae67d9d9193b86a6592de4c2" + } + Frame { + msec: 5728 + hash: "c9c40ec693a421243804efb8f99707f4" + } + Frame { + msec: 5744 + hash: "832884a5102069ca085001156a04e74e" + } + Frame { + msec: 5760 + image: "test-pathview-2.5.png" + } + Frame { + msec: 5776 + hash: "df0c7d73069e1087d34c7a703197cb2a" + } + Frame { + msec: 5792 + hash: "4a8e1f548e48b86140aa1a5fa8b17bd3" + } + Frame { + msec: 5808 + hash: "f79f47e3a0c16a1361fa287a594c4673" + } + Frame { + msec: 5824 + hash: "c26da5ed2e4055f5c172b48163560143" + } + Frame { + msec: 5840 + hash: "0e971cd0c2e25d52b689d4b22509a7d9" + } + Frame { + msec: 5856 + hash: "40bae0ef35772c476cddccc034b7c872" + } + Frame { + msec: 5872 + hash: "ce1fc0faae5e313bc21e024dac3097da" + } + Frame { + msec: 5888 + hash: "ba614972cec0e9fa47cb09f1ba77eefb" + } + Frame { + msec: 5904 + hash: "2266ae29490ae01ff8a2329956c124a7" + } + Frame { + msec: 5920 + hash: "debae0194926cb5af0a8f7fdfb7f08b8" + } + Frame { + msec: 5936 + hash: "10a7111367cfcbe24063b9ee6975e4fc" + } + Frame { + msec: 5952 + hash: "3c0f9e0603e33506f31ff6569d007b97" + } + Frame { + msec: 5968 + hash: "69d92abce3f093cc7610bd715a7396fa" + } + Frame { + msec: 5984 + hash: "befad9882a6af920684d94c74d8d7f78" + } + Frame { + msec: 6000 + hash: "10632052ac53504bd36687ba7aa7ebc1" + } + Frame { + msec: 6016 + hash: "af4053320c12cbcc6f0e7e321dba1c83" + } + Frame { + msec: 6032 + hash: "4560c5fcef9d630d744e80dc46947b9d" + } + Frame { + msec: 6048 + hash: "012ee780ed98131321aaa241a2599c5f" + } + Frame { + msec: 6064 + hash: "25d3fb9d44bc2be3b86a5451d8ffaec2" + } + Frame { + msec: 6080 + hash: "09c5cbff81a5c9fae40ec29b936ee52b" + } + Frame { + msec: 6096 + hash: "27a0b1d2ea2fc8729e5542c6462c1815" + } + Frame { + msec: 6112 + hash: "c6f347c942aed190ebee077b5bd0888c" + } + Frame { + msec: 6128 + hash: "029d78844bd72acb310bd2887489bdf0" + } + Frame { + msec: 6144 + hash: "3af16ab398f1515e90e81460ac061a74" + } + Frame { + msec: 6160 + hash: "0151ca050722645e2899919f79f6aa0b" + } + Frame { + msec: 6176 + hash: "eead61dfc1851bc9fba3b4bca510af6a" + } + Frame { + msec: 6192 + hash: "da822098c606556ad8683316f5a821ab" + } + Frame { + msec: 6208 + hash: "ee47fc2bcf2264f5799a76308fbf2b65" + } + Frame { + msec: 6224 + hash: "81b208b84ca887d35cda79b5c0e4cd4e" + } + Frame { + msec: 6240 + hash: "fd52ccaddcb79a2dfa12bb57640a3610" + } + Frame { + msec: 6256 + hash: "b187e8fcd0a777657a733c260aaaf557" + } + Frame { + msec: 6272 + hash: "2cfe47a86bf9df3704002288b6249ed9" + } + Frame { + msec: 6288 + hash: "b79b81706f62789a15557ac1a017addf" + } + Frame { + msec: 6304 + hash: "77a84eb447fe7034783678f6903ff76d" + } + Frame { + msec: 6320 + hash: "82529385d3072812fa737193914ece1c" + } + Frame { + msec: 6336 + hash: "a7ccfa6c8aebf2016f2f12045d2f1abe" + } + Frame { + msec: 6352 + hash: "486d38e7ea6a5cf13f2ecd1c6919ece7" + } + Frame { + msec: 6368 + hash: "6c5bd377d2289ec88f969e961f1dcf65" + } + Frame { + msec: 6384 + hash: "92e20565fbcf8c7c9a67726f3a0dd41f" + } + Frame { + msec: 6400 + hash: "0fcd995a26262b875440d0d9f03d16c4" + } + Frame { + msec: 6416 + hash: "f679759eddca739764bd2816ee53ef31" + } + Frame { + msec: 6432 + hash: "adffd1da9b750df3d9f48820a2235c0b" + } + Frame { + msec: 6448 + hash: "e0f8730acf7a6802ade228f95d700c08" + } + Frame { + msec: 6464 + hash: "2c5209c3715bb9f39ac23a8b32a17ef9" + } + Frame { + msec: 6480 + hash: "741694ef4cbd3477a8e13ba89fc9d607" + } + Frame { + msec: 6496 + hash: "e88d6a61acb3fde6b441c2e718a0c2fb" + } + Frame { + msec: 6512 + hash: "b91863800e6ab967616d68def388d5d5" + } + Frame { + msec: 6528 + hash: "4c28a99236c351a2e3e3301c0b5bbba8" + } + Frame { + msec: 6544 + hash: "6affb524d7f63fef94d29629a148be04" + } + Frame { + msec: 6560 + hash: "f7823d25adf673117f010738d977b787" + } + Frame { + msec: 6576 + hash: "dfb930f3db30ec53c8e9a1aa5d9056e4" + } + Frame { + msec: 6592 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 6608 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 6624 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 6640 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 6656 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 6672 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 6688 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 6704 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 6720 + image: "test-pathview-2.6.png" + } + Frame { + msec: 6736 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 6752 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 6768 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 6784 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 6800 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 6816 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 6832 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 6848 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 6864 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 6880 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 6896 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 6912 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 6928 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 6944 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 6960 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 6976 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 6992 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 7008 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 7024 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 7040 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 7056 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 7072 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 7088 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 7104 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 7120 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 7136 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 7152 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 7168 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 7184 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 7200 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 7216 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 7232 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 7248 + hash: "57269234dc01b66f6aeb841c328c06b5" + } + Frame { + msec: 7264 + hash: "57269234dc01b66f6aeb841c328c06b5" + } +} diff --git a/tests/auto/declarative/visual/qmlgraphicspathview/test-pathview-2.qml b/tests/auto/declarative/visual/qmlgraphicspathview/test-pathview-2.qml new file mode 100644 index 0000000..c6d71d5 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicspathview/test-pathview-2.qml @@ -0,0 +1,62 @@ +import Qt 4.6 + +Rectangle { + width: 800; height: 450 + //Same as test-pathview, but with pathItemCount < model.count + + ListModel { + id: rssModel + ListElement { lColor: "red" } + ListElement { lColor: "green" } + ListElement { lColor: "yellow" } + ListElement { lColor: "blue" } + ListElement { lColor: "purple" } + ListElement { lColor: "gray" } + ListElement { lColor: "brown" } + ListElement { lColor: "thistle" } + } + + Component { + id: photoDelegate + Rectangle { + id: wrapper + width: 85; height: 85; color: lColor + scale: wrapper.PathView.scale + + transform: Rotation { + id: itemRotation; origin.x: wrapper.width/2; origin.y: wrapper.height/2 + axis.y: 1; axis.z: 0; angle: wrapper.PathView.angle + } + } + } + + PathView { + id: pathView; model: rssModel; delegate: photoDelegate + y: 100; width: 800; height: 330; pathItemCount: 6; z: 1 + focus: true + path: Path { + startX: -50; startY: 40; + + PathAttribute { name: "scale"; value: 0.5 } + PathAttribute { name: "angle"; value: -45 } + + PathCubic { + x: 400; y: 220 + control1X: 140; control1Y: 40 + control2X: 210; control2Y: 220 + } + + PathAttribute { name: "scale"; value: 1.2 } + PathAttribute { name: "angle"; value: 0 } + + PathCubic { + x: 850; y: 40 + control2X: 660; control2Y: 40 + control1X: 590; control1Y: 220 + } + + PathAttribute { name: "scale"; value: 0.5 } + PathAttribute { name: "angle"; value: 45 } + } + } +} diff --git a/tests/auto/declarative/visual/qmlgraphicspositioners/data/dynamic.0.png b/tests/auto/declarative/visual/qmlgraphicspositioners/data/dynamic.0.png Binary files differnew file mode 100644 index 0000000..f474afe --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicspositioners/data/dynamic.0.png diff --git a/tests/auto/declarative/visual/qmlgraphicspositioners/data/dynamic.1.png b/tests/auto/declarative/visual/qmlgraphicspositioners/data/dynamic.1.png Binary files differnew file mode 100644 index 0000000..8b7ae74 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicspositioners/data/dynamic.1.png diff --git a/tests/auto/declarative/visual/qmlgraphicspositioners/data/dynamic.2.png b/tests/auto/declarative/visual/qmlgraphicspositioners/data/dynamic.2.png Binary files differnew file mode 100644 index 0000000..9088bb4 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicspositioners/data/dynamic.2.png diff --git a/tests/auto/declarative/visual/qmlgraphicspositioners/data/dynamic.3.png b/tests/auto/declarative/visual/qmlgraphicspositioners/data/dynamic.3.png Binary files differnew file mode 100644 index 0000000..18cd429 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicspositioners/data/dynamic.3.png diff --git a/tests/auto/declarative/visual/qmlgraphicspositioners/data/dynamic.4.png b/tests/auto/declarative/visual/qmlgraphicspositioners/data/dynamic.4.png Binary files differnew file mode 100644 index 0000000..739afc1 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicspositioners/data/dynamic.4.png diff --git a/tests/auto/declarative/visual/qmlgraphicspositioners/data/dynamic.5.png b/tests/auto/declarative/visual/qmlgraphicspositioners/data/dynamic.5.png Binary files differnew file mode 100644 index 0000000..93f0682 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicspositioners/data/dynamic.5.png diff --git a/tests/auto/declarative/visual/qmlgraphicspositioners/data/dynamic.qml b/tests/auto/declarative/visual/qmlgraphicspositioners/data/dynamic.qml new file mode 100644 index 0000000..7091bb3 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicspositioners/data/dynamic.qml @@ -0,0 +1,1603 @@ +import Qt.VisualTest 4.6 + +VisualTest { + Frame { + msec: 0 + } + Frame { + msec: 16 + hash: "ee42cfa8cbbd67becb7d50998d26fe73" + } + Frame { + msec: 32 + hash: "ee42cfa8cbbd67becb7d50998d26fe73" + } + Frame { + msec: 48 + hash: "ee42cfa8cbbd67becb7d50998d26fe73" + } + Frame { + msec: 64 + hash: "ee42cfa8cbbd67becb7d50998d26fe73" + } + Frame { + msec: 80 + hash: "ee42cfa8cbbd67becb7d50998d26fe73" + } + Frame { + msec: 96 + hash: "ee42cfa8cbbd67becb7d50998d26fe73" + } + Frame { + msec: 112 + hash: "ee42cfa8cbbd67becb7d50998d26fe73" + } + Frame { + msec: 128 + hash: "ee42cfa8cbbd67becb7d50998d26fe73" + } + Frame { + msec: 144 + hash: "ee42cfa8cbbd67becb7d50998d26fe73" + } + Frame { + msec: 160 + hash: "ee42cfa8cbbd67becb7d50998d26fe73" + } + Frame { + msec: 176 + hash: "ee42cfa8cbbd67becb7d50998d26fe73" + } + Frame { + msec: 192 + hash: "ee42cfa8cbbd67becb7d50998d26fe73" + } + Frame { + msec: 208 + hash: "ee42cfa8cbbd67becb7d50998d26fe73" + } + Frame { + msec: 224 + hash: "ee42cfa8cbbd67becb7d50998d26fe73" + } + Frame { + msec: 240 + hash: "ee42cfa8cbbd67becb7d50998d26fe73" + } + Frame { + msec: 256 + hash: "ee42cfa8cbbd67becb7d50998d26fe73" + } + Frame { + msec: 272 + hash: "ee42cfa8cbbd67becb7d50998d26fe73" + } + Frame { + msec: 288 + hash: "ee42cfa8cbbd67becb7d50998d26fe73" + } + Frame { + msec: 304 + hash: "ee42cfa8cbbd67becb7d50998d26fe73" + } + Frame { + msec: 320 + hash: "ee42cfa8cbbd67becb7d50998d26fe73" + } + Frame { + msec: 336 + hash: "ee42cfa8cbbd67becb7d50998d26fe73" + } + Frame { + msec: 352 + hash: "ee42cfa8cbbd67becb7d50998d26fe73" + } + Frame { + msec: 368 + hash: "ee42cfa8cbbd67becb7d50998d26fe73" + } + Frame { + msec: 384 + hash: "ee42cfa8cbbd67becb7d50998d26fe73" + } + Frame { + msec: 400 + hash: "ee42cfa8cbbd67becb7d50998d26fe73" + } + Frame { + msec: 416 + hash: "ee42cfa8cbbd67becb7d50998d26fe73" + } + Frame { + msec: 432 + hash: "ee42cfa8cbbd67becb7d50998d26fe73" + } + Frame { + msec: 448 + hash: "ee42cfa8cbbd67becb7d50998d26fe73" + } + Frame { + msec: 464 + hash: "ee42cfa8cbbd67becb7d50998d26fe73" + } + Frame { + msec: 480 + hash: "ee42cfa8cbbd67becb7d50998d26fe73" + } + Frame { + msec: 496 + hash: "ee42cfa8cbbd67becb7d50998d26fe73" + } + Frame { + msec: 512 + hash: "ee42cfa8cbbd67becb7d50998d26fe73" + } + Frame { + msec: 528 + hash: "62727b1025930e19bb03c8f533a12ced" + } + Frame { + msec: 544 + hash: "62727b1025930e19bb03c8f533a12ced" + } + Frame { + msec: 560 + hash: "62727b1025930e19bb03c8f533a12ced" + } + Frame { + msec: 576 + hash: "62727b1025930e19bb03c8f533a12ced" + } + Frame { + msec: 592 + hash: "62727b1025930e19bb03c8f533a12ced" + } + Frame { + msec: 608 + hash: "62727b1025930e19bb03c8f533a12ced" + } + Frame { + msec: 624 + hash: "62727b1025930e19bb03c8f533a12ced" + } + Frame { + msec: 640 + hash: "62727b1025930e19bb03c8f533a12ced" + } + Frame { + msec: 656 + hash: "62727b1025930e19bb03c8f533a12ced" + } + Frame { + msec: 672 + hash: "62727b1025930e19bb03c8f533a12ced" + } + Frame { + msec: 688 + hash: "62727b1025930e19bb03c8f533a12ced" + } + Frame { + msec: 704 + hash: "62727b1025930e19bb03c8f533a12ced" + } + Frame { + msec: 720 + hash: "62727b1025930e19bb03c8f533a12ced" + } + Frame { + msec: 736 + hash: "62727b1025930e19bb03c8f533a12ced" + } + Frame { + msec: 752 + hash: "62727b1025930e19bb03c8f533a12ced" + } + Frame { + msec: 768 + hash: "62727b1025930e19bb03c8f533a12ced" + } + Frame { + msec: 784 + hash: "62727b1025930e19bb03c8f533a12ced" + } + Frame { + msec: 800 + hash: "62727b1025930e19bb03c8f533a12ced" + } + Frame { + msec: 816 + hash: "62727b1025930e19bb03c8f533a12ced" + } + Frame { + msec: 832 + hash: "62727b1025930e19bb03c8f533a12ced" + } + Frame { + msec: 848 + hash: "62727b1025930e19bb03c8f533a12ced" + } + Frame { + msec: 864 + hash: "62727b1025930e19bb03c8f533a12ced" + } + Frame { + msec: 880 + hash: "62727b1025930e19bb03c8f533a12ced" + } + Frame { + msec: 896 + hash: "62727b1025930e19bb03c8f533a12ced" + } + Frame { + msec: 912 + hash: "62727b1025930e19bb03c8f533a12ced" + } + Frame { + msec: 928 + hash: "62727b1025930e19bb03c8f533a12ced" + } + Frame { + msec: 944 + hash: "62727b1025930e19bb03c8f533a12ced" + } + Frame { + msec: 960 + image: "dynamic.0.png" + } + Frame { + msec: 976 + hash: "62727b1025930e19bb03c8f533a12ced" + } + Frame { + msec: 992 + hash: "62727b1025930e19bb03c8f533a12ced" + } + Frame { + msec: 1008 + hash: "62727b1025930e19bb03c8f533a12ced" + } + Frame { + msec: 1024 + hash: "3e52e7d7d428cf1b850cb9c60dbb3c21" + } + Frame { + msec: 1040 + hash: "64f75ab14c979d33d6e0c0d86b76cd35" + } + Frame { + msec: 1056 + hash: "c198a48f4050f176465649d203d6e09a" + } + Frame { + msec: 1072 + hash: "6dd8cee5a585a96e78f2cf7478c4da62" + } + Frame { + msec: 1088 + hash: "09edfbce2ea4b8a547f769ce709dcb6b" + } + Frame { + msec: 1104 + hash: "e93d01aa6e4f5d3fc82cf5a008e3ea17" + } + Frame { + msec: 1120 + hash: "0e2e7b5eec0e62853972b0139b8c17c6" + } + Frame { + msec: 1136 + hash: "26d4f54628ce20f5665bdc6ddc7f3b6a" + } + Frame { + msec: 1152 + hash: "59836aa6eff85b0152be352b97076d89" + } + Frame { + msec: 1168 + hash: "47cc9894096731a52ca342ab04df9aad" + } + Frame { + msec: 1184 + hash: "ec95dd3b34a0f17f6fb9b5bedab73653" + } + Frame { + msec: 1200 + hash: "e32c2b70882828b5082ca3ec889a0dde" + } + Frame { + msec: 1216 + hash: "68d3f8e9c9d5388a6f8360368c8f4d2f" + } + Frame { + msec: 1232 + hash: "17378b2bd8bde7f357fa5463f457c7b2" + } + Frame { + msec: 1248 + hash: "03db786cd54ec34ce8db15953a5fc847" + } + Frame { + msec: 1264 + hash: "9e22a82a622ed0287c44cc629059d5bd" + } + Frame { + msec: 1280 + hash: "42955cd23747f7c37d0f0229c0955e90" + } + Frame { + msec: 1296 + hash: "42955cd23747f7c37d0f0229c0955e90" + } + Frame { + msec: 1312 + hash: "42955cd23747f7c37d0f0229c0955e90" + } + Frame { + msec: 1328 + hash: "42955cd23747f7c37d0f0229c0955e90" + } + Frame { + msec: 1344 + hash: "42955cd23747f7c37d0f0229c0955e90" + } + Frame { + msec: 1360 + hash: "42955cd23747f7c37d0f0229c0955e90" + } + Frame { + msec: 1376 + hash: "42955cd23747f7c37d0f0229c0955e90" + } + Frame { + msec: 1392 + hash: "42955cd23747f7c37d0f0229c0955e90" + } + Frame { + msec: 1408 + hash: "42955cd23747f7c37d0f0229c0955e90" + } + Frame { + msec: 1424 + hash: "42955cd23747f7c37d0f0229c0955e90" + } + Frame { + msec: 1440 + hash: "42955cd23747f7c37d0f0229c0955e90" + } + Frame { + msec: 1456 + hash: "42955cd23747f7c37d0f0229c0955e90" + } + Frame { + msec: 1472 + hash: "42955cd23747f7c37d0f0229c0955e90" + } + Frame { + msec: 1488 + hash: "42955cd23747f7c37d0f0229c0955e90" + } + Frame { + msec: 1504 + hash: "42955cd23747f7c37d0f0229c0955e90" + } + Frame { + msec: 1520 + hash: "981fb1ee75e307b548a32df08a86f4cd" + } + Frame { + msec: 1536 + hash: "f77568307e93d8cd9f0ae417cc19d6e3" + } + Frame { + msec: 1552 + hash: "3bdd4468e26aceee0dad6b3b97b1c1ea" + } + Frame { + msec: 1568 + hash: "252c9ebc2c32755b2289ee1b03877fe3" + } + Frame { + msec: 1584 + hash: "64169b7eb7b7ae8573556c5f80230965" + } + Frame { + msec: 1600 + hash: "4965dfa709a9ac7d8f7dfb4bf8303c65" + } + Frame { + msec: 1616 + hash: "8c53cf92510154087341ac65a93aae5a" + } + Frame { + msec: 1632 + hash: "4dd7502e3e238743d2f3cf038270491e" + } + Frame { + msec: 1648 + hash: "cd9a58316837eb92f4ac92dbd86bdba3" + } + Frame { + msec: 1664 + hash: "5de043e3ac8696b59293a2fa60ed7e65" + } + Frame { + msec: 1680 + hash: "1bf42a6f6be5a3468d2f47cccfac761e" + } + Frame { + msec: 1696 + hash: "ca05510c1ad25e5d3b002603f4379a09" + } + Frame { + msec: 1712 + hash: "f6904a918a6475f1965d74372e52a4b1" + } + Frame { + msec: 1728 + hash: "9e2312ddfc1648b615288107a06c9f9c" + } + Frame { + msec: 1744 + hash: "95c470273b1cb08d4d602efcce339554" + } + Frame { + msec: 1760 + hash: "dade96f707d4a21885480e13b258b7e9" + } + Frame { + msec: 1776 + hash: "0bfbd46f1d4cf562253fb383776cb601" + } + Frame { + msec: 1792 + hash: "0bfbd46f1d4cf562253fb383776cb601" + } + Frame { + msec: 1808 + hash: "0bfbd46f1d4cf562253fb383776cb601" + } + Frame { + msec: 1824 + hash: "0bfbd46f1d4cf562253fb383776cb601" + } + Frame { + msec: 1840 + hash: "0bfbd46f1d4cf562253fb383776cb601" + } + Frame { + msec: 1856 + hash: "0bfbd46f1d4cf562253fb383776cb601" + } + Frame { + msec: 1872 + hash: "0bfbd46f1d4cf562253fb383776cb601" + } + Frame { + msec: 1888 + hash: "0bfbd46f1d4cf562253fb383776cb601" + } + Frame { + msec: 1904 + hash: "0bfbd46f1d4cf562253fb383776cb601" + } + Frame { + msec: 1920 + image: "dynamic.1.png" + } + Frame { + msec: 1936 + hash: "0bfbd46f1d4cf562253fb383776cb601" + } + Frame { + msec: 1952 + hash: "0bfbd46f1d4cf562253fb383776cb601" + } + Frame { + msec: 1968 + hash: "0bfbd46f1d4cf562253fb383776cb601" + } + Frame { + msec: 1984 + hash: "0bfbd46f1d4cf562253fb383776cb601" + } + Frame { + msec: 2000 + hash: "0bfbd46f1d4cf562253fb383776cb601" + } + Frame { + msec: 2016 + hash: "6fc83e8d4ac99b34062c122a8f7f1850" + } + Frame { + msec: 2032 + hash: "6fc83e8d4ac99b34062c122a8f7f1850" + } + Frame { + msec: 2048 + hash: "6fc83e8d4ac99b34062c122a8f7f1850" + } + Frame { + msec: 2064 + hash: "6fc83e8d4ac99b34062c122a8f7f1850" + } + Frame { + msec: 2080 + hash: "6fc83e8d4ac99b34062c122a8f7f1850" + } + Frame { + msec: 2096 + hash: "6fc83e8d4ac99b34062c122a8f7f1850" + } + Frame { + msec: 2112 + hash: "6fc83e8d4ac99b34062c122a8f7f1850" + } + Frame { + msec: 2128 + hash: "6fc83e8d4ac99b34062c122a8f7f1850" + } + Frame { + msec: 2144 + hash: "6fc83e8d4ac99b34062c122a8f7f1850" + } + Frame { + msec: 2160 + hash: "6fc83e8d4ac99b34062c122a8f7f1850" + } + Frame { + msec: 2176 + hash: "6fc83e8d4ac99b34062c122a8f7f1850" + } + Frame { + msec: 2192 + hash: "6fc83e8d4ac99b34062c122a8f7f1850" + } + Frame { + msec: 2208 + hash: "6fc83e8d4ac99b34062c122a8f7f1850" + } + Frame { + msec: 2224 + hash: "6fc83e8d4ac99b34062c122a8f7f1850" + } + Frame { + msec: 2240 + hash: "6fc83e8d4ac99b34062c122a8f7f1850" + } + Frame { + msec: 2256 + hash: "6fc83e8d4ac99b34062c122a8f7f1850" + } + Frame { + msec: 2272 + hash: "6fc83e8d4ac99b34062c122a8f7f1850" + } + Frame { + msec: 2288 + hash: "6fc83e8d4ac99b34062c122a8f7f1850" + } + Frame { + msec: 2304 + hash: "6fc83e8d4ac99b34062c122a8f7f1850" + } + Frame { + msec: 2320 + hash: "6fc83e8d4ac99b34062c122a8f7f1850" + } + Frame { + msec: 2336 + hash: "6fc83e8d4ac99b34062c122a8f7f1850" + } + Frame { + msec: 2352 + hash: "6fc83e8d4ac99b34062c122a8f7f1850" + } + Frame { + msec: 2368 + hash: "6fc83e8d4ac99b34062c122a8f7f1850" + } + Frame { + msec: 2384 + hash: "6fc83e8d4ac99b34062c122a8f7f1850" + } + Frame { + msec: 2400 + hash: "6fc83e8d4ac99b34062c122a8f7f1850" + } + Frame { + msec: 2416 + hash: "6fc83e8d4ac99b34062c122a8f7f1850" + } + Frame { + msec: 2432 + hash: "6fc83e8d4ac99b34062c122a8f7f1850" + } + Frame { + msec: 2448 + hash: "6fc83e8d4ac99b34062c122a8f7f1850" + } + Frame { + msec: 2464 + hash: "6fc83e8d4ac99b34062c122a8f7f1850" + } + Frame { + msec: 2480 + hash: "6fc83e8d4ac99b34062c122a8f7f1850" + } + Frame { + msec: 2496 + hash: "6fc83e8d4ac99b34062c122a8f7f1850" + } + Frame { + msec: 2512 + hash: "6fc83e8d4ac99b34062c122a8f7f1850" + } + Frame { + msec: 2528 + hash: "fabf4e535bc4cc17497939d2eeae4a2d" + } + Frame { + msec: 2544 + hash: "a7981035f46869f5ae824d0c58b263b2" + } + Frame { + msec: 2560 + hash: "86d8e369bdceb499b244f84ed9e80ba3" + } + Frame { + msec: 2576 + hash: "e28a7dc7ea8690da75670b5a6e93a26b" + } + Frame { + msec: 2592 + hash: "bf4e815360a67bd80732bd8812269b21" + } + Frame { + msec: 2608 + hash: "a6f8c56cb93da8acc0c90e35596a60d4" + } + Frame { + msec: 2624 + hash: "1e60656f0758605169e51b57bd03af36" + } + Frame { + msec: 2640 + hash: "c069b26b9fae47e0104070d702ba9562" + } + Frame { + msec: 2656 + hash: "457eb2ca1adff6cbb158afa140b2f20b" + } + Frame { + msec: 2672 + hash: "4e5e750b0d94b6777aebff85d38225d9" + } + Frame { + msec: 2688 + hash: "96d9840c2354a8786a8470309be97544" + } + Frame { + msec: 2704 + hash: "ac7570cc7eeff1acd8c47f2d9328f8be" + } + Frame { + msec: 2720 + hash: "887f937bb263c54f29659f27f2b7a3e3" + } + Frame { + msec: 2736 + hash: "616371183c82b97f69a4c6e2367b8066" + } + Frame { + msec: 2752 + hash: "36de8ffa9abe850fb681b37aea45ef8b" + } + Frame { + msec: 2768 + hash: "0505101f0edaaf7ff17deeaaddc6bbf9" + } + Frame { + msec: 2784 + hash: "e8c53dd8343d7d4c384c2f8507ff0631" + } + Frame { + msec: 2800 + hash: "e8c53dd8343d7d4c384c2f8507ff0631" + } + Frame { + msec: 2816 + hash: "e8c53dd8343d7d4c384c2f8507ff0631" + } + Frame { + msec: 2832 + hash: "e8c53dd8343d7d4c384c2f8507ff0631" + } + Frame { + msec: 2848 + hash: "e8c53dd8343d7d4c384c2f8507ff0631" + } + Frame { + msec: 2864 + hash: "e8c53dd8343d7d4c384c2f8507ff0631" + } + Frame { + msec: 2880 + image: "dynamic.2.png" + } + Frame { + msec: 2896 + hash: "e8c53dd8343d7d4c384c2f8507ff0631" + } + Frame { + msec: 2912 + hash: "e8c53dd8343d7d4c384c2f8507ff0631" + } + Frame { + msec: 2928 + hash: "e8c53dd8343d7d4c384c2f8507ff0631" + } + Frame { + msec: 2944 + hash: "e8c53dd8343d7d4c384c2f8507ff0631" + } + Frame { + msec: 2960 + hash: "e8c53dd8343d7d4c384c2f8507ff0631" + } + Frame { + msec: 2976 + hash: "e8c53dd8343d7d4c384c2f8507ff0631" + } + Frame { + msec: 2992 + hash: "e8c53dd8343d7d4c384c2f8507ff0631" + } + Frame { + msec: 3008 + hash: "e8c53dd8343d7d4c384c2f8507ff0631" + } + Frame { + msec: 3024 + hash: "99e4d853d64a381e8db27707b5ff2b25" + } + Frame { + msec: 3040 + hash: "ab0e62aeffc0d57a5e1d63e6cf49b809" + } + Frame { + msec: 3056 + hash: "4ab11bbf1fb6adb0eec8895f78a24a41" + } + Frame { + msec: 3072 + hash: "634ff2ceb39a3f263a3362238a4ae252" + } + Frame { + msec: 3088 + hash: "7f4856873dc23a02297b2497101de9b9" + } + Frame { + msec: 3104 + hash: "bca3919e9d8e6dc5badd8090401dc934" + } + Frame { + msec: 3120 + hash: "824bfe40c3657cfe1368563640e4cfce" + } + Frame { + msec: 3136 + hash: "f831c1600f68bda139697c406ca70c5e" + } + Frame { + msec: 3152 + hash: "f8102ca251a9ff46a8fe5a24cff0d2d6" + } + Frame { + msec: 3168 + hash: "f33407ad684aa16efc6615d1cf6fa4b9" + } + Frame { + msec: 3184 + hash: "a73d27f776a6ebfc90309b34421700e5" + } + Frame { + msec: 3200 + hash: "ff2a4e2663fc50dfec35152f0e79f935" + } + Frame { + msec: 3216 + hash: "4935f5f58f2672e9d240625151044bda" + } + Frame { + msec: 3232 + hash: "f3ad5c203f621fe4d5d321c3c1880743" + } + Frame { + msec: 3248 + hash: "d4fb7cd2e1f6a533dae65ddbb50da8ac" + } + Frame { + msec: 3264 + hash: "91705e9234c4f02d0a730f6270f9e95f" + } + Frame { + msec: 3280 + hash: "41e177bec783497b996d6d5f6dac1a15" + } + Frame { + msec: 3296 + hash: "41e177bec783497b996d6d5f6dac1a15" + } + Frame { + msec: 3312 + hash: "41e177bec783497b996d6d5f6dac1a15" + } + Frame { + msec: 3328 + hash: "41e177bec783497b996d6d5f6dac1a15" + } + Frame { + msec: 3344 + hash: "41e177bec783497b996d6d5f6dac1a15" + } + Frame { + msec: 3360 + hash: "41e177bec783497b996d6d5f6dac1a15" + } + Frame { + msec: 3376 + hash: "41e177bec783497b996d6d5f6dac1a15" + } + Frame { + msec: 3392 + hash: "41e177bec783497b996d6d5f6dac1a15" + } + Frame { + msec: 3408 + hash: "41e177bec783497b996d6d5f6dac1a15" + } + Frame { + msec: 3424 + hash: "41e177bec783497b996d6d5f6dac1a15" + } + Frame { + msec: 3440 + hash: "41e177bec783497b996d6d5f6dac1a15" + } + Frame { + msec: 3456 + hash: "41e177bec783497b996d6d5f6dac1a15" + } + Frame { + msec: 3472 + hash: "41e177bec783497b996d6d5f6dac1a15" + } + Frame { + msec: 3488 + hash: "41e177bec783497b996d6d5f6dac1a15" + } + Frame { + msec: 3504 + hash: "41e177bec783497b996d6d5f6dac1a15" + } + Frame { + msec: 3520 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 3536 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 3552 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 3568 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 3584 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 3600 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 3616 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 3632 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 3648 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 3664 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 3680 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 3696 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 3712 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 3728 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 3744 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 3760 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 3776 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 3792 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 3808 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 3824 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 3840 + image: "dynamic.3.png" + } + Frame { + msec: 3856 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 3872 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 3888 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 3904 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 3920 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 3936 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 3952 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 3968 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 3984 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4000 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4016 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4032 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4048 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4064 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4080 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4096 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4112 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4128 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4144 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4160 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4176 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4192 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4208 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4224 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4240 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4256 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4272 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4288 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4304 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4320 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4336 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4352 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4368 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4384 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4400 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4416 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4432 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4448 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4464 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4480 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4496 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4512 + hash: "496dc6261695bcf04a8e574146544e98" + } + Frame { + msec: 4528 + hash: "9681be99003f8a14cc5654d06d2c8255" + } + Frame { + msec: 4544 + hash: "bcb592a2335aa2e35956881fd028f4e6" + } + Frame { + msec: 4560 + hash: "f914b25fdcb02a02b71220d82b7b2a75" + } + Frame { + msec: 4576 + hash: "63c82c08eb7f2bd50b54b94c952df3f2" + } + Frame { + msec: 4592 + hash: "8a8dc82be81fa55605c6c2e749895120" + } + Frame { + msec: 4608 + hash: "271f8d79b8052dfcd840ffa9ba9ffeec" + } + Frame { + msec: 4624 + hash: "8f77bbd0585b57e69ac1919bd81ee3b1" + } + Frame { + msec: 4640 + hash: "b974260a2f90e141ebc33ced98fbca88" + } + Frame { + msec: 4656 + hash: "77ada180f8a45652a6fa636d7ece4d9d" + } + Frame { + msec: 4672 + hash: "4c8dc2e33cd989cb3b0938c6c75b5f95" + } + Frame { + msec: 4688 + hash: "a145954989508b925a444e14f0c27a20" + } + Frame { + msec: 4704 + hash: "8d27ff203819174747ae4a5cee8d0ae8" + } + Frame { + msec: 4720 + hash: "830f34b0dab780c6efe2294872ba8508" + } + Frame { + msec: 4736 + hash: "5d70a4bbd815569cfe5735b596bad080" + } + Frame { + msec: 4752 + hash: "964527bb82ea006e03b030c787a8597c" + } + Frame { + msec: 4768 + hash: "1ad54954b818fa9e6032ac4b6114e7db" + } + Frame { + msec: 4784 + hash: "47865243cc252aef67774001af70c54c" + } + Frame { + msec: 4800 + image: "dynamic.4.png" + } + Frame { + msec: 4816 + hash: "47865243cc252aef67774001af70c54c" + } + Frame { + msec: 4832 + hash: "47865243cc252aef67774001af70c54c" + } + Frame { + msec: 4848 + hash: "47865243cc252aef67774001af70c54c" + } + Frame { + msec: 4864 + hash: "47865243cc252aef67774001af70c54c" + } + Frame { + msec: 4880 + hash: "47865243cc252aef67774001af70c54c" + } + Frame { + msec: 4896 + hash: "47865243cc252aef67774001af70c54c" + } + Frame { + msec: 4912 + hash: "47865243cc252aef67774001af70c54c" + } + Frame { + msec: 4928 + hash: "47865243cc252aef67774001af70c54c" + } + Frame { + msec: 4944 + hash: "47865243cc252aef67774001af70c54c" + } + Frame { + msec: 4960 + hash: "47865243cc252aef67774001af70c54c" + } + Frame { + msec: 4976 + hash: "47865243cc252aef67774001af70c54c" + } + Frame { + msec: 4992 + hash: "47865243cc252aef67774001af70c54c" + } + Frame { + msec: 5008 + hash: "47865243cc252aef67774001af70c54c" + } + Frame { + msec: 5024 + hash: "47865243cc252aef67774001af70c54c" + } + Frame { + msec: 5040 + hash: "baeb8adffc13e230e797e0437f2ad5fa" + } + Frame { + msec: 5056 + hash: "d2e440fcad0ee2b7b35d7e5c4e581f73" + } + Frame { + msec: 5072 + hash: "fb8acb2f69234d3ee089281d0297ad7c" + } + Frame { + msec: 5088 + hash: "7fda29a83dc535ed8d6b35e999400311" + } + Frame { + msec: 5104 + hash: "6482e3eb10cfdbdeb57dd38ba3e3d67e" + } + Frame { + msec: 5120 + hash: "4d222549bc2565c1598a532460aae4e6" + } + Frame { + msec: 5136 + hash: "776d1b0f9945c0e1ceda0cf117264919" + } + Frame { + msec: 5152 + hash: "f2c362b34a0982ee1a11dea6b063945e" + } + Frame { + msec: 5168 + hash: "115f02b8893972b5b1d63525ce70762e" + } + Frame { + msec: 5184 + hash: "7f2d53581fe2c6c45a628fa4cd9b5742" + } + Frame { + msec: 5200 + hash: "b5ed1120c4edf842b15d5144adbd93b0" + } + Frame { + msec: 5216 + hash: "3511938df57c4cdce316692de204b057" + } + Frame { + msec: 5232 + hash: "99583918d068ab5d132fe7a699c2a7a6" + } + Frame { + msec: 5248 + hash: "c0ce9df18479dbb57fb1dbc777f4f0e5" + } + Frame { + msec: 5264 + hash: "b24db7b5c406328380fcf9927fb26c5c" + } + Frame { + msec: 5280 + hash: "b24db7b5c406328380fcf9927fb26c5c" + } + Frame { + msec: 5296 + hash: "b24db7b5c406328380fcf9927fb26c5c" + } + Frame { + msec: 5312 + hash: "b24db7b5c406328380fcf9927fb26c5c" + } + Frame { + msec: 5328 + hash: "b24db7b5c406328380fcf9927fb26c5c" + } + Frame { + msec: 5344 + hash: "b24db7b5c406328380fcf9927fb26c5c" + } + Frame { + msec: 5360 + hash: "b24db7b5c406328380fcf9927fb26c5c" + } + Frame { + msec: 5376 + hash: "b24db7b5c406328380fcf9927fb26c5c" + } + Frame { + msec: 5392 + hash: "b24db7b5c406328380fcf9927fb26c5c" + } + Frame { + msec: 5408 + hash: "b24db7b5c406328380fcf9927fb26c5c" + } + Frame { + msec: 5424 + hash: "b24db7b5c406328380fcf9927fb26c5c" + } + Frame { + msec: 5440 + hash: "b24db7b5c406328380fcf9927fb26c5c" + } + Frame { + msec: 5456 + hash: "b24db7b5c406328380fcf9927fb26c5c" + } + Frame { + msec: 5472 + hash: "b24db7b5c406328380fcf9927fb26c5c" + } + Frame { + msec: 5488 + hash: "b24db7b5c406328380fcf9927fb26c5c" + } + Frame { + msec: 5504 + hash: "b24db7b5c406328380fcf9927fb26c5c" + } + Frame { + msec: 5520 + hash: "b24db7b5c406328380fcf9927fb26c5c" + } + Frame { + msec: 5536 + hash: "98cc64411264d8a635a6afe6b11cee6e" + } + Frame { + msec: 5552 + hash: "b86434b7af8ad1db946c43a2791d69ab" + } + Frame { + msec: 5568 + hash: "f45616f9e33658d1dddb537e842c8768" + } + Frame { + msec: 5584 + hash: "e49d8955e27cdc19a37c331e56c81af1" + } + Frame { + msec: 5600 + hash: "b2dbe764906b50195f65dc11a5842515" + } + Frame { + msec: 5616 + hash: "71ce7c63d65c29cdffd83f5ae07f0b93" + } + Frame { + msec: 5632 + hash: "901d01e1fc777ec185cd023ad0ace4c1" + } + Frame { + msec: 5648 + hash: "a3f31de30fc2e92bae1f735504216216" + } + Frame { + msec: 5664 + hash: "0fc52dd8102506e3e7671fa548551b23" + } + Frame { + msec: 5680 + hash: "fb92809e728416035dbb91116ad8fe0e" + } + Frame { + msec: 5696 + hash: "9003dc8ca4f781909035cb03dc45864f" + } + Frame { + msec: 5712 + hash: "2bff1de793ad8521fd54413849c3cf29" + } + Frame { + msec: 5728 + hash: "8362e4db7c4446282d844a4fc6632d19" + } + Frame { + msec: 5744 + hash: "b874fa274c6ec77c106ff4a0288f9169" + } + Frame { + msec: 5760 + image: "dynamic.5.png" + } + Frame { + msec: 5776 + hash: "e64ac8e11e36cafb25c947c5802d54b9" + } + Frame { + msec: 5792 + hash: "e64ac8e11e36cafb25c947c5802d54b9" + } + Frame { + msec: 5808 + hash: "e64ac8e11e36cafb25c947c5802d54b9" + } + Frame { + msec: 5824 + hash: "e64ac8e11e36cafb25c947c5802d54b9" + } + Frame { + msec: 5840 + hash: "e64ac8e11e36cafb25c947c5802d54b9" + } + Frame { + msec: 5856 + hash: "e64ac8e11e36cafb25c947c5802d54b9" + } + Frame { + msec: 5872 + hash: "e64ac8e11e36cafb25c947c5802d54b9" + } + Frame { + msec: 5888 + hash: "e64ac8e11e36cafb25c947c5802d54b9" + } + Frame { + msec: 5904 + hash: "e64ac8e11e36cafb25c947c5802d54b9" + } + Frame { + msec: 5920 + hash: "e64ac8e11e36cafb25c947c5802d54b9" + } + Frame { + msec: 5936 + hash: "e64ac8e11e36cafb25c947c5802d54b9" + } + Frame { + msec: 5952 + hash: "e64ac8e11e36cafb25c947c5802d54b9" + } + Frame { + msec: 5968 + hash: "e64ac8e11e36cafb25c947c5802d54b9" + } + Frame { + msec: 5984 + hash: "e64ac8e11e36cafb25c947c5802d54b9" + } + Frame { + msec: 6000 + hash: "e64ac8e11e36cafb25c947c5802d54b9" + } + Frame { + msec: 6016 + hash: "e64ac8e11e36cafb25c947c5802d54b9" + } + Frame { + msec: 6032 + hash: "7621e64568058b82bcb6f6b46cee3ebc" + } + Frame { + msec: 6048 + hash: "f77f6de6fc88813f49427b4888a59dbf" + } + Frame { + msec: 6064 + hash: "d3a48f596219372ac25941e4c5ec5b2b" + } + Frame { + msec: 6080 + hash: "d572d932b613f9ca1e0acf144f127dd1" + } + Frame { + msec: 6096 + hash: "edf317eaf51d933bcd0f57f214921a81" + } + Frame { + msec: 6112 + hash: "e0cee7959a5a8a08ad03d75e7b5c6ca1" + } + Frame { + msec: 6128 + hash: "96877a15f44d4a2c8d9974cb28b9e1b6" + } + Frame { + msec: 6144 + hash: "c0ffb0ef6dd9d007d201feebd2f68e44" + } + Frame { + msec: 6160 + hash: "209fb930223243fa19c5dde9e85ec518" + } + Frame { + msec: 6176 + hash: "ae98ac4dba0e78eb8fb7f7dbe29b2832" + } + Frame { + msec: 6192 + hash: "c94a7d68ce007d83df77a595a5815a96" + } + Frame { + msec: 6208 + hash: "4c28e409bf5a6c1289bcab8cd59a9e42" + } + Frame { + msec: 6224 + hash: "ea1009f1a3446dd5ce937e6949794794" + } + Frame { + msec: 6240 + hash: "940c16766c2f87feef48e1187672ca9b" + } + Frame { + msec: 6256 + hash: "93664c87c8dcfadc0345f646b2508625" + } + Frame { + msec: 6272 + hash: "93664c87c8dcfadc0345f646b2508625" + } + Frame { + msec: 6288 + hash: "93664c87c8dcfadc0345f646b2508625" + } + Frame { + msec: 6304 + hash: "93664c87c8dcfadc0345f646b2508625" + } + Frame { + msec: 6320 + hash: "93664c87c8dcfadc0345f646b2508625" + } + Frame { + msec: 6336 + hash: "93664c87c8dcfadc0345f646b2508625" + } + Frame { + msec: 6352 + hash: "93664c87c8dcfadc0345f646b2508625" + } + Frame { + msec: 6368 + hash: "93664c87c8dcfadc0345f646b2508625" + } + Frame { + msec: 6384 + hash: "93664c87c8dcfadc0345f646b2508625" + } +} diff --git a/tests/auto/declarative/visual/qmlgraphicspositioners/data/repeater.0.png b/tests/auto/declarative/visual/qmlgraphicspositioners/data/repeater.0.png Binary files differnew file mode 100644 index 0000000..f7018fd --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicspositioners/data/repeater.0.png diff --git a/tests/auto/declarative/visual/qmlgraphicspositioners/data/repeater.qml b/tests/auto/declarative/visual/qmlgraphicspositioners/data/repeater.qml new file mode 100644 index 0000000..1eb115d --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicspositioners/data/repeater.qml @@ -0,0 +1,339 @@ +import Qt.VisualTest 4.6 + +VisualTest { + Frame { + msec: 0 + } + Frame { + msec: 16 + hash: "0273c293855f2b2bdbf579fc5cdce63f" + } + Frame { + msec: 32 + hash: "0273c293855f2b2bdbf579fc5cdce63f" + } + Frame { + msec: 48 + hash: "0273c293855f2b2bdbf579fc5cdce63f" + } + Frame { + msec: 64 + hash: "0273c293855f2b2bdbf579fc5cdce63f" + } + Frame { + msec: 80 + hash: "0273c293855f2b2bdbf579fc5cdce63f" + } + Frame { + msec: 96 + hash: "0273c293855f2b2bdbf579fc5cdce63f" + } + Frame { + msec: 112 + hash: "0273c293855f2b2bdbf579fc5cdce63f" + } + Frame { + msec: 128 + hash: "0273c293855f2b2bdbf579fc5cdce63f" + } + Frame { + msec: 144 + hash: "0273c293855f2b2bdbf579fc5cdce63f" + } + Frame { + msec: 160 + hash: "0273c293855f2b2bdbf579fc5cdce63f" + } + Frame { + msec: 176 + hash: "0273c293855f2b2bdbf579fc5cdce63f" + } + Frame { + msec: 192 + hash: "0273c293855f2b2bdbf579fc5cdce63f" + } + Frame { + msec: 208 + hash: "0273c293855f2b2bdbf579fc5cdce63f" + } + Frame { + msec: 224 + hash: "0273c293855f2b2bdbf579fc5cdce63f" + } + Frame { + msec: 240 + hash: "0273c293855f2b2bdbf579fc5cdce63f" + } + Frame { + msec: 256 + hash: "0273c293855f2b2bdbf579fc5cdce63f" + } + Frame { + msec: 272 + hash: "0273c293855f2b2bdbf579fc5cdce63f" + } + Frame { + msec: 288 + hash: "0273c293855f2b2bdbf579fc5cdce63f" + } + Frame { + msec: 304 + hash: "0273c293855f2b2bdbf579fc5cdce63f" + } + Frame { + msec: 320 + hash: "0273c293855f2b2bdbf579fc5cdce63f" + } + Frame { + msec: 336 + hash: "0273c293855f2b2bdbf579fc5cdce63f" + } + Frame { + msec: 352 + hash: "0273c293855f2b2bdbf579fc5cdce63f" + } + Frame { + msec: 368 + hash: "0273c293855f2b2bdbf579fc5cdce63f" + } + Frame { + msec: 384 + hash: "0273c293855f2b2bdbf579fc5cdce63f" + } + Frame { + msec: 400 + hash: "0273c293855f2b2bdbf579fc5cdce63f" + } + Frame { + msec: 416 + hash: "0273c293855f2b2bdbf579fc5cdce63f" + } + Frame { + msec: 432 + hash: "0273c293855f2b2bdbf579fc5cdce63f" + } + Frame { + msec: 448 + hash: "0273c293855f2b2bdbf579fc5cdce63f" + } + Frame { + msec: 464 + hash: "0273c293855f2b2bdbf579fc5cdce63f" + } + Frame { + msec: 480 + hash: "0273c293855f2b2bdbf579fc5cdce63f" + } + Frame { + msec: 496 + hash: "0273c293855f2b2bdbf579fc5cdce63f" + } + Frame { + msec: 512 + hash: "0273c293855f2b2bdbf579fc5cdce63f" + } + Frame { + msec: 528 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 544 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 560 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 576 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 592 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 608 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 624 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 640 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 656 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 672 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 688 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 704 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 720 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 736 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 752 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 768 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 784 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 800 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 816 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 832 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 848 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 864 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 880 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 896 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 912 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 928 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 944 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 960 + image: "repeater.0.png" + } + Frame { + msec: 976 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 992 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 1008 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 1024 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 1040 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 1056 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 1072 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 1088 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 1104 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 1120 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 1136 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 1152 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 1168 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 1184 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 1200 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 1216 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 1232 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 1248 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 1264 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 1280 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 1296 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 1312 + hash: "53a01771047c8ec806a335a1a3d6af71" + } + Frame { + msec: 1328 + hash: "53a01771047c8ec806a335a1a3d6af71" + } +} diff --git a/tests/auto/declarative/visual/qmlgraphicspositioners/dynamic.qml b/tests/auto/declarative/visual/qmlgraphicspositioners/dynamic.qml new file mode 100644 index 0000000..4b03749 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicspositioners/dynamic.qml @@ -0,0 +1,65 @@ +import Qt 4.6 + +Item { + width: 400; height: 400; + property int step: 0 + function tick() + { + step++; + if(step == 1){ + row1.destroy(); //Not dynamically created, so is this valid? + }else if(step == 2){ + r2a.destroy(); + }else if(step == 3){ + r2b.destroy(); + }else if(step == 4){ + r2c.destroy(); + }else if(step == 5){ + r3a.parent = row2; + }else if(step == 6){ + r3b.parent = row2; + }else if(step == 7){ + r3c.parent = row2; + }else if(step == 8){ + row3.destroy(); + }else{ + repeater.model++; + } + } + + //Tests base positioner functionality, so just using row + Row{ + id: row1 + Rectangle{id: r1a; width:20; height:20; color: "red"} + Rectangle{id: r1b; width:20; height:20; color: "green"} + Rectangle{id: r1c; width:20; height:20; color: "blue"} + } + Row{ + y:20 + id: row2 + move: Transition{NumberAnimation{matchProperties:"x"}} + Repeater{ + id: repeater + model: 0; + delegate: Component{ Rectangle { color: "yellow"; width:20; height:20;}} + } + Rectangle{id: r2a; width:20; height:20; color: "red"} + Rectangle{id: r2b; width:20; height:20; color: "green"} + Rectangle{id: r2c; width:20; height:20; color: "blue"} + } + Row{ + move: Transition{NumberAnimation{matchProperties:"x"}} + y:40 + id: row3 + Rectangle{id: r3a; width:20; height:20; color: "red"} + Rectangle{id: r3b; width:20; height:20; color: "green"} + Rectangle{id: r3c; width:20; height:20; color: "blue"} + } + Timer{ + interval: 500; + running: true; + repeat: true; + onTriggered: tick(); + } +} + diff --git a/tests/auto/declarative/visual/qmlgraphicspositioners/repeater.qml b/tests/auto/declarative/visual/qmlgraphicspositioners/repeater.qml new file mode 100644 index 0000000..ff60365 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicspositioners/repeater.qml @@ -0,0 +1,15 @@ +import Qt 4.6 + +Item{ + width: 200; height: 600 + Column{ + Rectangle{color:"Red"; width:40; height:40;} + Repeater{ + id: rep + model: 3 + delegate: Component{Rectangle{color:"Green"; width:40; height:40; radius: 20;}} + } + Rectangle{color:"Blue"; width:40; height:40;} + } + Timer{ interval: 500; running: true; onTriggered: rep.model=6;} +} diff --git a/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/cursorDelegate.0.png b/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/cursorDelegate.0.png Binary files differnew file mode 100644 index 0000000..464a578 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/cursorDelegate.0.png diff --git a/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/cursorDelegate.1.png b/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/cursorDelegate.1.png Binary files differnew file mode 100644 index 0000000..9beb1ca --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/cursorDelegate.1.png diff --git a/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/cursorDelegate.2.png b/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/cursorDelegate.2.png Binary files differnew file mode 100644 index 0000000..001be30 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/cursorDelegate.2.png diff --git a/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/cursorDelegate.3.png b/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/cursorDelegate.3.png Binary files differnew file mode 100644 index 0000000..fc3e4b3 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/cursorDelegate.3.png diff --git a/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/cursorDelegate.4.png b/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/cursorDelegate.4.png Binary files differnew file mode 100644 index 0000000..24f43e6 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/cursorDelegate.4.png diff --git a/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/cursorDelegate.5.png b/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/cursorDelegate.5.png Binary files differnew file mode 100644 index 0000000..001223b --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/cursorDelegate.5.png diff --git a/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/cursorDelegate.6.png b/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/cursorDelegate.6.png Binary files differnew file mode 100644 index 0000000..7126e07 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/cursorDelegate.6.png diff --git a/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/cursorDelegate.7.png b/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/cursorDelegate.7.png Binary files differnew file mode 100644 index 0000000..f0bea88 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/cursorDelegate.7.png diff --git a/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/cursorDelegate.8.png b/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/cursorDelegate.8.png Binary files differnew file mode 100644 index 0000000..4381b8d --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/cursorDelegate.8.png diff --git a/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/cursorDelegate.qml b/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/cursorDelegate.qml new file mode 100644 index 0000000..8ee92d7 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/cursorDelegate.qml @@ -0,0 +1,3555 @@ +import Qt.VisualTest 4.6 + +VisualTest { + Frame { + msec: 0 + } + Frame { + msec: 16 + hash: "e0366dbd264ca453f5dad3a7966f17a2" + } + Frame { + msec: 32 + hash: "e0366dbd264ca453f5dad3a7966f17a2" + } + Frame { + msec: 48 + hash: "e0366dbd264ca453f5dad3a7966f17a2" + } + Frame { + msec: 64 + hash: "e0366dbd264ca453f5dad3a7966f17a2" + } + Frame { + msec: 80 + hash: "e0366dbd264ca453f5dad3a7966f17a2" + } + Frame { + msec: 96 + hash: "e0366dbd264ca453f5dad3a7966f17a2" + } + Frame { + msec: 112 + hash: "e0366dbd264ca453f5dad3a7966f17a2" + } + Frame { + msec: 128 + hash: "e0366dbd264ca453f5dad3a7966f17a2" + } + Frame { + msec: 144 + hash: "e0366dbd264ca453f5dad3a7966f17a2" + } + Frame { + msec: 160 + hash: "e0366dbd264ca453f5dad3a7966f17a2" + } + Frame { + msec: 176 + hash: "e0366dbd264ca453f5dad3a7966f17a2" + } + Frame { + msec: 192 + hash: "e0366dbd264ca453f5dad3a7966f17a2" + } + Frame { + msec: 208 + hash: "e0366dbd264ca453f5dad3a7966f17a2" + } + Frame { + msec: 224 + hash: "e0366dbd264ca453f5dad3a7966f17a2" + } + Frame { + msec: 240 + hash: "e0366dbd264ca453f5dad3a7966f17a2" + } + Frame { + msec: 256 + hash: "e0366dbd264ca453f5dad3a7966f17a2" + } + Frame { + msec: 272 + hash: "e0366dbd264ca453f5dad3a7966f17a2" + } + Frame { + msec: 288 + hash: "e0366dbd264ca453f5dad3a7966f17a2" + } + Frame { + msec: 304 + hash: "e0366dbd264ca453f5dad3a7966f17a2" + } + Frame { + msec: 320 + hash: "e0366dbd264ca453f5dad3a7966f17a2" + } + Frame { + msec: 336 + hash: "e0366dbd264ca453f5dad3a7966f17a2" + } + Frame { + msec: 352 + hash: "e0366dbd264ca453f5dad3a7966f17a2" + } + Frame { + msec: 368 + hash: "e0366dbd264ca453f5dad3a7966f17a2" + } + Frame { + msec: 384 + hash: "e0366dbd264ca453f5dad3a7966f17a2" + } + Frame { + msec: 400 + hash: "e0366dbd264ca453f5dad3a7966f17a2" + } + Frame { + msec: 416 + hash: "e0366dbd264ca453f5dad3a7966f17a2" + } + Frame { + msec: 432 + hash: "e0366dbd264ca453f5dad3a7966f17a2" + } + Frame { + msec: 448 + hash: "e0366dbd264ca453f5dad3a7966f17a2" + } + Frame { + msec: 464 + hash: "e0366dbd264ca453f5dad3a7966f17a2" + } + Frame { + msec: 480 + hash: "e0366dbd264ca453f5dad3a7966f17a2" + } + Frame { + msec: 496 + hash: "e0366dbd264ca453f5dad3a7966f17a2" + } + Frame { + msec: 512 + hash: "e0366dbd264ca453f5dad3a7966f17a2" + } + Frame { + msec: 528 + hash: "84cad44c4cccf8a0942865719d05c2eb" + } + Frame { + msec: 544 + hash: "60d24c160adb8e074c04d4f40bf140a8" + } + Frame { + msec: 560 + hash: "ff5fac70804eb01da28c2988aba520a4" + } + Frame { + msec: 576 + hash: "a6bdf56b4f8783969935488e1955e59c" + } + Frame { + msec: 592 + hash: "d0ad97647c5092a64426187406ec5316" + } + Frame { + msec: 608 + hash: "77e7a4a4a9c38cd7b5ef734d39089e3f" + } + Frame { + msec: 624 + hash: "0285340a2e03568810a76d840369f5c8" + } + Frame { + msec: 640 + hash: "6ba6a1a05c5a9ec0d2897b3454affd09" + } + Frame { + msec: 656 + hash: "3caa36cc3857803248d12ec09ea357df" + } + Frame { + msec: 672 + hash: "500f7b72acc877fc1662e4f4ceb090e1" + } + Frame { + msec: 688 + hash: "aadc71923926885ccce87e6be1c742d7" + } + Frame { + msec: 704 + hash: "9b7503189ecf2999934716f227469463" + } + Frame { + msec: 720 + hash: "874296e182abe96e58f9c0463a0f32c9" + } + Frame { + msec: 736 + hash: "4262c79b6844d4d62aa9fb02c335fb95" + } + Frame { + msec: 752 + hash: "a5862eaf12cc342054fd3f8d1f4c91c3" + } + Frame { + msec: 768 + hash: "0034ef8851c9810ed5d50496aea367da" + } + Frame { + msec: 784 + hash: "24cebf60ade86469a154abaa64f3b40d" + } + Frame { + msec: 800 + hash: "1100ef4e2db234ea77ff4c70df6bfbe7" + } + Frame { + msec: 816 + hash: "c40d8d42a55dde7dbbcae2dda9aaccb8" + } + Frame { + msec: 832 + hash: "5c1000fdc279742cbe46987045c0a92b" + } + Frame { + msec: 848 + hash: "bcef4a0ff72330f05f2bf5042e414fde" + } + Frame { + msec: 864 + hash: "228551c38b567f1550b44f9dac08786b" + } + Frame { + msec: 880 + hash: "531c5ca6992c4a12927c61e22c02dd6b" + } + Frame { + msec: 896 + hash: "127cc30967f95cb88f4238e0b33c741d" + } + Frame { + msec: 912 + hash: "3c3fb1d8dbe7443f80550a30ada7f120" + } + Frame { + msec: 928 + hash: "edca065d42bf9b63a79d1e97d1a1eed0" + } + Frame { + msec: 944 + hash: "1e4424f1f40bfce3205e1d1401ab0dcf" + } + Frame { + msec: 960 + image: "cursorDelegate.0.png" + } + Frame { + msec: 976 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 992 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 1008 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 1024 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 1040 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 1056 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 1072 + hash: "90ac5ad7ce23786fe838426605e737e1" + } + Frame { + msec: 1088 + hash: "1e4424f1f40bfce3205e1d1401ab0dcf" + } + Frame { + msec: 1104 + hash: "edca065d42bf9b63a79d1e97d1a1eed0" + } + Frame { + msec: 1120 + hash: "3c3fb1d8dbe7443f80550a30ada7f120" + } + Frame { + msec: 1136 + hash: "127cc30967f95cb88f4238e0b33c741d" + } + Frame { + msec: 1152 + hash: "531c5ca6992c4a12927c61e22c02dd6b" + } + Frame { + msec: 1168 + hash: "228551c38b567f1550b44f9dac08786b" + } + Frame { + msec: 1184 + hash: "bcef4a0ff72330f05f2bf5042e414fde" + } + Frame { + msec: 1200 + hash: "5c1000fdc279742cbe46987045c0a92b" + } + Frame { + msec: 1216 + hash: "c40d8d42a55dde7dbbcae2dda9aaccb8" + } + Frame { + msec: 1232 + hash: "1100ef4e2db234ea77ff4c70df6bfbe7" + } + Frame { + msec: 1248 + hash: "24cebf60ade86469a154abaa64f3b40d" + } + Frame { + msec: 1264 + hash: "0034ef8851c9810ed5d50496aea367da" + } + Frame { + msec: 1280 + hash: "a5862eaf12cc342054fd3f8d1f4c91c3" + } + Frame { + msec: 1296 + hash: "4262c79b6844d4d62aa9fb02c335fb95" + } + Frame { + msec: 1312 + hash: "874296e182abe96e58f9c0463a0f32c9" + } + Frame { + msec: 1328 + hash: "9b7503189ecf2999934716f227469463" + } + Frame { + msec: 1344 + hash: "aadc71923926885ccce87e6be1c742d7" + } + Frame { + msec: 1360 + hash: "500f7b72acc877fc1662e4f4ceb090e1" + } + Frame { + msec: 1376 + hash: "3caa36cc3857803248d12ec09ea357df" + } + Key { + type: 6 + key: 16777232 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 1392 + hash: "6ba6a1a05c5a9ec0d2897b3454affd09" + } + Frame { + msec: 1408 + hash: "0285340a2e03568810a76d840369f5c8" + } + Frame { + msec: 1424 + hash: "77e7a4a4a9c38cd7b5ef734d39089e3f" + } + Frame { + msec: 1440 + hash: "d0ad97647c5092a64426187406ec5316" + } + Frame { + msec: 1456 + hash: "a6bdf56b4f8783969935488e1955e59c" + } + Key { + type: 7 + key: 16777232 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 1472 + hash: "ff5fac70804eb01da28c2988aba520a4" + } + Frame { + msec: 1488 + hash: "60d24c160adb8e074c04d4f40bf140a8" + } + Frame { + msec: 1504 + hash: "84cad44c4cccf8a0942865719d05c2eb" + } + Frame { + msec: 1520 + hash: "907c6363d1e524f391d001944febe1ac" + } + Frame { + msec: 1536 + hash: "313a06d40274e46453342e66236f09f8" + } + Frame { + msec: 1552 + hash: "0d410f7bfa3e4c58948a8f1e7c7695c4" + } + Frame { + msec: 1568 + hash: "a9911e076af337fe30e322f03d84a528" + } + Frame { + msec: 1584 + hash: "4a8efcc341bba9ba621ce0f785a75432" + } + Frame { + msec: 1600 + hash: "479f192c8cf7b8e4407655382402700f" + } + Frame { + msec: 1616 + hash: "63dc16e66def35abba5159d5650f165d" + } + Frame { + msec: 1632 + hash: "26e88aae512304c28d425c311febce1b" + } + Key { + type: 6 + key: 16777233 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 1648 + hash: "8dca7a7912ddaa853dff9c09882082b1" + } + Frame { + msec: 1664 + hash: "5c3ebee155e29a0ba4a45706dd87396a" + } + Frame { + msec: 1680 + hash: "29a517a66867f6f527c6db5bb5651f92" + } + Frame { + msec: 1696 + hash: "a4fde31f55f866224eca2b51586b601f" + } + Frame { + msec: 1712 + hash: "9c9c7fb9fb8aab8c24f2eb03df791a00" + } + Frame { + msec: 1728 + hash: "dd972e37166d1186a717a956343a7758" + } + Key { + type: 7 + key: 16777233 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 1744 + hash: "1af5e24651ef422ff93dab7bd2a8f832" + } + Frame { + msec: 1760 + hash: "885473be4e44bb1f4b014f9b3d4d2e74" + } + Frame { + msec: 1776 + hash: "1f6e0407392322c34567caaecae5b449" + } + Frame { + msec: 1792 + hash: "dcae85a4b05c450b6b1619f9fd7e17b0" + } + Frame { + msec: 1808 + hash: "3b872e5030e34edf678ac2547df48699" + } + Frame { + msec: 1824 + hash: "5d76b324496297d08cff57b4c21ce592" + } + Frame { + msec: 1840 + hash: "4acfe3c4cf2f4e477f1a72817af556d2" + } + Frame { + msec: 1856 + hash: "a04671fe8d28cfb629f2090e342747fb" + } + Frame { + msec: 1872 + hash: "2474db802c7d8e0ec8fa7f958c04bf30" + } + Frame { + msec: 1888 + hash: "11a1e1f38c407de4bc069aa192319fe4" + } + Frame { + msec: 1904 + hash: "ec8aacc8d2280068dd7f020e8648afea" + } + Frame { + msec: 1920 + image: "cursorDelegate.1.png" + } + Frame { + msec: 1936 + hash: "fbbe4d0fed6274968a89e02bb1ca5685" + } + Frame { + msec: 1952 + hash: "13d478424a8f0cab8bab6a157efce318" + } + Frame { + msec: 1968 + hash: "ea6bc9ec217fb80b86276a2675c08a0f" + } + Frame { + msec: 1984 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 2000 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 2016 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 2032 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 2048 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 2064 + hash: "ea6bc9ec217fb80b86276a2675c08a0f" + } + Frame { + msec: 2080 + hash: "13d478424a8f0cab8bab6a157efce318" + } + Frame { + msec: 2096 + hash: "fbbe4d0fed6274968a89e02bb1ca5685" + } + Frame { + msec: 2112 + hash: "00dedd48bd6861cb4bf4953162a67cc0" + } + Key { + type: 6 + key: 16777248 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 2128 + hash: "ec8aacc8d2280068dd7f020e8648afea" + } + Frame { + msec: 2144 + hash: "11a1e1f38c407de4bc069aa192319fe4" + } + Frame { + msec: 2160 + hash: "2474db802c7d8e0ec8fa7f958c04bf30" + } + Frame { + msec: 2176 + hash: "a04671fe8d28cfb629f2090e342747fb" + } + Frame { + msec: 2192 + hash: "4acfe3c4cf2f4e477f1a72817af556d2" + } + Frame { + msec: 2208 + hash: "5d76b324496297d08cff57b4c21ce592" + } + Frame { + msec: 2224 + hash: "3b872e5030e34edf678ac2547df48699" + } + Frame { + msec: 2240 + hash: "dcae85a4b05c450b6b1619f9fd7e17b0" + } + Frame { + msec: 2256 + hash: "1f6e0407392322c34567caaecae5b449" + } + Frame { + msec: 2272 + hash: "885473be4e44bb1f4b014f9b3d4d2e74" + } + Frame { + msec: 2288 + hash: "1af5e24651ef422ff93dab7bd2a8f832" + } + Frame { + msec: 2304 + hash: "dd972e37166d1186a717a956343a7758" + } + Frame { + msec: 2320 + hash: "9c9c7fb9fb8aab8c24f2eb03df791a00" + } + Key { + type: 6 + key: 16777232 + modifiers: 33554432 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 2336 + hash: "aec9683f3a677dab781bdf3bbf7cce5e" + } + Frame { + msec: 2352 + hash: "63c6a7810dec832f1b8288807f1d932a" + } + Frame { + msec: 2368 + hash: "70409eeee50fbb54097a3c430e1e1f21" + } + Frame { + msec: 2384 + hash: "efc77b82c0ffd7f3fbe5fed06ea418bd" + } + Frame { + msec: 2400 + hash: "26e88aae512304c28d425c311febce1b" + } + Frame { + msec: 2416 + hash: "63dc16e66def35abba5159d5650f165d" + } + Frame { + msec: 2432 + hash: "479f192c8cf7b8e4407655382402700f" + } + Key { + type: 7 + key: 16777232 + modifiers: 33554432 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 2448 + hash: "4a8efcc341bba9ba621ce0f785a75432" + } + Frame { + msec: 2464 + hash: "a9911e076af337fe30e322f03d84a528" + } + Frame { + msec: 2480 + hash: "0d410f7bfa3e4c58948a8f1e7c7695c4" + } + Frame { + msec: 2496 + hash: "313a06d40274e46453342e66236f09f8" + } + Frame { + msec: 2512 + hash: "907c6363d1e524f391d001944febe1ac" + } + Frame { + msec: 2528 + hash: "84cad44c4cccf8a0942865719d05c2eb" + } + Frame { + msec: 2544 + hash: "60d24c160adb8e074c04d4f40bf140a8" + } + Frame { + msec: 2560 + hash: "ff5fac70804eb01da28c2988aba520a4" + } + Frame { + msec: 2576 + hash: "a6bdf56b4f8783969935488e1955e59c" + } + Frame { + msec: 2592 + hash: "d0ad97647c5092a64426187406ec5316" + } + Frame { + msec: 2608 + hash: "77e7a4a4a9c38cd7b5ef734d39089e3f" + } + Frame { + msec: 2624 + hash: "0285340a2e03568810a76d840369f5c8" + } + Frame { + msec: 2640 + hash: "6ba6a1a05c5a9ec0d2897b3454affd09" + } + Frame { + msec: 2656 + hash: "3caa36cc3857803248d12ec09ea357df" + } + Frame { + msec: 2672 + hash: "500f7b72acc877fc1662e4f4ceb090e1" + } + Frame { + msec: 2688 + hash: "aadc71923926885ccce87e6be1c742d7" + } + Frame { + msec: 2704 + hash: "9b7503189ecf2999934716f227469463" + } + Frame { + msec: 2720 + hash: "874296e182abe96e58f9c0463a0f32c9" + } + Frame { + msec: 2736 + hash: "4262c79b6844d4d62aa9fb02c335fb95" + } + Frame { + msec: 2752 + hash: "a5862eaf12cc342054fd3f8d1f4c91c3" + } + Frame { + msec: 2768 + hash: "0034ef8851c9810ed5d50496aea367da" + } + Frame { + msec: 2784 + hash: "24cebf60ade86469a154abaa64f3b40d" + } + Key { + type: 7 + key: 16777248 + modifiers: 33554432 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 2800 + hash: "1100ef4e2db234ea77ff4c70df6bfbe7" + } + Frame { + msec: 2816 + hash: "c40d8d42a55dde7dbbcae2dda9aaccb8" + } + Frame { + msec: 2832 + hash: "5c1000fdc279742cbe46987045c0a92b" + } + Frame { + msec: 2848 + hash: "bcef4a0ff72330f05f2bf5042e414fde" + } + Frame { + msec: 2864 + hash: "228551c38b567f1550b44f9dac08786b" + } + Frame { + msec: 2880 + image: "cursorDelegate.2.png" + } + Frame { + msec: 2896 + hash: "127cc30967f95cb88f4238e0b33c741d" + } + Frame { + msec: 2912 + hash: "3c3fb1d8dbe7443f80550a30ada7f120" + } + Frame { + msec: 2928 + hash: "edca065d42bf9b63a79d1e97d1a1eed0" + } + Frame { + msec: 2944 + hash: "1e4424f1f40bfce3205e1d1401ab0dcf" + } + Frame { + msec: 2960 + hash: "90ac5ad7ce23786fe838426605e737e1" + } + Frame { + msec: 2976 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 2992 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 3008 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 3024 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 3040 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 3056 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 3072 + hash: "90ac5ad7ce23786fe838426605e737e1" + } + Key { + type: 6 + key: 16777236 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 3088 + hash: "cf467854dfde9b2111bc6e7e4442aab5" + } + Frame { + msec: 3104 + hash: "df6f025130dc82f4764def81cec5fa7b" + } + Frame { + msec: 3120 + hash: "bdcafed4ae9c890eec2e3e0cb2ff5a14" + } + Frame { + msec: 3136 + hash: "14b328c8ec6276e022643102af80fa44" + } + Frame { + msec: 3152 + hash: "078d75d72bff036574b85ac0aeaaf2b6" + } + Frame { + msec: 3168 + hash: "fbefb1e0801f4578ab93dd7ff4062e68" + } + Frame { + msec: 3184 + hash: "eac8375d9b9cf0afbf232e27c6ceb037" + } + Key { + type: 7 + key: 16777236 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 3200 + hash: "3462a3e166120515e67430600e4653f8" + } + Frame { + msec: 3216 + hash: "7f2d9959323f0707e36ecb2252c89727" + } + Frame { + msec: 3232 + hash: "0a1c2eb8a7451a5e37fefb96a58a88a1" + } + Frame { + msec: 3248 + hash: "4a02aaca12e3fd86ee3b516b3a307f86" + } + Key { + type: 6 + key: 16777234 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 3264 + hash: "0034ef8851c9810ed5d50496aea367da" + } + Frame { + msec: 3280 + hash: "a5862eaf12cc342054fd3f8d1f4c91c3" + } + Frame { + msec: 3296 + hash: "4262c79b6844d4d62aa9fb02c335fb95" + } + Frame { + msec: 3312 + hash: "874296e182abe96e58f9c0463a0f32c9" + } + Frame { + msec: 3328 + hash: "9b7503189ecf2999934716f227469463" + } + Frame { + msec: 3344 + hash: "aadc71923926885ccce87e6be1c742d7" + } + Frame { + msec: 3360 + hash: "500f7b72acc877fc1662e4f4ceb090e1" + } + Key { + type: 7 + key: 16777234 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 3376 + hash: "3caa36cc3857803248d12ec09ea357df" + } + Frame { + msec: 3392 + hash: "6ba6a1a05c5a9ec0d2897b3454affd09" + } + Frame { + msec: 3408 + hash: "0285340a2e03568810a76d840369f5c8" + } + Frame { + msec: 3424 + hash: "77e7a4a4a9c38cd7b5ef734d39089e3f" + } + Frame { + msec: 3440 + hash: "d0ad97647c5092a64426187406ec5316" + } + Frame { + msec: 3456 + hash: "a6bdf56b4f8783969935488e1955e59c" + } + Frame { + msec: 3472 + hash: "ff5fac70804eb01da28c2988aba520a4" + } + Frame { + msec: 3488 + hash: "60d24c160adb8e074c04d4f40bf140a8" + } + Frame { + msec: 3504 + hash: "84cad44c4cccf8a0942865719d05c2eb" + } + Frame { + msec: 3520 + hash: "907c6363d1e524f391d001944febe1ac" + } + Frame { + msec: 3536 + hash: "313a06d40274e46453342e66236f09f8" + } + Frame { + msec: 3552 + hash: "0d410f7bfa3e4c58948a8f1e7c7695c4" + } + Frame { + msec: 3568 + hash: "a9911e076af337fe30e322f03d84a528" + } + Frame { + msec: 3584 + hash: "4a8efcc341bba9ba621ce0f785a75432" + } + Frame { + msec: 3600 + hash: "479f192c8cf7b8e4407655382402700f" + } + Frame { + msec: 3616 + hash: "63dc16e66def35abba5159d5650f165d" + } + Frame { + msec: 3632 + hash: "26e88aae512304c28d425c311febce1b" + } + Frame { + msec: 3648 + hash: "efc77b82c0ffd7f3fbe5fed06ea418bd" + } + Frame { + msec: 3664 + hash: "70409eeee50fbb54097a3c430e1e1f21" + } + Frame { + msec: 3680 + hash: "63c6a7810dec832f1b8288807f1d932a" + } + Frame { + msec: 3696 + hash: "aec9683f3a677dab781bdf3bbf7cce5e" + } + Frame { + msec: 3712 + hash: "2e6dd79fc23acbf710e757f3d0999ab8" + } + Frame { + msec: 3728 + hash: "4d9dd9e515a21478cb3364032acf8c15" + } + Frame { + msec: 3744 + hash: "5dc2129cac6e667d39da3304a37a76f2" + } + Frame { + msec: 3760 + hash: "ab5eb4750139875586a346b1c3a84f42" + } + Frame { + msec: 3776 + hash: "96d3bd62d4a0bf39a672b97fcc050bd5" + } + Frame { + msec: 3792 + hash: "546cec655631b5802eb4d7008093eb69" + } + Frame { + msec: 3808 + hash: "85f33f1bf1b1e11be450ab85bf6dab3d" + } + Frame { + msec: 3824 + hash: "44b195297acd1bf59e43751df8dc1c1d" + } + Frame { + msec: 3840 + image: "cursorDelegate.3.png" + } + Frame { + msec: 3856 + hash: "47942253c07fd39894445ff5e5b9608c" + } + Frame { + msec: 3872 + hash: "d26d71b1c03fb21550820dd1586a7a8e" + } + Frame { + msec: 3888 + hash: "37ec2ed29006575e8bd41a1989b75e27" + } + Frame { + msec: 3904 + hash: "5ad1ab34572f9ef339774134bc0ab407" + } + Frame { + msec: 3920 + hash: "a4f68f6ee46642e7cc5a542b9f8a2464" + } + Frame { + msec: 3936 + hash: "fce95d18a0efee74554209ca39637062" + } + Frame { + msec: 3952 + hash: "1587fc2668f1f44e76f252bfd75f2708" + } + Frame { + msec: 3968 + hash: "e0a6eb42de552281e297ca5c50c1df23" + } + Frame { + msec: 3984 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 4000 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 4016 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 4032 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 4048 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 4064 + hash: "e0a6eb42de552281e297ca5c50c1df23" + } + Frame { + msec: 4080 + hash: "1587fc2668f1f44e76f252bfd75f2708" + } + Frame { + msec: 4096 + hash: "fce95d18a0efee74554209ca39637062" + } + Frame { + msec: 4112 + hash: "a4f68f6ee46642e7cc5a542b9f8a2464" + } + Frame { + msec: 4128 + hash: "5ad1ab34572f9ef339774134bc0ab407" + } + Frame { + msec: 4144 + hash: "37ec2ed29006575e8bd41a1989b75e27" + } + Frame { + msec: 4160 + hash: "d26d71b1c03fb21550820dd1586a7a8e" + } + Frame { + msec: 4176 + hash: "47942253c07fd39894445ff5e5b9608c" + } + Frame { + msec: 4192 + hash: "a62f1cbf43da0381c7c9099d47ded882" + } + Frame { + msec: 4208 + hash: "44b195297acd1bf59e43751df8dc1c1d" + } + Frame { + msec: 4224 + hash: "85f33f1bf1b1e11be450ab85bf6dab3d" + } + Frame { + msec: 4240 + hash: "546cec655631b5802eb4d7008093eb69" + } + Frame { + msec: 4256 + hash: "96d3bd62d4a0bf39a672b97fcc050bd5" + } + Frame { + msec: 4272 + hash: "ab5eb4750139875586a346b1c3a84f42" + } + Frame { + msec: 4288 + hash: "5dc2129cac6e667d39da3304a37a76f2" + } + Frame { + msec: 4304 + hash: "4d9dd9e515a21478cb3364032acf8c15" + } + Frame { + msec: 4320 + hash: "2e6dd79fc23acbf710e757f3d0999ab8" + } + Frame { + msec: 4336 + hash: "aec9683f3a677dab781bdf3bbf7cce5e" + } + Frame { + msec: 4352 + hash: "63c6a7810dec832f1b8288807f1d932a" + } + Frame { + msec: 4368 + hash: "70409eeee50fbb54097a3c430e1e1f21" + } + Frame { + msec: 4384 + hash: "efc77b82c0ffd7f3fbe5fed06ea418bd" + } + Frame { + msec: 4400 + hash: "26e88aae512304c28d425c311febce1b" + } + Frame { + msec: 4416 + hash: "63dc16e66def35abba5159d5650f165d" + } + Frame { + msec: 4432 + hash: "479f192c8cf7b8e4407655382402700f" + } + Frame { + msec: 4448 + hash: "4a8efcc341bba9ba621ce0f785a75432" + } + Frame { + msec: 4464 + hash: "a9911e076af337fe30e322f03d84a528" + } + Frame { + msec: 4480 + hash: "0d410f7bfa3e4c58948a8f1e7c7695c4" + } + Frame { + msec: 4496 + hash: "313a06d40274e46453342e66236f09f8" + } + Frame { + msec: 4512 + hash: "907c6363d1e524f391d001944febe1ac" + } + Frame { + msec: 4528 + hash: "84cad44c4cccf8a0942865719d05c2eb" + } + Frame { + msec: 4544 + hash: "60d24c160adb8e074c04d4f40bf140a8" + } + Frame { + msec: 4560 + hash: "ff5fac70804eb01da28c2988aba520a4" + } + Frame { + msec: 4576 + hash: "a6bdf56b4f8783969935488e1955e59c" + } + Frame { + msec: 4592 + hash: "d0ad97647c5092a64426187406ec5316" + } + Frame { + msec: 4608 + hash: "77e7a4a4a9c38cd7b5ef734d39089e3f" + } + Frame { + msec: 4624 + hash: "0285340a2e03568810a76d840369f5c8" + } + Frame { + msec: 4640 + hash: "6ba6a1a05c5a9ec0d2897b3454affd09" + } + Frame { + msec: 4656 + hash: "3caa36cc3857803248d12ec09ea357df" + } + Frame { + msec: 4672 + hash: "500f7b72acc877fc1662e4f4ceb090e1" + } + Frame { + msec: 4688 + hash: "aadc71923926885ccce87e6be1c742d7" + } + Frame { + msec: 4704 + hash: "9b7503189ecf2999934716f227469463" + } + Frame { + msec: 4720 + hash: "874296e182abe96e58f9c0463a0f32c9" + } + Frame { + msec: 4736 + hash: "4262c79b6844d4d62aa9fb02c335fb95" + } + Frame { + msec: 4752 + hash: "a5862eaf12cc342054fd3f8d1f4c91c3" + } + Frame { + msec: 4768 + hash: "0034ef8851c9810ed5d50496aea367da" + } + Frame { + msec: 4784 + hash: "24cebf60ade86469a154abaa64f3b40d" + } + Frame { + msec: 4800 + image: "cursorDelegate.4.png" + } + Frame { + msec: 4816 + hash: "c40d8d42a55dde7dbbcae2dda9aaccb8" + } + Frame { + msec: 4832 + hash: "5c1000fdc279742cbe46987045c0a92b" + } + Frame { + msec: 4848 + hash: "bcef4a0ff72330f05f2bf5042e414fde" + } + Frame { + msec: 4864 + hash: "228551c38b567f1550b44f9dac08786b" + } + Frame { + msec: 4880 + hash: "531c5ca6992c4a12927c61e22c02dd6b" + } + Mouse { + type: 2 + button: 1 + buttons: 1 + x: 130; y: 101 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4896 + hash: "14b328c8ec6276e022643102af80fa44" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 130; y: 102 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4912 + hash: "bdcafed4ae9c890eec2e3e0cb2ff5a14" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 131; y: 102 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4928 + hash: "df6f025130dc82f4764def81cec5fa7b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 132; y: 103 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4944 + hash: "cf467854dfde9b2111bc6e7e4442aab5" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 133; y: 103 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 134; y: 103 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4960 + hash: "cfcdf63ca06c2b9ab197821bc1e48c7c" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 135; y: 103 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4976 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 136; y: 103 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 4992 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 137; y: 103 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 138; y: 102 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5008 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 139; y: 101 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5024 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 140; y: 101 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5040 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 141; y: 100 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 143; y: 100 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5056 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 144; y: 100 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5072 + hash: "cfcdf63ca06c2b9ab197821bc1e48c7c" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 146; y: 99 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5088 + hash: "cf467854dfde9b2111bc6e7e4442aab5" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 148; y: 99 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 149; y: 99 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5104 + hash: "7643fcfb740d33b87915300684e85a44" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 150; y: 99 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5120 + hash: "1bd041a5e8d2237b51720fed82250303" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 151; y: 99 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5136 + hash: "1a00c9d3ce747e3bc7ee5878d21260b4" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 152; y: 99 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 152; y: 98 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5152 + hash: "803896c1be68588ba2cddd7effbb8d62" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 153; y: 98 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5168 + hash: "282ab572698088fba3aba8e6a091aa38" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 154; y: 98 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5184 + hash: "24402d9e4fabd78bc8f3921db82e554e" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 155; y: 98 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 156; y: 98 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5200 + hash: "39a89e9ca7c4edd9c8503927d639df0f" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 157; y: 98 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5216 + hash: "b984b7d032544acd4dab8901e0af1ef5" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 158; y: 98 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5232 + hash: "e014414626407b0446939ad2ce38b7dd" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 160; y: 98 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 161; y: 98 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5248 + hash: "beccb93613279e2f48507ddc9a4418e8" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 163; y: 97 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5264 + hash: "dd861f8dc89587301e860217fdf2a701" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 164; y: 97 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5280 + hash: "1ae0b7a18a7d3ebe4871a0045005e2b7" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 166; y: 96 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 168; y: 96 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5296 + hash: "071e1f8bcc0e541b23d134f32c19d20b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 170; y: 96 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5312 + hash: "e8ce2716f4595bc5bf68c24c8a63bbfe" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 174; y: 96 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5328 + hash: "d36a35503af76b12fe5cec65e3f22eda" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 176; y: 96 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 178; y: 96 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5344 + hash: "cea0f90a56fd5789b3e166f09f2bfcec" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 179; y: 96 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5360 + hash: "151f5357d9c1a3f1fe09380a287abab0" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 180; y: 96 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5376 + hash: "bdab9d7077734087cb7f9516e9c517bc" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 182; y: 95 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 183; y: 95 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5392 + hash: "6d6d929a7c7be1d2e7d1b2f98a6866be" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 185; y: 94 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5408 + hash: "3fbe3f45afc5aa40fff7f795ced8a05d" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 187; y: 94 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5424 + hash: "b35b4dc480aeb76912d927b0ff8676c6" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 189; y: 93 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 191; y: 92 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5440 + hash: "94e82e888280f20cce3ac38b353b79f4" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 192; y: 92 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5456 + hash: "4674fbd35e467bed780a5ea2fe2e258b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 194; y: 92 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5472 + hash: "698827bfa7ff2eae6b0e0efa99bb15bb" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 196; y: 92 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 198; y: 92 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5488 + hash: "67c7adef5e41481d631f54d34423b93d" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 199; y: 92 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5504 + hash: "097512c005127fa3ebfcbc52808264a8" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 200; y: 91 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5520 + hash: "ad64b5913350e6c6fda199ecb34278f4" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 200; y: 91 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 201; y: 90 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5536 + hash: "3237e88e0f40595d2fde62723c00b7fa" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 202; y: 89 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5552 + hash: "18db89296849f22a7af0a1ffc9762a32" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 203; y: 88 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5568 + hash: "7f6ac84baaa2c5fcd22ba45172611840" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 204; y: 88 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5584 + hash: "7b887d3aa44229d9f25fdde8f5ccf471" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 207; y: 86 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 208; y: 85 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5600 + hash: "b0c08726d0f2a460d5862cd2d7ee6230" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 210; y: 85 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5616 + hash: "d99389a3287d453b942f070d8c1e86e8" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 212; y: 84 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5632 + hash: "a0751fa826b03cb25e615c6a1435d92a" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 213; y: 84 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 214; y: 84 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5648 + hash: "f33da88ae881c846bd86ab3dc4f12efc" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 215; y: 84 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5664 + hash: "7049bee9a984a2c2d3101eb6d3cce31e" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 216; y: 84 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5680 + hash: "72757a5099748b70241a0d4279e42313" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 216; y: 84 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 217; y: 84 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5696 + hash: "705feb098ebb2d689526d9271098d6b5" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 218; y: 84 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5712 + hash: "49de92770edb0aae82cf66ae42b31caa" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 218; y: 84 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5728 + hash: "70fe89f9dce556ec1859f325aa27b7db" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 219; y: 85 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 219; y: 86 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 220; y: 86 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5744 + hash: "1ededcc625a0e9e317c5aefc238a175a" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 221; y: 87 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5760 + image: "cursorDelegate.5.png" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 222; y: 87 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5776 + hash: "f1ae53071836512830f7284c4ac884b3" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 222; y: 88 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5792 + hash: "f73c2b66b61bdcb080f8be6607079729" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 224; y: 90 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5808 + hash: "11da14806fbca5c7cd559286fb5d70ff" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 226; y: 92 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5824 + hash: "b3ad82e900925227fb020009ae619d28" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 228; y: 94 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5840 + hash: "d8cea4160f0044b09e595610ead01879" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 229; y: 96 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 231; y: 97 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5856 + hash: "bdd0d1bea8590b40cdce2fb45e17901b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 232; y: 98 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5872 + hash: "007a5d123eea589264e22f862f1bcac6" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 233; y: 98 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5888 + hash: "3a83635e8371f3e26baf83c285b7801d" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 233; y: 98 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5904 + hash: "6615931007ab0f9da070b6316068ad12" + } + Frame { + msec: 5920 + hash: "be695ab0dced25c1c498d977fc822cef" + } + Frame { + msec: 5936 + hash: "46dea7348473bc6ce4ea696292e5aae0" + } + Frame { + msec: 5952 + hash: "23ce0ba723ffe4253610fdc635df9ae2" + } + Frame { + msec: 5968 + hash: "9d6243396fd98b7efd14ae8a67297e79" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 233; y: 98 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 5984 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 232; y: 99 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 232; y: 99 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6000 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 231; y: 99 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6016 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 230; y: 99 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6032 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 229; y: 99 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 228; y: 100 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6048 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 227; y: 100 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6064 + hash: "be488252ce6c39317c33706f7febe7b5" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 225; y: 100 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6080 + hash: "16c38b5dcd8ffbadc533d4fea8a85b0d" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 224; y: 101 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 222; y: 101 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6096 + hash: "a3ca6fa1bbc5ca3ff4cf281ae112102d" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 220; y: 102 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6112 + hash: "58e53a9cb886d6d90c0b5987d0693904" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 219; y: 102 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6128 + hash: "a7f3e07ad0335e2852a156b5a3e1bd3d" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 217; y: 102 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 216; y: 102 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6144 + hash: "bea9d0338212c01474b25ee637aa8fd0" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 215; y: 102 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6160 + hash: "b509c0cdea6b1352ff1e146a8f243820" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 213; y: 102 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6176 + hash: "9c968354773878009af2f176b1e38d42" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 212; y: 102 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 212; y: 102 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6192 + hash: "d8cea4160f0044b09e595610ead01879" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 210; y: 102 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6208 + hash: "b3ad82e900925227fb020009ae619d28" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 210; y: 102 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6224 + hash: "11da14806fbca5c7cd559286fb5d70ff" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 208; y: 103 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 207; y: 103 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6240 + hash: "707f51caadf24d3ed88b69c290d56971" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 206; y: 103 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6256 + hash: "c23b2afed7fa0e3dbce1183cf8e8d724" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 205; y: 103 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6272 + hash: "653b2e2d711c1abc1893d0068f4c531c" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 204; y: 103 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 203; y: 104 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6288 + hash: "246a73b19421f0ea8ec444429bd6704e" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 202; y: 104 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6304 + hash: "3878df64c0cecb2051e04dafe16ad407" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 201; y: 104 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6320 + hash: "1cf92a793a4d145acce08c61cca3ba4f" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 200; y: 103 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 199; y: 103 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6336 + hash: "6c5f70c941a04172aae855eed1516971" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 197; y: 102 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6352 + hash: "5f4b8d6ad49de0ea1a2ee057e783b363" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 196; y: 101 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 194; y: 101 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6368 + hash: "dc185cf4a14801d7bcc24ceadffe312b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 191; y: 101 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 188; y: 100 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6384 + hash: "6934c069d1b7daf1c2dd76739941c7c2" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 187; y: 99 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6400 + hash: "415510947b49a08459523fa2221d3609" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 185; y: 99 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6416 + hash: "9586619df75f07cc1f01201abd0f1f43" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 182; y: 98 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6432 + hash: "d016b14c9d5e5cd2545f1c85aa1edc4f" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 176; y: 96 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6448 + hash: "4100837adeaf1557534f5c243eeacc37" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 171; y: 95 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6464 + hash: "a9351f624dc7de55ca8e799cf4371e75" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 166; y: 94 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 163; y: 94 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6480 + hash: "8f2f9ba7de4e01767dda2c6d8f09e218" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 160; y: 94 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6496 + hash: "fb9b7d7e1aa140efc7e39cbca7299d34" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 159; y: 94 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6512 + hash: "eb1c2399d5779cc3382f02e69e5a31f1" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 157; y: 94 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 156; y: 94 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6528 + hash: "3bd98dc8a8cfb7af8a5f2ab11f387065" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 156; y: 94 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6544 + hash: "1eea9af6e5f359b96df86d56d74f8375" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 155; y: 94 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6560 + hash: "74c68b948d8e1d3c716eba5f1a186464" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 154; y: 94 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 153; y: 95 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6576 + hash: "7103ecc0c21208d210938b0cd86fa4e2" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 152; y: 95 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 151; y: 95 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6592 + hash: "187b7801be7cd9643c707016166fcb38" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 149; y: 95 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6608 + hash: "571fe7704d5d95e91d4bd411ab00edf0" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 148; y: 96 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6624 + hash: "2b6fd25a47274ffa56c3d0020babfdfc" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 146; y: 96 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6640 + hash: "febcd6b5fc1806ff57d1669c79aa4cb2" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 145; y: 97 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6656 + hash: "5c731fc4a2aeccf55a0af2b7171f25ce" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 145; y: 97 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6672 + hash: "7d9df9dd9a99eabaa4b426438e44d612" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 144; y: 97 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6688 + hash: "48278540489142f8a63ed120f4b956c2" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 144; y: 97 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6704 + hash: "d08abdfb587a7ec07872cb662526b6d8" + } + Frame { + msec: 6720 + image: "cursorDelegate.6.png" + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 144; y: 97 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6736 + hash: "4622738082ac75e00b6c63e846b7e98b" + } + Frame { + msec: 6752 + hash: "87a9f2facbaba462c562f09947bb7ded" + } + Frame { + msec: 6768 + hash: "77e730ece9f195c3627508d1c2a126fc" + } + Frame { + msec: 6784 + hash: "4a02aaca12e3fd86ee3b516b3a307f86" + } + Frame { + msec: 6800 + hash: "0a1c2eb8a7451a5e37fefb96a58a88a1" + } + Frame { + msec: 6816 + hash: "7f2d9959323f0707e36ecb2252c89727" + } + Frame { + msec: 6832 + hash: "3462a3e166120515e67430600e4653f8" + } + Frame { + msec: 6848 + hash: "eac8375d9b9cf0afbf232e27c6ceb037" + } + Frame { + msec: 6864 + hash: "fbefb1e0801f4578ab93dd7ff4062e68" + } + Frame { + msec: 6880 + hash: "078d75d72bff036574b85ac0aeaaf2b6" + } + Frame { + msec: 6896 + hash: "14b328c8ec6276e022643102af80fa44" + } + Frame { + msec: 6912 + hash: "bdcafed4ae9c890eec2e3e0cb2ff5a14" + } + Frame { + msec: 6928 + hash: "df6f025130dc82f4764def81cec5fa7b" + } + Frame { + msec: 6944 + hash: "cf467854dfde9b2111bc6e7e4442aab5" + } + Frame { + msec: 6960 + hash: "cfcdf63ca06c2b9ab197821bc1e48c7c" + } + Frame { + msec: 6976 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 6992 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 7008 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 7024 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 7040 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 7056 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 7072 + hash: "cfcdf63ca06c2b9ab197821bc1e48c7c" + } + Frame { + msec: 7088 + hash: "cf467854dfde9b2111bc6e7e4442aab5" + } + Frame { + msec: 7104 + hash: "df6f025130dc82f4764def81cec5fa7b" + } + Frame { + msec: 7120 + hash: "bdcafed4ae9c890eec2e3e0cb2ff5a14" + } + Frame { + msec: 7136 + hash: "14b328c8ec6276e022643102af80fa44" + } + Frame { + msec: 7152 + hash: "078d75d72bff036574b85ac0aeaaf2b6" + } + Frame { + msec: 7168 + hash: "fbefb1e0801f4578ab93dd7ff4062e68" + } + Frame { + msec: 7184 + hash: "eac8375d9b9cf0afbf232e27c6ceb037" + } + Frame { + msec: 7200 + hash: "3462a3e166120515e67430600e4653f8" + } + Frame { + msec: 7216 + hash: "7f2d9959323f0707e36ecb2252c89727" + } + Frame { + msec: 7232 + hash: "0a1c2eb8a7451a5e37fefb96a58a88a1" + } + Frame { + msec: 7248 + hash: "4a02aaca12e3fd86ee3b516b3a307f86" + } + Frame { + msec: 7264 + hash: "77e730ece9f195c3627508d1c2a126fc" + } + Frame { + msec: 7280 + hash: "87a9f2facbaba462c562f09947bb7ded" + } + Frame { + msec: 7296 + hash: "4622738082ac75e00b6c63e846b7e98b" + } + Frame { + msec: 7312 + hash: "9fcec7616e28cb8317709656fd94f480" + } + Frame { + msec: 7328 + hash: "d08abdfb587a7ec07872cb662526b6d8" + } + Frame { + msec: 7344 + hash: "48278540489142f8a63ed120f4b956c2" + } + Frame { + msec: 7360 + hash: "7d9df9dd9a99eabaa4b426438e44d612" + } + Frame { + msec: 7376 + hash: "5c731fc4a2aeccf55a0af2b7171f25ce" + } + Frame { + msec: 7392 + hash: "febcd6b5fc1806ff57d1669c79aa4cb2" + } + Frame { + msec: 7408 + hash: "4ad2c0877360b0e1bf2212f9455f741e" + } + Frame { + msec: 7424 + hash: "4df1951aac4ed1957925c95e112b0766" + } + Frame { + msec: 7440 + hash: "bfbb624abe63639f2a7cb826b6b47393" + } + Frame { + msec: 7456 + hash: "538cf4ee98145b3801e198b036e24a46" + } + Frame { + msec: 7472 + hash: "5602c039a304ac0b1fd99957970a825b" + } + Frame { + msec: 7488 + hash: "9ddd7709269b9a008e15d942e156e13a" + } + Frame { + msec: 7504 + hash: "91d7c43f5f985d624e77da43ba5fb90f" + } + Frame { + msec: 7520 + hash: "9153b0419d28e3c8137b58f95451cd58" + } + Frame { + msec: 7536 + hash: "c5aad5ea4db81cf72f1ff390ed1dc868" + } + Frame { + msec: 7552 + hash: "47b52ce9e5c705017e94b419b53d20d9" + } + Frame { + msec: 7568 + hash: "f968e3289a2a6343cdb64e37b83f142a" + } + Frame { + msec: 7584 + hash: "6fe898a37b17b6b6fa9a2971b518d185" + } + Frame { + msec: 7600 + hash: "90ced2e487b6e760f2ad2c7d6375a36f" + } + Frame { + msec: 7616 + hash: "b2d87713d12a54d4d7b6fd6ba2671704" + } + Frame { + msec: 7632 + hash: "edce9857bd0e93ab841ae62ffba0149f" + } + Frame { + msec: 7648 + hash: "13ce69facee6bf01c9712db1781c5ef9" + } + Frame { + msec: 7664 + hash: "64924e43e004f0d9e90c23f61813c732" + } + Frame { + msec: 7680 + image: "cursorDelegate.7.png" + } + Frame { + msec: 7696 + hash: "9c384359c664a71b5b6b9f9d62dd38bf" + } + Frame { + msec: 7712 + hash: "5998579d228bcf0efdbcee805796ec23" + } + Frame { + msec: 7728 + hash: "fe69cab70ad5b25f757bc413b895ff94" + } + Mouse { + type: 2 + button: 1 + buttons: 1 + x: 227; y: 114 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7744 + hash: "1ededcc625a0e9e317c5aefc238a175a" + } + Frame { + msec: 7760 + hash: "460a4cbee55ccdeda1941c8dccf08cbd" + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 227; y: 114 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7776 + hash: "f1ae53071836512830f7284c4ac884b3" + } + Frame { + msec: 7792 + hash: "f73c2b66b61bdcb080f8be6607079729" + } + Frame { + msec: 7808 + hash: "11da14806fbca5c7cd559286fb5d70ff" + } + Frame { + msec: 7824 + hash: "b3ad82e900925227fb020009ae619d28" + } + Frame { + msec: 7840 + hash: "d8cea4160f0044b09e595610ead01879" + } + Frame { + msec: 7856 + hash: "9c968354773878009af2f176b1e38d42" + } + Frame { + msec: 7872 + hash: "b509c0cdea6b1352ff1e146a8f243820" + } + Frame { + msec: 7888 + hash: "bea9d0338212c01474b25ee637aa8fd0" + } + Frame { + msec: 7904 + hash: "a7f3e07ad0335e2852a156b5a3e1bd3d" + } + Frame { + msec: 7920 + hash: "58e53a9cb886d6d90c0b5987d0693904" + } + Frame { + msec: 7936 + hash: "a3ca6fa1bbc5ca3ff4cf281ae112102d" + } + Frame { + msec: 7952 + hash: "16c38b5dcd8ffbadc533d4fea8a85b0d" + } + Frame { + msec: 7968 + hash: "be488252ce6c39317c33706f7febe7b5" + } + Frame { + msec: 7984 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 8000 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 8016 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 8032 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 8048 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 8064 + hash: "be488252ce6c39317c33706f7febe7b5" + } + Frame { + msec: 8080 + hash: "16c38b5dcd8ffbadc533d4fea8a85b0d" + } + Frame { + msec: 8096 + hash: "a3ca6fa1bbc5ca3ff4cf281ae112102d" + } + Frame { + msec: 8112 + hash: "58e53a9cb886d6d90c0b5987d0693904" + } + Frame { + msec: 8128 + hash: "a7f3e07ad0335e2852a156b5a3e1bd3d" + } + Frame { + msec: 8144 + hash: "bea9d0338212c01474b25ee637aa8fd0" + } + Frame { + msec: 8160 + hash: "b509c0cdea6b1352ff1e146a8f243820" + } + Frame { + msec: 8176 + hash: "9c968354773878009af2f176b1e38d42" + } + Frame { + msec: 8192 + hash: "d8cea4160f0044b09e595610ead01879" + } + Frame { + msec: 8208 + hash: "b3ad82e900925227fb020009ae619d28" + } + Frame { + msec: 8224 + hash: "11da14806fbca5c7cd559286fb5d70ff" + } + Frame { + msec: 8240 + hash: "f73c2b66b61bdcb080f8be6607079729" + } + Frame { + msec: 8256 + hash: "f1ae53071836512830f7284c4ac884b3" + } + Frame { + msec: 8272 + hash: "460a4cbee55ccdeda1941c8dccf08cbd" + } + Frame { + msec: 8288 + hash: "1ededcc625a0e9e317c5aefc238a175a" + } + Frame { + msec: 8304 + hash: "70fe89f9dce556ec1859f325aa27b7db" + } + Frame { + msec: 8320 + hash: "49de92770edb0aae82cf66ae42b31caa" + } + Frame { + msec: 8336 + hash: "705feb098ebb2d689526d9271098d6b5" + } + Frame { + msec: 8352 + hash: "72757a5099748b70241a0d4279e42313" + } + Frame { + msec: 8368 + hash: "7049bee9a984a2c2d3101eb6d3cce31e" + } + Frame { + msec: 8384 + hash: "f33da88ae881c846bd86ab3dc4f12efc" + } + Frame { + msec: 8400 + hash: "a0751fa826b03cb25e615c6a1435d92a" + } + Frame { + msec: 8416 + hash: "d99389a3287d453b942f070d8c1e86e8" + } + Frame { + msec: 8432 + hash: "e3219357e73a2dfd5b80dfbd6feb79e2" + } + Frame { + msec: 8448 + hash: "c0953accd856883c813d4ecf99fb632b" + } + Frame { + msec: 8464 + hash: "185743339cba9dfc1a2c2ff1efd23855" + } + Frame { + msec: 8480 + hash: "30a4419de779037fd84bd70a99c4d6de" + } + Frame { + msec: 8496 + hash: "1d9cbd0814831c518e9e8041fe8285c9" + } + Frame { + msec: 8512 + hash: "81d660df1b0eab7c382991b600f88ba3" + } + Frame { + msec: 8528 + hash: "7ee1467525b9fe3b6a32fba8c2454df1" + } + Frame { + msec: 8544 + hash: "28dd72957652cf130d28d30203b36c59" + } + Frame { + msec: 8560 + hash: "e9697d06a22958cea4f766dd3ec31ca9" + } + Frame { + msec: 8576 + hash: "81970c31a0a1e42929c83ef5140401c2" + } + Frame { + msec: 8592 + hash: "ebb5be43955725bef66bf99bd7288c04" + } + Frame { + msec: 8608 + hash: "afbf0645ea651b2c459eeb43bdc65992" + } + Frame { + msec: 8624 + hash: "42bf6ab3963652617f2feb96ee170af5" + } + Frame { + msec: 8640 + image: "cursorDelegate.8.png" + } + Frame { + msec: 8656 + hash: "4a5966f600f9b27bf7a65fcc6c1c5d17" + } + Frame { + msec: 8672 + hash: "ecdc1d89af1e76648c8298e2b9940549" + } + Frame { + msec: 8688 + hash: "0ba1e105a7ae41926e2106b60eafdec9" + } + Frame { + msec: 8704 + hash: "96e4f277d4ff76afe0c2d58b4aed3acb" + } + Frame { + msec: 8720 + hash: "f41c6fd9e22354b8f5c940c04930a591" + } + Frame { + msec: 8736 + hash: "00b522554cf6c0c09e5425f4d3c3fcf9" + } + Frame { + msec: 8752 + hash: "e8549c0c361f20d167cab128dc996274" + } + Frame { + msec: 8768 + hash: "976c61615250f9bfa3b4c02ee88bee03" + } + Frame { + msec: 8784 + hash: "06c95d2fa5e2b4751e5693b179e76eb4" + } + Frame { + msec: 8800 + hash: "a3d79197235c4717b1f9af3582118ca6" + } + Frame { + msec: 8816 + hash: "68b23db8f519aa161278074aa318eaa1" + } + Frame { + msec: 8832 + hash: "af967462be12d0b6ddd3571b00804c12" + } + Frame { + msec: 8848 + hash: "46f5c0baa2b95fd418984eebe308157e" + } + Frame { + msec: 8864 + hash: "0a7407c6c751b3f1380a99883e95f1dd" + } + Frame { + msec: 8880 + hash: "9969c206488671c45c43f3a3dd3f5994" + } + Frame { + msec: 8896 + hash: "89efa872ce2e71935b47cac101bf15c9" + } + Frame { + msec: 8912 + hash: "a4545a0c50fb071d267b06bf2d114802" + } + Frame { + msec: 8928 + hash: "f4df98459c18399e1c6b2d8a43bdd678" + } + Frame { + msec: 8944 + hash: "027eb091eea8bf51d7ad3ff44120e075" + } + Frame { + msec: 8960 + hash: "138ec35b850d20664f905a4eea6f7456" + } + Frame { + msec: 8976 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 8992 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 9008 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 9024 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 9040 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 9056 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 9072 + hash: "138ec35b850d20664f905a4eea6f7456" + } + Frame { + msec: 9088 + hash: "027eb091eea8bf51d7ad3ff44120e075" + } + Frame { + msec: 9104 + hash: "f4df98459c18399e1c6b2d8a43bdd678" + } + Frame { + msec: 9120 + hash: "a4545a0c50fb071d267b06bf2d114802" + } + Frame { + msec: 9136 + hash: "89efa872ce2e71935b47cac101bf15c9" + } +} diff --git a/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/qt-669.0.png b/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/qt-669.0.png Binary files differnew file mode 100644 index 0000000..cc1774f --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/qt-669.0.png diff --git a/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/qt-669.1.png b/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/qt-669.1.png Binary files differnew file mode 100644 index 0000000..60eba16 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/qt-669.1.png diff --git a/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/qt-669.2.png b/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/qt-669.2.png Binary files differnew file mode 100644 index 0000000..d4663f7 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/qt-669.2.png diff --git a/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/qt-669.3.png b/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/qt-669.3.png Binary files differnew file mode 100644 index 0000000..dc1bb52 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/qt-669.3.png diff --git a/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/qt-669.qml b/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/qt-669.qml new file mode 100644 index 0000000..84c16e1 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicstextedit/data-MAC/qt-669.qml @@ -0,0 +1,1371 @@ +import Qt.VisualTest 4.6 + +VisualTest { + Frame { + msec: 0 + } + Frame { + msec: 16 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 32 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 48 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 64 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 80 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 96 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 112 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 128 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 144 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 160 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 176 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 192 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 208 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 224 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 240 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 256 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 272 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 288 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 304 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 320 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 336 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 352 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 368 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 384 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Key { + type: 6 + key: 16777236 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 400 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 416 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 432 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Key { + type: 7 + key: 16777236 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 448 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 464 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 480 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 496 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 512 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 528 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Key { + type: 6 + key: 16777236 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 544 + hash: "fbc07fa31ab2022f3155bd1fb591fe6c" + } + Frame { + msec: 560 + hash: "fbc07fa31ab2022f3155bd1fb591fe6c" + } + Frame { + msec: 576 + hash: "fbc07fa31ab2022f3155bd1fb591fe6c" + } + Key { + type: 7 + key: 16777236 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 592 + hash: "fbc07fa31ab2022f3155bd1fb591fe6c" + } + Frame { + msec: 608 + hash: "fbc07fa31ab2022f3155bd1fb591fe6c" + } + Frame { + msec: 624 + hash: "fbc07fa31ab2022f3155bd1fb591fe6c" + } + Frame { + msec: 640 + hash: "fbc07fa31ab2022f3155bd1fb591fe6c" + } + Frame { + msec: 656 + hash: "fbc07fa31ab2022f3155bd1fb591fe6c" + } + Frame { + msec: 672 + hash: "fbc07fa31ab2022f3155bd1fb591fe6c" + } + Key { + type: 6 + key: 16777236 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 688 + hash: "c602a6535ef86125615307d9d187eb3f" + } + Frame { + msec: 704 + hash: "c602a6535ef86125615307d9d187eb3f" + } + Frame { + msec: 720 + hash: "c602a6535ef86125615307d9d187eb3f" + } + Frame { + msec: 736 + hash: "c602a6535ef86125615307d9d187eb3f" + } + Key { + type: 7 + key: 16777236 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 752 + hash: "c602a6535ef86125615307d9d187eb3f" + } + Frame { + msec: 768 + hash: "c602a6535ef86125615307d9d187eb3f" + } + Frame { + msec: 784 + hash: "c602a6535ef86125615307d9d187eb3f" + } + Frame { + msec: 800 + hash: "c602a6535ef86125615307d9d187eb3f" + } + Frame { + msec: 816 + hash: "c602a6535ef86125615307d9d187eb3f" + } + Key { + type: 6 + key: 16777236 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 832 + hash: "c186352ed5d1539a45b3c9e1dfa408d6" + } + Frame { + msec: 848 + hash: "c186352ed5d1539a45b3c9e1dfa408d6" + } + Frame { + msec: 864 + hash: "c186352ed5d1539a45b3c9e1dfa408d6" + } + Frame { + msec: 880 + hash: "c186352ed5d1539a45b3c9e1dfa408d6" + } + Key { + type: 7 + key: 16777236 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 896 + hash: "c186352ed5d1539a45b3c9e1dfa408d6" + } + Frame { + msec: 912 + hash: "c186352ed5d1539a45b3c9e1dfa408d6" + } + Frame { + msec: 928 + hash: "c186352ed5d1539a45b3c9e1dfa408d6" + } + Frame { + msec: 944 + hash: "c186352ed5d1539a45b3c9e1dfa408d6" + } + Key { + type: 6 + key: 16777236 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 960 + image: "qt-669.0.png" + } + Frame { + msec: 976 + hash: "1295bd1d94fe518d5a871e90cab88e0c" + } + Frame { + msec: 992 + hash: "1295bd1d94fe518d5a871e90cab88e0c" + } + Frame { + msec: 1008 + hash: "1295bd1d94fe518d5a871e90cab88e0c" + } + Key { + type: 7 + key: 16777236 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 1024 + hash: "1295bd1d94fe518d5a871e90cab88e0c" + } + Frame { + msec: 1040 + hash: "1295bd1d94fe518d5a871e90cab88e0c" + } + Frame { + msec: 1056 + hash: "1295bd1d94fe518d5a871e90cab88e0c" + } + Frame { + msec: 1072 + hash: "1295bd1d94fe518d5a871e90cab88e0c" + } + Frame { + msec: 1088 + hash: "1295bd1d94fe518d5a871e90cab88e0c" + } + Key { + type: 6 + key: 16777236 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 1104 + hash: "f90403e0b62f9579b5c5f591e75e9eb5" + } + Frame { + msec: 1120 + hash: "f90403e0b62f9579b5c5f591e75e9eb5" + } + Frame { + msec: 1136 + hash: "f90403e0b62f9579b5c5f591e75e9eb5" + } + Key { + type: 7 + key: 16777236 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 1152 + hash: "f90403e0b62f9579b5c5f591e75e9eb5" + } + Frame { + msec: 1168 + hash: "f90403e0b62f9579b5c5f591e75e9eb5" + } + Frame { + msec: 1184 + hash: "f90403e0b62f9579b5c5f591e75e9eb5" + } + Frame { + msec: 1200 + hash: "f90403e0b62f9579b5c5f591e75e9eb5" + } + Frame { + msec: 1216 + hash: "f90403e0b62f9579b5c5f591e75e9eb5" + } + Key { + type: 6 + key: 16777236 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 1232 + hash: "823ccdc677997c96e4ae16891ffffa77" + } + Frame { + msec: 1248 + hash: "823ccdc677997c96e4ae16891ffffa77" + } + Frame { + msec: 1264 + hash: "823ccdc677997c96e4ae16891ffffa77" + } + Frame { + msec: 1280 + hash: "823ccdc677997c96e4ae16891ffffa77" + } + Key { + type: 7 + key: 16777236 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 1296 + hash: "823ccdc677997c96e4ae16891ffffa77" + } + Frame { + msec: 1312 + hash: "823ccdc677997c96e4ae16891ffffa77" + } + Frame { + msec: 1328 + hash: "823ccdc677997c96e4ae16891ffffa77" + } + Frame { + msec: 1344 + hash: "823ccdc677997c96e4ae16891ffffa77" + } + Key { + type: 6 + key: 16777236 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 1360 + hash: "2718ab36551a20d36664f26e408f8f24" + } + Frame { + msec: 1376 + hash: "2718ab36551a20d36664f26e408f8f24" + } + Frame { + msec: 1392 + hash: "2718ab36551a20d36664f26e408f8f24" + } + Frame { + msec: 1408 + hash: "2718ab36551a20d36664f26e408f8f24" + } + Key { + type: 7 + key: 16777236 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 1424 + hash: "2718ab36551a20d36664f26e408f8f24" + } + Frame { + msec: 1440 + hash: "2718ab36551a20d36664f26e408f8f24" + } + Frame { + msec: 1456 + hash: "2718ab36551a20d36664f26e408f8f24" + } + Frame { + msec: 1472 + hash: "2718ab36551a20d36664f26e408f8f24" + } + Frame { + msec: 1488 + hash: "2718ab36551a20d36664f26e408f8f24" + } + Key { + type: 6 + key: 16777236 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 1504 + hash: "781a5a09fb6c6ca1fd38f63938f9c8d0" + } + Frame { + msec: 1520 + hash: "781a5a09fb6c6ca1fd38f63938f9c8d0" + } + Frame { + msec: 1536 + hash: "781a5a09fb6c6ca1fd38f63938f9c8d0" + } + Key { + type: 7 + key: 16777236 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 1552 + hash: "781a5a09fb6c6ca1fd38f63938f9c8d0" + } + Frame { + msec: 1568 + hash: "781a5a09fb6c6ca1fd38f63938f9c8d0" + } + Frame { + msec: 1584 + hash: "781a5a09fb6c6ca1fd38f63938f9c8d0" + } + Frame { + msec: 1600 + hash: "781a5a09fb6c6ca1fd38f63938f9c8d0" + } + Frame { + msec: 1616 + hash: "781a5a09fb6c6ca1fd38f63938f9c8d0" + } + Frame { + msec: 1632 + hash: "781a5a09fb6c6ca1fd38f63938f9c8d0" + } + Frame { + msec: 1648 + hash: "781a5a09fb6c6ca1fd38f63938f9c8d0" + } + Frame { + msec: 1664 + hash: "781a5a09fb6c6ca1fd38f63938f9c8d0" + } + Frame { + msec: 1680 + hash: "781a5a09fb6c6ca1fd38f63938f9c8d0" + } + Frame { + msec: 1696 + hash: "781a5a09fb6c6ca1fd38f63938f9c8d0" + } + Frame { + msec: 1712 + hash: "781a5a09fb6c6ca1fd38f63938f9c8d0" + } + Frame { + msec: 1728 + hash: "781a5a09fb6c6ca1fd38f63938f9c8d0" + } + Frame { + msec: 1744 + hash: "781a5a09fb6c6ca1fd38f63938f9c8d0" + } + Frame { + msec: 1760 + hash: "781a5a09fb6c6ca1fd38f63938f9c8d0" + } + Frame { + msec: 1776 + hash: "781a5a09fb6c6ca1fd38f63938f9c8d0" + } + Frame { + msec: 1792 + hash: "781a5a09fb6c6ca1fd38f63938f9c8d0" + } + Frame { + msec: 1808 + hash: "781a5a09fb6c6ca1fd38f63938f9c8d0" + } + Frame { + msec: 1824 + hash: "781a5a09fb6c6ca1fd38f63938f9c8d0" + } + Frame { + msec: 1840 + hash: "781a5a09fb6c6ca1fd38f63938f9c8d0" + } + Key { + type: 6 + key: 16777234 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 1856 + hash: "2718ab36551a20d36664f26e408f8f24" + } + Frame { + msec: 1872 + hash: "2718ab36551a20d36664f26e408f8f24" + } + Frame { + msec: 1888 + hash: "2718ab36551a20d36664f26e408f8f24" + } + Frame { + msec: 1904 + hash: "2718ab36551a20d36664f26e408f8f24" + } + Frame { + msec: 1920 + image: "qt-669.1.png" + } + Frame { + msec: 1936 + hash: "2718ab36551a20d36664f26e408f8f24" + } + Frame { + msec: 1952 + hash: "2718ab36551a20d36664f26e408f8f24" + } + Frame { + msec: 1968 + hash: "2718ab36551a20d36664f26e408f8f24" + } + Frame { + msec: 1984 + hash: "2718ab36551a20d36664f26e408f8f24" + } + Key { + type: 7 + key: 16777234 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 2000 + hash: "2718ab36551a20d36664f26e408f8f24" + } + Frame { + msec: 2016 + hash: "2718ab36551a20d36664f26e408f8f24" + } + Frame { + msec: 2032 + hash: "2718ab36551a20d36664f26e408f8f24" + } + Frame { + msec: 2048 + hash: "2718ab36551a20d36664f26e408f8f24" + } + Frame { + msec: 2064 + hash: "2718ab36551a20d36664f26e408f8f24" + } + Key { + type: 6 + key: 16777234 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 2080 + hash: "823ccdc677997c96e4ae16891ffffa77" + } + Frame { + msec: 2096 + hash: "823ccdc677997c96e4ae16891ffffa77" + } + Frame { + msec: 2112 + hash: "823ccdc677997c96e4ae16891ffffa77" + } + Frame { + msec: 2128 + hash: "823ccdc677997c96e4ae16891ffffa77" + } + Frame { + msec: 2144 + hash: "823ccdc677997c96e4ae16891ffffa77" + } + Key { + type: 7 + key: 16777234 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 2160 + hash: "823ccdc677997c96e4ae16891ffffa77" + } + Frame { + msec: 2176 + hash: "823ccdc677997c96e4ae16891ffffa77" + } + Frame { + msec: 2192 + hash: "823ccdc677997c96e4ae16891ffffa77" + } + Frame { + msec: 2208 + hash: "823ccdc677997c96e4ae16891ffffa77" + } + Frame { + msec: 2224 + hash: "823ccdc677997c96e4ae16891ffffa77" + } + Key { + type: 6 + key: 16777234 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 2240 + hash: "f90403e0b62f9579b5c5f591e75e9eb5" + } + Frame { + msec: 2256 + hash: "f90403e0b62f9579b5c5f591e75e9eb5" + } + Key { + type: 7 + key: 16777234 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 2272 + hash: "f90403e0b62f9579b5c5f591e75e9eb5" + } + Frame { + msec: 2288 + hash: "f90403e0b62f9579b5c5f591e75e9eb5" + } + Frame { + msec: 2304 + hash: "f90403e0b62f9579b5c5f591e75e9eb5" + } + Frame { + msec: 2320 + hash: "f90403e0b62f9579b5c5f591e75e9eb5" + } + Frame { + msec: 2336 + hash: "f90403e0b62f9579b5c5f591e75e9eb5" + } + Key { + type: 6 + key: 16777234 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 2352 + hash: "1295bd1d94fe518d5a871e90cab88e0c" + } + Frame { + msec: 2368 + hash: "1295bd1d94fe518d5a871e90cab88e0c" + } + Frame { + msec: 2384 + hash: "1295bd1d94fe518d5a871e90cab88e0c" + } + Key { + type: 7 + key: 16777234 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 2400 + hash: "1295bd1d94fe518d5a871e90cab88e0c" + } + Frame { + msec: 2416 + hash: "1295bd1d94fe518d5a871e90cab88e0c" + } + Frame { + msec: 2432 + hash: "1295bd1d94fe518d5a871e90cab88e0c" + } + Frame { + msec: 2448 + hash: "1295bd1d94fe518d5a871e90cab88e0c" + } + Frame { + msec: 2464 + hash: "1295bd1d94fe518d5a871e90cab88e0c" + } + Frame { + msec: 2480 + hash: "1295bd1d94fe518d5a871e90cab88e0c" + } + Frame { + msec: 2496 + hash: "1295bd1d94fe518d5a871e90cab88e0c" + } + Frame { + msec: 2512 + hash: "1295bd1d94fe518d5a871e90cab88e0c" + } + Frame { + msec: 2528 + hash: "1295bd1d94fe518d5a871e90cab88e0c" + } + Frame { + msec: 2544 + hash: "1295bd1d94fe518d5a871e90cab88e0c" + } + Frame { + msec: 2560 + hash: "1295bd1d94fe518d5a871e90cab88e0c" + } + Frame { + msec: 2576 + hash: "1295bd1d94fe518d5a871e90cab88e0c" + } + Frame { + msec: 2592 + hash: "1295bd1d94fe518d5a871e90cab88e0c" + } + Key { + type: 6 + key: 16777234 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 2608 + hash: "c186352ed5d1539a45b3c9e1dfa408d6" + } + Frame { + msec: 2624 + hash: "c186352ed5d1539a45b3c9e1dfa408d6" + } + Frame { + msec: 2640 + hash: "c186352ed5d1539a45b3c9e1dfa408d6" + } + Frame { + msec: 2656 + hash: "c186352ed5d1539a45b3c9e1dfa408d6" + } + Frame { + msec: 2672 + hash: "c186352ed5d1539a45b3c9e1dfa408d6" + } + Key { + type: 7 + key: 16777234 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 2688 + hash: "c186352ed5d1539a45b3c9e1dfa408d6" + } + Frame { + msec: 2704 + hash: "c186352ed5d1539a45b3c9e1dfa408d6" + } + Frame { + msec: 2720 + hash: "c186352ed5d1539a45b3c9e1dfa408d6" + } + Frame { + msec: 2736 + hash: "c186352ed5d1539a45b3c9e1dfa408d6" + } + Frame { + msec: 2752 + hash: "c186352ed5d1539a45b3c9e1dfa408d6" + } + Key { + type: 6 + key: 16777234 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 2768 + hash: "c602a6535ef86125615307d9d187eb3f" + } + Frame { + msec: 2784 + hash: "c602a6535ef86125615307d9d187eb3f" + } + Frame { + msec: 2800 + hash: "c602a6535ef86125615307d9d187eb3f" + } + Key { + type: 7 + key: 16777234 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 2816 + hash: "c602a6535ef86125615307d9d187eb3f" + } + Frame { + msec: 2832 + hash: "c602a6535ef86125615307d9d187eb3f" + } + Frame { + msec: 2848 + hash: "c602a6535ef86125615307d9d187eb3f" + } + Frame { + msec: 2864 + hash: "c602a6535ef86125615307d9d187eb3f" + } + Key { + type: 6 + key: 16777234 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 2880 + image: "qt-669.2.png" + } + Frame { + msec: 2896 + hash: "fbc07fa31ab2022f3155bd1fb591fe6c" + } + Frame { + msec: 2912 + hash: "fbc07fa31ab2022f3155bd1fb591fe6c" + } + Frame { + msec: 2928 + hash: "fbc07fa31ab2022f3155bd1fb591fe6c" + } + Key { + type: 7 + key: 16777234 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 2944 + hash: "fbc07fa31ab2022f3155bd1fb591fe6c" + } + Frame { + msec: 2960 + hash: "fbc07fa31ab2022f3155bd1fb591fe6c" + } + Frame { + msec: 2976 + hash: "fbc07fa31ab2022f3155bd1fb591fe6c" + } + Frame { + msec: 2992 + hash: "fbc07fa31ab2022f3155bd1fb591fe6c" + } + Frame { + msec: 3008 + hash: "fbc07fa31ab2022f3155bd1fb591fe6c" + } + Key { + type: 6 + key: 16777234 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 3024 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3040 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3056 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3072 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3088 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Key { + type: 7 + key: 16777234 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 3104 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3120 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3136 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3152 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3168 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3184 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3200 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3216 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3232 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3248 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3264 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3280 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3296 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3312 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3328 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3344 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3360 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3376 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3392 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3408 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3424 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3440 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3456 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3472 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3488 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3504 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3520 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3536 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3552 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3568 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3584 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3600 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3616 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3632 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3648 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3664 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3680 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Frame { + msec: 3696 + hash: "e64c3246a0f81e2df29ac276ac6d411f" + } + Key { + type: 6 + key: 16777234 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 3712 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 3728 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 3744 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 3760 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 3776 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 3792 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Key { + type: 7 + key: 16777234 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 3808 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 3824 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 3840 + image: "qt-669.3.png" + } + Frame { + msec: 3856 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 3872 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 3888 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 3904 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 3920 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 3936 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 3952 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 3968 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 3984 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 4000 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 4016 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 4032 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 4048 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 4064 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 4080 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 4096 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 4112 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 4128 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 4144 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 4160 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 4176 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 4192 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 4208 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 4224 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 4240 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 4256 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 4272 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 4288 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } + Frame { + msec: 4304 + hash: "c043ae4adb31cb53bfc089e7f2ed07b2" + } +} diff --git a/tests/auto/declarative/visual/qmlgraphicstextinput/data-MAC/cursorDelegate.0.png b/tests/auto/declarative/visual/qmlgraphicstextinput/data-MAC/cursorDelegate.0.png Binary files differnew file mode 100644 index 0000000..9d0bab2 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicstextinput/data-MAC/cursorDelegate.0.png diff --git a/tests/auto/declarative/visual/qmlgraphicstextinput/data-MAC/cursorDelegate.1.png b/tests/auto/declarative/visual/qmlgraphicstextinput/data-MAC/cursorDelegate.1.png Binary files differnew file mode 100644 index 0000000..db66ff7 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicstextinput/data-MAC/cursorDelegate.1.png diff --git a/tests/auto/declarative/visual/qmlgraphicstextinput/data-MAC/cursorDelegate.2.png b/tests/auto/declarative/visual/qmlgraphicstextinput/data-MAC/cursorDelegate.2.png Binary files differnew file mode 100644 index 0000000..cbcca68 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicstextinput/data-MAC/cursorDelegate.2.png diff --git a/tests/auto/declarative/visual/qmlgraphicstextinput/data-MAC/cursorDelegate.3.png b/tests/auto/declarative/visual/qmlgraphicstextinput/data-MAC/cursorDelegate.3.png Binary files differnew file mode 100644 index 0000000..c22196b --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicstextinput/data-MAC/cursorDelegate.3.png diff --git a/tests/auto/declarative/visual/qmlgraphicstextinput/data-MAC/cursorDelegate.4.png b/tests/auto/declarative/visual/qmlgraphicstextinput/data-MAC/cursorDelegate.4.png Binary files differnew file mode 100644 index 0000000..a1d051e --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicstextinput/data-MAC/cursorDelegate.4.png diff --git a/tests/auto/declarative/visual/qmlgraphicstextinput/data-MAC/cursorDelegate.5.png b/tests/auto/declarative/visual/qmlgraphicstextinput/data-MAC/cursorDelegate.5.png Binary files differnew file mode 100644 index 0000000..9289dc0 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicstextinput/data-MAC/cursorDelegate.5.png diff --git a/tests/auto/declarative/visual/qmlgraphicstextinput/data-MAC/cursorDelegate.6.png b/tests/auto/declarative/visual/qmlgraphicstextinput/data-MAC/cursorDelegate.6.png Binary files differnew file mode 100644 index 0000000..7331f89 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicstextinput/data-MAC/cursorDelegate.6.png diff --git a/tests/auto/declarative/visual/qmlgraphicstextinput/data-MAC/cursorDelegate.7.png b/tests/auto/declarative/visual/qmlgraphicstextinput/data-MAC/cursorDelegate.7.png Binary files differnew file mode 100644 index 0000000..968bdd2 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicstextinput/data-MAC/cursorDelegate.7.png diff --git a/tests/auto/declarative/visual/qmlgraphicstextinput/data-MAC/cursorDelegate.8.png b/tests/auto/declarative/visual/qmlgraphicstextinput/data-MAC/cursorDelegate.8.png Binary files differnew file mode 100644 index 0000000..9a3436a --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicstextinput/data-MAC/cursorDelegate.8.png diff --git a/tests/auto/declarative/visual/qmlgraphicstextinput/data-MAC/cursorDelegate.qml b/tests/auto/declarative/visual/qmlgraphicstextinput/data-MAC/cursorDelegate.qml new file mode 100644 index 0000000..3b664b6 --- /dev/null +++ b/tests/auto/declarative/visual/qmlgraphicstextinput/data-MAC/cursorDelegate.qml @@ -0,0 +1,3379 @@ +import Qt.VisualTest 4.6 + +VisualTest { + Frame { + msec: 0 + } + Frame { + msec: 16 + hash: "701d8c0f72330c0b72df071bd17749e6" + } + Frame { + msec: 32 + hash: "701d8c0f72330c0b72df071bd17749e6" + } + Frame { + msec: 48 + hash: "701d8c0f72330c0b72df071bd17749e6" + } + Frame { + msec: 64 + hash: "701d8c0f72330c0b72df071bd17749e6" + } + Frame { + msec: 80 + hash: "701d8c0f72330c0b72df071bd17749e6" + } + Frame { + msec: 96 + hash: "701d8c0f72330c0b72df071bd17749e6" + } + Frame { + msec: 112 + hash: "701d8c0f72330c0b72df071bd17749e6" + } + Frame { + msec: 128 + hash: "701d8c0f72330c0b72df071bd17749e6" + } + Frame { + msec: 144 + hash: "701d8c0f72330c0b72df071bd17749e6" + } + Frame { + msec: 160 + hash: "701d8c0f72330c0b72df071bd17749e6" + } + Frame { + msec: 176 + hash: "701d8c0f72330c0b72df071bd17749e6" + } + Frame { + msec: 192 + hash: "701d8c0f72330c0b72df071bd17749e6" + } + Frame { + msec: 208 + hash: "701d8c0f72330c0b72df071bd17749e6" + } + Frame { + msec: 224 + hash: "701d8c0f72330c0b72df071bd17749e6" + } + Frame { + msec: 240 + hash: "701d8c0f72330c0b72df071bd17749e6" + } + Frame { + msec: 256 + hash: "701d8c0f72330c0b72df071bd17749e6" + } + Frame { + msec: 272 + hash: "701d8c0f72330c0b72df071bd17749e6" + } + Frame { + msec: 288 + hash: "701d8c0f72330c0b72df071bd17749e6" + } + Frame { + msec: 304 + hash: "701d8c0f72330c0b72df071bd17749e6" + } + Frame { + msec: 320 + hash: "701d8c0f72330c0b72df071bd17749e6" + } + Frame { + msec: 336 + hash: "701d8c0f72330c0b72df071bd17749e6" + } + Frame { + msec: 352 + hash: "701d8c0f72330c0b72df071bd17749e6" + } + Frame { + msec: 368 + hash: "701d8c0f72330c0b72df071bd17749e6" + } + Frame { + msec: 384 + hash: "701d8c0f72330c0b72df071bd17749e6" + } + Frame { + msec: 400 + hash: "701d8c0f72330c0b72df071bd17749e6" + } + Frame { + msec: 416 + hash: "701d8c0f72330c0b72df071bd17749e6" + } + Frame { + msec: 432 + hash: "701d8c0f72330c0b72df071bd17749e6" + } + Frame { + msec: 448 + hash: "701d8c0f72330c0b72df071bd17749e6" + } + Frame { + msec: 464 + hash: "701d8c0f72330c0b72df071bd17749e6" + } + Frame { + msec: 480 + hash: "701d8c0f72330c0b72df071bd17749e6" + } + Frame { + msec: 496 + hash: "701d8c0f72330c0b72df071bd17749e6" + } + Frame { + msec: 512 + hash: "701d8c0f72330c0b72df071bd17749e6" + } + Key { + type: 6 + key: 16777234 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 528 + hash: "438be260f19d04c9f98ed7dce1c7db40" + } + Frame { + msec: 544 + hash: "6032aada2c48092000ecb93e52656414" + } + Frame { + msec: 560 + hash: "d23bdd94019477d8378cde580d8765ad" + } + Frame { + msec: 576 + hash: "d74f8e44d47710714d4197809fffb622" + } + Frame { + msec: 592 + hash: "4fbbb8447d80012bc6b5c24ddbfe498e" + } + Frame { + msec: 608 + hash: "4e875ba8703b690a17e445f2b3810435" + } + Frame { + msec: 624 + hash: "e4d7a59716cd704fe1cfa8ba91454e93" + } + Frame { + msec: 640 + hash: "a2ea272b45d8de225826d9381015ff2e" + } + Key { + type: 7 + key: 16777234 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 656 + hash: "5d112a3675ea4c010e7bc60e036d0262" + } + Frame { + msec: 672 + hash: "788d8962f311adf57a3acc876b0e8804" + } + Frame { + msec: 688 + hash: "827fdd6a3d1006f4a9dd2faf208ea436" + } + Key { + type: 6 + key: 16777236 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 704 + hash: "91b2695e4915238ae8610a64e279b0f4" + } + Frame { + msec: 720 + hash: "a97d90765f87b998eae6e9f603c61bff" + } + Frame { + msec: 736 + hash: "48969edab07b942480d93ac2d383ca24" + } + Frame { + msec: 752 + hash: "ecfd9d6d5873001f0c67806544a14983" + } + Frame { + msec: 768 + hash: "a3a3bc1e2523d3e7f961893bcd1dd3a8" + } + Frame { + msec: 784 + hash: "e337735ad0b42e60c54f16f3da7af3cf" + } + Frame { + msec: 800 + hash: "c39db081130d269f25dbcb1a19afb8d0" + } + Frame { + msec: 816 + hash: "c464d501e3935ec0f53eb780bd1a8289" + } + Key { + type: 7 + key: 16777236 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Key { + type: 6 + key: 16777234 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 832 + hash: "9dc01a69f2a6892d3c4203674c8bef72" + } + Frame { + msec: 848 + hash: "d94054222fd37a350bd8abd592a332e3" + } + Frame { + msec: 864 + hash: "46fed264c233490b477e3a7c22183e18" + } + Frame { + msec: 880 + hash: "34bc703c915b49b0450ece1d18306df8" + } + Frame { + msec: 896 + hash: "e87f18da2fa5c91c9b2b5dea50f9c1e2" + } + Frame { + msec: 912 + hash: "4f6dbc7b249c37390518cc263832b587" + } + Key { + type: 7 + key: 16777234 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 928 + hash: "df09fa2fd138d1b480eec82db3872d6f" + } + Frame { + msec: 944 + hash: "b74cb1bfbb979a5e91853d9145d277d8" + } + Frame { + msec: 960 + image: "cursorDelegate.0.png" + } + Frame { + msec: 976 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 992 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 1008 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 1024 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 1040 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 1056 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Key { + type: 6 + key: 16777248 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Key { + type: 6 + key: 16777249 + modifiers: 33554432 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 1072 + hash: "35425ae3ccf3c8dcc1483479c57a3287" + } + Frame { + msec: 1088 + hash: "b74cb1bfbb979a5e91853d9145d277d8" + } + Frame { + msec: 1104 + hash: "df09fa2fd138d1b480eec82db3872d6f" + } + Frame { + msec: 1120 + hash: "4f6dbc7b249c37390518cc263832b587" + } + Frame { + msec: 1136 + hash: "e87f18da2fa5c91c9b2b5dea50f9c1e2" + } + Frame { + msec: 1152 + hash: "34bc703c915b49b0450ece1d18306df8" + } + Frame { + msec: 1168 + hash: "46fed264c233490b477e3a7c22183e18" + } + Frame { + msec: 1184 + hash: "d94054222fd37a350bd8abd592a332e3" + } + Frame { + msec: 1200 + hash: "9dc01a69f2a6892d3c4203674c8bef72" + } + Frame { + msec: 1216 + hash: "76fb2e1ad33affe33c0887f04caa7396" + } + Frame { + msec: 1232 + hash: "0f500339c81ca3621d13910017b84b7b" + } + Frame { + msec: 1248 + hash: "702864de569e6a5648ee174d5ef891f8" + } + Frame { + msec: 1264 + hash: "01e937e1fcc0331b2541fa32c3479a24" + } + Frame { + msec: 1280 + hash: "ee661e6cc1f86e755ff399adb6b11fd1" + } + Frame { + msec: 1296 + hash: "ea2d610e9b41e72b2984a51f0d3f7587" + } + Frame { + msec: 1312 + hash: "4a646d76b706698a02cead560b1f8d57" + } + Frame { + msec: 1328 + hash: "48ec87bfc25471f6fa2d43f9db80b693" + } + Key { + type: 6 + key: 16777234 + modifiers: 100663296 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 1344 + hash: "12b5e016bad990d1f2bf427ee8e3e6d9" + } + Frame { + msec: 1360 + hash: "66a2ba3f9e005cd58aa50cfa0000cd15" + } + Frame { + msec: 1376 + hash: "a2e9e42e09dadbd0791f52bb96e0e0dc" + } + Frame { + msec: 1392 + hash: "ac68396566ea85a157e944e601dd8d18" + } + Frame { + msec: 1408 + hash: "b9bfdebec8dd1a93de7ef2768b2542ba" + } + Frame { + msec: 1424 + hash: "2e0a4b960803770acb34ef56ccf2be35" + } + Key { + type: 7 + key: 16777234 + modifiers: 100663296 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 1440 + hash: "df1643f0f8b7aa2dc080958822aeb3d0" + } + Frame { + msec: 1456 + hash: "15bb91195adfaf83e88fd93e41ff3e17" + } + Frame { + msec: 1472 + hash: "dc0476c27bd7eef3a59637df9a3fecd8" + } + Frame { + msec: 1488 + hash: "a271f69e9dc6d1e0362c3e10760895df" + } + Frame { + msec: 1504 + hash: "7fe66bcc6bada354b4dd7baf8c977740" + } + Frame { + msec: 1520 + hash: "6b502dbd5ac8ff010df326cb9b593dce" + } + Frame { + msec: 1536 + hash: "a9dd21649a95a6a6e8daea91bc6e2a5f" + } + Frame { + msec: 1552 + hash: "374686590eaa02b7b436caa40cc0b0a0" + } + Frame { + msec: 1568 + hash: "09ac3c5d413b1f650407eaa971aade81" + } + Frame { + msec: 1584 + hash: "39f84e04f1ae58600591c0de40558d2c" + } + Frame { + msec: 1600 + hash: "0336ea1799835af2185c361e221a9661" + } + Frame { + msec: 1616 + hash: "8c7ab13e499d7f31107cf0f899334259" + } + Frame { + msec: 1632 + hash: "bad5899324e52c9e6eadb72f3e7c2150" + } + Frame { + msec: 1648 + hash: "4b78f451ecb22cfbed9f5998d61018eb" + } + Key { + type: 6 + key: 16777236 + modifiers: 100663296 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 1664 + hash: "6c913bc712eee18947a43dd1c0a6516b" + } + Frame { + msec: 1680 + hash: "4e566abf1e0696e72b2a4beab5a53d6e" + } + Frame { + msec: 1696 + hash: "6ad579c289c63a6b90a1517765fc041e" + } + Frame { + msec: 1712 + hash: "cef43f349cf221a1aa6e6e70f1fa6339" + } + Key { + type: 7 + key: 16777236 + modifiers: 100663296 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 1728 + hash: "d89f7e3e2510fcb34786584747633673" + } + Frame { + msec: 1744 + hash: "eb23a3eac684808f73034f4e4ef8984d" + } + Frame { + msec: 1760 + hash: "6f2c1f61e58940d9cc1a70c0db903446" + } + Frame { + msec: 1776 + hash: "f036a5ecda518be198f3bdf2dbc5baab" + } + Frame { + msec: 1792 + hash: "7411784774fdc3b324644395f7beb013" + } + Frame { + msec: 1808 + hash: "abfdd1f8440998af2ff7903f49f1bd7c" + } + Frame { + msec: 1824 + hash: "6edd29f2e8d3d81e912c6b279ecc1885" + } + Frame { + msec: 1840 + hash: "8eb5ba22793c7cbfa97a64557f2a023f" + } + Frame { + msec: 1856 + hash: "9a39470525e6f508228f7e0014e02d64" + } + Frame { + msec: 1872 + hash: "b3ad10cf28151f5f7f5a4c3540f1660e" + } + Frame { + msec: 1888 + hash: "816203df3cf42fa7a0e8d6730c186444" + } + Frame { + msec: 1904 + hash: "a0a7e7ff7960dfe6149e526badf799a6" + } + Frame { + msec: 1920 + image: "cursorDelegate.1.png" + } + Frame { + msec: 1936 + hash: "4d245b2285eadfd206409f74e03c7fc9" + } + Frame { + msec: 1952 + hash: "e1d5e6c2e4df1454b5a256c3678ffdef" + } + Frame { + msec: 1968 + hash: "781d7fb03a37cb3f297cc0d2df338fd7" + } + Key { + type: 7 + key: 16777249 + modifiers: 100663296 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 1984 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 2000 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 2016 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 2032 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 2048 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 2064 + hash: "781d7fb03a37cb3f297cc0d2df338fd7" + } + Frame { + msec: 2080 + hash: "e1d5e6c2e4df1454b5a256c3678ffdef" + } + Frame { + msec: 2096 + hash: "4d245b2285eadfd206409f74e03c7fc9" + } + Frame { + msec: 2112 + hash: "5a647962e016d15daa417d88524d6061" + } + Frame { + msec: 2128 + hash: "a0a7e7ff7960dfe6149e526badf799a6" + } + Frame { + msec: 2144 + hash: "816203df3cf42fa7a0e8d6730c186444" + } + Frame { + msec: 2160 + hash: "b3ad10cf28151f5f7f5a4c3540f1660e" + } + Frame { + msec: 2176 + hash: "9a39470525e6f508228f7e0014e02d64" + } + Frame { + msec: 2192 + hash: "8eb5ba22793c7cbfa97a64557f2a023f" + } + Frame { + msec: 2208 + hash: "6edd29f2e8d3d81e912c6b279ecc1885" + } + Frame { + msec: 2224 + hash: "abfdd1f8440998af2ff7903f49f1bd7c" + } + Frame { + msec: 2240 + hash: "7411784774fdc3b324644395f7beb013" + } + Frame { + msec: 2256 + hash: "f036a5ecda518be198f3bdf2dbc5baab" + } + Key { + type: 7 + key: 16777248 + modifiers: 33554432 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 2272 + hash: "6f2c1f61e58940d9cc1a70c0db903446" + } + Frame { + msec: 2288 + hash: "eb23a3eac684808f73034f4e4ef8984d" + } + Frame { + msec: 2304 + hash: "d89f7e3e2510fcb34786584747633673" + } + Frame { + msec: 2320 + hash: "cef43f349cf221a1aa6e6e70f1fa6339" + } + Frame { + msec: 2336 + hash: "6ad579c289c63a6b90a1517765fc041e" + } + Frame { + msec: 2352 + hash: "4e566abf1e0696e72b2a4beab5a53d6e" + } + Key { + type: 6 + key: 16777236 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 2368 + hash: "6c913bc712eee18947a43dd1c0a6516b" + } + Frame { + msec: 2384 + hash: "2c518a32ca3b5ca924709cc6990fb039" + } + Frame { + msec: 2400 + hash: "7f40db00bd3e6d0b39454eefa1403f44" + } + Frame { + msec: 2416 + hash: "98db32e0d1812e9584105dc4dbceff80" + } + Frame { + msec: 2432 + hash: "c2150a67391bb574141c16cb011847bf" + } + Frame { + msec: 2448 + hash: "f9ea21d894fa2dace4d43ce99a580b90" + } + Frame { + msec: 2464 + hash: "2f580c3244499fc6ecd2121693f463fd" + } + Key { + type: 7 + key: 16777236 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 2480 + hash: "2f7f421d3e6a895a9efa6b0e8feb81c4" + } + Frame { + msec: 2496 + hash: "35a18447f319431ed0a645d05a1d03d1" + } + Frame { + msec: 2512 + hash: "54e36fb4014be554d13709b48b9bdce7" + } + Frame { + msec: 2528 + hash: "dbe3456536a729b268850a6ee5d1fb47" + } + Frame { + msec: 2544 + hash: "4c148434cf3868db5dc98f426d9fb913" + } + Frame { + msec: 2560 + hash: "2eb6da3ebfd531037523347603a805e2" + } + Frame { + msec: 2576 + hash: "fefbb2f4671f8a36f9d2207ced8c0bfb" + } + Frame { + msec: 2592 + hash: "1ab596339afc1f96136ee69c4b7688e1" + } + Frame { + msec: 2608 + hash: "e07f59d729cb2790296e8c7cd3d0d3c9" + } + Frame { + msec: 2624 + hash: "a7dccada1080487cab2d0a916676c5cb" + } + Frame { + msec: 2640 + hash: "ac5939eb4379394fab829b307cbfe7ec" + } + Frame { + msec: 2656 + hash: "9329d353c678d2bc61d08f63029d1b9b" + } + Frame { + msec: 2672 + hash: "41263f56af7875028bb0c1e7eccf6f5d" + } + Frame { + msec: 2688 + hash: "e2eb18af82c85ea78ba438163e922df3" + } + Frame { + msec: 2704 + hash: "91b2695e4915238ae8610a64e279b0f4" + } + Frame { + msec: 2720 + hash: "a97d90765f87b998eae6e9f603c61bff" + } + Frame { + msec: 2736 + hash: "48969edab07b942480d93ac2d383ca24" + } + Frame { + msec: 2752 + hash: "ecfd9d6d5873001f0c67806544a14983" + } + Key { + type: 6 + key: 16777234 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 2768 + hash: "01e937e1fcc0331b2541fa32c3479a24" + } + Frame { + msec: 2784 + hash: "702864de569e6a5648ee174d5ef891f8" + } + Frame { + msec: 2800 + hash: "0f500339c81ca3621d13910017b84b7b" + } + Frame { + msec: 2816 + hash: "76fb2e1ad33affe33c0887f04caa7396" + } + Frame { + msec: 2832 + hash: "9dc01a69f2a6892d3c4203674c8bef72" + } + Frame { + msec: 2848 + hash: "d94054222fd37a350bd8abd592a332e3" + } + Frame { + msec: 2864 + hash: "46fed264c233490b477e3a7c22183e18" + } + Frame { + msec: 2880 + image: "cursorDelegate.2.png" + } + Key { + type: 7 + key: 16777234 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 2896 + hash: "e87f18da2fa5c91c9b2b5dea50f9c1e2" + } + Frame { + msec: 2912 + hash: "4f6dbc7b249c37390518cc263832b587" + } + Frame { + msec: 2928 + hash: "df09fa2fd138d1b480eec82db3872d6f" + } + Frame { + msec: 2944 + hash: "b74cb1bfbb979a5e91853d9145d277d8" + } + Frame { + msec: 2960 + hash: "35425ae3ccf3c8dcc1483479c57a3287" + } + Frame { + msec: 2976 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 2992 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 3008 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 3024 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 3040 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 3056 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 3072 + hash: "35425ae3ccf3c8dcc1483479c57a3287" + } + Frame { + msec: 3088 + hash: "b74cb1bfbb979a5e91853d9145d277d8" + } + Frame { + msec: 3104 + hash: "df09fa2fd138d1b480eec82db3872d6f" + } + Frame { + msec: 3120 + hash: "4f6dbc7b249c37390518cc263832b587" + } + Frame { + msec: 3136 + hash: "e87f18da2fa5c91c9b2b5dea50f9c1e2" + } + Frame { + msec: 3152 + hash: "34bc703c915b49b0450ece1d18306df8" + } + Frame { + msec: 3168 + hash: "46fed264c233490b477e3a7c22183e18" + } + Frame { + msec: 3184 + hash: "d94054222fd37a350bd8abd592a332e3" + } + Frame { + msec: 3200 + hash: "9dc01a69f2a6892d3c4203674c8bef72" + } + Frame { + msec: 3216 + hash: "76fb2e1ad33affe33c0887f04caa7396" + } + Frame { + msec: 3232 + hash: "0f500339c81ca3621d13910017b84b7b" + } + Frame { + msec: 3248 + hash: "702864de569e6a5648ee174d5ef891f8" + } + Frame { + msec: 3264 + hash: "01e937e1fcc0331b2541fa32c3479a24" + } + Frame { + msec: 3280 + hash: "ee661e6cc1f86e755ff399adb6b11fd1" + } + Frame { + msec: 3296 + hash: "ea2d610e9b41e72b2984a51f0d3f7587" + } + Frame { + msec: 3312 + hash: "4a646d76b706698a02cead560b1f8d57" + } + Frame { + msec: 3328 + hash: "48ec87bfc25471f6fa2d43f9db80b693" + } + Frame { + msec: 3344 + hash: "827fdd6a3d1006f4a9dd2faf208ea436" + } + Frame { + msec: 3360 + hash: "788d8962f311adf57a3acc876b0e8804" + } + Frame { + msec: 3376 + hash: "5d112a3675ea4c010e7bc60e036d0262" + } + Frame { + msec: 3392 + hash: "a2ea272b45d8de225826d9381015ff2e" + } + Frame { + msec: 3408 + hash: "e4d7a59716cd704fe1cfa8ba91454e93" + } + Frame { + msec: 3424 + hash: "4e875ba8703b690a17e445f2b3810435" + } + Frame { + msec: 3440 + hash: "4fbbb8447d80012bc6b5c24ddbfe498e" + } + Frame { + msec: 3456 + hash: "d74f8e44d47710714d4197809fffb622" + } + Frame { + msec: 3472 + hash: "d23bdd94019477d8378cde580d8765ad" + } + Frame { + msec: 3488 + hash: "6032aada2c48092000ecb93e52656414" + } + Frame { + msec: 3504 + hash: "438be260f19d04c9f98ed7dce1c7db40" + } + Frame { + msec: 3520 + hash: "3af60972e7d5d4320a549e5df52a1228" + } + Frame { + msec: 3536 + hash: "bf8459b99ca0bf568c58a3bb2a2fcc1f" + } + Frame { + msec: 3552 + hash: "c0dc1cf5ba7014e069c4d4bd7ac0f89d" + } + Frame { + msec: 3568 + hash: "f2ddf9d4fd3a2a2d354172714ce94d99" + } + Frame { + msec: 3584 + hash: "bdfb42dc3879099e402784238c2cdddb" + } + Frame { + msec: 3600 + hash: "5e483b0fd4808f2fb31aea90ccf86d3e" + } + Frame { + msec: 3616 + hash: "8159bda651d95a320ac09aa6feb377a1" + } + Frame { + msec: 3632 + hash: "ceda37af96bd02baae218d3bfaed93f7" + } + Frame { + msec: 3648 + hash: "4b81757a105aa7c5ac6148455eea66c3" + } + Frame { + msec: 3664 + hash: "ff7e2cdd006f9b76ab8c0416d81f0cb1" + } + Frame { + msec: 3680 + hash: "9b174cd9a87ff193ce646408946b310c" + } + Frame { + msec: 3696 + hash: "89fa590b47ee77021dedf7938439ce69" + } + Frame { + msec: 3712 + hash: "6e5680803184dfc76cbf1c2de804d6cc" + } + Frame { + msec: 3728 + hash: "c6de6b9203673c77427ab84ce86daaf5" + } + Frame { + msec: 3744 + hash: "198f8e912c19debd51f837627d1171e9" + } + Frame { + msec: 3760 + hash: "3b380dcb6815698241f3dcccb52785c2" + } + Frame { + msec: 3776 + hash: "254942e12b8a31420d2243b7e2529ae8" + } + Frame { + msec: 3792 + hash: "ebf121910a5318c284f8e964d63aed40" + } + Frame { + msec: 3808 + hash: "0fcf416a80d22f077fcf4d23bddeb6c6" + } + Frame { + msec: 3824 + hash: "4a6596da390380dbafc1cdaceca1101e" + } + Frame { + msec: 3840 + image: "cursorDelegate.3.png" + } + Frame { + msec: 3856 + hash: "c2be53ae5e2d5d3081df9af31426ec84" + } + Frame { + msec: 3872 + hash: "52350ac5d10f8fe7571d12193b861d3f" + } + Frame { + msec: 3888 + hash: "f286a35d7f4a022315f69a5db72da388" + } + Frame { + msec: 3904 + hash: "aa329519eba4dad9589bff095528c535" + } + Frame { + msec: 3920 + hash: "0beae60853afaaa0e7f7540fb50bcddf" + } + Frame { + msec: 3936 + hash: "dc098a8b4d2f117a09cf1f2ced201a60" + } + Frame { + msec: 3952 + hash: "3655b992097b433071ec9dd69e086c70" + } + Frame { + msec: 3968 + hash: "82cb92d7940d13deee97e4ccda9210fb" + } + Frame { + msec: 3984 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 4000 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 4016 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 4032 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 4048 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 4064 + hash: "82cb92d7940d13deee97e4ccda9210fb" + } + Key { + type: 6 + key: 16777232 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 4080 + hash: "3655b992097b433071ec9dd69e086c70" + } + Frame { + msec: 4096 + hash: "dc098a8b4d2f117a09cf1f2ced201a60" + } + Frame { + msec: 4112 + hash: "0beae60853afaaa0e7f7540fb50bcddf" + } + Frame { + msec: 4128 + hash: "aa329519eba4dad9589bff095528c535" + } + Key { + type: 7 + key: 16777232 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 4144 + hash: "f286a35d7f4a022315f69a5db72da388" + } + Frame { + msec: 4160 + hash: "52350ac5d10f8fe7571d12193b861d3f" + } + Frame { + msec: 4176 + hash: "c2be53ae5e2d5d3081df9af31426ec84" + } + Frame { + msec: 4192 + hash: "367391b2a124e2c818510567d0884d18" + } + Frame { + msec: 4208 + hash: "4a6596da390380dbafc1cdaceca1101e" + } + Frame { + msec: 4224 + hash: "0fcf416a80d22f077fcf4d23bddeb6c6" + } + Frame { + msec: 4240 + hash: "ebf121910a5318c284f8e964d63aed40" + } + Frame { + msec: 4256 + hash: "254942e12b8a31420d2243b7e2529ae8" + } + Frame { + msec: 4272 + hash: "3b380dcb6815698241f3dcccb52785c2" + } + Frame { + msec: 4288 + hash: "198f8e912c19debd51f837627d1171e9" + } + Frame { + msec: 4304 + hash: "c6de6b9203673c77427ab84ce86daaf5" + } + Frame { + msec: 4320 + hash: "6e5680803184dfc76cbf1c2de804d6cc" + } + Frame { + msec: 4336 + hash: "89fa590b47ee77021dedf7938439ce69" + } + Frame { + msec: 4352 + hash: "9b174cd9a87ff193ce646408946b310c" + } + Frame { + msec: 4368 + hash: "ff7e2cdd006f9b76ab8c0416d81f0cb1" + } + Frame { + msec: 4384 + hash: "4b81757a105aa7c5ac6148455eea66c3" + } + Frame { + msec: 4400 + hash: "ceda37af96bd02baae218d3bfaed93f7" + } + Frame { + msec: 4416 + hash: "8159bda651d95a320ac09aa6feb377a1" + } + Frame { + msec: 4432 + hash: "5e483b0fd4808f2fb31aea90ccf86d3e" + } + Frame { + msec: 4448 + hash: "bdfb42dc3879099e402784238c2cdddb" + } + Frame { + msec: 4464 + hash: "f2ddf9d4fd3a2a2d354172714ce94d99" + } + Frame { + msec: 4480 + hash: "c0dc1cf5ba7014e069c4d4bd7ac0f89d" + } + Frame { + msec: 4496 + hash: "bf8459b99ca0bf568c58a3bb2a2fcc1f" + } + Frame { + msec: 4512 + hash: "3af60972e7d5d4320a549e5df52a1228" + } + Frame { + msec: 4528 + hash: "438be260f19d04c9f98ed7dce1c7db40" + } + Frame { + msec: 4544 + hash: "6032aada2c48092000ecb93e52656414" + } + Frame { + msec: 4560 + hash: "d23bdd94019477d8378cde580d8765ad" + } + Frame { + msec: 4576 + hash: "d74f8e44d47710714d4197809fffb622" + } + Key { + type: 6 + key: 16777233 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 4592 + hash: "4fbbb8447d80012bc6b5c24ddbfe498e" + } + Frame { + msec: 4608 + hash: "4e875ba8703b690a17e445f2b3810435" + } + Frame { + msec: 4624 + hash: "e4d7a59716cd704fe1cfa8ba91454e93" + } + Key { + type: 7 + key: 16777233 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 4640 + hash: "a2ea272b45d8de225826d9381015ff2e" + } + Frame { + msec: 4656 + hash: "5d112a3675ea4c010e7bc60e036d0262" + } + Frame { + msec: 4672 + hash: "788d8962f311adf57a3acc876b0e8804" + } + Frame { + msec: 4688 + hash: "827fdd6a3d1006f4a9dd2faf208ea436" + } + Frame { + msec: 4704 + hash: "48ec87bfc25471f6fa2d43f9db80b693" + } + Frame { + msec: 4720 + hash: "4a646d76b706698a02cead560b1f8d57" + } + Frame { + msec: 4736 + hash: "ea2d610e9b41e72b2984a51f0d3f7587" + } + Frame { + msec: 4752 + hash: "ee661e6cc1f86e755ff399adb6b11fd1" + } + Frame { + msec: 4768 + hash: "01e937e1fcc0331b2541fa32c3479a24" + } + Frame { + msec: 4784 + hash: "702864de569e6a5648ee174d5ef891f8" + } + Frame { + msec: 4800 + image: "cursorDelegate.4.png" + } + Frame { + msec: 4816 + hash: "76fb2e1ad33affe33c0887f04caa7396" + } + Frame { + msec: 4832 + hash: "9dc01a69f2a6892d3c4203674c8bef72" + } + Frame { + msec: 4848 + hash: "d94054222fd37a350bd8abd592a332e3" + } + Frame { + msec: 4864 + hash: "46fed264c233490b477e3a7c22183e18" + } + Frame { + msec: 4880 + hash: "34bc703c915b49b0450ece1d18306df8" + } + Frame { + msec: 4896 + hash: "e87f18da2fa5c91c9b2b5dea50f9c1e2" + } + Frame { + msec: 4912 + hash: "4f6dbc7b249c37390518cc263832b587" + } + Frame { + msec: 4928 + hash: "df09fa2fd138d1b480eec82db3872d6f" + } + Frame { + msec: 4944 + hash: "b74cb1bfbb979a5e91853d9145d277d8" + } + Frame { + msec: 4960 + hash: "35425ae3ccf3c8dcc1483479c57a3287" + } + Frame { + msec: 4976 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 4992 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 5008 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 5024 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 5040 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 5056 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 5072 + hash: "35425ae3ccf3c8dcc1483479c57a3287" + } + Frame { + msec: 5088 + hash: "b74cb1bfbb979a5e91853d9145d277d8" + } + Frame { + msec: 5104 + hash: "df09fa2fd138d1b480eec82db3872d6f" + } + Frame { + msec: 5120 + hash: "4f6dbc7b249c37390518cc263832b587" + } + Frame { + msec: 5136 + hash: "e87f18da2fa5c91c9b2b5dea50f9c1e2" + } + Frame { + msec: 5152 + hash: "34bc703c915b49b0450ece1d18306df8" + } + Frame { + msec: 5168 + hash: "46fed264c233490b477e3a7c22183e18" + } + Frame { + msec: 5184 + hash: "d94054222fd37a350bd8abd592a332e3" + } + Frame { + msec: 5200 + hash: "9dc01a69f2a6892d3c4203674c8bef72" + } + Frame { + msec: 5216 + hash: "76fb2e1ad33affe33c0887f04caa7396" + } + Frame { + msec: 5232 + hash: "0f500339c81ca3621d13910017b84b7b" + } + Frame { + msec: 5248 + hash: "702864de569e6a5648ee174d5ef891f8" + } + Frame { + msec: 5264 + hash: "01e937e1fcc0331b2541fa32c3479a24" + } + Frame { + msec: 5280 + hash: "ee661e6cc1f86e755ff399adb6b11fd1" + } + Frame { + msec: 5296 + hash: "ea2d610e9b41e72b2984a51f0d3f7587" + } + Frame { + msec: 5312 + hash: "4a646d76b706698a02cead560b1f8d57" + } + Frame { + msec: 5328 + hash: "48ec87bfc25471f6fa2d43f9db80b693" + } + Frame { + msec: 5344 + hash: "827fdd6a3d1006f4a9dd2faf208ea436" + } + Frame { + msec: 5360 + hash: "788d8962f311adf57a3acc876b0e8804" + } + Frame { + msec: 5376 + hash: "5d112a3675ea4c010e7bc60e036d0262" + } + Frame { + msec: 5392 + hash: "a2ea272b45d8de225826d9381015ff2e" + } + Frame { + msec: 5408 + hash: "e4d7a59716cd704fe1cfa8ba91454e93" + } + Frame { + msec: 5424 + hash: "4e875ba8703b690a17e445f2b3810435" + } + Frame { + msec: 5440 + hash: "4fbbb8447d80012bc6b5c24ddbfe498e" + } + Frame { + msec: 5456 + hash: "d74f8e44d47710714d4197809fffb622" + } + Frame { + msec: 5472 + hash: "d23bdd94019477d8378cde580d8765ad" + } + Frame { + msec: 5488 + hash: "6032aada2c48092000ecb93e52656414" + } + Frame { + msec: 5504 + hash: "438be260f19d04c9f98ed7dce1c7db40" + } + Frame { + msec: 5520 + hash: "3af60972e7d5d4320a549e5df52a1228" + } + Frame { + msec: 5536 + hash: "bf8459b99ca0bf568c58a3bb2a2fcc1f" + } + Frame { + msec: 5552 + hash: "c0dc1cf5ba7014e069c4d4bd7ac0f89d" + } + Frame { + msec: 5568 + hash: "f2ddf9d4fd3a2a2d354172714ce94d99" + } + Frame { + msec: 5584 + hash: "bdfb42dc3879099e402784238c2cdddb" + } + Frame { + msec: 5600 + hash: "5e483b0fd4808f2fb31aea90ccf86d3e" + } + Frame { + msec: 5616 + hash: "8159bda651d95a320ac09aa6feb377a1" + } + Frame { + msec: 5632 + hash: "ceda37af96bd02baae218d3bfaed93f7" + } + Frame { + msec: 5648 + hash: "4b81757a105aa7c5ac6148455eea66c3" + } + Frame { + msec: 5664 + hash: "ff7e2cdd006f9b76ab8c0416d81f0cb1" + } + Frame { + msec: 5680 + hash: "9b174cd9a87ff193ce646408946b310c" + } + Frame { + msec: 5696 + hash: "89fa590b47ee77021dedf7938439ce69" + } + Frame { + msec: 5712 + hash: "6e5680803184dfc76cbf1c2de804d6cc" + } + Frame { + msec: 5728 + hash: "c6de6b9203673c77427ab84ce86daaf5" + } + Frame { + msec: 5744 + hash: "198f8e912c19debd51f837627d1171e9" + } + Frame { + msec: 5760 + image: "cursorDelegate.5.png" + } + Frame { + msec: 5776 + hash: "254942e12b8a31420d2243b7e2529ae8" + } + Frame { + msec: 5792 + hash: "ebf121910a5318c284f8e964d63aed40" + } + Frame { + msec: 5808 + hash: "0fcf416a80d22f077fcf4d23bddeb6c6" + } + Frame { + msec: 5824 + hash: "4a6596da390380dbafc1cdaceca1101e" + } + Frame { + msec: 5840 + hash: "367391b2a124e2c818510567d0884d18" + } + Frame { + msec: 5856 + hash: "c2be53ae5e2d5d3081df9af31426ec84" + } + Frame { + msec: 5872 + hash: "52350ac5d10f8fe7571d12193b861d3f" + } + Frame { + msec: 5888 + hash: "f286a35d7f4a022315f69a5db72da388" + } + Frame { + msec: 5904 + hash: "aa329519eba4dad9589bff095528c535" + } + Frame { + msec: 5920 + hash: "0beae60853afaaa0e7f7540fb50bcddf" + } + Frame { + msec: 5936 + hash: "dc098a8b4d2f117a09cf1f2ced201a60" + } + Frame { + msec: 5952 + hash: "3655b992097b433071ec9dd69e086c70" + } + Frame { + msec: 5968 + hash: "82cb92d7940d13deee97e4ccda9210fb" + } + Frame { + msec: 5984 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 6000 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 6016 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 6032 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 6048 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 6064 + hash: "82cb92d7940d13deee97e4ccda9210fb" + } + Frame { + msec: 6080 + hash: "3655b992097b433071ec9dd69e086c70" + } + Frame { + msec: 6096 + hash: "dc098a8b4d2f117a09cf1f2ced201a60" + } + Frame { + msec: 6112 + hash: "0beae60853afaaa0e7f7540fb50bcddf" + } + Frame { + msec: 6128 + hash: "aa329519eba4dad9589bff095528c535" + } + Frame { + msec: 6144 + hash: "f286a35d7f4a022315f69a5db72da388" + } + Frame { + msec: 6160 + hash: "52350ac5d10f8fe7571d12193b861d3f" + } + Frame { + msec: 6176 + hash: "c2be53ae5e2d5d3081df9af31426ec84" + } + Frame { + msec: 6192 + hash: "367391b2a124e2c818510567d0884d18" + } + Frame { + msec: 6208 + hash: "4a6596da390380dbafc1cdaceca1101e" + } + Frame { + msec: 6224 + hash: "0fcf416a80d22f077fcf4d23bddeb6c6" + } + Frame { + msec: 6240 + hash: "ebf121910a5318c284f8e964d63aed40" + } + Frame { + msec: 6256 + hash: "254942e12b8a31420d2243b7e2529ae8" + } + Frame { + msec: 6272 + hash: "3b380dcb6815698241f3dcccb52785c2" + } + Frame { + msec: 6288 + hash: "198f8e912c19debd51f837627d1171e9" + } + Frame { + msec: 6304 + hash: "c6de6b9203673c77427ab84ce86daaf5" + } + Frame { + msec: 6320 + hash: "6e5680803184dfc76cbf1c2de804d6cc" + } + Frame { + msec: 6336 + hash: "89fa590b47ee77021dedf7938439ce69" + } + Frame { + msec: 6352 + hash: "9b174cd9a87ff193ce646408946b310c" + } + Frame { + msec: 6368 + hash: "ff7e2cdd006f9b76ab8c0416d81f0cb1" + } + Frame { + msec: 6384 + hash: "4b81757a105aa7c5ac6148455eea66c3" + } + Frame { + msec: 6400 + hash: "ceda37af96bd02baae218d3bfaed93f7" + } + Frame { + msec: 6416 + hash: "8159bda651d95a320ac09aa6feb377a1" + } + Frame { + msec: 6432 + hash: "5e483b0fd4808f2fb31aea90ccf86d3e" + } + Frame { + msec: 6448 + hash: "bdfb42dc3879099e402784238c2cdddb" + } + Frame { + msec: 6464 + hash: "f2ddf9d4fd3a2a2d354172714ce94d99" + } + Frame { + msec: 6480 + hash: "c0dc1cf5ba7014e069c4d4bd7ac0f89d" + } + Frame { + msec: 6496 + hash: "bf8459b99ca0bf568c58a3bb2a2fcc1f" + } + Frame { + msec: 6512 + hash: "3af60972e7d5d4320a549e5df52a1228" + } + Frame { + msec: 6528 + hash: "438be260f19d04c9f98ed7dce1c7db40" + } + Frame { + msec: 6544 + hash: "6032aada2c48092000ecb93e52656414" + } + Frame { + msec: 6560 + hash: "d23bdd94019477d8378cde580d8765ad" + } + Frame { + msec: 6576 + hash: "d74f8e44d47710714d4197809fffb622" + } + Frame { + msec: 6592 + hash: "4fbbb8447d80012bc6b5c24ddbfe498e" + } + Frame { + msec: 6608 + hash: "4e875ba8703b690a17e445f2b3810435" + } + Frame { + msec: 6624 + hash: "e4d7a59716cd704fe1cfa8ba91454e93" + } + Frame { + msec: 6640 + hash: "a2ea272b45d8de225826d9381015ff2e" + } + Frame { + msec: 6656 + hash: "5d112a3675ea4c010e7bc60e036d0262" + } + Frame { + msec: 6672 + hash: "788d8962f311adf57a3acc876b0e8804" + } + Mouse { + type: 2 + button: 1 + buttons: 1 + x: 271; y: 89 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6688 + hash: "e2eb18af82c85ea78ba438163e922df3" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 271; y: 92 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6704 + hash: "91b2695e4915238ae8610a64e279b0f4" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 271; y: 95 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 270; y: 99 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6720 + image: "cursorDelegate.6.png" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 269; y: 103 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6736 + hash: "ea2d610e9b41e72b2984a51f0d3f7587" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 268; y: 107 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6752 + hash: "ee661e6cc1f86e755ff399adb6b11fd1" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 266; y: 114 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6768 + hash: "01e937e1fcc0331b2541fa32c3479a24" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 266; y: 117 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6784 + hash: "702864de569e6a5648ee174d5ef891f8" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 265; y: 117 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6800 + hash: "0f500339c81ca3621d13910017b84b7b" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 263; y: 118 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 261; y: 118 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6816 + hash: "76fb2e1ad33affe33c0887f04caa7396" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 259; y: 118 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6832 + hash: "9dc01a69f2a6892d3c4203674c8bef72" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 256; y: 118 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6848 + hash: "58693aa1a3616310b7ae1e529c4c461a" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 250; y: 118 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 243; y: 118 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6864 + hash: "96afccd7ec697c9c10840f0effaa448d" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 235; y: 119 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6880 + hash: "a00d49e2a9069b1be41f95f6ff4c0312" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 227; y: 121 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6896 + hash: "a0ff4b93291fc12054d3989a20335a87" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 218; y: 124 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 209; y: 126 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6912 + hash: "a86e1347bb25489547514955762d92d3" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 200; y: 126 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6928 + hash: "e5cba3c1e41e38117508c84e894beb11" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 190; y: 127 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6944 + hash: "2560f53b8ac0a84fef895dbb8f0e393e" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 181; y: 127 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 172; y: 127 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6960 + hash: "c1b8bfc008319b793b6bd9345d34ccf5" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 163; y: 127 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6976 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 154; y: 126 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 6992 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 146; y: 124 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 138; y: 121 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7008 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 130; y: 119 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7024 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 123; y: 118 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7040 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 118; y: 118 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 114; y: 118 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7056 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 110; y: 118 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7072 + hash: "a9f2804ac7918971f237c4cfa6339c24" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 108; y: 117 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7088 + hash: "bc9c96855f048cb6c86d480e501322ab" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 107; y: 117 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 106; y: 117 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7104 + hash: "706730602364bfb4d0193d1728a6d350" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 105; y: 117 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7120 + hash: "df80fe3e3ba35ab3fafca929b9101e13" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 104; y: 117 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7136 + hash: "aa8fa1baf61919004a4f14948826882e" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 103; y: 117 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 102; y: 118 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7152 + hash: "1829dfa3615d6ae430ba81a2df9a9e15" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 101; y: 118 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7168 + hash: "c4ea5c767192bbd3bfac58d07594016a" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 100; y: 118 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7184 + hash: "319aede65b3473f28a4ca62a524e4a76" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 100; y: 119 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 100; y: 119 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7200 + hash: "e1de653161e3348e083267c9082bc0f0" + } + Frame { + msec: 7216 + hash: "de5f2d5147c600d2cb44072801c2338e" + } + Frame { + msec: 7232 + hash: "6db41d704d2e28f36b206bdb317ee361" + } + Frame { + msec: 7248 + hash: "a500b87efea241cdf8adf97ae86e10c3" + } + Frame { + msec: 7264 + hash: "86c4eb0164a5b57eb22de4c9d58345f5" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 100; y: 119 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7280 + hash: "2dbb1e3a1374b7c4aecd5a891be4573d" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 101; y: 119 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7296 + hash: "07bcafdf5ca28a1416a20ed375ec3ea6" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 101; y: 119 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7312 + hash: "e79def41bbf7e544d64cf19d74524d3a" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 102; y: 119 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 102; y: 119 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7328 + hash: "20aff98618d16c00dc9b76035e9523f5" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 103; y: 119 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7344 + hash: "12b5e016bad990d1f2bf427ee8e3e6d9" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 104; y: 119 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 105; y: 119 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7360 + hash: "66a2ba3f9e005cd58aa50cfa0000cd15" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 107; y: 119 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7376 + hash: "a2e9e42e09dadbd0791f52bb96e0e0dc" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 110; y: 119 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7392 + hash: "ac68396566ea85a157e944e601dd8d18" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 113; y: 119 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 117; y: 118 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7408 + hash: "b9bfdebec8dd1a93de7ef2768b2542ba" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 124; y: 118 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7424 + hash: "2e0a4b960803770acb34ef56ccf2be35" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 131; y: 118 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7440 + hash: "df1643f0f8b7aa2dc080958822aeb3d0" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 138; y: 118 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 144; y: 118 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7456 + hash: "af8ce877d953727d37fd6f7e4962f45a" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 148; y: 118 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 152; y: 117 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7472 + hash: "b9de04c0d7532d67404a5a773d9fab99" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 155; y: 117 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7488 + hash: "7904312a7efe0b545070c5a5615011df" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 157; y: 116 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7504 + hash: "0069a8f088c83c6716bac15567a5b38d" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 159; y: 116 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 162; y: 116 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7520 + hash: "8c17c78d663097e275ed2f80d6479caf" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 163; y: 116 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7536 + hash: "9e8781569e07fca7def229b76189082d" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 165; y: 116 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7552 + hash: "8dba2f259740d869bfa20205d2e14433" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 166; y: 116 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 168; y: 116 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7568 + hash: "4e7ad066aadbad3f71a08962ba1379c0" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 171; y: 116 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7584 + hash: "a5d1554a6fb311239acc077f01adc597" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 174; y: 116 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7600 + hash: "e91b45c430f7e10c2205af620350ddb6" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 177; y: 116 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 183; y: 117 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7616 + hash: "6c731f4dbdec441cd36b1e9727758d73" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 188; y: 118 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7632 + hash: "31634e757bdec45feb1f021e35746d65" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 193; y: 118 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7648 + hash: "846dcb42fa85719223eb19f7af3d0630" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 198; y: 119 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 206; y: 119 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7664 + hash: "a5826c5d7d1b9161cc7fb76f59021fdd" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 209; y: 119 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7680 + image: "cursorDelegate.7.png" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 211; y: 119 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7696 + hash: "bdfb9b949489744bc77905249eb647f9" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 212; y: 119 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 212; y: 118 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7712 + hash: "307d4fb47604c00e213f8d9616e0da13" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 213; y: 118 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7728 + hash: "74201a80a9032cb18b0c9e26bb67363f" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 214; y: 118 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7744 + hash: "38ca918199552a525fb7f3a3773761d9" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 215; y: 118 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7760 + hash: "d64c06c25229b3b64b779ca1bef7d2cb" + } + Frame { + msec: 7776 + hash: "4ba0117db1ff431de20c06c79866d509" + } + Frame { + msec: 7792 + hash: "ca56899ded0e5ea361aac24493793f58" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 215; y: 118 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 215; y: 118 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7808 + hash: "ebce1d3b4d088278b6f36dac444c7ca6" + } + Frame { + msec: 7824 + hash: "16c52065169bffc4648eda0226dba13a" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 216; y: 118 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7840 + hash: "7a5a6a02f57545d9f2336ff18dd118d6" + } + Frame { + msec: 7856 + hash: "328c8133c68fc2e86dc2193d1bee3259" + } + Frame { + msec: 7872 + hash: "fcad1d2819e3cede6081b4dfbb5a4a65" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 216; y: 117 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7888 + hash: "85ff2968ba06443f300c9c0ef36c7054" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 216; y: 116 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7904 + hash: "871025c33fa769a790fc460a95b183ec" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 216; y: 116 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7920 + hash: "5b96f2673e0ccd2b198b9f99c65b4b12" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 217; y: 116 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7936 + hash: "5fc6f30a2dd019c4f2af056b51cfaa27" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 218; y: 115 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 218; y: 115 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7952 + hash: "fc6bf3bcde1f89f0bff40e3e019aed33" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 219; y: 114 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7968 + hash: "703beec7b035080146131936da8c0fb3" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 220; y: 114 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 7984 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 221; y: 114 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 222; y: 113 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 8000 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 222; y: 113 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 8016 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 8032 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 8048 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 222; y: 114 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 8064 + hash: "703beec7b035080146131936da8c0fb3" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 222; y: 114 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 8080 + hash: "fc6bf3bcde1f89f0bff40e3e019aed33" + } + Frame { + msec: 8096 + hash: "5fc6f30a2dd019c4f2af056b51cfaa27" + } + Frame { + msec: 8112 + hash: "5b96f2673e0ccd2b198b9f99c65b4b12" + } + Frame { + msec: 8128 + hash: "871025c33fa769a790fc460a95b183ec" + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 222; y: 114 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 8144 + hash: "85ff2968ba06443f300c9c0ef36c7054" + } + Frame { + msec: 8160 + hash: "fcad1d2819e3cede6081b4dfbb5a4a65" + } + Frame { + msec: 8176 + hash: "328c8133c68fc2e86dc2193d1bee3259" + } + Frame { + msec: 8192 + hash: "7a5a6a02f57545d9f2336ff18dd118d6" + } + Frame { + msec: 8208 + hash: "16c52065169bffc4648eda0226dba13a" + } + Frame { + msec: 8224 + hash: "ebce1d3b4d088278b6f36dac444c7ca6" + } + Frame { + msec: 8240 + hash: "ca56899ded0e5ea361aac24493793f58" + } + Frame { + msec: 8256 + hash: "4ba0117db1ff431de20c06c79866d509" + } + Frame { + msec: 8272 + hash: "d64c06c25229b3b64b779ca1bef7d2cb" + } + Frame { + msec: 8288 + hash: "38ca918199552a525fb7f3a3773761d9" + } + Frame { + msec: 8304 + hash: "74201a80a9032cb18b0c9e26bb67363f" + } + Frame { + msec: 8320 + hash: "307d4fb47604c00e213f8d9616e0da13" + } + Frame { + msec: 8336 + hash: "9ad660f83ed62b964b676106f8aa7114" + } + Frame { + msec: 8352 + hash: "457fc0df515f9813e98a6a86f4ab5231" + } + Frame { + msec: 8368 + hash: "372cbc6ad4edc85319743627ced05671" + } + Frame { + msec: 8384 + hash: "4e08beac6ee40acaa4de6963522d63d0" + } + Frame { + msec: 8400 + hash: "5e790c2199a5e95fc17f8c0b49809cc9" + } + Frame { + msec: 8416 + hash: "e36310e1866d4a95bac60084fa4aa2c1" + } + Frame { + msec: 8432 + hash: "b7182b171316cc2db4de2b23de93dc41" + } + Frame { + msec: 8448 + hash: "6aaf7f8e6e238973dfd4030eb146198b" + } + Frame { + msec: 8464 + hash: "901ead3167e602dfe043c56c6c805d54" + } + Frame { + msec: 8480 + hash: "5a97542680475b1382ad5b7c3f6fa96a" + } + Frame { + msec: 8496 + hash: "fb34d93127f3c3ad0c7bacce0200753b" + } + Frame { + msec: 8512 + hash: "993c97dc85e83e241538356e317b7767" + } + Frame { + msec: 8528 + hash: "fb11a9edb3a613be5cb6949c76c5c715" + } + Frame { + msec: 8544 + hash: "e68b7461f94adeaf330f67d36d0d3b3e" + } + Frame { + msec: 8560 + hash: "7ed043cc027fdb467bd16847187cd48d" + } + Mouse { + type: 2 + button: 1 + buttons: 1 + x: 277; y: 97 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 8576 + hash: "fefbb2f4671f8a36f9d2207ced8c0bfb" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 277; y: 98 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 8592 + hash: "1ab596339afc1f96136ee69c4b7688e1" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 276; y: 98 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 8608 + hash: "e07f59d729cb2790296e8c7cd3d0d3c9" + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 276; y: 98 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 8624 + hash: "a7dccada1080487cab2d0a916676c5cb" + } + Frame { + msec: 8640 + image: "cursorDelegate.8.png" + } + Frame { + msec: 8656 + hash: "9329d353c678d2bc61d08f63029d1b9b" + } + Frame { + msec: 8672 + hash: "41263f56af7875028bb0c1e7eccf6f5d" + } + Frame { + msec: 8688 + hash: "e2eb18af82c85ea78ba438163e922df3" + } + Frame { + msec: 8704 + hash: "91b2695e4915238ae8610a64e279b0f4" + } + Frame { + msec: 8720 + hash: "a97d90765f87b998eae6e9f603c61bff" + } + Frame { + msec: 8736 + hash: "48969edab07b942480d93ac2d383ca24" + } + Frame { + msec: 8752 + hash: "ecfd9d6d5873001f0c67806544a14983" + } + Frame { + msec: 8768 + hash: "a3a3bc1e2523d3e7f961893bcd1dd3a8" + } + Frame { + msec: 8784 + hash: "e337735ad0b42e60c54f16f3da7af3cf" + } + Frame { + msec: 8800 + hash: "c39db081130d269f25dbcb1a19afb8d0" + } + Frame { + msec: 8816 + hash: "c464d501e3935ec0f53eb780bd1a8289" + } + Frame { + msec: 8832 + hash: "2be4fd986de19f6f76dfddec75b26804" + } + Frame { + msec: 8848 + hash: "a1280e9fb86ca96b2340bb70aa774806" + } + Frame { + msec: 8864 + hash: "cce4c17a387893478bcfa547f7561aba" + } + Frame { + msec: 8880 + hash: "7094db3e04895d8d7f5f58caf0658592" + } + Frame { + msec: 8896 + hash: "edb1f644757f9ba0a39549d77141c280" + } + Frame { + msec: 8912 + hash: "cd381e847ecfce2db111bdf94a437cbc" + } + Frame { + msec: 8928 + hash: "6a089603b641b683a744b88f2ebe82d1" + } + Frame { + msec: 8944 + hash: "8c0e47f7c87a1a11cd733a453b31c780" + } + Frame { + msec: 8960 + hash: "b53c892d62e787eb2565820d79739de6" + } + Frame { + msec: 8976 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 8992 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 9008 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 9024 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 9040 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 9056 + hash: "e165a0b90fdc1eef2c8244ad8545bd6f" + } + Frame { + msec: 9072 + hash: "b53c892d62e787eb2565820d79739de6" + } + Frame { + msec: 9088 + hash: "8c0e47f7c87a1a11cd733a453b31c780" + } + Frame { + msec: 9104 + hash: "6a089603b641b683a744b88f2ebe82d1" + } + Frame { + msec: 9120 + hash: "cd381e847ecfce2db111bdf94a437cbc" + } + Frame { + msec: 9136 + hash: "edb1f644757f9ba0a39549d77141c280" + } + Frame { + msec: 9152 + hash: "7094db3e04895d8d7f5f58caf0658592" + } + Frame { + msec: 9168 + hash: "cce4c17a387893478bcfa547f7561aba" + } + Frame { + msec: 9184 + hash: "a1280e9fb86ca96b2340bb70aa774806" + } + Frame { + msec: 9200 + hash: "2be4fd986de19f6f76dfddec75b26804" + } + Frame { + msec: 9216 + hash: "c464d501e3935ec0f53eb780bd1a8289" + } + Frame { + msec: 9232 + hash: "c39db081130d269f25dbcb1a19afb8d0" + } + Frame { + msec: 9248 + hash: "e337735ad0b42e60c54f16f3da7af3cf" + } + Frame { + msec: 9264 + hash: "a3a3bc1e2523d3e7f961893bcd1dd3a8" + } + Frame { + msec: 9280 + hash: "ecfd9d6d5873001f0c67806544a14983" + } + Frame { + msec: 9296 + hash: "48969edab07b942480d93ac2d383ca24" + } + Frame { + msec: 9312 + hash: "a97d90765f87b998eae6e9f603c61bff" + } + Frame { + msec: 9328 + hash: "91b2695e4915238ae8610a64e279b0f4" + } + Frame { + msec: 9344 + hash: "e2eb18af82c85ea78ba438163e922df3" + } + Frame { + msec: 9360 + hash: "41263f56af7875028bb0c1e7eccf6f5d" + } + Frame { + msec: 9376 + hash: "9329d353c678d2bc61d08f63029d1b9b" + } + Frame { + msec: 9392 + hash: "ac5939eb4379394fab829b307cbfe7ec" + } + Frame { + msec: 9408 + hash: "a7dccada1080487cab2d0a916676c5cb" + } + Frame { + msec: 9424 + hash: "e07f59d729cb2790296e8c7cd3d0d3c9" + } +} diff --git a/tests/auto/declarative/visual/repeater/data-MAC/basic1.0.png b/tests/auto/declarative/visual/repeater/data-MAC/basic1.0.png Binary files differnew file mode 100644 index 0000000..2658b6b --- /dev/null +++ b/tests/auto/declarative/visual/repeater/data-MAC/basic1.0.png diff --git a/tests/auto/declarative/visual/repeater/data-MAC/basic1.qml b/tests/auto/declarative/visual/repeater/data-MAC/basic1.qml new file mode 100644 index 0000000..5bc0d6b --- /dev/null +++ b/tests/auto/declarative/visual/repeater/data-MAC/basic1.qml @@ -0,0 +1,323 @@ +import Qt.VisualTest 4.6 + +VisualTest { + Frame { + msec: 0 + } + Frame { + msec: 16 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 32 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 48 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 64 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 80 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 96 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 112 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 128 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 144 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 160 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 176 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 192 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 208 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 224 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 240 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 256 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 272 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 288 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 304 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 320 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 336 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 352 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 368 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 384 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 400 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 416 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 432 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 448 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 464 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 480 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 496 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 512 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 528 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 544 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 560 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 576 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 592 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 608 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 624 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 640 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 656 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 672 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 688 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 704 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 720 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 736 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 752 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 768 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 784 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 800 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 816 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 832 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 848 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 864 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 880 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 896 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 912 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 928 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 944 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 960 + image: "basic1.0.png" + } + Frame { + msec: 976 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 992 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1008 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1024 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1040 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1056 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1072 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1088 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1104 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1120 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1136 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1152 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1168 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1184 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Key { + type: 6 + key: 16777249 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 1200 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1216 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1232 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } +} diff --git a/tests/auto/declarative/visual/repeater/data-MAC/basic2.0.png b/tests/auto/declarative/visual/repeater/data-MAC/basic2.0.png Binary files differnew file mode 100644 index 0000000..2658b6b --- /dev/null +++ b/tests/auto/declarative/visual/repeater/data-MAC/basic2.0.png diff --git a/tests/auto/declarative/visual/repeater/data-MAC/basic2.qml b/tests/auto/declarative/visual/repeater/data-MAC/basic2.qml new file mode 100644 index 0000000..64cf2ea --- /dev/null +++ b/tests/auto/declarative/visual/repeater/data-MAC/basic2.qml @@ -0,0 +1,331 @@ +import Qt.VisualTest 4.6 + +VisualTest { + Frame { + msec: 0 + } + Frame { + msec: 16 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 32 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 48 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 64 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 80 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 96 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 112 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 128 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 144 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 160 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 176 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 192 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 208 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 224 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 240 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 256 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 272 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 288 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 304 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 320 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 336 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 352 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 368 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 384 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 400 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 416 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 432 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 448 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 464 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 480 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 496 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 512 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 528 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 544 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 560 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 576 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 592 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 608 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 624 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 640 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 656 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 672 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 688 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 704 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 720 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 736 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 752 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 768 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 784 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 800 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 816 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 832 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 848 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 864 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 880 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 896 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 912 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 928 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 944 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 960 + image: "basic2.0.png" + } + Frame { + msec: 976 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 992 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1008 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1024 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1040 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1056 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1072 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1088 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1104 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1120 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1136 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1152 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1168 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Key { + type: 6 + key: 16777249 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 1184 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1200 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1216 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1232 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1248 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1264 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } +} diff --git a/tests/auto/declarative/visual/repeater/data-MAC/basic3.0.png b/tests/auto/declarative/visual/repeater/data-MAC/basic3.0.png Binary files differnew file mode 100644 index 0000000..2658b6b --- /dev/null +++ b/tests/auto/declarative/visual/repeater/data-MAC/basic3.0.png diff --git a/tests/auto/declarative/visual/repeater/data-MAC/basic3.qml b/tests/auto/declarative/visual/repeater/data-MAC/basic3.qml new file mode 100644 index 0000000..41e174a --- /dev/null +++ b/tests/auto/declarative/visual/repeater/data-MAC/basic3.qml @@ -0,0 +1,347 @@ +import Qt.VisualTest 4.6 + +VisualTest { + Frame { + msec: 0 + } + Frame { + msec: 16 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 32 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 48 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 64 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 80 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 96 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 112 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 128 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 144 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 160 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 176 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 192 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 208 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 224 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 240 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 256 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 272 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 288 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 304 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 320 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 336 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 352 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 368 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 384 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 400 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 416 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 432 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 448 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 464 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 480 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 496 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 512 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 528 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 544 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 560 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 576 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 592 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 608 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 624 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 640 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 656 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 672 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 688 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 704 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 720 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 736 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 752 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 768 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 784 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 800 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 816 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 832 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 848 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 864 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 880 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 896 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 912 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 928 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 944 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 960 + image: "basic3.0.png" + } + Frame { + msec: 976 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 992 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1008 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1024 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1040 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1056 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1072 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1088 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1104 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1120 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1136 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1152 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1168 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1184 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1200 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1216 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1232 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Key { + type: 6 + key: 16777249 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 1248 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1264 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1280 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1296 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1312 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1328 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } +} diff --git a/tests/auto/declarative/visual/repeater/data-MAC/basic4.0.png b/tests/auto/declarative/visual/repeater/data-MAC/basic4.0.png Binary files differnew file mode 100644 index 0000000..2658b6b --- /dev/null +++ b/tests/auto/declarative/visual/repeater/data-MAC/basic4.0.png diff --git a/tests/auto/declarative/visual/repeater/data-MAC/basic4.qml b/tests/auto/declarative/visual/repeater/data-MAC/basic4.qml new file mode 100644 index 0000000..fcf2504 --- /dev/null +++ b/tests/auto/declarative/visual/repeater/data-MAC/basic4.qml @@ -0,0 +1,419 @@ +import Qt.VisualTest 4.6 + +VisualTest { + Frame { + msec: 0 + } + Frame { + msec: 16 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 32 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 48 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 64 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 80 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 96 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 112 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 128 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 144 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 160 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 176 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 192 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 208 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 224 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 240 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 256 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 272 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 288 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 304 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 320 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 336 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 352 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 368 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 384 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 400 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 416 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 432 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 448 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 464 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 480 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 496 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 512 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 528 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 544 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 560 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 576 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 592 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 608 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 624 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 640 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 656 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 672 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 688 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 704 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 720 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 736 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 752 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 768 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 784 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 800 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 816 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 832 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 848 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 864 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 880 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 896 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 912 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 928 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 944 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 960 + image: "basic4.0.png" + } + Frame { + msec: 976 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 992 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1008 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1024 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1040 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1056 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1072 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1088 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1104 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1120 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1136 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1152 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1168 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1184 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1200 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1216 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1232 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1248 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1264 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1280 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1296 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1312 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1328 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1344 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1360 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1376 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1392 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1408 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Key { + type: 6 + key: 16777249 + modifiers: 0 + text: "" + autorep: false + count: 1 + } + Frame { + msec: 1424 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1440 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1456 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1472 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1488 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1504 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1520 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1536 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1552 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1568 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1584 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1600 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } + Frame { + msec: 1616 + hash: "2ab8ff9a9fb09111ac07d3966aac9d94" + } +} diff --git a/tests/auto/declarative/visual/webview/zooming/data/zooming.0.png b/tests/auto/declarative/visual/webview/zooming/data/zooming.0.png Binary files differnew file mode 100644 index 0000000..aaab35d --- /dev/null +++ b/tests/auto/declarative/visual/webview/zooming/data/zooming.0.png diff --git a/tests/auto/declarative/visual/webview/zooming/data/zooming.1.png b/tests/auto/declarative/visual/webview/zooming/data/zooming.1.png Binary files differnew file mode 100644 index 0000000..aaab35d --- /dev/null +++ b/tests/auto/declarative/visual/webview/zooming/data/zooming.1.png diff --git a/tests/auto/declarative/visual/webview/zooming/data/zooming.2.png b/tests/auto/declarative/visual/webview/zooming/data/zooming.2.png Binary files differnew file mode 100644 index 0000000..aaab35d --- /dev/null +++ b/tests/auto/declarative/visual/webview/zooming/data/zooming.2.png diff --git a/tests/auto/declarative/visual/webview/zooming/data/zooming.3.png b/tests/auto/declarative/visual/webview/zooming/data/zooming.3.png Binary files differnew file mode 100644 index 0000000..aaab35d --- /dev/null +++ b/tests/auto/declarative/visual/webview/zooming/data/zooming.3.png diff --git a/tests/auto/declarative/visual/webview/zooming/data/zooming.qml b/tests/auto/declarative/visual/webview/zooming/data/zooming.qml new file mode 100644 index 0000000..ad83800 --- /dev/null +++ b/tests/auto/declarative/visual/webview/zooming/data/zooming.qml @@ -0,0 +1,2115 @@ +import Qt.VisualTest 4.6 + +VisualTest { + Frame { + msec: 0 + } + Frame { + msec: 16 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 32 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 48 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 64 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 80 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 96 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 112 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 128 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 144 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 160 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 176 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 192 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 208 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 224 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 240 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 256 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 272 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 288 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 304 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 320 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 336 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 352 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 197; y: 34 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 185; y: 34 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 368 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 169; y: 38 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 384 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 161; y: 40 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 400 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 155; y: 44 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 147; y: 46 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 416 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 141; y: 48 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 138; y: 48 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 432 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 130; y: 48 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 127; y: 48 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 448 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 125; y: 48 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 123; y: 48 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 464 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 480 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 121; y: 49 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 496 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 512 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 117; y: 53 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 116; y: 53 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 528 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 115; y: 54 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 544 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 113; y: 54 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 560 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 111; y: 53 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 111; y: 52 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 576 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 110; y: 50 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 592 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 109; y: 48 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 608 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 108; y: 46 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 624 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 108; y: 45 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 107; y: 44 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 640 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 106; y: 43 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 656 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 105; y: 42 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 672 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 105; y: 41 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 688 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 704 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 720 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 736 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 105; y: 40 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 752 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 105; y: 39 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 768 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 105; y: 37 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 105; y: 36 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 784 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 105; y: 35 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 105; y: 34 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 800 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 816 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 106; y: 33 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 832 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 848 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 864 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 880 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 896 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 2 + button: 1 + buttons: 1 + x: 106; y: 33 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 912 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 928 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 944 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 960 + image: "zooming.0.png" + } + Frame { + msec: 976 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 106; y: 33 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 992 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 1008 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 1024 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 1040 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 1056 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 4 + button: 1 + buttons: 1 + x: 106; y: 33 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1072 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 1088 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 1104 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 1120 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 106; y: 33 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1136 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 1152 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 1168 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 1184 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 106; y: 34 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 106; y: 36 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1200 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 105; y: 38 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1216 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 103; y: 44 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1232 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 102; y: 46 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 98; y: 50 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1248 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 94; y: 56 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 90; y: 62 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1264 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 88; y: 70 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 84; y: 78 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1280 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 84; y: 86 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 84; y: 94 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1296 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 84; y: 104 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 86; y: 114 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1312 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 88; y: 124 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 92; y: 136 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1328 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 94; y: 146 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 96; y: 156 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1344 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 96; y: 164 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 96; y: 172 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1360 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 96; y: 180 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 96; y: 188 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1376 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 96; y: 190 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 96; y: 193 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1392 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 95; y: 195 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 95; y: 197 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1408 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 95; y: 198 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 95; y: 200 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1424 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 94; y: 201 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 94; y: 202 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1440 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 94; y: 204 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1456 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 93; y: 205 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1472 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 92; y: 206 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1488 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 92; y: 208 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1504 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 92; y: 210 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1520 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 92; y: 211 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 91; y: 212 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1536 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 1552 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 1568 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 1584 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 1600 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 1616 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 1632 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 91; y: 213 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1648 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 1664 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 1680 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 1696 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 1712 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 91; y: 214 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 2 + button: 1 + buttons: 1 + x: 91; y: 214 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1728 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 1744 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 1760 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 1776 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 91; y: 214 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1792 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 1808 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 1824 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 1840 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 4 + button: 1 + buttons: 1 + x: 91; y: 214 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1856 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 1872 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 1888 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 1904 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 1920 + image: "zooming.1.png" + } + Frame { + msec: 1936 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 91; y: 214 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 1952 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 1968 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 1984 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2000 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2016 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2032 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2048 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2064 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2080 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2096 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2112 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2128 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 91; y: 212 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2144 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2160 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2176 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2192 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 89; y: 211 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2208 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 88; y: 211 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2224 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2240 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 86; y: 211 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2256 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 85; y: 211 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 84; y: 211 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2272 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 82; y: 211 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 80; y: 211 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2288 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 77; y: 211 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 75; y: 211 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2304 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 69; y: 213 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 66; y: 213 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2320 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 64; y: 213 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 62; y: 213 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2336 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 60; y: 213 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 58; y: 213 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2352 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 56; y: 213 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 55; y: 212 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2368 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2384 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2400 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2416 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2432 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2448 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2464 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2480 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 56; y: 213 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2496 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 58; y: 214 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 59; y: 214 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2512 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 61; y: 215 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 62; y: 216 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2528 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 63; y: 216 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2544 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2560 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2576 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2592 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 64; y: 216 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 2 + button: 1 + buttons: 1 + x: 64; y: 216 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2608 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2624 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2640 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2656 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2672 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 1 + x: 63; y: 216 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 63; y: 216 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2688 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 62; y: 216 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2704 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2720 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2736 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2752 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 4 + button: 1 + buttons: 1 + x: 62; y: 216 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2768 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2784 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2800 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2816 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 3 + button: 1 + buttons: 0 + x: 62; y: 216 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2832 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2848 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 2864 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 62; y: 215 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2880 + image: "zooming.2.png" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 62; y: 214 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2896 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 62; y: 213 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2912 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 62; y: 212 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 63; y: 211 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2928 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 63; y: 209 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 64; y: 208 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2944 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 66; y: 202 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 70; y: 198 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2960 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 72; y: 192 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 74; y: 186 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2976 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 76; y: 180 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 80; y: 170 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 2992 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 84; y: 162 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 88; y: 152 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 3008 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 94; y: 142 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 98; y: 130 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 3024 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 102; y: 118 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 108; y: 108 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 3040 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 112; y: 98 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 114; y: 90 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 3056 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 120; y: 80 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 122; y: 72 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 3072 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 126; y: 66 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 128; y: 58 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 3088 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 132; y: 52 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 134; y: 46 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 3104 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 136; y: 40 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 140; y: 32 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 3120 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 144; y: 24 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 150; y: 18 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 3136 + hash: "c98df558c41f1837398eead42392b780" + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 154; y: 10 + modifiers: 0 + sendToViewport: true + } + Mouse { + type: 5 + button: 0 + buttons: 0 + x: 160; y: 4 + modifiers: 0 + sendToViewport: true + } + Frame { + msec: 3152 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3168 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3184 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3200 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3216 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3232 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3248 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3264 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3280 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3296 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3312 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3328 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3344 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3360 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3376 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3392 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3408 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3424 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3440 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3456 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3472 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3488 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3504 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3520 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3536 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3552 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3568 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3584 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3600 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3616 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3632 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3648 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3664 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3680 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3696 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3712 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3728 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3744 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3760 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3776 + hash: "c98df558c41f1837398eead42392b780" + } + Frame { + msec: 3792 + hash: "c98df558c41f1837398eead42392b780" + } +} diff --git a/tests/auto/declarative/visual/webview/zooming/zooming.html b/tests/auto/declarative/visual/webview/zooming/zooming.html new file mode 100644 index 0000000..4e91035 --- /dev/null +++ b/tests/auto/declarative/visual/webview/zooming/zooming.html @@ -0,0 +1,6 @@ +<html> +<body> +<h1>Zooming</h1> +<p> +This test shows how zooming can be to HTML elements.</p> +<img src="qtlogo.png"> diff --git a/tests/auto/declarative/visual/webview/zooming/zooming.qml b/tests/auto/declarative/visual/webview/zooming/zooming.qml new file mode 100644 index 0000000..3ac57f6 --- /dev/null +++ b/tests/auto/declarative/visual/webview/zooming/zooming.qml @@ -0,0 +1,17 @@ +import Qt 4.6 + +// Note that zooming is better done using zoomFactor and careful +// control of rendering to avoid excessive re-rendering during +// zoom animations. This test is written for simplicity. +WebView { + width: 200 + height: 250 + x: Behavior { NumberAnimation { } } + y: Behavior { NumberAnimation { } } + scale: Behavior { NumberAnimation { } } + url: "zooming.html" + preferredWidth: width + preferredHeight: height + onDoubleClick: {print(clickX,clickY);heuristicZoom(clickX,clickY,2)} + onZoomTo: {print(zoom);scale=zoom;x=width/2-centerX;y=height/2-centerY} +} diff --git a/tests/auto/declarative/xmlhttprequest/data/cdata.qml b/tests/auto/declarative/xmlhttprequest/data/cdata.qml new file mode 100644 index 0000000..5faa359 --- /dev/null +++ b/tests/auto/declarative/xmlhttprequest/data/cdata.qml @@ -0,0 +1,135 @@ +import Qt 4.6 + +Object { + property bool xmlTest: false + property bool dataOK: false + + Script { + function checkCData(text, whitespacetext) + { + // This is essentially a copy of text.qml/checkText() + + if (text == null) + return; + + if (text.nodeName != "#cdata-section") + return; + + if (text.nodeValue != "Hello world!") + return; + + if (text.nodeType != 4) + return; + + if (text.parentNode.nodeName != "item") + return; + + if (text.childNodes.length != 0) + return; + + if (text.firstChild != null) + return; + + if (text.lastChild != null) + return; + + if (text.previousSibling != null) + return; + + if (text.nextSibling != null) + return; + + if (text.attributes != null) + return; + + if (text.wholeText != "Hello world!") + return; + + if (text.data != "Hello world!") + return; + + if (text.length != 12) + return; + + if (text.isElementContentWhitespace != false) + return; + + if (whitespacetext.nodeName != "#cdata-section") + return; + + if (whitespacetext.nodeValue != " ") + return; + + if (whitespacetext.nodeType != 4) + return; + + if (whitespacetext.parentNode.nodeName != "item") + return; + + if (whitespacetext.childNodes.length != 0) + return; + + if (whitespacetext.firstChild != null) + return; + + if (whitespacetext.lastChild != null) + return; + + if (whitespacetext.previousSibling != null) + return; + + if (whitespacetext.nextSibling != null) + return; + + if (whitespacetext.attributes != null) + return; + + if (whitespacetext.wholeText != " ") + return; + + if (whitespacetext.data != " ") + return; + + if (whitespacetext.length != 3) + return; + + if (whitespacetext.isElementContentWhitespace != true) + return; + + + xmlTest = true; + } + + function checkXML(document) + { + checkCData(document.documentElement.childNodes[0].childNodes[0], + document.documentElement.childNodes[1].childNodes[0]); + + } + } + + Component.onCompleted: { + var x = new XMLHttpRequest; + + x.open("GET", "cdata.xml"); + + // Test to the end + x.onreadystatechange = function() { + if (x.readyState == XMLHttpRequest.DONE) { + + dataOK = true; + + if (x.responseXML != null) + checkXML(x.responseXML); + + } + } + + x.send() + } +} + + + + + diff --git a/tests/auto/declarative/xmlhttprequest/data/cdata.xml b/tests/auto/declarative/xmlhttprequest/data/cdata.xml new file mode 100644 index 0000000..061d37c --- /dev/null +++ b/tests/auto/declarative/xmlhttprequest/data/cdata.xml @@ -0,0 +1,2 @@ +<root><item><![CDATA[Hello world!]]></item><item><![CDATA[ ]]></item></root> + diff --git a/tests/auto/declarative/xmlhttprequest/data/document.qml b/tests/auto/declarative/xmlhttprequest/data/document.qml index fe78e31..7601a10 100644 --- a/tests/auto/declarative/xmlhttprequest/data/document.qml +++ b/tests/auto/declarative/xmlhttprequest/data/document.qml @@ -10,12 +10,18 @@ Object { if (document.xmlVersion != "1.0") return; + if (document.xmlEncoding != "UTF-8") + return; + if (document.xmlStandalone != true) return; if (document.documentElement == null) return; + if (document.nodeName != "#document") + return; + if (document.nodeValue != null) return; diff --git a/tests/auto/declarative/xmlhttprequest/data/document.xml b/tests/auto/declarative/xmlhttprequest/data/document.xml index b5fbe31..fb693ea 100644 --- a/tests/auto/declarative/xmlhttprequest/data/document.xml +++ b/tests/auto/declarative/xmlhttprequest/data/document.xml @@ -1,3 +1,3 @@ -<?xml version="1.0" standalone='yes' ?> +<?xml version="1.0" encoding="UTF-8" standalone='yes'?> <root> </root> diff --git a/tests/auto/declarative/xmlhttprequest/data/element.qml b/tests/auto/declarative/xmlhttprequest/data/element.qml index a1ae2ab..79620bf 100644 --- a/tests/auto/declarative/xmlhttprequest/data/element.qml +++ b/tests/auto/declarative/xmlhttprequest/data/element.qml @@ -5,7 +5,7 @@ Object { property bool dataOK: false Script { - function checkElement(e) + function checkElement(e, person, fruit) { if (e.tagName != "root") return; @@ -47,6 +47,9 @@ Object { if (e.attributes == null) return; + if (e.attributes.length != 2) + return; + var attr1 = e.attributes["attr"]; if (attr1.nodeValue != "value") return; @@ -67,12 +70,33 @@ Object { if (attrIdx2 != null) return; + // Check person and fruit sub elements + if (person.parentNode.nodeName != "root") + return; + + if (person.previousSibling != null) + return; + + if (person.nextSibling.nodeName != "fruit") + return; + + if (fruit.parentNode.nodeName != "root") + return; + + if (fruit.previousSibling.nodeName != "person") + return; + + if (fruit.nextSibling != null) + return; + xmlTest = true; } function checkXML(document) { - checkElement(document.documentElement); + checkElement(document.documentElement, + document.documentElement.childNodes[0], + document.documentElement.childNodes[1]); } } diff --git a/tests/auto/declarative/xmlhttprequest/data/text.qml b/tests/auto/declarative/xmlhttprequest/data/text.qml new file mode 100644 index 0000000..8c97504 --- /dev/null +++ b/tests/auto/declarative/xmlhttprequest/data/text.qml @@ -0,0 +1,131 @@ +import Qt 4.6 + +Object { + property bool xmlTest: false + property bool dataOK: false + + Script { + function checkText(text, whitespacetext) + { + if (text == null) + return; + + if (text.nodeName != "#text") + return; + + if (text.nodeValue != "Hello world!") + return; + + if (text.nodeType != 3) + return; + + if (text.parentNode.nodeName != "item") + return; + + if (text.childNodes.length != 0) + return; + + if (text.firstChild != null) + return; + + if (text.lastChild != null) + return; + + if (text.previousSibling != null) + return; + + if (text.nextSibling != null) + return; + + if (text.attributes != null) + return; + + if (text.wholeText != "Hello world!") + return; + + if (text.data != "Hello world!") + return; + + if (text.length != 12) + return; + + if (text.isElementContentWhitespace != false) + return; + + if (whitespacetext.nodeName != "#text") + return; + + if (whitespacetext.nodeValue != " ") + return; + + if (whitespacetext.nodeType != 3) + return; + + if (whitespacetext.parentNode.nodeName != "item") + return; + + if (whitespacetext.childNodes.length != 0) + return; + + if (whitespacetext.firstChild != null) + return; + + if (whitespacetext.lastChild != null) + return; + + if (whitespacetext.previousSibling != null) + return; + + if (whitespacetext.nextSibling != null) + return; + + if (whitespacetext.attributes != null) + return; + + if (whitespacetext.wholeText != " ") + return; + + if (whitespacetext.data != " ") + return; + + if (whitespacetext.length != 3) + return; + + if (whitespacetext.isElementContentWhitespace != true) + return; + + xmlTest = true; + } + + function checkXML(document) + { + checkText(document.documentElement.childNodes[0].childNodes[0], + document.documentElement.childNodes[1].childNodes[0]); + + } + } + + Component.onCompleted: { + var x = new XMLHttpRequest; + + x.open("GET", "text.xml"); + + // Test to the end + x.onreadystatechange = function() { + if (x.readyState == XMLHttpRequest.DONE) { + + dataOK = true; + + if (x.responseXML != null) + checkXML(x.responseXML); + + } + } + + x.send() + } +} + + + + diff --git a/tests/auto/declarative/xmlhttprequest/data/text.xml b/tests/auto/declarative/xmlhttprequest/data/text.xml new file mode 100644 index 0000000..e741688 --- /dev/null +++ b/tests/auto/declarative/xmlhttprequest/data/text.xml @@ -0,0 +1 @@ +<root><item>Hello world!</item><item> </item></root> diff --git a/tests/auto/declarative/xmlhttprequest/tst_xmlhttprequest.cpp b/tests/auto/declarative/xmlhttprequest/tst_xmlhttprequest.cpp index 0af7b18..100a11b 100644 --- a/tests/auto/declarative/xmlhttprequest/tst_xmlhttprequest.cpp +++ b/tests/auto/declarative/xmlhttprequest/tst_xmlhttprequest.cpp @@ -84,10 +84,14 @@ private slots: void statusText(); void responseText(); void responseXML_invalid(); + void invalidMethodUsage(); + // Attributes void document(); void element(); void attr(); + void text(); + void cdata(); // Crashes // void outstanding_request_at_shutdown(); @@ -962,6 +966,10 @@ void tst_xmlhttprequest::responseText() } } +void tst_xmlhttprequest::invalidMethodUsage() +{ +} + void tst_xmlhttprequest::responseXML_invalid() { QmlComponent component(&engine, TEST_FILE("responseXML_invalid.qml")); @@ -1017,6 +1025,34 @@ void tst_xmlhttprequest::attr() delete object; } +// Test the Text DOM element +void tst_xmlhttprequest::text() +{ + QmlComponent component(&engine, TEST_FILE("text.qml")); + QObject *object = component.create(); + QVERIFY(object != 0); + + TRY_WAIT(object->property("dataOK").toBool() == true); + + QCOMPARE(object->property("xmlTest").toBool(), true); + + delete object; +} + +// Test the CDataSection DOM element +void tst_xmlhttprequest::cdata() +{ + QmlComponent component(&engine, TEST_FILE("cdata.qml")); + QObject *object = component.create(); + QVERIFY(object != 0); + + TRY_WAIT(object->property("dataOK").toBool() == true); + + QCOMPARE(object->property("xmlTest").toBool(), true); + + delete object; +} + QTEST_MAIN(tst_xmlhttprequest) #include "tst_xmlhttprequest.moc" diff --git a/tests/auto/linguist/lupdate/testdata/good/mergecpp/finddialog.cpp b/tests/auto/linguist/lupdate/testdata/good/mergecpp/finddialog.cpp index 53eba32..5bd7a0a 100644 --- a/tests/auto/linguist/lupdate/testdata/good/mergecpp/finddialog.cpp +++ b/tests/auto/linguist/lupdate/testdata/good/mergecpp/finddialog.cpp @@ -63,5 +63,20 @@ void FindDialog::reset() { tr("%n item(s)", "merge from singular to plural form", 4); tr("%n item(s)", "merge from a finished singular form to an unfinished plural form", 4); -} + + + //% "Hello" + qtTrId("xx_hello"); + + //% "New world" + qtTrId("xx_world"); + + + //= new_id + tr("this is just some text"); + + + //: A message without source string + qtTrId("qtn_virtual"); +} diff --git a/tests/auto/linguist/lupdate/testdata/good/mergecpp/project.ts.before b/tests/auto/linguist/lupdate/testdata/good/mergecpp/project.ts.before index d06252c..379cce4 100644 --- a/tests/auto/linguist/lupdate/testdata/good/mergecpp/project.ts.before +++ b/tests/auto/linguist/lupdate/testdata/good/mergecpp/project.ts.before @@ -1,6 +1,23 @@ <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE TS><TS version="1.1" language="zh_CN"> <context> + <name></name> + <message id="xx_hello"> + <location filename="finddialog.cpp" line="70"/> + <source>Hello</source> + <translation>Hallo</translation> + </message> + <message id="xx_world"> + <location filename="finddialog.cpp" line="73"/> + <source>World</source> + <translation>Welt</translation> + </message> + <message id="qtn_virtual"> + <location filename="finddialog.cpp" line="79"/> + <extracomment>A message without source string</extracomment> + </message> +</context> +<context> <name>FindDialog</name> <message> <source></source> @@ -44,5 +61,10 @@ <numerusform></numerusform> </translation> </message> + <message> + <location filename="finddialog.cpp" line="59"/> + <source>this is just some text</source> + <translation type="unfinished">Unfertige Uebersetzung</translation> + </message> </context> </TS> diff --git a/tests/auto/linguist/lupdate/testdata/good/mergecpp/project.ts.result b/tests/auto/linguist/lupdate/testdata/good/mergecpp/project.ts.result index be4e02e..de43266 100644 --- a/tests/auto/linguist/lupdate/testdata/good/mergecpp/project.ts.result +++ b/tests/auto/linguist/lupdate/testdata/good/mergecpp/project.ts.result @@ -2,6 +2,26 @@ <!DOCTYPE TS> <TS version="2.0" language="zh_CN"> <context> + <name></name> + <message id="xx_hello"> + <location filename="finddialog.cpp" line="70"/> + <source>Hello</source> + <translation>Hallo</translation> + </message> + <message id="xx_world"> + <location filename="finddialog.cpp" line="73"/> + <source>New world</source> + <oldsource>World</oldsource> + <translation type="unfinished">Welt</translation> + </message> + <message id="qtn_virtual"> + <location filename="finddialog.cpp" line="81"/> + <source></source> + <extracomment>A message without source string</extracomment> + <translation></translation> + </message> +</context> +<context> <name>FindDialog</name> <message> <source></source> @@ -45,5 +65,10 @@ <numerusform></numerusform> </translation> </message> + <message id="new_id"> + <location filename="finddialog.cpp" line="77"/> + <source>this is just some text</source> + <translation type="unfinished">Unfertige Uebersetzung</translation> + </message> </context> </TS> diff --git a/tests/auto/linguist/lupdate/testdata/good/mergecpp_noobsolete/finddialog.cpp b/tests/auto/linguist/lupdate/testdata/good/mergecpp_noobsolete/finddialog.cpp index e1464a2..9abb367 100644 --- a/tests/auto/linguist/lupdate/testdata/good/mergecpp_noobsolete/finddialog.cpp +++ b/tests/auto/linguist/lupdate/testdata/good/mergecpp_noobsolete/finddialog.cpp @@ -148,4 +148,7 @@ void FindDialog::doFind(bool forward) bool FindDialog::hasFindExpression() const { // statusMessage(tr( "Should be obsolete" )); + + //% "This is some random text" + qtTrId("keep_id") } diff --git a/tests/auto/linguist/lupdate/testdata/good/mergecpp_noobsolete/project.ts.before b/tests/auto/linguist/lupdate/testdata/good/mergecpp_noobsolete/project.ts.before index 834f512..feab169 100644 --- a/tests/auto/linguist/lupdate/testdata/good/mergecpp_noobsolete/project.ts.before +++ b/tests/auto/linguist/lupdate/testdata/good/mergecpp_noobsolete/project.ts.before @@ -1,6 +1,19 @@ <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE TS><TS version="1.1"> <context> + <name></name> + <message id="keep_id"> + <location filename="finddialog.cpp" line="153"/> + <source>This is some random text</source> + <translation type="unfinished"></translation> + </message> + <message id="obsolete_id"> + <location filename="finddialog.cpp" line="155"/> + <source>Should be obsolete, too</source> + <translation type="unfinished">SHOULD BE OBSOLETE AS WELL</translation> + </message> +</context> +<context> <name>FindDialog</name> <message> <location filename="finddialog.cpp" line="85"/> diff --git a/tests/auto/linguist/lupdate/testdata/good/mergecpp_noobsolete/project.ts.result b/tests/auto/linguist/lupdate/testdata/good/mergecpp_noobsolete/project.ts.result index b328e90..ee3d0f6 100644 --- a/tests/auto/linguist/lupdate/testdata/good/mergecpp_noobsolete/project.ts.result +++ b/tests/auto/linguist/lupdate/testdata/good/mergecpp_noobsolete/project.ts.result @@ -2,6 +2,14 @@ <!DOCTYPE TS> <TS version="2.0"> <context> + <name></name> + <message id="keep_id"> + <location filename="finddialog.cpp" line="153"/> + <source>This is some random text</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> <name>FindDialog</name> <message> <location filename="finddialog.cpp" line="85"/> diff --git a/tests/auto/linguist/lupdate/testdata/good/mergecpp_obsolete/finddialog.cpp b/tests/auto/linguist/lupdate/testdata/good/mergecpp_obsolete/finddialog.cpp index 7b28c75..cc3af48 100644 --- a/tests/auto/linguist/lupdate/testdata/good/mergecpp_obsolete/finddialog.cpp +++ b/tests/auto/linguist/lupdate/testdata/good/mergecpp_obsolete/finddialog.cpp @@ -150,6 +150,9 @@ void FindDialog::doFind(bool forward) bool FindDialog::hasFindExpression() const { + //% "This is some random text" + qtTrId("keep_id") + return !findExpr.isEmpty(); } diff --git a/tests/auto/linguist/lupdate/testdata/good/mergecpp_obsolete/project.ts.before b/tests/auto/linguist/lupdate/testdata/good/mergecpp_obsolete/project.ts.before index 1fa0fd3..2bc6049 100644 --- a/tests/auto/linguist/lupdate/testdata/good/mergecpp_obsolete/project.ts.before +++ b/tests/auto/linguist/lupdate/testdata/good/mergecpp_obsolete/project.ts.before @@ -1,6 +1,19 @@ <?xml version="1.0"?> <!DOCTYPE TS><TS version="1.1"> <context> + <name></name> + <message id="keep_id"> + <location filename="finddialog.cpp" line="154"/> + <source>This is some random text</source> + <translation type="unfinished"></translation> + </message> + <message id="obsolete_id"> + <location filename="finddialog.cpp" line="155"/> + <source>Should be obsolete, too</source> + <translation type="unfinished">SHOULD BE OBSOLETE AS WELL</translation> + </message> +</context> +<context> <name>FindDialog</name> <message> <location filename="finddialog.cpp" line="85"/> diff --git a/tests/auto/linguist/lupdate/testdata/good/mergecpp_obsolete/project.ts.result b/tests/auto/linguist/lupdate/testdata/good/mergecpp_obsolete/project.ts.result index cfd11b1..f442cbc 100644 --- a/tests/auto/linguist/lupdate/testdata/good/mergecpp_obsolete/project.ts.result +++ b/tests/auto/linguist/lupdate/testdata/good/mergecpp_obsolete/project.ts.result @@ -2,6 +2,18 @@ <!DOCTYPE TS> <TS version="2.0"> <context> + <name></name> + <message id="keep_id"> + <location filename="finddialog.cpp" line="154"/> + <source>This is some random text</source> + <translation type="unfinished"></translation> + </message> + <message id="obsolete_id"> + <source>Should be obsolete, too</source> + <translation type="obsolete">SHOULD BE OBSOLETE AS WELL</translation> + </message> +</context> +<context> <name>FindDialog</name> <message> <source>Enter the text you are looking for.</source> diff --git a/tests/auto/linguist/lupdate/testdata/good/parsecpp/main.cpp b/tests/auto/linguist/lupdate/testdata/good/parsecpp/main.cpp index e243e66..386d9b7 100644 --- a/tests/auto/linguist/lupdate/testdata/good/parsecpp/main.cpp +++ b/tests/auto/linguist/lupdate/testdata/good/parsecpp/main.cpp @@ -247,3 +247,8 @@ class YetAnotherTest : QObject { tr("nothing"); } }; + + + +//: This is a message without a source string +QString test = qtTrId("yet_another_id"); diff --git a/tests/auto/linguist/lupdate/testdata/good/parsecpp/project.ts.result b/tests/auto/linguist/lupdate/testdata/good/parsecpp/project.ts.result index 26e5a65..6d50c21 100644 --- a/tests/auto/linguist/lupdate/testdata/good/parsecpp/project.ts.result +++ b/tests/auto/linguist/lupdate/testdata/good/parsecpp/project.ts.result @@ -18,6 +18,12 @@ backslashed \ stuff.</source> </translation> <extra-some>thing</extra-some> </message> + <message id="yet_another_id"> + <location filename="main.cpp" line="254"/> + <source></source> + <extracomment>This is a message without a source string</extracomment> + <translation type="unfinished"></translation> + </message> </context> <context> <name>Dialog2</name> diff --git a/tests/auto/qaudiodeviceinfo/tst_qaudiodeviceinfo.cpp b/tests/auto/qaudiodeviceinfo/tst_qaudiodeviceinfo.cpp index 7b9a422..715f219 100644 --- a/tests/auto/qaudiodeviceinfo/tst_qaudiodeviceinfo.cpp +++ b/tests/auto/qaudiodeviceinfo/tst_qaudiodeviceinfo.cpp @@ -77,7 +77,7 @@ private: void tst_QAudioDeviceInfo::initTestCase() { // Only perform tests if audio output device exists! - QList<QAudioDeviceInfo> devices = QAudioDeviceInfo::deviceList(QAudio::AudioOutput); + QList<QAudioDeviceInfo> devices = QAudioDeviceInfo::availableDevices(QAudio::AudioOutput); if(devices.size() > 0) available = true; else { @@ -90,7 +90,7 @@ void tst_QAudioDeviceInfo::checkAvailableDefaultInput() { // Only perform tests if audio input device exists! bool storeAvailable = available; - QList<QAudioDeviceInfo> devices = QAudioDeviceInfo::deviceList(QAudio::AudioInput); + QList<QAudioDeviceInfo> devices = QAudioDeviceInfo::availableDevices(QAudio::AudioInput); if(devices.size() > 0) available = true; else { @@ -111,7 +111,7 @@ void tst_QAudioDeviceInfo::checkAvailableDefaultOutput() void tst_QAudioDeviceInfo::outputList() { if(available) { - QList<QAudioDeviceInfo> devices = QAudioDeviceInfo::deviceList(QAudio::AudioOutput); + QList<QAudioDeviceInfo> devices = QAudioDeviceInfo::availableDevices(QAudio::AudioOutput); QVERIFY(devices.size() > 0); device = new QAudioDeviceInfo(devices.at(0)); } diff --git a/tests/auto/qaudioformat/tst_qaudioformat.cpp b/tests/auto/qaudioformat/tst_qaudioformat.cpp index 286e63f..0778a8e 100644 --- a/tests/auto/qaudioformat/tst_qaudioformat.cpp +++ b/tests/auto/qaudioformat/tst_qaudioformat.cpp @@ -69,17 +69,20 @@ private slots: void tst_QAudioFormat::checkNull() { - // Default constructed QAudioFormat is null. + // Default constructed QAudioFormat is invalid. QAudioFormat audioFormat0; - QVERIFY(audioFormat0.isNull()); + QVERIFY(!audioFormat0.isValid()); - // Null is transferred + // validity is transferred QAudioFormat audioFormat1(audioFormat0); - QVERIFY(audioFormat1.isNull()); + QVERIFY(!audioFormat1.isValid()); - // Null is voided on activity audioFormat0.setFrequency(44100); - QVERIFY(!audioFormat0.isNull()); + audioFormat0.setChannels(2); + audioFormat0.setSampleSize(16); + audioFormat0.setCodec("audio/pcm"); + audioFormat0.setSampleType(QAudioFormat::SignedInt); + QVERIFY(audioFormat0.isValid()); } void tst_QAudioFormat::checkFrequency() diff --git a/tests/auto/qaudioinput/tst_qaudioinput.cpp b/tests/auto/qaudioinput/tst_qaudioinput.cpp index 3efc346..744ce38 100644 --- a/tests/auto/qaudioinput/tst_qaudioinput.cpp +++ b/tests/auto/qaudioinput/tst_qaudioinput.cpp @@ -76,7 +76,7 @@ void tst_QAudioInput::initTestCase() format.setSampleType(QAudioFormat::UnSignedInt); // Only perform tests if audio input device exists! - QList<QAudioDeviceInfo> devices = QAudioDeviceInfo::deviceList(QAudio::AudioInput); + QList<QAudioDeviceInfo> devices = QAudioDeviceInfo::availableDevices(QAudio::AudioInput); if(devices.size() > 0) available = true; else { @@ -137,16 +137,16 @@ void tst_QAudioInput::pullFile() QSignalSpy stateSignal(audio, SIGNAL(stateChanged(QAudio::State))); // Always have default states, before start - QVERIFY(audio->state() == QAudio::StopState); + QVERIFY(audio->state() == QAudio::StoppedState); QVERIFY(audio->error() == QAudio::NoError); - QVERIFY(audio->clock() == 0); + QVERIFY(audio->elapsedUSecs() == 0); audio->start(&filename); QTest::qWait(20); // Check state and periodSize() are valid non-zero values. QVERIFY(audio->state() == QAudio::ActiveState); QVERIFY(audio->error() == QAudio::NoError); - QVERIFY(audio->clock() > 10000 && audio->clock() < 800000); + QVERIFY(audio->elapsedUSecs() > 10000 && audio->elapsedUSecs() < 800000); QVERIFY(audio->periodSize() > 0); QVERIFY(stateSignal.count() == 1); // State changed to QAudio::ActiveState @@ -154,12 +154,12 @@ void tst_QAudioInput::pullFile() QTest::qWait(5000); QVERIFY(readSignal.count() > 0); - QVERIFY(audio->totalTime() > 0); + QVERIFY(audio->processedUSecs() > 0); audio->stop(); QTest::qWait(20); - QVERIFY(audio->state() == QAudio::StopState); - QVERIFY(audio->clock() == 0); + QVERIFY(audio->state() == QAudio::StoppedState); + QVERIFY(audio->elapsedUSecs() == 0); // Can only check to make sure we got at least 1 more signal, but can be more. QVERIFY(stateSignal.count() > 1); diff --git a/tests/auto/qaudiooutput/tst_qaudiooutput.cpp b/tests/auto/qaudiooutput/tst_qaudiooutput.cpp index b001af1..26694cc 100644 --- a/tests/auto/qaudiooutput/tst_qaudiooutput.cpp +++ b/tests/auto/qaudiooutput/tst_qaudiooutput.cpp @@ -79,7 +79,7 @@ void tst_QAudioOutput::initTestCase() format.setSampleType(QAudioFormat::UnSignedInt); // Only perform tests if audio output device exists! - QList<QAudioDeviceInfo> devices = QAudioDeviceInfo::deviceList(QAudio::AudioOutput); + QList<QAudioDeviceInfo> devices = QAudioDeviceInfo::availableDevices(QAudio::AudioOutput); if(devices.size() > 0) available = true; else { @@ -140,9 +140,9 @@ void tst_QAudioOutput::pullFile() audio->setNotifyInterval(100); // Always have default states, before start - QVERIFY(audio->state() == QAudio::StopState); + QVERIFY(audio->state() == QAudio::StoppedState); QVERIFY(audio->error() == QAudio::NoError); - QVERIFY(audio->clock() == 0); + QVERIFY(audio->elapsedUSecs() == 0); audio->start(&file); QTest::qWait(20); // wait 20ms @@ -150,12 +150,12 @@ void tst_QAudioOutput::pullFile() QVERIFY(audio->state() == QAudio::ActiveState); QVERIFY(audio->error() == QAudio::NoError); QVERIFY(audio->periodSize() > 0); - QVERIFY(audio->clock() > 10000 && audio->clock() < 800000); + QVERIFY(audio->elapsedUSecs() > 10000 && audio->elapsedUSecs() < 800000); QVERIFY(stateSignal.count() == 1); // State changed to QAudio::ActiveState // Wait until finished... QTestEventLoop::instance().enterLoop(1); - QCOMPARE(audio->totalTime(), qint64(692250)); + QCOMPARE(audio->processedUSecs(), qint64(692250)); #ifdef Q_OS_WINCE // 4.wav is a little less than 700ms, so notify should fire 4 times on Wince! @@ -166,8 +166,8 @@ void tst_QAudioOutput::pullFile() #endif audio->stop(); QTest::qWait(20); // wait 20ms - QVERIFY(audio->state() == QAudio::StopState); - QVERIFY(audio->clock() == 0); + QVERIFY(audio->state() == QAudio::StoppedState); + QVERIFY(audio->elapsedUSecs() == 0); // Can only check to make sure we got at least 1 more signal, but can be more. QVERIFY(stateSignal.count() > 1); @@ -184,7 +184,7 @@ void tst_QAudioOutput::pushFile() const qint64 fileSize = file.size(); - QIODevice* feed = audio->start(0); + QIODevice* feed = audio->start(); char* buffer = new char[fileSize]; file.read(buffer, fileSize); @@ -199,7 +199,7 @@ void tst_QAudioOutput::pushFile() QTestEventLoop::instance().enterLoop(1); QVERIFY(written == fileSize); - QVERIFY(audio->totalTime() == 692250); + QVERIFY(audio->processedUSecs() == 692250); audio->stop(); file.close(); diff --git a/tests/auto/qcombobox/tst_qcombobox.cpp b/tests/auto/qcombobox/tst_qcombobox.cpp index 18ebddc..cc59b62 100644 --- a/tests/auto/qcombobox/tst_qcombobox.cpp +++ b/tests/auto/qcombobox/tst_qcombobox.cpp @@ -2517,8 +2517,8 @@ void tst_QComboBox::task_QTBUG_1071_changingFocusEmitsActivated() cb.addItem("1"); cb.addItem("2"); QLineEdit edit; - layout.add(&cb); - layout.add(&edit); + layout.addWidget(&cb); + layout.addWidget(&edit); w.show(); QTest::qWaitForWindowShown(&w); diff --git a/tests/auto/qdatastream/qdatastream.pro b/tests/auto/qdatastream/qdatastream.pro index 5b90357..c132073 100644 --- a/tests/auto/qdatastream/qdatastream.pro +++ b/tests/auto/qdatastream/qdatastream.pro @@ -12,7 +12,7 @@ QT += svg wince*: { - addFiles.sources = datastream.q42 gearflowers.svg + addFiles.sources = datastream.q42 tests2.svg addFiles.path = . DEPLOYMENT += addFiles DEFINES += SRCDIR=\\\"\\\" diff --git a/tests/auto/qdatastream/tst_qdatastream.cpp b/tests/auto/qdatastream/tst_qdatastream.cpp index 56fc53a..24447ea 100644 --- a/tests/auto/qdatastream/tst_qdatastream.cpp +++ b/tests/auto/qdatastream/tst_qdatastream.cpp @@ -320,8 +320,7 @@ void tst_QDataStream::getSetCheck() tst_QDataStream::tst_QDataStream() { - svgFile = QLatin1String(SRCDIR) + QLatin1String("/") + - QLatin1String(SVGFILE); + svgFile = QLatin1String(SRCDIR SVGFILE); } tst_QDataStream::~tst_QDataStream() @@ -1461,7 +1460,7 @@ void tst_QDataStream::readQImage(QDataStream *s) QVERIFY(d12.width() == ref.width()); QVERIFY(d12.height() == ref.height()); QVERIFY(d12.depth() == ref.depth()); - QVERIFY(d12.numColors() == ref.numColors()); + QVERIFY(d12.colorCount() == ref.colorCount()); #ifdef QT3_SUPPORT QVERIFY(d12.hasAlphaBuffer() == ref.hasAlphaBuffer()); #else diff --git a/tests/auto/qfile/largefile/largefile.pro b/tests/auto/qfile/largefile/largefile.pro index 0f96865..d67cb46 100644 --- a/tests/auto/qfile/largefile/largefile.pro +++ b/tests/auto/qfile/largefile/largefile.pro @@ -2,3 +2,5 @@ load(qttest_p4) QT = core SOURCES += tst_largefile.cpp + +wince*: SOURCES += $$QT_SOURCE_TREE/src/corelib/kernel/qfunctions_wince.cpp diff --git a/tests/auto/qfile/largefile/tst_largefile.cpp b/tests/auto/qfile/largefile/tst_largefile.cpp index 9105063..980f4ba 100644 --- a/tests/auto/qfile/largefile/tst_largefile.cpp +++ b/tests/auto/qfile/largefile/tst_largefile.cpp @@ -54,7 +54,10 @@ #ifdef Q_OS_WIN #include <windows.h> + +#ifndef Q_OS_WINCE #include <io.h> +#endif #ifndef FSCTL_SET_SPARSE // MinGW doesn't define this. @@ -295,7 +298,7 @@ void tst_LargeFile::sparseFileData() void tst_LargeFile::createSparseFile() { -#if defined(Q_OS_WIN) +#if defined(Q_OS_WIN32) // On Windows platforms, we must explicitly set the file to be sparse, // so disk space is not allocated for the full file when writing to it. HANDLE handle = ::CreateFileA("qt_largefile.tmp", @@ -313,7 +316,7 @@ void tst_LargeFile::createSparseFile() int fd = ::_open_osfhandle((intptr_t)handle, 0); QVERIFY( -1 != fd ); QVERIFY( largeFile.open(fd, QIODevice::WriteOnly | QIODevice::Unbuffered) ); -#else // !Q_OS_WIN +#else // !Q_OS_WIN32 largeFile.setFileName("qt_largefile.tmp"); QVERIFY( largeFile.open(QIODevice::WriteOnly | QIODevice::Unbuffered) ); #endif @@ -321,13 +324,13 @@ void tst_LargeFile::createSparseFile() void tst_LargeFile::closeSparseFile() { -#if defined(Q_OS_WIN) +#if defined(Q_OS_WIN32) int fd = largeFile.handle(); #endif largeFile.close(); -#if defined(Q_OS_WIN) +#if defined(Q_OS_WIN32) if (-1 != fd) ::_close(fd); #endif diff --git a/tests/auto/qfile/test/test.pro b/tests/auto/qfile/test/test.pro index 46f63b3..faaa927 100644 --- a/tests/auto/qfile/test/test.pro +++ b/tests/auto/qfile/test/test.pro @@ -14,6 +14,7 @@ wince*|symbian { } wince* { + SOURCES += $$QT_SOURCE_TREE/src/corelib/kernel/qfunctions_wince.cpp # needed for QT_OPEN DEFINES += SRCDIR=\\\"\\\" } else:symbian { # do not define SRCDIR at all diff --git a/tests/auto/qfile/tst_qfile.cpp b/tests/auto/qfile/tst_qfile.cpp index 55cc286..b3d6fd9 100644 --- a/tests/auto/qfile/tst_qfile.cpp +++ b/tests/auto/qfile/tst_qfile.cpp @@ -91,6 +91,10 @@ #define STDERR_FILENO 2 #endif +#ifndef QT_OPEN_BINARY +#define QT_OPEN_BINARY 0 +#endif + Q_DECLARE_METATYPE(QFile::FileError) //TESTED_CLASS= @@ -211,6 +215,81 @@ public: // disabled this test for the moment... it hangs void invalidFile_data(); void invalidFile(); + +private: + enum FileType { OpenQFile, OpenFd, OpenStream }; + + bool openFd(QFile &file, QIODevice::OpenMode mode) + { + int fdMode = QT_OPEN_LARGEFILE | QT_OPEN_BINARY; + + // File will be truncated if in Write mode. + if (mode & QIODevice::WriteOnly) + fdMode |= QT_OPEN_WRONLY | QT_OPEN_TRUNC; + if (mode & QIODevice::ReadOnly) + fdMode |= QT_OPEN_RDONLY; + + fd_ = QT_OPEN(qPrintable(file.fileName()), fdMode); + + return (-1 != fd_) && file.open(fd_, mode); + } + + bool openStream(QFile &file, QIODevice::OpenMode mode) + { + char const *streamMode = ""; + + // File will be truncated if in Write mode. + if (mode & QIODevice::WriteOnly) + streamMode = "wb+"; + else if (mode & QIODevice::ReadOnly) + streamMode = "rb"; + + stream_ = QT_FOPEN(qPrintable(file.fileName()), streamMode); + + return stream_ && file.open(stream_, mode); + } + + bool openFile(QFile &file, QIODevice::OpenMode mode, FileType type = OpenQFile) + { + if (mode & QIODevice::WriteOnly && !file.exists()) + { + // Make sure the file exists + QFile createFile(file.fileName()); + if (!createFile.open(QIODevice::ReadWrite)) + return false; + } + + // Note: openFd and openStream will truncate the file if write mode. + switch (type) + { + case OpenQFile: + return file.open(mode); + + case OpenFd: + return openFd(file, mode); + + case OpenStream: + return openStream(file, mode); + } + + return false; + } + + void closeFile(QFile &file) + { + file.close(); + + if (-1 != fd_) + QT_CLOSE(fd_); + if (stream_) + ::fclose(stream_); + + fd_ = -1; + stream_ = 0; + } + + int fd_; + FILE *stream_; }; tst_QFile::tst_QFile() @@ -226,6 +305,8 @@ void tst_QFile::init() { // TODO: Add initialization code here. // This will be executed immediately before each test is run. + fd_ = -1; + stream_ = 0; } void tst_QFile::cleanup() @@ -254,6 +335,11 @@ void tst_QFile::cleanup() QFile::remove("existing-file.txt"); QFile::remove("file-renamed-once.txt"); QFile::remove("file-renamed-twice.txt"); + + if (-1 != fd_) + QT_CLOSE(fd_); + if (stream_) + ::fclose(stream_); } void tst_QFile::initTestCase() @@ -1958,53 +2044,71 @@ void tst_QFile::fullDisk() void tst_QFile::writeLargeDataBlock_data() { QTest::addColumn<QString>("fileName"); + QTest::addColumn<int>("type"); + + QTest::newRow("localfile-QFile") << "./largeblockfile.txt" << (int)OpenQFile; + QTest::newRow("localfile-Fd") << "./largeblockfile.txt" << (int)OpenFd; + QTest::newRow("localfile-Stream") << "./largeblockfile.txt" << (int)OpenStream; - QTest::newRow("localfile") << QString("./largeblockfile.txt"); #if defined(Q_OS_WIN) && !defined(Q_OS_WINCE) // Some semi-randomness to avoid collisions. QTest::newRow("unc file") << QString("//" + QtNetworkSettings::winServerName() + "/TESTSHAREWRITABLE/largefile-%1-%2.txt") .arg(QHostInfo::localHostName()) - .arg(QTime::currentTime().msec()); + .arg(QTime::currentTime().msec()) << (int)OpenQFile; #endif } -void tst_QFile::writeLargeDataBlock() +static QByteArray getLargeDataBlock() { - QFETCH(QString, fileName); + static QByteArray array; - // Generate a 64MB array with well defined contents. - QByteArray array; + if (array.isNull()) + { #if defined(Q_OS_WINCE) || defined(Q_OS_SYMBIAN) - int resizeSize = 1024 * 1024; // WinCE and Symbian do not have much space + int resizeSize = 1024 * 1024; // WinCE and Symbian do not have much space #else - int resizeSize = 64 * 1024 * 1024; + int resizeSize = 64 * 1024 * 1024; #endif - array.resize(resizeSize); - for (int i = 0; i < array.size(); ++i) - array[i] = uchar(i); + array.resize(resizeSize); + for (int i = 0; i < array.size(); ++i) + array[i] = uchar(i); + } - // Remove and open the target file - QFile file(fileName); - file.remove(); - if (file.open(QFile::WriteOnly)) { - QCOMPARE(file.write(array), qint64(array.size())); - file.close(); - QVERIFY(file.open(QFile::ReadOnly)); - array.clear(); - array = file.readAll(); - file.remove(); - } else { - QFAIL(qPrintable(QString("Couldn't open file for writing: [%1]").arg(fileName))); - } - // Check that we got the right content - QCOMPARE(array.size(), resizeSize); - for (int i = 0; i < array.size(); ++i) { - if (array[i] != char(i)) { - QFAIL(qPrintable(QString("Wrong contents! Char at %1 = %2, expected %3") - .arg(i).arg(int(uchar(array[i]))).arg(int(uchar(i))))); - } + return array; +} + +void tst_QFile::writeLargeDataBlock() +{ + QFETCH(QString, fileName); + QFETCH( int, type ); + + QByteArray const originalData = getLargeDataBlock(); + + { + QFile file(fileName); + + QVERIFY2( openFile(file, QIODevice::WriteOnly, (FileType)type), + qPrintable(QString("Couldn't open file for writing: [%1]").arg(fileName)) ); + QCOMPARE( file.write(originalData), (qint64)originalData.size() ); + QVERIFY( file.flush() ); + + closeFile(file); + } + + QByteArray readData; + + { + QFile file(fileName); + + QVERIFY2( openFile(file, QIODevice::ReadOnly, (FileType)type), + qPrintable(QString("Couldn't open file for reading: [%1]").arg(fileName)) ); + readData = file.readAll(); + closeFile(file); } + + QCOMPARE( readData, originalData ); + QVERIFY( QFile::remove(fileName) ); } void tst_QFile::readFromWriteOnlyFile() diff --git a/tests/auto/qgraphicseffect/tst_qgraphicseffect.cpp b/tests/auto/qgraphicseffect/tst_qgraphicseffect.cpp index b40cf43..d216924 100644 --- a/tests/auto/qgraphicseffect/tst_qgraphicseffect.cpp +++ b/tests/auto/qgraphicseffect/tst_qgraphicseffect.cpp @@ -49,6 +49,7 @@ #include <QtGui/qstyleoption.h> #include "../../shared/util.h" +#include <private/qgraphicseffect_p.h> //TESTED_CLASS= //TESTED_FILES= @@ -131,16 +132,16 @@ public: int margin() const { return m_margin; } - void draw(QPainter *painter, QGraphicsEffectSource *source) + void draw(QPainter *painter) { ++numRepaints; if (doNothingInDraw) return; - m_source = source; + m_source = source(); m_painter = painter; - m_styleOption = source->styleOption(); + m_styleOption = source()->styleOption(); m_opacity = painter->opacity(); - source->draw(painter); + drawSource(painter); } void sourceChanged(QGraphicsEffect::ChangeFlags flags) diff --git a/tests/auto/qgraphicseffectsource/tst_qgraphicseffectsource.cpp b/tests/auto/qgraphicseffectsource/tst_qgraphicseffectsource.cpp index 55294d5..9991ab4 100644 --- a/tests/auto/qgraphicseffectsource/tst_qgraphicseffectsource.cpp +++ b/tests/auto/qgraphicseffectsource/tst_qgraphicseffectsource.cpp @@ -46,6 +46,8 @@ #include <QtGui/qgraphicsitem.h> #include <QtGui/qstyleoption.h> +#include <private/qgraphicseffect_p.h> + //TESTED_CLASS= //TESTED_FILES= @@ -54,13 +56,12 @@ class CustomItem : public QGraphicsRectItem public: CustomItem(qreal x, qreal y, qreal width, qreal height) : QGraphicsRectItem(x, y, width, height), numRepaints(0), - m_painter(0), m_styleOption(0) + m_painter(0) {} void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) { m_painter = painter; - m_styleOption = option; ++numRepaints; QGraphicsRectItem::paint(painter, option, widget); } @@ -69,12 +70,10 @@ public: { numRepaints = 0; m_painter = 0; - m_styleOption = 0; } int numRepaints; QPainter *m_painter; - const QStyleOption *m_styleOption; }; class CustomEffect : public QGraphicsEffect @@ -84,7 +83,7 @@ public: : QGraphicsEffect(), numRepaints(0), m_margin(10), m_sourceChanged(false), m_sourceBoundingRectChanged(false), doNothingInDraw(false), storeDeviceDependentStuff(false), - m_painter(0), m_styleOption(0), m_source(0) + m_painter(0), m_source(0) {} QRectF boundingRectFor(const QRectF &rect) const @@ -96,7 +95,6 @@ public: m_sourceChanged = false; m_sourceBoundingRectChanged = false; m_painter = 0; - m_styleOption = 0; m_source = 0; deviceCoordinatesPixmap = QPixmap(); deviceRect = QRect(); @@ -112,20 +110,19 @@ public: int margin() const { return m_margin; } - void draw(QPainter *painter, QGraphicsEffectSource *source) + void draw(QPainter *painter) { ++numRepaints; if (storeDeviceDependentStuff) { - deviceCoordinatesPixmap = source->pixmap(Qt::DeviceCoordinates); - deviceRect = source->deviceRect(); - sourceDeviceBoundingRect = source->boundingRect(Qt::DeviceCoordinates); + deviceCoordinatesPixmap = source()->pixmap(Qt::DeviceCoordinates); + deviceRect = QRect(0, 0, painter->device()->width(), painter->device()->height()); + sourceDeviceBoundingRect = source()->boundingRect(Qt::DeviceCoordinates); } if (doNothingInDraw) return; - m_source = source; + m_source = source(); m_painter = painter; - m_styleOption = source->styleOption(); - source->draw(painter); + source()->draw(painter); } void sourceChanged() @@ -141,7 +138,6 @@ public: bool doNothingInDraw; bool storeDeviceDependentStuff; QPainter *m_painter; - const QStyleOption *m_styleOption; QGraphicsEffectSource *m_source; QPixmap deviceCoordinatesPixmap; QRect deviceRect; @@ -227,8 +223,6 @@ void tst_QGraphicsEffectSource::styleOption() QTest::qWait(50); QCOMPARE(item->numRepaints, 1); QCOMPARE(effect->numRepaints, 1); - QVERIFY(effect->m_styleOption); - QCOMPARE(effect->m_styleOption, item->m_styleOption); } void tst_QGraphicsEffectSource::isPixmap() @@ -291,10 +285,6 @@ void tst_QGraphicsEffectSource::boundingRect() void tst_QGraphicsEffectSource::deviceRect() { - QTest::ignoreMessage(QtWarningMsg, "QGraphicsEffectSource::deviceRect: Not yet implemented, lacking device context"); - QCOMPARE(effect->source()->deviceRect(), QRect()); - - // We can at least check that the rect was correct in QGraphicsEffect::draw. effect->storeDeviceDependentStuff = true; effect->source()->update(); QTest::qWait(50); @@ -332,13 +322,13 @@ public: return src.adjusted(-10, -10, 10, 10); } - void draw(QPainter *, QGraphicsEffectSource *source) { - pix = source->pixmap(coordinateMode, &offset, padMode); + void draw(QPainter *) { + pix = source()->pixmap(coordinateMode, &offset, padMode); } QPixmap pix; QPoint offset; - QGraphicsEffectSource::PixmapPadMode padMode; + QGraphicsEffect::PixmapPadMode padMode; Qt::CoordinateSystem coordinateMode; }; @@ -351,32 +341,32 @@ void tst_QGraphicsEffectSource::pixmapPadding_data() QTest::addColumn<uint>("ulPixel"); QTest::newRow("log,nopad") << int(Qt::LogicalCoordinates) - << int(QGraphicsEffectSource::NoExpandPadMode) + << int(QGraphicsEffect::NoPad) << QSize(10, 10) << QPoint(0, 0) << 0xffff0000u; QTest::newRow("log,transparent") << int(Qt::LogicalCoordinates) - << int(QGraphicsEffectSource::ExpandToTransparentBorderPadMode) + << int(QGraphicsEffect::PadToTransparentBorder) << QSize(14, 14) << QPoint(-2, -2) << 0x00000000u; QTest::newRow("log,effectrect") << int(Qt::LogicalCoordinates) - << int(QGraphicsEffectSource::ExpandToEffectRectPadMode) + << int(QGraphicsEffect::PadToEffectiveBoundingRect) << QSize(30, 30) << QPoint(-10, -10) << 0x00000000u; QTest::newRow("dev,nopad") << int(Qt::DeviceCoordinates) - << int(QGraphicsEffectSource::NoExpandPadMode) + << int(QGraphicsEffect::NoPad) << QSize(20, 20) << QPoint(40, 40) << 0xffff0000u; QTest::newRow("dev,transparent") << int(Qt::DeviceCoordinates) - << int(QGraphicsEffectSource::ExpandToTransparentBorderPadMode) + << int(QGraphicsEffect::PadToTransparentBorder) << QSize(24, 24) << QPoint(38, 38) << 0x00000000u; QTest::newRow("dev,effectrect") << int(Qt::DeviceCoordinates) - << int(QGraphicsEffectSource::ExpandToEffectRectPadMode) + << int(QGraphicsEffect::PadToEffectiveBoundingRect) << QSize(40, 40) << QPoint(30, 30) << 0x00000000u; @@ -404,7 +394,7 @@ void tst_QGraphicsEffectSource::pixmapPadding() QFETCH(QSize, size); QFETCH(uint, ulPixel); - effect->padMode = (QGraphicsEffectSource::PixmapPadMode) padMode; + effect->padMode = (QGraphicsEffect::PixmapPadMode) padMode; effect->coordinateMode = (Qt::CoordinateSystem) coordinateMode; scene->render(&dummyPainter, scene->itemsBoundingRect(), scene->itemsBoundingRect()); diff --git a/tests/auto/qimage/tst_qimage.cpp b/tests/auto/qimage/tst_qimage.cpp index e15ae8a..da4e85d 100644 --- a/tests/auto/qimage/tst_qimage.cpp +++ b/tests/auto/qimage/tst_qimage.cpp @@ -104,7 +104,7 @@ private slots: void setPixel_data(); void setPixel(); - void setNumColors(); + void setColorCount(); void setColor(); void rasterClipping(); @@ -155,7 +155,7 @@ void tst_QImage::create() #endif //QImage image(7000000, 7000000, 8, 256, QImage::IgnoreEndian); QImage image(7000000, 7000000, QImage::Format_Indexed8); - image.setNumColors(256); + image.setColorCount(256); cr = !image.isNull(); #if !defined(Q_WS_QWS) && !defined(Q_OS_WINCE) } catch (...) { @@ -242,7 +242,7 @@ void tst_QImage::convertBitOrder() QSKIP("Qt compiled without Qt3Support", SkipAll); #else QImage i(9,5,1,2,QImage::LittleEndian); - qMemSet(i.bits(), 0, i.numBytes()); + qMemSet(i.bits(), 0, i.byteCount()); i.setDotsPerMeterX(9); i.setDotsPerMeterY(5); @@ -258,7 +258,7 @@ void tst_QImage::convertBitOrder() QVERIFY(i.dotsPerMeterY() == ni.dotsPerMeterY()); QVERIFY(i.depth() == ni.depth()); QVERIFY(i.size() == ni.size()); - QVERIFY(i.numColors() == ni.numColors()); + QVERIFY(i.colorCount() == ni.colorCount()); #endif } @@ -365,7 +365,7 @@ void tst_QImage::setAlphaChannel() QImage alphaChannel; if (gray) { alphaChannel = QImage(width, height, QImage::Format_Indexed8); - alphaChannel.setNumColors(256); + alphaChannel.setColorCount(256); for (int i=0; i<256; ++i) alphaChannel.setColor(i, qRgb(i, i, i)); alphaChannel.fill(alpha); @@ -927,7 +927,7 @@ void tst_QImage::rotate() original.fill(qRgb(255,255,255)); if (format == QImage::Format_Indexed8) { - original.setNumColors(256); + original.setColorCount(256); for (int i = 0; i < 255; ++i) original.setColor(i, qRgb(0, i, i)); } @@ -1196,23 +1196,23 @@ void tst_QImage::convertToFormatPreserveText() } #endif // QT_NO_IMAGE_TEXT -void tst_QImage::setNumColors() +void tst_QImage::setColorCount() { QImage img(0, 0, QImage::Format_Indexed8); - QTest::ignoreMessage(QtWarningMsg, "QImage::setNumColors: null image"); - img.setNumColors(256); - QCOMPARE(img.numColors(), 0); + QTest::ignoreMessage(QtWarningMsg, "QImage::setColorCount: null image"); + img.setColorCount(256); + QCOMPARE(img.colorCount(), 0); } void tst_QImage::setColor() { QImage img(0, 0, QImage::Format_Indexed8); img.setColor(0, qRgba(18, 219, 108, 128)); - QCOMPARE(img.numColors(), 0); + QCOMPARE(img.colorCount(), 0); QImage img2(1, 1, QImage::Format_Indexed8); img2.setColor(0, qRgba(18, 219, 108, 128)); - QCOMPARE(img2.numColors(), 1); + QCOMPARE(img2.colorCount(), 1); } /* Just some sanity checking that we don't draw outside the buffer of diff --git a/tests/auto/qimagewriter/tst_qimagewriter.cpp b/tests/auto/qimagewriter/tst_qimagewriter.cpp index 584a060..ab5572d 100644 --- a/tests/auto/qimagewriter/tst_qimagewriter.cpp +++ b/tests/auto/qimagewriter/tst_qimagewriter.cpp @@ -546,7 +546,7 @@ void tst_QImageWriter::saveWithNoFormat() QFETCH(QImageWriter::ImageWriterError, error); QImage niceImage(64, 64, QImage::Format_ARGB32); - qMemSet(niceImage.bits(), 0, niceImage.numBytes()); + qMemSet(niceImage.bits(), 0, niceImage.byteCount()); QImageWriter writer(fileName /* , 0 - no format! */); if (error != 0) { diff --git a/tests/auto/qitemdelegate/tst_qitemdelegate.cpp b/tests/auto/qitemdelegate/tst_qitemdelegate.cpp index 426887d..a2770d4 100644 --- a/tests/auto/qitemdelegate/tst_qitemdelegate.cpp +++ b/tests/auto/qitemdelegate/tst_qitemdelegate.cpp @@ -877,7 +877,7 @@ void tst_QItemDelegate::decoration() } case QVariant::Image: { QImage img(size, QImage::Format_Mono); - qMemSet(img.bits(), 0, img.numBytes()); + qMemSet(img.bits(), 0, img.byteCount()); value = img; break; } diff --git a/tests/auto/qlcdnumber/tst_qlcdnumber.cpp b/tests/auto/qlcdnumber/tst_qlcdnumber.cpp index c18ce24..3f52c70 100644 --- a/tests/auto/qlcdnumber/tst_qlcdnumber.cpp +++ b/tests/auto/qlcdnumber/tst_qlcdnumber.cpp @@ -74,14 +74,14 @@ tst_QLCDNumber::~tst_QLCDNumber() void tst_QLCDNumber::getSetCheck() { QLCDNumber obj1; - // int QLCDNumber::numDigits() - // void QLCDNumber::setNumDigits(int) - obj1.setNumDigits(0); - QCOMPARE(0, obj1.numDigits()); - obj1.setNumDigits(INT_MIN); - QCOMPARE(0, obj1.numDigits()); // Range<0, 99> - obj1.setNumDigits(INT_MAX); - QCOMPARE(99, obj1.numDigits()); // Range<0, 99> + // int QLCDNumber::digitCount() + // void QLCDNumber::setDigitCount(int) + obj1.setDigitCount(0); + QCOMPARE(0, obj1.digitCount()); + obj1.setDigitCount(INT_MIN); + QCOMPARE(0, obj1.digitCount()); // Range<0, 99> + obj1.setDigitCount(INT_MAX); + QCOMPARE(99, obj1.digitCount()); // Range<0, 99> } QTEST_MAIN(tst_QLCDNumber) diff --git a/tests/auto/qlistwidget/tst_qlistwidget.cpp b/tests/auto/qlistwidget/tst_qlistwidget.cpp index 5c6ed54..cb8f1e9 100644 --- a/tests/auto/qlistwidget/tst_qlistwidget.cpp +++ b/tests/auto/qlistwidget/tst_qlistwidget.cpp @@ -879,7 +879,7 @@ void tst_QListWidget::moveItemsPriv() for (int r = 0; r < rowCount; ++r) new QListWidgetItem(QString::number(r), testWidget); - QListModel *model = dynamic_cast<QListModel *>(testWidget->model()); + QListModel *model = qobject_cast<QListModel *>(testWidget->model()); QVERIFY(model); QSignalSpy beginMoveSpy(model, SIGNAL(rowsAboutToBeMoved(QModelIndex,int,int,QModelIndex,int))); QSignalSpy movedSpy(model, SIGNAL(rowsMoved(QModelIndex,int,int,QModelIndex,int))); diff --git a/tests/auto/qlocalsocket/tst_qlocalsocket.cpp b/tests/auto/qlocalsocket/tst_qlocalsocket.cpp index ab7b0ac..5ead049 100644 --- a/tests/auto/qlocalsocket/tst_qlocalsocket.cpp +++ b/tests/auto/qlocalsocket/tst_qlocalsocket.cpp @@ -587,14 +587,16 @@ void tst_QLocalSocket::readBufferOverflow() char buffer[dataBufferSize]; memset(buffer, 0, dataBufferSize); serverSocket->write(buffer, dataBufferSize); - serverSocket->flush(); + serverSocket->waitForBytesWritten(); + // wait until the first 128 bytes are ready to read QVERIFY(client.waitForReadyRead()); QCOMPARE(client.read(buffer, readBufferSize), qint64(readBufferSize)); -#if defined(QT_LOCALSOCKET_TCP) || defined(Q_OS_SYMBIAN) - QTest::qWait(250); -#endif + // wait until the second 128 bytes are ready to read + QVERIFY(client.waitForReadyRead()); QCOMPARE(client.read(buffer, readBufferSize), qint64(readBufferSize)); + // no more bytes available + QVERIFY(client.bytesAvailable() == 0); } // QLocalSocket/Server can take a name or path, check that it works as expected diff --git a/tests/auto/qnetworkcookie/tst_qnetworkcookie.cpp b/tests/auto/qnetworkcookie/tst_qnetworkcookie.cpp index 3c4ddd4..94857d7 100644 --- a/tests/auto/qnetworkcookie/tst_qnetworkcookie.cpp +++ b/tests/auto/qnetworkcookie/tst_qnetworkcookie.cpp @@ -234,7 +234,7 @@ void tst_QNetworkCookie::parseSingleCookie_data() QTest::newRow("path-with-utf8-2") << "a=b;path=/R%C3%A9sum%C3%A9" << cookie; cookie.setPath(QString()); - cookie.setDomain(".qt.nokia.com"); + cookie.setDomain("qt.nokia.com"); QTest::newRow("plain-domain1") << "a=b;domain=qt.nokia.com" << cookie; QTest::newRow("plain-domain2") << "a=b; domain=qt.nokia.com " << cookie; QTest::newRow("plain-domain3") << "a=b;domain=QT.NOKIA.COM" << cookie; @@ -247,32 +247,25 @@ void tst_QNetworkCookie::parseSingleCookie_data() QTest::newRow("dot-domain4") << "a=b; Domain = .QT.NOKIA.COM" << cookie; cookie.setDomain(QString::fromUtf8(".d\303\270gn\303\245pent.troll.no")); - QTest::newRow("idn-domain1") << "a=b;domain=xn--dgnpent-gxa2o.troll.no" << cookie; - QTest::newRow("idn-domain2") << "a=b;domain=d\303\270gn\303\245pent.troll.no" << cookie; - QTest::newRow("idn-domain3") << "a=b;domain=XN--DGNPENT-GXA2O.TROLL.NO" << cookie; - QTest::newRow("idn-domain4") << "a=b;domain=D\303\230GN\303\205PENT.troll.NO" << cookie; - QTest::newRow("idn-domain5") << "a=b;domain = D\303\230GN\303\205PENT.troll.NO" << cookie; - - cookie.setDomain(QString::fromUtf8(".d\303\270gn\303\245pent.troll.no")); - QTest::newRow("dot-idn-domain1") << "a=b;domain=.xn--dgnpent-gxa2o.troll.no" << cookie; - QTest::newRow("dot-idn-domain2") << "a=b;domain=.d\303\270gn\303\245pent.troll.no" << cookie; - QTest::newRow("dot-idn-domain3") << "a=b;domain=.XN--DGNPENT-GXA2O.TROLL.NO" << cookie; - QTest::newRow("dot-idn-domain4") << "a=b;domain=.D\303\230GN\303\205PENT.troll.NO" << cookie; + QTest::newRow("idn-domain1") << "a=b;domain=.xn--dgnpent-gxa2o.troll.no" << cookie; + QTest::newRow("idn-domain2") << "a=b;domain=.d\303\270gn\303\245pent.troll.no" << cookie; + QTest::newRow("idn-domain3") << "a=b;domain=.XN--DGNPENT-GXA2O.TROLL.NO" << cookie; + QTest::newRow("idn-domain4") << "a=b;domain=.D\303\230GN\303\205PENT.troll.NO" << cookie; cookie.setDomain(".qt.nokia.com"); cookie.setPath("/"); - QTest::newRow("two-fields") << "a=b;domain=qt.nokia.com;path=/" << cookie; - QTest::newRow("two-fields2") << "a=b; domain=qt.nokia.com; path=/" << cookie; - QTest::newRow("two-fields3") << "a=b; domain=qt.nokia.com ; path=/ " << cookie; - QTest::newRow("two-fields4") << "a=b;path=/; domain=qt.nokia.com" << cookie; - QTest::newRow("two-fields5") << "a=b; path=/ ; domain=qt.nokia.com" << cookie; - QTest::newRow("two-fields6") << "a=b; path= / ; domain =qt.nokia.com" << cookie; + QTest::newRow("two-fields") << "a=b;domain=.qt.nokia.com;path=/" << cookie; + QTest::newRow("two-fields2") << "a=b; domain=.qt.nokia.com; path=/" << cookie; + QTest::newRow("two-fields3") << "a=b; domain=.qt.nokia.com ; path=/ " << cookie; + QTest::newRow("two-fields4") << "a=b;path=/; domain=.qt.nokia.com" << cookie; + QTest::newRow("two-fields5") << "a=b; path=/ ; domain=.qt.nokia.com" << cookie; + QTest::newRow("two-fields6") << "a=b; path= / ; domain =.qt.nokia.com" << cookie; cookie.setSecure(true); - QTest::newRow("three-fields") << "a=b;domain=qt.nokia.com;path=/;secure" << cookie; - QTest::newRow("three-fields2") << "a=b;secure;path=/;domain=qt.nokia.com" << cookie; - QTest::newRow("three-fields3") << "a=b;secure;domain=qt.nokia.com; path=/" << cookie; - QTest::newRow("three-fields4") << "a = b;secure;domain=qt.nokia.com; path=/" << cookie; + QTest::newRow("three-fields") << "a=b;domain=.qt.nokia.com;path=/;secure" << cookie; + QTest::newRow("three-fields2") << "a=b;secure;path=/;domain=.qt.nokia.com" << cookie; + QTest::newRow("three-fields3") << "a=b;secure;domain=.qt.nokia.com; path=/" << cookie; + QTest::newRow("three-fields4") << "a = b;secure;domain=.qt.nokia.com; path=/" << cookie; cookie = QNetworkCookie(); cookie.setName("a"); @@ -664,7 +657,7 @@ void tst_QNetworkCookie::parseMultipleCookies_data() cookie.setName("baz"); cookie.setDomain(".qt.nokia.com"); list.prepend(cookie); - QTest::newRow("complex-2") << "baz=bar; path=/; domain=qt.nokia.com, c=d,a=,foo=bar; path=/" << list; + QTest::newRow("complex-2") << "baz=bar; path=/; domain=.qt.nokia.com, c=d,a=,foo=bar; path=/" << list; // cookies obtained from the network: cookie = QNetworkCookie("id", "51706646077999719"); diff --git a/tests/auto/qnetworkcookiejar/tst_qnetworkcookiejar.cpp b/tests/auto/qnetworkcookiejar/tst_qnetworkcookiejar.cpp index 9b9c56a..ff7e78e 100644 --- a/tests/auto/qnetworkcookiejar/tst_qnetworkcookiejar.cpp +++ b/tests/auto/qnetworkcookiejar/tst_qnetworkcookiejar.cpp @@ -120,7 +120,7 @@ void tst_QNetworkCookieJar::setCookiesFromUrl_data() cookie.setName("a"); cookie.setPath("/"); - cookie.setDomain("www.foo.tld"); + cookie.setDomain(".foo.tld"); result += cookie; QTest::newRow("just-add") << preset << cookie << "http://www.foo.tld" << result << true; @@ -148,6 +148,20 @@ void tst_QNetworkCookieJar::setCookiesFromUrl_data() cookie.setPath("/"); QTest::newRow("diff-path-order") << preset << cookie << "http://www.foo.tld" << result << true; + preset.clear(); + result.clear(); + QNetworkCookie finalCookie = cookie; + cookie.setDomain("foo.tld"); + finalCookie.setDomain(".foo.tld"); + result += finalCookie; + QTest::newRow("should-add-dot-prefix") << preset << cookie << "http://www.foo.tld" << result << true; + + result.clear(); + cookie.setDomain(""); + finalCookie.setDomain("www.foo.tld"); + result += finalCookie; + QTest::newRow("should-set-default-domain") << preset << cookie << "http://www.foo.tld" << result << true; + // security test: result.clear(); preset.clear(); @@ -159,7 +173,7 @@ void tst_QNetworkCookieJar::setCookiesFromUrl_data() QTest::newRow("security-path-1") << preset << cookie << "http://www.foo.tld" << result << false; // setting the defaults: - QNetworkCookie finalCookie = cookie; + finalCookie = cookie; finalCookie.setPath("/something/"); cookie.setPath(""); cookie.setDomain(""); diff --git a/tests/auto/qnetworkreply/tst_qnetworkreply.cpp b/tests/auto/qnetworkreply/tst_qnetworkreply.cpp index 7adb67f..0b61dcd 100644 --- a/tests/auto/qnetworkreply/tst_qnetworkreply.cpp +++ b/tests/auto/qnetworkreply/tst_qnetworkreply.cpp @@ -227,12 +227,6 @@ private Q_SLOTS: void rateControl_data(); void rateControl(); - void downloadPerformance(); - void uploadPerformance(); - void performanceControlRate(); - void httpUploadPerformance(); - void httpDownloadPerformance_data(); - void httpDownloadPerformance(); void downloadProgress_data(); void downloadProgress(); @@ -413,93 +407,6 @@ public slots: } }; -class FixedSizeDataGenerator : public QIODevice -{ - Q_OBJECT - enum { Idle, Started, Stopped } state; -public: - FixedSizeDataGenerator(qint64 size) : state(Idle) - { open(ReadOnly | Unbuffered); - toBeGeneratedTotalCount = toBeGeneratedCount = size; - } - - virtual qint64 bytesAvailable() const - { - return state == Started ? toBeGeneratedCount + QIODevice::bytesAvailable() : 0; - } - - virtual bool isSequential() const{ - return false; - } - - virtual bool reset() const{ - return false; - } - - qint64 size() const { - return toBeGeneratedTotalCount; - } - -public slots: - void start() { state = Started; emit readyRead(); } - -protected: - virtual qint64 readData(char *data, qint64 maxlen) - { - memset(data, '@', maxlen); - - if (toBeGeneratedCount <= 0) { - return -1; - } - - qint64 n = qMin(maxlen, toBeGeneratedCount); - toBeGeneratedCount -= n; - - if (toBeGeneratedCount <= 0) { - // make sure this is a queued connection! - emit readChannelFinished(); - } - - return n; - } - virtual qint64 writeData(const char *, qint64) - { return -1; } - - qint64 toBeGeneratedCount; - qint64 toBeGeneratedTotalCount; -}; - - -class DataGenerator: public QIODevice -{ - Q_OBJECT - enum { Idle, Started, Stopped } state; -public: - DataGenerator() : state(Idle) - { open(ReadOnly); } - - virtual bool isSequential() const { return true; } - virtual qint64 bytesAvailable() const { return state == Started ? 1024*1024 : 0; } - -public slots: - void start() { state = Started; emit readyRead(); } - void stop() { state = Stopped; emit readyRead(); } - -protected: - virtual qint64 readData(char *data, qint64 maxlen) - { - if (state == Stopped) - return -1; // EOF - - // return as many bytes as are wanted - memset(data, '@', maxlen); - return maxlen; - } - virtual qint64 writeData(const char *, qint64) - { return -1; } -}; - - class SocketPair: public QObject { @@ -692,255 +599,6 @@ protected: } }; -class TimedSender: public QThread -{ - Q_OBJECT - qint64 totalBytes; - QSemaphore ready; - QByteArray dataToSend; - QTcpSocket *client; - int timeout; - int port; -public: - int transferRate; - TimedSender(int ms) - : totalBytes(0), timeout(ms), port(-1), transferRate(-1) - { - dataToSend = QByteArray(16*1024, '@'); - start(); - ready.acquire(); - } - - inline int serverPort() const { return port; } - -private slots: - void writeMore() - { - while (client->bytesToWrite() < 128 * 1024) { - writePacket(dataToSend); - } - } - -protected: - void run() - { - QTcpServer server; - server.listen(); - port = server.serverPort(); - ready.release(); - - server.waitForNewConnection(-1); - client = server.nextPendingConnection(); - - writeMore(); - connect(client, SIGNAL(bytesWritten(qint64)), SLOT(writeMore()), Qt::DirectConnection); - - QEventLoop eventLoop; - QTimer::singleShot(timeout, &eventLoop, SLOT(quit())); - - QTime timer; - timer.start(); - eventLoop.exec(); - disconnect(client, SIGNAL(bytesWritten(qint64)), this, 0); - - // wait for the connection to shut down - client->disconnectFromHost(); - if (!client->waitForDisconnected(10000)) - return; - - transferRate = totalBytes * 1000 / timer.elapsed(); - qDebug() << "TimedSender::run" << "receive rate:" << (transferRate / 1024) << "kB/s in" - << timer.elapsed() << "ms"; - } - - void writePacket(const QByteArray &array) - { - client->write(array); - totalBytes += array.size(); - } -}; - -class ThreadedDataReader: public QThread -{ - Q_OBJECT - // used to make the constructor only return after the tcp server started listening - QSemaphore ready; - QTcpSocket *client; - int timeout; - int port; -public: - qint64 transferRate; - ThreadedDataReader() - : port(-1), transferRate(-1) - { - start(); - ready.acquire(); - } - - inline int serverPort() const { return port; } - -protected: - void run() - { - QTcpServer server; - server.listen(); - port = server.serverPort(); - ready.release(); - - server.waitForNewConnection(-1); - client = server.nextPendingConnection(); - - QEventLoop eventLoop; - DataReader reader(client, false); - QObject::connect(client, SIGNAL(disconnected()), &eventLoop, SLOT(quit())); - - QTime timer; - timer.start(); - eventLoop.exec(); - qint64 elapsed = timer.elapsed(); - - transferRate = reader.totalBytes * 1000 / elapsed; - qDebug() << "ThreadedDataReader::run" << "send rate:" << (transferRate / 1024) << "kB/s in" << elapsed << "msec"; - } -}; - -class ThreadedDataReaderHttpServer: public QThread -{ - Q_OBJECT - // used to make the constructor only return after the tcp server started listening - QSemaphore ready; - QTcpSocket *client; - int timeout; - int port; -public: - qint64 transferRate; - ThreadedDataReaderHttpServer() - : port(-1), transferRate(-1) - { - start(); - ready.acquire(); - } - - inline int serverPort() const { return port; } - -protected: - void run() - { - QTcpServer server; - server.listen(); - port = server.serverPort(); - ready.release(); - - server.waitForNewConnection(-1); - client = server.nextPendingConnection(); - client->write("HTTP/1.0 200 OK\r\n"); - client->write("Content-length: 0\r\n"); - client->write("\r\n"); - client->flush(); - - QCoreApplication::processEvents(); - - QEventLoop eventLoop; - DataReader reader(client, false); - QObject::connect(client, SIGNAL(disconnected()), &eventLoop, SLOT(quit())); - - QTime timer; - timer.start(); - eventLoop.exec(); - qint64 elapsed = timer.elapsed(); - - transferRate = reader.totalBytes * 1000 / elapsed; - qDebug() << "ThreadedDataReaderHttpServer::run" << "send rate:" << (transferRate / 1024) << "kB/s in" << elapsed << "msec"; - } -}; - -class HttpDownloadPerformanceClient : QObject { - Q_OBJECT; - QIODevice *device; - public: - HttpDownloadPerformanceClient (QIODevice *dev) : device(dev){ - connect(dev, SIGNAL(readyRead()), this, SLOT(readyReadSlot())); - } - - public slots: - void readyReadSlot() { - device->readAll(); - } - -}; - -class HttpDownloadPerformanceServer : QObject { - Q_OBJECT; - qint64 dataSize; - qint64 dataSent; - QTcpServer server; - QTcpSocket *client; - bool serverSendsContentLength; - bool chunkedEncoding; - -public: - HttpDownloadPerformanceServer (qint64 ds, bool sscl, bool ce) : dataSize(ds), dataSent(0), - client(0), serverSendsContentLength(sscl), chunkedEncoding(ce) { - server.listen(); - connect(&server, SIGNAL(newConnection()), this, SLOT(newConnectionSlot())); - } - - int serverPort() { - return server.serverPort(); - } - -public slots: - - void newConnectionSlot() { - client = server.nextPendingConnection(); - client->setParent(this); - connect(client, SIGNAL(readyRead()), this, SLOT(readyReadSlot())); - connect(client, SIGNAL(bytesWritten(qint64)), this, SLOT(bytesWrittenSlot(qint64))); - } - - void readyReadSlot() { - client->readAll(); - client->write("HTTP/1.0 200 OK\n"); - if (serverSendsContentLength) - client->write(QString("Content-Length: " + QString::number(dataSize) + "\n").toAscii()); - if (chunkedEncoding) - client->write(QString("Transfer-Encoding: chunked\n").toAscii()); - client->write("Connection: close\n\n"); - } - - void bytesWrittenSlot(qint64 amount) { - Q_UNUSED(amount); - if (dataSent == dataSize && client) { - // close eventually - - // chunked encoding: we have to send a last "empty" chunk - if (chunkedEncoding) - client->write(QString("0\r\n\r\n").toAscii()); - - client->disconnectFromHost(); - server.close(); - client = 0; - return; - } - - // send data - if (client && client->bytesToWrite() < 100*1024 && dataSent < dataSize) { - qint64 amount = qMin(qint64(16*1024), dataSize - dataSent); - QByteArray data(amount, '@'); - - if (chunkedEncoding) { - client->write(QString(QString("%1").arg(amount,0,16).toUpper() + "\r\n").toAscii()); - client->write(data.constData(), amount); - client->write(QString("\r\n").toAscii()); - } else { - client->write(data.constData(), amount); - } - - dataSent += amount; - } - } -}; - tst_QNetworkReply::tst_QNetworkReply() { @@ -3311,7 +2969,6 @@ void tst_QNetworkReply::ioPostToHttpEmtpyUploadProgress() server.close(); } - void tst_QNetworkReply::rateControl_data() { QTest::addColumn<int>("rate"); @@ -3365,142 +3022,6 @@ void tst_QNetworkReply::rateControl() QVERIFY(sender.transferRate <= maxRate); } -void tst_QNetworkReply::downloadPerformance() -{ - // unlike the above function, this one tries to send as fast as possible - // and measures how fast it was. - TimedSender sender(5000); - QNetworkRequest request("debugpipe://127.0.0.1:" + QString::number(sender.serverPort()) + "/?bare=1"); - QNetworkReplyPtr reply = manager.get(request); - DataReader reader(reply, false); - - QTime loopTime; - connect(reply, SIGNAL(finished()), &QTestEventLoop::instance(), SLOT(exitLoop())); - loopTime.start(); - QTestEventLoop::instance().enterLoop(40); - int elapsedTime = loopTime.elapsed(); - sender.wait(); - - qint64 receivedBytes = reader.totalBytes; - qDebug() << "tst_QNetworkReply::downloadPerformance" << "receive rate:" << (receivedBytes * 1000 / elapsedTime / 1024) << "kB/s and" - << elapsedTime << "ms"; -} - -void tst_QNetworkReply::uploadPerformance() -{ - ThreadedDataReader reader; - DataGenerator generator; - - - QNetworkRequest request("debugpipe://127.0.0.1:" + QString::number(reader.serverPort()) + "/?bare=1"); - QNetworkReplyPtr reply = manager.put(request, &generator); - generator.start(); - connect(&reader, SIGNAL(finished()), &QTestEventLoop::instance(), SLOT(exitLoop())); - QTimer::singleShot(5000, &generator, SLOT(stop())); - - QTestEventLoop::instance().enterLoop(30); - QCOMPARE(reply->error(), QNetworkReply::NoError); - QVERIFY(!QTestEventLoop::instance().timeout()); -} - -void tst_QNetworkReply::httpUploadPerformance() -{ -#ifdef Q_OS_SYMBIAN - // SHow some mercy for non-desktop platform/s - enum {UploadSize = 4*1024*1024}; // 4 MB -#else - enum {UploadSize = 128*1024*1024}; // 128 MB -#endif - ThreadedDataReaderHttpServer reader; - FixedSizeDataGenerator generator(UploadSize); - - QNetworkRequest request(QUrl("http://127.0.0.1:" + QString::number(reader.serverPort()) + "/?bare=1")); - request.setHeader(QNetworkRequest::ContentLengthHeader,UploadSize); - - QNetworkReplyPtr reply = manager.put(request, &generator); - - connect(reply, SIGNAL(finished()), &QTestEventLoop::instance(), SLOT(exitLoop())); - - QTime time; - generator.start(); - time.start(); - QTestEventLoop::instance().enterLoop(40); - QCOMPARE(reply->error(), QNetworkReply::NoError); - QVERIFY(!QTestEventLoop::instance().timeout()); - - qint64 elapsed = time.elapsed(); - qDebug() << "tst_QNetworkReply::httpUploadPerformance" << elapsed << "msec, " - << ((UploadSize/1024.0)/(elapsed/1000.0)) << " kB/sec"; - - reader.exit(); - reader.wait(); -} - - -void tst_QNetworkReply::performanceControlRate() -{ - // this is a control comparison for the other two above - // it does the same thing, but instead bypasses the QNetworkAccess system - qDebug() << "The following are the maximum transfer rates that we can get in this system" - " (bypassing QNetworkAccess)"; - - TimedSender sender(5000); - QTcpSocket sink; - sink.connectToHost("127.0.0.1", sender.serverPort()); - DataReader reader(&sink, false); - - QTime loopTime; - connect(&sink, SIGNAL(disconnected()), &QTestEventLoop::instance(), SLOT(exitLoop())); - loopTime.start(); - QTestEventLoop::instance().enterLoop(40); - int elapsedTime = loopTime.elapsed(); - sender.wait(); - - qint64 receivedBytes = reader.totalBytes; - qDebug() << "tst_QNetworkReply::performanceControlRate" << "receive rate:" << (receivedBytes * 1000 / elapsedTime / 1024) << "kB/s and" - << elapsedTime << "ms"; -} - -void tst_QNetworkReply::httpDownloadPerformance_data() -{ - QTest::addColumn<bool>("serverSendsContentLength"); - QTest::addColumn<bool>("chunkedEncoding"); - - QTest::newRow("Server sends no Content-Length") << false << false; - QTest::newRow("Server sends Content-Length") << true << false; - QTest::newRow("Server uses chunked encoding") << false << true; - -} - -void tst_QNetworkReply::httpDownloadPerformance() -{ - QFETCH(bool, serverSendsContentLength); - QFETCH(bool, chunkedEncoding); -#ifdef Q_OS_SYMBIAN - // Show some mercy to non-desktop platform/s - enum {UploadSize = 4*1024*1024}; // 4 MB -#else - enum {UploadSize = 128*1024*1024}; // 128 MB -#endif - HttpDownloadPerformanceServer server(UploadSize, serverSendsContentLength, chunkedEncoding); - - QNetworkRequest request(QUrl("http://127.0.0.1:" + QString::number(server.serverPort()) + "/?bare=1")); - QNetworkReplyPtr reply = manager.get(request); - - connect(reply, SIGNAL(finished()), &QTestEventLoop::instance(), SLOT(exitLoop()), Qt::QueuedConnection); - HttpDownloadPerformanceClient client(reply); - - QTime time; - time.start(); - QTestEventLoop::instance().enterLoop(40); - QCOMPARE(reply->error(), QNetworkReply::NoError); - QVERIFY(!QTestEventLoop::instance().timeout()); - - qint64 elapsed = time.elapsed(); - qDebug() << "tst_QNetworkReply::httpDownloadPerformance" << elapsed << "msec, " - << ((UploadSize/1024.0)/(elapsed/1000.0)) << " kB/sec"; -} - void tst_QNetworkReply::downloadProgress_data() { QTest::addColumn<int>("loopCount"); diff --git a/tests/auto/qpainter/tst_qpainter.cpp b/tests/auto/qpainter/tst_qpainter.cpp index 4d2c626..8b71349 100644 --- a/tests/auto/qpainter/tst_qpainter.cpp +++ b/tests/auto/qpainter/tst_qpainter.cpp @@ -101,6 +101,8 @@ private slots: void saveAndRestore_data(); void saveAndRestore(); + void drawBorderPixmap(); + void drawLine_data(); void drawLine(); void drawLine_clipped(); @@ -973,6 +975,18 @@ void tst_QPainter::initFrom() delete widget; } +void tst_QPainter::drawBorderPixmap() +{ + QPixmap src(79,79); + src.fill(Qt::transparent); + + QImage pm(200,200,QImage::Format_RGB32); + QPainter p(&pm); + p.setTransform(QTransform(-1,0,0,-1,173.5,153.5)); + qDrawBorderPixmap(&p, QRect(0,0,75,105), QMargins(39,39,39,39), src, QRect(0,0,79,79), QMargins(39,39,39,39), + QTileRules(Qt::StretchTile,Qt::StretchTile), 0); +} + void tst_QPainter::drawLine_data() { QTest::addColumn<QLine>("line"); @@ -2918,7 +2932,7 @@ void tst_QPainter::monoImages() QImage img(2, 2, format); - if (img.numColors() > 0) { + if (img.colorCount() > 0) { img.setColor(0, QColor(colorPairs[j][0]).rgba()); img.setColor(1, QColor(colorPairs[j][1]).rgba()); } @@ -2940,7 +2954,7 @@ void tst_QPainter::monoImages() // should not change the image QCOMPARE(original, img); - if (img.numColors() == 0) + if (img.colorCount() == 0) continue; for (int k = 0; k < 2; ++k) { diff --git a/tests/auto/qpixmap/tst_qpixmap.cpp b/tests/auto/qpixmap/tst_qpixmap.cpp index 8e02c74..d7f042e 100644 --- a/tests/auto/qpixmap/tst_qpixmap.cpp +++ b/tests/auto/qpixmap/tst_qpixmap.cpp @@ -293,7 +293,7 @@ void tst_QPixmap::setAlphaChannel() QRgb expected = alpha == 0 ? 0 : qRgba(red, green, blue, alpha); for (int y = 0; y < height; ++y) { for (int x = 0; x < width; ++x) { - if (result.numColors() > 0) { + if (result.colorCount() > 0) { ok &= result.pixelIndex(x, y) == expected; } else { ok &= result.pixel(x, y) == expected; @@ -330,7 +330,7 @@ void tst_QPixmap::fromImage() QImage image(37, 16, format); - if (image.numColors() == 2) { + if (image.colorCount() == 2) { image.setColor(0, QColor(Qt::color0).rgba()); image.setColor(1, QColor(Qt::color1).rgba()); } @@ -731,7 +731,7 @@ void tst_QPixmap::testMetrics() void tst_QPixmap::createMaskFromColor() { QImage image(3, 3, QImage::Format_Indexed8); - image.setNumColors(10); + image.setColorCount(10); image.setColor(0, 0xffffffff); image.setColor(1, 0xff000000); image.setColor(2, 0xffff0000); diff --git a/tests/auto/qregexp/tst_qregexp.cpp b/tests/auto/qregexp/tst_qregexp.cpp index 86d831e..e305386 100644 --- a/tests/auto/qregexp/tst_qregexp.cpp +++ b/tests/auto/qregexp/tst_qregexp.cpp @@ -628,7 +628,7 @@ void tst_QRegExp::capturedTexts() QRegExp rx7("([A-Za-z_])([A-Za-z_0-9]*)"); rx7.setCaseSensitivity(Qt::CaseSensitive); rx7.setPatternSyntax(QRegExp::RegExp); - QCOMPARE(rx7.numCaptures(), 2); + QCOMPARE(rx7.captureCount(), 2); int pos = rx7.indexIn("(10 + delta4) * 32"); QCOMPARE(pos, 6); @@ -1177,36 +1177,36 @@ void tst_QRegExp::prepareEngineOptimization() QCOMPARE(rx1.capturedTexts(), QStringList() << "" << "" << "" << ""); QCOMPARE(rx1.matchedLength(), -1); QCOMPARE(rx1.matchedLength(), -1); - QCOMPARE(rx1.numCaptures(), 3); + QCOMPARE(rx1.captureCount(), 3); QCOMPARE(rx1.exactMatch("foo"), true); QCOMPARE(rx1.matchedLength(), 3); QCOMPARE(rx1.capturedTexts(), QStringList() << "foo" << "f" << "o" << "o"); - QCOMPARE(rx1.numCaptures(), 3); + QCOMPARE(rx1.captureCount(), 3); QCOMPARE(rx1.matchedLength(), 3); QCOMPARE(rx1.capturedTexts(), QStringList() << "foo" << "f" << "o" << "o"); QCOMPARE(rx1.pos(3), 2); QCOMPARE(rx1.exactMatch("foo"), true); - QCOMPARE(rx1.numCaptures(), 3); + QCOMPARE(rx1.captureCount(), 3); QCOMPARE(rx1.matchedLength(), 3); QCOMPARE(rx1.capturedTexts(), QStringList() << "foo" << "f" << "o" << "o"); QCOMPARE(rx1.pos(3), 2); QRegExp rx2 = rx1; - QCOMPARE(rx1.numCaptures(), 3); + QCOMPARE(rx1.captureCount(), 3); QCOMPARE(rx1.matchedLength(), 3); QCOMPARE(rx1.capturedTexts(), QStringList() << "foo" << "f" << "o" << "o"); QCOMPARE(rx1.pos(3), 2); - QCOMPARE(rx2.numCaptures(), 3); + QCOMPARE(rx2.captureCount(), 3); QCOMPARE(rx2.matchedLength(), 3); QCOMPARE(rx2.capturedTexts(), QStringList() << "foo" << "f" << "o" << "o"); QCOMPARE(rx2.pos(3), 2); QCOMPARE(rx1.exactMatch("fo"), true); - QCOMPARE(rx1.numCaptures(), 3); + QCOMPARE(rx1.captureCount(), 3); QCOMPARE(rx1.matchedLength(), 2); QCOMPARE(rx1.capturedTexts(), QStringList() << "fo" << "f" << "o" << ""); QCOMPARE(rx1.pos(2), 1); @@ -1245,25 +1245,25 @@ void tst_QRegExp::prepareEngineOptimization() rx11.setPatternSyntax(QRegExp::Wildcard); QVERIFY(!rx11.isValid()); - QCOMPARE(rx11.numCaptures(), 0); + QCOMPARE(rx11.captureCount(), 0); QCOMPARE(rx11.matchedLength(), -1); rx11.setPatternSyntax(QRegExp::RegExp); QVERIFY(!rx11.isValid()); - QCOMPARE(rx11.numCaptures(), 0); + QCOMPARE(rx11.captureCount(), 0); QCOMPARE(rx11.matchedLength(), -1); rx11.setPattern("(foo)"); QVERIFY(rx11.isValid()); - QCOMPARE(rx11.numCaptures(), 1); + QCOMPARE(rx11.captureCount(), 1); QCOMPARE(rx11.matchedLength(), -1); QCOMPARE(rx11.indexIn("ofoo"), 1); - QCOMPARE(rx11.numCaptures(), 1); + QCOMPARE(rx11.captureCount(), 1); QCOMPARE(rx11.matchedLength(), 3); rx11.setPatternSyntax(QRegExp::RegExp); - QCOMPARE(rx11.numCaptures(), 1); + QCOMPARE(rx11.captureCount(), 1); QCOMPARE(rx11.matchedLength(), 3); /* @@ -1278,11 +1278,11 @@ void tst_QRegExp::prepareEngineOptimization() QCOMPARE(rx11.matchedLength(), 3); rx11.setPatternSyntax(QRegExp::Wildcard); - QCOMPARE(rx11.numCaptures(), 0); + QCOMPARE(rx11.captureCount(), 0); QCOMPARE(rx11.matchedLength(), -1); rx11.setPatternSyntax(QRegExp::RegExp); - QCOMPARE(rx11.numCaptures(), 1); + QCOMPARE(rx11.captureCount(), 1); QCOMPARE(rx11.matchedLength(), -1); } diff --git a/tests/auto/qregion/tst_qregion.cpp b/tests/auto/qregion/tst_qregion.cpp index e5a3151..582b5e8 100644 --- a/tests/auto/qregion/tst_qregion.cpp +++ b/tests/auto/qregion/tst_qregion.cpp @@ -88,8 +88,8 @@ private slots: void operator_xor_data(); void operator_xor(); - void numRects_data(); - void numRects(); + void rectCount_data(); + void rectCount(); void isEmpty_data(); void isEmpty(); @@ -554,7 +554,7 @@ void tst_QRegion::operator_plus() qDebug() << "expected" << expected; } QCOMPARE(r1 + r2, expected); - if (r2.numRects() == 1) { + if (r2.rectCount() == 1) { if (r1 + r2.boundingRect() != expected) { qDebug() << "r1 + QRect(r2)" << (r1 + r2.boundingRect()); qDebug() << "expected" << expected; @@ -567,7 +567,7 @@ void tst_QRegion::operator_plus() qDebug() << "expected" << expected; } QCOMPARE(r2 + r1, expected); - if (r1.numRects() == 1) { + if (r1.rectCount() == 1) { if (r1 + r2.boundingRect() != expected) { qDebug() << "r2 + QRect(r1)" << (r2 + r1.boundingRect()); qDebug() << "expected" << expected; @@ -582,7 +582,7 @@ void tst_QRegion::operator_plus() qDebug() << "expected" << expected; } QCOMPARE(result1, expected); - if (r2.numRects() == 1) { + if (r2.rectCount() == 1) { result1 = r1; result1 += r2.boundingRect(); if (result1 != expected) { @@ -599,7 +599,7 @@ void tst_QRegion::operator_plus() qDebug() << "expected" << expected; } QCOMPARE(result2, expected); - if (r1.numRects() == 1) { + if (r1.rectCount() == 1) { result2 = r2; result2 += r1.boundingRect(); if (result2 != expected) { @@ -802,7 +802,7 @@ void tst_QRegion::operator_xor() QCOMPARE(dest, expected); } -void tst_QRegion::numRects_data() +void tst_QRegion::rectCount_data() { QTest::addColumn<QRegion>("region"); QTest::addColumn<int>("expected"); @@ -818,12 +818,12 @@ void tst_QRegion::numRects_data() QTest::newRow("2 rects") << dest << rects.size(); } -void tst_QRegion::numRects() +void tst_QRegion::rectCount() { QFETCH(QRegion, region); QFETCH(int, expected); - QCOMPARE(region.numRects(), expected); + QCOMPARE(region.rectCount(), expected); } void tst_QRegion::isEmpty_data() @@ -850,7 +850,7 @@ void tst_QRegion::isEmpty() QVERIFY(region.isEmpty()); QCOMPARE(region, QRegion()); - QCOMPARE(region.numRects(), 0); + QCOMPARE(region.rectCount(), 0); QCOMPARE(region.boundingRect(), QRect()); QVERIFY(region.rects().isEmpty()); } diff --git a/tests/auto/qscopedpointer/tst_qscopedpointer.cpp b/tests/auto/qscopedpointer/tst_qscopedpointer.cpp index aeead15..b99760e 100644 --- a/tests/auto/qscopedpointer/tst_qscopedpointer.cpp +++ b/tests/auto/qscopedpointer/tst_qscopedpointer.cpp @@ -313,30 +313,128 @@ void tst_QScopedPointer::objectSize() QCOMPARE(sizeof(QScopedPointer<int>), sizeof(void *)); } -void tst_QScopedPointer::comparison() +struct RefCounted { - int *a = new int(42); - int *b = new int(43); + RefCounted() + : ref(0) + { + instanceCount.ref(); + } + + RefCounted(RefCounted const &) + : ref(0) + { + instanceCount.ref(); + } + + ~RefCounted() + { + QVERIFY( ref == 0 ); + instanceCount.deref(); + } + + RefCounted &operator=(RefCounted const &) + { + return *this; + } - QScopedPointer<int> pa(a); - QScopedPointer<int> pa2(a); - QScopedPointer<int> pb(b); + QAtomicInt ref; + static QAtomicInt instanceCount; +}; + +QAtomicInt RefCounted::instanceCount = 0; + +template <class A1, class A2, class B> +void scopedPointerComparisonTest(const A1 &a1, const A2 &a2, const B &b) +{ // test equality on equal pointers - QVERIFY(pa == pa2); - QVERIFY(pa2 == pa); + QVERIFY(a1 == a2); + QVERIFY(a2 == a1); + + // test inequality on equal pointers + QVERIFY(!(a1 != a2)); + QVERIFY(!(a2 != a1)); + + // test equality on unequal pointers + QVERIFY(!(a1 == b)); + QVERIFY(!(a2 == b)); + QVERIFY(!(b == a1)); + QVERIFY(!(b == a2)); + + // test inequality on unequal pointers + QVERIFY(b != a1); + QVERIFY(b != a2); + QVERIFY(a1 != b); + QVERIFY(a2 != b); +} + +void tst_QScopedPointer::comparison() +{ + QCOMPARE( int(RefCounted::instanceCount), 0 ); + + { + RefCounted *a = new RefCounted; + RefCounted *b = new RefCounted; + + QCOMPARE( int(RefCounted::instanceCount), 2 ); - // test unequality on equal pointers - QVERIFY(!(pa != pa2)); - QVERIFY(!(pa2 != pa)); + QScopedPointer<RefCounted> pa1(a); + QScopedPointer<RefCounted> pa2(a); + QScopedPointer<RefCounted> pb(b); - // test on unequal pointers - QVERIFY(!(pa == pb)); - QVERIFY(!(pb == pa)); - QVERIFY(pb != pa); - QVERIFY(pa != pb); + scopedPointerComparisonTest(pa1, pa1, pb); + scopedPointerComparisonTest(pa2, pa2, pb); + scopedPointerComparisonTest(pa1, pa2, pb); + + pa2.take(); + + QCOMPARE( int(RefCounted::instanceCount), 2 ); + } + + QCOMPARE( int(RefCounted::instanceCount), 0 ); + + { + RefCounted *a = new RefCounted[42]; + RefCounted *b = new RefCounted[43]; + + QCOMPARE( int(RefCounted::instanceCount), 85 ); + + QScopedArrayPointer<RefCounted> pa1(a); + QScopedArrayPointer<RefCounted> pa2(a); + QScopedArrayPointer<RefCounted> pb(b); + + scopedPointerComparisonTest(pa1, pa2, pb); + + pa2.take(); + + QCOMPARE( int(RefCounted::instanceCount), 85 ); + } + + QCOMPARE( int(RefCounted::instanceCount), 0 ); + + { + // QScopedSharedPointer is an internal helper class -- it is unsupported! + + RefCounted *a = new RefCounted; + RefCounted *b = new RefCounted; + + QCOMPARE( int(RefCounted::instanceCount), 2 ); + + QSharedDataPointer<RefCounted> pa1(a); + QSharedDataPointer<RefCounted> pa2(a); + QSharedDataPointer<RefCounted> pb(b); + + QCOMPARE( int(a->ref), 2 ); + QCOMPARE( int(b->ref), 1 ); + QCOMPARE( int(RefCounted::instanceCount), 2 ); + + scopedPointerComparisonTest(pa1, pa2, pb); + + QCOMPARE( int(RefCounted::instanceCount), 2 ); + } - pa2.take(); + QCOMPARE( int(RefCounted::instanceCount), 0 ); } QTEST_MAIN(tst_QScopedPointer) diff --git a/tests/auto/qscriptengine/tst_qscriptengine.cpp b/tests/auto/qscriptengine/tst_qscriptengine.cpp index 804534f..8eaad78 100644 --- a/tests/auto/qscriptengine/tst_qscriptengine.cpp +++ b/tests/auto/qscriptengine/tst_qscriptengine.cpp @@ -4485,7 +4485,7 @@ void tst_QScriptEngine::qRegExpInport() QScriptValue result = func.call(QScriptValue(), QScriptValueList() << string << rexp); rx.indexIn(string); - for (int i = 0; i <= rx.numCaptures(); i++) { + for (int i = 0; i <= rx.captureCount(); i++) { QCOMPARE(result.property(i).toString(), rx.cap(i)); } } diff --git a/tests/auto/qtextdocument/tst_qtextdocument.cpp b/tests/auto/qtextdocument/tst_qtextdocument.cpp index 5237438..1d54409 100644 --- a/tests/auto/qtextdocument/tst_qtextdocument.cpp +++ b/tests/auto/qtextdocument/tst_qtextdocument.cpp @@ -1721,21 +1721,21 @@ void tst_QTextDocument::capitalizationHtmlInExport() const QString smallcaps = doc->toHtml(); QVERIFY(re.exactMatch(doc->toHtml())); - QCOMPARE(re.numCaptures(), 1); + QCOMPARE(re.captureCount(), 1); QCOMPARE(re.cap(1).trimmed(), QString("font-variant:small-caps;")); cf.setFontCapitalization(QFont::AllUppercase); cursor.mergeCharFormat(cf); const QString uppercase = doc->toHtml(); QVERIFY(re.exactMatch(doc->toHtml())); - QCOMPARE(re.numCaptures(), 1); + QCOMPARE(re.captureCount(), 1); QCOMPARE(re.cap(1).trimmed(), QString("text-transform:uppercase;")); cf.setFontCapitalization(QFont::AllLowercase); cursor.mergeCharFormat(cf); const QString lowercase = doc->toHtml(); QVERIFY(re.exactMatch(doc->toHtml())); - QCOMPARE(re.numCaptures(), 1); + QCOMPARE(re.captureCount(), 1); QCOMPARE(re.cap(1).trimmed(), QString("text-transform:lowercase;")); doc->setHtml(smallcaps); @@ -1761,14 +1761,14 @@ void tst_QTextDocument::wordspacingHtmlExport() cursor.mergeCharFormat(cf); QVERIFY(re.exactMatch(doc->toHtml())); - QCOMPARE(re.numCaptures(), 1); + QCOMPARE(re.captureCount(), 1); QCOMPARE(re.cap(1).trimmed(), QString("word-spacing:4px;")); cf.setFontWordSpacing(-8.5); cursor.mergeCharFormat(cf); QVERIFY(re.exactMatch(doc->toHtml())); - QCOMPARE(re.numCaptures(), 1); + QCOMPARE(re.captureCount(), 1); QCOMPARE(re.cap(1).trimmed(), QString("word-spacing:-8.5px;")); } diff --git a/tests/benchmarks/qnetworkreply/tst_qnetworkreply.cpp b/tests/benchmarks/qnetworkreply/tst_qnetworkreply.cpp index 993db52..1d50013 100644 --- a/tests/benchmarks/qnetworkreply/tst_qnetworkreply.cpp +++ b/tests/benchmarks/qnetworkreply/tst_qnetworkreply.cpp @@ -46,11 +46,397 @@ #include <QtNetwork/qnetworkreply.h> #include <QtNetwork/qnetworkrequest.h> #include <QtNetwork/qnetworkaccessmanager.h> +#include <QtNetwork/qtcpsocket.h> +#include <QtNetwork/qtcpserver.h> #include "../../auto/network-settings.h" + +class TimedSender: public QThread +{ + Q_OBJECT + qint64 totalBytes; + QSemaphore ready; + QByteArray dataToSend; + QTcpSocket *client; + int timeout; + int port; +public: + int transferRate; + TimedSender(int ms) + : totalBytes(0), timeout(ms), port(-1), transferRate(-1) + { + dataToSend = QByteArray(16*1024, '@'); + start(); + ready.acquire(); + } + + inline int serverPort() const { return port; } + +private slots: + void writeMore() + { + while (client->bytesToWrite() < 128 * 1024) { + writePacket(dataToSend); + } + } + +protected: + void run() + { + QTcpServer server; + server.listen(); + port = server.serverPort(); + ready.release(); + + server.waitForNewConnection(-1); + client = server.nextPendingConnection(); + + writeMore(); + connect(client, SIGNAL(bytesWritten(qint64)), SLOT(writeMore()), Qt::DirectConnection); + + QEventLoop eventLoop; + QTimer::singleShot(timeout, &eventLoop, SLOT(quit())); + + QTime timer; + timer.start(); + eventLoop.exec(); + disconnect(client, SIGNAL(bytesWritten(qint64)), this, 0); + + // wait for the connection to shut down + client->disconnectFromHost(); + if (!client->waitForDisconnected(10000)) + return; + + transferRate = totalBytes * 1000 / timer.elapsed(); + qDebug() << "TimedSender::run" << "receive rate:" << (transferRate / 1024) << "kB/s in" + << timer.elapsed() << "ms"; + } + + void writePacket(const QByteArray &array) + { + client->write(array); + totalBytes += array.size(); + } +}; + + +class QNetworkReplyPtr: public QSharedPointer<QNetworkReply> +{ +public: + inline QNetworkReplyPtr(QNetworkReply *ptr = 0) + : QSharedPointer<QNetworkReply>(ptr) + { } + + inline operator QNetworkReply *() const { return data(); } +}; + + +class DataReader: public QObject +{ + Q_OBJECT +public: + qint64 totalBytes; + QByteArray data; + QIODevice *device; + bool accumulate; + DataReader(QIODevice *dev, bool acc = true) : totalBytes(0), device(dev), accumulate(acc) + { + connect(device, SIGNAL(readyRead()), SLOT(doRead())); + } + +public slots: + void doRead() + { + QByteArray buffer; + buffer.resize(device->bytesAvailable()); + qint64 bytesRead = device->read(buffer.data(), device->bytesAvailable()); + if (bytesRead == -1) { + QTestEventLoop::instance().exitLoop(); + return; + } + buffer.truncate(bytesRead); + totalBytes += bytesRead; + + if (accumulate) + data += buffer; + } +}; + +class ThreadedDataReader: public QThread +{ + Q_OBJECT + // used to make the constructor only return after the tcp server started listening + QSemaphore ready; + QTcpSocket *client; + int timeout; + int port; +public: + qint64 transferRate; + ThreadedDataReader() + : port(-1), transferRate(-1) + { + start(); + ready.acquire(); + } + + inline int serverPort() const { return port; } + +protected: + void run() + { + QTcpServer server; + server.listen(); + port = server.serverPort(); + ready.release(); + + server.waitForNewConnection(-1); + client = server.nextPendingConnection(); + + QEventLoop eventLoop; + DataReader reader(client, false); + QObject::connect(client, SIGNAL(disconnected()), &eventLoop, SLOT(quit())); + + QTime timer; + timer.start(); + eventLoop.exec(); + qint64 elapsed = timer.elapsed(); + + transferRate = reader.totalBytes * 1000 / elapsed; + qDebug() << "ThreadedDataReader::run" << "send rate:" << (transferRate / 1024) << "kB/s in" << elapsed << "msec"; + } +}; + +class DataGenerator: public QIODevice +{ + Q_OBJECT + enum { Idle, Started, Stopped } state; +public: + DataGenerator() : state(Idle) + { open(ReadOnly); } + + virtual bool isSequential() const { return true; } + virtual qint64 bytesAvailable() const { return state == Started ? 1024*1024 : 0; } + +public slots: + void start() { state = Started; emit readyRead(); } + void stop() { state = Stopped; emit readyRead(); } + +protected: + virtual qint64 readData(char *data, qint64 maxlen) + { + if (state == Stopped) + return -1; // EOF + + // return as many bytes as are wanted + memset(data, '@', maxlen); + return maxlen; + } + virtual qint64 writeData(const char *, qint64) + { return -1; } +}; + +class ThreadedDataReaderHttpServer: public QThread +{ + Q_OBJECT + // used to make the constructor only return after the tcp server started listening + QSemaphore ready; + QTcpSocket *client; + int timeout; + int port; +public: + qint64 transferRate; + ThreadedDataReaderHttpServer() + : port(-1), transferRate(-1) + { + start(); + ready.acquire(); + } + + inline int serverPort() const { return port; } + +protected: + void run() + { + QTcpServer server; + server.listen(); + port = server.serverPort(); + ready.release(); + + server.waitForNewConnection(-1); + client = server.nextPendingConnection(); + client->write("HTTP/1.0 200 OK\r\n"); + client->write("Content-length: 0\r\n"); + client->write("\r\n"); + client->flush(); + + QCoreApplication::processEvents(); + + QEventLoop eventLoop; + DataReader reader(client, false); + QObject::connect(client, SIGNAL(disconnected()), &eventLoop, SLOT(quit())); + + QTime timer; + timer.start(); + eventLoop.exec(); + qint64 elapsed = timer.elapsed(); + + transferRate = reader.totalBytes * 1000 / elapsed; + qDebug() << "ThreadedDataReaderHttpServer::run" << "send rate:" << (transferRate / 1024) << "kB/s in" << elapsed << "msec"; + } +}; + + +class FixedSizeDataGenerator : public QIODevice +{ + Q_OBJECT + enum { Idle, Started, Stopped } state; +public: + FixedSizeDataGenerator(qint64 size) : state(Idle) + { open(ReadOnly | Unbuffered); + toBeGeneratedTotalCount = toBeGeneratedCount = size; + } + + virtual qint64 bytesAvailable() const + { + return state == Started ? toBeGeneratedCount + QIODevice::bytesAvailable() : 0; + } + + virtual bool isSequential() const{ + return false; + } + + virtual bool reset() const{ + return false; + } + + qint64 size() const { + return toBeGeneratedTotalCount; + } + +public slots: + void start() { state = Started; emit readyRead(); } + +protected: + virtual qint64 readData(char *data, qint64 maxlen) + { + memset(data, '@', maxlen); + + if (toBeGeneratedCount <= 0) { + return -1; + } + + qint64 n = qMin(maxlen, toBeGeneratedCount); + toBeGeneratedCount -= n; + + if (toBeGeneratedCount <= 0) { + // make sure this is a queued connection! + emit readChannelFinished(); + } + + return n; + } + virtual qint64 writeData(const char *, qint64) + { return -1; } + + qint64 toBeGeneratedCount; + qint64 toBeGeneratedTotalCount; +}; + +class HttpDownloadPerformanceServer : QObject { + Q_OBJECT; + qint64 dataSize; + qint64 dataSent; + QTcpServer server; + QTcpSocket *client; + bool serverSendsContentLength; + bool chunkedEncoding; + +public: + HttpDownloadPerformanceServer (qint64 ds, bool sscl, bool ce) : dataSize(ds), dataSent(0), + client(0), serverSendsContentLength(sscl), chunkedEncoding(ce) { + server.listen(); + connect(&server, SIGNAL(newConnection()), this, SLOT(newConnectionSlot())); + } + + int serverPort() { + return server.serverPort(); + } + +public slots: + + void newConnectionSlot() { + client = server.nextPendingConnection(); + client->setParent(this); + connect(client, SIGNAL(readyRead()), this, SLOT(readyReadSlot())); + connect(client, SIGNAL(bytesWritten(qint64)), this, SLOT(bytesWrittenSlot(qint64))); + } + + void readyReadSlot() { + client->readAll(); + client->write("HTTP/1.0 200 OK\n"); + if (serverSendsContentLength) + client->write(QString("Content-Length: " + QString::number(dataSize) + "\n").toAscii()); + if (chunkedEncoding) + client->write(QString("Transfer-Encoding: chunked\n").toAscii()); + client->write("Connection: close\n\n"); + } + + void bytesWrittenSlot(qint64 amount) { + Q_UNUSED(amount); + if (dataSent == dataSize && client) { + // close eventually + + // chunked encoding: we have to send a last "empty" chunk + if (chunkedEncoding) + client->write(QString("0\r\n\r\n").toAscii()); + + client->disconnectFromHost(); + server.close(); + client = 0; + return; + } + + // send data + if (client && client->bytesToWrite() < 100*1024 && dataSent < dataSize) { + qint64 amount = qMin(qint64(16*1024), dataSize - dataSent); + QByteArray data(amount, '@'); + + if (chunkedEncoding) { + client->write(QString(QString("%1").arg(amount,0,16).toUpper() + "\r\n").toAscii()); + client->write(data.constData(), amount); + client->write(QString("\r\n").toAscii()); + } else { + client->write(data.constData(), amount); + } + + dataSent += amount; + } + } +}; + +class HttpDownloadPerformanceClient : QObject { + Q_OBJECT; + QIODevice *device; + public: + HttpDownloadPerformanceClient (QIODevice *dev) : device(dev){ + connect(dev, SIGNAL(readyRead()), this, SLOT(readyReadSlot())); + } + + public slots: + void readyReadSlot() { + device->readAll(); + } + +}; + + + + class tst_qnetworkreply : public QObject { Q_OBJECT + + QNetworkAccessManager manager; private slots: void httpLatency(); @@ -58,6 +444,14 @@ private slots: void echoPerformance_data(); void echoPerformance(); #endif + + void downloadPerformance(); + void uploadPerformance(); + void performanceControlRate(); + void httpUploadPerformance(); + void httpDownloadPerformance_data(); + void httpDownloadPerformance(); + }; void tst_qnetworkreply::httpLatency() @@ -107,6 +501,142 @@ void tst_qnetworkreply::echoPerformance() } #endif +void tst_qnetworkreply::downloadPerformance() +{ + // unlike the above function, this one tries to send as fast as possible + // and measures how fast it was. + TimedSender sender(5000); + QNetworkRequest request("debugpipe://127.0.0.1:" + QString::number(sender.serverPort()) + "/?bare=1"); + QNetworkReplyPtr reply = manager.get(request); + DataReader reader(reply, false); + + QTime loopTime; + connect(reply, SIGNAL(finished()), &QTestEventLoop::instance(), SLOT(exitLoop())); + loopTime.start(); + QTestEventLoop::instance().enterLoop(40); + int elapsedTime = loopTime.elapsed(); + sender.wait(); + + qint64 receivedBytes = reader.totalBytes; + qDebug() << "tst_QNetworkReply::downloadPerformance" << "receive rate:" << (receivedBytes * 1000 / elapsedTime / 1024) << "kB/s and" + << elapsedTime << "ms"; +} + +void tst_qnetworkreply::uploadPerformance() +{ + ThreadedDataReader reader; + DataGenerator generator; + + + QNetworkRequest request("debugpipe://127.0.0.1:" + QString::number(reader.serverPort()) + "/?bare=1"); + QNetworkReplyPtr reply = manager.put(request, &generator); + generator.start(); + connect(&reader, SIGNAL(finished()), &QTestEventLoop::instance(), SLOT(exitLoop())); + QTimer::singleShot(5000, &generator, SLOT(stop())); + + QTestEventLoop::instance().enterLoop(30); + QCOMPARE(reply->error(), QNetworkReply::NoError); + QVERIFY(!QTestEventLoop::instance().timeout()); +} + +void tst_qnetworkreply::httpUploadPerformance() +{ +#ifdef Q_OS_SYMBIAN + // SHow some mercy for non-desktop platform/s + enum {UploadSize = 4*1024*1024}; // 4 MB +#else + enum {UploadSize = 128*1024*1024}; // 128 MB +#endif + ThreadedDataReaderHttpServer reader; + FixedSizeDataGenerator generator(UploadSize); + + QNetworkRequest request(QUrl("http://127.0.0.1:" + QString::number(reader.serverPort()) + "/?bare=1")); + request.setHeader(QNetworkRequest::ContentLengthHeader,UploadSize); + + QNetworkReplyPtr reply = manager.put(request, &generator); + + connect(reply, SIGNAL(finished()), &QTestEventLoop::instance(), SLOT(exitLoop())); + + QTime time; + generator.start(); + time.start(); + QTestEventLoop::instance().enterLoop(40); + QCOMPARE(reply->error(), QNetworkReply::NoError); + QVERIFY(!QTestEventLoop::instance().timeout()); + + qint64 elapsed = time.elapsed(); + qDebug() << "tst_QNetworkReply::httpUploadPerformance" << elapsed << "msec, " + << ((UploadSize/1024.0)/(elapsed/1000.0)) << " kB/sec"; + + reader.exit(); + reader.wait(); +} + + +void tst_qnetworkreply::performanceControlRate() +{ + // this is a control comparison for the other two above + // it does the same thing, but instead bypasses the QNetworkAccess system + qDebug() << "The following are the maximum transfer rates that we can get in this system" + " (bypassing QNetworkAccess)"; + + TimedSender sender(5000); + QTcpSocket sink; + sink.connectToHost("127.0.0.1", sender.serverPort()); + DataReader reader(&sink, false); + + QTime loopTime; + connect(&sink, SIGNAL(disconnected()), &QTestEventLoop::instance(), SLOT(exitLoop())); + loopTime.start(); + QTestEventLoop::instance().enterLoop(40); + int elapsedTime = loopTime.elapsed(); + sender.wait(); + + qint64 receivedBytes = reader.totalBytes; + qDebug() << "tst_QNetworkReply::performanceControlRate" << "receive rate:" << (receivedBytes * 1000 / elapsedTime / 1024) << "kB/s and" + << elapsedTime << "ms"; +} + +void tst_qnetworkreply::httpDownloadPerformance_data() +{ + QTest::addColumn<bool>("serverSendsContentLength"); + QTest::addColumn<bool>("chunkedEncoding"); + + QTest::newRow("Server sends no Content-Length") << false << false; + QTest::newRow("Server sends Content-Length") << true << false; + QTest::newRow("Server uses chunked encoding") << false << true; + +} + +void tst_qnetworkreply::httpDownloadPerformance() +{ + QFETCH(bool, serverSendsContentLength); + QFETCH(bool, chunkedEncoding); +#ifdef Q_OS_SYMBIAN + // Show some mercy to non-desktop platform/s + enum {UploadSize = 4*1024*1024}; // 4 MB +#else + enum {UploadSize = 128*1024*1024}; // 128 MB +#endif + HttpDownloadPerformanceServer server(UploadSize, serverSendsContentLength, chunkedEncoding); + + QNetworkRequest request(QUrl("http://127.0.0.1:" + QString::number(server.serverPort()) + "/?bare=1")); + QNetworkReplyPtr reply = manager.get(request); + + connect(reply, SIGNAL(finished()), &QTestEventLoop::instance(), SLOT(exitLoop()), Qt::QueuedConnection); + HttpDownloadPerformanceClient client(reply); + + QTime time; + time.start(); + QTestEventLoop::instance().enterLoop(40); + QCOMPARE(reply->error(), QNetworkReply::NoError); + QVERIFY(!QTestEventLoop::instance().timeout()); + + qint64 elapsed = time.elapsed(); + qDebug() << "tst_QNetworkReply::httpDownloadPerformance" << elapsed << "msec, " + << ((UploadSize/1024.0)/(elapsed/1000.0)) << " kB/sec"; +} + QTEST_MAIN(tst_qnetworkreply) #include "tst_qnetworkreply.moc" diff --git a/tests/manual/windowflags/previewwindow.cpp b/tests/manual/windowflags/previewwindow.cpp index 78f9fcb..31e8b3e 100644 --- a/tests/manual/windowflags/previewwindow.cpp +++ b/tests/manual/windowflags/previewwindow.cpp @@ -103,8 +103,18 @@ PreviewWindow::PreviewWindow(QWidget *parent) closeButton = new QPushButton(tr("&Close")); connect(closeButton, SIGNAL(clicked()), this, SLOT(close())); + showNormalButton = new QPushButton(tr("Show normal")); + connect(showNormalButton, SIGNAL(clicked()), this, SLOT(showNormal())); + showMaximizedButton = new QPushButton(tr("Show maximized")); + connect(showMaximizedButton, SIGNAL(clicked()), this, SLOT(showMaximized())); + showFullScreenButton = new QPushButton(tr("Show fullscreen")); + connect(showFullScreenButton, SIGNAL(clicked()), this, SLOT(showFullScreen())); + QVBoxLayout *layout = new QVBoxLayout; layout->addWidget(textEdit); + layout->addWidget(showNormalButton); + layout->addWidget(showMaximizedButton); + layout->addWidget(showFullScreenButton); layout->addWidget(closeButton); setLayout(layout); @@ -129,8 +139,18 @@ PreviewDialog::PreviewDialog(QWidget *parent) closeButton = new QPushButton(tr("&Close")); connect(closeButton, SIGNAL(clicked()), this, SLOT(close())); + showNormalButton = new QPushButton(tr("Show normal")); + connect(showNormalButton, SIGNAL(clicked()), this, SLOT(showNormal())); + showMaximizedButton = new QPushButton(tr("Show maximized")); + connect(showMaximizedButton, SIGNAL(clicked()), this, SLOT(showMaximized())); + showFullScreenButton = new QPushButton(tr("Show fullscreen")); + connect(showFullScreenButton, SIGNAL(clicked()), this, SLOT(showFullScreen())); + QVBoxLayout *layout = new QVBoxLayout; layout->addWidget(textEdit); + layout->addWidget(showNormalButton); + layout->addWidget(showMaximizedButton); + layout->addWidget(showFullScreenButton); layout->addWidget(closeButton); setLayout(layout); diff --git a/tests/manual/windowflags/previewwindow.h b/tests/manual/windowflags/previewwindow.h index fdd21d7..fbf822b 100644 --- a/tests/manual/windowflags/previewwindow.h +++ b/tests/manual/windowflags/previewwindow.h @@ -62,6 +62,9 @@ public: private: QTextEdit *textEdit; QPushButton *closeButton; + QPushButton *showNormalButton; + QPushButton *showMaximizedButton; + QPushButton *showFullScreenButton; }; class PreviewDialog : public QDialog @@ -76,6 +79,9 @@ public: private: QTextEdit *textEdit; QPushButton *closeButton; + QPushButton *showNormalButton; + QPushButton *showMaximizedButton; + QPushButton *showFullScreenButton; }; #endif |