summaryrefslogtreecommitdiffstats
path: root/tests/auto/declarative
diff options
context:
space:
mode:
authorWarwick Allison <warwick.allison@nokia.com>2009-11-09 05:43:40 (GMT)
committerWarwick Allison <warwick.allison@nokia.com>2009-11-09 05:43:40 (GMT)
commitdabc2b4f015ab37d4c7ace4a96b5615722a1efc1 (patch)
treea31c3f6679a730f0da3cfccafd7897257ca04be9 /tests/auto/declarative
parentd98a7ff511817af137ef21b2c92722156109add6 (diff)
parent208567d44c5140ca0d4350fde42948e6fca5dc58 (diff)
downloadQt-dabc2b4f015ab37d4c7ace4a96b5615722a1efc1.zip
Qt-dabc2b4f015ab37d4c7ace4a96b5615722a1efc1.tar.gz
Qt-dabc2b4f015ab37d4c7ace4a96b5615722a1efc1.tar.bz2
Merge branch 'kinetic-declarativeui' of git@scm.dev.nokia.troll.no:qt/kinetic into kinetic-declarativeui
Diffstat (limited to 'tests/auto/declarative')
-rw-r--r--tests/auto/declarative/declarative.pro1
-rw-r--r--tests/auto/declarative/layouts/data/layouts.qml34
-rw-r--r--tests/auto/declarative/layouts/tst_layouts.cpp434
-rw-r--r--tests/auto/declarative/qmlgraphicsgridview/data/gridview-initCurrent.qml51
-rw-r--r--tests/auto/declarative/qmlgraphicsgridview/tst_qmlgraphicsgridview.cpp111
-rw-r--r--tests/auto/declarative/qmlgraphicslistview/data/itemlist.qml43
-rw-r--r--tests/auto/declarative/qmlgraphicslistview/data/listview.qml5
-rw-r--r--tests/auto/declarative/qmlgraphicslistview/tst_qmlgraphicslistview.cpp35
-rw-r--r--tests/auto/declarative/qmlgraphicspositioners/data/grid-animated.qml (renamed from tests/auto/declarative/layouts/data/grid-animated.qml)0
-rw-r--r--tests/auto/declarative/qmlgraphicspositioners/data/grid-spacing.qml (renamed from tests/auto/declarative/layouts/data/grid-spacing.qml)0
-rw-r--r--tests/auto/declarative/qmlgraphicspositioners/data/grid.qml (renamed from tests/auto/declarative/layouts/data/grid.qml)0
-rw-r--r--tests/auto/declarative/qmlgraphicspositioners/data/horizontal-animated.qml (renamed from tests/auto/declarative/layouts/data/horizontal-animated.qml)0
-rw-r--r--tests/auto/declarative/qmlgraphicspositioners/data/horizontal-spacing.qml (renamed from tests/auto/declarative/layouts/data/horizontal-spacing.qml)0
-rw-r--r--tests/auto/declarative/qmlgraphicspositioners/data/horizontal.qml (renamed from tests/auto/declarative/layouts/data/horizontal.qml)0
-rw-r--r--tests/auto/declarative/qmlgraphicspositioners/data/repeater.qml (renamed from tests/auto/declarative/layouts/data/repeater.qml)0
-rw-r--r--tests/auto/declarative/qmlgraphicspositioners/data/vertical-animated.qml (renamed from tests/auto/declarative/layouts/data/vertical-animated.qml)0
-rw-r--r--tests/auto/declarative/qmlgraphicspositioners/data/vertical-spacing.qml (renamed from tests/auto/declarative/layouts/data/vertical-spacing.qml)0
-rw-r--r--tests/auto/declarative/qmlgraphicspositioners/data/vertical.qml (renamed from tests/auto/declarative/layouts/data/vertical.qml)0
-rw-r--r--tests/auto/declarative/qmlgraphicspositioners/qmlgraphicspositioners.pro7
-rw-r--r--tests/auto/declarative/qmlgraphicspositioners/tst_qmlgraphicspositioners.cpp469
-rw-r--r--tests/auto/declarative/visual/qmlgraphicsflipable/data/test-flipable.0.pngbin1092 -> 1090 bytes
-rw-r--r--tests/auto/declarative/visual/qmlgraphicsflipable/data/test-flipable.1.pngbin1134 -> 1134 bytes
-rw-r--r--tests/auto/declarative/visual/qmlgraphicsflipable/data/test-flipable.2.pngbin961 -> 961 bytes
-rw-r--r--tests/auto/declarative/visual/qmlgraphicsflipable/data/test-flipable.3.pngbin1074 -> 1076 bytes
-rw-r--r--tests/auto/declarative/visual/qmlgraphicsflipable/data/test-flipable.qml686
-rw-r--r--tests/auto/declarative/visual/qmlgraphicsflipable/test-flipable.qml12
-rw-r--r--tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview.0.pngbin0 -> 2321 bytes
-rw-r--r--tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview.1.pngbin0 -> 2389 bytes
-rw-r--r--tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview.2.pngbin0 -> 2315 bytes
-rw-r--r--tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview.3.pngbin0 -> 2372 bytes
-rw-r--r--tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview.4.pngbin0 -> 2327 bytes
-rw-r--r--tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview.qml1495
-rw-r--r--tests/auto/declarative/visual/qmlgraphicspathview/test-pathview.qml60
33 files changed, 2700 insertions, 743 deletions
diff --git a/tests/auto/declarative/declarative.pro b/tests/auto/declarative/declarative.pro
index 413eb1e..134ae1b 100644
--- a/tests/auto/declarative/declarative.pro
+++ b/tests/auto/declarative/declarative.pro
@@ -25,6 +25,7 @@ SUBDIRS += \
qmlgraphicsitem \ # Cover
qmlgraphicsborderimage \ # Cover
qmlgraphicsparticles \ # Cover
+ qmlgraphicspositioners \ # Cover
qmlgraphicstext \ # Cover
qmlgraphicstextedit \ # Cover
qmlgraphicstextinput \ # Cover
diff --git a/tests/auto/declarative/layouts/data/layouts.qml b/tests/auto/declarative/layouts/data/layouts.qml
new file mode 100644
index 0000000..ccc8cfe
--- /dev/null
+++ b/tests/auto/declarative/layouts/data/layouts.qml
@@ -0,0 +1,34 @@
+import Qt 4.6
+
+Item {
+ id: resizable
+ width:300
+ height:300
+
+ GraphicsObjectContainer {
+ anchors.fill:parent
+
+ QGraphicsWidget {
+ size.width:parent.width
+ size.height:parent.height
+
+ layout: QGraphicsLinearLayout {
+ spacing: 0
+ LayoutItem {
+ objectName: "left"
+ minimumSize: "100x100"
+ maximumSize: "300x300"
+ preferredSize: "100x100"
+ Rectangle { objectName: "yellowRect"; color: "yellow"; anchors.fill: parent }
+ }
+ LayoutItem {
+ objectName: "right"
+ minimumSize: "100x100"
+ maximumSize: "400x400"
+ preferredSize: "200x200"
+ Rectangle { objectName: "greenRect"; color: "green"; anchors.fill: parent }
+ }
+ }
+ }
+ }
+}
diff --git a/tests/auto/declarative/layouts/tst_layouts.cpp b/tests/auto/declarative/layouts/tst_layouts.cpp
index c0c067a..f619b57 100644
--- a/tests/auto/declarative/layouts/tst_layouts.cpp
+++ b/tests/auto/declarative/layouts/tst_layouts.cpp
@@ -41,7 +41,7 @@
#include <QtTest/QtTest>
#include <private/qlistmodelinterface_p.h>
#include <qmlview.h>
-#include <private/qmlgraphicsrectangle_p.h>
+#include <private/qmlgraphicslayoutitem_p.h>
#include <qmlexpression.h>
class tst_QmlGraphicsLayouts : public QObject
@@ -51,17 +51,9 @@ public:
tst_QmlGraphicsLayouts();
private slots:
- void test_horizontal();
- void test_horizontal_spacing();
- void test_horizontal_animated();
- void test_vertical();
- void test_vertical_spacing();
- void test_vertical_animated();
- void test_grid();
- void test_grid_spacing();
- void test_grid_animated();
+ void test_qml();//GraphicsLayout set up in Qml
+ void test_cpp();//GraphicsLayout set up in C++
- void test_repeater();
private:
QmlView *createView(const QString &filename);
};
@@ -70,385 +62,61 @@ tst_QmlGraphicsLayouts::tst_QmlGraphicsLayouts()
{
}
-void tst_QmlGraphicsLayouts::test_horizontal()
+void tst_QmlGraphicsLayouts::test_qml()
{
- QmlView *canvas = createView(SRCDIR "/data/horizontal.qml");
+ QmlView *canvas = createView(SRCDIR "/data/layouts.qml");
canvas->execute();
qApp->processEvents();
-
- QmlGraphicsRectangle *one = canvas->root()->findChild<QmlGraphicsRectangle*>("one");
- QVERIFY(one != 0);
-
- QmlGraphicsRectangle *two = canvas->root()->findChild<QmlGraphicsRectangle*>("two");
- QVERIFY(two != 0);
-
- QmlGraphicsRectangle *three = canvas->root()->findChild<QmlGraphicsRectangle*>("three");
- QVERIFY(three != 0);
-
- QCOMPARE(one->x(), 0.0);
- QCOMPARE(one->y(), 0.0);
- QCOMPARE(two->x(), 50.0);
- QCOMPARE(two->y(), 0.0);
- QCOMPARE(three->x(), 70.0);
- QCOMPARE(three->y(), 0.0);
+ QmlGraphicsLayoutItem *left = qobject_cast<QmlGraphicsLayoutItem*>(canvas->root()->findChild<QmlGraphicsItem*>("left"));
+ QVERIFY(left != 0);
+
+ QmlGraphicsLayoutItem *right = qobject_cast<QmlGraphicsLayoutItem*>(canvas->root()->findChild<QmlGraphicsItem*>("right"));
+ QVERIFY(right != 0);
+
+ qreal gvMargin = 9.0;
+ //Preferred Size
+ canvas->root()->setWidth(300 + 2*gvMargin);
+ canvas->root()->setHeight(300 + 2*gvMargin);
+
+ QCOMPARE(left->x(), gvMargin);
+ QCOMPARE(left->y(), gvMargin);
+ QCOMPARE(left->width(), 100.0);
+ QCOMPARE(left->height(), 300.0);
+
+ QCOMPARE(right->x(), 100.0 + gvMargin);
+ QCOMPARE(right->y(), 0.0 + gvMargin);
+ QCOMPARE(right->width(), 200.0);
+ QCOMPARE(right->height(), 300.0);
+
+ //Minimum Size
+ canvas->root()->setWidth(10+2*gvMargin);
+ canvas->root()->setHeight(10+2*gvMargin);
+
+ QCOMPARE(left->x(), gvMargin);
+ QCOMPARE(left->width(), 100.0);
+ QCOMPARE(left->height(), 100.0);
+
+ QCOMPARE(right->x(), 100.0 + gvMargin);
+ QCOMPARE(right->width(), 100.0);
+ QCOMPARE(right->height(), 100.0);
+
+ //Maximum Size
+ canvas->root()->setWidth(1000 + 2*gvMargin);
+ canvas->root()->setHeight(1000 + 2*gvMargin);
+
+ QCOMPARE(left->x(), gvMargin);
+ QCOMPARE(left->width(), 300.0);
+ QCOMPARE(left->height(), 300.0);
+
+ QCOMPARE(right->x(), 300.0 + gvMargin);
+ QCOMPARE(right->width(), 400.0);
+ QCOMPARE(right->height(), 400.0);
}
-void tst_QmlGraphicsLayouts::test_horizontal_spacing()
+void tst_QmlGraphicsLayouts::test_cpp()
{
- QmlView *canvas = createView(SRCDIR "/data/horizontal-spacing.qml");
-
- canvas->execute();
- qApp->processEvents();
-
- QmlGraphicsRectangle *one = canvas->root()->findChild<QmlGraphicsRectangle*>("one");
- QVERIFY(one != 0);
-
- QmlGraphicsRectangle *two = canvas->root()->findChild<QmlGraphicsRectangle*>("two");
- QVERIFY(two != 0);
-
- QmlGraphicsRectangle *three = canvas->root()->findChild<QmlGraphicsRectangle*>("three");
- QVERIFY(three != 0);
-
- QCOMPARE(one->x(), 0.0);
- QCOMPARE(one->y(), 0.0);
- QCOMPARE(two->x(), 60.0);
- QCOMPARE(two->y(), 0.0);
- QCOMPARE(three->x(), 90.0);
- QCOMPARE(three->y(), 0.0);
-}
-
-void tst_QmlGraphicsLayouts::test_horizontal_animated()
-{
- QmlView *canvas = createView(SRCDIR "/data/horizontal-animated.qml");
-
- canvas->execute();
- qApp->processEvents();
-
- QTest::qWait(0);//Let the animation start
- //Note that one and three animate in
- QmlGraphicsRectangle *one = canvas->root()->findChild<QmlGraphicsRectangle*>("one");
- QVERIFY(one != 0);
- QCOMPARE(one->x(), -100.0);
-
- QmlGraphicsRectangle *two = canvas->root()->findChild<QmlGraphicsRectangle*>("two");
- QVERIFY(two != 0);
- QCOMPARE(two->x(), 0.0);
-
- QmlGraphicsRectangle *three = canvas->root()->findChild<QmlGraphicsRectangle*>("three");
- QVERIFY(three != 0);
- QCOMPARE(three->x(), -100.0);
-
- QTest::qWait(300);//Let the animation complete
-
- QCOMPARE(one->x(), 0.0);
- QCOMPARE(one->y(), 0.0);
- QCOMPARE(two->opacity(), 0.0);
- QCOMPARE(two->x(), 0.0);
- QCOMPARE(two->y(), 0.0);
- QCOMPARE(three->x(), 50.0);
- QCOMPARE(three->y(), 0.0);
-
- //Add 'two'
- two->setOpacity(1.0);
- QCOMPARE(two->opacity(), 1.0);
- QTest::qWait(0);//Let the animation start
- QCOMPARE(two->x(), -100.0);
- QCOMPARE(three->x(), 50.0);
- QTest::qWait(300);//Let the animation complete
- QCOMPARE(two->x(), 50.0);
- QCOMPARE(three->x(), 100.0);
-
- //Remove 'two'
- two->setOpacity(0.0);
- QCOMPARE(two->opacity(), 0.0);
- QCOMPARE(two->x(), 50.0);
- QCOMPARE(three->x(), 100.0);
- QTest::qWait(300);//Let the animation complete
- QCOMPARE(two->x(), 50.0);
- QCOMPARE(three->x(), 50.0);
-}
-
-void tst_QmlGraphicsLayouts::test_vertical()
-{
- QmlView *canvas = createView(SRCDIR "/data/vertical.qml");
-
- canvas->execute();
- qApp->processEvents();
-
- QmlGraphicsRectangle *one = canvas->root()->findChild<QmlGraphicsRectangle*>("one");
- QVERIFY(one != 0);
-
- QmlGraphicsRectangle *two = canvas->root()->findChild<QmlGraphicsRectangle*>("two");
- QVERIFY(two != 0);
-
- QmlGraphicsRectangle *three = canvas->root()->findChild<QmlGraphicsRectangle*>("three");
- QVERIFY(three != 0);
-
- QCOMPARE(one->x(), 0.0);
- QCOMPARE(one->y(), 0.0);
- QCOMPARE(two->x(), 0.0);
- QCOMPARE(two->y(), 50.0);
- QCOMPARE(three->x(), 0.0);
- QCOMPARE(three->y(), 60.0);
-}
-
-void tst_QmlGraphicsLayouts::test_vertical_spacing()
-{
- QmlView *canvas = createView(SRCDIR "/data/vertical-spacing.qml");
-
- canvas->execute();
- qApp->processEvents();
-
- QmlGraphicsRectangle *one = canvas->root()->findChild<QmlGraphicsRectangle*>("one");
- QVERIFY(one != 0);
-
- QmlGraphicsRectangle *two = canvas->root()->findChild<QmlGraphicsRectangle*>("two");
- QVERIFY(two != 0);
-
- QmlGraphicsRectangle *three = canvas->root()->findChild<QmlGraphicsRectangle*>("three");
- QVERIFY(three != 0);
-
- QCOMPARE(one->x(), 0.0);
- QCOMPARE(one->y(), 0.0);
- QCOMPARE(two->x(), 0.0);
- QCOMPARE(two->y(), 60.0);
- QCOMPARE(three->x(), 0.0);
- QCOMPARE(three->y(), 80.0);
-}
-
-void tst_QmlGraphicsLayouts::test_vertical_animated()
-{
- QmlView *canvas = createView(SRCDIR "/data/vertical-animated.qml");
-
- canvas->execute();
- qApp->processEvents();
-
- QTest::qWait(0);//Let the animation start
- //Note that one and three animate in
- QmlGraphicsRectangle *one = canvas->root()->findChild<QmlGraphicsRectangle*>("one");
- QVERIFY(one != 0);
- QCOMPARE(one->y(), -100.0);
-
- QmlGraphicsRectangle *two = canvas->root()->findChild<QmlGraphicsRectangle*>("two");
- QVERIFY(two != 0);
- QCOMPARE(two->y(), 0.0);
-
- QmlGraphicsRectangle *three = canvas->root()->findChild<QmlGraphicsRectangle*>("three");
- QVERIFY(three != 0);
- QCOMPARE(three->y(), -100.0);
-
- QTest::qWait(300);//Let the animation complete
-
- QCOMPARE(one->y(), 0.0);
- QCOMPARE(one->x(), 0.0);
- QCOMPARE(two->opacity(), 0.0);
- QCOMPARE(two->y(), 0.0);
- QCOMPARE(two->x(), 0.0);
- QCOMPARE(three->y(), 50.0);
- QCOMPARE(three->x(), 0.0);
-
- //Add 'two'
- two->setOpacity(1.0);
- QCOMPARE(two->opacity(), 1.0);
- QTest::qWait(0);//Let the animation start
- QCOMPARE(two->y(), -100.0);
- QCOMPARE(three->y(), 50.0);
- QTest::qWait(300);//Let the animation complete
- QCOMPARE(two->y(), 50.0);
- QCOMPARE(three->y(), 100.0);
-
- //Remove 'two'
- two->setOpacity(0.0);
- QCOMPARE(two->opacity(), 0.0);
- QCOMPARE(two->y(), 50.0);
- QCOMPARE(three->y(), 100.0);
- QTest::qWait(300);//Let the animation complete
- QCOMPARE(two->y(), 50.0);
- QCOMPARE(three->y(), 50.0);
-}
-
-void tst_QmlGraphicsLayouts::test_grid()
-{
- QmlView *canvas = createView("data/grid.qml");
-
- canvas->execute();
- qApp->processEvents();
-
- QmlGraphicsRectangle *one = canvas->root()->findChild<QmlGraphicsRectangle*>("one");
- QVERIFY(one != 0);
- QmlGraphicsRectangle *two = canvas->root()->findChild<QmlGraphicsRectangle*>("two");
- QVERIFY(two != 0);
- QmlGraphicsRectangle *three = canvas->root()->findChild<QmlGraphicsRectangle*>("three");
- QVERIFY(three != 0);
- QmlGraphicsRectangle *four = canvas->root()->findChild<QmlGraphicsRectangle*>("four");
- QVERIFY(four != 0);
- QmlGraphicsRectangle *five = canvas->root()->findChild<QmlGraphicsRectangle*>("five");
- QVERIFY(five != 0);
-
- QCOMPARE(one->x(), 0.0);
- QCOMPARE(one->y(), 0.0);
- QCOMPARE(two->x(), 50.0);
- QCOMPARE(two->y(), 0.0);
- QCOMPARE(three->x(), 70.0);
- QCOMPARE(three->y(), 0.0);
- QCOMPARE(four->x(), 0.0);
- QCOMPARE(four->y(), 50.0);
- QCOMPARE(five->x(), 50.0);
- QCOMPARE(five->y(), 50.0);
-}
-
-void tst_QmlGraphicsLayouts::test_grid_spacing()
-{
- QmlView *canvas = createView("data/grid-spacing.qml");
-
- canvas->execute();
- qApp->processEvents();
-
- QmlGraphicsRectangle *one = canvas->root()->findChild<QmlGraphicsRectangle*>("one");
- QVERIFY(one != 0);
- QmlGraphicsRectangle *two = canvas->root()->findChild<QmlGraphicsRectangle*>("two");
- QVERIFY(two != 0);
- QmlGraphicsRectangle *three = canvas->root()->findChild<QmlGraphicsRectangle*>("three");
- QVERIFY(three != 0);
- QmlGraphicsRectangle *four = canvas->root()->findChild<QmlGraphicsRectangle*>("four");
- QVERIFY(four != 0);
- QmlGraphicsRectangle *five = canvas->root()->findChild<QmlGraphicsRectangle*>("five");
- QVERIFY(five != 0);
-
- QCOMPARE(one->x(), 0.0);
- QCOMPARE(one->y(), 0.0);
- QCOMPARE(two->x(), 54.0);
- QCOMPARE(two->y(), 0.0);
- QCOMPARE(three->x(), 78.0);
- QCOMPARE(three->y(), 0.0);
- QCOMPARE(four->x(), 0.0);
- QCOMPARE(four->y(), 54.0);
- QCOMPARE(five->x(), 54.0);
- QCOMPARE(five->y(), 54.0);
-}
-
-void tst_QmlGraphicsLayouts::test_grid_animated()
-{
- QmlView *canvas = createView(SRCDIR "/data/grid-animated.qml");
- canvas->execute();
- qApp->processEvents();
-
- QTest::qWait(0);//Let the animation start
- //Note that all but two animate in
- QmlGraphicsRectangle *one = canvas->root()->findChild<QmlGraphicsRectangle*>("one");
- QVERIFY(one != 0);
- QCOMPARE(one->x(), -100.0);
- QCOMPARE(one->y(), -100.0);
-
- QmlGraphicsRectangle *two = canvas->root()->findChild<QmlGraphicsRectangle*>("two");
- QVERIFY(two != 0);
- QCOMPARE(two->x(), 0.0);
- QCOMPARE(two->y(), 0.0);
-
- QmlGraphicsRectangle *three = canvas->root()->findChild<QmlGraphicsRectangle*>("three");
- QVERIFY(three != 0);
- QCOMPARE(three->x(), -100.0);
- QCOMPARE(three->y(), -100.0);
-
- QmlGraphicsRectangle *four = canvas->root()->findChild<QmlGraphicsRectangle*>("four");
- QVERIFY(four != 0);
- QCOMPARE(four->x(), -100.0);
- QCOMPARE(four->y(), -100.0);
-
- QmlGraphicsRectangle *five = canvas->root()->findChild<QmlGraphicsRectangle*>("five");
- QVERIFY(five != 0);
- QCOMPARE(five->x(), -100.0);
- QCOMPARE(five->y(), -100.0);
-
- QTest::qWait(300);//Let the animation complete
-
- QCOMPARE(one->y(), 0.0);
- QCOMPARE(one->x(), 0.0);
- QCOMPARE(two->opacity(), 0.0);
- QCOMPARE(two->y(), 0.0);
- QCOMPARE(two->x(), 0.0);
- QCOMPARE(three->y(), 0.0);
- QCOMPARE(three->x(), 50.0);
- QCOMPARE(four->y(), 0.0);
- QCOMPARE(four->x(), 100.0);
- QCOMPARE(five->y(), 50.0);
- QCOMPARE(five->x(), 0.0);
-
- //Add 'two'
- two->setOpacity(1.0);
- QCOMPARE(two->opacity(), 1.0);
- QTest::qWait(0);//Let the animation start
- QCOMPARE(two->x(), -100.0);
- QCOMPARE(two->y(), -100.0);
- QCOMPARE(one->x(), 0.0);
- QCOMPARE(one->y(), 0.0);
- QCOMPARE(three->x(), 50.0);
- QCOMPARE(three->y(), 0.0);
- QCOMPARE(four->x(), 100.0);
- QCOMPARE(four->y(), 0.0);
- QCOMPARE(five->x(), 0.0);
- QCOMPARE(five->y(), 50.0);
- QTest::qWait(300);//Let the animation complete
- QCOMPARE(two->x(), 50.0);
- QCOMPARE(two->y(), 0.0);
- QCOMPARE(one->x(), 0.0);
- QCOMPARE(one->y(), 0.0);
- QCOMPARE(three->x(), 100.0);
- QCOMPARE(three->y(), 0.0);
- QCOMPARE(four->x(), 0.0);
- QCOMPARE(four->y(), 50.0);
- QCOMPARE(five->x(), 50.0);
- QCOMPARE(five->y(), 50.0);
-
- //Remove 'two'
- two->setOpacity(0.0);
- QCOMPARE(two->opacity(), 0.0);
- QCOMPARE(two->x(), 50.0);
- QCOMPARE(two->y(), 0.0);
- QCOMPARE(one->x(), 0.0);
- QCOMPARE(one->y(), 0.0);
- QCOMPARE(three->x(), 100.0);
- QCOMPARE(three->y(), 0.0);
- QCOMPARE(four->x(), 0.0);
- QCOMPARE(four->y(), 50.0);
- QCOMPARE(five->x(), 50.0);
- QCOMPARE(five->y(), 50.0);
- QTest::qWait(300);//Let the animation complete
- QCOMPARE(two->x(), 50.0);
- QCOMPARE(two->y(), 0.0);
- QCOMPARE(one->x(), 0.0);
- QCOMPARE(one->y(), 0.0);
- QCOMPARE(three->x(), 50.0);
- QCOMPARE(three->y(), 0.0);
- QCOMPARE(four->x(), 100.0);
- QCOMPARE(four->y(), 0.0);
- QCOMPARE(five->x(), 0.0);
- QCOMPARE(five->y(), 50.0);
-}
-
-void tst_QmlGraphicsLayouts::test_repeater()
-{
- QmlView *canvas = createView("data/repeater.qml");
-
- canvas->execute();
- qApp->processEvents();
-
- QmlGraphicsRectangle *one = canvas->root()->findChild<QmlGraphicsRectangle*>("one");
- QVERIFY(one != 0);
-
- QmlGraphicsRectangle *two = canvas->root()->findChild<QmlGraphicsRectangle*>("two");
- QVERIFY(two != 0);
-
- QmlGraphicsRectangle *three = canvas->root()->findChild<QmlGraphicsRectangle*>("three");
- QVERIFY(three != 0);
-
- QCOMPARE(one->x(), 0.0);
- QCOMPARE(one->y(), 0.0);
- QCOMPARE(two->x(), 50.0);
- QCOMPARE(two->y(), 0.0);
- QCOMPARE(three->x(), 100.0);
- QCOMPARE(three->y(), 0.0);
+ //TODO: Waiting on QT-2407 to write this test
}
QmlView *tst_QmlGraphicsLayouts::createView(const QString &filename)
diff --git a/tests/auto/declarative/qmlgraphicsgridview/data/gridview-initCurrent.qml b/tests/auto/declarative/qmlgraphicsgridview/data/gridview-initCurrent.qml
new file mode 100644
index 0000000..d9e9f27
--- /dev/null
+++ b/tests/auto/declarative/qmlgraphicsgridview/data/gridview-initCurrent.qml
@@ -0,0 +1,51 @@
+import Qt 4.6
+
+Rectangle {
+ width: 240
+ height: 320
+ color: "#ffffff"
+ resources: [
+ Component {
+ id: myDelegate
+ Rectangle {
+ id: wrapper
+ objectName: "wrapper"
+ width: 80
+ height: 60
+ border.color: "blue"
+ Text {
+ text: index
+ }
+ Text {
+ x: 40
+ text: wrapper.x + ", " + wrapper.y
+ }
+ Text {
+ y: 20
+ id: textName
+ objectName: "textName"
+ text: name
+ }
+ Text {
+ y: 40
+ id: textNumber
+ objectName: "textNumber"
+ text: number
+ }
+ color: GridView.isCurrentItem ? "lightsteelblue" : "white"
+ }
+ }
+ ]
+ GridView {
+ id: grid
+ objectName: "grid"
+ focus: true
+ width: 240
+ height: 320
+ currentIndex: 5
+ cellWidth: 80
+ cellHeight: 60
+ model: testModel
+ delegate: myDelegate
+ }
+}
diff --git a/tests/auto/declarative/qmlgraphicsgridview/tst_qmlgraphicsgridview.cpp b/tests/auto/declarative/qmlgraphicsgridview/tst_qmlgraphicsgridview.cpp
index c6ea25a..7c32d14 100644
--- a/tests/auto/declarative/qmlgraphicsgridview/tst_qmlgraphicsgridview.cpp
+++ b/tests/auto/declarative/qmlgraphicsgridview/tst_qmlgraphicsgridview.cpp
@@ -53,6 +53,7 @@ public:
tst_QmlGraphicsGridView();
private slots:
+ void currentIndex();
void items();
void changed();
void inserted();
@@ -168,15 +169,6 @@ void tst_QmlGraphicsGridView::items()
QCOMPARE(number->text(), model.number(i));
}
- gridview->moveCurrentIndexRight();
- QCOMPARE(gridview->currentIndex(), 1);
- gridview->moveCurrentIndexDown();
- QCOMPARE(gridview->currentIndex(), 4);
- gridview->moveCurrentIndexUp();
- QCOMPARE(gridview->currentIndex(), 1);
- gridview->moveCurrentIndexLeft();
- QCOMPARE(gridview->currentIndex(), 0);
-
// set an empty model and confirm that items are destroyed
TestModel model2;
ctxt->setContextProperty("testModel", &model2);
@@ -515,6 +507,107 @@ void tst_QmlGraphicsGridView::moved()
delete canvas;
}
+void tst_QmlGraphicsGridView::currentIndex()
+{
+ TestModel model;
+ for (int i = 0; i < 30; i++)
+ model.addItem("Item" + QString::number(i), QString::number(i));
+
+ QmlView *canvas = new QmlView(0);
+ canvas->setFixedSize(240,320);
+
+ QmlContext *ctxt = canvas->rootContext();
+ ctxt->setContextProperty("testModel", &model);
+
+ QString filename(SRCDIR "/data/gridview-initCurrent.qml");
+ QFile file(filename);
+ file.open(QFile::ReadOnly);
+ QString qml = file.readAll();
+ canvas->setQml(qml, filename);
+
+ canvas->execute();
+ qApp->processEvents();
+
+ QmlGraphicsGridView *gridview = findItem<QmlGraphicsGridView>(canvas->root(), "grid");
+ QVERIFY(gridview != 0);
+
+ QmlGraphicsItem *viewport = gridview->viewport();
+ QVERIFY(viewport != 0);
+
+ // current item should be third item
+ QCOMPARE(gridview->currentIndex(), 5);
+ QCOMPARE(gridview->currentItem(), findItem<QmlGraphicsItem>(viewport, "wrapper", 5));
+
+ gridview->moveCurrentIndexRight();
+ QCOMPARE(gridview->currentIndex(), 6);
+ gridview->moveCurrentIndexDown();
+ QCOMPARE(gridview->currentIndex(), 9);
+ gridview->moveCurrentIndexUp();
+ QCOMPARE(gridview->currentIndex(), 6);
+ gridview->moveCurrentIndexLeft();
+ QCOMPARE(gridview->currentIndex(), 5);
+
+ // no wrap
+ gridview->setCurrentIndex(0);
+ QCOMPARE(gridview->currentIndex(), 0);
+
+ gridview->moveCurrentIndexUp();
+ QCOMPARE(gridview->currentIndex(), 0);
+
+ gridview->moveCurrentIndexLeft();
+ QCOMPARE(gridview->currentIndex(), 0);
+
+ gridview->setCurrentIndex(model.count()-1);
+ QTest::qWait(500);
+ QCOMPARE(gridview->currentIndex(), model.count()-1);
+
+ gridview->moveCurrentIndexRight();
+ QCOMPARE(gridview->currentIndex(), model.count()-1);
+
+ gridview->moveCurrentIndexDown();
+ QCOMPARE(gridview->currentIndex(), model.count()-1);
+
+ // with wrap
+ gridview->setWrapEnabled(true);
+
+ gridview->setCurrentIndex(0);
+ QCOMPARE(gridview->currentIndex(), 0);
+ QTest::qWait(500);
+
+ gridview->moveCurrentIndexLeft();
+ QCOMPARE(gridview->currentIndex(), model.count()-1);
+
+ QTest::qWait(500);
+ QCOMPARE(gridview->viewportY(), 279.0);
+
+ gridview->moveCurrentIndexRight();
+ QCOMPARE(gridview->currentIndex(), 0);
+
+ QTest::qWait(500);
+ QCOMPARE(gridview->viewportY(), 0.0);
+
+ // Test keys
+ canvas->show();
+ qApp->processEvents();
+
+ QEvent wa(QEvent::WindowActivate);
+ QApplication::sendEvent(canvas, &wa);
+ QFocusEvent fe(QEvent::FocusIn);
+ QApplication::sendEvent(canvas, &fe);
+
+ QKeyEvent key(QEvent::KeyPress, Qt::Key_Down, Qt::NoModifier, "", false, 1);
+ QApplication::sendEvent(canvas, &key);
+ QVERIFY(key.isAccepted());
+ QCOMPARE(gridview->currentIndex(), 3);
+
+ key = QKeyEvent(QEvent::KeyPress, Qt::Key_Up, Qt::NoModifier, "", false, 1);
+ QApplication::sendEvent(canvas, &key);
+ QVERIFY(key.isAccepted());
+ QCOMPARE(gridview->currentIndex(), 0);
+
+ delete canvas;
+}
+
QmlView *tst_QmlGraphicsGridView::createView(const QString &filename)
{
QmlView *canvas = new QmlView(0);
diff --git a/tests/auto/declarative/qmlgraphicslistview/data/itemlist.qml b/tests/auto/declarative/qmlgraphicslistview/data/itemlist.qml
new file mode 100644
index 0000000..36d3501
--- /dev/null
+++ b/tests/auto/declarative/qmlgraphicslistview/data/itemlist.qml
@@ -0,0 +1,43 @@
+// This example demonstrates placing items in a view using
+// a VisualItemModel
+
+import Qt 4.6
+
+Rectangle {
+ color: "lightgray"
+ width: 240
+ height: 320
+
+ VisualItemModel {
+ id: itemModel
+ objectName: "itemModel"
+ Rectangle {
+ objectName: "item1"
+ height: view.height; width: view.width; color: "#FFFEF0"
+ Text { text: "Page 1"; font.bold: true; anchors.centerIn: parent }
+ }
+ Rectangle {
+ objectName: "item2"
+ height: view.height; width: view.width; color: "#F0FFF7"
+ Text { text: "Page 2"; font.bold: true; anchors.centerIn: parent }
+ }
+ Rectangle {
+ objectName: "item3"
+ height: view.height; width: view.width; color: "#F4F0FF"
+ Text { text: "Page 3"; font.bold: true; anchors.centerIn: parent }
+ }
+ }
+
+ ListView {
+ id: view
+ objectName: "view"
+ anchors.fill: parent
+ anchors.bottomMargin: 30
+ model: itemModel
+ preferredHighlightBegin: 0
+ preferredHighlightEnd: 0
+ highlightRangeMode: "StrictlyEnforceRange"
+ orientation: ListView.Horizontal
+ flickDeceleration: 2000
+ }
+}
diff --git a/tests/auto/declarative/qmlgraphicslistview/data/listview.qml b/tests/auto/declarative/qmlgraphicslistview/data/listview.qml
index 93a3ae3..3ef1be1 100644
--- a/tests/auto/declarative/qmlgraphicslistview/data/listview.qml
+++ b/tests/auto/declarative/qmlgraphicslistview/data/listview.qml
@@ -32,6 +32,11 @@ Rectangle {
text: wrapper.y
}
color: ListView.isCurrentItem ? "lightsteelblue" : "white"
+ ListView.onRemove: SequentialAnimation {
+ PropertyAction { target: wrapper.ListView; property: "delayRemove"; value: true }
+ NumberAnimation { target: wrapper; property: "scale"; to: 0; duration: 250; easing: "easeInOutQuad" }
+ PropertyAction { target: wrapper.ListView; property: "delayRemove"; value: false }
+ }
}
}
]
diff --git a/tests/auto/declarative/qmlgraphicslistview/tst_qmlgraphicslistview.cpp b/tests/auto/declarative/qmlgraphicslistview/tst_qmlgraphicslistview.cpp
index de26635..afef47a 100644
--- a/tests/auto/declarative/qmlgraphicslistview/tst_qmlgraphicslistview.cpp
+++ b/tests/auto/declarative/qmlgraphicslistview/tst_qmlgraphicslistview.cpp
@@ -43,6 +43,7 @@
#include <qmlview.h>
#include <private/qmlgraphicslistview_p.h>
#include <private/qmlgraphicstext_p.h>
+#include <private/qmlgraphicsvisualitemmodel_p.h>
#include <qmlcontext.h>
#include <qmlexpression.h>
@@ -53,6 +54,7 @@ public:
tst_QmlGraphicsListView();
private slots:
+ void itemList();
// Test both QListModelInterface and QAbstractItemModel model types
void qListModelInterface_items();
void qAbstractItemModel_items();
@@ -844,6 +846,39 @@ void tst_QmlGraphicsListView::currentIndex()
delete canvas;
}
+void tst_QmlGraphicsListView::itemList()
+{
+ QmlView *canvas = createView(SRCDIR "/data/itemlist.qml");
+
+ canvas->execute();
+ qApp->processEvents();
+
+ QmlGraphicsListView *listview = findItem<QmlGraphicsListView>(canvas->root(), "view");
+ QVERIFY(listview != 0);
+
+ QmlGraphicsItem *viewport = listview->viewport();
+ QVERIFY(viewport != 0);
+
+ QmlGraphicsVisualItemModel *model = canvas->root()->findChild<QmlGraphicsVisualItemModel*>("itemModel");
+ QVERIFY(model != 0);
+
+ QVERIFY(model->count() == 3);
+ QCOMPARE(listview->currentIndex(), 0);
+
+ QmlGraphicsItem *item = findItem<QmlGraphicsItem>(viewport, "item1");
+ QVERIFY(item);
+ QCOMPARE(item->x(), 0.0);
+
+ listview->setCurrentIndex(2);
+ QTest::qWait(1000);
+
+ item = findItem<QmlGraphicsItem>(viewport, "item3");
+ QVERIFY(item);
+ QCOMPARE(item->x(), 480.0);
+
+ delete canvas;
+}
+
void tst_QmlGraphicsListView::qListModelInterface_items()
{
items<TestModel>();
diff --git a/tests/auto/declarative/layouts/data/grid-animated.qml b/tests/auto/declarative/qmlgraphicspositioners/data/grid-animated.qml
index 6b128ce..6b128ce 100644
--- a/tests/auto/declarative/layouts/data/grid-animated.qml
+++ b/tests/auto/declarative/qmlgraphicspositioners/data/grid-animated.qml
diff --git a/tests/auto/declarative/layouts/data/grid-spacing.qml b/tests/auto/declarative/qmlgraphicspositioners/data/grid-spacing.qml
index 5b4a30d..5b4a30d 100644
--- a/tests/auto/declarative/layouts/data/grid-spacing.qml
+++ b/tests/auto/declarative/qmlgraphicspositioners/data/grid-spacing.qml
diff --git a/tests/auto/declarative/layouts/data/grid.qml b/tests/auto/declarative/qmlgraphicspositioners/data/grid.qml
index 830df6a..830df6a 100644
--- a/tests/auto/declarative/layouts/data/grid.qml
+++ b/tests/auto/declarative/qmlgraphicspositioners/data/grid.qml
diff --git a/tests/auto/declarative/layouts/data/horizontal-animated.qml b/tests/auto/declarative/qmlgraphicspositioners/data/horizontal-animated.qml
index c29d6df..c29d6df 100644
--- a/tests/auto/declarative/layouts/data/horizontal-animated.qml
+++ b/tests/auto/declarative/qmlgraphicspositioners/data/horizontal-animated.qml
diff --git a/tests/auto/declarative/layouts/data/horizontal-spacing.qml b/tests/auto/declarative/qmlgraphicspositioners/data/horizontal-spacing.qml
index 32bf775..32bf775 100644
--- a/tests/auto/declarative/layouts/data/horizontal-spacing.qml
+++ b/tests/auto/declarative/qmlgraphicspositioners/data/horizontal-spacing.qml
diff --git a/tests/auto/declarative/layouts/data/horizontal.qml b/tests/auto/declarative/qmlgraphicspositioners/data/horizontal.qml
index 06ae151..06ae151 100644
--- a/tests/auto/declarative/layouts/data/horizontal.qml
+++ b/tests/auto/declarative/qmlgraphicspositioners/data/horizontal.qml
diff --git a/tests/auto/declarative/layouts/data/repeater.qml b/tests/auto/declarative/qmlgraphicspositioners/data/repeater.qml
index 2bc5e94..2bc5e94 100644
--- a/tests/auto/declarative/layouts/data/repeater.qml
+++ b/tests/auto/declarative/qmlgraphicspositioners/data/repeater.qml
diff --git a/tests/auto/declarative/layouts/data/vertical-animated.qml b/tests/auto/declarative/qmlgraphicspositioners/data/vertical-animated.qml
index fcbc5f7..fcbc5f7 100644
--- a/tests/auto/declarative/layouts/data/vertical-animated.qml
+++ b/tests/auto/declarative/qmlgraphicspositioners/data/vertical-animated.qml
diff --git a/tests/auto/declarative/layouts/data/vertical-spacing.qml b/tests/auto/declarative/qmlgraphicspositioners/data/vertical-spacing.qml
index 69a8256..69a8256 100644
--- a/tests/auto/declarative/layouts/data/vertical-spacing.qml
+++ b/tests/auto/declarative/qmlgraphicspositioners/data/vertical-spacing.qml
diff --git a/tests/auto/declarative/layouts/data/vertical.qml b/tests/auto/declarative/qmlgraphicspositioners/data/vertical.qml
index 856c180..856c180 100644
--- a/tests/auto/declarative/layouts/data/vertical.qml
+++ b/tests/auto/declarative/qmlgraphicspositioners/data/vertical.qml
diff --git a/tests/auto/declarative/qmlgraphicspositioners/qmlgraphicspositioners.pro b/tests/auto/declarative/qmlgraphicspositioners/qmlgraphicspositioners.pro
new file mode 100644
index 0000000..d151026
--- /dev/null
+++ b/tests/auto/declarative/qmlgraphicspositioners/qmlgraphicspositioners.pro
@@ -0,0 +1,7 @@
+load(qttest_p4)
+contains(QT_CONFIG,declarative): QT += declarative
+SOURCES += tst_qmlgraphicspositioners.cpp
+macx:CONFIG -= app_bundle
+
+# Define SRCDIR equal to test's source directory
+DEFINES += SRCDIR=\\\"$$PWD\\\"
diff --git a/tests/auto/declarative/qmlgraphicspositioners/tst_qmlgraphicspositioners.cpp b/tests/auto/declarative/qmlgraphicspositioners/tst_qmlgraphicspositioners.cpp
new file mode 100644
index 0000000..aca3579
--- /dev/null
+++ b/tests/auto/declarative/qmlgraphicspositioners/tst_qmlgraphicspositioners.cpp
@@ -0,0 +1,469 @@
+/****************************************************************************
+**
+** 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 <QtTest/QtTest>
+#include <private/qlistmodelinterface_p.h>
+#include <qmlview.h>
+#include <private/qmlgraphicsrectangle_p.h>
+#include <qmlexpression.h>
+
+class tst_QmlGraphicsPositioners : public QObject
+{
+ Q_OBJECT
+public:
+ tst_QmlGraphicsPositioners();
+
+private slots:
+ void test_horizontal();
+ void test_horizontal_spacing();
+ void test_horizontal_animated();
+ void test_vertical();
+ void test_vertical_spacing();
+ void test_vertical_animated();
+ void test_grid();
+ void test_grid_spacing();
+ void test_grid_animated();
+
+ void test_repeater();
+private:
+ QmlView *createView(const QString &filename);
+};
+
+tst_QmlGraphicsPositioners::tst_QmlGraphicsPositioners()
+{
+}
+
+void tst_QmlGraphicsPositioners::test_horizontal()
+{
+ QmlView *canvas = createView(SRCDIR "/data/horizontal.qml");
+
+ canvas->execute();
+ qApp->processEvents();
+
+ QmlGraphicsRectangle *one = canvas->root()->findChild<QmlGraphicsRectangle*>("one");
+ QVERIFY(one != 0);
+
+ QmlGraphicsRectangle *two = canvas->root()->findChild<QmlGraphicsRectangle*>("two");
+ QVERIFY(two != 0);
+
+ QmlGraphicsRectangle *three = canvas->root()->findChild<QmlGraphicsRectangle*>("three");
+ QVERIFY(three != 0);
+
+ QCOMPARE(one->x(), 0.0);
+ QCOMPARE(one->y(), 0.0);
+ QCOMPARE(two->x(), 50.0);
+ QCOMPARE(two->y(), 0.0);
+ QCOMPARE(three->x(), 70.0);
+ QCOMPARE(three->y(), 0.0);
+}
+
+void tst_QmlGraphicsPositioners::test_horizontal_spacing()
+{
+ QmlView *canvas = createView(SRCDIR "/data/horizontal-spacing.qml");
+
+ canvas->execute();
+ qApp->processEvents();
+
+ QmlGraphicsRectangle *one = canvas->root()->findChild<QmlGraphicsRectangle*>("one");
+ QVERIFY(one != 0);
+
+ QmlGraphicsRectangle *two = canvas->root()->findChild<QmlGraphicsRectangle*>("two");
+ QVERIFY(two != 0);
+
+ QmlGraphicsRectangle *three = canvas->root()->findChild<QmlGraphicsRectangle*>("three");
+ QVERIFY(three != 0);
+
+ QCOMPARE(one->x(), 0.0);
+ QCOMPARE(one->y(), 0.0);
+ QCOMPARE(two->x(), 60.0);
+ QCOMPARE(two->y(), 0.0);
+ QCOMPARE(three->x(), 90.0);
+ QCOMPARE(three->y(), 0.0);
+}
+
+void tst_QmlGraphicsPositioners::test_horizontal_animated()
+{
+ QmlView *canvas = createView(SRCDIR "/data/horizontal-animated.qml");
+
+ canvas->execute();
+ qApp->processEvents();
+
+ QTest::qWait(0);//Let the animation start
+ //Note that one and three animate in
+ QmlGraphicsRectangle *one = canvas->root()->findChild<QmlGraphicsRectangle*>("one");
+ QVERIFY(one != 0);
+ QCOMPARE(one->x(), -100.0);
+
+ QmlGraphicsRectangle *two = canvas->root()->findChild<QmlGraphicsRectangle*>("two");
+ QVERIFY(two != 0);
+ QCOMPARE(two->x(), 0.0);
+
+ QmlGraphicsRectangle *three = canvas->root()->findChild<QmlGraphicsRectangle*>("three");
+ QVERIFY(three != 0);
+ QCOMPARE(three->x(), -100.0);
+
+ QTest::qWait(300);//Let the animation complete
+
+ QCOMPARE(one->x(), 0.0);
+ QCOMPARE(one->y(), 0.0);
+ QCOMPARE(two->opacity(), 0.0);
+ QCOMPARE(two->x(), 0.0);
+ QCOMPARE(two->y(), 0.0);
+ QCOMPARE(three->x(), 50.0);
+ QCOMPARE(three->y(), 0.0);
+
+ //Add 'two'
+ two->setOpacity(1.0);
+ QCOMPARE(two->opacity(), 1.0);
+ QTest::qWait(0);//Let the animation start
+ QCOMPARE(two->x(), -100.0);
+ QCOMPARE(three->x(), 50.0);
+ QTest::qWait(300);//Let the animation complete
+ QCOMPARE(two->x(), 50.0);
+ QCOMPARE(three->x(), 100.0);
+
+ //Remove 'two'
+ two->setOpacity(0.0);
+ QCOMPARE(two->opacity(), 0.0);
+ QCOMPARE(two->x(), 50.0);
+ QCOMPARE(three->x(), 100.0);
+ QTest::qWait(300);//Let the animation complete
+ QCOMPARE(two->x(), 50.0);
+ QCOMPARE(three->x(), 50.0);
+}
+
+void tst_QmlGraphicsPositioners::test_vertical()
+{
+ QmlView *canvas = createView(SRCDIR "/data/vertical.qml");
+
+ canvas->execute();
+ qApp->processEvents();
+
+ QmlGraphicsRectangle *one = canvas->root()->findChild<QmlGraphicsRectangle*>("one");
+ QVERIFY(one != 0);
+
+ QmlGraphicsRectangle *two = canvas->root()->findChild<QmlGraphicsRectangle*>("two");
+ QVERIFY(two != 0);
+
+ QmlGraphicsRectangle *three = canvas->root()->findChild<QmlGraphicsRectangle*>("three");
+ QVERIFY(three != 0);
+
+ QCOMPARE(one->x(), 0.0);
+ QCOMPARE(one->y(), 0.0);
+ QCOMPARE(two->x(), 0.0);
+ QCOMPARE(two->y(), 50.0);
+ QCOMPARE(three->x(), 0.0);
+ QCOMPARE(three->y(), 60.0);
+}
+
+void tst_QmlGraphicsPositioners::test_vertical_spacing()
+{
+ QmlView *canvas = createView(SRCDIR "/data/vertical-spacing.qml");
+
+ canvas->execute();
+ qApp->processEvents();
+
+ QmlGraphicsRectangle *one = canvas->root()->findChild<QmlGraphicsRectangle*>("one");
+ QVERIFY(one != 0);
+
+ QmlGraphicsRectangle *two = canvas->root()->findChild<QmlGraphicsRectangle*>("two");
+ QVERIFY(two != 0);
+
+ QmlGraphicsRectangle *three = canvas->root()->findChild<QmlGraphicsRectangle*>("three");
+ QVERIFY(three != 0);
+
+ QCOMPARE(one->x(), 0.0);
+ QCOMPARE(one->y(), 0.0);
+ QCOMPARE(two->x(), 0.0);
+ QCOMPARE(two->y(), 60.0);
+ QCOMPARE(three->x(), 0.0);
+ QCOMPARE(three->y(), 80.0);
+}
+
+void tst_QmlGraphicsPositioners::test_vertical_animated()
+{
+ QmlView *canvas = createView(SRCDIR "/data/vertical-animated.qml");
+
+ canvas->execute();
+ qApp->processEvents();
+
+ QTest::qWait(0);//Let the animation start
+ //Note that one and three animate in
+ QmlGraphicsRectangle *one = canvas->root()->findChild<QmlGraphicsRectangle*>("one");
+ QVERIFY(one != 0);
+ QCOMPARE(one->y(), -100.0);
+
+ QmlGraphicsRectangle *two = canvas->root()->findChild<QmlGraphicsRectangle*>("two");
+ QVERIFY(two != 0);
+ QCOMPARE(two->y(), 0.0);
+
+ QmlGraphicsRectangle *three = canvas->root()->findChild<QmlGraphicsRectangle*>("three");
+ QVERIFY(three != 0);
+ QCOMPARE(three->y(), -100.0);
+
+ QTest::qWait(300);//Let the animation complete
+
+ QCOMPARE(one->y(), 0.0);
+ QCOMPARE(one->x(), 0.0);
+ QCOMPARE(two->opacity(), 0.0);
+ QCOMPARE(two->y(), 0.0);
+ QCOMPARE(two->x(), 0.0);
+ QCOMPARE(three->y(), 50.0);
+ QCOMPARE(three->x(), 0.0);
+
+ //Add 'two'
+ two->setOpacity(1.0);
+ QCOMPARE(two->opacity(), 1.0);
+ QTest::qWait(0);//Let the animation start
+ QCOMPARE(two->y(), -100.0);
+ QCOMPARE(three->y(), 50.0);
+ QTest::qWait(300);//Let the animation complete
+ QCOMPARE(two->y(), 50.0);
+ QCOMPARE(three->y(), 100.0);
+
+ //Remove 'two'
+ two->setOpacity(0.0);
+ QCOMPARE(two->opacity(), 0.0);
+ QCOMPARE(two->y(), 50.0);
+ QCOMPARE(three->y(), 100.0);
+ QTest::qWait(300);//Let the animation complete
+ QCOMPARE(two->y(), 50.0);
+ QCOMPARE(three->y(), 50.0);
+}
+
+void tst_QmlGraphicsPositioners::test_grid()
+{
+ QmlView *canvas = createView("data/grid.qml");
+
+ canvas->execute();
+ qApp->processEvents();
+
+ QmlGraphicsRectangle *one = canvas->root()->findChild<QmlGraphicsRectangle*>("one");
+ QVERIFY(one != 0);
+ QmlGraphicsRectangle *two = canvas->root()->findChild<QmlGraphicsRectangle*>("two");
+ QVERIFY(two != 0);
+ QmlGraphicsRectangle *three = canvas->root()->findChild<QmlGraphicsRectangle*>("three");
+ QVERIFY(three != 0);
+ QmlGraphicsRectangle *four = canvas->root()->findChild<QmlGraphicsRectangle*>("four");
+ QVERIFY(four != 0);
+ QmlGraphicsRectangle *five = canvas->root()->findChild<QmlGraphicsRectangle*>("five");
+ QVERIFY(five != 0);
+
+ QCOMPARE(one->x(), 0.0);
+ QCOMPARE(one->y(), 0.0);
+ QCOMPARE(two->x(), 50.0);
+ QCOMPARE(two->y(), 0.0);
+ QCOMPARE(three->x(), 70.0);
+ QCOMPARE(three->y(), 0.0);
+ QCOMPARE(four->x(), 0.0);
+ QCOMPARE(four->y(), 50.0);
+ QCOMPARE(five->x(), 50.0);
+ QCOMPARE(five->y(), 50.0);
+}
+
+void tst_QmlGraphicsPositioners::test_grid_spacing()
+{
+ QmlView *canvas = createView("data/grid-spacing.qml");
+
+ canvas->execute();
+ qApp->processEvents();
+
+ QmlGraphicsRectangle *one = canvas->root()->findChild<QmlGraphicsRectangle*>("one");
+ QVERIFY(one != 0);
+ QmlGraphicsRectangle *two = canvas->root()->findChild<QmlGraphicsRectangle*>("two");
+ QVERIFY(two != 0);
+ QmlGraphicsRectangle *three = canvas->root()->findChild<QmlGraphicsRectangle*>("three");
+ QVERIFY(three != 0);
+ QmlGraphicsRectangle *four = canvas->root()->findChild<QmlGraphicsRectangle*>("four");
+ QVERIFY(four != 0);
+ QmlGraphicsRectangle *five = canvas->root()->findChild<QmlGraphicsRectangle*>("five");
+ QVERIFY(five != 0);
+
+ QCOMPARE(one->x(), 0.0);
+ QCOMPARE(one->y(), 0.0);
+ QCOMPARE(two->x(), 54.0);
+ QCOMPARE(two->y(), 0.0);
+ QCOMPARE(three->x(), 78.0);
+ QCOMPARE(three->y(), 0.0);
+ QCOMPARE(four->x(), 0.0);
+ QCOMPARE(four->y(), 54.0);
+ QCOMPARE(five->x(), 54.0);
+ QCOMPARE(five->y(), 54.0);
+}
+
+void tst_QmlGraphicsPositioners::test_grid_animated()
+{
+ QmlView *canvas = createView(SRCDIR "/data/grid-animated.qml");
+ canvas->execute();
+ qApp->processEvents();
+
+ QTest::qWait(0);//Let the animation start
+ //Note that all but two animate in
+ QmlGraphicsRectangle *one = canvas->root()->findChild<QmlGraphicsRectangle*>("one");
+ QVERIFY(one != 0);
+ QCOMPARE(one->x(), -100.0);
+ QCOMPARE(one->y(), -100.0);
+
+ QmlGraphicsRectangle *two = canvas->root()->findChild<QmlGraphicsRectangle*>("two");
+ QVERIFY(two != 0);
+ QCOMPARE(two->x(), 0.0);
+ QCOMPARE(two->y(), 0.0);
+
+ QmlGraphicsRectangle *three = canvas->root()->findChild<QmlGraphicsRectangle*>("three");
+ QVERIFY(three != 0);
+ QCOMPARE(three->x(), -100.0);
+ QCOMPARE(three->y(), -100.0);
+
+ QmlGraphicsRectangle *four = canvas->root()->findChild<QmlGraphicsRectangle*>("four");
+ QVERIFY(four != 0);
+ QCOMPARE(four->x(), -100.0);
+ QCOMPARE(four->y(), -100.0);
+
+ QmlGraphicsRectangle *five = canvas->root()->findChild<QmlGraphicsRectangle*>("five");
+ QVERIFY(five != 0);
+ QCOMPARE(five->x(), -100.0);
+ QCOMPARE(five->y(), -100.0);
+
+ QTest::qWait(300);//Let the animation complete
+
+ QCOMPARE(one->y(), 0.0);
+ QCOMPARE(one->x(), 0.0);
+ QCOMPARE(two->opacity(), 0.0);
+ QCOMPARE(two->y(), 0.0);
+ QCOMPARE(two->x(), 0.0);
+ QCOMPARE(three->y(), 0.0);
+ QCOMPARE(three->x(), 50.0);
+ QCOMPARE(four->y(), 0.0);
+ QCOMPARE(four->x(), 100.0);
+ QCOMPARE(five->y(), 50.0);
+ QCOMPARE(five->x(), 0.0);
+
+ //Add 'two'
+ two->setOpacity(1.0);
+ QCOMPARE(two->opacity(), 1.0);
+ QTest::qWait(0);//Let the animation start
+ QCOMPARE(two->x(), -100.0);
+ QCOMPARE(two->y(), -100.0);
+ QCOMPARE(one->x(), 0.0);
+ QCOMPARE(one->y(), 0.0);
+ QCOMPARE(three->x(), 50.0);
+ QCOMPARE(three->y(), 0.0);
+ QCOMPARE(four->x(), 100.0);
+ QCOMPARE(four->y(), 0.0);
+ QCOMPARE(five->x(), 0.0);
+ QCOMPARE(five->y(), 50.0);
+ QTest::qWait(300);//Let the animation complete
+ QCOMPARE(two->x(), 50.0);
+ QCOMPARE(two->y(), 0.0);
+ QCOMPARE(one->x(), 0.0);
+ QCOMPARE(one->y(), 0.0);
+ QCOMPARE(three->x(), 100.0);
+ QCOMPARE(three->y(), 0.0);
+ QCOMPARE(four->x(), 0.0);
+ QCOMPARE(four->y(), 50.0);
+ QCOMPARE(five->x(), 50.0);
+ QCOMPARE(five->y(), 50.0);
+
+ //Remove 'two'
+ two->setOpacity(0.0);
+ QCOMPARE(two->opacity(), 0.0);
+ QCOMPARE(two->x(), 50.0);
+ QCOMPARE(two->y(), 0.0);
+ QCOMPARE(one->x(), 0.0);
+ QCOMPARE(one->y(), 0.0);
+ QCOMPARE(three->x(), 100.0);
+ QCOMPARE(three->y(), 0.0);
+ QCOMPARE(four->x(), 0.0);
+ QCOMPARE(four->y(), 50.0);
+ QCOMPARE(five->x(), 50.0);
+ QCOMPARE(five->y(), 50.0);
+ QTest::qWait(300);//Let the animation complete
+ QCOMPARE(two->x(), 50.0);
+ QCOMPARE(two->y(), 0.0);
+ QCOMPARE(one->x(), 0.0);
+ QCOMPARE(one->y(), 0.0);
+ QCOMPARE(three->x(), 50.0);
+ QCOMPARE(three->y(), 0.0);
+ QCOMPARE(four->x(), 100.0);
+ QCOMPARE(four->y(), 0.0);
+ QCOMPARE(five->x(), 0.0);
+ QCOMPARE(five->y(), 50.0);
+}
+
+void tst_QmlGraphicsPositioners::test_repeater()
+{
+ QmlView *canvas = createView("data/repeater.qml");
+
+ canvas->execute();
+ qApp->processEvents();
+
+ QmlGraphicsRectangle *one = canvas->root()->findChild<QmlGraphicsRectangle*>("one");
+ QVERIFY(one != 0);
+
+ QmlGraphicsRectangle *two = canvas->root()->findChild<QmlGraphicsRectangle*>("two");
+ QVERIFY(two != 0);
+
+ QmlGraphicsRectangle *three = canvas->root()->findChild<QmlGraphicsRectangle*>("three");
+ QVERIFY(three != 0);
+
+ QCOMPARE(one->x(), 0.0);
+ QCOMPARE(one->y(), 0.0);
+ QCOMPARE(two->x(), 50.0);
+ QCOMPARE(two->y(), 0.0);
+ QCOMPARE(three->x(), 100.0);
+ QCOMPARE(three->y(), 0.0);
+}
+
+QmlView *tst_QmlGraphicsPositioners::createView(const QString &filename)
+{
+ QmlView *canvas = new QmlView(0);
+
+ QFile file(filename);
+ file.open(QFile::ReadOnly);
+ QString xml = file.readAll();
+ canvas->setQml(xml, filename);
+
+ return canvas;
+}
+
+
+QTEST_MAIN(tst_QmlGraphicsPositioners)
+
+#include "tst_qmlgraphicspositioners.moc"
diff --git a/tests/auto/declarative/visual/qmlgraphicsflipable/data/test-flipable.0.png b/tests/auto/declarative/visual/qmlgraphicsflipable/data/test-flipable.0.png
index 3d5acbc..53a8b42 100644
--- a/tests/auto/declarative/visual/qmlgraphicsflipable/data/test-flipable.0.png
+++ b/tests/auto/declarative/visual/qmlgraphicsflipable/data/test-flipable.0.png
Binary files differ
diff --git a/tests/auto/declarative/visual/qmlgraphicsflipable/data/test-flipable.1.png b/tests/auto/declarative/visual/qmlgraphicsflipable/data/test-flipable.1.png
index bebb1aa..b7efe8c 100644
--- a/tests/auto/declarative/visual/qmlgraphicsflipable/data/test-flipable.1.png
+++ b/tests/auto/declarative/visual/qmlgraphicsflipable/data/test-flipable.1.png
Binary files differ
diff --git a/tests/auto/declarative/visual/qmlgraphicsflipable/data/test-flipable.2.png b/tests/auto/declarative/visual/qmlgraphicsflipable/data/test-flipable.2.png
index d092053..aa6d147 100644
--- a/tests/auto/declarative/visual/qmlgraphicsflipable/data/test-flipable.2.png
+++ b/tests/auto/declarative/visual/qmlgraphicsflipable/data/test-flipable.2.png
Binary files differ
diff --git a/tests/auto/declarative/visual/qmlgraphicsflipable/data/test-flipable.3.png b/tests/auto/declarative/visual/qmlgraphicsflipable/data/test-flipable.3.png
index aa79f8b..9d39713 100644
--- a/tests/auto/declarative/visual/qmlgraphicsflipable/data/test-flipable.3.png
+++ b/tests/auto/declarative/visual/qmlgraphicsflipable/data/test-flipable.3.png
Binary files differ
diff --git a/tests/auto/declarative/visual/qmlgraphicsflipable/data/test-flipable.qml b/tests/auto/declarative/visual/qmlgraphicsflipable/data/test-flipable.qml
index 5464d01..4df180f 100644
--- a/tests/auto/declarative/visual/qmlgraphicsflipable/data/test-flipable.qml
+++ b/tests/auto/declarative/visual/qmlgraphicsflipable/data/test-flipable.qml
@@ -18,47 +18,47 @@ VisualTest {
}
Frame {
msec: 64
- hash: "7e16e6360fc2e9db67dbf11d58042745"
+ hash: "06d7f0befa7e06972983ffe87c162750"
}
Frame {
msec: 80
- hash: "7e16e6360fc2e9db67dbf11d58042745"
+ hash: "51dff66a7767e3464fda60f2cf906700"
}
Frame {
msec: 96
- hash: "7e16e6360fc2e9db67dbf11d58042745"
+ hash: "f8038dc4b67b92ef776a97589240e8c5"
}
Frame {
msec: 112
- hash: "7e16e6360fc2e9db67dbf11d58042745"
+ hash: "692931f1db6ddf0b37eb64026ca830f8"
}
Frame {
msec: 128
- hash: "9becb90d9f8a61f5afacdc53d137ebcb"
+ hash: "f01b7368e42381dda5eadf56482ea993"
}
Frame {
msec: 144
- hash: "9becb90d9f8a61f5afacdc53d137ebcb"
+ hash: "9811f823e057882d384f36d7227fa12e"
}
Frame {
msec: 160
- hash: "9becb90d9f8a61f5afacdc53d137ebcb"
+ hash: "9b40b6c75af876567ff49688bc710f2a"
}
Frame {
msec: 176
- hash: "9becb90d9f8a61f5afacdc53d137ebcb"
+ hash: "e97a5d968da37789c28816608fa262a1"
}
Frame {
msec: 192
- hash: "9becb90d9f8a61f5afacdc53d137ebcb"
+ hash: "2cd0627fdc63bb91f8dcac789d7a93b2"
}
Frame {
msec: 208
- hash: "9becb90d9f8a61f5afacdc53d137ebcb"
+ hash: "ae2407f8da9a047d2725bcdcf8e568b2"
}
Frame {
msec: 224
- hash: "90fb4e4ba04ac32b52c10b3258431c04"
+ hash: "da2a1e5e988c27577ceb453cb0383703"
}
Frame {
msec: 240
@@ -70,7 +70,7 @@ VisualTest {
}
Frame {
msec: 272
- hash: "73c06997014af4e008b546b53fe349fb"
+ hash: "90fb4e4ba04ac32b52c10b3258431c04"
}
Frame {
msec: 288
@@ -78,7 +78,7 @@ VisualTest {
}
Frame {
msec: 304
- hash: "73c06997014af4e008b546b53fe349fb"
+ hash: "262404c6e55b93c4ab940582a49f7e18"
}
Frame {
msec: 320
@@ -90,139 +90,139 @@ VisualTest {
}
Frame {
msec: 352
- hash: "1c25b3d65e8590f8c213afa76b722e97"
+ hash: "2d112d040fd425c59b511066737e494d"
}
Frame {
msec: 368
- hash: "1c25b3d65e8590f8c213afa76b722e97"
+ hash: "769d2724656dbf0e793ecd8e42db3de2"
}
Frame {
msec: 384
- hash: "1c25b3d65e8590f8c213afa76b722e97"
+ hash: "9e375cb3815723a2c5dda39c79325e96"
}
Frame {
msec: 400
- hash: "e64fa5eba05f81e6f263dc8543f21b1a"
+ hash: "b21e92871bf63873b8ae48a2aff47be5"
}
Frame {
msec: 416
- hash: "e64fa5eba05f81e6f263dc8543f21b1a"
+ hash: "00d08f4257f35c6236cde0597b0005e4"
}
Frame {
msec: 432
- hash: "845581f8d03f4fe9323fc282e84f919b"
+ hash: "8048f84221a02e7102cf3272445862a1"
}
Frame {
msec: 448
- hash: "845581f8d03f4fe9323fc282e84f919b"
+ hash: "f0d7b45f0b01319494616c1893aa940e"
}
Frame {
msec: 464
- hash: "136fb272f4d806927b46a1269b18f63d"
+ hash: "457fad89140a1dda9e70549d451482e9"
}
Frame {
msec: 480
- hash: "8532ee7ce3488f9e038643e4fa48751d"
+ hash: "ee0feb79e843cdb2adea72fa37ecab67"
}
Frame {
msec: 496
- hash: "8532ee7ce3488f9e038643e4fa48751d"
+ hash: "ece02d3590147884e697dd5228dee8c4"
}
Frame {
msec: 512
- hash: "af5f794f73e16a5c3b9e437418c873ee"
+ hash: "91c4ec19716a0883c8f5c25b9a0d1f42"
}
Frame {
msec: 528
- hash: "af5f794f73e16a5c3b9e437418c873ee"
+ hash: "a7c9860dd4962b11b92c54370ba156ee"
}
Frame {
msec: 544
- hash: "d75e53f2cea8e9b61a5e50f95060552e"
+ hash: "a28f2590be1e8cde4cde5219367015ac"
}
Frame {
msec: 560
- hash: "0374aae76f8cfd75f119ff4b86dba817"
+ hash: "3b641ba58f5e1f0e1f2f528acf38cb28"
}
Frame {
msec: 576
- hash: "d36e1a56078d7cfa246b57f886c230b4"
+ hash: "d0b0969ad165d4784f763683de42278e"
}
Frame {
msec: 592
- hash: "d36e1a56078d7cfa246b57f886c230b4"
+ hash: "93968dffda327a101e2bd07b80fff842"
}
Frame {
msec: 608
- hash: "30692e6658ac730670a489c880fd4485"
+ hash: "08f5db4cd7f27178c67e6d973e4bb023"
}
Frame {
msec: 624
- hash: "3aace4dc5bc503ed0df1b00b444780f0"
+ hash: "0967cad0a3ae82307a049944e1bcdc3e"
}
Frame {
msec: 640
- hash: "b6936d72cbaff0c6bb64fc08152e8680"
+ hash: "d70ffd02b434e607bc11a95ca536c19a"
}
Frame {
msec: 656
- hash: "b6936d72cbaff0c6bb64fc08152e8680"
+ hash: "cd561b4d5e707bb6b9f6d493f9b99512"
}
Frame {
msec: 672
- hash: "8beee45f26f9f7b94b84a807a0c42217"
+ hash: "58355ca37c6e4e54061664180faa11fb"
}
Frame {
msec: 688
- hash: "80529f6b8d12838b58c4af73c1985792"
+ hash: "bd873f48c79286c50333c838e57d8ec7"
}
Frame {
msec: 704
- hash: "967f7e4f58a8e29b5d76eac011af643d"
+ hash: "db89bc0e04ebefe5440748fe85e0bdf7"
}
Frame {
msec: 720
- hash: "395863cffd5440b0a4805975b766a3cf"
+ hash: "c400bc1e6c02c792cc515a6dd8bbaa9b"
}
Frame {
msec: 736
- hash: "f9c919f45316d93d2c8693b62930850f"
+ hash: "accf3567a161239cd8c18dd9d4527aaf"
}
Frame {
msec: 752
- hash: "cf8ffc1132935b5df49da90953009fa0"
+ hash: "2e3bcdf70f160bf8e3f1b77ee472b782"
}
Frame {
msec: 768
- hash: "8e44d6cf4c29313352ad0118db003958"
+ hash: "929da0d629253478c322360c9a8dfc9e"
}
Frame {
msec: 784
- hash: "31ca6f5b62fd8c08fa17b1008c4e6a22"
+ hash: "d5d4b7c52ba14e84bc9c34a8b55f84b7"
}
Frame {
msec: 800
- hash: "96773abcace99ba692a5be096df85a54"
+ hash: "063ce927e9e7c5afb9131302ea5a968c"
}
Frame {
msec: 816
- hash: "e92daff761c739f231ba2c05785c44fb"
+ hash: "b94b6fff850aacccdaf0f74d4e36ba67"
}
Frame {
msec: 832
- hash: "c1b1056ef06a0454680f2146bb87a56b"
+ hash: "bac2b9b9be4b71fafe59868506aa8ab9"
}
Frame {
msec: 848
- hash: "dc02f4f6b0ff1572a64fd133819fd794"
+ hash: "a91fed41a5a07e84424e45477f463aa1"
}
Frame {
msec: 864
- hash: "9f87d4d33942d32a4048ca2b785a1fed"
+ hash: "370eefd369ef366f1d5930b261340d0b"
}
Frame {
msec: 880
- hash: "57d989f52d8bee06694166bf8bdffef0"
+ hash: "b04a87997d0eeb6ff2f91fc2f0d016f6"
}
Frame {
msec: 896
@@ -230,15 +230,15 @@ VisualTest {
}
Frame {
msec: 912
- hash: "b075ae21dbd3acef5c4d0f11cadce3c9"
+ hash: "101e66b9d13b1b0872cfcc497c9d6ae3"
}
Frame {
msec: 928
- hash: "d54b5b295a9ca2bc65131a0775d8d009"
+ hash: "b5eaf952e40cf90ef32e8cb64ccce7d3"
}
Frame {
msec: 944
- hash: "599b244ff9b4ddceb682a059338f6f97"
+ hash: "b43b02133ebe5db93e5236c0307939c3"
}
Frame {
msec: 960
@@ -246,103 +246,103 @@ VisualTest {
}
Frame {
msec: 976
- hash: "9fd5a0f023f89511bdd4b7e429f940ab"
+ hash: "7d1a0ff0eceb80ff64d828c34792a2d5"
}
Frame {
msec: 992
- hash: "ad18f401dc07032ffc52b90fd5581319"
+ hash: "a7492d8ab6fddb5c1d7af2621078230b"
}
Frame {
msec: 1008
- hash: "b12cbf8e97bc48e12d9543ffc1c578a2"
+ hash: "2ed3dc7f10cc8279a6fd926914cdb234"
}
Frame {
msec: 1024
- hash: "7c9895dae776c2a4a6d5e1dd50d86336"
+ hash: "e9f76e419f6f682bcc9052183bb50607"
}
Frame {
msec: 1040
- hash: "ebd8018990ce867c3308121dccbfc1bc"
+ hash: "fdee6990e101d4a628272e7b09a217a3"
}
Frame {
msec: 1056
- hash: "4818f99e2f71c0ec7636aa777f4df875"
+ hash: "05e028b2f37a433343d373bc05f73756"
}
Frame {
msec: 1072
- hash: "09371a634d7801742075aadc131b5fb6"
+ hash: "a9ece04666d17979408dcd8690cd697c"
}
Frame {
msec: 1088
- hash: "e03e96eaa2640cf6d820d9992c0c51f4"
+ hash: "a5d8c9bee6ac10fb45cedf3bc4325539"
}
Frame {
msec: 1104
- hash: "daf19227a7e51e437d0a13fdf8b1a26f"
+ hash: "08f1ff1e515ec78f75efa13a39b21f56"
}
Frame {
msec: 1120
- hash: "539ccebf96da504f0c5dfe5496ed95ce"
+ hash: "f0bc6c649a195e2c433cf84c1b4f5bcb"
}
Frame {
msec: 1136
- hash: "63d851b3a8758e4cd95624b44cf9e7c9"
+ hash: "2a548614a9b38867cd0fe44985ca443f"
}
Frame {
msec: 1152
- hash: "8ee67f06977858444a775ca8c5109411"
+ hash: "8c8272fc028ce5b403e636b4061351d3"
}
Frame {
msec: 1168
- hash: "44849e7b8cc8d187da234daba784bc6e"
+ hash: "df11678b255cc3f624fed24d7e6a24af"
}
Frame {
msec: 1184
- hash: "ec9892a5602892ba5a2075b61672d91b"
+ hash: "7dd5ce1cce200d7eede0f248f150873c"
}
Frame {
msec: 1200
- hash: "b12aec87daa7c09276ae5d4b619276a1"
+ hash: "e5cb8e0e588854dce5e7572fd1e3a445"
}
Frame {
msec: 1216
- hash: "816d9d278fecde0867efadae2c4b5839"
+ hash: "71937cd7d319174232797d05fe28bda5"
}
Frame {
msec: 1232
- hash: "65daf0b21f860cb87c28a11c3d947f3b"
+ hash: "021c3a598b008991114b25b26191e8ef"
}
Frame {
msec: 1248
- hash: "f3bc5c605ac0cb287e8c1d1cb58d85ca"
+ hash: "b372131d6fc29e7dbffc2c5f4e269ad7"
}
Frame {
msec: 1264
- hash: "2988cc8030891abd7493294fc2c6964c"
+ hash: "2120fc188aed6888eba85e9d49139000"
}
Frame {
msec: 1280
- hash: "cbfc98561559f3aa8bdec7c40da559c0"
+ hash: "0523499bb4f4c6d0c3d2cd28fbac7056"
}
Frame {
msec: 1296
- hash: "636335822b15f32861696439773e1794"
+ hash: "19d1fc79802728d6b0af222050b59463"
}
Frame {
msec: 1312
- hash: "3fbb7a8920ff95fce7bfefcb540c6de8"
+ hash: "f48686053780376c7ab2e6481e3fd0ad"
}
Frame {
msec: 1328
- hash: "4036080b6aafa72e5310ce33615ff8f8"
+ hash: "0f7c5ca70fec90e7e8b2fd50b791fd2e"
}
Frame {
msec: 1344
- hash: "48fb5685e63e81f1790f5481bc06dac4"
+ hash: "93cd129be7cfebaa2ea8a074a77aaa7c"
}
Frame {
msec: 1360
- hash: "f1f58f0eebbffc3b389c6669c5419081"
+ hash: "e6b149da031b1c0b842b1b7872bd2d91"
}
Frame {
msec: 1376
@@ -350,19 +350,19 @@ VisualTest {
}
Frame {
msec: 1392
- hash: "efbf81fc1db57a6020fcfe97077233b7"
+ hash: "23bb444b6248901da3eb6a2e805438cb"
}
Frame {
msec: 1408
- hash: "67ff11e6143718c95418f4851265081e"
+ hash: "1c9feb1c3ae76d4015c99d005ecfed60"
}
Frame {
msec: 1424
- hash: "a403ec3d25e73b557ba08aa903cb9006"
+ hash: "41e5345dc90fd48476f35ceeab281948"
}
Frame {
msec: 1440
- hash: "293b9f1cc31af93f22b4c1369567c4ba"
+ hash: "89682a955a00e68031571ac765f9f5e3"
}
Frame {
msec: 1456
@@ -370,31 +370,31 @@ VisualTest {
}
Frame {
msec: 1472
- hash: "cd8d4484158d7dcdc7662ea8c8daea07"
+ hash: "67a73129d828e8a05b1efc768cf40146"
}
Frame {
msec: 1488
- hash: "b991e62a7d6751bdd3e2d690e690821c"
+ hash: "0800a78c97c92c697e44ded54fdcf934"
}
Frame {
msec: 1504
- hash: "c60aca5007dadc628f242db9d593cf1f"
+ hash: "d5d51263367f0c53b8d94a03d83338d9"
}
Frame {
msec: 1520
- hash: "e78af45d2042130a9d34b654157a9ada"
+ hash: "ab749885f356683e17ca52f904ae582d"
}
Frame {
msec: 1536
- hash: "cc35b2fcc585191d3f46840fdcacc94f"
+ hash: "7f5a56f30222a9886d1e9d014b4f5cab"
}
Frame {
msec: 1552
- hash: "9e33a9f73e1019e7d694d108fd95f2ad"
+ hash: "10c5e64eff104dce59f54f70c5564959"
}
Frame {
msec: 1568
- hash: "f08adfe4286703702c9393a905ec01d2"
+ hash: "38b00c7544648ef06705acc2e9eca1f5"
}
Frame {
msec: 1584
@@ -402,31 +402,31 @@ VisualTest {
}
Frame {
msec: 1600
- hash: "da3b8e41b9639bb71cf95b671d8a2c63"
+ hash: "ea5349d337e397b3ee5e0db0c296f5e5"
}
Frame {
msec: 1616
- hash: "92855bf2208369f361b677bc66e9c79d"
+ hash: "6bd784ca760edba5a6f0b4212237e1e8"
}
Frame {
msec: 1632
- hash: "e5403ff384dca3c10b091e166160624f"
+ hash: "77e7888a37a7724bded817903cbe777e"
}
Frame {
msec: 1648
- hash: "932b5ebeaa4576575179b04a4c131ef5"
+ hash: "55213bdb2f1f2d25b5680db95e79bbac"
}
Frame {
msec: 1664
- hash: "37a23d4a895fa83226f66736caa87281"
+ hash: "6d62c7f7f76cc1d4e33c152234000da0"
}
Frame {
msec: 1680
- hash: "f6926e493dfd7deee613cf9bb7529f5e"
+ hash: "0f6aa29c172054887e4ddb6512ae43b1"
}
Frame {
msec: 1696
- hash: "338e40ae3e047cf7731377fc1b4d3cb7"
+ hash: "75fd94508b77bbdde34a61b74ff49e12"
}
Frame {
msec: 1712
@@ -434,19 +434,19 @@ VisualTest {
}
Frame {
msec: 1728
- hash: "4487366ee7ec1e0fdafc88cfa82e7977"
+ hash: "4f895ee983424c164be3e2db488a4e51"
}
Frame {
msec: 1744
- hash: "28f0b7824b5bb311d46c94afa7d7bb66"
+ hash: "974fd5f390d33afb779ac754f0e30b2a"
}
Frame {
msec: 1760
- hash: "34b15e5a3602fd7bf2f217c308fa5d09"
+ hash: "fd40e22c7d3cfceeee7dc668d1cf0a12"
}
Frame {
msec: 1776
- hash: "667b9286f32fe43a0cb5d65cdfa965cd"
+ hash: "4e3c04b35bcc43a4295582da1674da2e"
}
Frame {
msec: 1792
@@ -454,31 +454,31 @@ VisualTest {
}
Frame {
msec: 1808
- hash: "9afbd09687efa09eb3b03570bf8be531"
+ hash: "9a92c68cfad54c313d24e38240ea072f"
}
Frame {
msec: 1824
- hash: "0e1dac5b9d2a0acab1516d01a286a0ec"
+ hash: "3e27569d19670ec99f11bfa46099456a"
}
Frame {
msec: 1840
- hash: "dd058795bd3957d02dc296419c17819c"
+ hash: "5d4be9ed8c4ba7faefde5427cdbffc73"
}
Frame {
msec: 1856
- hash: "158618e8529cba8531183b2f72e90340"
+ hash: "232d4e03a57edf0386b06884482f9730"
}
Frame {
msec: 1872
- hash: "c9062e6405b3b7fd0b2a794119220b1d"
+ hash: "c45f959fd81ac08add219326cb6a8bfc"
}
Frame {
msec: 1888
- hash: "8dadb6da9f12dac689406a43e7e61bea"
+ hash: "349111e36190f77afd53c50ee2e9ba94"
}
Frame {
msec: 1904
- hash: "fd66704ce98410a7b1dd69f7cd6ddd26"
+ hash: "ea5ed48b2bcdfd2a711a3a71a4ae37c3"
}
Frame {
msec: 1920
@@ -486,23 +486,23 @@ VisualTest {
}
Frame {
msec: 1936
- hash: "d4a21104b4f8044486fbe6516e4ae7b5"
+ hash: "ae4e35413e462221b8cb48dd0350f873"
}
Frame {
msec: 1952
- hash: "20fd373c13d4d06b9105c80ed6f4edb7"
+ hash: "63cc3851236d5de613c85a2971ef7145"
}
Frame {
msec: 1968
- hash: "ff9bc1aa538b69e72ed1a501ea0d56de"
+ hash: "45d5fdb92107a7074d56d97bda34756f"
}
Frame {
msec: 1984
- hash: "3f3d5f3ca770b84e86fea3188e082493"
+ hash: "f74d9a3b53a629f7fccfdd255fdbba62"
}
Frame {
msec: 2000
- hash: "fe7de3d2083208993e527b13ae7edadd"
+ hash: "60c6a30e15ed4ad61c14f15f9f1f3790"
}
Frame {
msec: 2016
@@ -510,163 +510,163 @@ VisualTest {
}
Frame {
msec: 2032
- hash: "c80d37b370a4ada6217c81f5e82ecd6f"
+ hash: "98558c7135fa84fa08d457c6064b8653"
}
Frame {
msec: 2048
- hash: "84051de621753e12e3e11316d14dfe73"
+ hash: "2858e39a9b39739bb5c0c1ce23e83b20"
}
Frame {
msec: 2064
- hash: "fd238f83a26ed8c2cee3e3d042af903b"
+ hash: "0b174f04215131cfa32b5d1a32170ac3"
}
Frame {
msec: 2080
- hash: "949d2ed3e1d1c674e77ef3c8a6b779ba"
+ hash: "67e3618bab95519a034ed6c8c1543212"
}
Frame {
msec: 2096
- hash: "42f602bcd7b517cf16554a88998d16a8"
+ hash: "2012c5310f198022a3878c9ded08523d"
}
Frame {
msec: 2112
- hash: "318bd97d726826398887ff218e61df32"
+ hash: "1cb6a1f6d873d2bfde457828c17b4886"
}
Frame {
msec: 2128
- hash: "5a0699f422475f0d3f17cddb606b4715"
+ hash: "be3f28bd56d9d985408e32cc0aab0623"
}
Frame {
msec: 2144
- hash: "3eb8e765ff9f38fd56a69a8bc2d534c3"
+ hash: "4aa07c4887f873f0f034930bd681f9dc"
}
Frame {
msec: 2160
- hash: "dd548f565a0787789ec13e141f808b11"
+ hash: "adeae071187b590aa0a142c27098d2f4"
}
Frame {
msec: 2176
- hash: "a78a6a9f014b8c2e7a202b80e6c2e09f"
+ hash: "d777aaccd6143c2c1000bbfabdbefeb2"
}
Frame {
msec: 2192
- hash: "3d0ff083b6f1f994caa660016245876d"
+ hash: "7b4785b9e6610f02c52b4c824bea8ecd"
}
Frame {
msec: 2208
- hash: "ce6a7491571ce3d5799791579428b615"
+ hash: "c539b3638272e46120edbe4a58e1d894"
}
Frame {
msec: 2224
- hash: "67e700035648fd5354ec0806a412be89"
+ hash: "ae466024a1dd731b6730dda255e68eb8"
}
Frame {
msec: 2240
- hash: "b03f1bfe2bdbf52aae0dff6ae4821914"
+ hash: "f844a288b009cc4c6c28eb30d799c397"
}
Frame {
msec: 2256
- hash: "4d75ac3064288c3a56e9fd6ed6022fc6"
+ hash: "4fc8ca1992802f97dd431783db89c725"
}
Frame {
msec: 2272
- hash: "dc6677725f6bf0bdcab25287a096a0e6"
+ hash: "79b899461efae97b65b8c24c8820f348"
}
Frame {
msec: 2288
- hash: "827e5e274fb331c6f9997172894b1f4d"
+ hash: "cb1ce87ddc372e24e37b60c013310549"
}
Frame {
msec: 2304
- hash: "c3cf3b3968441b735684fc6e55ebb1ce"
+ hash: "c8937aea34fd299c151706598828be6f"
}
Frame {
msec: 2320
- hash: "01eebde46aff9d7484cffb0b0d27c415"
+ hash: "ed5c3a904dc3b72937c6eea475514b2d"
}
Frame {
msec: 2336
- hash: "614ad3481a993b5ff5ec008aa3d4751f"
+ hash: "09043e74a3ac60d05122675a1b253320"
}
Frame {
msec: 2352
- hash: "614ad3481a993b5ff5ec008aa3d4751f"
+ hash: "57677a33d8c60a45c64aea10a695e8d0"
}
Frame {
msec: 2368
- hash: "2f253dcdbe2fabc768cdd5bfa8004a36"
+ hash: "496fe0b0e420356e4205537fdf3adc2f"
}
Frame {
msec: 2384
- hash: "90b130853f8e28a01c90825c412f98b9"
+ hash: "f4146ce8db5cf2c3da15715820c9f62f"
}
Frame {
msec: 2400
- hash: "567bf7684e4b2f76715bcc588a2b7dfb"
+ hash: "b80bc46468695b874d401c4c9bd68932"
}
Frame {
msec: 2416
- hash: "63412cfccdd8646530ebdb37eba16ee9"
+ hash: "b0cf0021232ab917301206614f61f0bf"
}
Frame {
msec: 2432
- hash: "63412cfccdd8646530ebdb37eba16ee9"
+ hash: "b0abdf5b86e3fcb22a9254ac5b522380"
}
Frame {
msec: 2448
- hash: "e1c5381a621dfe50e4b04d881ce2c4b7"
+ hash: "c1624cb7e90ea26ab0c37cfe9919ca36"
}
Frame {
msec: 2464
- hash: "553bff0aa031ed1279170c19bf024539"
+ hash: "0ffd6a3b3e5f6db5a3a8df756caf713e"
}
Frame {
msec: 2480
- hash: "2b8c079d8526ce4d0640014cca38c6b8"
+ hash: "1604ad8e7a4aa4fa8dff1f37fc8c51d7"
}
Frame {
msec: 2496
- hash: "2b8c079d8526ce4d0640014cca38c6b8"
+ hash: "5bbca0b79c42e263162926e5c2fd3d82"
}
Frame {
msec: 2512
- hash: "ac356478635b5d34001a50997eb3c82c"
+ hash: "9436b4f2ab902673ed067de55da5003e"
}
Frame {
msec: 2528
- hash: "ac356478635b5d34001a50997eb3c82c"
+ hash: "3c7b5fa0970242a2ad308c72d761713b"
}
Frame {
msec: 2544
- hash: "93d64e7bec7d9e254066d79c0db41f28"
+ hash: "15e451c53e8f5c70614f87f33fe0a2e6"
}
Frame {
msec: 2560
- hash: "010ec13762826006a1dbf60b8c4660c9"
+ hash: "7e8cbe203306d2f267a42fed1e4790ed"
}
Frame {
msec: 2576
- hash: "010ec13762826006a1dbf60b8c4660c9"
+ hash: "db21ae28564614b58a7dd5ccd97082e6"
}
Frame {
msec: 2592
- hash: "2f882016d4e3e29ec6689cfa1189e00e"
+ hash: "ff52e198874de749c46f9b34cfe40cfc"
}
Frame {
msec: 2608
- hash: "2f882016d4e3e29ec6689cfa1189e00e"
+ hash: "916d92d24a81ced07a54d68c46299d4c"
}
Frame {
msec: 2624
- hash: "676f8aba3379c9935b9bd269bd140cf2"
+ hash: "2f6cf122e5f15fc5f5d3c92d92ca1384"
}
Frame {
msec: 2640
- hash: "676f8aba3379c9935b9bd269bd140cf2"
+ hash: "6f328038e5d505c402651423c44986a5"
}
Frame {
msec: 2656
- hash: "78e0dca60c04d3defbd90457685dbab3"
+ hash: "6f328038e5d505c402651423c44986a5"
}
Frame {
msec: 2672
@@ -674,7 +674,7 @@ VisualTest {
}
Frame {
msec: 2688
- hash: "0ff9fd6b09fc14abacb794353b9500f6"
+ hash: "b915de1be0c1779e06fb9eea8237f91d"
}
Frame {
msec: 2704
@@ -682,11 +682,11 @@ VisualTest {
}
Frame {
msec: 2720
- hash: "0ff9fd6b09fc14abacb794353b9500f6"
+ hash: "5a1c9cd9da5492a61a3a1bc6ad37ef17"
}
Frame {
msec: 2736
- hash: "6d813ee777a5900c65aca5939c004d0c"
+ hash: "4c4a72eb4105903802de56a4a62d86cc"
}
Frame {
msec: 2752
@@ -694,7 +694,7 @@ VisualTest {
}
Frame {
msec: 2768
- hash: "0acaa3ece071ad4461cf4a79d65a0f03"
+ hash: "6d813ee777a5900c65aca5939c004d0c"
}
Frame {
msec: 2784
@@ -706,15 +706,15 @@ VisualTest {
}
Frame {
msec: 2816
- hash: "0acaa3ece071ad4461cf4a79d65a0f03"
+ hash: "f5cf7e68edc5fcd9dd91882d3f9ba380"
}
Frame {
msec: 2832
- hash: "b2ef52b66896649413b3852bcf642e1c"
+ hash: "51f8508eddffbac2fad22bd3e8040c69"
}
Frame {
msec: 2848
- hash: "b2ef52b66896649413b3852bcf642e1c"
+ hash: "a09746c72df5330f6ca2a93d9b8e79f6"
}
Frame {
msec: 2864
@@ -726,23 +726,23 @@ VisualTest {
}
Frame {
msec: 2896
- hash: "b2ef52b66896649413b3852bcf642e1c"
+ hash: "ae76d183491834e2b1d0371420d51ce5"
}
Frame {
msec: 2912
- hash: "1daeebce8e7eef80b135d2e4f83f780b"
+ hash: "b19d89aa671cc3a773f64a7bae21adb6"
}
Frame {
msec: 2928
- hash: "1daeebce8e7eef80b135d2e4f83f780b"
+ hash: "08eb7bd2e49fe600e922e49a3aa56e93"
}
Frame {
msec: 2944
- hash: "1daeebce8e7eef80b135d2e4f83f780b"
+ hash: "1e3a7bdd0bd9d5b84c2cb5b646d7fb45"
}
Frame {
msec: 2960
- hash: "1daeebce8e7eef80b135d2e4f83f780b"
+ hash: "be9f5091197899c0b89823e4403358f3"
}
Frame {
msec: 2976
@@ -770,43 +770,43 @@ VisualTest {
}
Frame {
msec: 3072
- hash: "1daeebce8e7eef80b135d2e4f83f780b"
+ hash: "be9f5091197899c0b89823e4403358f3"
}
Frame {
msec: 3088
- hash: "1daeebce8e7eef80b135d2e4f83f780b"
+ hash: "be9f5091197899c0b89823e4403358f3"
}
Frame {
msec: 3104
- hash: "1daeebce8e7eef80b135d2e4f83f780b"
+ hash: "1e3a7bdd0bd9d5b84c2cb5b646d7fb45"
}
Frame {
msec: 3120
- hash: "1daeebce8e7eef80b135d2e4f83f780b"
+ hash: "b19d89aa671cc3a773f64a7bae21adb6"
}
Frame {
msec: 3136
- hash: "b2ef52b66896649413b3852bcf642e1c"
+ hash: "e7ed4449b5ea3288d5e8fecb33a4a422"
}
Frame {
msec: 3152
- hash: "b2ef52b66896649413b3852bcf642e1c"
+ hash: "186a2c1af03e7fa590ff3cd7422285e3"
}
Frame {
msec: 3168
- hash: "b2ef52b66896649413b3852bcf642e1c"
+ hash: "373141f99bc88c40ead161502c9750e9"
}
Frame {
msec: 3184
- hash: "b2ef52b66896649413b3852bcf642e1c"
+ hash: "0221e2ef4cf809ebfeba466206a77cce"
}
Frame {
msec: 3200
- hash: "b2ef52b66896649413b3852bcf642e1c"
+ hash: "51f8508eddffbac2fad22bd3e8040c69"
}
Frame {
msec: 3216
- hash: "b2ef52b66896649413b3852bcf642e1c"
+ hash: "f5cf7e68edc5fcd9dd91882d3f9ba380"
}
Frame {
msec: 3232
@@ -818,7 +818,7 @@ VisualTest {
}
Frame {
msec: 3264
- hash: "0acaa3ece071ad4461cf4a79d65a0f03"
+ hash: "6d813ee777a5900c65aca5939c004d0c"
}
Frame {
msec: 3280
@@ -830,7 +830,7 @@ VisualTest {
}
Frame {
msec: 3312
- hash: "6d813ee777a5900c65aca5939c004d0c"
+ hash: "5a1c9cd9da5492a61a3a1bc6ad37ef17"
}
Frame {
msec: 3328
@@ -842,123 +842,123 @@ VisualTest {
}
Frame {
msec: 3360
- hash: "78e0dca60c04d3defbd90457685dbab3"
+ hash: "6f328038e5d505c402651423c44986a5"
}
Frame {
msec: 3376
- hash: "78e0dca60c04d3defbd90457685dbab3"
+ hash: "6f328038e5d505c402651423c44986a5"
}
Frame {
msec: 3392
- hash: "78e0dca60c04d3defbd90457685dbab3"
+ hash: "dd04a76df90f27358f4162fd85cfa4cd"
}
Frame {
msec: 3408
- hash: "676f8aba3379c9935b9bd269bd140cf2"
+ hash: "12df495b5e8bfd2c9dd13fbeccc69e08"
}
Frame {
msec: 3424
- hash: "676f8aba3379c9935b9bd269bd140cf2"
+ hash: "4b6f9dcde7d5d88b9c3eff3187378036"
}
Frame {
msec: 3440
- hash: "2f882016d4e3e29ec6689cfa1189e00e"
+ hash: "712f3850c0efe45c60a3761f1354b90b"
}
Frame {
msec: 3456
- hash: "2f882016d4e3e29ec6689cfa1189e00e"
+ hash: "22215981f00790d7a409230eb730abca"
}
Frame {
msec: 3472
- hash: "010ec13762826006a1dbf60b8c4660c9"
+ hash: "a4a26f9736282ceb307f0f97735002eb"
}
Frame {
msec: 3488
- hash: "93d64e7bec7d9e254066d79c0db41f28"
+ hash: "b41d7a18d84a8b220e99464cab86882d"
}
Frame {
msec: 3504
- hash: "93d64e7bec7d9e254066d79c0db41f28"
+ hash: "c7c1961120f128cd0fcd6a7b61c98197"
}
Frame {
msec: 3520
- hash: "ac356478635b5d34001a50997eb3c82c"
+ hash: "e56e7ba603d2620afb0fab6b19aff33e"
}
Frame {
msec: 3536
- hash: "ac356478635b5d34001a50997eb3c82c"
+ hash: "1a258bed9a7a38452a746d7641016e73"
}
Frame {
msec: 3552
- hash: "2b8c079d8526ce4d0640014cca38c6b8"
+ hash: "a237b9c187bbbcb79f624d74def15db2"
}
Frame {
msec: 3568
- hash: "553bff0aa031ed1279170c19bf024539"
+ hash: "34a7afdebb7352ca65e0eaec61632d12"
}
Frame {
msec: 3584
- hash: "e1c5381a621dfe50e4b04d881ce2c4b7"
+ hash: "a5a98e932a30418bae62bb006afc1048"
}
Frame {
msec: 3600
- hash: "e1c5381a621dfe50e4b04d881ce2c4b7"
+ hash: "2ee25374cb9fef01e78d02c4131010b7"
}
Frame {
msec: 3616
- hash: "63412cfccdd8646530ebdb37eba16ee9"
+ hash: "7956b07b848ba89905e5c609657503e2"
}
Frame {
msec: 3632
- hash: "567bf7684e4b2f76715bcc588a2b7dfb"
+ hash: "0949a2b13f6475b3f11be04321c953a1"
}
Frame {
msec: 3648
- hash: "90b130853f8e28a01c90825c412f98b9"
+ hash: "5a1ff901ecc7c3cd7f39cd07e0273dd4"
}
Frame {
msec: 3664
- hash: "90b130853f8e28a01c90825c412f98b9"
+ hash: "44fcd7209b9f5b1c28c21e9aae408097"
}
Frame {
msec: 3680
- hash: "2f253dcdbe2fabc768cdd5bfa8004a36"
+ hash: "bee94f395239aebb0bacca3dbbee95e5"
}
Frame {
msec: 3696
- hash: "614ad3481a993b5ff5ec008aa3d4751f"
+ hash: "bd26b7e2b07bbcee3819fdacc35eea8d"
}
Frame {
msec: 3712
- hash: "01eebde46aff9d7484cffb0b0d27c415"
+ hash: "d3707b90c5cd0d1061db4b97b6fcb96a"
}
Frame {
msec: 3728
- hash: "c3cf3b3968441b735684fc6e55ebb1ce"
+ hash: "6f6ed6c7553b3f909d53e2146b3831d5"
}
Frame {
msec: 3744
- hash: "827e5e274fb331c6f9997172894b1f4d"
+ hash: "a3a1a03617d1cb5660c51bf2f18088bc"
}
Frame {
msec: 3760
- hash: "dc6677725f6bf0bdcab25287a096a0e6"
+ hash: "6d4646f0a53800ad60d173ab9cb9010a"
}
Frame {
msec: 3776
- hash: "4d75ac3064288c3a56e9fd6ed6022fc6"
+ hash: "126cae232e2fe49e3188393c2798065b"
}
Frame {
msec: 3792
- hash: "b03f1bfe2bdbf52aae0dff6ae4821914"
+ hash: "e1fa758d333ffe5208365c0babff33a0"
}
Frame {
msec: 3808
- hash: "67e700035648fd5354ec0806a412be89"
+ hash: "f2a6156f7d6013bd4234b35c21adb074"
}
Frame {
msec: 3824
- hash: "ce6a7491571ce3d5799791579428b615"
+ hash: "0271f66eb6d9b91a3ab8da2d728b9581"
}
Frame {
msec: 3840
@@ -966,15 +966,15 @@ VisualTest {
}
Frame {
msec: 3856
- hash: "a78a6a9f014b8c2e7a202b80e6c2e09f"
+ hash: "e18635d7c6c5de361e7406c2db357aca"
}
Frame {
msec: 3872
- hash: "dd548f565a0787789ec13e141f808b11"
+ hash: "56100e9ca8d1eb7e6334e5a05ef2b94d"
}
Frame {
msec: 3888
- hash: "3eb8e765ff9f38fd56a69a8bc2d534c3"
+ hash: "3d15b8d662d3df82dd78590c43794337"
}
Frame {
msec: 3904
@@ -982,167 +982,167 @@ VisualTest {
}
Frame {
msec: 3920
- hash: "5a0699f422475f0d3f17cddb606b4715"
+ hash: "ccb8b51084cc1ef3d201887b824fb1ac"
}
Frame {
msec: 3936
- hash: "318bd97d726826398887ff218e61df32"
+ hash: "d9dc9d240a6f89603a54bccd66361530"
}
Frame {
msec: 3952
- hash: "42f602bcd7b517cf16554a88998d16a8"
+ hash: "0e52d92455c263493d32ffe93f242739"
}
Frame {
msec: 3968
- hash: "fd238f83a26ed8c2cee3e3d042af903b"
+ hash: "695ab932722844b975097779e26df55c"
}
Frame {
msec: 3984
- hash: "84051de621753e12e3e11316d14dfe73"
+ hash: "da285cba2e11db1e87d1d180e376ff8e"
}
Frame {
msec: 4000
- hash: "0c6d27488abbfd4f1ee4570a33a2c89e"
+ hash: "54bd12888fc4526d310fa0a66b5ba3be"
}
Frame {
msec: 4016
- hash: "c80d37b370a4ada6217c81f5e82ecd6f"
+ hash: "c3e3db473bdb96fd619b078f0f6b3ceb"
}
Frame {
msec: 4032
- hash: "fe7de3d2083208993e527b13ae7edadd"
+ hash: "acfd8aaf0bb52ad3ef3116bb99f3656a"
}
Frame {
msec: 4048
- hash: "e5b616cefec125e8ad714d0c739ff902"
+ hash: "c5a0877ce86c26b30b642818e83d6118"
}
Frame {
msec: 4064
- hash: "3f3d5f3ca770b84e86fea3188e082493"
+ hash: "b187fde9af2bad37f84f6324afcbb303"
}
Frame {
msec: 4080
- hash: "20fd373c13d4d06b9105c80ed6f4edb7"
+ hash: "0dfe035424d7f31dda88be3b4bb30c8a"
}
Frame {
msec: 4096
- hash: "2d6f6cf66bbd50a6546bc54e5aa91fb8"
+ hash: "893bddc95fbf6e452ba61b06eab1a8c5"
}
Frame {
msec: 4112
- hash: "d4a21104b4f8044486fbe6516e4ae7b5"
+ hash: "35fb89ea579819f4b3416ff1c1b1cc9d"
}
Frame {
msec: 4128
- hash: "fd66704ce98410a7b1dd69f7cd6ddd26"
+ hash: "316371649f9a1e12e336c5823408eaf9"
}
Frame {
msec: 4144
- hash: "33dcba73c46fa6513d4241e9cc75c417"
+ hash: "ade751c6e497c73a920baf18f0752908"
}
Frame {
msec: 4160
- hash: "c9062e6405b3b7fd0b2a794119220b1d"
+ hash: "86720fa1eeae374c6cc67e107d27e23a"
}
Frame {
msec: 4176
- hash: "c1663c9ad895d67981a170f6b67a5331"
+ hash: "1a6f080227f1ccd03b6c4093b9fdadb3"
}
Frame {
msec: 4192
- hash: "dd058795bd3957d02dc296419c17819c"
+ hash: "f7d7398edba69716ec8c0699d5472dca"
}
Frame {
msec: 4208
- hash: "7cf357d1eb96e65f30a0cb4b7315b2f7"
+ hash: "9e62c9dd25abb203f5c06c7bff0d8363"
}
Frame {
msec: 4224
- hash: "9afbd09687efa09eb3b03570bf8be531"
+ hash: "fd90404238b458fc86a4a17e6a976f9b"
}
Frame {
msec: 4240
- hash: "321d29c57276959e095c5cb9366daf03"
+ hash: "e39668dc347318fc61a365f9006aab3c"
}
Frame {
msec: 4256
- hash: "238c029a6be60ca4e1909d4f1de5633b"
+ hash: "c40f41f635f10f5f9b04b42ba2dc5bb1"
}
Frame {
msec: 4272
- hash: "667b9286f32fe43a0cb5d65cdfa965cd"
+ hash: "c0f971c75b7237de7e9b2f25cc3f34b2"
}
Frame {
msec: 4288
- hash: "51bcca29caecbd92264f271818c400b8"
+ hash: "a1c79481fd1632cfdc396aefb3592534"
}
Frame {
msec: 4304
- hash: "4487366ee7ec1e0fdafc88cfa82e7977"
+ hash: "6eee76f40fc7ec1a1e3d77c849321740"
}
Frame {
msec: 4320
- hash: "f3cafcdab8b47c44dcc2222b9021f253"
+ hash: "0a36746ab17caef5946731c31af3823f"
}
Frame {
msec: 4336
- hash: "e8d25d1b5ea3f580cb46be911ea73556"
+ hash: "863dedd22df4e1d14e73eaeb851e9b66"
}
Frame {
msec: 4352
- hash: "f6926e493dfd7deee613cf9bb7529f5e"
+ hash: "318e8751f7056bb6a004c8a7ce7be870"
}
Frame {
msec: 4368
- hash: "44e2f675f37feb23b53e58fc356a17aa"
+ hash: "8fb2809a366f42c86fad7aa5db3ff22c"
}
Frame {
msec: 4384
- hash: "384478653302b604590c137d1e7289fe"
+ hash: "8aaea666640cb3b27e3374f756fe411b"
}
Frame {
msec: 4400
- hash: "fccc582ba920db36e797bdd7c4c329e5"
+ hash: "1f552095d26a8d145584e36237630916"
}
Frame {
msec: 4416
- hash: "92855bf2208369f361b677bc66e9c79d"
+ hash: "cd5aa55715786cac0f7efc90c7c4b9d6"
}
Frame {
msec: 4432
- hash: "9fc85a4e179b73bb5e92ed982ee13ee7"
+ hash: "7a3153d9309ec338dce3437ecf667646"
}
Frame {
msec: 4448
- hash: "46e199e3311bf5643e4da28c1f1c687a"
+ hash: "c7fa40e69148f1c5ec494ad159b6ce6c"
}
Frame {
msec: 4464
- hash: "9d8a56893bf62535654fadd8b8a04977"
+ hash: "e131bc8ca25ddc4b7dd6582ff034fe14"
}
Frame {
msec: 4480
- hash: "b97e5629f4e9e2617e69361a0ca7f84a"
+ hash: "3174c672e62dae0341d5849e23031280"
}
Frame {
msec: 4496
- hash: "eea82c42aa4eb22b2a3c5f1eb5a78d53"
+ hash: "0b25fb7d33708a3292ede7c66e25a3d7"
}
Frame {
msec: 4512
- hash: "49d9c74894e3f1a5b03c126963296ecb"
+ hash: "84b3cf92b3abc2f5acf07cfccf3c0202"
}
Frame {
msec: 4528
- hash: "e78af45d2042130a9d34b654157a9ada"
+ hash: "fafbd14d296e4954bce7816d811ddd89"
}
Frame {
msec: 4544
- hash: "831fbf842a9107100ed7c91d664edaff"
+ hash: "865018d8408863b741a7082a962236dc"
}
Frame {
msec: 4560
- hash: "d1af7a53eef0b7dcb3da095bba7cdc12"
+ hash: "f626082691429565b55ce9e04b14a665"
}
Frame {
msec: 4576
@@ -1154,31 +1154,31 @@ VisualTest {
}
Frame {
msec: 4608
- hash: "f91c42910b17cb19be33a277b03e1cd2"
+ hash: "b31470b0ac4a593317abc365acb2b281"
}
Frame {
msec: 4624
- hash: "67ff11e6143718c95418f4851265081e"
+ hash: "efd00c43b1b8bbc4bc5496dcfa58c6b0"
}
Frame {
msec: 4640
- hash: "e8dc4593c974902337ea7d58f26bae4c"
+ hash: "498cf6c20aeca609e9d9cea78f0cc6a3"
}
Frame {
msec: 4656
- hash: "9176a3f857d73d626bfba01878c5f213"
+ hash: "b55661b5d9632bc0d7fc7ff3a421a2e7"
}
Frame {
msec: 4672
- hash: "08c7f417093c9e9da70c027ee12b0840"
+ hash: "2f1e402c5e4a0615528f91dd2e183ddd"
}
Frame {
msec: 4688
- hash: "48fb5685e63e81f1790f5481bc06dac4"
+ hash: "d1c166cc7932e72ba22a73637cad65d6"
}
Frame {
msec: 4704
- hash: "71e51c2b97140eb7810e489e6d809437"
+ hash: "374b703e0059fc80b67480113d584754"
}
Frame {
msec: 4720
@@ -1186,19 +1186,19 @@ VisualTest {
}
Frame {
msec: 4736
- hash: "636335822b15f32861696439773e1794"
+ hash: "6a9d033b332f0c0285284fdaddf3bbdb"
}
Frame {
msec: 4752
- hash: "ebd6d5f535f5356201aae297839777a6"
+ hash: "640c227fb62e40c666035e7465ac5c4e"
}
Frame {
msec: 4768
- hash: "ebc8a639c3ef849d47d79b6a91d940fd"
+ hash: "9cf7dc6507befd6ae54f380a7d87a207"
}
Frame {
msec: 4784
- hash: "2988cc8030891abd7493294fc2c6964c"
+ hash: "d1c7b2160c08e03e7a98d7d2db0116f7"
}
Frame {
msec: 4800
@@ -1206,55 +1206,55 @@ VisualTest {
}
Frame {
msec: 4816
- hash: "816d9d278fecde0867efadae2c4b5839"
+ hash: "6e48e605ea1aed4028e02476328f182b"
}
Frame {
msec: 4832
- hash: "b40795c967d37d8cb6b73049a30f40cc"
+ hash: "2dfa5fdfd07e7000caee6abf5fe84378"
}
Frame {
msec: 4848
- hash: "ec9892a5602892ba5a2075b61672d91b"
+ hash: "2b0c2f019b07f1f8b4e5af9a520ab061"
}
Frame {
msec: 4864
- hash: "38bd188beb6633cfe979f6881820c15d"
+ hash: "33cb1aaeb7dafc2475e4337be7cc7892"
}
Frame {
msec: 4880
- hash: "8ee67f06977858444a775ca8c5109411"
+ hash: "91290d1435bedb5010ba135a7f99c0a2"
}
Frame {
msec: 4896
- hash: "d3603c86488b02dc0136cc2588d00d7b"
+ hash: "df7434eb6c6e5d45935d6c6fd03f06d1"
}
Frame {
msec: 4912
- hash: "539ccebf96da504f0c5dfe5496ed95ce"
+ hash: "48dfe78dcdd65242132071454fb9ea33"
}
Frame {
msec: 4928
- hash: "b60450e46a2566d1feaf9749e897fa8b"
+ hash: "1b288012e123cb6051bfa180ea2a2bc0"
}
Frame {
msec: 4944
- hash: "daf19227a7e51e437d0a13fdf8b1a26f"
+ hash: "84b23d92987f59df336d9b269e3b7bbc"
}
Frame {
msec: 4960
- hash: "09371a634d7801742075aadc131b5fb6"
+ hash: "c413ca53240df702c3ba0c7f4dacca3b"
}
Frame {
msec: 4976
- hash: "40b2a59c83f1223025eca6e2e19a87d8"
+ hash: "339c06a2e1fc05ebfd3732097b9c5242"
}
Frame {
msec: 4992
- hash: "4818f99e2f71c0ec7636aa777f4df875"
+ hash: "f1e647e274ac8c8458d2c1e576623688"
}
Frame {
msec: 5008
- hash: "7c9895dae776c2a4a6d5e1dd50d86336"
+ hash: "a70dc2f51ecfc164595cfef61c1da245"
}
Frame {
msec: 5024
@@ -1262,163 +1262,163 @@ VisualTest {
}
Frame {
msec: 5040
- hash: "b12cbf8e97bc48e12d9543ffc1c578a2"
+ hash: "26c25a031944c677b30f69c8498ac6ce"
}
Frame {
msec: 5056
- hash: "9fd5a0f023f89511bdd4b7e429f940ab"
+ hash: "ebc2328766e8736eac989e309968d8f9"
}
Frame {
msec: 5072
- hash: "39ed52571b12a9cea5409d5efc80c283"
+ hash: "41d55f53bfc74e614c906d3f6b813704"
}
Frame {
msec: 5088
- hash: "2dc05cabc6eb3e73e9946ebafed99fd4"
+ hash: "135e97adb3f19aa19d746ece1b2b3d02"
}
Frame {
msec: 5104
- hash: "599b244ff9b4ddceb682a059338f6f97"
+ hash: "85c4454dbe9a39b3005f32fd7a06b1b2"
}
Frame {
msec: 5120
- hash: "d54b5b295a9ca2bc65131a0775d8d009"
+ hash: "7561e0dd6970f7c81bcb53c9371d4405"
}
Frame {
msec: 5136
- hash: "b075ae21dbd3acef5c4d0f11cadce3c9"
+ hash: "c9961d5abf700a06ed294ce7aecb6147"
}
Frame {
msec: 5152
- hash: "57d989f52d8bee06694166bf8bdffef0"
+ hash: "29acf87effa3c21322334080776c566e"
}
Frame {
msec: 5168
- hash: "9f87d4d33942d32a4048ca2b785a1fed"
+ hash: "04990a79d5ff5cb41dcd48d3e3bf5b11"
}
Frame {
msec: 5184
- hash: "dc02f4f6b0ff1572a64fd133819fd794"
+ hash: "f40c78c37a26249ecb161af778631f7b"
}
Frame {
msec: 5200
- hash: "c1b1056ef06a0454680f2146bb87a56b"
+ hash: "eddacaeae7c47d063db737f678896da1"
}
Frame {
msec: 5216
- hash: "e92daff761c739f231ba2c05785c44fb"
+ hash: "5ae523dc1115fd0904875718e05aa2a5"
}
Frame {
msec: 5232
- hash: "96773abcace99ba692a5be096df85a54"
+ hash: "f09c299412a9e2fd353c4937ad959f25"
}
Frame {
msec: 5248
- hash: "31ca6f5b62fd8c08fa17b1008c4e6a22"
+ hash: "9caeae0abd3bc665bd307997baea6a48"
}
Frame {
msec: 5264
- hash: "8e44d6cf4c29313352ad0118db003958"
+ hash: "e9d222c9d23773488b64b0a6323c1095"
}
Frame {
msec: 5280
- hash: "cf8ffc1132935b5df49da90953009fa0"
+ hash: "ad34c46ab3d418a2af7bffc59e720868"
}
Frame {
msec: 5296
- hash: "f9c919f45316d93d2c8693b62930850f"
+ hash: "ff0d8cfd272fca5be34b663a7e52f283"
}
Frame {
msec: 5312
- hash: "395863cffd5440b0a4805975b766a3cf"
+ hash: "55f95277276217de16b6b43090bbb807"
}
Frame {
msec: 5328
- hash: "967f7e4f58a8e29b5d76eac011af643d"
+ hash: "387fadf4140d335c0b05cfee0c37a413"
}
Frame {
msec: 5344
- hash: "80529f6b8d12838b58c4af73c1985792"
+ hash: "10a1a5a91c11aa8279ae4e57e4d3946b"
}
Frame {
msec: 5360
- hash: "80529f6b8d12838b58c4af73c1985792"
+ hash: "414f7bf3a3ec05a9840cd104a13d5504"
}
Frame {
msec: 5376
- hash: "8beee45f26f9f7b94b84a807a0c42217"
+ hash: "e027716402ead36450732c8350e614b5"
}
Frame {
msec: 5392
- hash: "b6936d72cbaff0c6bb64fc08152e8680"
+ hash: "0190f59275f01429ee6761b39ce99fc1"
}
Frame {
msec: 5408
- hash: "3aace4dc5bc503ed0df1b00b444780f0"
+ hash: "7f99dd337561f006a7c56babe3c10c38"
}
Frame {
msec: 5424
- hash: "30692e6658ac730670a489c880fd4485"
+ hash: "4bbb76393e56b5da723c1f33a7694013"
}
Frame {
msec: 5440
- hash: "30692e6658ac730670a489c880fd4485"
+ hash: "00eedf86916629fe90f3c2f36e0c689e"
}
Frame {
msec: 5456
- hash: "d36e1a56078d7cfa246b57f886c230b4"
+ hash: "84d1f5a6604b75371f2fa7b60a59299b"
}
Frame {
msec: 5472
- hash: "0374aae76f8cfd75f119ff4b86dba817"
+ hash: "00488220a460746be6d7d1b66d15c392"
}
Frame {
msec: 5488
- hash: "d75e53f2cea8e9b61a5e50f95060552e"
+ hash: "cae5a6d45425d641228210a47c5ee5f6"
}
Frame {
msec: 5504
- hash: "d75e53f2cea8e9b61a5e50f95060552e"
+ hash: "670a2132e65564ca2cfd58ec9842ba93"
}
Frame {
msec: 5520
- hash: "af5f794f73e16a5c3b9e437418c873ee"
+ hash: "212b6cc9fa130bec9579cf218e1f7eeb"
}
Frame {
msec: 5536
- hash: "af5f794f73e16a5c3b9e437418c873ee"
+ hash: "b159e67541b5b1b5071f6cd041c62293"
}
Frame {
msec: 5552
- hash: "8532ee7ce3488f9e038643e4fa48751d"
+ hash: "8c4e62d26e19c32200772edefd329db3"
}
Frame {
msec: 5568
- hash: "136fb272f4d806927b46a1269b18f63d"
+ hash: "1ff120d0444e398cc79190012b548b4b"
}
Frame {
msec: 5584
- hash: "136fb272f4d806927b46a1269b18f63d"
+ hash: "1c75bccd5e19ee9a2644585b726db048"
}
Frame {
msec: 5600
- hash: "845581f8d03f4fe9323fc282e84f919b"
+ hash: "bc16aff96b1f9cfe3807e95e371a8f26"
}
Frame {
msec: 5616
- hash: "845581f8d03f4fe9323fc282e84f919b"
+ hash: "35a5fdb20bdbaf0122cac4cad60e7bb8"
}
Frame {
msec: 5632
- hash: "e64fa5eba05f81e6f263dc8543f21b1a"
+ hash: "ea7ac72c81abff8af260be508b6cf117"
}
Frame {
msec: 5648
- hash: "e64fa5eba05f81e6f263dc8543f21b1a"
+ hash: "2d112d040fd425c59b511066737e494d"
}
Frame {
msec: 5664
- hash: "1c25b3d65e8590f8c213afa76b722e97"
+ hash: "769d2724656dbf0e793ecd8e42db3de2"
}
Frame {
msec: 5680
@@ -1426,7 +1426,7 @@ VisualTest {
}
Frame {
msec: 5696
- hash: "451a9408b04826ab35749d9120efd6bb"
+ hash: "760a103d4524f8b665c6ff42185a8ce7"
}
Frame {
msec: 5712
@@ -1434,11 +1434,11 @@ VisualTest {
}
Frame {
msec: 5728
- hash: "451a9408b04826ab35749d9120efd6bb"
+ hash: "3fad6b23b0b78f844e02fe307e20d376"
}
Frame {
msec: 5744
- hash: "73c06997014af4e008b546b53fe349fb"
+ hash: "451a9408b04826ab35749d9120efd6bb"
}
Frame {
msec: 5760
@@ -1454,19 +1454,19 @@ VisualTest {
}
Frame {
msec: 5808
- hash: "90fb4e4ba04ac32b52c10b3258431c04"
+ hash: "da2a1e5e988c27577ceb453cb0383703"
}
Frame {
msec: 5824
- hash: "90fb4e4ba04ac32b52c10b3258431c04"
+ hash: "ae2407f8da9a047d2725bcdcf8e568b2"
}
Frame {
msec: 5840
- hash: "9becb90d9f8a61f5afacdc53d137ebcb"
+ hash: "ae2407f8da9a047d2725bcdcf8e568b2"
}
Frame {
msec: 5856
- hash: "9becb90d9f8a61f5afacdc53d137ebcb"
+ hash: "e97a5d968da37789c28816608fa262a1"
}
Frame {
msec: 5872
@@ -1474,27 +1474,27 @@ VisualTest {
}
Frame {
msec: 5888
- hash: "9becb90d9f8a61f5afacdc53d137ebcb"
+ hash: "9811f823e057882d384f36d7227fa12e"
}
Frame {
msec: 5904
- hash: "9becb90d9f8a61f5afacdc53d137ebcb"
+ hash: "1e7a308d18851db0a430542178944c67"
}
Frame {
msec: 5920
- hash: "7e16e6360fc2e9db67dbf11d58042745"
+ hash: "692931f1db6ddf0b37eb64026ca830f8"
}
Frame {
msec: 5936
- hash: "7e16e6360fc2e9db67dbf11d58042745"
+ hash: "2117c775960234c297187ea2e9d51e73"
}
Frame {
msec: 5952
- hash: "7e16e6360fc2e9db67dbf11d58042745"
+ hash: "f8038dc4b67b92ef776a97589240e8c5"
}
Frame {
msec: 5968
- hash: "7e16e6360fc2e9db67dbf11d58042745"
+ hash: "51dff66a7767e3464fda60f2cf906700"
}
Frame {
msec: 5984
@@ -1518,48 +1518,48 @@ VisualTest {
}
Frame {
msec: 6064
- hash: "7e16e6360fc2e9db67dbf11d58042745"
+ hash: "51dff66a7767e3464fda60f2cf906700"
}
Frame {
msec: 6080
- hash: "7e16e6360fc2e9db67dbf11d58042745"
+ hash: "f8038dc4b67b92ef776a97589240e8c5"
}
Frame {
msec: 6096
- hash: "7e16e6360fc2e9db67dbf11d58042745"
+ hash: "2117c775960234c297187ea2e9d51e73"
}
Frame {
msec: 6112
- hash: "7e16e6360fc2e9db67dbf11d58042745"
+ hash: "692931f1db6ddf0b37eb64026ca830f8"
}
Frame {
msec: 6128
- hash: "9becb90d9f8a61f5afacdc53d137ebcb"
+ hash: "f01b7368e42381dda5eadf56482ea993"
}
Frame {
msec: 6144
- hash: "9becb90d9f8a61f5afacdc53d137ebcb"
+ hash: "9811f823e057882d384f36d7227fa12e"
}
Frame {
msec: 6160
- hash: "9becb90d9f8a61f5afacdc53d137ebcb"
+ hash: "9b40b6c75af876567ff49688bc710f2a"
}
Frame {
msec: 6176
- hash: "9becb90d9f8a61f5afacdc53d137ebcb"
+ hash: "e97a5d968da37789c28816608fa262a1"
}
Frame {
msec: 6192
- hash: "9becb90d9f8a61f5afacdc53d137ebcb"
+ hash: "2cd0627fdc63bb91f8dcac789d7a93b2"
}
Frame {
msec: 6208
- hash: "9becb90d9f8a61f5afacdc53d137ebcb"
+ hash: "ae2407f8da9a047d2725bcdcf8e568b2"
}
Key {
type: 6
key: 16777249
- modifiers: 67108864
+ modifiers: 0
text: ""
autorep: false
count: 1
@@ -1578,7 +1578,7 @@ VisualTest {
}
Frame {
msec: 6272
- hash: "73c06997014af4e008b546b53fe349fb"
+ hash: "90fb4e4ba04ac32b52c10b3258431c04"
}
Frame {
msec: 6288
@@ -1586,7 +1586,7 @@ VisualTest {
}
Frame {
msec: 6304
- hash: "73c06997014af4e008b546b53fe349fb"
+ hash: "451a9408b04826ab35749d9120efd6bb"
}
Frame {
msec: 6320
@@ -1594,7 +1594,7 @@ VisualTest {
}
Frame {
msec: 6336
- hash: "451a9408b04826ab35749d9120efd6bb"
+ hash: "3fad6b23b0b78f844e02fe307e20d376"
}
Frame {
msec: 6352
@@ -1602,22 +1602,22 @@ VisualTest {
}
Frame {
msec: 6368
- hash: "1c25b3d65e8590f8c213afa76b722e97"
+ hash: "769d2724656dbf0e793ecd8e42db3de2"
}
Frame {
msec: 6384
- hash: "1c25b3d65e8590f8c213afa76b722e97"
+ hash: "9e375cb3815723a2c5dda39c79325e96"
}
Frame {
msec: 6400
- hash: "e64fa5eba05f81e6f263dc8543f21b1a"
+ hash: "77a245991ed8e40163bd0224eb15f20e"
}
Frame {
msec: 6416
- hash: "e64fa5eba05f81e6f263dc8543f21b1a"
+ hash: "e6936f1122c8c0a76b0eb61ad086a9f1"
}
Frame {
msec: 6432
- hash: "845581f8d03f4fe9323fc282e84f919b"
+ hash: "8048f84221a02e7102cf3272445862a1"
}
}
diff --git a/tests/auto/declarative/visual/qmlgraphicsflipable/test-flipable.qml b/tests/auto/declarative/visual/qmlgraphicsflipable/test-flipable.qml
index ba2e93f..64adb61 100644
--- a/tests/auto/declarative/visual/qmlgraphicsflipable/test-flipable.qml
+++ b/tests/auto/declarative/visual/qmlgraphicsflipable/test-flipable.qml
@@ -16,12 +16,10 @@ Rectangle {
id: flipable
width: 200; height: 200
- property int angle: 0
-
transform: Rotation {
+ id: rotation; angle: 0
origin.x: 100; origin.y: 100
axis.x: 0; axis.y: 1; axis.z: 0
- angle: flipable.angle
}
front: Rectangle {
@@ -34,7 +32,7 @@ Rectangle {
states: State {
name: "back"
- PropertyChanges { target: flipable; angle: 180 }
+ PropertyChanges { target: rotation; angle: 180 }
}
transitions: Transition {
@@ -46,12 +44,10 @@ Rectangle {
id: flipable2
x: 200; width: 200; height: 200
- property int angle: 0
-
transform: Rotation {
+ id: rotation2; angle: 0
origin.x: 100; origin.y: 100
axis.x: 1; axis.z: 0
- angle: flipable2.angle
}
front: Rectangle {
@@ -64,7 +60,7 @@ Rectangle {
states: State {
name: "back"
- PropertyChanges { target: flipable2; angle: 180 }
+ PropertyChanges { target: rotation2; angle: 180 }
}
transitions: Transition {
diff --git a/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview.0.png b/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview.0.png
new file mode 100644
index 0000000..442ba9f
--- /dev/null
+++ b/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview.0.png
Binary files differ
diff --git a/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview.1.png b/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview.1.png
new file mode 100644
index 0000000..fa689f7
--- /dev/null
+++ b/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview.1.png
Binary files differ
diff --git a/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview.2.png b/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview.2.png
new file mode 100644
index 0000000..157bb99
--- /dev/null
+++ b/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview.2.png
Binary files differ
diff --git a/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview.3.png b/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview.3.png
new file mode 100644
index 0000000..8c49acb
--- /dev/null
+++ b/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview.3.png
Binary files differ
diff --git a/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview.4.png b/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview.4.png
new file mode 100644
index 0000000..eb2bf54
--- /dev/null
+++ b/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview.4.png
Binary files differ
diff --git a/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview.qml b/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview.qml
new file mode 100644
index 0000000..837e0cc
--- /dev/null
+++ b/tests/auto/declarative/visual/qmlgraphicspathview/data/test-pathview.qml
@@ -0,0 +1,1495 @@
+import Qt.VisualTest 4.6
+
+VisualTest {
+ Frame {
+ msec: 0
+ }
+ Frame {
+ msec: 16
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 32
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 48
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 64
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 80
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 96
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 112
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 128
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 144
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 160
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 176
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 192
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 208
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 224
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 240
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 256
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 272
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 288
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 304
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 320
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 336
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 352
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 368
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 384
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 400
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 416
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 432
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 448
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 464
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 480
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 496
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 512
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 528
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 544
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 560
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 576
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 592
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 608
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 624
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 640
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 656
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 672
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 688
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 704
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 720
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 736
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 752
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 768
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 784
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 800
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 816
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 832
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 848
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 864
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 880
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 896
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 912
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 928
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 944
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 960
+ image: "test-pathview.0.png"
+ }
+ Frame {
+ msec: 976
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 992
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 1008
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 1024
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 1040
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 1056
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 1072
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 1088
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 1104
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 1120
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 1136
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 734; y: 177
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1152
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Frame {
+ msec: 1168
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 732; y: 177
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1184
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 726; y: 179
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1200
+ hash: "89bb697bb7b7fab38d3ff56e23e43959"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 716; y: 183
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1216
+ hash: "42c141399fda1cbb2ae117788d87092a"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 700; y: 190
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1232
+ hash: "4d44343eb91838e3eb73e2e5326b5ac2"
+ }
+ Frame {
+ msec: 1248
+ hash: "4d44343eb91838e3eb73e2e5326b5ac2"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 677; y: 200
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1264
+ hash: "15aaccb4f7961a4e3e6fe57260779d00"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 651; y: 209
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1280
+ hash: "5628fa3ac9893f5c9690013aad4b881a"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 619; y: 219
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1296
+ hash: "384db58b6de773ac39ae81e6af4d547d"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 579; y: 229
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1312
+ hash: "2a15a27a138b9d3d646b827d026e8843"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 535; y: 237
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 535; y: 237
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1328
+ hash: "098176f48a148eb2bc5ef67c307baa1c"
+ }
+ Frame {
+ msec: 1344
+ hash: "098176f48a148eb2bc5ef67c307baa1c"
+ }
+ Frame {
+ msec: 1360
+ hash: "f838ab4301bf9d3106cec529f855cecd"
+ }
+ Frame {
+ msec: 1376
+ hash: "9725322067a04f83717b059d4970d610"
+ }
+ Frame {
+ msec: 1392
+ hash: "3605cfbebc3a9eb4460efb2d4b9b6da2"
+ }
+ Frame {
+ msec: 1408
+ hash: "4503a368d8db25d112503dbc3934541d"
+ }
+ Frame {
+ msec: 1424
+ hash: "80894cc06c82264bf527398ea235da12"
+ }
+ Frame {
+ msec: 1440
+ hash: "d4f9b90f886fc667309b33c9a296410c"
+ }
+ Frame {
+ msec: 1456
+ hash: "889d01025cff679b61bff182a1ac9cbc"
+ }
+ Frame {
+ msec: 1472
+ hash: "6147bc4455e7cb5ae55cd47be8dc4ad6"
+ }
+ Frame {
+ msec: 1488
+ hash: "ddd10a294eb6b19698c4e9fe4f1508fe"
+ }
+ Frame {
+ msec: 1504
+ hash: "748e8d9c1971f6258acee5133b7f114b"
+ }
+ Frame {
+ msec: 1520
+ hash: "1ef3f32ec9ef950588266bacbe3554a0"
+ }
+ Frame {
+ msec: 1536
+ hash: "57853ff47b65aba9e76f90b2efec4f8f"
+ }
+ Frame {
+ msec: 1552
+ hash: "3985fea21d89d223c1461d5e96364c76"
+ }
+ Frame {
+ msec: 1568
+ hash: "cb5f6a3caeeaed12e91efe43867f2c1f"
+ }
+ Frame {
+ msec: 1584
+ hash: "cdd4176776d5969373e0fc9a117e3c87"
+ }
+ Frame {
+ msec: 1600
+ hash: "3bac2e7506472db2ae11734240f1c3f4"
+ }
+ Frame {
+ msec: 1616
+ hash: "bb572659d79ebda7134c039e40cf2633"
+ }
+ Frame {
+ msec: 1632
+ hash: "e610181bfa17a85281f9c7417088f04f"
+ }
+ Frame {
+ msec: 1648
+ hash: "eb23ff021909589b6d8ce47ebff2c3ed"
+ }
+ Frame {
+ msec: 1664
+ hash: "c321dda3878c4b97cc63246c47368224"
+ }
+ Frame {
+ msec: 1680
+ hash: "6a65cdfd50e1455356040d4cbc09905e"
+ }
+ Frame {
+ msec: 1696
+ hash: "f2a44b12e4e5bae8283c4d227949e4e8"
+ }
+ Frame {
+ msec: 1712
+ hash: "55418d661f3257b5b79a7dbb172b5b70"
+ }
+ Frame {
+ msec: 1728
+ hash: "483d7111c86951918746d6ebe0dd9655"
+ }
+ Frame {
+ msec: 1744
+ hash: "85c83ac3a294a9320bb04a6721ecf7d5"
+ }
+ Frame {
+ msec: 1760
+ hash: "0d658b897b8e03397ddd8ffe475c2fc0"
+ }
+ Frame {
+ msec: 1776
+ hash: "6ed9d7ea344b3c1b1d9196ee36b2f89a"
+ }
+ Frame {
+ msec: 1792
+ hash: "6a1e7f6c03769c2c88e6343fb6c1a2a4"
+ }
+ Frame {
+ msec: 1808
+ hash: "9dc51f46e072eac4494d7318f2ecb39b"
+ }
+ Frame {
+ msec: 1824
+ hash: "59e833981c3fcd8a71f4a16d1c454b3a"
+ }
+ Frame {
+ msec: 1840
+ hash: "29b953efdda00548d8cf6fb49fa60d13"
+ }
+ Frame {
+ msec: 1856
+ hash: "fd4611f703f94ebefcc64781993ca85c"
+ }
+ Frame {
+ msec: 1872
+ hash: "aa4789ede618963157b40f099ce84987"
+ }
+ Frame {
+ msec: 1888
+ hash: "8a326b46ec536a67626ee2d2bc06aa9f"
+ }
+ Frame {
+ msec: 1904
+ hash: "011ff557672d47591e4f0f5c5ee418f1"
+ }
+ Frame {
+ msec: 1920
+ image: "test-pathview.1.png"
+ }
+ Frame {
+ msec: 1936
+ hash: "69e854e8ac7f1bc1972588ffa01728b6"
+ }
+ Frame {
+ msec: 1952
+ hash: "49182b7ae9ef5fb4b9234969abd05960"
+ }
+ Frame {
+ msec: 1968
+ hash: "53de60f682574b7a9e6ffaee175fc9ff"
+ }
+ Frame {
+ msec: 1984
+ hash: "2de74fe5b8848c5c781b796146871f45"
+ }
+ Frame {
+ msec: 2000
+ hash: "33c87146d8c24dd9c2271d16a8ff5b53"
+ }
+ Frame {
+ msec: 2016
+ hash: "fdb29214e20d744d9776907061f50358"
+ }
+ Frame {
+ msec: 2032
+ hash: "8c7c920416c9b775e790e6da24c32927"
+ }
+ Frame {
+ msec: 2048
+ hash: "86b456059e4701379447fffaf9e072f0"
+ }
+ Frame {
+ msec: 2064
+ hash: "f92cc485ee03ef5bce3c4cdc35e00318"
+ }
+ Frame {
+ msec: 2080
+ hash: "2fad58883cb20273cfd79ebca345a66d"
+ }
+ Frame {
+ msec: 2096
+ hash: "84505ebbc6e12817f11f64aa6f61a0bf"
+ }
+ Frame {
+ msec: 2112
+ hash: "ded83cacb89838cc0f3ba14bcc69b66b"
+ }
+ Frame {
+ msec: 2128
+ hash: "5bb37e75bb45eaa6067c604b83ae13d7"
+ }
+ Frame {
+ msec: 2144
+ hash: "4ee9e4c90c40dbc25a0ce884d9c2c37f"
+ }
+ Frame {
+ msec: 2160
+ hash: "cb7148ff6f611038c29af36c8552b8c2"
+ }
+ Frame {
+ msec: 2176
+ hash: "a591d8cb42570272dd264d5f1ce595ab"
+ }
+ Frame {
+ msec: 2192
+ hash: "4e61657405d32dbcd39d3637f8af0958"
+ }
+ Frame {
+ msec: 2208
+ hash: "9c7c1411dd5d3c1c8fb78e63e14061fe"
+ }
+ Frame {
+ msec: 2224
+ hash: "ae83a37e99b578fa0872ed6bc2776bc0"
+ }
+ Frame {
+ msec: 2240
+ hash: "e8cb5a8a40c1e78c87c616f77d8de270"
+ }
+ Frame {
+ msec: 2256
+ hash: "9df093e4bcfa32be5924a0ca70bdaa3b"
+ }
+ Frame {
+ msec: 2272
+ hash: "40c358066d508143bee1446d12fe7b89"
+ }
+ Frame {
+ msec: 2288
+ hash: "a929ed6efc7fc68b38635f3c74242f52"
+ }
+ Frame {
+ msec: 2304
+ hash: "86ff721a3178b689ea47b6bc274a2b41"
+ }
+ Frame {
+ msec: 2320
+ hash: "ed1f680f6d05f54ceb75c9bae3a0716a"
+ }
+ Frame {
+ msec: 2336
+ hash: "3f09a565df2beb51f366a1b3fb6adfe9"
+ }
+ Frame {
+ msec: 2352
+ hash: "13468347bd26bab60f1db826fb17631c"
+ }
+ Frame {
+ msec: 2368
+ hash: "9f7d085fea5788a457098973f17c36cb"
+ }
+ Frame {
+ msec: 2384
+ hash: "4114b93246155b3434200831b2995330"
+ }
+ Frame {
+ msec: 2400
+ hash: "487171bd1430f74e3d51b5e215c34b5c"
+ }
+ Frame {
+ msec: 2416
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2432
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2448
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2464
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2480
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2496
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2512
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2528
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2544
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2560
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2576
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2592
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2608
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2624
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2640
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2656
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2672
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2688
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2704
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2720
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2736
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2752
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2768
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2784
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2800
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2816
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2832
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2848
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2864
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2880
+ image: "test-pathview.2.png"
+ }
+ Frame {
+ msec: 2896
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2912
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2928
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2944
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2960
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2976
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 2992
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 3008
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 3024
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 3040
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 3056
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 3072
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 3088
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 728; y: 181
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3104
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 3120
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Frame {
+ msec: 3136
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 727; y: 181
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3152
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 723; y: 181
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3168
+ hash: "7ba9783ce63db6ad6b5f725a4ecd4eb8"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 717; y: 184
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3184
+ hash: "6dcec6cdaa35eba74607ba64d6ea2ec0"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 705; y: 188
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3200
+ hash: "16b7b4847fe86b25d8d6136106a4c400"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 686; y: 197
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3216
+ hash: "d946d55b19c99fa25bf1c04f2b71026a"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 661; y: 207
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3232
+ hash: "96f40f5071365cde769c733fd1ef5a24"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 626; y: 221
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3248
+ hash: "7004058b95b7eab3ebba5c80c0923982"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 582; y: 235
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3264
+ hash: "2c78880237c414182f97f1709f1eef0f"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 532; y: 246
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3280
+ hash: "c90a15ec9f88008ca8b0ec0185444d71"
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 532; y: 246
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3296
+ hash: "c90a15ec9f88008ca8b0ec0185444d71"
+ }
+ Frame {
+ msec: 3312
+ hash: "36461e2a4cd860cac32223b8ee73c657"
+ }
+ Frame {
+ msec: 3328
+ hash: "5f9b3ad9202fb02a4c6fea28c248ad22"
+ }
+ Frame {
+ msec: 3344
+ hash: "d0d23c4e1ddb2d9ffa0ecc38030ae15c"
+ }
+ Frame {
+ msec: 3360
+ hash: "8e2e2d3eaf557c453f34016b6614e495"
+ }
+ Frame {
+ msec: 3376
+ hash: "7402c747fa7276293a0a72d48d342782"
+ }
+ Frame {
+ msec: 3392
+ hash: "6090c30e4d722a32c083a25171fb11ff"
+ }
+ Frame {
+ msec: 3408
+ hash: "f770d940cf287fec4b0803f7310292a8"
+ }
+ Frame {
+ msec: 3424
+ hash: "558e4ce32df69357b70a8285b00fe347"
+ }
+ Frame {
+ msec: 3440
+ hash: "8814168503c9a72ea8d3fa1e503f33d9"
+ }
+ Frame {
+ msec: 3456
+ hash: "6f5513d22e545096fadc6f5c4112902e"
+ }
+ Frame {
+ msec: 3472
+ hash: "43f11d8ac16fd3e8199e555528817e14"
+ }
+ Frame {
+ msec: 3488
+ hash: "d64bafdbd26878a323dae918d5e0a36d"
+ }
+ Frame {
+ msec: 3504
+ hash: "1c70bdddfc3751ae3864f008170f8b06"
+ }
+ Frame {
+ msec: 3520
+ hash: "bb7a18691fcd371e9d382b5bba4a0573"
+ }
+ Frame {
+ msec: 3536
+ hash: "547e15f5dea2d9aa3ed44640b25028b9"
+ }
+ Frame {
+ msec: 3552
+ hash: "c11b86a256fac6be10b9a54564903d6f"
+ }
+ Frame {
+ msec: 3568
+ hash: "0ada2dc586894d5e37de2632d2b37b15"
+ }
+ Frame {
+ msec: 3584
+ hash: "0ae1a39ea196a0e734d80dbdea67b285"
+ }
+ Frame {
+ msec: 3600
+ hash: "3cb70e64f9ab8aad841326dc2d2f1615"
+ }
+ Frame {
+ msec: 3616
+ hash: "a8f8b5ff19df9163ea628b589b675a5e"
+ }
+ Frame {
+ msec: 3632
+ hash: "26fcc73f477db0ea731bc18b00b4c791"
+ }
+ Frame {
+ msec: 3648
+ hash: "8702e49f3f26e1e21970e78c8aa4040a"
+ }
+ Frame {
+ msec: 3664
+ hash: "1a482a39d02779d8733e348b713f2312"
+ }
+ Frame {
+ msec: 3680
+ hash: "c728cc4a8e4d0a8d983514f86a92eae0"
+ }
+ Frame {
+ msec: 3696
+ hash: "82360ab373b08bf6a5d9e9ea9d0d18aa"
+ }
+ Frame {
+ msec: 3712
+ hash: "6231a4bce6cfc1e26a9606cc041acdbc"
+ }
+ Frame {
+ msec: 3728
+ hash: "6e3b48862fc749f15aa2dec1c17d1de0"
+ }
+ Frame {
+ msec: 3744
+ hash: "6c9e79a5692a3810b2a9058790f54cd7"
+ }
+ Frame {
+ msec: 3760
+ hash: "0652c67fedda0d5e55858ddefff2da9e"
+ }
+ Frame {
+ msec: 3776
+ hash: "3b058c0efeb3a9da54a1de72a1792a83"
+ }
+ Frame {
+ msec: 3792
+ hash: "96e6fb39c8dbfe4a00bf116bf80aac4d"
+ }
+ Frame {
+ msec: 3808
+ hash: "979c0c78c41e0f337cfe1b384fbbe51a"
+ }
+ Frame {
+ msec: 3824
+ hash: "8be0d6987a6d12864f30336b249e4b16"
+ }
+ Frame {
+ msec: 3840
+ image: "test-pathview.3.png"
+ }
+ Frame {
+ msec: 3856
+ hash: "31e665f804a52a4dc88eab5dba78ae5a"
+ }
+ Frame {
+ msec: 3872
+ hash: "b7d4cf5a6a3ac79da3be101b50b38bc2"
+ }
+ Frame {
+ msec: 3888
+ hash: "559b1b8467b611cdeb7f2ae660e3bf51"
+ }
+ Frame {
+ msec: 3904
+ hash: "66abb5af85e793569382efb04744d0de"
+ }
+ Frame {
+ msec: 3920
+ hash: "b64eff8bbea5a953d146333363825724"
+ }
+ Frame {
+ msec: 3936
+ hash: "47b794c971c4d47baf15e1d63d65ac03"
+ }
+ Frame {
+ msec: 3952
+ hash: "b3882fa14f3cb7428c660737656d7ea2"
+ }
+ Frame {
+ msec: 3968
+ hash: "a6bd71c7d3a0f3f53674ea8e1334e560"
+ }
+ Frame {
+ msec: 3984
+ hash: "0926d3cd53aabb789686e34d91ef23dc"
+ }
+ Frame {
+ msec: 4000
+ hash: "914c4fa7264111b4a42c82a60701d652"
+ }
+ Frame {
+ msec: 4016
+ hash: "84c1fa22440a61126b79c38605b6f9ca"
+ }
+ Frame {
+ msec: 4032
+ hash: "b684fcf9f4725cfc02af0187454dfaf8"
+ }
+ Frame {
+ msec: 4048
+ hash: "2e94c1ca74af4eb836a0c505d131f263"
+ }
+ Frame {
+ msec: 4064
+ hash: "5f04912674e1bcdb16176976d10ce995"
+ }
+ Frame {
+ msec: 4080
+ hash: "aaf0bcef4a15aa1c699eaa1ce817c8ed"
+ }
+ Frame {
+ msec: 4096
+ hash: "97fd5bdcfa367191fbd3689658ab3273"
+ }
+ Frame {
+ msec: 4112
+ hash: "d76d6c59411636a0e9ac2e0c847b3fe3"
+ }
+ Frame {
+ msec: 4128
+ hash: "9cb88a76c962623b1a9cf4e7093d6e54"
+ }
+ Frame {
+ msec: 4144
+ hash: "ec3d7075680296905b1bdd6fdd9fcc40"
+ }
+ Frame {
+ msec: 4160
+ hash: "43c70dabc45ed059e8b876eb2ba5c66e"
+ }
+ Frame {
+ msec: 4176
+ hash: "8f97ca5c3092a20009c5d00139105a22"
+ }
+ Frame {
+ msec: 4192
+ hash: "d0f225d4b03495218f7916698e254338"
+ }
+ Frame {
+ msec: 4208
+ hash: "f8725467353a8f27bc5570af157c93c7"
+ }
+ Frame {
+ msec: 4224
+ hash: "749c8ca5c0a7774c81805b792e6b70e3"
+ }
+ Frame {
+ msec: 4240
+ hash: "d353c4a8a5eecb1dce30f4a5b85b1ef4"
+ }
+ Frame {
+ msec: 4256
+ hash: "a7105f3f1ddace730d0b4a12a3560208"
+ }
+ Frame {
+ msec: 4272
+ hash: "918f480af8a35f6074ff1e202dae2660"
+ }
+ Frame {
+ msec: 4288
+ hash: "ed98d08eb30db1b41aaf2a58f3b59398"
+ }
+ Frame {
+ msec: 4304
+ hash: "c362cf053b3749a44d1fc33483f9952b"
+ }
+ Frame {
+ msec: 4320
+ hash: "9b01b2c771ef86ff4a8ee3f6a4676e3c"
+ }
+ Frame {
+ msec: 4336
+ hash: "70ccec3c9db95206b5589d43dcd52b13"
+ }
+ Frame {
+ msec: 4352
+ hash: "57e7397c6aadd0d4d5c9d9d5fcdd8fde"
+ }
+ Frame {
+ msec: 4368
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4384
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4400
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4416
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4432
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4448
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4464
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4480
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4496
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4512
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4528
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4544
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4560
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4576
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4592
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4608
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4624
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4640
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4656
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4672
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4688
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4704
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4720
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4736
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4752
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4768
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4784
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4800
+ image: "test-pathview.4.png"
+ }
+ Frame {
+ msec: 4816
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4832
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4848
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4864
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4880
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4896
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4912
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4928
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4944
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Key {
+ type: 6
+ key: 16777249
+ modifiers: 67108864
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 4960
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4976
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 4992
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 5008
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 5024
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 5040
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 5056
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 5072
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 5088
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 5104
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 5120
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 5136
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 5152
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 5168
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 5184
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 5200
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+ Frame {
+ msec: 5216
+ hash: "299b24eae7720e1711744b23335bca8c"
+ }
+}
diff --git a/tests/auto/declarative/visual/qmlgraphicspathview/test-pathview.qml b/tests/auto/declarative/visual/qmlgraphicspathview/test-pathview.qml
new file mode 100644
index 0000000..1ffbe15
--- /dev/null
+++ b/tests/auto/declarative/visual/qmlgraphicspathview/test-pathview.qml
@@ -0,0 +1,60 @@
+import Qt 4.6
+
+Rectangle {
+ width: 800; height: 450
+
+ 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: 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 }
+ }
+ }
+}