summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Smith <martin.smith@nokia.com>2010-12-09 10:09:36 +0100
committerMartin Smith <martin.smith@nokia.com>2010-12-09 10:09:36 +0100
commit91518478d32a5d5ce188b02f92e744fc782dd687 (patch)
treeb1ac54dd94358b0ad406c22d80b40f871fd196eb
parent1e84041247505502fa3b3f4865126719321f70d3 (diff)
parent40d8ec7118d5f39acec3f71d33a87f0483bd2b2b (diff)
Merge branch '4.7' of git@scm.dev.nokia.troll.no:qt/qt-doc-team into 4.7
-rw-r--r--.gitignore2
-rwxr-xr-xbin/createpackage.pl29
-rwxr-xr-xbin/patch_capabilities.pl231
-rwxr-xr-xconfigure76
-rwxr-xr-xconfigure.exebin1325568 -> 1325568 bytes
-rw-r--r--demos/symbianpkgrules.pri5
-rw-r--r--dist/changes-4.7.28
-rw-r--r--doc/src/declarative/basictypes.qdoc6
-rw-r--r--doc/src/declarative/codingconventions.qdoc18
-rw-r--r--doc/src/declarative/declarativeui.qdoc16
-rw-r--r--doc/src/declarative/dynamicobjects.qdoc3
-rw-r--r--doc/src/declarative/elements.qdoc2
-rw-r--r--doc/src/declarative/extending-tutorial.qdoc8
-rw-r--r--doc/src/declarative/extending.qdoc619
-rw-r--r--doc/src/declarative/focus.qdoc339
-rw-r--r--doc/src/declarative/integrating.qdoc2
-rw-r--r--doc/src/declarative/javascriptblocks.qdoc19
-rw-r--r--doc/src/declarative/modules.qdoc64
-rw-r--r--doc/src/declarative/pics/qml-extending-types.pngbin0 -> 738 bytes
-rw-r--r--doc/src/declarative/qdeclarativeintro.qdoc6
-rw-r--r--doc/src/declarative/qml-intro.qdoc2
-rw-r--r--doc/src/declarative/qmlinuse.qdoc499
-rw-r--r--doc/src/declarative/qtbinding.qdoc17
-rw-r--r--doc/src/declarative/qtdeclarative.qdoc18
-rw-r--r--doc/src/declarative/tutorial.qdoc4
-rw-r--r--doc/src/declarative/whatsnew.qdoc10
-rw-r--r--doc/src/development/qmake-manual.qdoc8
-rw-r--r--doc/src/development/qtestlib.qdoc29
-rw-r--r--doc/src/examples/qml-examples.qdoc3
-rw-r--r--doc/src/external-resources.qdoc5
-rw-r--r--doc/src/frameworks-technologies/threads.qdoc29
-rw-r--r--doc/src/getting-started/gettingstartedqml.qdoc4
-rw-r--r--doc/src/getting-started/installation.qdoc2
-rw-r--r--doc/src/images/declarative-qmlfocus1.pngbin0 -> 1890 bytes
-rw-r--r--doc/src/images/declarative-qmlfocus2.pngbin0 -> 2756 bytes
-rw-r--r--doc/src/images/declarative-qmlfocus3.pngbin0 -> 2743 bytes
-rw-r--r--doc/src/images/declarative-qmlfocus4.pngbin0 -> 4137 bytes
-rw-r--r--doc/src/images/declarative-qmlfocus5.pngbin0 -> 1376 bytes
-rw-r--r--doc/src/network-programming/bearermanagement.qdoc8
-rw-r--r--doc/src/platforms/emb-directfb-EmbLinux.qdoc6
-rw-r--r--doc/src/platforms/emb-envvars.qdoc2
-rw-r--r--doc/src/platforms/emb-pointer.qdoc4
-rw-r--r--doc/src/platforms/platform-notes.qdoc13
-rw-r--r--doc/src/platforms/symbian-introduction.qdoc10
-rw-r--r--doc/src/qt-webpages.qdoc15
-rw-r--r--doc/src/qt4-intro.qdoc64
-rw-r--r--doc/src/snippets/code/doc_src_fdl.qdoc10
-rw-r--r--doc/src/snippets/code/doc_src_properties.qdoc17
-rw-r--r--doc/src/snippets/code/src_qtestlib_qtestcase.cpp16
-rw-r--r--doc/src/snippets/declarative/codingconventions/private.qml49
-rw-r--r--doc/src/snippets/declarative/comments.qml1
-rw-r--r--doc/src/snippets/declarative/focus/advancedFocus.qml67
-rw-r--r--doc/src/snippets/declarative/focus/basicwidget.qml59
-rw-r--r--doc/src/snippets/declarative/focus/clickablewidget.qml61
-rw-r--r--doc/src/snippets/declarative/focus/focusColumn.qml25
-rw-r--r--doc/src/snippets/declarative/focus/focusscopewidget.qml61
-rw-r--r--doc/src/snippets/declarative/focus/myclickablewidget.qml69
-rw-r--r--doc/src/snippets/declarative/focus/myfocusscopewidget.qml66
-rw-r--r--doc/src/snippets/declarative/focus/mywidget.qml58
-rw-r--r--doc/src/snippets/declarative/focus/qmldir4
-rw-r--r--doc/src/snippets/declarative/focus/rectangle.qml62
-rw-r--r--doc/src/snippets/declarative/focus/widget.qml61
-rw-r--r--doc/src/snippets/declarative/integrating-javascript/connectjs.qml57
-rw-r--r--doc/src/snippets/declarative/integrating-javascript/script.js47
-rw-r--r--doc/src/snippets/declarative/keynavigation.qml84
-rw-r--r--doc/src/snippets/declarative/loader/sizeitem.qml62
-rw-r--r--doc/src/snippets/declarative/loader/sizeloader.qml62
-rw-r--r--doc/src/snippets/declarative/qml-extending-types/components/Button.qml53
-rw-r--r--doc/src/snippets/declarative/qml-extending-types/components/application.qml49
-rw-r--r--doc/src/snippets/declarative/qml-extending-types/methods/app.qml55
-rw-r--r--doc/src/snippets/declarative/qml-extending-types/properties/ImageViewer.qml52
-rw-r--r--doc/src/snippets/declarative/qml-extending-types/properties/alias-override.qml48
-rw-r--r--doc/src/snippets/declarative/qml-extending-types/properties/alias.qml51
-rw-r--r--doc/src/snippets/declarative/qml-extending-types/properties/alias/ImageViewer.qml52
-rw-r--r--doc/src/snippets/declarative/qml-extending-types/properties/alias/application.qml54
-rw-r--r--doc/src/snippets/declarative/qml-extending-types/properties/application.qml50
-rw-r--r--doc/src/snippets/declarative/qml-extending-types/properties/property-signals.qml49
-rw-r--r--doc/src/snippets/declarative/qml-extending-types/signals/Button.qml55
-rw-r--r--doc/src/snippets/declarative/qml-extending-types/signals/basic.qml55
-rw-r--r--doc/src/snippets/declarative/qml-extending-types/signals/connectdynamic.qml61
-rw-r--r--doc/src/snippets/declarative/qml-extending-types/signals/connectslots.qml56
-rw-r--r--doc/src/snippets/declarative/qml-extending-types/signals/no-parameters.qml49
-rw-r--r--doc/src/snippets/declarative/qml-extending-types/signals/parameters.qml50
-rw-r--r--doc/src/snippets/declarative/qtbinding/newelements/imageviewer.h2
-rw-r--r--doc/src/snippets/moc/myclass2.h7
-rw-r--r--examples/declarative/modelviews/visualitemmodel/visualitemmodel.qml7
-rw-r--r--examples/declarative/ui-components/tabwidget/TabWidget.qml4
-rw-r--r--examples/symbianpkgrules.pri5
-rw-r--r--examples/tools/echoplugin/echowindow/echowindow.pro4
-rw-r--r--examples/tools/styleplugin/plugin/plugin.pro4
-rw-r--r--mkspecs/common/symbian/appCaptionForTranslation.cpp46
-rw-r--r--mkspecs/common/symbian/packageNameForTranslation.cpp47
-rw-r--r--mkspecs/common/symbian/symbian-mmp.conf4
-rw-r--r--mkspecs/common/symbian/symbian.conf67
-rw-r--r--mkspecs/features/default_post.prf10
-rw-r--r--mkspecs/features/qt_functions.prf15
-rw-r--r--mkspecs/features/symbian/default_post.prf12
-rw-r--r--mkspecs/features/symbian/localize_deployment.prf109
-rw-r--r--mkspecs/features/symbian/qt.prf6
-rw-r--r--mkspecs/features/symbian/sis_targets.prf108
-rw-r--r--mkspecs/features/symbian/stl.prf2
-rw-r--r--mkspecs/linux-g++-maemo/qmake.conf7
-rw-r--r--qmake/Makefile.unix2
-rw-r--r--qmake/Makefile.win323
-rw-r--r--qmake/Makefile.win32-g++2
-rw-r--r--qmake/Makefile.win32-g++-sh2
-rw-r--r--qmake/generators/symbian/initprojectdeploy_symbian.cpp12
-rw-r--r--qmake/generators/symbian/symbian_makefile.h10
-rw-r--r--qmake/generators/symbian/symbiancommon.cpp471
-rw-r--r--qmake/generators/symbian/symbiancommon.h35
-rw-r--r--qmake/generators/symbian/symmake.cpp47
-rw-r--r--qmake/generators/symbian/symmake.h5
-rw-r--r--qmake/generators/symbian/symmake_abld.cpp25
-rw-r--r--qmake/generators/symbian/symmake_sbsv2.cpp34
-rw-r--r--qmake/generators/win32/msbuild_objectmodel.cpp33
-rw-r--r--qmake/generators/win32/msvc_vcproj.cpp6
-rw-r--r--qmake/project.cpp9
-rw-r--r--qmake/qmake.pri6
-rw-r--r--src/3rdparty/harfbuzz/src/harfbuzz-buffer.h8
-rw-r--r--src/3rdparty/harfbuzz/src/harfbuzz-gdef-private.h9
-rw-r--r--src/3rdparty/harfbuzz/src/harfbuzz-gdef.h8
-rw-r--r--src/3rdparty/harfbuzz/src/harfbuzz-global.h4
-rw-r--r--src/3rdparty/harfbuzz/src/harfbuzz-gpos-private.h8
-rw-r--r--src/3rdparty/harfbuzz/src/harfbuzz-gsub-private.h8
-rw-r--r--src/3rdparty/harfbuzz/src/harfbuzz-gsub.h9
-rw-r--r--src/3rdparty/harfbuzz/src/harfbuzz-open.h8
-rw-r--r--src/3rdparty/harfbuzz/src/harfbuzz-shaper.h8
-rw-r--r--src/3rdparty/harfbuzz/src/harfbuzz-stream.h8
-rw-r--r--src/3rdparty/phonon/ds9/videorenderer_evr.cpp12
-rw-r--r--src/3rdparty/phonon/phonon/effectwidget.cpp2
-rw-r--r--src/3rdparty/phonon/phonon/globalconfig.cpp2
-rw-r--r--src/3rdparty/phonon/phonon/mediacontroller.cpp4
-rw-r--r--src/3rdparty/phonon/phonon/pulsesupport.cpp146
-rw-r--r--src/3rdparty/webkit/WebKit/qt/Api/qwebpage.cpp38
-rw-r--r--src/3rdparty/webkit/WebKit/qt/declarative/qdeclarativewebview.cpp10
-rw-r--r--src/3rdparty/webkit/WebKit/qt/declarative/qdeclarativewebview_p.h2
-rw-r--r--src/3rdparty/webkit/WebKit/qt/qt_webkit_version.pri4
-rw-r--r--src/3rdparty/webkit/WebKit/qt/tests/qwebpage/tst_qwebpage.cpp14
-rw-r--r--src/corelib/corelib.pro7
-rw-r--r--src/corelib/global/global.pri2
-rw-r--r--src/corelib/global/qglobal.h4
-rw-r--r--src/corelib/global/qlibraryinfo.cpp12
-rw-r--r--src/corelib/io/qdiriterator.cpp6
-rw-r--r--src/corelib/io/qfilesystemwatcher.cpp10
-rw-r--r--src/corelib/io/qfilesystemwatcher_kqueue.cpp194
-rw-r--r--src/corelib/io/qprocess_symbian.cpp1
-rw-r--r--src/corelib/io/qresource.cpp2
-rw-r--r--src/corelib/kernel/qeventdispatcher_glib.cpp7
-rw-r--r--src/corelib/kernel/qeventdispatcher_win.cpp48
-rw-r--r--src/corelib/kernel/qtcore_eval.cpp4
-rw-r--r--src/corelib/thread/qthread.cpp4
-rw-r--r--src/corelib/thread/qthread_unix.cpp13
-rw-r--r--src/corelib/tools/qalgorithms.qdoc2
-rw-r--r--src/corelib/tools/qlocale.cpp9
-rw-r--r--src/corelib/tools/qsimd.cpp16
-rw-r--r--src/corelib/tools/qsimd_p.h11
-rw-r--r--src/corelib/tools/qstring.cpp2
-rw-r--r--src/dbus/qdbusconnection_p.h13
-rw-r--r--src/dbus/qdbusintegrator.cpp35
-rw-r--r--src/declarative/debugger/qdeclarativedebugservice.cpp8
-rw-r--r--src/declarative/declarative.pro5
-rw-r--r--src/declarative/graphicsitems/qdeclarativeborderimage.cpp20
-rw-r--r--src/declarative/graphicsitems/qdeclarativeevents.cpp30
-rw-r--r--src/declarative/graphicsitems/qdeclarativeflickable.cpp23
-rw-r--r--src/declarative/graphicsitems/qdeclarativegridview.cpp53
-rw-r--r--src/declarative/graphicsitems/qdeclarativeimage.cpp2
-rw-r--r--src/declarative/graphicsitems/qdeclarativeitem.cpp96
-rw-r--r--src/declarative/graphicsitems/qdeclarativeitem_p.h12
-rw-r--r--src/declarative/graphicsitems/qdeclarativelistview.cpp96
-rw-r--r--src/declarative/graphicsitems/qdeclarativeloader.cpp41
-rw-r--r--src/declarative/graphicsitems/qdeclarativemousearea.cpp37
-rw-r--r--src/declarative/graphicsitems/qdeclarativepathview.cpp48
-rw-r--r--src/declarative/graphicsitems/qdeclarativepathview_p_p.h4
-rw-r--r--src/declarative/graphicsitems/qdeclarativerectangle.cpp19
-rw-r--r--src/declarative/graphicsitems/qdeclarativetext.cpp11
-rw-r--r--src/declarative/graphicsitems/qdeclarativetextinput.cpp2
-rw-r--r--src/declarative/graphicsitems/qdeclarativetextlayout.cpp8
-rw-r--r--src/declarative/graphicsitems/qdeclarativevisualitemmodel.cpp4
-rw-r--r--src/declarative/qml/qdeclarativebinding.cpp337
-rw-r--r--src/declarative/qml/qdeclarativebinding_p.h12
-rw-r--r--src/declarative/qml/qdeclarativecompiledbindings.cpp16
-rw-r--r--src/declarative/qml/qdeclarativecompileddata.cpp4
-rw-r--r--src/declarative/qml/qdeclarativecompiler.cpp121
-rw-r--r--src/declarative/qml/qdeclarativecompiler_p.h5
-rw-r--r--src/declarative/qml/qdeclarativecomponent.cpp5
-rw-r--r--src/declarative/qml/qdeclarativecontext.cpp4
-rw-r--r--src/declarative/qml/qdeclarativedata_p.h13
-rw-r--r--src/declarative/qml/qdeclarativeengine.cpp63
-rw-r--r--src/declarative/qml/qdeclarativeimport.cpp30
-rw-r--r--src/declarative/qml/qdeclarativeinstruction.cpp7
-rw-r--r--src/declarative/qml/qdeclarativeinstruction_p.h2
-rw-r--r--src/declarative/qml/qdeclarativeobjectscriptclass.cpp13
-rw-r--r--src/declarative/qml/qdeclarativeparser.cpp4
-rw-r--r--src/declarative/qml/qdeclarativeparser_p.h3
-rw-r--r--src/declarative/qml/qdeclarativeproperty.cpp209
-rw-r--r--src/declarative/qml/qdeclarativeproperty_p.h8
-rw-r--r--src/declarative/qml/qdeclarativepropertycache.cpp1
-rw-r--r--src/declarative/qml/qdeclarativepropertycache_p.h1
-rw-r--r--src/declarative/qml/qdeclarativevaluetype.cpp46
-rw-r--r--src/declarative/qml/qdeclarativevme.cpp38
-rw-r--r--src/declarative/qml/qdeclarativevmemetaobject.cpp47
-rw-r--r--src/declarative/qml/qdeclarativevmemetaobject_p.h2
-rw-r--r--src/declarative/qml/qdeclarativeworkerscript.cpp13
-rw-r--r--src/declarative/util/qdeclarativeanimation.cpp8
-rw-r--r--src/declarative/util/qdeclarativeopenmetaobject.cpp2
-rw-r--r--src/declarative/util/qdeclarativepixmapcache.cpp2
-rw-r--r--src/declarative/util/qdeclarativeview.cpp7
-rw-r--r--src/gui/dialogs/dialogs.pri9
-rw-r--r--src/gui/dialogs/qabstractprintdialog.cpp3
-rw-r--r--src/gui/dialogs/qcolordialog.cpp21
-rw-r--r--src/gui/dialogs/qcolordialog_symbian.cpp107
-rw-r--r--src/gui/dialogs/qdialog.cpp4
-rw-r--r--src/gui/dialogs/qfiledialog.cpp68
-rw-r--r--src/gui/dialogs/qfiledialog_symbian.cpp196
-rw-r--r--src/gui/dialogs/qmessagebox.cpp88
-rw-r--r--src/gui/dialogs/qpagesetupdialog.cpp3
-rw-r--r--src/gui/dialogs/qprintpreviewdialog.cpp2
-rw-r--r--src/gui/egl/qegl_x11.cpp4
-rw-r--r--src/gui/graphicsview/qgraphicsgridlayout.cpp11
-rw-r--r--src/gui/graphicsview/qgraphicsitem.cpp18
-rw-r--r--src/gui/graphicsview/qgraphicsitem_p.h4
-rw-r--r--src/gui/graphicsview/qgraphicslayoutitem.cpp35
-rw-r--r--src/gui/graphicsview/qgraphicslayoutitem_p.h2
-rw-r--r--src/gui/graphicsview/qgraphicslinearlayout.cpp4
-rw-r--r--src/gui/graphicsview/qgraphicstransform.cpp2
-rw-r--r--src/gui/graphicsview/qgridlayoutengine.cpp185
-rw-r--r--src/gui/graphicsview/qgridlayoutengine_p.h7
-rw-r--r--src/gui/gui.pro3
-rw-r--r--src/gui/image/qimage.cpp25
-rw-r--r--src/gui/image/qpixmap_raster.cpp11
-rw-r--r--src/gui/image/qpnghandler.cpp81
-rw-r--r--src/gui/itemviews/qabstractitemview.cpp4
-rw-r--r--src/gui/itemviews/qstandarditemmodel.cpp2
-rw-r--r--src/gui/kernel/qapplication_win.cpp4
-rw-r--r--src/gui/kernel/qclipboard_mac.cpp2
-rw-r--r--src/gui/kernel/qevent.cpp2
-rw-r--r--src/gui/kernel/qeventdispatcher_s60_p.h7
-rw-r--r--src/gui/kernel/qgesturemanager.cpp12
-rw-r--r--src/gui/kernel/qgesturemanager_p.h3
-rw-r--r--src/gui/kernel/qguiplatformplugin.cpp2
-rw-r--r--src/gui/kernel/qkeymapper_mac.cpp2
-rw-r--r--src/gui/kernel/qkeysequence.cpp2
-rw-r--r--src/gui/kernel/qsound_s60.cpp2
-rw-r--r--src/gui/kernel/qwidget.cpp13
-rw-r--r--src/gui/kernel/qwidget_p.h1
-rw-r--r--src/gui/kernel/qwidget_s60.cpp14
-rw-r--r--src/gui/kernel/qx11embed_x11.cpp2
-rw-r--r--src/gui/painting/qdrawhelper.cpp2
-rw-r--r--src/gui/painting/qemulationpaintengine.cpp9
-rw-r--r--src/gui/painting/qemulationpaintengine_p.h3
-rw-r--r--src/gui/painting/qgrayraster.c36
-rw-r--r--src/gui/painting/qpathclipper.cpp14
-rw-r--r--src/gui/painting/qpdf.cpp4
-rw-r--r--src/gui/painting/qtextureglyphcache.cpp26
-rw-r--r--src/gui/painting/qtextureglyphcache_p.h4
-rw-r--r--src/gui/styles/qs60style.cpp59
-rw-r--r--src/gui/styles/qs60style_s60.cpp5
-rw-r--r--src/gui/styles/qstyle.cpp2
-rw-r--r--src/gui/styles/qstyleoption.cpp4
-rw-r--r--src/gui/text/qfontengine_x11.cpp2
-rw-r--r--src/gui/text/qtextcursor.cpp3
-rw-r--r--src/gui/text/qtextdocument.cpp6
-rw-r--r--src/gui/text/qtextformat.cpp10
-rw-r--r--src/gui/util/qdesktopservices_s60.cpp180
-rw-r--r--src/gui/util/qundostack.cpp2
-rw-r--r--src/gui/util/util.pri19
-rw-r--r--src/gui/widgets/qdockwidget.cpp17
-rw-r--r--src/gui/widgets/qtextedit.cpp2
-rw-r--r--src/imports/folderlistmodel/qdeclarativefolderlistmodel.cpp2
-rw-r--r--src/multimedia/audio/qaudiodeviceinfo_alsa_p.cpp6
-rw-r--r--src/multimedia/audio/qaudiodeviceinfo_alsa_p.h2
-rw-r--r--src/network/access/qhttpnetworkconnection.cpp9
-rw-r--r--src/network/access/qhttpnetworkconnection_p.h4
-rw-r--r--src/network/access/qhttpnetworkconnectionchannel.cpp2
-rw-r--r--src/network/access/qhttpnetworkconnectionchannel_p.h2
-rw-r--r--src/network/access/qhttpnetworkheader.cpp12
-rw-r--r--src/network/access/qhttpnetworkreply.cpp6
-rw-r--r--src/network/access/qhttpnetworkreply_p.h1
-rw-r--r--src/network/access/qnetworkaccessbackend.cpp1
-rw-r--r--src/network/access/qnetworkaccessbackend_p.h6
-rw-r--r--src/network/access/qnetworkaccessdatabackend.cpp6
-rw-r--r--src/network/access/qnetworkaccessdatabackend_p.h2
-rw-r--r--src/network/access/qnetworkaccesshttpbackend.cpp140
-rw-r--r--src/network/access/qnetworkaccesshttpbackend_p.h4
-rw-r--r--src/network/access/qnetworkaccessmanager.cpp16
-rw-r--r--src/network/access/qnetworkreplyimpl.cpp47
-rw-r--r--src/network/access/qnetworkrequest.cpp10
-rw-r--r--src/network/access/qnetworkrequest.h3
-rw-r--r--src/network/socket/qlocalsocket_win.cpp4
-rw-r--r--src/network/ssl/qsslcertificate.cpp2
-rw-r--r--src/network/ssl/qsslsocket_openssl.cpp58
-rw-r--r--src/network/ssl/qsslsocket_openssl_p.h1
-rw-r--r--src/opengl/gl2paintengineex/qglengineshadersource_p.h5
-rw-r--r--src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp14
-rw-r--r--src/opengl/gl2paintengineex/qtextureglyphcache_gl.cpp47
-rw-r--r--src/opengl/gl2paintengineex/qtextureglyphcache_gl_p.h17
-rw-r--r--src/opengl/gl2paintengineex/qtriangulator.cpp34
-rw-r--r--src/opengl/qgl.cpp4
-rw-r--r--src/opengl/qgl_p.h3
-rw-r--r--src/opengl/qgl_x11egl.cpp3
-rw-r--r--src/opengl/qglpixelbuffer_egl.cpp1
-rw-r--r--src/opengl/qwindowsurface_gl.cpp13
-rw-r--r--src/openvg/qpaintengine_vg.cpp7
-rw-r--r--src/openvg/qpixmapdata_vg.cpp2
-rw-r--r--src/plugins/bearer/connman/qconnmanengine.cpp1
-rw-r--r--src/plugins/bearer/connman/qconnmanservice_linux.cpp2
-rw-r--r--src/plugins/bearer/icd/proxyconf.cpp22
-rw-r--r--src/plugins/bearer/icd/proxyconf.h1
-rw-r--r--src/plugins/bearer/symbian/qnetworksession_impl.cpp6
-rw-r--r--src/plugins/bearer/symbian/symbianengine.cpp39
-rw-r--r--src/plugins/bearer/symbian/symbianengine.h6
-rw-r--r--src/plugins/gfxdrivers/directfb/qdirectfbpaintengine.cpp42
-rw-r--r--src/plugins/gfxdrivers/directfb/qdirectfbwindowsurface.cpp2
-rw-r--r--src/plugins/graphicssystems/meego/dithering.cpp11
-rw-r--r--src/plugins/graphicssystems/meego/qmeegographicssystem.cpp11
-rw-r--r--src/plugins/qpluginbase.pri2
-rw-r--r--src/plugins/s60/feedback/feedback.pro2
-rw-r--r--src/plugins/s60/s60.pro2
-rw-r--r--src/qbase.pri4
-rw-r--r--src/s60installs/bwins/QtCoreu.def4
-rw-r--r--src/s60installs/bwins/QtGuiu.def9
-rw-r--r--src/s60installs/bwins/QtOpenGLu.def11
-rw-r--r--src/s60installs/eabi/QtGuiu.def7
-rw-r--r--src/s60installs/eabi/QtOpenGLu.def5
-rw-r--r--src/s60installs/s60installs.pro10
-rw-r--r--src/script/api/qscriptcontextinfo.cpp2
-rw-r--r--src/sql/models/qsqlrelationaldelegate.h10
-rw-r--r--src/testlib/qtestcase.cpp3
-rw-r--r--src/testlib/qtesttouch.h4
-rw-r--r--src/xmlpatterns/data/qatomicvalue.cpp2
-rw-r--r--src/xmlpatterns/expr/qarithmeticexpression_p.h2
-rwxr-xr-xsrc/xmlpatterns/parser/createTokenLookup.sh15
-rw-r--r--tests/auto/collections/tst_collections.cpp2
-rw-r--r--tests/auto/declarative/qdeclarativeecmascript/data/AliasBindingsAssignCorrectlyType.qml9
-rw-r--r--tests/auto/declarative/qdeclarativeecmascript/data/AliasBindingsOverrideTargetType.qml14
-rw-r--r--tests/auto/declarative/qdeclarativeecmascript/data/AliasBindingsOverrideTargetType3.qml9
-rw-r--r--tests/auto/declarative/qdeclarativeecmascript/data/aliasBindingsAssignCorrectly.qml59
-rw-r--r--tests/auto/declarative/qdeclarativeecmascript/data/aliasBindingsOverrideTarget.2.qml29
-rw-r--r--tests/auto/declarative/qdeclarativeecmascript/data/aliasBindingsOverrideTarget.3.qml24
-rw-r--r--tests/auto/declarative/qdeclarativeecmascript/data/aliasBindingsOverrideTarget.qml28
-rw-r--r--tests/auto/declarative/qdeclarativeecmascript/data/aliasWritesOverrideBindings.2.qml29
-rw-r--r--tests/auto/declarative/qdeclarativeecmascript/data/aliasWritesOverrideBindings.3.qml23
-rw-r--r--tests/auto/declarative/qdeclarativeecmascript/data/aliasWritesOverrideBindings.qml23
-rw-r--r--tests/auto/declarative/qdeclarativeecmascript/data/writeRemovesBinding.qml46
-rw-r--r--tests/auto/declarative/qdeclarativeecmascript/testtypes.h2
-rw-r--r--tests/auto/declarative/qdeclarativeecmascript/tst_qdeclarativeecmascript.cpp182
-rw-r--r--tests/auto/declarative/qdeclarativefocusscope/data/forceActiveFocus.qml26
-rw-r--r--tests/auto/declarative/qdeclarativefocusscope/tst_qdeclarativefocusscope.cpp109
-rw-r--r--tests/auto/declarative/qdeclarativegridview/tst_qdeclarativegridview.cpp2
-rw-r--r--tests/auto/declarative/qdeclarativeimage/tst_qdeclarativeimage.cpp30
-rw-r--r--tests/auto/declarative/qdeclarativeinstruction/tst_qdeclarativeinstruction.cpp5
-rw-r--r--tests/auto/declarative/qdeclarativelanguage/testtypes.h2
-rw-r--r--tests/auto/declarative/qdeclarativelistview/data/header.qml31
-rw-r--r--tests/auto/declarative/qdeclarativelistview/data/header1.qml33
-rw-r--r--tests/auto/declarative/qdeclarativelistview/data/qtbug14821.qml31
-rw-r--r--tests/auto/declarative/qdeclarativelistview/data/sizelessthan1.qml26
-rw-r--r--tests/auto/declarative/qdeclarativelistview/tst_qdeclarativelistview.cpp119
-rw-r--r--tests/auto/declarative/qdeclarativemousearea/tst_qdeclarativemousearea.cpp7
-rw-r--r--tests/auto/declarative/qdeclarativeproperty/data/aliasPropertyBindings.qml19
-rw-r--r--tests/auto/declarative/qdeclarativeproperty/tst_qdeclarativeproperty.cpp69
-rw-r--r--tests/auto/declarative/qdeclarativevaluetypes/data/BindingsSpliceCorrectlyType.qml7
-rw-r--r--tests/auto/declarative/qdeclarativevaluetypes/data/BindingsSpliceCorrectlyType4.qml7
-rw-r--r--tests/auto/declarative/qdeclarativevaluetypes/data/BindingsSpliceCorrectlyType5.qml7
-rw-r--r--tests/auto/declarative/qdeclarativevaluetypes/data/bindingsSpliceCorrectly.1.qml29
-rw-r--r--tests/auto/declarative/qdeclarativevaluetypes/data/bindingsSpliceCorrectly.2.qml31
-rw-r--r--tests/auto/declarative/qdeclarativevaluetypes/data/bindingsSpliceCorrectly.3.qml36
-rw-r--r--tests/auto/declarative/qdeclarativevaluetypes/data/bindingsSpliceCorrectly.4.qml27
-rw-r--r--tests/auto/declarative/qdeclarativevaluetypes/data/bindingsSpliceCorrectly.5.qml27
-rw-r--r--tests/auto/declarative/qdeclarativevaluetypes/tst_qdeclarativevaluetypes.cpp56
-rw-r--r--tests/auto/declarative/qdeclarativeviewer/tst_qdeclarativeviewer.cpp15
-rw-r--r--tests/auto/declarative/qdeclarativevisualdatamodel/tst_qdeclarativevisualdatamodel.cpp24
-rw-r--r--tests/auto/declarative/qdeclarativeworkerscript/tst_qdeclarativeworkerscript.cpp5
-rw-r--r--tests/auto/declarative/qmlvisual/ListView/data/basic1.0.pngbin0 -> 948 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/ListView/data/basic1.qml74
-rw-r--r--tests/auto/declarative/qmlvisual/ListView/data/basic2.0.pngbin0 -> 948 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/ListView/data/basic2.qml158
-rw-r--r--tests/auto/declarative/qmlvisual/ListView/data/basic3.0.pngbin0 -> 948 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/ListView/data/basic3.qml110
-rw-r--r--tests/auto/declarative/qmlvisual/ListView/data/basic4.0.pngbin0 -> 948 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/ListView/data/basic4.qml106
-rw-r--r--tests/auto/declarative/qmlvisual/ListView/data/enforcerange.0.pngbin680 -> 680 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/ListView/data/enforcerange.1.pngbin704 -> 680 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/ListView/data/enforcerange.2.pngbin695 -> 704 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/ListView/data/enforcerange.3.pngbin680 -> 695 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/ListView/data/enforcerange.4.pngbin701 -> 680 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/ListView/data/enforcerange.5.pngbin704 -> 710 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/ListView/data/enforcerange.6.pngbin0 -> 705 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/ListView/data/enforcerange.qml26
-rw-r--r--tests/auto/declarative/qmlvisual/ListView/data/itemlist.0.pngbin976 -> 976 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/ListView/data/itemlist.1.pngbin986 -> 976 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/ListView/data/itemlist.2.pngbin977 -> 986 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/ListView/data/itemlist.3.pngbin977 -> 977 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/ListView/data/itemlist.4.pngbin977 -> 977 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/ListView/data/itemlist.5.pngbin990 -> 977 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/ListView/data/itemlist.6.pngbin976 -> 990 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/ListView/data/itemlist.7.pngbin0 -> 976 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/ListView/data/itemlist.qml30
-rw-r--r--tests/auto/declarative/qmlvisual/ListView/data/listview.0.pngbin1585 -> 1525 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/ListView/data/listview.1.pngbin1580 -> 1647 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/ListView/data/listview.2.pngbin1667 -> 1584 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/ListView/data/listview.3.pngbin1599 -> 1648 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/ListView/data/listview.4.pngbin1663 -> 1613 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/ListView/data/listview.5.pngbin1666 -> 1661 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/ListView/data/listview.6.pngbin1611 -> 1674 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/ListView/data/listview.qml256
-rw-r--r--tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.0.pngbin797 -> 766 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.1.pngbin794 -> 797 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.2.pngbin817 -> 794 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.3.pngbin796 -> 822 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.4.pngbin805 -> 801 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.5.pngbin774 -> 803 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.6.pngbin0 -> 774 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.qml26
-rw-r--r--tests/auto/declarative/qmlvisual/TEST_GUIDELINES7
-rw-r--r--tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.0.pngbin830 -> 832 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.1.pngbin831 -> 830 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.2.pngbin829 -> 829 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.3.pngbin832 -> 830 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.qml14
-rw-r--r--tests/auto/declarative/qmlvisual/animation/colorAnimation/data-X11/colorAnimation-visual.0.pngbin627 -> 622 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/colorAnimation/data-X11/colorAnimation-visual.1.pngbin626 -> 627 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/colorAnimation/data-X11/colorAnimation-visual.2.pngbin625 -> 626 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/colorAnimation/data-X11/colorAnimation-visual.3.pngbin0 -> 625 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/colorAnimation/data-X11/colorAnimation-visual.qml16
-rw-r--r--tests/auto/declarative/qmlvisual/animation/colorAnimation/data/colorAnimation-visual.0.pngbin627 -> 622 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/colorAnimation/data/colorAnimation-visual.1.pngbin626 -> 627 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/colorAnimation/data/colorAnimation-visual.2.pngbin625 -> 626 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/colorAnimation/data/colorAnimation-visual.3.pngbin0 -> 625 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/colorAnimation/data/colorAnimation-visual.qml16
-rw-r--r--tests/auto/declarative/qmlvisual/animation/easing/data/easing.0.pngbin3393 -> 1267 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/easing/data/easing.1.pngbin3381 -> 1648 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/easing/data/easing.2.pngbin3101 -> 1617 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/easing/data/easing.3.pngbin16542 -> 1267 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/easing/data/easing.qml494
-rw-r--r--tests/auto/declarative/qmlvisual/animation/easing/easing.qml21
-rw-r--r--tests/auto/declarative/qmlvisual/animation/loop/data/loop.0.pngbin508 -> 502 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/loop/data/loop.1.pngbin507 -> 508 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/loop/data/loop.2.pngbin508 -> 507 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/loop/data/loop.3.pngbin508 -> 508 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/loop/data/loop.4.pngbin505 -> 508 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/loop/data/loop.5.pngbin508 -> 507 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/loop/data/loop.6.pngbin0 -> 508 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/loop/data/loop.qml26
-rw-r--r--tests/auto/declarative/qmlvisual/animation/parallelAnimation/data/parallelAnimation-visual.0.pngbin0 -> 379 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/parallelAnimation/data/parallelAnimation-visual.qml338
-rw-r--r--tests/auto/declarative/qmlvisual/animation/parallelAnimation/data/parallelAnimation.0.pngbin774 -> 0 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/parallelAnimation/data/parallelAnimation.1.pngbin762 -> 0 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/parallelAnimation/data/parallelAnimation.2.pngbin773 -> 0 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/parallelAnimation/parallelAnimation-visual.qml19
-rw-r--r--tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation-visual.0.pngbin0 -> 1635 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation-visual.1.pngbin0 -> 1619 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation-visual.2.pngbin0 -> 1586 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation-visual.3.pngbin0 -> 1635 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation-visual.4.pngbin0 -> 1653 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation-visual.qml1216
-rw-r--r--tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation.0.pngbin3742 -> 0 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation.1.pngbin3727 -> 0 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation.2.pngbin3742 -> 0 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation.3.pngbin3628 -> 0 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation.4.pngbin3610 -> 0 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation.5.pngbin3742 -> 0 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/parentAnimation/parentAnimation-visual.qml18
-rw-r--r--tests/auto/declarative/qmlvisual/animation/parentAnimation2/data/parentAnimation2.0.pngbin2046 -> 2011 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/parentAnimation2/data/parentAnimation2.1.pngbin2059 -> 2047 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/parentAnimation2/data/parentAnimation2.2.pngbin2052 -> 2058 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/parentAnimation2/data/parentAnimation2.3.pngbin2011 -> 2052 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/parentAnimation2/data/parentAnimation2.qml16
-rw-r--r--tests/auto/declarative/qmlvisual/animation/pauseAnimation/data/pauseAnimation-visual.0.pngbin0 -> 3224 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/pauseAnimation/data/pauseAnimation-visual.1.pngbin0 -> 3226 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/pauseAnimation/data/pauseAnimation-visual.2.pngbin0 -> 3229 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/pauseAnimation/data/pauseAnimation-visual.3.pngbin0 -> 3224 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/pauseAnimation/data/pauseAnimation-visual.4.pngbin0 -> 3226 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/pauseAnimation/data/pauseAnimation-visual.5.pngbin0 -> 3229 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/pauseAnimation/data/pauseAnimation-visual.6.pngbin0 -> 3229 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/pauseAnimation/data/pauseAnimation-visual.qml26
-rw-r--r--tests/auto/declarative/qmlvisual/animation/propertyAction/data/propertyAction-visual.0.pngbin335 -> 336 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/propertyAction/data/propertyAction-visual.1.pngbin345 -> 335 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/propertyAction/data/propertyAction-visual.2.pngbin336 -> 344 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/propertyAction/data/propertyAction-visual.3.pngbin0 -> 336 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/propertyAction/data/propertyAction-visual.qml14
-rw-r--r--tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.0.pngbin1135 -> 1131 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.1.pngbin1141 -> 1135 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.2.pngbin1150 -> 1141 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.3.pngbin1141 -> 1147 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.qml14
-rw-r--r--tests/auto/declarative/qmlvisual/animation/qtbug13398/data/qtbug13398.0.pngbin1265 -> 1281 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/qtbug13398/data/qtbug13398.1.pngbin0 -> 1265 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/qtbug13398/data/qtbug13398.qml6
-rw-r--r--tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.0.pngbin637 -> 637 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.1.pngbin642 -> 637 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.2.pngbin637 -> 642 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.3.pngbin637 -> 647 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.4.pngbin647 -> 637 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.5.pngbin637 -> 646 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.6.pngbin637 -> 637 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.7.pngbin637 -> 637 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.8.pngbin642 -> 647 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.9.pngbin0 -> 642 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.qml38
-rw-r--r--tests/auto/declarative/qmlvisual/animation/scriptAction/data/scriptAction-visual.0.pngbin335 -> 334 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/scriptAction/data/scriptAction-visual.1.pngbin335 -> 335 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/scriptAction/data/scriptAction-visual.2.pngbin0 -> 335 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/animation/scriptAction/data/scriptAction-visual.qml10
-rw-r--r--tests/auto/declarative/qmlvisual/fillmode/data/fillmode.0.pngbin28900 -> 16855 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/fillmode/face.pngbin905 -> 1011 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/fillmode/fillmode.qml14
-rw-r--r--tests/auto/declarative/qmlvisual/focusscope/data-MAC/test3.0.pngbin1549 -> 0 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/focusscope/data-MAC/test3.1.pngbin1140 -> 0 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/focusscope/data-MAC/test3.2.pngbin1338 -> 0 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/focusscope/data-MAC/test3.3.pngbin1221 -> 0 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/focusscope/data-MAC/test3.qml1327
-rw-r--r--tests/auto/declarative/qmlvisual/focusscope/data/test.0.pngbin1968 -> 1974 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/focusscope/data/test.2.pngbin1974 -> 1968 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/focusscope/data/test.3.pngbin0 -> 1974 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/focusscope/data/test.qml14
-rw-r--r--tests/auto/declarative/qmlvisual/focusscope/data/test2.0.pngbin305 -> 439 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/focusscope/data/test2.1.pngbin0 -> 439 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/focusscope/data/test2.qml158
-rw-r--r--tests/auto/declarative/qmlvisual/focusscope/data/test3.0.pngbin1333 -> 487 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/focusscope/data/test3.1.pngbin994 -> 509 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/focusscope/data/test3.2.pngbin1156 -> 491 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/focusscope/data/test3.3.pngbin1057 -> 499 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/focusscope/data/test3.4.pngbin0 -> 487 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/focusscope/data/test3.qml532
-rw-r--r--tests/auto/declarative/qmlvisual/focusscope/test3.qml21
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeborderimage/animated-smooth.qml105
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeborderimage/animated.qml97
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeborderimage/content/MyBorderImage.qml10
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeborderimage/content/colors-round.sci8
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeborderimage/content/colors-stretch.sci8
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeborderimage/content/colors.pngbin1655 -> 713 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeborderimage/content/qmldir1
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/animated-smooth.0.pngbin89135 -> 4686 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/animated-smooth.1.pngbin26593 -> 25454 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/animated-smooth.qml380
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/animated.0.pngbin30167 -> 4686 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/animated.1.pngbin14694 -> 9642 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/animated.qml380
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/borders.0.pngbin24327 -> 28741 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflickable/data-MAC/flickable-horizontal.0.pngbin0 -> 1439 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflickable/data-MAC/flickable-horizontal.1.pngbin0 -> 1424 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflickable/data-MAC/flickable-horizontal.2.pngbin0 -> 1428 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflickable/data-MAC/flickable-horizontal.3.pngbin0 -> 1396 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflickable/data-MAC/flickable-horizontal.4.pngbin0 -> 1454 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflickable/data-MAC/flickable-horizontal.qml1575
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-horizontal.0.pngbin1423 -> 1439 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-horizontal.1.pngbin1424 -> 1424 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-horizontal.2.pngbin1397 -> 1428 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-horizontal.3.pngbin1453 -> 1397 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-horizontal.4.pngbin0 -> 1454 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-horizontal.qml20
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.0.pngbin1971 -> 1073 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.1.pngbin1941 -> 1063 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.10.pngbin1966 -> 0 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.11.pngbin1966 -> 0 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.12.pngbin1966 -> 0 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.13.pngbin1972 -> 0 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.2.pngbin1629 -> 1080 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.3.pngbin1966 -> 1080 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.4.pngbin1966 -> 1056 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.5.pngbin1995 -> 1075 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.6.pngbin2013 -> 1029 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.7.pngbin1963 -> 1073 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.8.pngbin1963 -> 1053 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.9.pngbin2002 -> 0 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.qml4680
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflickable/flickable-vertical.qml4
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.0.pngbin1090 -> 942 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.1.pngbin1134 -> 1111 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.2.pngbin961 -> 1152 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.3.pngbin1076 -> 976 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.4.pngbin1134 -> 1096 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.5.pngbin969 -> 1154 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.6.pngbin0 -> 984 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.qml26
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test_flipable_resize.0.pngbin0 -> 1649 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test_flipable_resize.qml2
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.0.pngbin1318 -> 1318 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.1.pngbin1332 -> 1318 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.10.pngbin0 -> 1318 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.2.pngbin1331 -> 1332 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.3.pngbin1321 -> 1331 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.4.pngbin1325 -> 1321 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.5.pngbin1321 -> 1325 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.6.pngbin1341 -> 1321 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.7.pngbin1341 -> 1341 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.8.pngbin1359 -> 1341 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.9.pngbin1318 -> 1359 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.qml42
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.0.pngbin1310 -> 1325 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.1.pngbin1322 -> 1325 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.2.pngbin1341 -> 1337 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.3.pngbin1368 -> 1360 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.4.pngbin1319 -> 1406 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.5.pngbin1352 -> 1337 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.6.pngbin1309 -> 1340 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.7.pngbin1347 -> 1327 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.8.pngbin1310 -> 1353 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.9.pngbin1354 -> 1325 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.qml670
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.0.pngbin1578 -> 1578 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.1.pngbin1585 -> 1578 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.2.pngbin1568 -> 1585 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.3.pngbin1578 -> 1568 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.4.pngbin1584 -> 1578 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.5.pngbin1584 -> 1583 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.6.pngbin1581 -> 1581 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.7.pngbin1581 -> 1582 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.8.pngbin1567 -> 1581 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.qml34
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.0.pngbin1701 -> 1701 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.1.pngbin1701 -> 1701 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.10.pngbin1721 -> 1701 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.11.pngbin1705 -> 1721 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.12.pngbin1705 -> 1705 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.13.pngbin1701 -> 1705 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.14.pngbin0 -> 1701 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.2.pngbin1704 -> 1701 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.3.pngbin1704 -> 1704 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.4.pngbin1705 -> 1704 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.5.pngbin1705 -> 1705 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.6.pngbin1701 -> 1705 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.7.pngbin1701 -> 1701 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.8.pngbin1705 -> 1701 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.9.pngbin1701 -> 1705 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.qml58
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.0.pngbin0 -> 486 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.1.pngbin0 -> 486 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.10.pngbin0 -> 494 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.11.pngbin0 -> 494 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.12.pngbin0 -> 494 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.13.pngbin0 -> 494 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.14.pngbin0 -> 494 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.15.pngbin0 -> 494 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.2.pngbin0 -> 489 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.3.pngbin0 -> 489 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.4.pngbin0 -> 489 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.5.pngbin0 -> 496 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.6.pngbin0 -> 496 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.7.pngbin0 -> 496 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.8.pngbin0 -> 496 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.9.pngbin0 -> 494 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.qml62
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.0.pngbin0 -> 1360 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.1.pngbin0 -> 1367 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.2.pngbin0 -> 1367 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.3.pngbin0 -> 1372 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.4.pngbin0 -> 1382 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.5.pngbin0 -> 1379 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.6.pngbin0 -> 1390 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.7.pngbin0 -> 1379 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.8.pngbin0 -> 1380 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.9.pngbin0 -> 1379 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.qml5039
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativemousearea/nested.qml62
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeparticles/data/particles.0.pngbin9951 -> 1055 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeparticles/data/particles.1.pngbin14613 -> 10086 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeparticles/data/particles.2.pngbin14056 -> 14829 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeparticles/data/particles.3.pngbin0 -> 14095 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeparticles/data/particles.qml14
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativeparticles/particles.qml1
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.0.pngbin2270 -> 1114 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.1.pngbin2332 -> 1105 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.2.pngbin2354 -> 1088 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.3.pngbin2280 -> 1096 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.4.pngbin2280 -> 1143 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.5.pngbin2311 -> 1143 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.6.pngbin2286 -> 0 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.qml2056
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.0.pngbin2412 -> 1169 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.1.pngbin2373 -> 1182 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.2.pngbin2404 -> 1211 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.3.pngbin2390 -> 1184 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.4.pngbin2416 -> 1152 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.5.pngbin2395 -> 1141 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.6.pngbin0 -> 1189 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.qml1940
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativepathview/test-pathview-2.qml30
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativepathview/test-pathview.qml19
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.0.pngbin1429 -> 263 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.1.pngbin1433 -> 280 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.2.pngbin1431 -> 270 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.3.pngbin1428 -> 280 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.4.pngbin1432 -> 280 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.5.pngbin1434 -> 283 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.6.pngbin0 -> 281 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.qml798
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/usingRepeater.0.pngbin0 -> 1747 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/usingRepeater.qml64
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativesmoothedanimation/data/smoothedfollow.0.pngbin3692 -> 1513 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativesmoothedanimation/data/smoothedfollow.1.pngbin3697 -> 1537 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativesmoothedanimation/data/smoothedfollow.2.pngbin3696 -> 1537 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativesmoothedanimation/data/smoothedfollow.3.pngbin0 -> 1537 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativesmoothedanimation/data/smoothedfollow.qml394
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativesmoothedanimation/smoothedfollow.qml78
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.0.pngbin0 -> 941 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.1.pngbin0 -> 975 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.2.pngbin0 -> 1235 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.3.pngbin0 -> 1225 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.4.pngbin0 -> 1247 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.5.pngbin0 -> 1243 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.6.pngbin0 -> 1234 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.7.pngbin0 -> 1242 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.qml1763
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/clock.0.pngbin16437 -> 16333 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/clock.1.pngbin16543 -> 16437 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/clock.2.pngbin0 -> 16543 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/clock.qml10
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.0.pngbin975 -> 950 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.1.pngbin1244 -> 983 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.2.pngbin1225 -> 1243 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.3.pngbin1243 -> 1235 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.4.pngbin1230 -> 1253 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.5.pngbin1244 -> 1249 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.6.pngbin1242 -> 1241 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.7.pngbin0 -> 1251 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.qml868
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/align/data-MAC/multilineAlign.0.pngbin2388 -> 801 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/align/data-MAC/multilineAlign.qml120
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/align/data-X11/multilineAlign.0.pngbin1895 -> 791 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/align/data-X11/multilineAlign.qml120
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/baseline/data-MAC/parentanchor.0.pngbin0 -> 1392 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/baseline/data-MAC/parentanchor.qml62
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/baseline/data-X11/parentanchor.0.pngbin0 -> 1313 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/baseline/data-X11/parentanchor.qml62
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/bugs/data-MAC/QTBUG-14469.0.pngbin0 -> 210 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/bugs/data-MAC/QTBUG-14469.1.pngbin0 -> 270 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/bugs/data-MAC/QTBUG-14469.qml475
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/bugs/data-X11/QTBUG-14469.0.pngbin422 -> 210 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/bugs/data-X11/QTBUG-14469.qml174
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/data-MAC/qtbug_14865.0.pngbin1640 -> 322 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/data-MAC/qtbug_14865.1.pngbin625 -> 322 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/data-MAC/qtbug_14865.qml220
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/data-X11/qtbug_14865.0.pngbin1400 -> 465 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/data-X11/qtbug_14865.1.pngbin0 -> 465 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/data-X11/qtbug_14865.qml220
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide.0.pngbin1706 -> 491 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide.1.pngbin0 -> 491 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide.qml132
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide2.0.pngbin3564 -> 1240 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide2.1.pngbin3271 -> 1106 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide2.2.pngbin2549 -> 999 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide2.3.pngbin1574 -> 864 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide2.4.pngbin0 -> 703 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide2.qml488
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/multilength.0.pngbin2883 -> 791 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/multilength.1.pngbin0 -> 854 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/multilength.qml148
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide.0.pngbin1150 -> 581 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide.1.pngbin0 -> 581 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide.qml134
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide2.0.pngbin2795 -> 1187 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide2.1.pngbin2456 -> 1066 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide2.2.pngbin2038 -> 948 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide2.3.pngbin1317 -> 819 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide2.4.pngbin0 -> 682 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide2.qml490
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.0.pngbin2285 -> 903 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.1.pngbin2284 -> 967 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.2.pngbin1197 -> 962 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.3.pngbin1197 -> 678 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.4.pngbin556 -> 676 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.5.pngbin0 -> 542 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.qml658
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/font/BorderedText.qml9
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/font/TestText.qml13
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-MAC/plaintext.0.pngbin96247 -> 14238 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-MAC/plaintext2.0.pngbin3481 -> 1563 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-MAC/plaintext3.0.pngbin53503 -> 6348 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-MAC/richtext.0.pngbin118835 -> 9321 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-MAC/richtext2.0.pngbin0 -> 10663 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-MAC/richtext2.qml11
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-X11/plaintext.0.pngbin77252 -> 13194 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-X11/plaintext2.0.pngbin2778 -> 1510 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-X11/plaintext3.0.pngbin0 -> 6368 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-X11/plaintext3.qml11
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-X11/richtext.0.pngbin101974 -> 9415 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-X11/richtext2.0.pngbin0 -> 10671 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-X11/richtext2.qml11
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/font/data/richtext2.0.pngbin0 -> 10671 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/font/data/richtext2.qml11
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/font/plaintext.qml81
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/font/plaintext3.qml44
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/font/richtext.qml35
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/font/richtext2.qml43
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetext/qtbug_14865.qml2
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/MultilineEdit.qml1
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.0.pngbin3636 -> 1177 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.1.pngbin3611 -> 1254 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.2.pngbin3612 -> 1199 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.3.pngbin3612 -> 1198 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.4.pngbin3609 -> 1195 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.5.pngbin3147 -> 1197 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.qml658
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/qt-669.0.pngbin3273 -> 737 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/qt-669.1.pngbin3265 -> 740 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/qt-669.2.pngbin3266 -> 746 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/qt-669.3.pngbin3245 -> 739 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/qt-669.4.pngbin0 -> 737 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/qt-669.qml538
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.0.pngbin5123 -> 1362 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.1.pngbin5500 -> 1377 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.10.pngbin8641 -> 2037 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.11.pngbin8641 -> 2037 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.12.pngbin0 -> 2037 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.2.pngbin6163 -> 1461 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.3.pngbin6785 -> 1577 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.4.pngbin6943 -> 1704 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.5.pngbin7043 -> 1778 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.6.pngbin7428 -> 1797 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.7.pngbin6860 -> 1859 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.8.pngbin8659 -> 1835 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.9.pngbin8641 -> 2028 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.qml1452
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.0.pngbin11626 -> 3756 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.1.pngbin11869 -> 3891 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.2.pngbin12264 -> 3964 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.3.pngbin12607 -> 4054 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.4.pngbin13243 -> 4132 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.5.pngbin13260 -> 4234 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.6.pngbin13260 -> 4238 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.7.pngbin0 -> 4238 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.qml858
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.0.pngbin3171 -> 1173 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.1.pngbin3603 -> 1249 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.2.pngbin3152 -> 1331 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.3.pngbin3147 -> 1212 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.4.pngbin3145 -> 1208 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.5.pngbin3147 -> 1213 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.qml658
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/qt-669.0.pngbin2483 -> 855 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/qt-669.1.pngbin2474 -> 863 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/qt-669.2.pngbin2480 -> 865 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/qt-669.3.pngbin2443 -> 862 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/qt-669.4.pngbin0 -> 855 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/qt-669.qml538
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.0.pngbin4006 -> 1357 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.1.pngbin4293 -> 1371 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.10.pngbin6055 -> 2032 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.11.pngbin6055 -> 2032 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.12.pngbin0 -> 2032 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.2.pngbin4683 -> 1451 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.3.pngbin5114 -> 1565 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.4.pngbin5270 -> 1691 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.5.pngbin5401 -> 1763 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.6.pngbin5591 -> 1779 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.7.pngbin5261 -> 1843 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.8.pngbin6051 -> 1825 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.9.pngbin6055 -> 2024 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.qml1452
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.0.pngbin8764 -> 3481 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.1.pngbin8922 -> 3606 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.2.pngbin9175 -> 3676 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.3.pngbin9553 -> 3754 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.4.pngbin9975 -> 3828 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.5.pngbin9977 -> 3927 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.6.pngbin9977 -> 3930 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.7.pngbin0 -> 3930 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.qml858
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/LineEdit.qml1
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.0.pngbin3613 -> 1177 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.1.pngbin4140 -> 1148 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.2.pngbin3593 -> 1312 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.3.pngbin3605 -> 1256 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.4.pngbin3605 -> 1197 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.5.pngbin805 -> 1197 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.qml620
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/echoMode.0.pngbin703 -> 256 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/echoMode.1.pngbin1360 -> 343 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/echoMode.2.pngbin2031 -> 461 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/echoMode.3.pngbin0 -> 539 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/echoMode.qml340
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/hAlign.0.pngbin0 -> 3987 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/hAlign.qml50
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.0.pngbin0 -> 1254 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.1.pngbin0 -> 1328 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.10.pngbin0 -> 1345 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.11.pngbin0 -> 1433 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.2.pngbin0 -> 1328 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.3.pngbin0 -> 1328 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.4.pngbin0 -> 1316 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.5.pngbin0 -> 1318 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.6.pngbin0 -> 1321 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.7.pngbin0 -> 1316 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.8.pngbin0 -> 1362 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.9.pngbin0 -> 1423 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.qml4335
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.0.pngbin3153 -> 1173 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.1.pngbin3622 -> 1143 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.2.pngbin3163 -> 1312 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.3.pngbin3145 -> 1250 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.4.pngbin3143 -> 1193 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.5.pngbin0 -> 1193 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.qml620
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/echoMode.0.pngbin580 -> 358 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/echoMode.1.pngbin1073 -> 446 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/echoMode.2.pngbin1672 -> 553 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/echoMode.3.pngbin0 -> 622 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/echoMode.qml382
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/hAlign.0.pngbin0 -> 3685 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/hAlign.qml50
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.0.pngbin2659 -> 1265 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.1.pngbin2696 -> 1337 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.10.pngbin3331 -> 1389 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.11.pngbin0 -> 1468 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.2.pngbin2659 -> 1337 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.3.pngbin2682 -> 1279 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.4.pngbin2695 -> 1368 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.5.pngbin2825 -> 1367 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.6.pngbin2681 -> 1377 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.7.pngbin3111 -> 1368 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.8.pngbin3178 -> 1384 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.9.pngbin2806 -> 1471 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.qml1408
-rw-r--r--tests/auto/declarative/qmlvisual/rect/GradientRect.qml4
-rw-r--r--tests/auto/declarative/qmlvisual/rect/MyRect.qml4
-rw-r--r--tests/auto/declarative/qmlvisual/rect/data/rect-painting.0.pngbin25197 -> 15272 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/rect/rect-painting.qml4
-rw-r--r--tests/auto/declarative/qmlvisual/shared/DejaVuSansMono.ttfbin0 -> 237788 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/shared/TestText.qml2
-rw-r--r--tests/auto/declarative/qmlvisual/shared/TestTextEdit.qml2
-rw-r--r--tests/auto/declarative/qmlvisual/shared/TestTextInput.qml2
-rw-r--r--tests/auto/declarative/qmlvisual/shared/Vera.ttfbin65932 -> 0 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/tst_qmlvisual.cpp61
-rw-r--r--tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.0.pngbin0 -> 2812 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.1.pngbin0 -> 2812 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.10.pngbin0 -> 2829 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.2.pngbin0 -> 3466 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.3.pngbin0 -> 2812 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.4.pngbin0 -> 2829 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.5.pngbin0 -> 2829 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.6.pngbin0 -> 2768 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.7.pngbin0 -> 2829 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.8.pngbin0 -> 2829 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.9.pngbin0 -> 2829 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.qml6083
-rw-r--r--tests/auto/declarative/qmlvisual/webview/flickable/flickweb.qml35
-rw-r--r--tests/auto/declarative/qmlvisual/webview/flickable/qtlogo.pngbin0 -> 2738 bytes
-rw-r--r--tests/auto/declarative/qmlvisual/webview/flickable/test.html3
-rw-r--r--tests/auto/gestures/tst_gestures.cpp4
-rw-r--r--tests/auto/qabstractnetworkcache/tst_qabstractnetworkcache.cpp111
-rw-r--r--tests/auto/qdbusconnection/tst_qdbusconnection.cpp73
-rw-r--r--tests/auto/qfilesystemwatcher/tst_qfilesystemwatcher.cpp9
-rw-r--r--tests/auto/qgl/tst_qgl.cpp23
-rw-r--r--tests/auto/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp366
-rw-r--r--tests/auto/qgraphicslinearlayout/tst_qgraphicslinearlayout.cpp118
-rw-r--r--tests/auto/qimage/tst_qimage.cpp16
-rw-r--r--tests/auto/qkeysequence/tst_qkeysequence.cpp2
-rw-r--r--tests/auto/qnetworkreply/tst_qnetworkreply.cpp563
-rw-r--r--tests/auto/qpixmap/tst_qpixmap.cpp27
-rw-r--r--tests/auto/qsettings/tst_qsettings.cpp13
-rw-r--r--tests/auto/qsharedpointer/tst_qsharedpointer.cpp4
-rw-r--r--tests/auto/qthread/tst_qthread.cpp41
-rw-r--r--tests/auto/qwidget/tst_qwidget.cpp29
-rw-r--r--tests/auto/selftests/expected_cmptest.txt2
-rw-r--r--tests/auto/selftests/expected_crashes_3.txt2
-rw-r--r--tests/auto/selftests/expected_longstring.txt2
-rw-r--r--tests/auto/selftests/expected_maxwarnings.txt2
-rw-r--r--tests/auto/selftests/expected_skip.txt2
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicslinearlayout/qgraphicslinearlayout.pro6
-rw-r--r--tests/benchmarks/gui/graphicsview/qgraphicslinearlayout/tst_qgraphicslinearlayout.cpp133
-rw-r--r--tools/assistant/tools/assistant/doc/assistant.qdocconf2
-rw-r--r--tools/assistant/tools/assistant/helpenginewrapper.cpp2
-rw-r--r--tools/configure/configure.pro4
-rw-r--r--tools/configure/configureapp.cpp55
-rw-r--r--tools/configure/configureapp.h2
-rw-r--r--tools/configure/environment.cpp10
-rw-r--r--tools/linguist/lrelease/lrelease.pro1
-rw-r--r--tools/linguist/lupdate/main.cpp4
-rw-r--r--tools/qdoc3/doc/files/qt.qdocconf8
-rw-r--r--tools/qdoc3/test/assistant.qdocconf4
-rw-r--r--tools/qdoc3/test/designer.qdocconf4
-rw-r--r--tools/qdoc3/test/linguist.qdocconf4
-rw-r--r--tools/qdoc3/test/qdeclarative.qdocconf8
-rw-r--r--tools/qdoc3/test/qmake.qdocconf4
-rw-r--r--tools/qdoc3/test/qt-build-docs.qdocconf8
-rw-r--r--tools/qdoc3/test/qt-build-docs_ja_JP.qdocconf8
-rw-r--r--tools/qdoc3/test/qt-build-docs_zh_CN.qdocconf8
-rw-r--r--tools/qdoc3/test/qt.qdocconf8
-rw-r--r--tools/qdoc3/test/qt_ja_JP.qdocconf8
-rw-r--r--tools/qdoc3/test/qt_zh_CN.qdocconf8
-rw-r--r--tools/qmeegographicssystemhelper/qmeegographicssystemhelper.cpp17
-rw-r--r--tools/qmeegographicssystemhelper/qmeegographicssystemhelper.h9
-rw-r--r--tools/qmeegographicssystemhelper/qmeegographicssystemhelper.pro4
-rw-r--r--tools/qmeegographicssystemhelper/qmeegoswitchevent.cpp68
-rw-r--r--tools/qmeegographicssystemhelper/qmeegoswitchevent.h91
-rw-r--r--tools/qml/browser/Browser.qml4
-rw-r--r--tools/qml/main.cpp9
-rw-r--r--tools/qml/qdeclarativetester.cpp21
-rw-r--r--tools/qml/qmlruntime.cpp4
-rw-r--r--tools/shared/symbian/epocroot.cpp115
-rw-r--r--tools/shared/symbian/epocroot.pri11
-rw-r--r--tools/shared/symbian/epocroot_p.h (renamed from tools/shared/symbian/epocroot.h)24
-rw-r--r--tools/shared/windows/registry.cpp18
-rw-r--r--tools/shared/windows/registry_p.h (renamed from tools/shared/windows/registry.h)24
995 files changed, 43207 insertions, 21006 deletions
diff --git a/.gitignore b/.gitignore
index af521975b7..f9a4454229 100644
--- a/.gitignore
+++ b/.gitignore
@@ -235,3 +235,5 @@ qtc-debugging-helper
src/corelib/lib
src/network/lib
src/xml/lib/
+
+.pc/
diff --git a/bin/createpackage.pl b/bin/createpackage.pl
index 522d1fbc82..87ed29ea3e 100755
--- a/bin/createpackage.pl
+++ b/bin/createpackage.pl
@@ -82,6 +82,8 @@ Where supported options are as follows:
[-s|stub] = Generates stub sis for ROM.
[-n|sisname <name>] = Specifies the final sis name.
[-g|gcce-is-armv5] = Convert gcce platform to armv5.
+ [-d|dont-patch] = Skip automatic patching of capabilities and pkg file if default certificate
+ is used. Instead non-self-signable capabilities just cause warnings.
Where parameters are as follows:
templatepkg = Name of .pkg file template
target = Either debug or release
@@ -127,6 +129,7 @@ my $stub = "";
my $signed_sis_name = "";
my $onlyUnsigned = "";
my $convertGcce = "";
+my $dontPatchCaps = "";
unless (GetOptions('i|install' => \$install,
'p|preprocess' => \$preprocessonly,
@@ -135,16 +138,19 @@ unless (GetOptions('i|install' => \$install,
'o|only-unsigned' => \$onlyUnsigned,
's|stub' => \$stub,
'n|sisname=s' => \$signed_sis_name,
- 'g|gcce-is-armv5' => \$convertGcce,)) {
+ 'g|gcce-is-armv5' => \$convertGcce,
+ 'd|dont-patch' => \$dontPatchCaps,)) {
Usage();
}
my $epocroot = $ENV{EPOCROOT};
+my $epocToolsDir = "";
if ($epocroot ne "") {
$epocroot =~ s,\\,/,g;
if ($epocroot =~ m,[^/]$,) {
$epocroot = $epocroot."/";
}
+ $epocToolsDir = "${epocroot}epoc32/tools/";
}
my $certfilepath = abs_path(dirname($certfile));
@@ -337,24 +343,25 @@ if($stub) {
mkpath($systeminstall);
my $stub_sis_name = $systeminstall."/".$stub_sis_name;
# Create stub SIS.
- system ("${epocroot}epoc32/tools/makesis -s $pkgoutput $stub_sis_name");
+ system ("${epocToolsDir}makesis -s $pkgoutput $stub_sis_name");
} else {
if ($certtext eq "Self Signed"
&& !@certificates
&& $templatepkg !~ m/_installer\.pkg$/i
&& !$onlyUnsigned) {
- print("Auto-patching capabilities for self signed package.\n");
my $patch_capabilities = File::Spec->catfile(dirname($0), "patch_capabilities");
- system ("$patch_capabilities $pkgoutput") and die ("ERROR: Automatic patching failed");
+ if ($dontPatchCaps) {
+ system ("$patch_capabilities -c $pkgoutput") and print ("Warning: Package check for self-signing viability failed. Installing the package on a device will most likely fail!\n\n");
+ } else {
+ print("Auto-patching self-signed package.\n");
+ system ("$patch_capabilities $pkgoutput") and die ("ERROR: Automatic patching failed");
+ }
}
# Create SIS.
# The 'and' is because system uses 0 to indicate success.
- if($epocroot) {
- system ("${epocroot}epoc32/tools/makesis $pkgoutput $unsigned_sis_name") and die ("ERROR: makesis failed");
- } else {
- system ("makesis $pkgoutput $unsigned_sis_name") and die ("ERROR: makesis failed");
- }
+ system ("${epocToolsDir}makesis $pkgoutput $unsigned_sis_name") and die ("ERROR: makesis failed");
+
print("\n");
my $targetInsert = "";
@@ -381,7 +388,7 @@ if($stub) {
my $relcert = File::Spec->abs2rel($certificate);
my $relkey = File::Spec->abs2rel($key);
# The 'and' is because system uses 0 to indicate success.
- system ("signsis $unsigned_sis_name $signed_sis_name $relcert $relkey $passphrase") and die ("ERROR: signsis failed");
+ system ("${epocToolsDir}signsis $unsigned_sis_name $signed_sis_name $relcert $relkey $passphrase") and die ("ERROR: signsis failed");
# Check if creating signed SIS Succeeded
stat($signed_sis_name);
@@ -394,7 +401,7 @@ if($stub) {
my $relcert = File::Spec->abs2rel(File::Spec->rel2abs( $row->[0], $certfilepath));
my $relkey = File::Spec->abs2rel(File::Spec->rel2abs( $row->[1], $certfilepath));
- system ("signsis $signed_sis_name $signed_sis_name $relcert $relkey $row->[2]");
+ system ("${epocToolsDir}signsis $signed_sis_name $signed_sis_name $relcert $relkey $row->[2]");
print ("\tAdditionally signed the SIS with certificate: $row->[0]!\n");
}
diff --git a/bin/patch_capabilities.pl b/bin/patch_capabilities.pl
index 5230480418..c3fb89f543 100755
--- a/bin/patch_capabilities.pl
+++ b/bin/patch_capabilities.pl
@@ -63,8 +63,11 @@ sub Usage() {
print(" symbian-sbsv2 platform, 'target-platform' is REQUIRED. ***\n\n");
print(" *** NOTE2: When patching gcce binaries built with symbian-sbsv2 toolchain,\n");
print(" armv5 must be specified as platform.\n");
- print("\nUsage: patch_capabilities.pl pkg_filename [target-platform [capability list]]\n");
+ print("\nUsage: patch_capabilities.pl [-c] pkg_filename [target-platform [capability list]]\n");
print("\nE.g. patch_capabilities.pl myapp_template.pkg release-armv5 \"All -TCB\"\n");
+ print("\nThe parameter -c can be used to just check if package is compatible with self-signing\n");
+ print("without actually doing any patching.\n");
+ print("Explicit capability list cannot be used with -c parameter.\n");
exit();
}
@@ -75,10 +78,20 @@ sub trim($) {
return $string;
}
+my $epocroot = $ENV{EPOCROOT};
+my $epocToolsDir = "";
+if ($epocroot ne "") {
+ $epocroot =~ s,\\,/,g;
+ if ($epocroot =~ m,[^/]$,) {
+ $epocroot = $epocroot."/";
+ }
+ $epocToolsDir = "${epocroot}epoc32/tools/";
+}
+
my $nullDevice = "/dev/null";
$nullDevice = "NUL" if ($^O =~ /MSWin/);
-my @capabilitiesToAllow = ("LocalServices", "NetworkServices", "ReadUserData", "UserEnvironment", "WriteUserData");
+my @capabilitiesToAllow = ("LocalServices", "NetworkServices", "ReadUserData", "UserEnvironment", "WriteUserData", "Location");
my @capabilitiesSpecified = ();
# If arguments were given to the script,
@@ -86,6 +99,14 @@ if (@ARGV)
{
# Parse the first given script argument as a ".pkg" file name.
my $pkgFileName = shift(@ARGV);
+ my $justCheck = "";
+ my $msgPrefix = "Patching:";
+
+ if ($pkgFileName eq "-c") {
+ $pkgFileName = shift(@ARGV);
+ $justCheck = true;
+ $msgPrefix = "Warning:";
+ }
# These variables will only be set for template .pkg files.
my $target;
@@ -123,15 +144,22 @@ if (@ARGV)
if (($pkgFileName =~ m|\.pkg$|i) && -r($pkgFileName))
{
print ("\n");
- print ("Patching package file and relevant binaries...\n");
+ if ($justCheck) {
+ print ("Checking");
+ } else {
+ print ("Patching");
+ }
+ print (" package file and relevant binaries...\n");
- # If there are more arguments given, parse them as capabilities.
- if (@ARGV)
- {
- @capabilitiesSpecified = ();
- while (@ARGV)
+ if (!$justCheck) {
+ # If there are more arguments given, parse them as capabilities.
+ if (@ARGV)
{
- push (@capabilitiesSpecified, pop(@ARGV));
+ @capabilitiesSpecified = ();
+ while (@ARGV)
+ {
+ push (@capabilitiesSpecified, pop(@ARGV));
+ }
}
}
@@ -139,11 +167,15 @@ if (@ARGV)
my @binaries = ();
my $tempPkgFileName = $pkgFileName."_@@TEMP@@";
- unlink($tempPkgFileName);
- open (NEW_PKG, ">>".$tempPkgFileName);
+
+ if (!$justCheck) {
+ unlink($tempPkgFileName);
+ open (NEW_PKG, ">>".$tempPkgFileName);
+ }
open (PKG, "<".$pkgFileName);
- my $manufacturerElseBlock = 0;
+ my $checkFailed = "";
+ my $somethingPatched = "";
# Parse each line.
while (<PKG>)
@@ -155,66 +187,19 @@ if (@ARGV)
if ($line =~ m/^\#.*\((0x[0-7][0-9a-fA-F]*)\).*$/)
{
my $oldUID = $1;
- my $newUID = $oldUID;
- $newUID =~ s/0x./0xE/i;
- $newLine =~ s/$oldUID/$newUID/;
- print ("Patching: UID $oldUID is not compatible with self-signing! Changed to: $newUID.\n");
- }
-
- # Patch embedded sis name and UID if UID is in protected range
- if ($line =~ m/^@\"*(.*\.sis).*\((0x[0-7][0-9a-fA-F]*)\).*$/)
- {
- my $oldSisName = $1;
- my $oldUID = $2;
- my $newUID = $oldUID;
- $newUID =~ s/0x./0xE/i;
- $newLine =~ s/$oldUID/$newUID/;
- print ("Patching: Embedded sis $oldSisName UID $oldUID changed to: $newUID.\n");
-
- if ($oldSisName !~ m/^.*_selfsigned.sis$/i)
- {
- my $newSisName = $oldSisName;
- $newSisName =~ s/\.sis$/_selfsigned\.sis/i;
- $newLine =~ s/$oldSisName/$newSisName/i;
- print ("Patching: Embedded sis $oldSisName name changed to: $newSisName.\n");
+ print ("$msgPrefix UID $oldUID is not compatible with self-signing!\n");
+
+ if ($justCheck) {
+ $checkFailed = true;
+ } else {
+ my $newUID = $oldUID;
+ $newUID =~ s/0x./0xE/i;
+ $newLine =~ s/$oldUID/$newUID/;
+ print ("$msgPrefix Package UID changed to: $newUID.\n");
+ $somethingPatched = true;
}
}
- # Remove dependencies to known problem packages (i.e. packages that are likely to be patched, too)
- # to reduce unnecessary error messages.
- if ($line =~ m/^\((0x2002af5f)\).*\{.*\}$/)
- {
- $newLine = "\n";
- print ("Patching: Removed dependency to sqlite3.sis ($1) to avoid installation issues in case sqlite3.sis is also patched.\n");
- }
- if ($line =~ m/^\((0x2001E61C)\).*\{.*\}$/)
- {
- $newLine = "\n";
- print ("Patching: Removed dependency to qt.sis ($1) to avoid installation issues in case qt.sis is also patched.\n");
- }
-
- # Remove manufacturer ifdef
- if ($line =~ m/^.*\(MANUFACTURER\)\=\(.*\).*$/)
- {
- $newLine = "\n";
- print ("Patching: Removed manufacturer check as it is usually not desirable in self-signed packages.\n");
- }
-
- if ($line =~ m/^ELSEIF.*MANUFACTURER$/)
- {
- $manufacturerElseBlock = 1;
- }
-
- if ($manufacturerElseBlock eq 1)
- {
- $newLine = "\n";
- }
-
- if ($line =~ m/^ENDIF.*MANUFACTURER$/)
- {
- $manufacturerElseBlock = 0;
- }
-
# If the line specifies a file, parse the source and destination locations.
if ($line =~ m|^ *\"([^\"]+)\"\s*\-\s*\"([^\"]+)\"|)
{
@@ -231,16 +216,20 @@ if (@ARGV)
$sourcePath =~ s/\$\(TARGET\)/$target/gm;
}
- # Change the source file name (but only if not already patched)
- my $patchedSourcePath = $sourcePath;
- if ($patchedSourcePath !~ m/_patched_caps/)
- {
- $newLine =~ s/(^.*)(\.dll|\.exe)(.*)(\.dll|\.exe)/$1_patched_caps$2$3$4/i;
- $patchedSourcePath =~ s/(^.*)(\.dll|\.exe)/$1_patched_caps$2/i;
-
- copy($sourcePath, $patchedSourcePath) or die "$sourcePath cannot be copied for patching.";
+ if ($justCheck) {
+ push (@binaries, $sourcePath);
+ } else {
+ # Change the source file name (but only if not already patched)
+ my $patchedSourcePath = $sourcePath;
+ if ($patchedSourcePath !~ m/_patched_caps/)
+ {
+ $newLine =~ s/(^.*)(\.dll|\.exe)(.*)(\.dll|\.exe)/$1_patched_caps$2$3$4/i;
+ $patchedSourcePath =~ s/(^.*)(\.dll|\.exe)/$1_patched_caps$2/i;
+
+ copy($sourcePath, $patchedSourcePath) or die "$sourcePath cannot be copied for patching.";
+ }
+ push (@binaries, $patchedSourcePath);
}
- push (@binaries, $patchedSourcePath);
}
}
@@ -250,14 +239,15 @@ if (@ARGV)
}
close (PKG);
- close (NEW_PKG);
-
- unlink($pkgFileName);
- rename($tempPkgFileName, $pkgFileName);
+ if (!$justCheck) {
+ close (NEW_PKG);
+ unlink($pkgFileName);
+ rename($tempPkgFileName, $pkgFileName);
+ }
print ("\n");
- my $baseCommandToExecute = "elftran -vid 0x0 -capability \"%s\" ";
+ my $baseCommandToExecute = "${epocToolsDir}elftran -vid 0x0 -capability \"%s\" ";
# Actually set the capabilities of the listed binaries.
foreach my $binaryPath(@binaries)
@@ -265,18 +255,18 @@ if (@ARGV)
# Create the command line for setting the capabilities.
my ($binaryVolume, $binaryDirs, $binaryBaseName) = File::Spec->splitpath($binaryPath);
my $commandToExecute = $baseCommandToExecute;
- my $executeNeeded = 0;
+ my $executeNeeded = "";
if (@capabilitiesSpecified)
{
$commandToExecute = sprintf($baseCommandToExecute, join(" ", @capabilitiesSpecified));
- $executeNeeded = 1;
+ $executeNeeded = true;
my $capString = join(" ", @capabilitiesSpecified);
- print ("Patching: Patching the the Vendor ID to 0 and the capabilities used to: \"$capString\" in \"$binaryBaseName\".\n");
+ print ("$msgPrefix Patching the the Vendor ID to 0 and the capabilities used to: \"$capString\" in \"$binaryBaseName\".\n");
} else {
# Test which capabilities are present and then restrict them to the allowed set.
# This avoid raising the capabilities of apps that already have none.
my $dllCaps;
- open($dllCaps, "elftran -dump s $binaryPath |") or die ("Could not execute elftran");
+ open($dllCaps, "${epocToolsDir}elftran -dump s $binaryPath |") or die ("ERROR: Could not execute elftran");
my $capsFound = 0;
my $originalVid;
my @capabilitiesToSet;
@@ -288,8 +278,8 @@ if (@ARGV)
if ($binaryBaseName =~ /\.exe$/) {
# Installer refuses to install protected executables in a self signed package, so abort if one is detected.
# We can't simply just patch the executable SID, as any registration resources executable uses will be linked to it via SID.
- print ("Patching: Executable with SID in the protected range (0x$exeSid) detected: \"$binaryBaseName\". A self-signed sis with protected executables is not supported.\n");
- exit(1);
+ print ("$msgPrefix Executable with SID in the protected range (0x$exeSid) detected: \"$binaryBaseName\". A self-signed sis with protected executables is not supported.\n\n");
+ $checkFailed = true;
}
}
if (/^Vendor ID: ([0-9a-fA-F]*)$/) {
@@ -301,6 +291,9 @@ if (@ARGV)
$_ = trim($_);
if ($capabilitiesToAllow =~ /$_/) {
push(@capabilitiesToSet, $_);
+ if (Location =~ /$_/i) {
+ print ("$msgPrefix \"Location\" capability detected for binary: \"$binaryBaseName\". This capability is not self-signable for S60 3rd edition feature pack 1 devices, so installing this package on those devices will most likely not work.\n\n");
+ }
} else {
push(@capabilitiesToDrop, $_);
}
@@ -308,21 +301,32 @@ if (@ARGV)
}
close($dllCaps);
if ($originalVid !~ "00000000") {
- print ("Patching: Vendor ID (0x$originalVid) incompatible with self-signed packages, setting it to zero for \"$binaryBaseName\".\n");
- $executeNeeded = 1;
+ print ("$msgPrefix Non-zero vendor ID (0x$originalVid) is incompatible with self-signed packages in \"$binaryBaseName\"");
+ if ($justCheck) {
+ print (".\n\n");
+ $checkFailed = true;
+ } else {
+ print (", setting it to zero.\n\n");
+ $executeNeeded = true;
+ }
}
if ($#capabilitiesToDrop) {
my $capsToDropStr = join("\", \"", @capabilitiesToDrop);
$capsToDropStr =~ s/\", \"$//;
- if ($binaryBaseName =~ /\.exe$/) {
- # While libraries often have capabilities they do not themselves need just to enable them to be loaded by wider variety of processes,
- # executables are more likely to need every capability they have been assigned or they won't function correctly.
- print ("Patching: Executable with capabilities incompatible with self-signing detected: \"$binaryBaseName\". (Incompatible capabilities: \"$capsToDropStr\".) Reducing capabilities is only supported for libraries.\n");
- exit(1);
+ if ($justCheck) {
+ print ("$msgPrefix The following capabilities used in \"$binaryBaseName\" are not compatible with a self-signed package: \"$capsToDropStr\".\n\n");
+ $checkFailed = true;
} else {
- print ("Patching: The following capabilities used in \"$binaryBaseName\" are not compatible with a self-signed package and will be removed: \"$capsToDropStr\".\n");
- $executeNeeded = 1;
+ if ($binaryBaseName =~ /\.exe$/) {
+ # While libraries often have capabilities they do not themselves need just to enable them to be loaded by wider variety of processes,
+ # executables are more likely to need every capability they have been assigned or they won't function correctly.
+ print ("$msgPrefix Executable with capabilities incompatible with self-signing detected: \"$binaryBaseName\". (Incompatible capabilities: \"$capsToDropStr\".) Reducing capabilities is only supported for libraries.\n");
+ $checkFailed = true;
+ } else {
+ print ("$msgPrefix The following capabilities used in \"$binaryBaseName\" are not compatible with a self-signed package and will be removed: \"$capsToDropStr\".\n");
+ $executeNeeded = true;
+ }
}
}
$commandToExecute = sprintf($baseCommandToExecute, join(" ", @capabilitiesToSet));
@@ -333,16 +337,35 @@ if (@ARGV)
# Actually execute the elftran command to set the capabilities.
print ("\n");
system ("$commandToExecute > $nullDevice");
+ $somethingPatched = true;
}
- ## Create another command line to check that the set capabilities are correct.
- #$commandToExecute = "elftran -dump s ".$binaryPath;
}
+ if ($checkFailed) {
+ print ("\n");
+ if ($justCheck) {
+ print ("$msgPrefix The package is not compatible with self-signing.\n");
+ } else {
+ print ("$msgPrefix Unable to patch the package for self-singing.\n");
+ }
+ print ("Use a proper developer certificate for signing this package.\n\n");
+ exit(1);
+ }
+
+ if ($justCheck) {
+ print ("Package is compatible with self-signing.\n");
+ } else {
+ if ($somethingPatched) {
+ print ("NOTE: A patched package may not work as expected due to reduced capabilities and other modifications,\n");
+ print (" so it should not be used for any kind of Symbian signing or distribution!\n");
+ print (" Use a proper certificate to avoid the need to patch the package.\n");
+ } else {
+ print ("No patching was required!\n");
+ }
+ }
print ("\n");
- print ("NOTE: A patched package may not work as expected due to reduced capabilities and other modifications,\n");
- print (" so it should not be used for any kind of Symbian signing or distribution!\n");
- print (" Use a proper certificate to avoid the need to patch the package.\n");
- print ("\n");
+ } else {
+ Usage();
}
}
else
diff --git a/configure b/configure
index a2383005ca..86c14dd68a 100755
--- a/configure
+++ b/configure
@@ -800,6 +800,7 @@ CFG_ALSA=auto
CFG_PULSEAUDIO=auto
CFG_COREWLAN=auto
CFG_ICD=auto
+CFG_NOPROCESS=no
# initalize variables used for installation
QT_INSTALL_PREFIX=
@@ -839,6 +840,9 @@ QT_LIBS_GLIB=
QT_CFLAGS_GSTREAMER=
QT_LIBS_GSTREAMER=
+#flag for Symbian fpu settings
+QT_CFLAGS_FPU=
+
# flags for libconnsettings0 (used for Maemo ICD bearer management plugin)
QT_CFLAGS_CONNSETTINGS=
QT_LIBS_CONNSETTINGS=
@@ -1071,6 +1075,16 @@ while [ "$#" -gt 0 ]; do
VAL=`echo $1 | sed 's,-D,,'`
fi
;;
+ -fpu)
+ VAR="fpu"
+ # this option may or may not be followed by an argument
+ if [ -z "$2" ] || echo "$2" | grep '^-' >/dev/null 2>&1; then
+ VAL=no
+ else
+ shift
+ VAL=$1
+ fi
+ ;;
-I?*|-I)
VAR="add_ipath"
if [ "$1" = "-I" ]; then
@@ -2236,6 +2250,12 @@ while [ "$#" -gt 0 ]; do
UNKNOWN_OPT=yes
fi
;;
+ dont-process)
+ CFG_NOPROCESS=yes
+ ;;
+ process)
+ CFG_NOPROCESS=no
+ ;;
audio-backend)
if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
CFG_AUDIO_BACKEND="$VAL"
@@ -2243,6 +2263,11 @@ while [ "$#" -gt 0 ]; do
UNKNOWN_OPT=yes
fi
;;
+ fpu)
+ if [ "$VAL" != "no" ]; then
+ QT_CFLAGS_FPU=$VAL
+ fi
+ ;;
*)
UNKNOWN_OPT=yes
;;
@@ -3526,7 +3551,7 @@ Usage: $relconf [-h] [-prefix <dir>] [-prefix-install] [-bindir <dir>] [-libdir
[-verbose] [-v] [-silent] [-no-nis] [-nis] [-no-cups] [-cups] [-no-iconv]
[-iconv] [-no-pch] [-pch] [-no-dbus] [-dbus] [-dbus-linked] [-no-gui]
[-no-separate-debug-info] [-no-mmx] [-no-3dnow] [-no-sse] [-no-sse2]
- [-no-sse3] [-no-ssse3] [-no-sse4.1] [-no-sse4.2] [-no-avx]
+ [-no-sse3] [-no-ssse3] [-no-sse4.1] [-no-sse4.2] [-no-avx] [-no-neon]
[-qtnamespace <namespace>] [-qtlibinfix <infix>] [-separate-debug-info] [-armfpa]
[-no-optimized-qmake] [-optimized-qmake] [-no-xmlpatterns] [-xmlpatterns]
[-no-multimedia] [-multimedia] [-no-phonon] [-phonon] [-no-phonon-backend] [-phonon-backend]
@@ -3730,6 +3755,7 @@ cat << EOF
-no-sse4.1.......... Do not compile with use of SSE4.1 instructions.
-no-sse4.2.......... Do not compile with use of SSE4.2 instructions.
-no-avx ............ Do not compile with use of AVX instructions.
+ -no-neon ........... Do not compile with use of NEON instructions.
-qtnamespace <name> Wraps all Qt library code in 'namespace <name> {...}'.
-qtlibinfix <infix> Renames all libQt*.so to libQt*<infix>.so.
@@ -4161,8 +4187,6 @@ Qt for Embedded Linux only:
-iwmmxt ............ Compile using the iWMMXt instruction set
(available on some XScale CPUs).
-
- -no-neon ........... Do not compile with use of NEON instructions.
EOF
fi
@@ -4521,7 +4545,7 @@ if [ -n "$EVALKEY" ]; then
rm -f "$outpath/src/corelib/global/qconfig_eval.cpp"
cat > "$outpath/src/corelib/global/qconfig_eval.cpp" <<EOF
/* Evaluation license key */
-static const char qt_eval_key_data [512 + 12] = "$EVALKEY";
+static const volatile char qt_eval_key_data [512 + 12] = "$EVALKEY";
EOF
chmod -w "$outpath/src/corelib/global/qconfig_eval.cpp"
fi
@@ -4879,6 +4903,9 @@ case "$XPLATFORM" in *symbian*)
if [ "$CFG_LARGEFILE" = auto ]; then
CFG_LARGEFILE=no
fi
+ if [ "$CFG_PHONON" = auto ]; then
+ CFG_PHONON=yes
+ fi
if test -z "$EPOCROOT"; then
echo "Please export EPOCROOT. It should point to the sdk install dir"
@@ -6646,10 +6673,12 @@ else
QCONFIG_FLAGS="$QCONFIG_FLAGS QT_STYLE_S60"
fi
-# Disable OpenGL on Symbian.
+# Just check if OpenGL is not set by command argumets for Symbian.
case "$XPLATFORM" in
symbian*)
- CFG_OPENGL="no"
+ if [ "$CFG_OPENGL" = "auto" ]; then
+ CFG_OPENGL="no"
+ fi
;;
esac
@@ -7938,6 +7967,12 @@ if [ "$CFG_DEV" = "yes" ]; then
QT_CONFIG="$QT_CONFIG private_tests"
fi
+if [ -z "$QT_CFLAGS_FPU" ]; then
+ if echo "$XPLATFORM" | grep "symbian-sbsv2" > /dev/null 2>&1; then
+ QT_CFLAGS_FPU=softvfp
+ fi
+fi
+
# Make the application arch follow the Qt arch for single arch builds.
# (for multiple-arch builds, set CONFIG manually in the application .pro file)
if [ `echo "$CFG_MAC_ARCHS" | wc -w` -eq 1 ]; then
@@ -7971,10 +8006,11 @@ if [ -n "$QT_GCC_MAJOR_VERSION" ]; then
echo "QT_GCC_MINOR_VERSION = $QT_GCC_MINOR_VERSION" >> "$QTCONFIG.tmp"
echo "QT_GCC_PATCH_VERSION = $QT_GCC_PATCH_VERSION" >> "$QTCONFIG.tmp"
fi
-if echo "$XPLATFORM" | grep "symbian-sbsv2" > /dev/null 2>&1; then
+if [ -n "$QT_CFLAGS_FPU" ]; then
echo "#Qt for symbian FPU settings" >> "$QTCONFIG.tmp"
- echo "MMP_RULES += \"ARMFPU softvfp\"" >> "$QTCONFIG.tmp"
+ echo "MMP_RULES += \"ARMFPU $QT_CFLAGS_FPU\"" >> "$QTCONFIG.tmp"
fi
+
# replace qconfig.pri if it differs from the newly created temp file
if cmp -s "$QTCONFIG.tmp" "$QTCONFIG"; then
rm -f "$QTCONFIG.tmp"
@@ -8398,11 +8434,13 @@ EXEC=""
#-------------------------------------------------------------------------------
echo "Finding project files. Please wait..."
-"$outpath/bin/qmake" -prl -r "${relpath}/projects.pro"
-if [ -f "${relpath}/projects.pro" ]; then
- mkfile="${outpath}/Makefile"
- [ -f "$mkfile" ] && chmod +w "$mkfile"
- QTDIR="$outpath" "$outpath/bin/qmake" -spec "$XQMAKESPEC" "${relpath}/projects.pro" -o "$mkfile"
+if [ "$CFG_NOPROCESS" != "yes" ]; then
+ "$outpath/bin/qmake" -prl -r "${relpath}/projects.pro"
+ if [ -f "${relpath}/projects.pro" ]; then
+ mkfile="${outpath}/Makefile"
+ [ -f "$mkfile" ] && chmod +w "$mkfile"
+ QTDIR="$outpath" "$outpath/bin/qmake" -spec "$XQMAKESPEC" "${relpath}/projects.pro" -o "$mkfile"
+ fi
fi
# .projects -> projects to process
@@ -8531,8 +8569,8 @@ PART_ROOTS=
for part in $CFG_BUILD_PARTS; do
case "$part" in
tools) PART_ROOTS="$PART_ROOTS tools" ;;
- libs) PART_ROOTS="$PART_ROOTS src" ;;
- translations) PART_ROOTS="$PART_ROOTS tools/linguist/lrelease translations" ;;
+ libs) PART_ROOTS="$PART_ROOTS src tools/linguist/lrelease" ;;
+ translations) PART_ROOTS="$PART_ROOTS translations" ;;
examples) PART_ROOTS="$PART_ROOTS examples demos" ;;
*) ;;
esac
@@ -8559,13 +8597,17 @@ for file in .projects .projects.3; do
*winmain/winmain.pro)
[ "$XPLATFORM_MINGW" = "yes" ] || continue
SPEC=$XQMAKESPEC ;;
- *s60main/s60main.pro) if [ -z "`echo "$XPLATFORM" | grep "symbian" >/dev/null`" ]; then
+ *s60main/s60main.pro) if [ "$CFG_NOPROCESS" = "yes" ] || [ -z "`echo "$XPLATFORM" | grep "symbian" >/dev/null`"]; then
continue
fi;;
*examples/activeqt/*) continue ;;
*/qmake/qmake.pro) continue ;;
*tools/bootstrap*|*tools/moc*|*tools/rcc*|*tools/uic*|*linguist/lrelease*) SPEC=$QMAKESPEC ;;
- *) SPEC=$XQMAKESPEC ;;
+ *) if [ "$CFG_NOPROCESS" = "yes" ]; then
+ continue
+ else
+ SPEC=$XQMAKESPEC
+ fi;;
esac
dir=`dirname "$a" | sed -e "s;$sepath;.;g"`
test -d "$dir" || mkdir -p "$dir"
diff --git a/configure.exe b/configure.exe
index f8d520a650..068701f54e 100755
--- a/configure.exe
+++ b/configure.exe
Binary files differ
diff --git a/demos/symbianpkgrules.pri b/demos/symbianpkgrules.pri
index c9cc492bce..ef6dfd8419 100644
--- a/demos/symbianpkgrules.pri
+++ b/demos/symbianpkgrules.pri
@@ -2,12 +2,13 @@
RSS_RULES ="group_name=\"QtDemos\";"
+nokiaVendor = "Nokia, Qt"
vendorinfo = \
"; Localised Vendor name" \
- "%{\"Nokia, Qt\"}" \
+ "%{$$addLanguageDependentPkgItem(nokiaVendor)}" \
" " \
"; Unique Vendor name" \
- ":\"Nokia, Qt\"" \
+ ":\"$$nokiaVendor\"" \
" "
demos_deployment.pkg_prerules += vendorinfo
diff --git a/dist/changes-4.7.2 b/dist/changes-4.7.2
index 49bdd8ed60..a18a237429 100644
--- a/dist/changes-4.7.2
+++ b/dist/changes-4.7.2
@@ -45,8 +45,12 @@ QtCore
QtGui
-----
- - foo
- * bar
+ - QWidget
+ * [QTMOBILITY-645] Send WinIdChange event when winId is set to zero.
+ The window handle of a native widget may be set to zero in two
+ situations: (i) temporarily, during reparenting and (ii) during
+ widget destruction. Previously, no WinIdChange event was sent in
+ either of these cases; now, it is sent in both cases.
QtDBus
------
diff --git a/doc/src/declarative/basictypes.qdoc b/doc/src/declarative/basictypes.qdoc
index 8ab06abaa9..034b7d1e87 100644
--- a/doc/src/declarative/basictypes.qdoc
+++ b/doc/src/declarative/basictypes.qdoc
@@ -33,7 +33,7 @@
the \l {QML Elements}.
Some of these types can also be used for defining
- \c property values in QML. See \l{Extending types from QML} for the
+ \c property values in QML. See \l{Writing QML Components: Properties, Methods and Signals} for the
list of types that can be used for \c property values.
\annotatedlist qmlbasictypes
@@ -166,7 +166,7 @@
\l{QML:Qt::lighter()}{Qt.lighter()} or \l{QML:Qt::tint()}{Qt.tint()} functions:
\qml
- Rectangle { color: Qt.rgba(255, 0, 0, 1) }
+ Rectangle { color: Qt.rgba(0.5, 0.5, 0, 1) }
\endqml
\sa {QML Basic Types}
@@ -380,7 +380,7 @@
\c child1, \c child2 and \c child3 will be added to the children list
in the order in which they appear.
- List \l {Adding new properties}{properties} can be created as a
+ List \l {Adding Properties}{properties} can be created as a
\c variant type, or as a \c list<Type> type, where \c Type is the
type of the object in the list:
diff --git a/doc/src/declarative/codingconventions.qdoc b/doc/src/declarative/codingconventions.qdoc
index ba789e0780..3f92d463d2 100644
--- a/doc/src/declarative/codingconventions.qdoc
+++ b/doc/src/declarative/codingconventions.qdoc
@@ -35,7 +35,7 @@ This page assumes that you are already familiar with the QML language.
If you need an introduction to the language, please read \l {Introduction to the QML language}{the QML introduction} first.
-\section1 QML objects
+\section1 QML Objects
Through our documentation and examples, QML objects are always structured in the following order:
@@ -58,7 +58,7 @@ For example, a hypothetical \e photo QML object would look like this:
\snippet doc/src/snippets/declarative/codingconventions/photo.qml 0
-\section1 Grouped properties
+\section1 Grouped Properties
If using multiple properties from a group of properties,
we use the \e {group notation} rather than the \e {dot notation} to improve readability.
@@ -72,6 +72,18 @@ can be written like this:
\snippet doc/src/snippets/declarative/codingconventions/dotproperties.qml 1
+\section1 Private Properties
+
+QML and JavaScript do not enforce private properties like C++. There is a need
+to hide these private properties, for example, when the properties are part of
+the implementation. As a convention, private properties begin with two
+\e underscore characters. For example, \c __area, is a property that is
+accessible but is not meant for public use. Note that QML and JavaScript will
+grant the user access to these properties.
+
+\snippet doc/src/snippets/declarative/codingconventions/private.qml 0
+
+
\section1 Lists
If a list contains only one element, we generally omit the square brackets.
@@ -87,7 +99,7 @@ we will write this:
\snippet doc/src/snippets/declarative/codingconventions/lists.qml 1
-\section1 JavaScript code
+\section1 JavaScript Code
If the script is a single expression, we recommend writing it inline:
diff --git a/doc/src/declarative/declarativeui.qdoc b/doc/src/declarative/declarativeui.qdoc
index 28a8a7012e..41b9952051 100644
--- a/doc/src/declarative/declarativeui.qdoc
+++ b/doc/src/declarative/declarativeui.qdoc
@@ -45,7 +45,7 @@ language for describing user interfaces and a language runtime. A collection
of C++ APIs is used to integrate these high level features with classic
Qt applications.
-\section2 QML, Elements and the QtDeclarative Module
+\section2 QML, Elements and the Qt Declarative Module
User interfaces and their behavior are described using QML, an extension to
\l{About JavaScript}{JavaScript} that lets developers and designers
@@ -60,14 +60,14 @@ QObject-based type system, adds support for automatic
\l{Property Binding}{property bindings} and provides
\l{Network Transparency}{network transparency} at the language level.
-The QtDeclarative module implements the interface between the QML language
+The Qt Declarative module implements the interface between the QML language
and the elements available to it. It also provides a C++ API that can be
used to load and interact with QML files from within Qt applications.
Qt Quick builds on \l{QML for Qt programmers}{Qt's existing strengths}.
QML can be be used to incrementally extend an existing application or
to build completely new applications. QML is fully
-\l{Extending QML in C++}{extensible from C++} through the QtDeclarative
+\l{Extending QML in C++}{extensible from C++} through the Qt Declarative
Module.
\section1 Getting Started
@@ -77,7 +77,7 @@ Module.
\o \l{Introduction to the QML language}
\o \l{QML for Qt Programmers}
\o \l{Getting Started Programming with QML}
-\o \l{Beginning Qt Quick}
+\o \l{Intro to Qt Quick}
\endlist
\list
@@ -91,9 +91,10 @@ Module.
\list
\o \l{QML Documents}
\o \l{Property Binding}
+\o \l{Anchor-based Layout in QML}
+\o \l{Writing QML Components: Properties, Methods and Signals}
\o \l{QML Scope}
\o \l{QML Modules}
-\o \l{Anchor-based Layout in QML}
\endlist
\section1 User Interaction
@@ -107,6 +108,7 @@ Module.
\section1 Handling Data
\list
+\o \l{QML Basic Types}{QML Basic Data Types}
\o \l{Using QML Positioner and Repeater Items}
\o \l{QML Data Models}
\o \l{Presenting Data with QML}
@@ -118,7 +120,6 @@ Module.
\list
\o \l{Qt Declarative UI Runtime}
\o \l{Integrating JavaScript}
-\o \l{Extending types from QML}
\o \l{Dynamic Object Management in QML}
\endlist
@@ -136,10 +137,11 @@ Module.
\list
\o \l{QML Elements}
+\o \l{QML Basic Types}
\o \l{QML Global Object}
\o \l{QML Internationalization}
\o \l{QML Security}
-\o \l{QtDeclarative Module}
+\o \l{Qt Declarative Module}
\o \l{Debugging QML}
\o \l{QML Viewer}
\o \l{QML Performance}
diff --git a/doc/src/declarative/dynamicobjects.qdoc b/doc/src/declarative/dynamicobjects.qdoc
index daf2ae10c7..fcc9fd468a 100644
--- a/doc/src/declarative/dynamicobjects.qdoc
+++ b/doc/src/declarative/dynamicobjects.qdoc
@@ -102,6 +102,9 @@ Notice in both instances, \l {Component::createObject()}{createObject()} is call
When using files with relative paths, the path should
be relative to the file where \l {QML:Qt::createComponent()}{Qt.createComponent()} is executed.
+To connect signals to (or receive signals from) dynamically created objects, use the signal
+\c connect() method. See \l {Connecting signals to methods and other signals} for more information.
+
\section2 Creating an object from a string of QML
diff --git a/doc/src/declarative/elements.qdoc b/doc/src/declarative/elements.qdoc
index 54f07a219f..eaa6a828cc 100644
--- a/doc/src/declarative/elements.qdoc
+++ b/doc/src/declarative/elements.qdoc
@@ -32,7 +32,7 @@
\brief A dictionary of standard QML elements.
This is a dictionary of all standard QML elements made available
- in the QtDeclarative module.
+ in the Qt Declarative module.
To see the QML elements listed by functional area, see the
\l{Groups Of Related QML Elements} page.
diff --git a/doc/src/declarative/extending-tutorial.qdoc b/doc/src/declarative/extending-tutorial.qdoc
index 2bfe62ec07..c998c5cedd 100644
--- a/doc/src/declarative/extending-tutorial.qdoc
+++ b/doc/src/declarative/extending-tutorial.qdoc
@@ -29,7 +29,7 @@
\page qml-extending-tutorial-index.html
\title Tutorial: Writing QML extensions with C++
-The QtDeclarative module provides a set of APIs for extending QML through
+The Qt Declarative module provides a set of APIs for extending QML through
C++ extensions. You can write extensions to add your own QML types, extend existing
Qt types, or call C/C++ functions that are not accessible from ordinary QML code.
@@ -65,7 +65,7 @@ For example, this could be done to implement particular data models, or provide
elements with custom painting and drawing capabilities, or access system features
like network programming that are not accessible through built-in QML features.
-In this tutorial, we will show how to use the C++ classes in the QtDeclarative
+In this tutorial, we will show how to use the C++ classes in the Qt Declarative
module to extend QML. The end result will be a simple Pie Chart display implemented by
several custom QML types connected together through QML features like bindings and
signals, and made available to the QML runtime through a plugin.
@@ -285,8 +285,8 @@ int-type property to store an identifier for each chart:
}
\endcode
-We can also use various other property types. QML has built-in support for the following
-types listed in the \l{Extending Types from QML} document, including the following:
+We can also use various other property types. QML has built-in support for the types
+listed in the \l{Adding Properties} documentation, which includes the following:
\list
\o bool, unsigned int, int, float, double, qreal
diff --git a/doc/src/declarative/extending.qdoc b/doc/src/declarative/extending.qdoc
index 5c1b977314..fc5c5865a7 100644
--- a/doc/src/declarative/extending.qdoc
+++ b/doc/src/declarative/extending.qdoc
@@ -75,13 +75,15 @@ constructor.
\endquotation
+#include <QtDeclarative> to use qmlRegisterType().
+
Types can be registered by libraries, application code, or by plugins
(see QDeclarativeExtensionPlugin).
Once registered, all \l {Qt's Property System}{properties} of the
supported types are available in QML. QML has intrinsic support for
-properties of the types listed in the \l{Extending Types from QML}
-document, including the following:
+properties of the types listed in the \l{Adding Properties}
+document, which includes the following:
\list
\o bool, unsigned int, int, float, double, qreal
@@ -427,7 +429,7 @@ on<Property-name>Changed, regardless of the name used for the NOTIFY
signal in C++. We recommend using <property-name>Changed() for the
NOTIFY signal in C++.
-See also \l {Extending Types from QML}.
+See also \l {Writing QML Components: Properties, Methods and Signals}
\section1 Methods
@@ -635,147 +637,177 @@ public:
/*!
\page qml-extending-types.html
-\title Extending Types from QML
+\title Writing QML Components: Properties, Methods and Signals
-Many of the elements available for use in QML are implemented in
-\l {Extending QML in C++}{C++}. These types are know as "core types". QML
-allows programmers to build new, fully functional elements without using C++.
-Existing core types can be extended, and new types defined entirely in the QML
-language.
+One of the key concepts in QML is the ability to define your own QML components that suit
+the purposes of your application. The standard \l {QML Elements} provide the essential components
+for creating a QML application; beyond these, you can write your own custom components that can
+be created and reused, without the use of C++.
-\tableofcontents
+Components are the building blocks of a QML project. When writing a QML application, whether
+large or small, it is best to separate QML code into smaller components that perform specific
+sets of operations, instead of creating mammoth QML files with large, combined functionality
+that is more difficult to manage and may contain duplicated code.
+
+
+\section1 Defining New Components
+
+A component is a reusable type with a well-defined interface, built entirely in QML.
+Any snippet of QML code can become a component, by placing the code in a file "<Name>.qml" where
+<Name> is the new component name, beginning with an uppercase letter. These QML files automatically
+become available as new QML element types to other QML components and applications in the same directory.
-\section1 Adding new properties
+For example, one of the simplest and most common components you can build in QML is a
+button-type component. Below, we implement this component as a \l Rectangle with a clickable
+\l MouseArea, in a file named \c Button.qml:
-New properties can be added to an existing type using the \c property keyword.
-These new properties are
-available for use within QML, and also appear as regular Qt properties on the
-C++ object, accessible through the regular property access mechanisms.
+\snippet doc/src/snippets/declarative/qml-extending-types/components/Button.qml 0
-Like all properties in QML, custom properties are typed. The type is used to
-define the property's behavior, and also determines the C++ type of the created
-Qt property. The following table shows the list of types available when
-declaring a new property, and the corresponding C++ type.
+Now this component can be reused by another file within the same directory. Since the file is
+named \c Button.qml, the component is referred to as \c Button:
\table
-\header \o QML Type Name \o C++ Type Name
-\row \o int \o int
-\row \o bool \o bool
-\row \o double \o double
-\row \o real \o double
-\row \o string \o QString
-\row \o url \o QUrl
-\row \o color \o QColor
-\row \o date \o QDateTime
-\row \o variant \o QVariant
+\row
+\o \snippet doc/src/snippets/declarative/qml-extending-types/components/application.qml 0
+\o \image qml-extending-types.png
\endtable
-From QML you can also declare object and list properties using any element name
-like this:
+The root object in \c Button.qml defines the attributes that are available to users of the
+\c Button component. In this case, the root object is a \l Rectangle, so any properties, methods
+and signals of \l Rectangle are made available, allowing \c application.qml to
+customize the \c width, \c height, \c radius and \c color properties of \c Button objects.
-\code
- property QtObject objectProperty
- property Item itemProperty
- property MyCustomType customProperty
- property list<Item> listOfItemsProperty
-\endcode
-Custom types must be registered with qmlRegisterType() to be usable as a property
-type. Also note that list properties cannot be modified like ordinary JavaScript
-arrays; see the \l {list}{list type documentation} for details.
+If \c Button.qml was not in the same directory, \c application.qml would need to load it as a
+\l {Modules}{module} from a specific filesystem path or \l{QDeclarativeExtensionPlugin}{plugin}.
+Also, note the letter case of the component file name is significant on some (notably UNIX)
+filesystems. It is recommended the file name case matches the case of the QML component name
+exactly - for example, \c Box.qml and not \c BoX.qml - regardless of the platform to which the
+QML component will be deployed.
+
+To write a useful component, it is generally necessary to provide it with custom attributes that store and
+communicate specific data. This is achieved by adding the following attributes to your components:
-QML supports two methods for adding a new property to a type: a new property
-definition, and a property alias. These are shown below.
+\list
+\o \bold Properties that can be accessed externally to modify an object (for example, \l Item has
+ \l {Item::}{width} and \l {Item::}{height} properties) and used in \l {Property Binding}
+\o \bold Methods of JavaScript code can be invoked internally or externally (for example,
+ \l Animation has a \l {Animation::}{start()} method)
+\o \bold Signals to notify other objects when an event has occurred (for example, MouseArea has a
+ \c clicked signal)
+\endlist
+
+The following sections show how these attributes can be added to QML components.
-\section2 Property definitions
-Property definitions add a new property to an existing type. The storage of the
-property is managed by QML. The defined property may be read, written and bound
-to and from.
+\section1 Adding Properties
+
+A property is a value of a QML component that can be read and modified by other objects. For
+example, a \l Rectangle component has \l {Item::}{width}, \l {Item::}{height} and \l
+{Rectangle::}{color} properties. Significantly, properties be used with \l {Property Binding}, where
+a property value is automatically updated using the value of another property.
The syntax for defining a new property is:
+
\code
- [default] property <type> <name>[: defaultValue]
+[default] property <type> <name>[: defaultValue]
\endcode
-This declaration may appear anywhere within a type body, but it is customary to
-include it at the top. Attempting to declare two properties with the same name
-in the same type block is an error. However, a new property may reuse the name
-of an existing property on the type. This should be done with caution, as the
-existing property will be hidden, and become inaccessible.
+A \c property declaration can appear anywhere within a QML component definition, but it is customary
+to place it at the top. A component cannot declare more than one property with the same name. (It is
+possible to have a property name that is the same as an existing property in a type, but this is not
+recommended as the existing property becomes hidden and inaccessible.)
-The <type> must be one of the QML type names shown in the above table.
-Additionally, an optional default value of the property can be provided. The
-default value is a convenient shortcut, but is behaviorally identical to doing
-it in two steps, like this:
+Below is an example. The \c ImageViewer component has defined a \c string type property named
+\c currentImage, and its initial value is "default-image.png". This property is used to set the image
+displayed in the child \l Image object. Another file, \c application.qml, can create
+an \c ImageViewer object and read or modify the \c currentImage value:
-\code
- // Use default value
- property int myProperty: 10
+\table
+\row
+\o \snippet doc/src/snippets/declarative/qml-extending-types/properties/ImageViewer.qml 0
+\o \snippet doc/src/snippets/declarative/qml-extending-types/properties/application.qml 0
+\endtable
- // Longer, but behaviorally identical
- property int myProperty
- myProperty: 10
-\endcode
+It is optional for a property to have a default value. The default value is a convenient shortcut, and is
+behaviorally identical to doing it in two steps, like this:
+
+\qml
+// Use default value
+property int myProperty: 10
+
+// Longer, but behaviorally identical
+property int myProperty
+myProperty: 10
+\endqml
+
+
+\section2 Supported property types
+
+All QML properties are typed. The examples above show properties with \c int and \c string types;
+notice that the type of the property must be declared. The type is used to determine the property
+behavior, and how the property is defined in C++.
-If a default value is not supplied or set later in the file, each type has a
-default value for when none is explicitly set. Below are the default values
-of some of the types. For the remaining types the default values are undefined.
+A number of property types are supported by default. These are listed in the table below,
+with their default values and the corresponding C++ type:
\table
-\header \o QML Type \o Default Value
-\row \o bool \o false
-\row \o int \o 0
-\row \o double, real \o 0.0
-\row \o string, url \o "" (an empty string)
-\row \o color \o #000000 (black)
+\header \o QML Type Name \o Default value \o C++ Type Name
+\row \o int \o 0 \o int
+\row \o bool \o \c false \o bool
+\row \o double \o 0.0 \o double
+\row \o real \o 0.0 \o double
+\row \o string \o "" (empty string) \o QString
+\row \o url \o "" (empty url) \o QUrl
+\row \o color \o #000000 (black) \o QColor
+\row \o date \o \c undefined \o QDateTime
+\row \o variant \o \c undefined \o QVariant
\endtable
-The following example shows how to declare a new "innerColor" property that
-controls the color of the inner rectangle.
+QML object types can also be used as property types. This includes
+\l {Defining new QML elements}{custom QML types} implemented in C++. Such properties are
+defined like this:
-\code
- Rectangle {
- property color innerColor: "black"
-
- color: "red"; width: 100; height: 100
- Rectangle {
- anchors.centerIn: parent
- width: parent.width - 10
- height: parent.height - 10
- color: innerColor
- }
- }
-\endcode
+\qml
+property Item itemProperty
+property QtObject objectProperty
+property MyCustomType customProperty
+\endqml
+Such object-type properties default to an \c undefined value.
-\section3 Property signal handlers
+\l{list}{List properties} are created with the \c list<Type> syntax, and default to an empty
+list:
-Adding a property to an item automatically adds a \e{value-changed}
-signal handler to the item. The signal hander is named
-\c{on<Property_name>Changed}, with the first letter of the property
-name being upper case.
+\qml
+property list<Item> listOfItems
+\endqml
-Signal handlers can have arbitrary JavaScript code assigned. The following
-example shows how to output to a text console a new value of property
-\c{innerColor} whenever the value of this property changes.
+Note that list properties cannot be modified like ordinary JavaScript
+arrays. See the \l {list}{list type documentation} for details.
-\code
- Rectangle {
- id: rect
- property color innerColor: "black"
+For details about accessing and manipulating QML properties from C++, see \l {Using QML with C++}.
- onInnerColorChanged: { console.log(rect.innerColor); }
- }
-\endcode
+\section2 Property change signals
+
+Adding a \c property to an item automatically adds a \e {value changed}
+signal handler to the item. To connect to this signal, use a \l {Signal Handlers}{signal handler}
+named with the \c on<Property>Changed syntax, using upper case for the first letter of the
+property name.
+
+For example, the following \c onMyNumberChanged signal handler is automatically called whenever the
+\c myNumber property changes:
+
+\snippet doc/src/snippets/declarative/qml-extending-types/properties/property-signals.qml 0
-\section3 Setting default properties
+
+\section2 Default properties
The optional \c default attribute for a property marks it as the \e {default property}
for a type. This allows other items to specify the default property's value
-as child elements. For example, the \l Item element's default property is its
-\l{Item::children}{children} property. This allows the children of an \l Item
+as child elements. For example, the \l Item element's default property is its
+\l{Item::children}{children} property. This allows the children of an \l Item
to be set like this:
\qml
@@ -785,7 +817,7 @@ Item {
}
\endqml
-If the \l{Item::children}{children} property was not the default property for
+If the \l{Item::children}{children} property was not the default property for
\l Item, its value would have to be set like this instead:
\qml
@@ -802,21 +834,20 @@ demonstration of using default properties.
Specifying a default property overrides any existing default property (for
example, any default property inherited from a parent item). Using the
-default attribute twice in the same type block is an error.
+\c default attribute twice in the same type block is an error.
-\target qml-property-aliases
\section2 Property aliases
Property aliases are a more advanced form of property declaration. Unlike a
-property definition, that allocates a new, unique storage space for the
+property definition, which allocates a new, unique storage space for the
property, a property alias connects the newly declared property (called the
-aliasing property) to an existing property (the aliased property). Read
+aliasing property) as a direct reference to an existing property (the aliased property). Read
operations on the aliasing property act as read operations on the aliased
property, and write operations on the aliasing property as write operations on
the aliased property.
-A property alias declaration looks a lot like a property definition:
+A property alias declaration looks a lot like an ordinary property definition:
\code
[default] property alias <name>: <alias reference>
\endcode
@@ -827,7 +858,7 @@ value, a property alias includes a compulsory alias reference. The alias
reference is used to locate the aliased property. While similar to a property
binding, the alias reference syntax is highly restricted.
-An alias reference takes one of the following forms
+An alias reference takes one of the following forms:
\code
<id>.<property>
<id>
@@ -836,61 +867,58 @@ An alias reference takes one of the following forms
where <id> must refer to an object id within the same component as the type
declaring the alias, and, optionally, <property> refers to a property on that object.
-Here is the property definition example rewritten to use property aliases.
-\code
-Rectangle {
- property alias innerColor: innerRect.color
-
- color: "red"; width: 100; height: 100
- Rectangle {
- id: innerRect
- anchors.centerIn: parent
- width: parent.width - 10
- height: parent.height - 10
- color: "black"
- }
-}
-\endcode
+For example, below is a \c Button.qml component with a \c buttonText aliased property which is
+connected to the child Text object's \c text property:
+
+\snippet doc/src/snippets/declarative/qml-extending-types/properties/alias.qml 0
+
+The following code would create a \c Button with a defined text string for the
+child \l Text object:
-Aliases are most useful when \l {Defining new Components}. Consequently
-they have several apparent limitations that only make sense in this context.
+\qml
+Button { buttonText: "This is a button" }
+\endqml
+
+Here, modifying \c buttonText directly modifies the \c textItem.text value; it does not
+change some other value that then updates \c textItem.text.
+
+In this case, the use of aliased properties is essential. If \c buttonText was not an alias,
+changing its value would not actually change the displayed text at all, as
+\l {Property Binding}{property bindings} are not bi-directional: the \c buttonText value would
+change when \c textItem.text changes, but not the other way around.
+
+Aliased properties are also useful for allowing external objects to directly modify and
+access child objects in a component. For example, here is a modified version of the \c ImageViewer
+component shown \l {Adding Properties}{earlier} on this page. The \c currentImage property has
+been changed to an alias to the child \l Image object:
+
+\table
+\row
+\o \snippet doc/src/snippets/declarative/qml-extending-types/properties/alias/ImageViewer.qml 0
+\o \snippet doc/src/snippets/declarative/qml-extending-types/properties/alias/application.qml 0
+\endtable
+
+Instead of being limited to setting the \l Image source, \c application.qml can now directly
+access and modify the child \l Image object and its properties.
+
+Obviously, exposing child objects in this manner should be done with care, as it allows external
+objects to modify them freely. However, this use of aliased properties can be quite useful in
+particular situations, such as for the \l {declarative/ui-components/tabwidget}{TabWidget}
+example, where new tab items are actually parented to a child object that displays the current tab.
+
+
+\section3 Considerations for property aliases
Aliases are only activated once the component specifying them is completed. The
most obvious consequence of this is that the component itself cannot generally
-use the aliased property directly. For example, this will not work:
+use the aliased property directly during creation. For example, this will not work:
\code
// Does NOT work
- property alias innerColor: innerRect.color
- innerColor: "black"
+ property alias buttonText: textItem.text
+ buttonText: "Some text" // buttonText is not yet defined when this value is set
\endcode
-This behavior is required to allow type developers to redefine the behavior
-of existing property names while continuing to use the existing behavior within
-the type they are building, something that is not possible with property
-definitions. In the example used so far, this could allows the developer to fix
-the external rectangle's color as "red" and redefine the "color" property to
-refer to the inner rectangle, like this:
-
-\code
-Rectangle {
- property alias color: innerRect.color
-
- color: "red"; width: 100; height: 100
- Rectangle {
- id: innerRect
- anchors.centerIn: parent
- width: parent.width - 10
- height: parent.height - 10
- color: "black"
- }
-}
-\endcode
-
-Users of this type would not be able to affect the color of the red rectangle,
-but would find using the "color" property, rather than the strange new
-"innerColor" property, much more familiar.
-
A second, much less significant, consequence of the delayed activation of
aliases is that an alias reference cannot refer to another aliasing property
declared within the same component. This will not work:
@@ -898,198 +926,177 @@ declared within the same component. This will not work:
\code
// Does NOT work
id: root
- property alias innerColor: innerRect.color
- property alias innerColor2: root.innerColor
+ property alias buttonText: textItem.text
+ property alias buttonText2: root.buttonText
\endcode
-From outside the component, aliasing properties appear as regular Qt properties
-and consequently can be used in alias references.
+At the time the component is created, the \c buttonText value has not yet been assigned,
+so \c root.buttonText would refer to an undefined value. (From outside the component,
+however, aliasing properties appear as regular Qt properties and consequently can be
+used in alias references.)
-\section1 Adding new signals
+It is possible for an aliased property to have the same name as an existing property. For example,
+the following component has a \c color alias property, named the same as the built-in
+\l {Rectangle::color} property:
-New signals can be added to an existing type. These new signals are available
-for use within QML, and also appear as regular Qt signals on the C++ object that
-can be used in Qt signal/slot connections.
+\snippet doc/src/snippets/declarative/qml-extending-types/properties/alias-override.qml 0
+
+Any objects that use this component and refer to its \c color property will be
+referring to the alias rather than the ordinary \l {Rectangle::color} property. Internally,
+however, the rectangle can correctly set this property to "red" and refer to the actual defined
+property rather than the alias.
+
+
+\section1 Adding Methods
+
+A QML component can define methods of JavaScript code. These methods can be invoked
+either internally or by other objects.
+
+The syntax for defining a method is:
-The syntax for defining a new signal is:
\code
-signal <name>[([<type> <parameter name>[, ...]])]
+function <name>([<parameter name>[, ...]]) { <body> }
\endcode
This declaration may appear anywhere within a type body, but it is customary to
-include it at the top. Attempting to declare two signals or methods with the
-same name in the same type block is an error. However, a new signal may reuse
-the name of an existing signal on the type. This should be done with caution,
-as the existing signal may be hidden and become inaccessible.
+include it at the top. Attempting to declare two methods or signals with the
+same name in the same type block is an error. However, a new method may reuse
+the name of an existing method on the type. (This should be done with caution,
+as the existing method may be hidden and become inaccessible.)
-The options for parameter types are the same as for property types (see
-\l {Adding new properties}. If this signal has no parameters, the parameter
-list may be omitted entirely.
+Unlike \l{Adding Signals}{signals}, method parameter types do not have to be declared as they
+default to the \c variant type. The body of the method is written in JavaScript and may access
+the parameters by name.
-Here are three examples of signal declarations:
-\code
- Item {
- signal clicked
- signal hovered()
- signal performAction(string action, variant actionArgument)
- }
-\endcode
+Here is an example of a component with a \c say() method that accepts a single \c text argument:
-Adding a signal to an item automatically adds a signal handler to it.
-The signal hander is named on<Signal name>, with the first letter of the
-signal name being upper cased. The above example item would now have the
-following signal handlers:
+\snippet doc/src/snippets/declarative/qml-extending-types/methods/app.qml 0
-\list
- \o onClicked
- \o onHovered
- \o onPerformAction
-\endlist
+A method can be connected to a signal so that it is automatically invoked whenever the signal
+is emitted. See \l {Connecting signals to methods and other signals} below.
+
+Also see \l {Integrating JavaScript} for more information on using JavaScript with QML.
-\section1 Adding new methods
-New methods can be added to an existing type. These new methods are available
-for use within QML, and also appear as regular Qt slots on the C++ object that
-can be used in Qt signal/slot connections.
+\section1 Adding Signals
+
+Signals provide a way to notify other objects when an event has occurred. For example, the MouseArea
+\c clicked signal notifies other objects that the mouse has been clicked within the area.
+
+The syntax for defining a new signal is:
\code
-function <name>([<parameter name>[, ...]]) { <body> }
+signal <name>[([<type> <parameter name>[, ...]])]
\endcode
This declaration may appear anywhere within a type body, but it is customary to
-include it at the top. Attempting to declare two methods or signals with the
-same name in the same type block is an error. However, a new method may reuse
-the name of an existing method on the type. This should be done with caution,
-as the existing method may be hidden and become inaccessible.
+include it at the top. Attempting to declare two signals or methods with the
+same name in the same type block is an error. However, a new signal may reuse
+the name of an existing signal on the type. (This should be done with caution,
+as the existing signal may be hidden and become inaccessible.)
-Methods parameters are not typed. In C++ these parameters are of type QVariant.
-The body of the method is written in JavaScript and may access the parameters by
-name.
+Here are three examples of signal declarations:
-This example adds a new method that behaves like a child:
\code
Item {
- function say(text) {
- console.log("You said " + text);
- }
+ signal clicked
+ signal hovered()
+ signal performAction(string action, variant actionArgument)
}
\endcode
-This may be connected to via QObject::connect() or called directly from C++ using
-QMetaObject::invokeMethod():
+If the signal has no parameters, the "()" brackets are optional. If parameters are used, the
+parameter types must be declared, as for the \c string and \c variant arguments for the \c
+performAction signal above; the allowed parameter types are the same as those listed in the \l
+{Adding Properties} section on this page.
-\code
- QDeclarativeEngine engine;
- QDeclarativeContext *context = new QDeclarativeContext(engine.rootContext());
- QDeclarativeComponent component(&engine, QUrl::fromLocalFile("main.qml"));
- QObject *object = component.create(context);
- QVariant str("Hello");
- QMetaObject::invokeMethod(object, "say", Q_ARG(QVariant, str));
-\endcode
-
-Return values of type QVariant are also supported via Q_RETURN_ARG.
-
-\section1 Defining new Components
-\target components
+Adding a signal to an item automatically adds a \l {Signal Handlers}{signal handler} as well.
+The signal hander is named \c on<SignalName>, with the first letter of the signal being upper
+cased. The above example item would now have the following signal handlers:
-A component is a reusable type with a well-defined interface built entirely in
-QML. Components appear as regular QML elements, and can be used interchangeably
-with core types. Components allow developers to create new types to be reused
-in other projects without the use of C++. Components can also help to reduce
-duplication inside one project by limiting the need for large numbers of
-copy-and-pasted blocks.
+\list
+\o onClicked
+\o onHovered
+\o onPerformAction
+\endlist
-Any snippet of QML code can become a component, just by placing it in the file "<Name>.qml"
-where <Name> is the new element name, and begins with an uppercase letter. Note that
-the case of all characters in the <Name> are significant on some filesystems, notably
-UNIX filesystems. It is recommended that the case of the filename matches the case of
-the component name in QML exactly, regardless of the platform the QML will be deployed to.
+To emit a signal, simply invoke it in the same way as a method. Below left, when the \l MouseArea is
+clicked, it emits the parent \c buttonClicked signal by invoking \c rect.buttonClicked(). The
+signal is received by \c application.qml through an \c onButtonClicked signal handler:
-These QML files automatically become available as new QML element types
-to other QML components and applications in the same directory.
+\table
+\row
+\o \snippet doc/src/snippets/declarative/qml-extending-types/signals/basic.qml 0
+\o \snippet doc/src/snippets/declarative/qml-extending-types/signals/no-parameters.qml 0
+\endtable
-For example, here we show how a component named "Box" is defined and used
-multiple times by an application.
+If the signal has parameters, they are accessible by parameter name in the signal handler.
+In the example below, \c buttonClicked is emitted with \c xPos and \c yPos parameters instead:
\table
\row
-\o application.qml
-\code
-Rectangle {
- width: 100; height: 400;
- Box { x: 0; y: 0 }
- Box { x: 0; y: 150 }
- Box { x: 0; y: 300 }
-}
-\endcode
-\o Box.qml
-\code
-Rectangle {
- width: 100; height: 100;
- color: "blue"
-}
-\endcode
+\o \snippet doc/src/snippets/declarative/qml-extending-types/signals/Button.qml 0
+\o \snippet doc/src/snippets/declarative/qml-extending-types/signals/parameters.qml 0
\endtable
-Components may be collected into \l {Modules} that gives the
-developer more freedom than just putting files in the same directory.
-\section2 Building reusable components
+\section2 Connecting signals to methods and other signals
-A component type built to be reused by others must have a well defined
-interface. In QML, an interface consists of a defined collection of
-properties, signals and methods. Users of a component have access to all the
-properties, signals and methods defined on the root element of the component.
+Signal objects have a \c connect() method that can be used to a connect a signal to a method or
+another signal. When a signal is connected to a method, the method is automatically invoked
+whenever the signal is emitted. (In Qt terminology, the method is a \e slot that is connected
+to the \e signal; all methods defined in QML are created as Qt slots.) This enables a signal
+to be received by a method instead of a \l {Signal Handlers}{signal handler}.
-In the component example above, the root element of the "Box" component is a
-Rect. As the Rect type has a "color" property, this property is accessible to
-users of the Box component. For example, the application.qml can be modified
-to show three different colored boxes like this:
-\code
-Rectangle {
- width: 100; height: 400;
- Box { x: 0; y: 0; color: "red"; }
- Box { x: 0; y: 150; color: "yellow"; }
- Box { x: 0; y: 300; color: "green"; }
-}
-\endcode
+For example, the \c application.qml above could be rewritten as:
-As expected, adding additional properties to the root element of Box, makes them
-available externally. Here we add a "text" property:
+\snippet doc/src/snippets/declarative/qml-extending-types/signals/connectslots.qml 0
-\table
-\row
-\o application.qml
-\code
-Rectangle {
- width: 100; height: 400;
- Box { x: 0; y: 0; color: "red"; text: "stop" }
- Box { x: 0; y: 150; color: "yellow"; text: "slow" }
- Box { x: 0; y: 300; color: "green"; text: "go" }
-}
-\endcode
-\o Box.qml
-\code
-Rectangle {
- property alias text: myText.text
- width: 100; height: 100;
- color: "blue"
- Text {
- id: myText
- anchors.centerIn: parent
+The \c myMethod() method will be called whenever the \c buttonClicked signal is received.
+
+In many cases it is sufficient to receive signals through signal handlers rather than using
+the \c connect() function; the above example does not provide any improvements over using a
+simple \c onButtonClicked handler. However, if you are \l{Dynamic Object Management in QML}{creating objects dynamically},
+or \l {Integrating JavaScript}{integrating JavaScript code}, then you will find the
+\c connect() method useful. For example, the component below creates three \c Button
+objects dynamically, and connects the \c buttonClicked signal of each object to the
+\c myMethod() function:
+
+\snippet doc/src/snippets/declarative/qml-extending-types/signals/connectdynamic.qml 0
+
+In the same way, you could connect a signal to methods defined in a dynamically
+created object, or \l {Receiving QML Signals in JavaScript}{connect a signal to a JavaScript method}.
+
+There is also a corresponding \c disconnect() method for removing connected signals. The following
+code removes the connection created in \c application.qml above:
+
+\qml
+// application.qml
+Item {
+ ...
+
+ function removeSignal() {
+ button.clicked.disconnect(item.myMethod)
}
}
-\endcode
-\endtable
+\endqml
+
+
+\section3 Forwarding signals
+
+The \c connect() method can also connect a signal to other signals. This has the effect
+of "forwarding" a signal: it is automatically emitted whenever the relevant signal is emitted. For
+example, the MouseArea \c onClicked handler in \c Button.qml above could have been replaced with
+a call to \c connect():
+
+\qml
+MouseArea {
+ anchors.fill: parent
+ Component.onCompleted: clicked.connect(item.buttonClicked)
+}
+\endqml
-Methods and signals may be added in the same way.
+Whenever the \l MouseArea \c clicked signal is emitted, the \c rect.buttonClicked signal will
+automatically be emitted as well.
-As all external methods, signals and properties are accessible to external
-users, developers should ensure that setting these properties does not have
-any undesirable side-effects. For most resilience, root level properties should
-only be used for literal default values. When a root level property must be
-used inside the component - such as the children property - property aliases
-can be used to redirect this property to a "safe" location for external users.
-Try to think of the root level properties as being "owned" by the components
-user, rather than the component itself.
*/
diff --git a/doc/src/declarative/focus.qdoc b/doc/src/declarative/focus.qdoc
index 2e74fe0dc2..ae72c3cb33 100644
--- a/doc/src/declarative/focus.qdoc
+++ b/doc/src/declarative/focus.qdoc
@@ -31,7 +31,7 @@
\title Keyboard Focus in QML
When a key is pressed or released, a key event is generated and delivered to the
-focused QML \l Item. To facilitate the construction of reusable components
+focused QML \l Item. To facilitate the construction of reusable components
and to address some of the cases unique to fluid user interfaces, the QML items add a
\e scope based extension to Qt's traditional keyboard focus model.
@@ -42,27 +42,21 @@ and to address some of the cases unique to fluid user interfaces, the QML items
When the user presses or releases a key, the following occurs:
\list 1
\o Qt receives the key action and generates a key event.
-\o If the Qt widget containing the \l QDeclarativeView has focus, the key event is delivered to it. Otherwise, regular Qt key handling continues.
-\o The key event is delivered by the scene to the QML \l Item with \e {active focus}. If no \l Item has \e {active focus}, the key event is \l {QEvent::ignore()}{ignored} and regular Qt key handling continues.
-\o If the QML \l Item with \e {active focus} accepts the key event, propagation stops. Otherwise the event is "bubbled up", by recursively passing it to each \l Item's parent until either the event is accepted, or the root \l Item is reached.
-
-If the \c {Rectangle} element in the following example has active focus and the \e A key is pressed,
-it will bubble up to its parent. However, pressing the \e B key will bubble up to the root
-item and thus subsequently be \l {QEvent::ignore()}{ignored}.
-
-\code
-Item {
- Item {
- Keys.onPressed: {
- if (event.key == Qt.Key_A) {
- console.log('Key A was pressed');
- event.accepted = true;
- }
- }
- Rectangle {}
- }
-}
-\endcode
+\o If the Qt widget containing the \l QDeclarativeView has focus, the key event
+is delivered to it. Otherwise, regular Qt key handling continues.
+\o The key event is delivered by the scene to the QML \l Item with
+\e {active focus}. If no Item has active focus, the key event is
+\l {QEvent::ignore()}{ignored} and regular Qt key handling continues.
+\o If the QML Item with active focus accepts the key event, propagation
+stops. Otherwise the event is "bubbled up", by recursively passing it to each
+Item's parent until either the event is accepted, or the root Item is reached.
+
+If the \c {Rectangle} element in the following example has active focus and the \c A key is pressed,
+it will bubble up to its parent. However, pressing the \c B key will bubble up to the root
+item and thus subsequently be ignored.
+
+\snippet doc/src/snippets/declarative/focus/rectangle.qml simple key event
+\snippet doc/src/snippets/declarative/focus/rectangle.qml simple key event end
\o If the root \l Item is reached, the key event is \l {QEvent::ignore()}{ignored} and regular Qt key handling continues.
@@ -72,232 +66,139 @@ See also the \l {Keys}{Keys attached property} and \l {KeyNavigation}{KeyNavigat
\section1 Querying the Active Focus Item
-Whether or not an \l Item has \e {active focus} can be queried through the
-property \c {Item::activeFocus}. For example, here we have a \l Text
-element whose text is determined by whether or not it has \e {active focus}.
+Whether or not an \l Item has active focus can be queried through the
+property \c {Item::activeFocus} property. For example, here we have a \l Text
+element whose text is determined by whether or not it has active focus.
-\code
-Text {
- text: activeFocus ? "I have active focus!" : "I do not have active focus"
-}
-\endcode
+\snippet doc/src/snippets/declarative/focus/rectangle.qml active focus
\section1 Acquiring Focus and Focus Scopes
-An \l Item requests focus by setting the \c {Item::focus} property to true.
-
-For very simple cases simply setting the \c {Item::focus} property is sometimes
-sufficient. If we run the following example with the \l {QML Viewer}, we see that
-the \c {keyHandler} element has \e {active focus} and pressing the 'A', 'B'
-or 'C' keys modifies the text appropriately.
-
-\table
-\row
-\o \code
- Rectangle {
- color: "lightsteelblue"; width: 240; height: 25
- Text { id: myText }
- Item {
- id: keyHandler
- focus: true
- Keys.onPressed: {
- if (event.key == Qt.Key_A)
- myText.text = 'Key A was pressed'
- else if (event.key == Qt.Key_B)
- myText.text = 'Key B was pressed'
- else if (event.key == Qt.Key_C)
- myText.text = 'Key C was pressed'
- }
- }
- }
-\endcode
-\o \image declarative-qmlfocus1.png
-\endtable
-
-However, were the above example to be used as a self-contained component, this
-simple use of the \c {Item::focus} property is no longer sufficient. The left
-hand side of the following table shows what we would like to be able to write.
-Here we create two instances of our previously defined component, and set the
-second one to have focus. The intention is that when the \e A, \e B, or \e C
-keys are pressed, the second of the two components receives the event and
+An \l Item requests focus by setting the \c focus property to \c true.
+
+For very simple cases simply setting the \c focus property is sometimes
+sufficient. If we run the following example with the \l {QML Viewer}, we see that
+the \c {keyHandler} element has active focus and pressing the \c A, \c B,
+or \c C keys modifies the text appropriately.
+
+\snippet doc/src/snippets/declarative/focus/basicwidget.qml focus true
+
+\image declarative-qmlfocus1.png
+
+However, were the above example to be used as a reusable or imported component,
+this simple use of the \c focus property is no longer sufficient.
+
+To demonstrate, we create two instances of our previously defined component and
+set the first one to have focus. The intention is that when the \c A, \c B, or
+\c C keys are pressed, the first of the two components receives the event and
responds accordingly.
-\table
-\row
-\o \code
-Rectangle {
- color: "red"; width: 240; height: 55
- MyWidget {}
- MyWidget { y: 30; focus: true }
-}
-\endcode
-\o \code
-Rectangle {
- color: "red"; width: 240; height: 55
- Rectangle {
- color: "lightsteelblue"; width: 240; height: 25
- Text { id: myText }
- Item {
- id: keyHandler
- focus: true
- Keys.onPressed: {
- if (event.key == Qt.Key_A)
- myText.text = 'Key A was pressed'
- else if (event.key == Qt.Key_B)
- myText.text = 'Key B was pressed'
- else if (event.key == Qt.Key_C)
- myText.text = 'Key C was pressed'
- }
- }
- }
- Rectangle {
- y: 30; focus: true
- color: "lightsteelblue"; width: 240; height: 25
- Text { id: myText }
- Item {
- id: keyHandler
- focus: true
- Keys.onPressed: {
- if (event.key == Qt.Key_A)
- myText.text = 'Key A was pressed'
- else if (event.key == Qt.Key_B)
- myText.text = 'Key B was pressed'
- else if (event.key == Qt.Key_C)
- myText.text = 'Key C was pressed'
- }
- }
- }
-}
-\endcode
-\endtable
-
-The right hand side of the example shows the expanded code - the equivalent QML
-without the use of the component \c {MyWidget}. From this, the problem is
-evident - there are no less than three elements that have the \c {Item::focus}
-property set to true. Ultimately only one element can have keyboard focus, and the
-system has to decide which on. In this case the first appearance of the
-\c {Item::focus} property being set to true on line 4 is selected, and the value
-of \c {Item::focus} in the other two instances is reverted back to false. This
-is exactly the opposite of what was wanted!
-
-This problem is fundamentally one of visibility. The \c {MyWidget}
-components each set their \c {keyHandler} Items as focused as that is all they can
-do - they don't know how they are going to be used, but they do know that when
-they're in use their \c {keyHandler} element is what needs focus. Likewise
-the code that uses the two \c {MyWidgets} sets the second \c {MyWidget} as
-focused. While it doesn't know exactly how the \c {MyWidget} is
-implemented, it knows that it wants the second one to be focused. This allows us
-to achieve encapsulation, allowing each widget to focus on it's appropriate behaviour
-itself.
-
-To solve this problem - allowing components to care about what they know about
-and ignore everything else - the QML items introduce a concept known as a
-\e {focus scope}. For existing Qt users, a \e {focus scope} is like an
-automatic focus proxy. A \e {focus scope} is created using the \l FocusScope
-element.
-
-In the next example, a \l FocusScope is added to the component, and the visual
-result shown.
-
-\table
-\row
-\o \code
-FocusScope {
- width: 240; height: 25
- Rectangle {
- color: "lightsteelblue"; width: 240; height: 25
- Text { id: myText }
- Item {
- id: keyHandler
- focus: true
- Keys.onPressed: {
- if (event.key == Qt.Key_A)
- myText.text = 'Key A was pressed'
- else if (event.key == Qt.Key_B)
- myText.text = 'Key B was pressed'
- else if (event.key == Qt.Key_C)
- myText.text = 'Key C was pressed'
- }
- }
- }
-}
-\endcode
-\o \image declarative-qmlfocus2.png
-\endtable
+The code that imports and creates two MyWidget instances:
+\snippet doc/src/snippets/declarative/focus/widget.qml window
+
+The MyWidget code:
+\snippet doc/src/snippets/declarative/focus/mywidget.qml mywidget
+
+We would like to have the first MyWidget object to have the focus by setting its
+\c focus property to \c true. However, by running the code, we can confirm that
+the second widget receives the focus.
+
+\image declarative-qmlfocus2.png
+
+Looking at both \c MyWidget and \c window code, the problem is evident - there
+are three elements that set the \c focus property set to \c true. The two
+MyWidget sets the \c focus to \c true and the \c window component also sets the
+focus. Ultimately, only one element can have keyboard focus, and the system has
+to decide which element receives the focus. When the second MyWidget is created,
+it receives the focus because it is the last element to set its \c focus
+property to \c true.
+
+This problem is due to visibility. The \c MyWidget component would like to have
+the focus, but it cannot control the focus when it is imported or reused.
+Likewise, the \c window component does not have the ability to know if its
+imported components are requesting the focus.
+
+To solve this problem, the QML introduces a concept known as a \e {focus scope}.
+For existing Qt users, a focus scope is like an automatic focus proxy.
+A focus scope is created by declaring the \l FocusScope element.
+
+In the next example, a \l FocusScope element is added to the component, and the
+visual result shown.
+
+\snippet doc/src/snippets/declarative/focus/myfocusscopewidget.qml widget in focusscope
+
+\image declarative-qmlfocus3.png
+
Conceptually \e {focus scopes} are quite simple.
\list
-\o Within each \e {focus scope} one element may have \c {Item::focus} set to true.
-If more than one \l Item has the \c {Item::focus} property set, the first is selected
-and the others are unset, just like when there are no \e {focus scopes}.
-\o When a \e {focus scope} receives \e {active focus}, the contained element with
-\c {Item::focus} set (if any) also gets \e {active focus}. If this element is
-also a \l FocusScope, the proxying behaviour continues. Both the
-\e {focus scope} and the sub-focused item will have \c {Item::activeFocus} set.
+\o Within each focus scope one element may have \c {Item::focus} set to
+\c true. If more than one \l Item has the \c focus property set, the
+last element to set the \c focus will have the focus and the others are unset,
+similar to when there are no focus scopes.
+\o When a focus scope receives active focus, the contained element with
+\c focus set (if any) also gets the active focus. If this element is
+also a \l FocusScope, the proxying behavior continues. Both the
+focus scope and the sub-focused item will have \c activeFocus property set.
\endlist
-So far the example has the second component statically selected. It is trivial
+Note that, since the FocusScope element is not a visual element, the properties
+of its children need to be exposed to the parent item of the FocusScope. Layouts
+and positioning elements will use these visual and styling properties to create
+the layout. In our example, the \c Column element cannot display the two widgets
+properly because the FocusScope lacks visual properties of its own. The MyWidget
+component directly binds to the \c rectangle properties to allow the \c Column
+element to create the layout containing the children of the FocusScope.
+
+So far, the example has the second component statically selected. It is trivial
now to extend this component to make it clickable, and add it to the original
-application. We still set a one of the widgets as focused by default, but from
-then on clicking the either one gives it focus.
-
-\table
-\row
-\o \code
-Rectangle {
- color: "red"; width: 240; height: 55
- MyClickableWidget {}
- MyClickableWidget { y: 30; focus: true }
-}
-\endcode
-\o \code
-FocusScope {
- id: page; width: 240; height: 25
- MyWidget { focus: true }
- MouseArea { anchors.fill: parent; onClicked: { page.focus = true } }
-}
-\endcode
-\endtable
+application. We still set one of the widgets as focused by default.
+Now, clicking either MyClickableWidget gives it focus and the other widget
+loses the focus.
-\image declarative-qmlfocus3.png
+The code that imports and creates two MyClickableWidget instances:
+\snippet doc/src/snippets/declarative/focus/clickablewidget.qml clickable window
+
+The MyClickableWidget code:
+\snippet doc/src/snippets/declarative/focus/myclickablewidget.qml clickable in focusscope
-When a QML item explicitly relinquishes focus (by setting its
-\c {Item::focus} property to false while it has \e {active focus}), the system
-does not automatically select another element to receive focus. That is, it
-is possible for there to be no currently \e {active focus}.
+\image declarative-qmlfocus4.png
-See the \l{declarative/keyinteraction/focus}{Keyboard Focus example} for a
+When a QML \l Item explicitly relinquishes focus (by setting its
+\c focus property to \c false while it has active focus), the
+system does not automatically select another element to receive focus. That is,
+it is possible for there to be no currently active focus.
+
+See the \l{declarative/keyinteraction/focus}{Keyboard Focus example} for a
demonstration of moving keyboard focus between multiple areas using FocusScope
elements.
\section1 Advanced uses of Focus Scopes
-Focus scopes allow focus to allocation to be easily partitioned. Several
+Focus scopes allow focus to allocation to be easily partitioned. Several
QML items use it to this effect.
-\l ListView, for example, is itself a focus scope. Generally this isn't
+\l ListView, for example, is itself a focus scope. Generally this isn't
noticeable as \l ListView doesn't usually have manually added visual children.
By being a focus scope, \l ListView can focus the current list item without
-worrying about how that will effect the rest of the application. This allows
-the current item delegate to react to key presses.
+worrying about how that will effect the rest of the application. This allows the
+current item delegate to react to key presses.
-This contrived example shows how this works. Pressing the \c Return key will
+This contrived example shows how this works. Pressing the \c Return key will
print the name of the current list item.
-\table
-\row
-\o \snippet doc/src/snippets/declarative/focusscopes.qml 0
-\o \image declarative-qmlfocus4.png
-\endtable
+\snippet doc/src/snippets/declarative/focus/advancedFocus.qml FocusScope delegate
+
+\image declarative-qmlfocus5.png
-While the example is simple, there's a lot going on behind the scenes. Whenever
+While the example is simple, there are a lot going on behind the scenes. Whenever
the current item changes, the \l ListView sets the delegate's \c {Item::focus}
-property. As the \l ListView is a \e {focus scope}, this doesn't effect the
-rest of the application. However, if the \l ListView itself has
-\e {active focus} this causes the delegate itself to receive \e {active focus}.
-In this example, the root element of the delegate is also a \e {focus scope},
-which in turn gives \e {active focus} to the \c {Text} element that
-actually performs the work of handling the \e {Return} key.
+property. As the \l ListView is a focus scope, this doesn't affect the
+rest of the application. However, if the \l ListView itself has
+active focus this causes the delegate itself to receive active focus.
+In this example, the root element of the delegate is also a focus scope,
+which in turn gives active focus to the \c {Text} element that actually performs
+the work of handling the \c {Return} key.
All of the QML view classes, such as \l PathView and \l GridView, behave
in a similar manner to allow key handling in their respective delegates.
diff --git a/doc/src/declarative/integrating.qdoc b/doc/src/declarative/integrating.qdoc
index 682f792d82..7028585597 100644
--- a/doc/src/declarative/integrating.qdoc
+++ b/doc/src/declarative/integrating.qdoc
@@ -47,7 +47,7 @@ qmlView->setSource(QUrl::fromLocalFile("myqml.qml"));
QWidget *widget = myExistingWidget();
QVBoxLayout *layout = new QVBoxLayout(widget);
-widget->addWidget(qmlView);
+layout->addWidget(qmlView);
\endcode
The one drawback to this approach is that QDeclarativeView is slower to initialize
diff --git a/doc/src/declarative/javascriptblocks.qdoc b/doc/src/declarative/javascriptblocks.qdoc
index b6fad5b780..16d0633620 100644
--- a/doc/src/declarative/javascriptblocks.qdoc
+++ b/doc/src/declarative/javascriptblocks.qdoc
@@ -207,6 +207,25 @@ changes.
See \l {Property Binding} for more information.
+\section1 Receiving QML Signals in JavaScript
+
+To receive a QML signal, use the signal's \c connect() method to connect it to a JavaScript
+function.
+
+For example, the following code connects the MouseArea \c clicked signal to the \c jsFunction()
+in \c script.js:
+
+\table
+\row
+\o \snippet doc/src/snippets/declarative/integrating-javascript/connectjs.qml 0
+\o \snippet doc/src/snippets/declarative/integrating-javascript/script.js 0
+\endtable
+
+The \c jsFunction() will now be called whenever MouseArea's \c clicked signal is emitted.
+
+See \l {Connecting signals to methods and other signals} for more information.
+
+
\section1 QML JavaScript Restrictions
QML executes standard JavaScript code, with the following restrictions:
diff --git a/doc/src/declarative/modules.qdoc b/doc/src/declarative/modules.qdoc
index 011eb63d5b..2a2e4ff2df 100644
--- a/doc/src/declarative/modules.qdoc
+++ b/doc/src/declarative/modules.qdoc
@@ -31,14 +31,14 @@
\section1 QML Modules
-A module is a set of QML content files that can be imported as a unit into a QML
+A module is a set of QML content files that can be imported as a unit into a QML
application. Modules can be used to organize QML content into independent units,
-and they can use a versioning mechanism that allows for independent
+and they can use a versioning mechanism that allows for independent
upgradability of the modules.
While QML component files within the same directory are automatically accessible
-within the global namespace, components defined elsewhere must be imported
-explicitly using the \c import statement to import them as modules. For
+within the global namespace, components defined elsewhere must be imported
+explicitly using the \c import statement to import them as modules. For
example, an \c import statement is required to use:
\list
@@ -54,13 +54,13 @@ This can be seen in the snippet commonly found at the top of QML files:
\qml
import QtQuick 1.0
\endqml
-
-This imports version 4.7 of the "Qt" module into the global namespace. (The QML
+
+This imports version 1.0 of the "QtQuick" module into the global namespace. (The QML
library itself must be imported to use any of the \l {QML Elements}, as they
are not included in the global namespace by default.)
-The \c Qt module is an \e installed module; it is found in the
-\l{The QML import path}{import path}. There are two types of QML modules:
+The \c Qt module is an \e installed module; it is found in the
+\l{The QML import path}{import path}. There are two types of QML modules:
location modules (defined by a URL) and installed modules (defined by a URI).
@@ -87,8 +87,8 @@ directory using a relative or absolute path, like this:
MyQMLProject
|- MyComponents
|- Slider.qml
- |- CheckBox.qml
- |- Main
+ |- CheckBox.qml
+ |- Main
|- application.qml
\endcode
@@ -112,7 +112,7 @@ be imported like this:
Remote location modules must have a \l{Writing a qmldir file}{qmldir file} in the
same directory to specify which QML files should be made available. See the
-\l {#qmldirexample}{example} below. The qmldir file is optional for modules on
+\l {#qmldirexample}{example} below. The qmldir file is optional for modules on
the local filesystem.
@@ -121,8 +121,8 @@ the local filesystem.
Installed modules are modules that are installed on the
-local filesystem within the QML import path, or modules defined in C++
-application code. When importing an installed module, an un-quoted URI is
+local filesystem within the QML import path, or modules defined in C++
+application code. When importing an installed module, an un-quoted URI is
used, with a mandatory version number:
\code
@@ -131,7 +131,7 @@ used, with a mandatory version number:
\endcode
Installed modules that are installed into the import path or created
-as a \l{QDeclarativeExtensionPlugin}{QML C++ plugin} must define a
+as a \l{QDeclarativeExtensionPlugin}{QML C++ plugin} must define a
\l{Writing a qmldir file}{qmldir file}.
@@ -142,7 +142,7 @@ The default import path includes:
\list
\o The directory of the current file
-\o The location specified by QLibraryInfo::ImportsPath
+\o The location specified by QLibraryInfo::ImportsPath
\o Paths specified by the \c QML_IMPORT_PATH environment variable
\endlist
@@ -153,10 +153,10 @@ When running the \l {QML Viewer}, use the \c -I option to add paths to the impor
\section2 Creating installed modules in C++
-C++ applications can dynamically define installed modules using
-qmlRegisterType().
+C++ applications can dynamically define installed modules using
+qmlRegisterType().
-For \l{QDeclarativeExtensionPlugin}{QML C++ plugins}, the
+For \l{QDeclarativeExtensionPlugin}{QML C++ plugins}, the
module URI is automatically passed to QDeclarativeExtensionPlugin::registerTypes().
The QDeclarativeExtensionPlugin documentation shows how to use this URI
to call qmlRegisterType() to enable the plugin library to be built as
@@ -167,7 +167,7 @@ in QML, like this:
import com.nokia.TimeExample 1.0
\endcode
-A \l{QDeclarativeExtensionPlugin}{QML C++ plugin} also requires a
+A \l{QDeclarativeExtensionPlugin}{QML C++ plugin} also requires a
\l{Writing a qmldir file}{qmldir file} to make it available to the
QML engine.
@@ -190,9 +190,9 @@ Types from these modules can then only be used when qualified by the namespace:
\qml
QtLibrary.Rectangle { ... }
-
+
MyComponents.Slider { ... }
-
+
MyModule.SomeComponent { ... }
\endqml
@@ -209,7 +209,7 @@ JavaScript files must always be imported with a named import:
\qml
import "somescript.js" as MyScript
-
+
Item {
//...
Component.onCompleted: MyScript.doSomething()
@@ -220,8 +220,8 @@ JavaScript files must always be imported with a named import:
\section1 Writing a qmldir file
-A \c qmldir file is a metadata file for a module that maps all type names in
-the module to versioned QML files. It is required for installed modules, and
+A \c qmldir file is a metadata file for a module that maps all type names in
+the module to versioned QML files. It is required for installed modules, and
location modules that are loaded from a network source.
It is defined by a plain text file named "qmldir" that contains one or more lines of the form:
@@ -237,7 +237,7 @@ plugin <Name> [<Path>]
\bold {<TypeName> [<InitialVersion>] <File>} lines are used to add QML files as types.
<TypeName> is the type being made available, the optional <InitialVersion> is a version
-number, and <File> is the (relative) file name of the QML file defining the type.
+number, and <File> is the (relative) file name of the QML file defining the type.
Installed files do not need to import the module of which they are a part, as they can refer
to the other QML files in the module as relative (local) files, but
@@ -264,10 +264,10 @@ provide those identifiers.
\bold {plugin <Name> [<Path>]} lines are used to add \l{QDeclarativeExtensionPlugin}{QML C++ plugins} to the module. <Name> is the name of the library. It is usually not the same as the file name
of the plugin binary, which is platform dependent; e.g. the library \c MyAppTypes would produce
-\c libMyAppTypes.so on Linux and \c MyAppTypes.dll on Windows.
+\c libMyAppTypes.so on Linux and \c MyAppTypes.dll on Windows.
<Path> is an optional argument specifying either an absolute path to the directory containing the
-plugin file, or a relative path from the directory containing the \c qmldir file to the directory
+plugin file, or a relative path from the directory containing the \c qmldir file to the directory
containing the plugin file. By default the engine searches for the plugin library in the directory that contains the \c qmldir
file. The plugin search path can be queried with QDeclarativeEngine::pluginPathList() and modified using QDeclarativeEngine::addPluginPath(). When running the \l {QML Viewer}, use the \c -P option to add paths to the plugin search path.
@@ -275,7 +275,7 @@ file. The plugin search path can be queried with QDeclarativeEngine::pluginPathL
\target qmldirexample
\section2 Example
-If the components in the \c MyComponents directory from the
+If the components in the \c MyComponents directory from the
\l{Location Modules}{earlier example} were to be made available as a network resource,
the directory would need to contain a \c qmldir file similar to this:
@@ -284,7 +284,7 @@ ComponentA 1.0 ComponentA.qml
ComponentB 1.0 ComponentB.qml
\endcode
-The \c MyComponents directory could then be imported as a module using:
+The \c MyComponents directory could then be imported as a module using:
\code
import "http://the-server-name.com/MyComponents"
@@ -298,15 +298,15 @@ a later version is used, as the \c qmldir file specifies that these elements
are only available in the 1.0 version.
-For examples of \c qmldir files for plugins, see the
-\l {declarative/cppextensions/plugins}{Plugins} example and
+For examples of \c qmldir files for plugins, see the
+\l {declarative/cppextensions/plugins}{Plugins} example and
\l {Tutorial: Writing QML extensions with C++}.
\section1 Debugging
The \c QML_IMPORT_TRACE environment variable can be useful for debugging
-when there are problems with finding and loading modules. See
+when there are problems with finding and loading modules. See
\l{Debugging module imports} for more information.
diff --git a/doc/src/declarative/pics/qml-extending-types.png b/doc/src/declarative/pics/qml-extending-types.png
new file mode 100644
index 0000000000..6990d7c190
--- /dev/null
+++ b/doc/src/declarative/pics/qml-extending-types.png
Binary files differ
diff --git a/doc/src/declarative/qdeclarativeintro.qdoc b/doc/src/declarative/qdeclarativeintro.qdoc
index 1d807e3dd7..4e41fda22a 100644
--- a/doc/src/declarative/qdeclarativeintro.qdoc
+++ b/doc/src/declarative/qdeclarativeintro.qdoc
@@ -186,7 +186,7 @@ Item {
\section3 The \c id property
Each object can be given a special unique property called an \e id. No other object within the
-same \l{QML Documents}{QML document} can have the same \c id value. Assigning an id enables the object
+same QML component (see \l{QML Documents}) can have the same \c id value. Assigning an id enables the object
to be referred to by other objects and scripts.
The first Rectangle element below has an \e id, "myRect". The second Rectangle element defines its
@@ -233,6 +233,10 @@ Image {
}
\endcode
+Items in the list can be accessed by index. See the \l{list}{list type} documentation
+for more details about list properties and their available operations.
+
+
\section2 Default properties
Each object type can specify one of its list or object properties as its default property.
diff --git a/doc/src/declarative/qml-intro.qdoc b/doc/src/declarative/qml-intro.qdoc
index f891e01650..e02ce8ff65 100644
--- a/doc/src/declarative/qml-intro.qdoc
+++ b/doc/src/declarative/qml-intro.qdoc
@@ -29,7 +29,7 @@
/*!
\page qml-intro.html
-\title Beginning Qt Quick
+\title Intro to Qt Quick
\section1 Overview
diff --git a/doc/src/declarative/qmlinuse.qdoc b/doc/src/declarative/qmlinuse.qdoc
new file mode 100644
index 0000000000..1127b4cb0c
--- /dev/null
+++ b/doc/src/declarative/qmlinuse.qdoc
@@ -0,0 +1,499 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the documentation of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:FDL$
+** 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 Free Documentation License
+** Alternatively, this file may be used under the terms of the GNU Free
+** Documentation License version 1.3 as published by the Free Software
+** Foundation and appearing in the file included in the packaging of this
+** file.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+/*!
+\page qmlinuse.html
+\title Using QML elements
+
+\raw HTML
+ <div class="item group">
+ <div class="secondaryx">
+ <div class="toc">
+ <h3>
+ <a name="toc">QML Elements</a></h3>
+ <ul>
+ <li class="level1"><a href="#basicElements">Basic QML Elements</a></li>
+ <li class="level1"><a href="#visualElements">QML Visual Elements</a></li>
+ <li class="level1"><a href="#AnimAndTrans">QML Animation and Transition Elements</a></li>
+ <li class="level1"><a href="#interactElement">Basic QML Interaction Elements</a></li>
+ <li class="level1"><a href="#eventElements">QML Event Elements</a></li>
+ <li class="level1"><a href="#Position">QML Positioning Elements</a></li>
+ <li class="level1"><a href="#stateElement">QML State Elements</a></li>
+ <li class="level1"><a href="#transformElement">QML Transform Elements</a></li>
+ <li class="level1"><a href="#utilityElement">QML Utility Elements</a></li>
+ <li class="level1"><a href="#modelView">Models and View Elements</a></li>
+ <li class="level1"><a href="#paths">Paths</a></li>
+ <li class="level1"><a href="#ParticleElement">Particle Elements</a></li>
+ <li class="level1"><a href="#bridge">Bridge Elements</a></li>
+ </ul>
+ </div>
+ </div>
+ <div class="primary">
+ <h1>
+ Groups Of Related QML Elements</h1>
+ <p>
+ QML Elements are grouped by their respective functionalities. Certain elements are
+ suited for building complex components while other elements strictly dictate appearances
+ and color.</p>
+ <div class="cols two group unclear">
+ <div class="col first">
+ <p>
+ <i>add something about elements in use in general</i></p>
+ </div>
+ <div class="col">
+ <img src="images/quick_screens.png" />
+ </div>
+ </div>
+ </div>
+ </div>
+ <!-- tech domains start -->
+ <div class="item group">
+ <hr>
+ <div class="secondary">
+ <div class="box">
+ <!-- video box -->
+ <h3>
+ image heading</h3>
+ <img src="" />
+ <p>
+ img descr.</p>
+ </div>
+ <!-- video box end -->
+ </div>
+ <div class="primary">
+ <h2><a name="basicElements"> Basic QML Elements</a></h2>
+ <p>
+ Basic elements can be extended to form more complex elements.</p>
+ <b>Elements:</b>
+ <ul>
+ <li><a href="qml-item.html">Item Element</a>
+ - The Item is the most basic of all visual items in QML. Many visual elements inherit
+ properties from the Item element.</li>
+ <li><a href="qml-component.html">Component Element</a>
+ - The Component element encapsulates a QML component definition.</li>
+ </ul>
+ </div>
+ </div>
+ <!-- next -->
+ <div class="item group">
+ <hr>
+ <div class="secondary">
+ <div class="box">
+ <!-- video box -->
+ <h3>
+ image heading</h3>
+ <img src="" />
+ <p>
+ img descr.</p>
+ </div>
+ <!-- video box end -->
+ </div>
+ <div class="primary">
+ <h2><a name="visualElements">QML Visual Elements</a></h2>
+ <p>
+ Visual elements offer various interactive and graphical functionalities. Visual
+ elements can directly set properties that dictate appearances.</p>
+ <b>Elements:</b>
+ <ul>
+ <li><a href="qml-borderimage.html">BorderImage
+ Element</a> - The BorderImage element provides an image that can be used as a border.</li>
+ <li><a href="qml-gradient.html">Gradient Element</a>
+ - The Gradient item defines a gradient fill.</li>
+ <li><a href="qml-gradientstop.html">GradientStop
+ Element</a> - The GradientStop item defines the color at a position in a Gradient.</li>
+ <li><a href="qml-image.html">Image Element</a>
+ - The Image element displays an image from a source.</li>
+ <li><a href="qml-rectangle.html">Rectangle Element</a>
+ - The Rectangle item provides a filled rectangle.</li>
+ <li><a href="qml-text.html">Text Element</a>
+ - The Text item allows the addition of formatted text to a scene.</li>
+ <li><a href="qml-textedit.html">TextEdit Element</a>
+ - The TextEdit item displays multiple lines of editable formatted text.</li>
+ <li><a href="qml-textinput.html">TextInput Element</a>
+ - The TextInput item displays an editable line of text.</li>
+ </ul>
+ </div>
+ </div>
+ <!-- next -->
+ <div class="item group">
+ <hr>
+ <div class="secondary">
+ <div class="box">
+ <!-- video box -->
+ <h3>
+ image heading</h3>
+ <img src="" />
+ <p>
+ img descr.</p>
+ </div>
+ <!-- video box end -->
+ </div>
+ <div class="primary">
+ <h2><a name="AnimAndTrans">QML Animation and Transition Elements</a></h2>
+ <p>
+ Animation and transition elements control animation behaviors. Animations can run
+ in parallel or in series for different value types.
+ </p>
+ <b>Elements:</b>
+ <ul>
+ <li><a href="qml-anchoranimation.html">AnchorAnimation Element</a> -
+ The AnchorAnimation element animates changes in anchor values.</li>
+ <li><a href="qml-animation.html">Animation Element</a> - The Animation
+ element is the base of all QML animations.</li>
+ <li><a href="qml-behavior.html">Behavior Element</a> - The Behavior element allows you to specify a default animation for a property change.</li>
+ <li><a href="qml-coloranimation.html">ColorAnimation Element</a> - The ColorAnimation element animates changes in color values.</li>
+ <li><a href="qml-numberanimation.html">NumberAnimation Element</a> - The NumberAnimation element animates changes in qreal-type values.</li>
+ <li><a href="qml-parallelanimation.html">ParallelAnimation Element</a> - The ParallelAnimation element allows animations to be run in parallel.</li>
+ <li><a href="qml-parentanimation.html">ParentAnimation Element</a> - The ParentAnimation element animates changes in parent values.</li>
+ <li><a href="qml-pauseanimation.html">PauseAnimation Element</a> - The PauseAnimation element provides a pause during an animation.</li>
+ <li><a href="qml-propertyaction.html">PropertyAction Element</a> - The PropertyAction element allows immediate property changes during animation.</li>
+ <li><a href="qml-propertyanimation.html">PropertyAnimation Element</a> - The PropertyAnimation element animates changes in property values.</li>
+ <li><a href="qml-rotationanimation.html">RotationAnimation Element</a> - The RotationAnimation element animates changes in rotational values.</li>
+ <li><a href="qml-scriptaction.html">ScriptAction Element</a> - The ScriptAction element allows scripts to be run during an animation.</li>
+ <li><a href="qml-sequentialanimation.html">SequentialAnimation Element</a> - The SequentialAnimation element allows animations to be run sequentially.</li>
+ <li><a href="qml-smoothedanimation.html">SmoothedAnimation Element</a> - The SmoothedAnimation element allows a property to smoothly track a value.</li>
+ <li><a href="qml-springanimation.html">SpringAnimation Element</a> - The SpringAnimation element allows a property to track a value in a spring-like
+ motion.</li>
+ <li><a href="qml-transition.html">Transition Element</a> - The Transition element defines animated transitions that occur on state changes.</li>
+ <li><a href="qml-vector3danimation.html">Vector3dAnimation Element</a> - The Vector3dAnimation element animates changes in QVector3d values.</li>
+ </ul>
+ </div>
+ </div>
+ <!-- next -->
+ <div class="item group">
+ <hr>
+ <div class="secondary">
+ <div class="box">
+ <!-- video box -->
+ <h3>
+ image heading</h3>
+ <img src="" />
+ <p>
+ img descr.</p>
+ </div>
+ <!-- video box end -->
+ </div>
+ <div class="primary">
+ <h2><a name="interactElement">QML Interaction Elements</h2></a>
+ <p>
+ These elements define basic interactions such as touch movements and focus management.</p>
+ <b>Elements:</b>
+ <ul>
+ <li><a href="qml-flickable.html">Flickable Element</a> - The Flickable item provides a surface that can be "flicked".</li>
+ <li><a href="qml-flipable.html">Flipable Element</a> - The Flipable item provides a surface that can be flipped or reflected.</li>
+ <li><a href="qml-focuspanel.html">FocusPanel Element</a> - The FocusPanel item explicitly creates a focus panel.</li>
+ <li><a href="qml-focusscope.html">FocusScope Element</a> - The FocusScope object explicitly creates a focus scope for focus management.</li>
+ <li><a href="qml-gesturearea.html">GestureArea Element</a> - The GestureArea item enables simple gesture handling.</li>
+ <li><a href="qml-keynavigation.html">KeyNavigation Element</a> - The KeyNavigation attached property supports key navigation by arrow keys.</li>
+ <li><a href="qml-keys.html">Keys Element</a> - The Keys attached property provides key handling to Items.</li>
+ <li><a href="qml-mousearea.html">MouseArea Element</a> - The MouseArea item enables simple mouse handling.</li>
+ </ul>
+ </div>
+ </div>
+ <!-- next -->
+ <div class="item group">
+ <hr>
+ <div class="secondary">
+ <div class="box">
+ <!-- video box -->
+ <h3>
+ image heading</h3>
+ <img src="" />
+ <p>
+ img descr.</p>
+ </div>
+ <!-- video box end -->
+ </div>
+ <div class="primary">
+ <h2><a name="eventElements">QML Event Elements</a></h2>
+ <p>
+ Key and mouse events information are provided in these event elements.</p>
+ <b>Elements:</b>
+ <ul>
+ <li><a href="qml-keyevent.html">KeyEvent Element</a> - The KeyEvent
+ object provides information about a key event.</li>
+ <li><a href="qml-mouseevent.html">MouseEvent Element</a> - The MouseEvent
+ object provides information about a mouse event.</li>
+ </ul>
+ </div>
+ </div>
+ <!-- next -->
+ <div class="item group">
+ <hr>
+ <div class="secondary">
+ <div class="box">
+ <!-- video box -->
+ <h3>
+ image heading</h3>
+ <img src="" />
+ <p>
+ img descr.</p>
+ </div>
+ <!-- video box end -->
+ </div>
+ <div class="primary">
+ <h2><a name="Position">QML Positioning Elements</a></h2>
+ <p>
+ Using positioning elements, layouts can be defined and their children accessed through
+ an index.</p>
+ <b>Elements:</b>
+ <ul>
+ <li><a href="qml-column.html">Column Element</a> - The Column
+ item arranges its children vertically.</li>
+ <li><a href="qml-flow.html">Flow Element</a> - The Flow item
+ arranges its children side by side, wrapping as necessary.</li>
+ <li><a href="qml-grid.html">Grid Element</a> - The Grid item
+ positions its children in a grid.</li>
+ <li><a href="qml-row.html">Row Element</a> - The Row item
+ arranges its children horizontally.</li>
+ <li><a href="qml-repeater.html">Repeater Element</a> - The Repeater element allows you to repeat an Item-based component using a model.</li>
+ </ul>
+ </div>
+ </div>
+ <!-- next -->
+ <div class="item group">
+ <hr>
+ <div class="secondary">
+ <div class="box">
+ <!-- video box -->
+ <h3>
+ image heading</h3>
+ <img src="" />
+ <p>
+ img descr.</p>
+ </div>
+ <!-- video box end -->
+ </div>
+ <div class="primary">
+
+ <h2><a name="stateElement">QML State Elements</a></h2>
+ <p>
+ States and groups of states are formed using state elements.</p>
+ <b>Elements:</b>
+ <ul>
+ <li><a href="qml-anchorchanges.html">AnchorChanges Element</a> - The AnchorChanges element allows you to change the anchors of an item in a state.</li>
+ <li><a href="qml-parentchange.html">ParentChange Element</a> - The ParentChange element allows you to reparent an Item in a state change.</li>
+ <li><a href="qml-propertychanges.html">PropertyChanges Element</a> - The PropertyChanges element describes new property bindings or values for a state.</li>
+ <li><a href="qml-state.html">State Element</a> - The State
+ element defines configurations of objects and properties.</li>
+ <li><a href="qml-statechangescript.html">StateChangeScript Element</a> - The StateChangeScript element allows you to run a script in a state.</li>
+ <li><a href="qml-stategroup.html">StateGroup Element</a> - The StateGroup element provides state support for non-Item elements.</li>
+ </ul>
+ </div>
+ </div>
+ <!-- next -->
+ <div class="item group">
+ <hr>
+ <div class="secondary">
+ <div class="box">
+ <!-- video box -->
+ <h3>
+ image heading</h3>
+ <img src="" />
+ <p>
+ img descr.</p>
+ </div>
+ <!-- video box end -->
+ </div>
+ <div class="primary">
+ <h2><a name="transformElement">QML Transform Elements</a></h2>
+ <p>
+ Advanced handling of transformations is controlled in transform elements.</p>
+ <b>Elements:</b>
+ <ul>
+ <li><a href="qml-rotation.html">Rotation Element</a> - The Rotation object provides a way to rotate an Item.</li>
+ <li><a href="qml-scale.html">Scale Element</a> - The Scale element provides a way to scale an Item.</li>
+ <li><a href="qml-transform.html">Transform Element</a> - The Transform element provide a way of building advanced transformations on Items.</li>
+ <li><a href="qml-translate.html">Translate Element</a> - The Translate object provides a way to move an Item without changing its x or y properties.</li>
+ </ul>
+ </div>
+ </div>
+ <!-- next -->
+ <div class="item group">
+ <hr>
+ <div class="secondary">
+ <div class="box">
+ <!-- video box -->
+ <h3>
+ image heading</h3>
+ <img src="" />
+ <p>
+ img descr.</p>
+ </div>
+ <!-- video box end -->
+ </div>
+ <div class="primary">
+ <h2><a name="utilityElement">QML Utility Elements</a></h2>
+ <p>
+ These elements handle assorted operations such as event timing, Qt enumerations,
+ and font loading.</p>
+ <b>Elements:</b>
+ <ul>
+ <li><a href="qml-binding.html">Binding Element</a> - The Binding element allows arbitrary property bindings to be created.</li>
+ <li><a href="qml-connections.html">Connections Element</a> - A Connections element describes generalized connections to signals.</li>
+ <li><a href="qml-doublevalidator.html">DoubleValidator Element</a> - Provides a validator for non-integer numbers.</li>
+ <li><a href="qml-fontloader.html">FontLoader Element</a> - The FontLoader element allows fonts to be loaded by name or URL.</li>
+ <li><a href="qml-intvalidator.html">IntValidator Element</a> - This element provides a validator for integer values.</li>
+ <li><a href="qml-layoutitem.html">LayoutItem Element</a> - The LayoutItem element allows declarative UI elements to be placed inside Qt's Graphics View layouts.</li>
+ <li><a href="qml-loader.html">Loader Element</a> - The Loader item allows dynamically loading an Item-based subtree from a URL or Component.</li>
+ <li><a href="qml-package.html">Package Element</a> - Package provides a bundle for shared contexts in multiple views.</li>
+ <li><a href="qml-qt.html">Qt Element</a> - The QML global Qt object provides useful enums and functions from Qt.</li>
+ <li><a href="qml-qtobject.html">QtObject Element</a> - The QtObject element is the most basic element in QML.</li>
+ <li><a href="qml-regexpvalidator.html">RegExpValidator Element</a> - This element provides a validator for regular expressions.</li>
+ <li><a href="qml-systempalette.html">SystemPalette Element</a> - The SystemPalette element provides access to the Qt palettes.</li>
+ <li><a href="qml-timer.html">Timer Element</a> - The Timer item triggers a handler at a specified interval.</li>
+ <li><a href="qml-workerscript.html">WorkerScript Element</a> - The WorkerScript element enables the use of threads in QML.</li>
+ </ul>
+ </div>
+ </div>
+ <!-- next -->
+ <div class="item group">
+ <hr>
+ <div class="secondary">
+ <div class="box">
+ <!-- video box -->
+ <h3>
+ image heading</h3>
+ <img src="" />
+ <p>
+ img descr.</p>
+ </div>
+ <!-- video box end -->
+ </div>
+ <div class="primary">
+ <h2><a name="modelView">Models and View Elements</a></h2>
+ <p>
+ Models and views are used to organize data and control their layouts using delegates.
+ Models dictate the data formation and views control the layouts of data in the model.</p>
+ <b>View Elements:</b>
+ <ul>
+ <li><a href="qml-gridview.html">GridView Element</a> - The GridView item provides a grid view of items provided by a model.</li>
+ <li><a href="qml-listview.html">ListView Element</a> - The ListView item provides a list view of items provided by a model.</li>
+ <li><a href="qml-pathview.html">PathView Element</a> - The PathView element lays out model-provided items on a path.</li>
+ <li><a href="qml-webview.html">WebView Element</a> - The WebView item allows you to add Web content to a canvas.</li>
+ </ul>
+ <b>Model Elements:</b>
+ <ul>
+ <li><a href="qml-folderlistmodel.html">FolderListModel Element</a> - The FolderListModel provides a model of the contents of a file system folder.</li>
+ <li><a href="qml-listelement.html">ListElement Element</a> - A ListElement defines a data item in a ListModel.</li>
+ <li><a href="qml-listmodel.html">ListModel Element</a> - The ListModel element defines a free-form list data source.</li>
+ <li><a href="qml-visualdatamodel.html">VisualDataModel Element</a> - The VisualDataModel encapsulates a model and delegate.</li>
+ <li><a href="qml-visualitemmodel.html">VisualItemModel Element</a> - The VisualItemModel allows items to be provided to a view.</li>
+ <li><a href="qml-xmllistmodel.html">XmlListModel Element</a> - The XmlListModel element is used to specify a model using XPath expressions.</li>
+ <li><a href="qml-xmlrole.html">XmlRole Element</a> - The XmlRole element allows you to specify a role for an XmlListModel.</li>
+ </ul>
+ </div>
+ </div>
+ <!-- next -->
+ <div class="item group">
+ <hr>
+ <div class="secondary">
+ <div class="box">
+ <!-- video box -->
+ <h3>
+ image heading</h3>
+ <img src="" />
+ <p>
+ img descr.</p>
+ </div>
+ <!-- video box end -->
+ </div>
+ <div class="primary">
+ <h2><a name="paths">Paths</a></h2>
+ <p>
+ QML components can be arranged along paths. Path elements allow control over different
+ path types.</p>
+ <b>Elements:</b>
+ <ul>
+ <li><a href="qml-path.html">Path Element</a> - A Path object defines a path for use by PathView.</li>
+ <li><a href="qml-pathattribute.html">PathAttribute Element</a> - The PathAttribute allows setting an attribute at a given position in a Path.</li>
+ <li><a href="qml-pathcubic.html">PathCubic Element</a> - The PathCubic defines a cubic Bezier curve with two control points.</li>
+ <li><a href="qml-pathelement.html">PathElement Element</a> - PathElement is the base path type.</li>
+ <li><a href="qml-pathline.html">PathLine Element</a> - The PathLine defines a straight line.</li>
+ <li><a href="qml-pathpercent.html">PathPercent Element</a> - The PathPercent manipulates the way a path is interpreted.</li>
+ <li><a href="qml-pathquad.html">PathQuad Element</a> - The PathQuad defines a quadratic Bezier curve with a control point.</li>
+ </ul>
+ </div>
+ </div>
+ <!-- next -->
+ <div class="item group">
+ <hr>
+ <div class="secondary">
+ <div class="box">
+ <!-- video box -->
+ <h3>
+ image heading</h3>
+ <img src="" />
+ <p>
+ img descr.</p>
+ </div>
+ <!-- video box end -->
+ </div>
+ <div class="primary">
+ <h2><a name="ParticleElement">Particle Elements</a></h2>
+ <p>
+ Particle effects are declared and controlled using particle elements.</p>
+ <b>Elements:</b>
+ <ul>
+ <li><a href="qml-particlemotiongravity.html">ParticleMotionGravity Element</a> - The ParticleMotionGravity object moves particles towards a point.</li>
+ <li><a href="qml-particlemotionlinear.html">ParticleMotionLinear Element</a> - The ParticleMotionLinear object moves particles linearly.</li>
+ <li><a href="qml-particlemotionwander.html">ParticleMotionWander Element</a> - The ParticleMotionWander object moves particles in a somewhat random fashion.</li>
+ <li><a href="qml-particles.html">Particles Element</a> - The Particles object generates and moves particles.</li>
+ </ul>
+ </div>
+ </div>
+ <!-- next -->
+ <div class="item group">
+ <hr>
+ <div class="secondary">
+ <div class="box">
+ <!-- video box -->
+ <h3>
+ image heading</h3>
+ <img src="" />
+ <p>
+ img descr.</p>
+ </div>
+ <!-- video box end -->
+ </div>
+ <div class="primary">
+ <h2><a name="bridge">Bridge Elements</a></h2>
+ <p>
+ Bridge elements allow direct communication between C++ and QML entities.</p>
+ <b>Elements:</b>
+ <ul>
+ <li><a href="qml-layoutitem.html">LayoutItem Element</a> - The LayoutItem element allows declarative UI elements to be placed inside Qt's Graphics View layouts.</li>
+ </ul>
+ </div>
+ </div>
+
+\endraw
+
+
+
+*/
+
diff --git a/doc/src/declarative/qtbinding.qdoc b/doc/src/declarative/qtbinding.qdoc
index 8a969eb8e5..71f41bcac2 100644
--- a/doc/src/declarative/qtbinding.qdoc
+++ b/doc/src/declarative/qtbinding.qdoc
@@ -31,7 +31,7 @@
\title Using QML in C++ Applications
QML is designed to be easily extensible from C++. The classes in the
-QtDeclarative module allow QML components to be loaded and manipulated from C++, and through
+Qt Declarative module allow QML components to be loaded and manipulated from C++, and through
Qt's \l{The Meta-Object System}{meta-object system}, QML and C++ objects can easily
communicate through Qt signals and slots. In addition, QML plugins can be written to create
reusable QML components for distribution.
@@ -41,20 +41,20 @@ You may want to mix QML and C++ for a number of reasons. For example:
\list
\o To use functionality defined in a C++ source (for example, when using a C++ Qt-based data model, or
calling functions in a third-party C++ library)
-\o To access functionality in the QtDeclarative module (for example, to dynamically generate
+\o To access functionality in the Qt Declarative module (for example, to dynamically generate
images using QDeclarativeImageProvider)
\o To write your own QML elements (whether for your applications, or for distribution to others)
\endlist
-To use the QtDeclarative module, you must include and link to the module appropriately, as shown on
+To use the Qt Declarative module, you must include and link to the module appropriately, as shown on
the \l {QtDeclarative}{module index page}. The \l {Qt Declarative UI Runtime} documentation
shows how to build a basic C++ application that uses this module.
\section1 Core module classes
-The QtDeclarative module provides a set of C++ APIs for extending your QML applications from C++ and
-embedding QML into C++ applications. There are several core classes in the QtDeclarative module
+The Qt Declarative module provides a set of C++ APIs for extending your QML applications from C++ and
+embedding QML into C++ applications. There are several core classes in the Qt Declarative module
that provide the essential capabilities for doing this. These are:
\list
@@ -230,7 +230,7 @@ Also see the QDeclarativeContext documentation for more information.
\section2 Defining new QML elements
-While new QML elements can be \l {Defining new Components}{defined in QML}, they can also be
+While new QML elements can be \l {Defining New Components}{defined in QML}, they can also be
defined by C++ classes; in fact, many of the core \l {QML Elements} are implemented through
C++ classes. When you create a QML object using one of these elements, you are simply creating an
instance of a QObject-based C++ class and setting its properties.
@@ -448,7 +448,8 @@ now be used from QML:
\snippet doc/src/snippets/declarative/qtbinding/enums/standalone.qml 0
The C++ type must be registered with QML to use its enums. If your C++ type is not instantiable, it
-can be registered using qmlRegisterUncreatableType().
+can be registered using qmlRegisterUncreatableType(). To be accessible from QML, the names of enum values
+must begin with a capital letter.
See the \l {Tutorial: Writing QML extensions with C++}{Writing QML extensions with C++} tutorial and
the \l {Extending QML in C++} reference documentation for more information.
@@ -520,7 +521,7 @@ a QColor-type property or to call a C++ function that requires a QColor paramete
\section1 Writing QML plugins
-The QtDeclarative module includes the QDeclarativeExtensionPlugin class, which is an abstract
+The Qt Declarative module includes the QDeclarativeExtensionPlugin class, which is an abstract
class for writing QML plugins. This allows QML extension types to be dynamically loaded into
QML applications.
diff --git a/doc/src/declarative/qtdeclarative.qdoc b/doc/src/declarative/qtdeclarative.qdoc
index 7ecdc53dc2..b0c6e06b75 100644
--- a/doc/src/declarative/qtdeclarative.qdoc
+++ b/doc/src/declarative/qtdeclarative.qdoc
@@ -27,7 +27,7 @@
/*!
\module QtDeclarative
- \title QtDeclarative Module
+ \title Qt Declarative Module
\ingroup modules
\brief The Qt Declarative module provides a declarative framework
@@ -57,6 +57,8 @@
\relates QDeclarativeEngine
Equivalent to \c Q_DECLARE_METATYPE(TYPE) and \c Q_DECLARE_METATYPE(QDeclarativeListProperty<TYPE>)
+
+ #include <QtDeclarative> to use this macro.
*/
/*!
@@ -68,6 +70,8 @@
Current the only supported type info is \c QML_HAS_ATTACHED_PROPERTIES which
declares that the \a Type supports \l {Attached Properties}.
+
+ #include <QtDeclarative> to use this macro.
*/
@@ -86,6 +90,10 @@
"com.mycompany.qmlcomponents":
\code
+ #include <QtDeclarative>
+
+ ...
+
qmlRegisterType<MySliderItem>("com.mycompany.qmlcomponents", 1, 0, "Slider");
\endcode
@@ -119,6 +127,8 @@
Returns the QML type id.
+ #include <QtDeclarative> to use this function.
+
\sa qmlRegisterTypeNotAvailable()
*/
@@ -154,6 +164,8 @@
Without this, a generic "Game is not a type" message would be given.
+ #include <QtDeclarative> to use this function.
+
\sa qmlRegisterUncreatableType()
*/
@@ -166,6 +178,8 @@
system. Instances of this type cannot be created from the QML
system.
+ #include <QtDeclarative> to use this function.
+
Returns the QML type id.
*/
@@ -176,5 +190,7 @@
This template function registers the C++ type in the QML system
under the name \a typeName.
+ #include <QtDeclarative> to use this function.
+
Returns the QML type id.
*/
diff --git a/doc/src/declarative/tutorial.qdoc b/doc/src/declarative/tutorial.qdoc
index 8467478a5e..d8139b4885 100644
--- a/doc/src/declarative/tutorial.qdoc
+++ b/doc/src/declarative/tutorial.qdoc
@@ -124,7 +124,7 @@ Our color picker is made of six cells with different colors.
To avoid writing the same code multiple times for each cell, we create a new \c Cell component.
A component provides a way of defining a new type that we can re-use in other QML files.
A QML component is like a black-box and interacts with the outside world through properties, signals and functions and is generally
-defined in its own QML file. (For more details, see \l {Defining new Components}).
+defined in its own QML file. (For more details, see \l {Defining New Components}).
The component's filename must always start with a capital letter.
Here is the QML code for \c Cell.qml:
@@ -144,7 +144,7 @@ An \l Item is the most basic visual element in QML and is often used as a contai
We declare a \c cellColor property. This property is accessible from \e outside our component, this allows us
to instantiate the cells with different colors.
-This property is just an alias to an existing property - the color of the rectangle that compose the cell (see \l{Adding new properties}).
+This property is just an alias to an existing property - the color of the rectangle that compose the cell (see \l{Adding Properties}).
\snippet examples/declarative/tutorials/helloworld/Cell.qml 5
diff --git a/doc/src/declarative/whatsnew.qdoc b/doc/src/declarative/whatsnew.qdoc
index f8d1d0e499..df0e999be8 100644
--- a/doc/src/declarative/whatsnew.qdoc
+++ b/doc/src/declarative/whatsnew.qdoc
@@ -7,11 +7,11 @@
** This file is part of the documentation of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:FDL$
-** Commercial Usage
-** Licensees holding valid Qt Commercial licenses may use this file in
-** accordance with the Qt Commercial License Agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in a
-** written agreement between you and Nokia.
+** 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 Free Documentation License
** Alternatively, this file may be used under the terms of the GNU Free
diff --git a/doc/src/development/qmake-manual.qdoc b/doc/src/development/qmake-manual.qdoc
index 6531d25d86..c0ed940882 100644
--- a/doc/src/development/qmake-manual.qdoc
+++ b/doc/src/development/qmake-manual.qdoc
@@ -1294,6 +1294,14 @@
test sections in generated bld.inf instead of their regular sections.
Note that this only affects automatically generated bld.inf content;
the content added via \c BLD_INF_RULES variable is not affected.
+ \row \o localize_deployment \o Makes \c lupdate tool add fields for
+ application captions and package file names into generated \c{.ts}
+ files. Qmake generates properly localized \c{.loc} and \c{.pkg} files
+ based on available translations. Translation file name bodies must
+ end with underscore and the language code for deployment localization
+ to work. E.g. \c{myapp_en.ts}.
+ \bold{Note:} All languages supported by Qt are not supported by Symbian,
+ so some \c{.ts} files may be ignored by qmake.
\endtable
These options have an effect on Linux/Unix platforms:
diff --git a/doc/src/development/qtestlib.qdoc b/doc/src/development/qtestlib.qdoc
index e53957f9c0..08fdfc627d 100644
--- a/doc/src/development/qtestlib.qdoc
+++ b/doc/src/development/qtestlib.qdoc
@@ -245,10 +245,10 @@
\endtable
In short, walltime is always available but requires many repetitions to
- get a useful result.
- Tick counters are usually available and can provide
- results with fewer repetitions, but can be susceptible to CPU frequency
- scaling issues.
+ get a useful result.
+ Tick counters are usually available and can provide
+ results with fewer repetitions, but can be susceptible to CPU frequency
+ scaling issues.
Valgrind provides exact results, but does not take
I/O waits into account, and is only available on a limited number of
platforms.
@@ -264,7 +264,7 @@
See the chapter 5 in the \l{QTestLib Tutorial} for more benchmarking examples.
\section1 Using QTestLib remotely on Windows CE
- \c cetest is a convenience application which helps the user to launch an
+ \c cetest is a convenience application which helps the user to launch an
application remotely on a Windows CE device or emulator.
It needs to be executed after the unit test has been successfully compiled.
@@ -717,15 +717,15 @@
\section1 Writing a Benchmark
To create a benchmark we extend a test function with a QBENCHMARK macro.
- A benchmark test function will then typically consist of setup code and
+ A benchmark test function will then typically consist of setup code and
a QBENCHMARK macro that contains the code to be measured. This test
function benchmarks QString::localeAwareCompare().
\snippet examples/qtestlib/tutorial5/benchmarking.cpp 0
- Setup can be done at the beginning of the function, the clock is not
+ Setup can be done at the beginning of the function, the clock is not
running at this point. The code inside the QBENCHMARK macro will be
- measured, and possibly repeated several times in order to get an
+ measured, and possibly repeated several times in order to get an
accurate measurement.
Several \l {testlib-benchmarking-measurement}{back-ends} are available
@@ -733,7 +733,7 @@
\section1 Data Functions
- Data functions are useful for creating benchmarks that compare
+ Data functions are useful for creating benchmarks that compare
multiple data inputs, for example locale aware compare against standard
compare.
@@ -743,20 +743,19 @@
\snippet examples/qtestlib/tutorial5/benchmarking.cpp 2
- The "if(useLocaleCompare)" switch is placed outside the QBENCHMARK
+ The "if(useLocaleCompare)" switch is placed outside the QBENCHMARK
macro to avoid measuring its overhead. Each benchmark test function
- can have one active QBENCHMARK macro.
+ can have one active QBENCHMARK macro.
\section1 External Tools
Tools for handling and visualizing test data are available as part of
- the qtestlib-tools project on the
- \l{http://labs.qt.nokia.com/}{http://labs.qt.nokia.com/}Qt Labs Web site.
+ the \l {qtestlib-tools} project in the \l{Qt Labs} web site.
These include a tool for comparing performance data obtained from test
runs and a utility to generate Web-based graphs of performance data.
- See the \l{qtestlib-tools Announcement} for more information on these
- tools and a simple graphing example.
+ See the \l{qtestlib-tools Announcement}{qtestlib-tools announcement}
+ for more information on these tools and a simple graphing example.
*/
diff --git a/doc/src/examples/qml-examples.qdoc b/doc/src/examples/qml-examples.qdoc
index ca24c6659d..0834527d04 100644
--- a/doc/src/examples/qml-examples.qdoc
+++ b/doc/src/examples/qml-examples.qdoc
@@ -663,7 +663,8 @@
\example declarative/ui-components/tabwidget
This example shows how to create a tab widget. It also demonstrates how
- \l {Setting default properties}{default properties} can be used to collect and
+ \l {Property aliases}{property aliases} and
+ \l {Default Properties}{default properties} can be used to collect and
assemble the child items declared within an \l Item.
\image qml-tabwidget-example.png
diff --git a/doc/src/external-resources.qdoc b/doc/src/external-resources.qdoc
index 8eeaeb1c09..9bc3b1c1ca 100644
--- a/doc/src/external-resources.qdoc
+++ b/doc/src/external-resources.qdoc
@@ -448,3 +448,8 @@
\externalpage https://developer.mozilla.org/en/JavaScript/About_JavaScript
\title About JavaScript
*/
+
+/*!
+ \externalpage http://www.libusb.org/
+ \title libusb
+*/
diff --git a/doc/src/frameworks-technologies/threads.qdoc b/doc/src/frameworks-technologies/threads.qdoc
index 3ef617ccd1..2a0cc1ac46 100644
--- a/doc/src/frameworks-technologies/threads.qdoc
+++ b/doc/src/frameworks-technologies/threads.qdoc
@@ -213,10 +213,10 @@
/*!
\page threads-reentrancy.html
\title Reentrancy and Thread-Safety
-
+
\keyword reentrant
\keyword thread-safe
-
+
\previouspage Synchronizing Threads
\contentspage Thread Support in Qt
\nextpage Threads and QObjects
@@ -243,6 +243,15 @@
from multiple threads, even if all the threads use the \e{same}
instance of the class.
+ \note Qt classes are only documented as \e{thread-safe} if they
+ are intended to be used by multiple threads. If a function is not
+ marked as thread-safe or reentrant, it should not be used from
+ different threads. If a class is not marked as thread-safe or
+ reentrant then a specific instance of that class should not be
+ accessed from different threads.
+
+ \section1 Reentrancy
+
C++ classes are often reentrant, simply because they only access
their own member data. Any thread can call a member function on an
instance of a reentrant class, as long as no other thread can call
@@ -268,6 +277,8 @@
end up overwriting each other, and the variable is incremented
only once!
+ \section1 Thread-Safety
+
Clearly, the access must be serialized: Thread A must perform
steps 1, 2, 3 without interruption (atomically) before thread B
can perform the same steps; or vice versa. An easy way to make
@@ -284,6 +295,8 @@
declared with the \c mutable qualifier because we need to lock
and unlock the mutex in \c value(), which is a const function.
+ \section1 Notes on Qt Classes
+
Many Qt classes are \e{reentrant}, but they are not made
\e{thread-safe}, because making them thread-safe would incur the
extra overhead of repeatedly locking and unlocking a QMutex. For
@@ -297,9 +310,6 @@
the thread-related classes (e.g. QMutex) and fundamental functions
(e.g. QCoreApplication::postEvent()).
- \note Qt Classes are only documented as \e{thread-safe} if they
- are intended to be used by multiple threads.
-
\note Terminology in the multithreading domain isn't entirely
standardized. POSIX uses definitions of reentrant and thread-safe
that are somewhat different for its C APIs. When using other
@@ -459,11 +469,10 @@
\list
- \o \l{Qt::AutoConnection}{Auto Connection} (default) The behavior
- is the same as the Direct Connection, if the emitter and
- receiver are in the same thread. The behavior is the same as
- the Queued Connection, if the emitter and receiver are in
- different threads.
+ \o \l{Qt::AutoConnection}{Auto Connection} (default) If the signal is
+ emitted in the thread which the receiving object has affinity then
+ the behavior is the same as the Direct Connection. Otherwise,
+ the behavior is the same as the Queued Connection."
\o \l{Qt::DirectConnection}{Direct Connection} The slot is invoked
immediately, when the signal is emitted. The slot is executed
diff --git a/doc/src/getting-started/gettingstartedqml.qdoc b/doc/src/getting-started/gettingstartedqml.qdoc
index 54fa098c63..e3977bb73b 100644
--- a/doc/src/getting-started/gettingstartedqml.qdoc
+++ b/doc/src/getting-started/gettingstartedqml.qdoc
@@ -42,7 +42,7 @@
installation instructions and requirements for different platforms.
Qt Quick includes a declarative language called
- \l{Introduction to the QML language}{QML}, the \l{QtDeclarative Module}, and
+ \l{Introduction to the QML language}{QML}, the \l{Qt Declarative Module}, and
\l{QML Viewer}.
\section1 QML to Build User Interfaces
@@ -148,7 +148,7 @@
\code
Rectangle {
- id:Button
+ id: button
...
property color buttonColor: "lightblue"
diff --git a/doc/src/getting-started/installation.qdoc b/doc/src/getting-started/installation.qdoc
index a68310c908..aa10aafe1f 100644
--- a/doc/src/getting-started/installation.qdoc
+++ b/doc/src/getting-started/installation.qdoc
@@ -684,7 +684,7 @@ Binary Package} document.
We hope you will enjoy using Qt.
*/
-/*! \page install-Symbian-linux.html
+/*! \page install-symbian-linux.html
\title Installing Qt for the Symbian platform using Linux (experimental)
\ingroup installation
\ingroup qtsymbian
diff --git a/doc/src/images/declarative-qmlfocus1.png b/doc/src/images/declarative-qmlfocus1.png
new file mode 100644
index 0000000000..317b34b1bf
--- /dev/null
+++ b/doc/src/images/declarative-qmlfocus1.png
Binary files differ
diff --git a/doc/src/images/declarative-qmlfocus2.png b/doc/src/images/declarative-qmlfocus2.png
new file mode 100644
index 0000000000..e3f96431b7
--- /dev/null
+++ b/doc/src/images/declarative-qmlfocus2.png
Binary files differ
diff --git a/doc/src/images/declarative-qmlfocus3.png b/doc/src/images/declarative-qmlfocus3.png
new file mode 100644
index 0000000000..a5897ce98f
--- /dev/null
+++ b/doc/src/images/declarative-qmlfocus3.png
Binary files differ
diff --git a/doc/src/images/declarative-qmlfocus4.png b/doc/src/images/declarative-qmlfocus4.png
new file mode 100644
index 0000000000..f2e64cdc33
--- /dev/null
+++ b/doc/src/images/declarative-qmlfocus4.png
Binary files differ
diff --git a/doc/src/images/declarative-qmlfocus5.png b/doc/src/images/declarative-qmlfocus5.png
new file mode 100644
index 0000000000..ec7307bd0b
--- /dev/null
+++ b/doc/src/images/declarative-qmlfocus5.png
Binary files differ
diff --git a/doc/src/network-programming/bearermanagement.qdoc b/doc/src/network-programming/bearermanagement.qdoc
index 98de5bf588..12da55b924 100644
--- a/doc/src/network-programming/bearermanagement.qdoc
+++ b/doc/src/network-programming/bearermanagement.qdoc
@@ -26,11 +26,11 @@
****************************************************************************/
/*!
- \page bearer-management.html
+\page bearer-management.html
- \title Bearer Management
- \ingroup qt-network
- \brief An API to control the system's connectivity state.
+\title Bearer Management
+\ingroup qt-network
+\brief An API to control the system's connectivity state.
Bearer Management controls the connectivity state of the system so that
the user can start or stop interfaces or roam transparently between
diff --git a/doc/src/platforms/emb-directfb-EmbLinux.qdoc b/doc/src/platforms/emb-directfb-EmbLinux.qdoc
index dbe6c14459..bcc06dc2c4 100644
--- a/doc/src/platforms/emb-directfb-EmbLinux.qdoc
+++ b/doc/src/platforms/emb-directfb-EmbLinux.qdoc
@@ -39,11 +39,11 @@ and generally chip vendors start out with the official version and
implement their own plugins to optimize the operations their hardware
supports.
-We recommend using Qt 4.6 with DirectFB. DirectFB support was introduced
-already into Qt for Embedded Linux as a labs project for Qt 4.3 and folded
+We recommend using Qt 4.6 or later with DirectFB. Support for DirectFB was
+introduced into Qt for Embedded Linux as a labs project for Qt 4.3 and folded
into Qt as a screen driver for Qt 4.4, but not supported fully. In Qt 4.5,
major changes were made to make it work with the optimized raster paint
-engine. And in Qt 4.6 these have been further improved.
+engine. These changes were further improved in Qt 4.6.
\tableofcontents
diff --git a/doc/src/platforms/emb-envvars.qdoc b/doc/src/platforms/emb-envvars.qdoc
index 1d109b4817..3f318ebfb0 100644
--- a/doc/src/platforms/emb-envvars.qdoc
+++ b/doc/src/platforms/emb-envvars.qdoc
@@ -112,7 +112,7 @@
device, e.g., \c /dev/mouse for mouse devices and \c /dev/ts for
touch panels.
- Multiple keyboard drivers can be specified in one go:
+ Multiple mouse drivers can be specified in one go:
\snippet doc/src/snippets/code/doc_src_emb-envvars.qdoc 3
diff --git a/doc/src/platforms/emb-pointer.qdoc b/doc/src/platforms/emb-pointer.qdoc
index 81e532f5a0..506e9e002a 100644
--- a/doc/src/platforms/emb-pointer.qdoc
+++ b/doc/src/platforms/emb-pointer.qdoc
@@ -105,7 +105,7 @@
{touch panels} in which case the driver must be specified
explicitly to determine which device to use.
- To manually specify which driver to use, set the QWS_MOUSE_PROTO
+ To manually specify which driver to use, set the \c QWS_MOUSE_PROTO
environment variable. For example (if the current shell is bash,
ksh, zsh or sh):
@@ -156,7 +156,7 @@
\snippet doc/src/snippets/code/doc_src_emb-pointer.qdoc 8
To make \l{Qt for Embedded Linux} explicitly choose the tslib mouse
- handler, set the QWS_MOUSE_PROTO environment variable as explained
+ handler, set the \c QWS_MOUSE_PROTO environment variable as explained
above.
\endtable
diff --git a/doc/src/platforms/platform-notes.qdoc b/doc/src/platforms/platform-notes.qdoc
index a7c05e2150..b7458679eb 100644
--- a/doc/src/platforms/platform-notes.qdoc
+++ b/doc/src/platforms/platform-notes.qdoc
@@ -734,18 +734,23 @@
\o \c PowerMgmt if QProcess::kill(...) or QProcess::terminate(...) is called.
\row \o QtCore
\o \c AllFiles when \l{http://developer.symbian.org/wiki/index.php/Capabilities_%28Symbian_Signed%29/AllFiles_Capability}{accessing specific areas.}
+ \row \o QtDeclarative
+ \o \c NetworkServices is automatically added for this module.
+ \row \o QtNetwork
+ \o \c NetworkServices is automatically added for this module.
\row \o QtNetwork
- \o \c NetworkServices is basically always required for this module.
\o \c ReadUserData is required to include all the phone's SSL certificates in the system's default CA certificate list
(for example those added by the user or stored in the SIM card),
without this capability only the CA certs built into the phone are used.
\row \o QtMultiMedia
\o \c UserEnvironment if QAudioInput is used.
+ \row \o QtWebkit
+ \o \c NetworkServices is automatically added for this module.
\endtable
- Note that some modules rely on other modules. If your application uses
- QtXmlPatterns, QtWebkit or QtScript it may still require \c NetworkServices
- as these modules rely on QtNetwork to go online.
+ \note Some modules rely on other modules. E.g. QtWebkit and QtDeclarative
+ depend on QtNetwork and therefore any application that
+ depends on these modules is also likely to need \c NetworkServices capability.
For more information see the documentation of the individual Qt classes. If
a class does not mention Symbian capabilities, it requires none.
diff --git a/doc/src/platforms/symbian-introduction.qdoc b/doc/src/platforms/symbian-introduction.qdoc
index 7bc530363a..cce2be3fad 100644
--- a/doc/src/platforms/symbian-introduction.qdoc
+++ b/doc/src/platforms/symbian-introduction.qdoc
@@ -144,8 +144,17 @@
Smart installer will attempt to download
missing dependencies in addition to
just installing the application.
+ Note: The application \c .sis contained in smart installer \c .sis
+ will be recreated and signed with same certificates as
+ smart installer \c .sis.
+ \row \o \c ok_installer_sis \o Otherwise similar to \c installer_sis target, except
+ the application sis will not be recreated. This is useful
+ when application \c .sis needs to be separately signed before
+ including it into smart installer \c .sis.
\row \o \c unsigned_installer_sis \o Create unsigned \l{Smart Installer}{smart installer}
\c .sis file for project.
+ Note: The application \c .sis contained in smart installer
+ \c .sis will also be unsigned.
\row \o \c stub_sis \o Create a stub sis to allow upgradability of projects
that are deployed in ROM
\endtable
@@ -222,6 +231,7 @@
\row \o -s \o Generates stub sis for ROM.
\row \o -n <name> \o Specifies the final sis name.
\row \o -g \o Treat gcce platform as armv5.
+ \row \o -d \o Skip automatic patching of the package when default certificate is used.
\endtable
Execute the \c{createpackage.pl} script without any
diff --git a/doc/src/qt-webpages.qdoc b/doc/src/qt-webpages.qdoc
index 05817df651..0a03157266 100644
--- a/doc/src/qt-webpages.qdoc
+++ b/doc/src/qt-webpages.qdoc
@@ -201,11 +201,6 @@
*/
/*!
- \externalpage http://labs.qt.nokia.com/gitweb?p=qtestlib-tools;a=summary
- \title qtestlib-tools
-*/
-
-/*!
\externalpage http://qt.nokia.com/products/library/modular-class-library#info_scripting
\title Qt Script for Applications (QSA)
*/
@@ -239,3 +234,13 @@
\externalpage http://get.qt.nokia.com/nokiasmartinstaller/
\title Smart Installer
*/
+
+/*!
+ \externalpage http://qt.gitorious.org/qt-labs/qtestlib-tools
+ \title qtestlib-tools
+*/
+
+/*!
+ \externalpage http://labs.qt.nokia.com
+ \title Qt Labs
+*/
diff --git a/doc/src/qt4-intro.qdoc b/doc/src/qt4-intro.qdoc
index 2384051b24..7325e27ce5 100644
--- a/doc/src/qt4-intro.qdoc
+++ b/doc/src/qt4-intro.qdoc
@@ -60,7 +60,53 @@
\section1 Recent Additions to Qt 4
- The following features have been added to Qt since the first release of Qt 4:
+ The following features have been added to Qt since the first release of Qt 4.
+
+ In Qt 4.7:
+ \list
+ \o Declarative UI Development with \l{Qt Quick}, technologies for creating
+ fluid, dynamic user interfaces.
+ \o Support for \l{Bearer Management}{network bearer management}, enabling
+ features such as control over network interfaces and support for roaming
+ between networks.
+ \o Feature and performance improvements in QtWebKit, including a new tiled
+ backing store, control over scroll bars used in frames and framesets,
+ accelerated compositing and \l{The QtWebKit Bridge}{support for hybrid
+ development}.
+ \o General performance improvements, including the use of "alien widgets"
+ on Mac OS X, the QStaticText class for optimized text rendering, a new
+ \l{QPainter::drawPixmapFragments()}{API for rendering pixmap fragments}
+ and an updated version of the JavaScriptCore engine for the QtScript
+ module with improved performance.
+ \endlist
+
+ In Qt 4.6:
+ \list
+ \o Support for \l{The Symbian platform - Introduction to Qt}{the Symbian Platform}
+ as a mainstream Qt platform, with integration into the S60 framework.
+ \o The \l{The Animation Framework}{animation framework} allows animations to be
+ created using both widgets and graphics items.
+ \o The \l{The State Machine Framework}{state machine framework} provides a robust
+ state chart implementation based on Harel statecharts and SCXML.
+ \o Support for \l{QTouchEvent}{touch input} and \l{Gestures Programming}{gestures}
+ enable developers to create intuitive user interfaces for touch-based devices.
+ \o A \l{QWebElement}{DOM access API} for QtWebKit provides a cleaner and safer way
+ to access elements and structures of Web pages without the use of JavaScript.
+ \o A collection of performance improvements, covering QGraphicsView, QPixmapCache,
+ QNetworkAccessManager, QContiguousCache class, hardware-accelerated rendering
+ support through \l{OpenVG Rendering in Qt}{OpenVG}, and the removal of Win9x
+ support.
+ \o A collection of \l{QGraphicsEffect}{graphics effects} make it easy to apply
+ and simple effects to graphics items and combine them to produce more complex
+ effects.
+ \o Support for XML schema validation in the QtXmlPatterns module covering
+ large parts of version 1.0 of the specification.
+ \o Qt3D enablers, including math primitives for \l{QMatrix4x4}{matrix multiplication},
+ \l{QVector3D}{vectors}, \l{QQuaternion}{quaternions} (client-side), and an API
+ for \l{QGLShader}{vertex and fragment shaders}, GLSL/ES.
+ \o \l{QtMultimedia Module}{Multimedia services} providing low-level access to the
+ system's audio system.
+ \endlist
In Qt 4.5:
\list
@@ -209,7 +255,7 @@
\row \o \l{Qt3Support} \o Qt 3 support classes
\row \o \l{QAxContainer} \o ActiveQt client extension
\row \o \l{QAxServer} \o ActiveQt server extension
- \row \o \l{QtHelp} \o Classes for integrating online documentation
+ \row \o \l{QtHelp} \o Classes for integrating online documentation
\row \o \l{QtDesigner} \o Classes for extending and embedding Qt Designer
\row \o \l{QtUiTools} \o Classes for dynamic GUI generation
\row \o \l{QtTest} \o Tool classes for unit testing
@@ -451,7 +497,7 @@
A list of other Qt 4 features can be found on the \bold{\l{What's
New in Qt 4}} page.
- \section1 Declarative UI development with Qt Quick
+ \section1 Declarative UI Development with Qt Quick
\image quick_screens.png
@@ -466,7 +512,7 @@
collaborate tightly and create animated and fluid user experiences,
using existing knowledge in script language and design.
- \i QtDeclarative is a C++ library that provides the underlying engine,
+ \i Qt Declarative is a C++ library that provides the underlying engine,
which translates the declarative description of the UI in QML into
items on a QGraphicsScene. The library also provides APIs to bind
custom C++ types and elements to QML, and to connect the QML UI with
@@ -508,7 +554,7 @@
For hybrid QtWebKit and C++ projects, Qt 4.7 has added support for
transporting \l{QPixmap}s between Qt C++ and WebKit. We have also
- improved the documentation hybrid development. Read more here:
+ improved the documentation for hybrid development. Read more here:
\l{The QtWebKit Bridge}.
\section1 QtWebKit Performance Benchmarks
@@ -680,7 +726,7 @@
See the QTouchEvent class documentation for more information on touch
input and QGestureEvent for gestures.
- \section1 DOM access API
+ \section1 DOM Access API
Web pages and XML both have very complex document object models.
The W3C selector API provides a very simple way to access and
@@ -699,7 +745,7 @@
\list
\o Rewritten the QGraphicsView rendering algorithm.
- \o Made QPixmapCache support efficient Key datastructure.
+ \o Made QPixmapCache support efficient Key data structure.
\o Reduced overhead in QNetworkAccessManager.
\o Added the QContiguousCache class, which provides efficient caching of
contiguous data.
@@ -740,7 +786,7 @@
See the \l{XML Processing} and QXmlSchema class documentation for more
information.
- \section1 Qt3D enablers
+ \section1 Qt3D Enablers
As more of Qt, and more of the applications built on Qt go 3D,
API's should be provided to simplify this. Mainly, the new API
@@ -750,7 +796,7 @@
The main features of the Qt3D enablers are currently: Math
primitives for matrix multiplication, vectors, quaternions
- (client-side), and API for vertex and fragment shaders, GLSL/ES.
+ (client-side), and an API for vertex and fragment shaders, GLSL/ES.
Future research will, among other things include stencils,
scissors, vertex buffers and arrays, texture manipulation, and
geometry shaders.
diff --git a/doc/src/snippets/code/doc_src_fdl.qdoc b/doc/src/snippets/code/doc_src_fdl.qdoc
index 3c15dfee37..b55e66339b 100644
--- a/doc/src/snippets/code/doc_src_fdl.qdoc
+++ b/doc/src/snippets/code/doc_src_fdl.qdoc
@@ -7,11 +7,11 @@
** This file is part of the documentation of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:FDL$
-** Commercial Usage
-** Licensees holding valid Qt Commercial licenses may use this file in
-** accordance with the Qt Commercial License Agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in a
-** written agreement between you and Nokia.
+** 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 Free Documentation License
** Alternatively, this file may be used under the terms of the GNU Free
diff --git a/doc/src/snippets/code/doc_src_properties.qdoc b/doc/src/snippets/code/doc_src_properties.qdoc
index 7704160f74..a4ed409a52 100644
--- a/doc/src/snippets/code/doc_src_properties.qdoc
+++ b/doc/src/snippets/code/doc_src_properties.qdoc
@@ -91,7 +91,7 @@ for (int i=0; i<count; ++i) {
class MyClass : public QObject
{
Q_OBJECT
- Q_PROPERTY(Priority priority READ priority WRITE setPriority)
+ Q_PROPERTY(Priority priority READ priority WRITE setPriority NOTIFY priorityChanged)
Q_ENUMS(Priority)
public:
@@ -100,8 +100,19 @@ public:
enum Priority { High, Low, VeryHigh, VeryLow };
- void setPriority(Priority priority);
- Priority priority() const;
+ void setPriority(Priority priority)
+ {
+ m_priority = priority;
+ emit priorityChanged(priority);
+ }
+ Priority priority() const
+ { return m_priority; }
+
+signals:
+ void priorityChanged(Priority);
+
+private:
+ Priority m_priority;
};
//! [5]
diff --git a/doc/src/snippets/code/src_qtestlib_qtestcase.cpp b/doc/src/snippets/code/src_qtestlib_qtestcase.cpp
index 6ae893958d..adb0c343c6 100644
--- a/doc/src/snippets/code/src_qtestlib_qtestcase.cpp
+++ b/doc/src/snippets/code/src_qtestlib_qtestcase.cpp
@@ -230,5 +230,21 @@ widget.show();
QTest::qWaitForWindowShown(&widget);
//! [24]
+//! [25]
+QWidget widget;
+
+QTest::touchEvent(&widget)
+ .press(0, QPoint(10, 10));
+QTest::touchEvent(&widget)
+ .stationary(0)
+ .press(1, QPoint(40, 10));
+QTest::touchEvent(&widget)
+ .move(0, QPoint(12, 12))
+ .move(1, QPoint(45, 5));
+QTest::touchEvent(&widget)
+ .release(0)
+ .release(1);
+//! [25]
+
}
diff --git a/doc/src/snippets/declarative/codingconventions/private.qml b/doc/src/snippets/declarative/codingconventions/private.qml
new file mode 100644
index 0000000000..1d3dda8dc4
--- /dev/null
+++ b/doc/src/snippets/declarative/codingconventions/private.qml
@@ -0,0 +1,49 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the documentation of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+import QtQuick 1.0
+
+//! [0]
+Item {
+ id: component
+ width: 40; height: 50
+ property real __area: width * height * 0.5 //not meant for outside use
+}
+//! [0]
diff --git a/doc/src/snippets/declarative/comments.qml b/doc/src/snippets/declarative/comments.qml
index a8e47ada05..97659a5414 100644
--- a/doc/src/snippets/declarative/comments.qml
+++ b/doc/src/snippets/declarative/comments.qml
@@ -38,7 +38,6 @@
**
****************************************************************************/
-//![0]
import QtQuick 1.0
//![0]
diff --git a/doc/src/snippets/declarative/focus/advancedFocus.qml b/doc/src/snippets/declarative/focus/advancedFocus.qml
new file mode 100644
index 0000000000..274f54f158
--- /dev/null
+++ b/doc/src/snippets/declarative/focus/advancedFocus.qml
@@ -0,0 +1,67 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the FOO module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+import QtQuick 1.0
+
+//! [FocusScope delegate]
+Rectangle {
+ color: "lightsteelblue"; width: 100; height: 50
+
+ ListView {
+ anchors.fill: parent
+ focus: true
+
+ model: ListModel {
+ ListElement { name: "Bob" }
+ ListElement { name: "John" }
+ ListElement { name: "Michael" }
+ }
+
+ delegate: FocusScope {
+ width: childrenRect.width; height: childrenRect.height
+ x:childrenRect.x; y: childrenRect.y
+ TextInput {
+ focus: true
+ text: name
+ Keys.onReturnPressed: console.log(name)
+ }
+ }
+ }
+}
+//! [FocusScope delegate]
diff --git a/doc/src/snippets/declarative/focus/basicwidget.qml b/doc/src/snippets/declarative/focus/basicwidget.qml
new file mode 100644
index 0000000000..71e75ff471
--- /dev/null
+++ b/doc/src/snippets/declarative/focus/basicwidget.qml
@@ -0,0 +1,59 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the FOO module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+import QtQuick 1.0
+
+//! [focus true]
+Rectangle {
+ color: "lightsteelblue"; width: 240; height: 25
+ Text { id: myText }
+ Item {
+ id: keyHandler
+ focus: true
+ Keys.onPressed: {
+ if (event.key == Qt.Key_A)
+ myText.text = 'Key A was pressed'
+ else if (event.key == Qt.Key_B)
+ myText.text = 'Key B was pressed'
+ else if (event.key == Qt.Key_C)
+ myText.text = 'Key C was pressed'
+ }
+ }
+}
+//! [focus true]
diff --git a/doc/src/snippets/declarative/focus/clickablewidget.qml b/doc/src/snippets/declarative/focus/clickablewidget.qml
new file mode 100644
index 0000000000..34b0d8752d
--- /dev/null
+++ b/doc/src/snippets/declarative/focus/clickablewidget.qml
@@ -0,0 +1,61 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the FOO module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+import QtQuick 1.0
+
+//! [clickable window]
+Rectangle {
+ id: window
+
+ color: "white"; width: 240; height: 150
+
+ Column {
+ anchors.centerIn: parent; spacing: 15
+
+ MyClickableWidget {
+ focus: true //set this MyWidget to receive the focus
+ color: "lightblue"
+ }
+ MyClickableWidget {
+ color: "palegreen"
+ }
+ }
+
+}
+//! [clickable window]
diff --git a/doc/src/snippets/declarative/focus/focusColumn.qml b/doc/src/snippets/declarative/focus/focusColumn.qml
new file mode 100644
index 0000000000..eb59309f40
--- /dev/null
+++ b/doc/src/snippets/declarative/focus/focusColumn.qml
@@ -0,0 +1,25 @@
+import QtQuick 1.0
+
+Rectangle {
+ width: 200; height: 200
+
+ // Column {
+ FocusScope {
+ x: rect1.x; y:rect1.y; width: rect1.width; height: rect1.height
+ Rectangle {id: rect1; width: 50; height: 50; focus:true
+ color: focus ? "red":"blue"
+ }
+ Rectangle {id: rect2; width: 50; height: 50; focus:true
+ color: focus ? "red":"blue"
+ y: 75
+ }
+// }
+/*
+ FocusScope {
+ x: rect2.x; y:rect2.y; width: rect2.width; height: rect2.height
+ Rectangle {id: rect2; width: 50; height: 50; color: "red"}
+ }
+*/
+ }
+
+}
diff --git a/doc/src/snippets/declarative/focus/focusscopewidget.qml b/doc/src/snippets/declarative/focus/focusscopewidget.qml
new file mode 100644
index 0000000000..48e5750269
--- /dev/null
+++ b/doc/src/snippets/declarative/focus/focusscopewidget.qml
@@ -0,0 +1,61 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the FOO module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+import QtQuick 1.0
+
+//! [focusscope window]
+Rectangle {
+ id: window
+
+ color: "white"; width: 240; height: 150
+
+ Column {
+ anchors.centerIn: parent; spacing: 15
+
+ MyFocusScopeWidget {
+ focus: true //set this MyWidget to receive the focus
+ color: "lightblue"
+ }
+ MyFocusScopeWidget {
+ color: "palegreen"
+ }
+ }
+
+}
+//! [focusscope window]
diff --git a/doc/src/snippets/declarative/focus/myclickablewidget.qml b/doc/src/snippets/declarative/focus/myclickablewidget.qml
new file mode 100644
index 0000000000..3294662d43
--- /dev/null
+++ b/doc/src/snippets/declarative/focus/myclickablewidget.qml
@@ -0,0 +1,69 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the FOO module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+import QtQuick 1.0
+
+//! [clickable in focusscope]
+FocusScope {
+
+ id: scope
+
+ //FocusScope needs to bind to visual properties of the children
+ property alias color: rectangle.color
+ x: rectangle.x; y: rectangle.y
+ width: rectangle.width; height: rectangle.height
+
+ Rectangle {
+ id: rectangle
+ anchors.centerIn: parent
+ color: "lightsteelblue"; width: 175; height: 25; radius: 10; smooth: true
+ Text { id: label; anchors.centerIn: parent }
+ focus: true
+ Keys.onPressed: {
+ if (event.key == Qt.Key_A)
+ label.text = 'Key A was pressed'
+ else if (event.key == Qt.Key_B)
+ label.text = 'Key B was pressed'
+ else if (event.key == Qt.Key_C)
+ label.text = 'Key C was pressed'
+ }
+ }
+ MouseArea { anchors.fill: parent; onClicked: { scope.focus = true } }
+}
+//! [clickable in focusscope]
diff --git a/doc/src/snippets/declarative/focus/myfocusscopewidget.qml b/doc/src/snippets/declarative/focus/myfocusscopewidget.qml
new file mode 100644
index 0000000000..231ae3ab0a
--- /dev/null
+++ b/doc/src/snippets/declarative/focus/myfocusscopewidget.qml
@@ -0,0 +1,66 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the FOO module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+import QtQuick 1.0
+
+//! [widget in focusscope]
+FocusScope {
+
+ //FocusScope needs to bind to visual properties of the children
+ property alias color: rectangle.color
+ x: rectangle.x; y: rectangle.y
+ width: rectangle.width; height: rectangle.height
+
+ Rectangle {
+ id: rectangle
+ anchors.centerIn: parent
+ color: "lightsteelblue"; width: 175; height: 25; radius: 10; smooth: true
+ Text { id: label; anchors.centerIn: parent }
+ focus: true
+ Keys.onPressed: {
+ if (event.key == Qt.Key_A)
+ label.text = 'Key A was pressed'
+ else if (event.key == Qt.Key_B)
+ label.text = 'Key B was pressed'
+ else if (event.key == Qt.Key_C)
+ label.text = 'Key C was pressed'
+ }
+ }
+}
+//! [widget in focusscope]
diff --git a/doc/src/snippets/declarative/focus/mywidget.qml b/doc/src/snippets/declarative/focus/mywidget.qml
new file mode 100644
index 0000000000..bea723da9b
--- /dev/null
+++ b/doc/src/snippets/declarative/focus/mywidget.qml
@@ -0,0 +1,58 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the FOO module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+import QtQuick 1.0
+
+//! [mywidget]
+//MyWidget code
+Rectangle {
+ id: widget
+ color: "lightsteelblue"; width: 175; height: 25; radius: 10; smooth: true
+ Text { id: label; anchors.centerIn: parent}
+ focus: true
+ Keys.onPressed: {
+ if (event.key == Qt.Key_A)
+ label.text = 'Key A was pressed'
+ else if (event.key == Qt.Key_B)
+ label.text = 'Key B was pressed'
+ else if (event.key == Qt.Key_C)
+ label.text = 'Key C was pressed'
+ }
+}
+//! [mywidget]
diff --git a/doc/src/snippets/declarative/focus/qmldir b/doc/src/snippets/declarative/focus/qmldir
new file mode 100644
index 0000000000..d0683b2b46
--- /dev/null
+++ b/doc/src/snippets/declarative/focus/qmldir
@@ -0,0 +1,4 @@
+MyWidget 1.0 mywidget.qml
+MyFocusScopeWidget 1.0 myfocusscopewidget.qml
+MyClickableWidget 1.0 myclickablewidget.qml
+
diff --git a/doc/src/snippets/declarative/focus/rectangle.qml b/doc/src/snippets/declarative/focus/rectangle.qml
new file mode 100644
index 0000000000..01d1f0cc30
--- /dev/null
+++ b/doc/src/snippets/declarative/focus/rectangle.qml
@@ -0,0 +1,62 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the FOO module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+import QtQuick 1.0
+
+//! [simple key event]
+Rectangle {
+ width: 100; height: 100
+ focus: true
+ Keys.onPressed: {
+ if (event.key == Qt.Key_A) {
+ console.log('Key A was pressed');
+ event.accepted = true;
+ }
+ }
+//! [simple key event]
+
+//! [active focus]
+ Text {
+ text: activeFocus ? "I have active focus!" : "I do not have active focus"
+ }
+//! [active focus]
+
+//! [simple key event end]
+}
+//! [simple key event end]
diff --git a/doc/src/snippets/declarative/focus/widget.qml b/doc/src/snippets/declarative/focus/widget.qml
new file mode 100644
index 0000000000..cef34c5ab5
--- /dev/null
+++ b/doc/src/snippets/declarative/focus/widget.qml
@@ -0,0 +1,61 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the FOO module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+import QtQuick 1.0
+
+//! [window]
+
+//Window code that imports MyWidget
+Rectangle {
+ id: window
+ color: "white"; width: 240; height: 150
+
+ Column {
+ anchors.centerIn: parent; spacing: 15
+
+ MyWidget {
+ focus: true //set this MyWidget to receive the focus
+ color: "lightblue"
+ }
+ MyWidget {
+ color: "palegreen"
+ }
+ }
+}
+//! [window]
diff --git a/doc/src/snippets/declarative/integrating-javascript/connectjs.qml b/doc/src/snippets/declarative/integrating-javascript/connectjs.qml
new file mode 100644
index 0000000000..d84b82712d
--- /dev/null
+++ b/doc/src/snippets/declarative/integrating-javascript/connectjs.qml
@@ -0,0 +1,57 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the documentation of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+//![0]
+import QtQuick 1.0
+import "script.js" as MyScript
+
+Item {
+ id: item
+ width: 200; height: 200
+
+ MouseArea {
+ id: mouseArea
+ anchors.fill: parent
+ }
+
+ Component.onCompleted: {
+ mouseArea.clicked.connect(MyScript.jsFunction)
+ }
+}
+//![0]
diff --git a/doc/src/snippets/declarative/integrating-javascript/script.js b/doc/src/snippets/declarative/integrating-javascript/script.js
new file mode 100644
index 0000000000..f7099f828a
--- /dev/null
+++ b/doc/src/snippets/declarative/integrating-javascript/script.js
@@ -0,0 +1,47 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the documentation of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+//![0]
+// script.js
+
+function jsFunction() {
+ console.log("Called JavaScript function!")
+}
+//![0]
+
diff --git a/doc/src/snippets/declarative/keynavigation.qml b/doc/src/snippets/declarative/keynavigation.qml
new file mode 100644
index 0000000000..e11cdf1e58
--- /dev/null
+++ b/doc/src/snippets/declarative/keynavigation.qml
@@ -0,0 +1,84 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the documentation of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+//![0]
+import QtQuick 1.0
+
+Grid {
+ width: 100; height: 100
+ columns: 2
+
+ Rectangle {
+ id: topLeft
+ width: 50; height: 50
+ color: focus ? "red" : "lightgray"
+ focus: true
+
+ KeyNavigation.right: topRight
+ KeyNavigation.down: bottomLeft
+ }
+
+ Rectangle {
+ id: topRight
+ width: 50; height: 50
+ color: focus ? "red" : "lightgray"
+
+ KeyNavigation.left: topLeft
+ KeyNavigation.down: bottomRight
+ }
+
+ Rectangle {
+ id: bottomLeft
+ width: 50; height: 50
+ color: focus ? "red" : "lightgray"
+
+ KeyNavigation.right: bottomRight
+ KeyNavigation.up: topLeft
+ }
+
+ Rectangle {
+ id: bottomRight
+ width: 50; height: 50
+ color: focus ? "red" : "lightgray"
+
+ KeyNavigation.left: bottomLeft
+ KeyNavigation.up: topRight
+ }
+}
+//![0]
diff --git a/doc/src/snippets/declarative/loader/sizeitem.qml b/doc/src/snippets/declarative/loader/sizeitem.qml
new file mode 100644
index 0000000000..6ace8d6510
--- /dev/null
+++ b/doc/src/snippets/declarative/loader/sizeitem.qml
@@ -0,0 +1,62 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the documentation 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$
+**
+****************************************************************************/
+//![0]
+import QtQuick 1.0
+
+Item {
+ width: 200; height: 200
+
+ Loader {
+ // position the Loader in the center of the parent
+ anchors.centerIn: parent
+ sourceComponent: rect
+ }
+
+ Component {
+ id: rect
+ Rectangle {
+ width: 50
+ height: 50
+ color: "red"
+ }
+ }
+}
+//![0]
diff --git a/doc/src/snippets/declarative/loader/sizeloader.qml b/doc/src/snippets/declarative/loader/sizeloader.qml
new file mode 100644
index 0000000000..eac7d57dd7
--- /dev/null
+++ b/doc/src/snippets/declarative/loader/sizeloader.qml
@@ -0,0 +1,62 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the documentation 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$
+**
+****************************************************************************/
+//![0]
+import QtQuick 1.0
+
+Item {
+ width: 200; height: 200
+
+ Loader {
+ // Explicitly set the size of the Loader to the parent item's size
+ anchors.fill: parent
+ sourceComponent: rect
+ }
+
+ Component {
+ id: rect
+ Rectangle {
+ width: 50
+ height: 50
+ color: "red"
+ }
+ }
+}
+//![0]
diff --git a/doc/src/snippets/declarative/qml-extending-types/components/Button.qml b/doc/src/snippets/declarative/qml-extending-types/components/Button.qml
new file mode 100644
index 0000000000..43fe0e21f2
--- /dev/null
+++ b/doc/src/snippets/declarative/qml-extending-types/components/Button.qml
@@ -0,0 +1,53 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the documentation of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+//![0]
+// Button.qml
+import QtQuick 1.0
+
+Rectangle {
+ width: 100; height: 100
+ color: "red"
+
+ MouseArea {
+ anchors.fill: parent
+ onClicked: console.log("Button clicked!")
+ }
+}
+//![0]
diff --git a/doc/src/snippets/declarative/qml-extending-types/components/application.qml b/doc/src/snippets/declarative/qml-extending-types/components/application.qml
new file mode 100644
index 0000000000..0c3b0df648
--- /dev/null
+++ b/doc/src/snippets/declarative/qml-extending-types/components/application.qml
@@ -0,0 +1,49 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the documentation of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+//![0]
+// application.qml
+import QtQuick 1.0
+
+Column {
+ Button { width: 50; height: 50 }
+ Button { x: 50; width: 100; height: 50; color: "blue" }
+ Button { width: 50; height: 50; radius: 8 }
+}
+//![0]
diff --git a/doc/src/snippets/declarative/qml-extending-types/methods/app.qml b/doc/src/snippets/declarative/qml-extending-types/methods/app.qml
new file mode 100644
index 0000000000..3b5f00818b
--- /dev/null
+++ b/doc/src/snippets/declarative/qml-extending-types/methods/app.qml
@@ -0,0 +1,55 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the documentation of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+import QtQuick 1.0
+//![0]
+Rectangle {
+ id: rect
+ width: 100; height: 100
+
+ function say(text) {
+ console.log("You said: " + text);
+ }
+
+ MouseArea {
+ anchors.fill: parent
+ onClicked: rect.say("Mouse clicked")
+ }
+}
+//![0]
diff --git a/doc/src/snippets/declarative/qml-extending-types/properties/ImageViewer.qml b/doc/src/snippets/declarative/qml-extending-types/properties/ImageViewer.qml
new file mode 100644
index 0000000000..e37db9c7c3
--- /dev/null
+++ b/doc/src/snippets/declarative/qml-extending-types/properties/ImageViewer.qml
@@ -0,0 +1,52 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the documentation of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+//![0]
+// ImageViewer.qml
+import QtQuick 1.0
+
+Item {
+ id: item
+ width: 200; height: 200
+
+ property string currentImage: "default-image.png"
+
+ Image { source: item.currentImage }
+}
+//![0]
diff --git a/doc/src/snippets/declarative/qml-extending-types/properties/alias-override.qml b/doc/src/snippets/declarative/qml-extending-types/properties/alias-override.qml
new file mode 100644
index 0000000000..aab2748e8b
--- /dev/null
+++ b/doc/src/snippets/declarative/qml-extending-types/properties/alias-override.qml
@@ -0,0 +1,48 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the documentation of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+import QtQuick 1.0
+//![0]
+Rectangle {
+ property alias color: childRect.color
+ color: "red"
+
+ Rectangle { id: childRect }
+}
+//![0]
diff --git a/doc/src/snippets/declarative/qml-extending-types/properties/alias.qml b/doc/src/snippets/declarative/qml-extending-types/properties/alias.qml
new file mode 100644
index 0000000000..1bda4471d7
--- /dev/null
+++ b/doc/src/snippets/declarative/qml-extending-types/properties/alias.qml
@@ -0,0 +1,51 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the documentation of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+//![0]
+// Button.qml
+import QtQuick 1.0
+
+Item {
+ property alias buttonText: textItem.text
+
+ width: 200; height: 50
+
+ Text { id: textItem }
+}
+//![0]
diff --git a/doc/src/snippets/declarative/qml-extending-types/properties/alias/ImageViewer.qml b/doc/src/snippets/declarative/qml-extending-types/properties/alias/ImageViewer.qml
new file mode 100644
index 0000000000..7f50674dfa
--- /dev/null
+++ b/doc/src/snippets/declarative/qml-extending-types/properties/alias/ImageViewer.qml
@@ -0,0 +1,52 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the documentation of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+//![0]
+// ImageViewer.qml
+import QtQuick 1.0
+
+Item {
+ id: item
+ width: 200; height: 200
+
+ property alias currentImage: image
+
+ Image { id: image }
+}
+//![0]
diff --git a/doc/src/snippets/declarative/qml-extending-types/properties/alias/application.qml b/doc/src/snippets/declarative/qml-extending-types/properties/alias/application.qml
new file mode 100644
index 0000000000..3592e6012d
--- /dev/null
+++ b/doc/src/snippets/declarative/qml-extending-types/properties/alias/application.qml
@@ -0,0 +1,54 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the documentation of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+//![0]
+// application.qml
+import QtQuick 1.0
+
+ImageViewer {
+ id: viewer
+
+ currentImage.source: "http://qt.nokia.com/logo.png"
+ currentImage.width: width
+ currentImage.height: height
+ currentImage.fillMode: Image.Tile
+
+ Text { text: currentImage.source }
+}
+//![0]
diff --git a/doc/src/snippets/declarative/qml-extending-types/properties/application.qml b/doc/src/snippets/declarative/qml-extending-types/properties/application.qml
new file mode 100644
index 0000000000..4978f052d9
--- /dev/null
+++ b/doc/src/snippets/declarative/qml-extending-types/properties/application.qml
@@ -0,0 +1,50 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the documentation of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+//![0]
+import QtQuick 1.0
+
+ImageViewer {
+ id: viewer
+
+ currentImage: "http://qt.nokia.com/logo.png"
+
+ Text { text: viewer.currentImage }
+}
+//![0]
diff --git a/doc/src/snippets/declarative/qml-extending-types/properties/property-signals.qml b/doc/src/snippets/declarative/qml-extending-types/properties/property-signals.qml
new file mode 100644
index 0000000000..1d1b325737
--- /dev/null
+++ b/doc/src/snippets/declarative/qml-extending-types/properties/property-signals.qml
@@ -0,0 +1,49 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the documentation of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+import QtQuick 1.0
+//![0]
+Item {
+ property int myNumber
+
+ onMyNumberChanged: { console.log("myNumber has changed:", myNumber); }
+
+ Component.onCompleted: myNumber = 100
+}
+//![0]
diff --git a/doc/src/snippets/declarative/qml-extending-types/signals/Button.qml b/doc/src/snippets/declarative/qml-extending-types/signals/Button.qml
new file mode 100644
index 0000000000..927257222b
--- /dev/null
+++ b/doc/src/snippets/declarative/qml-extending-types/signals/Button.qml
@@ -0,0 +1,55 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the documentation of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+import QtQuick 1.0
+
+//![0]
+// Button.qml
+Rectangle {
+ id: rect
+ width: 100; height: 100
+
+ signal buttonClicked(int xPos, int yPos)
+
+ MouseArea {
+ anchors.fill: parent
+ onClicked: rect.buttonClicked(mouse.x, mouse.y)
+ }
+}
+//![0]
diff --git a/doc/src/snippets/declarative/qml-extending-types/signals/basic.qml b/doc/src/snippets/declarative/qml-extending-types/signals/basic.qml
new file mode 100644
index 0000000000..272c97294d
--- /dev/null
+++ b/doc/src/snippets/declarative/qml-extending-types/signals/basic.qml
@@ -0,0 +1,55 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the documentation of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+//![0]
+// Button.qml
+import QtQuick 1.0
+
+Rectangle {
+ id: rect
+ width: 100; height: 100
+
+ signal buttonClicked
+
+ MouseArea {
+ anchors.fill: parent
+ onClicked: rect.buttonClicked()
+ }
+}
+//![0]
diff --git a/doc/src/snippets/declarative/qml-extending-types/signals/connectdynamic.qml b/doc/src/snippets/declarative/qml-extending-types/signals/connectdynamic.qml
new file mode 100644
index 0000000000..4b1f217b79
--- /dev/null
+++ b/doc/src/snippets/declarative/qml-extending-types/signals/connectdynamic.qml
@@ -0,0 +1,61 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the documentation of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+import QtQuick 1.0
+//![0]
+Item {
+ id: item
+ width: 300; height: 100
+
+ function myMethod() {
+ console.log("Button was clicked!")
+ }
+
+ Row { id: row }
+
+ Component.onCompleted: {
+ var component = Qt.createComponent("Button.qml")
+ for (var i=0; i<3; i++) {
+ var button = component.createObject(row)
+ button.border.width = 1
+ button.buttonClicked.connect(myMethod)
+ }
+ }
+}
+//![0]
diff --git a/doc/src/snippets/declarative/qml-extending-types/signals/connectslots.qml b/doc/src/snippets/declarative/qml-extending-types/signals/connectslots.qml
new file mode 100644
index 0000000000..ae142819b8
--- /dev/null
+++ b/doc/src/snippets/declarative/qml-extending-types/signals/connectslots.qml
@@ -0,0 +1,56 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the documentation of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+import QtQuick 1.0
+//![0]
+Item {
+ id: item
+ width: 200; height: 200
+
+ function myMethod() {
+ console.log("Button was clicked!")
+ }
+
+ Button {
+ id: button
+ anchors.fill: parent
+ Component.onCompleted: buttonClicked.connect(item.myMethod)
+ }
+}
+//![0]
diff --git a/doc/src/snippets/declarative/qml-extending-types/signals/no-parameters.qml b/doc/src/snippets/declarative/qml-extending-types/signals/no-parameters.qml
new file mode 100644
index 0000000000..742ab18c76
--- /dev/null
+++ b/doc/src/snippets/declarative/qml-extending-types/signals/no-parameters.qml
@@ -0,0 +1,49 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the documentation of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+//![0]
+// application.qml
+import QtQuick 1.0
+
+Button {
+ width: 100; height: 100
+ onButtonClicked: console.log("Mouse was clicked")
+}
+//![0]
+
diff --git a/doc/src/snippets/declarative/qml-extending-types/signals/parameters.qml b/doc/src/snippets/declarative/qml-extending-types/signals/parameters.qml
new file mode 100644
index 0000000000..f513f5f866
--- /dev/null
+++ b/doc/src/snippets/declarative/qml-extending-types/signals/parameters.qml
@@ -0,0 +1,50 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the documentation of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+import QtQuick 1.0
+//![0]
+// application.qml
+Button {
+ width: 100; height: 100
+ onButtonClicked: {
+ console.log("Mouse clicked at " + xPos + "," + yPos)
+ }
+}
+//![0]
+
diff --git a/doc/src/snippets/declarative/qtbinding/newelements/imageviewer.h b/doc/src/snippets/declarative/qtbinding/newelements/imageviewer.h
index fd9db5eb7d..cec9757f8e 100644
--- a/doc/src/snippets/declarative/qtbinding/newelements/imageviewer.h
+++ b/doc/src/snippets/declarative/qtbinding/newelements/imageviewer.h
@@ -37,10 +37,10 @@
** $QT_END_LICENSE$
**
****************************************************************************/
+//![0]
#include <QtCore>
#include <QtDeclarative>
-//![0]
class ImageViewer : public QDeclarativeItem
{
Q_OBJECT
diff --git a/doc/src/snippets/moc/myclass2.h b/doc/src/snippets/moc/myclass2.h
index ca79515167..daea23c1f0 100644
--- a/doc/src/snippets/moc/myclass2.h
+++ b/doc/src/snippets/moc/myclass2.h
@@ -58,8 +58,11 @@ public:
MyClass(QObject *parent = 0);
~MyClass();
- void setPriority(Priority priority);
- Priority priority() const;
+ void setPriority(Priority priority) { m_priority = priority; }
+ Priority priority() const { return m_priority; }
+
+private:
+ Priority m_priority;
};
//! [0]
diff --git a/examples/declarative/modelviews/visualitemmodel/visualitemmodel.qml b/examples/declarative/modelviews/visualitemmodel/visualitemmodel.qml
index 15f2f1152c..f6564f787e 100644
--- a/examples/declarative/modelviews/visualitemmodel/visualitemmodel.qml
+++ b/examples/declarative/modelviews/visualitemmodel/visualitemmodel.qml
@@ -55,16 +55,22 @@ Rectangle {
width: view.width; height: view.height
color: "#FFFEF0"
Text { text: "Page 1"; font.bold: true; anchors.centerIn: parent }
+
+ Component.onDestruction: print("destroyed 1")
}
Rectangle {
width: view.width; height: view.height
color: "#F0FFF7"
Text { text: "Page 2"; font.bold: true; anchors.centerIn: parent }
+
+ Component.onDestruction: print("destroyed 2")
}
Rectangle {
width: view.width; height: view.height
color: "#F4F0FF"
Text { text: "Page 3"; font.bold: true; anchors.centerIn: parent }
+
+ Component.onDestruction: print("destroyed 3")
}
}
@@ -76,6 +82,7 @@ Rectangle {
highlightRangeMode: ListView.StrictlyEnforceRange
orientation: ListView.Horizontal
snapMode: ListView.SnapOneItem; flickDeceleration: 2000
+ cacheBuffer: 200
}
Rectangle {
diff --git a/examples/declarative/ui-components/tabwidget/TabWidget.qml b/examples/declarative/ui-components/tabwidget/TabWidget.qml
index f066fd2eb9..2a74c46e6b 100644
--- a/examples/declarative/ui-components/tabwidget/TabWidget.qml
+++ b/examples/declarative/ui-components/tabwidget/TabWidget.qml
@@ -45,8 +45,8 @@ Item {
// Setting the default property to stack.children means any child items
// of the TabWidget are actually added to the 'stack' item's children.
- // See the "Extending Types from QML" documentation for details on default
- // properties.
+ // See the "Writing QML Components: Properties, Methods and Signals"
+ // documentation for details on default properties.
default property alias content: stack.children
property int current: 0
diff --git a/examples/symbianpkgrules.pri b/examples/symbianpkgrules.pri
index 0f615c70eb..fe9b487d55 100644
--- a/examples/symbianpkgrules.pri
+++ b/examples/symbianpkgrules.pri
@@ -2,12 +2,13 @@
RSS_RULES ="group_name=\"QtExamples\";"
+nokiaVendor = "Nokia, Qt"
vendorinfo = \
"; Localised Vendor name" \
- "%{\"Nokia, Qt\"}" \
+ "%{$$addLanguageDependentPkgItem(nokiaVendor)}" \
" " \
"; Unique Vendor name" \
- ":\"Nokia, Qt\"" \
+ ":\"$$nokiaVendor\"" \
" "
examples_deployment.pkg_prerules += vendorinfo
diff --git a/examples/tools/echoplugin/echowindow/echowindow.pro b/examples/tools/echoplugin/echowindow/echowindow.pro
index bdf8c41e46..d56961cd71 100644
--- a/examples/tools/echoplugin/echowindow/echowindow.pro
+++ b/examples/tools/echoplugin/echowindow/echowindow.pro
@@ -5,8 +5,8 @@ SOURCES = echowindow.cpp \
TARGET = echoplugin
win32 {
- debug:DESTDIR = ../debug/
- release:DESTDIR = ../release/
+ CONFIG(debug, release|debug):DESTDIR = ../debug/
+ CONFIG(release, release|debug):DESTDIR = ../release/
} else {
DESTDIR = ../
}
diff --git a/examples/tools/styleplugin/plugin/plugin.pro b/examples/tools/styleplugin/plugin/plugin.pro
index 7cb0c976de..54e266c8af 100644
--- a/examples/tools/styleplugin/plugin/plugin.pro
+++ b/examples/tools/styleplugin/plugin/plugin.pro
@@ -8,8 +8,8 @@ SOURCES = simplestyle.cpp \
TARGET = simplestyleplugin
#! [0]
win32 {
- debug:DESTDIR = ../debug/styles/
- release:DESTDIR = ../release/styles/
+ CONFIG(debug, release|debug):DESTDIR = ../debug/styles/
+ CONFIG(release, release|debug):DESTDIR = ../release/styles/
} else {
DESTDIR = ../styles/
}
diff --git a/mkspecs/common/symbian/appCaptionForTranslation.cpp b/mkspecs/common/symbian/appCaptionForTranslation.cpp
new file mode 100644
index 0000000000..c29514770e
--- /dev/null
+++ b/mkspecs/common/symbian/appCaptionForTranslation.cpp
@@ -0,0 +1,46 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the qmake spec 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$
+**
+****************************************************************************/
+
+//: Application short caption, currently only relevant for application projects in Symbian.
+QT_TRANSLATE_NOOP("QtApplicationCaptions", "Application short caption")
+
+//: Application long caption, currently only relevant for application projects in Symbian.
+QT_TRANSLATE_NOOP("QtApplicationCaptions", "Application long caption")
diff --git a/mkspecs/common/symbian/packageNameForTranslation.cpp b/mkspecs/common/symbian/packageNameForTranslation.cpp
new file mode 100644
index 0000000000..bc4a7f438c
--- /dev/null
+++ b/mkspecs/common/symbian/packageNameForTranslation.cpp
@@ -0,0 +1,47 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the qmake spec 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$
+**
+****************************************************************************/
+
+//: Installation package name, currently only relevant for Symbian projects that deploy something.
+QT_TRANSLATE_NOOP("QtPackageNames", "Package name")
+
+//: Smart installer installation package name, currently only relevant for Symbian projects that
+//: deploy something.
+QT_TRANSLATE_NOOP("QtPackageNames", "Smart installer package name")
diff --git a/mkspecs/common/symbian/symbian-mmp.conf b/mkspecs/common/symbian/symbian-mmp.conf
index 1fbd302c68..4d554bd4ae 100644
--- a/mkspecs/common/symbian/symbian-mmp.conf
+++ b/mkspecs/common/symbian/symbian-mmp.conf
@@ -18,8 +18,8 @@ MMP_RULES += $$MMP_RULES_DONT_EXPORT_ALL_CLASS_IMPEDIMENTA
SYMBIAN_PLATFORMS = WINSCW GCCE ARMV5 ARMV6
INCLUDEPATH = \
- $$[QT_INSTALL_PREFIX]/mkspecs/common/symbian/stl-off \
- $$[QT_INSTALL_PREFIX]/mkspecs/common/symbian \
+ $$[QT_INSTALL_DATA]/mkspecs/common/symbian/stl-off \
+ $$[QT_INSTALL_DATA]/mkspecs/common/symbian \
$${EPOCROOT}epoc32/include \
$$OS_LAYER_LIBC_SYSTEMINCLUDE \
$$INCLUDEPATH
diff --git a/mkspecs/common/symbian/symbian.conf b/mkspecs/common/symbian/symbian.conf
index 69188a81cb..11907cf7c9 100644
--- a/mkspecs/common/symbian/symbian.conf
+++ b/mkspecs/common/symbian/symbian.conf
@@ -130,6 +130,21 @@ QMAKE_LIBS_QT_ENTRY = -lqtmain$${QT_LIBINFIX}.lib
QMAKE_LIBS_NO_QT_ENTRY = -llibcrt0.lib
QMAKE_LIBS_NO_QT_ENTRY_GCCE = -llibcrt0_gcce.lib
+# List of languages that have a Symbian language code mapping provided in localize_deployment.prf
+SYMBIAN_SUPPORTED_LANGUAGES = \
+ af sq am ar hy bn bg my be ca \
+ hr cs da nl en et fi fr gd ka \
+ de el gu he hi hu is id ga it \
+ ja kn kk ko lo lv lt mk ms ml \
+ mr mo mn nb pl pt pa ro ru sr \
+ si sk sl so es sw sv tl ta te \
+ th bo ti tr tk uk ur vi cy zu \
+ nn eu zh gl fa st en_US fr_BE \
+ pt_BR en_CA fr_CA el_CY tr_CY \
+ en_TW en_HK en_CN en_JP en_TH \
+ sv_FI zh_HK es_419 en_ZA fr_CH \
+ de_CH it_CH zh_TW
+
# These directories must match what configure uses for QT_INSTALL_PLUGINS and QT_INSTALL_IMPORTS
QT_PLUGINS_BASE_DIR = /resource/qt$${QT_LIBINFIX}/plugins
QT_IMPORTS_BASE_DIR = /resource/qt/imports
@@ -194,17 +209,6 @@ isEmpty(S60_VERSION) {
# multiple language compatible dependency statements him/herself.
default_deployment.pkg_prerules += pkg_depends_webkit pkg_depends_qt pkg_platform_dependencies
-
-# Supports S60 3.1, 3.2, 5.0, Symbian^3, and Symbian^4 by default
-pkg_platform_dependencies = \
- "; Default HW/platform dependencies" \
- "[0x102032BE],0,0,0,{\"S60ProductID\"}" \
- "[0x102752AE],0,0,0,{\"S60ProductID\"}" \
- "[0x1028315F],0,0,0,{\"S60ProductID\"}" \
- "[0x20022E6D],0,0,0,{\"S60ProductID\"}" \
- "[0x20032DE7],0,0,0,{\"S60ProductID\"}" \
- " "
-
DEPLOYMENT += default_deployment default_bin_deployment default_resource_deployment default_reg_deployment
defineReplace(symbianRemoveSpecialCharacters) {
@@ -225,3 +229,44 @@ defineReplace(symbianRemoveSpecialCharacters) {
return ($$fixedStr)
}
+# Determines translations that are Symbian supported
+defineTest(matchSymbianLanguages) {
+ SYMBIAN_MATCHED_LANGUAGES =
+ SYMBIAN_MATCHED_TRANSLATIONS =
+
+ # Cannot parse .ts file for language here, so detect it from filename.
+ # Allow two and three character language and country codes.
+ for(translation, TRANSLATIONS) {
+ language = $$replace(translation, "^(.*/)?[^/]+_(([^_]{2,3}_)?[^_]{2,3})\\.ts$", \\2)
+ contains(SYMBIAN_SUPPORTED_LANGUAGES, $$language) {
+ SYMBIAN_MATCHED_LANGUAGES += $$language
+ SYMBIAN_MATCHED_TRANSLATIONS += $$translation
+ }
+ }
+
+ isEmpty(SYMBIAN_MATCHED_LANGUAGES): SYMBIAN_MATCHED_LANGUAGES = en
+
+ export(SYMBIAN_MATCHED_LANGUAGES)
+ export(SYMBIAN_MATCHED_TRANSLATIONS)
+}
+
+# Symbian pkg files that define multiple languages require a language specific string to be
+# defined for various items, even though the string often needs to be same for all languages.
+# This replacement method will generate correct string for such cases based on TRANSLATIONS
+# variable.
+defineReplace(addLanguageDependentPkgItem) {
+ localize_deployment:!isEmpty(TRANSLATIONS):isEmpty(SYMBIAN_MATCHED_LANGUAGES) {
+ matchSymbianLanguages()
+ }
+
+ pkgItem = $$eval($$1)
+ pkgLanguageList =
+
+ for(dummyItem, SYMBIAN_MATCHED_LANGUAGES) {
+ pkgLanguageList += "\"$$pkgItem\""
+ }
+
+ isEmpty(pkgLanguageList): pkgLanguageList = "\"$$pkgItem\""
+
+ return($$join(pkgLanguageList,",",,))
+}
diff --git a/mkspecs/features/default_post.prf b/mkspecs/features/default_post.prf
index 09c6587aad..9fb9f10e76 100644
--- a/mkspecs/features/default_post.prf
+++ b/mkspecs/features/default_post.prf
@@ -110,3 +110,13 @@ QMAKE_LIBDIR += $$QMAKE_LIBDIR_POST
}
QMAKE_EXTRA_TARGETS += check
}
+
+# Add special translation sources for projects that require them.
+# Note 1: Since lupdate will not parse regular config scopes right, contains checks are used instead.
+# Note 2: Checking for last value of TEMPLATE is used instead of simple contains check because
+# lupdate doesn't respect "-=" variable assignments and therefore always finds "app"
+# as the first value of TEMPLATE variable.
+contains(CONFIG, lupdate_run):contains(CONFIG, localize_deployment) {
+ equals($$list($$last(TEMPLATE)), app): SOURCES += $$[QT_INSTALL_DATA]/mkspecs/common/symbian/appCaptionForTranslation.cpp
+ SOURCES += $$[QT_INSTALL_DATA]/mkspecs/common/symbian/packageNameForTranslation.cpp
+}
diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf
index afc708a23e..59d49c6aec 100644
--- a/mkspecs/features/qt_functions.prf
+++ b/mkspecs/features/qt_functions.prf
@@ -49,16 +49,23 @@ defineTest(qtAddLibrary) {
isEqual(LIB_NAME, QtGui) {
# Needed for #include <QtGui> because qs60mainapplication.h includes aknapp.h
INCLUDEPATH *= $$MW_LAYER_SYSTEMINCLUDE
- }
- isEqual(LIB_NAME, QtWebKit) {
+ } else:isEqual(LIB_NAME, QtWebKit) {
# Needed for because relative inclusion problem in toolchain
INCLUDEPATH *= $$QMAKE_INCDIR_QT/QtXmlPatterns
INCLUDEPATH *= $$QMAKE_INCDIR_QT/QtNetwork
- }
- isEqual(LIB_NAME, QtXmlPatterns) {
+ TARGET.CAPABILITY *= NetworkServices
+ isEmpty(TARGET.EPOCHEAPSIZE):TARGET.EPOCHEAPSIZE = 0x20000 0x2000000
+ } else:isEqual(LIB_NAME, QtXmlPatterns) {
# Needed for #include <QtXmlPatterns/QtXmlPatterns> because relative inclusion problem in toolchain
INCLUDEPATH *= $$QMAKE_INCDIR_QT/QtNetwork
+ } else:isEqual(LIB_NAME, QtNetwork) {
+ TARGET.CAPABILITY *= NetworkServices
+ } else:isEqual(LIB_NAME, QtDeclarative) {
+ TARGET.CAPABILITY *= NetworkServices
+ isEmpty(TARGET.EPOCHEAPSIZE):TARGET.EPOCHEAPSIZE = 0x20000 0x2000000
}
+ export(TARGET.EPOCHEAPSIZE)
+ export(TARGET.CAPABILITY)
}
isEmpty(LINKAGE) {
if(!debug_and_release|build_pass):CONFIG(debug, debug|release) {
diff --git a/mkspecs/features/symbian/default_post.prf b/mkspecs/features/symbian/default_post.prf
index d9ff03d6ee..ec6ecd0c84 100644
--- a/mkspecs/features/symbian/default_post.prf
+++ b/mkspecs/features/symbian/default_post.prf
@@ -52,3 +52,15 @@ isEmpty(TARGET.UID2) {
}
}
}
+
+# Supports S60 3.1, 3.2, 5.0, Symbian^3, and Symbian^4 by default
+platform_product_id = S60ProductID
+platform_product_id = $$addLanguageDependentPkgItem(platform_product_id)
+pkg_platform_dependencies = \
+ "; Default HW/platform dependencies" \
+ "[0x102032BE],0,0,0,{$$platform_product_id}" \
+ "[0x102752AE],0,0,0,{$$platform_product_id}" \
+ "[0x1028315F],0,0,0,{$$platform_product_id}" \
+ "[0x20022E6D],0,0,0,{$$platform_product_id}" \
+ "[0x20032DE7],0,0,0,{$$platform_product_id}" \
+ " "
diff --git a/mkspecs/features/symbian/localize_deployment.prf b/mkspecs/features/symbian/localize_deployment.prf
new file mode 100644
index 0000000000..26a254b6be
--- /dev/null
+++ b/mkspecs/features/symbian/localize_deployment.prf
@@ -0,0 +1,109 @@
+SYMBIAN_LANG.af = 34 #Afrikaans
+SYMBIAN_LANG.sq = 35 #Albanian
+SYMBIAN_LANG.am = 36 #Amharic
+SYMBIAN_LANG.ar = 37 #Arabic
+SYMBIAN_LANG.hy = 38 #Armenian
+SYMBIAN_LANG.eu = 102 #Basque
+SYMBIAN_LANG.bn = 41 #Bengali
+SYMBIAN_LANG.bg = 42 #Bulgarian
+SYMBIAN_LANG.my = 43 #Burmese
+SYMBIAN_LANG.be = 40 #Byelorussian
+SYMBIAN_LANG.ca = 44 #Catalan
+SYMBIAN_LANG.zh = 31 #Chinese
+SYMBIAN_LANG.hr = 45 #Croatian
+SYMBIAN_LANG.cs = 25 #Czech
+SYMBIAN_LANG.da = 07 #Danish
+SYMBIAN_LANG.nl = 18 #Dutch
+SYMBIAN_LANG.en = 01 #English(UK)
+SYMBIAN_LANG.et = 49 #Estonian
+SYMBIAN_LANG.fi = 09 #Finnish
+SYMBIAN_LANG.fr = 02 #French
+SYMBIAN_LANG.gd = 52 #Gaelic
+SYMBIAN_LANG.gl = 103 #Galician
+SYMBIAN_LANG.ka = 53 #Georgian
+SYMBIAN_LANG.de = 03 #German
+SYMBIAN_LANG.el = 54 #Greek
+SYMBIAN_LANG.gu = 56 #Gujarati
+SYMBIAN_LANG.he = 57 #Hebrew
+SYMBIAN_LANG.hi = 58 #Hindi
+SYMBIAN_LANG.hu = 17 #Hungarian
+SYMBIAN_LANG.is = 15 #Icelandic
+SYMBIAN_LANG.id = 59 #Indonesian
+SYMBIAN_LANG.ga = 60 #Irish
+SYMBIAN_LANG.it = 05 #Italian
+SYMBIAN_LANG.ja = 32 #Japanese
+SYMBIAN_LANG.kn = 62 #Kannada
+SYMBIAN_LANG.kk = 63 #Kazakh
+SYMBIAN_LANG.ko = 65 #Korean
+SYMBIAN_LANG.lo = 66 #Laothian
+SYMBIAN_LANG.lv = 67 #Latvian
+SYMBIAN_LANG.lt = 68 #Lithuanian
+SYMBIAN_LANG.mk = 69 #Macedonian
+SYMBIAN_LANG.ms = 70 #Malay
+SYMBIAN_LANG.ml = 71 #Malayalam
+SYMBIAN_LANG.mr = 72 #Marathi
+SYMBIAN_LANG.mo = 73 #Moldavian
+SYMBIAN_LANG.mn = 74 #Mongolian
+SYMBIAN_LANG.nb = 08 #Norwegian
+SYMBIAN_LANG.nn = 75 #Nynorsk
+SYMBIAN_LANG.fa = 50 #Persian
+SYMBIAN_LANG.pl = 27 #Polish
+SYMBIAN_LANG.pt = 13 #Portuguese
+SYMBIAN_LANG.pa = 77 #Punjabi
+SYMBIAN_LANG.ro = 78 #Romanian
+SYMBIAN_LANG.ru = 16 #Russian
+SYMBIAN_LANG.sr = 79 #Serbian
+SYMBIAN_LANG.si = 80 #Singhalese
+SYMBIAN_LANG.sk = 26 #Slovak
+SYMBIAN_LANG.sl = 28 #Slovenian
+SYMBIAN_LANG.so = 81 #Somali
+SYMBIAN_LANG.st = 101 #South Sotho/Sesotho
+SYMBIAN_LANG.es = 04 #Spanish
+SYMBIAN_LANG.sw = 84 #Swahili
+SYMBIAN_LANG.sv = 06 #Swedish
+SYMBIAN_LANG.tl = 39 #Tagalog
+SYMBIAN_LANG.ta = 87 #Tamil
+SYMBIAN_LANG.te = 88 #Telugu
+SYMBIAN_LANG.th = 33 #Thai
+SYMBIAN_LANG.bo = 89 #Tibetan
+SYMBIAN_LANG.ti = 90 #Tigrinya
+SYMBIAN_LANG.tr = 14 #Turkish
+SYMBIAN_LANG.tk = 92 #Turkmen
+SYMBIAN_LANG.uk = 93 #Ukrainian
+SYMBIAN_LANG.ur = 94 #Urdu
+SYMBIAN_LANG.vi = 96 #Vietnamese
+SYMBIAN_LANG.cy = 97 #Welsh
+SYMBIAN_LANG.zu = 98 #Zulu
+
+# Regional dialects
+SYMBIAN_LANG.en_US = 10 #American English
+SYMBIAN_LANG.fr_BE = 21 #Belgian French
+SYMBIAN_LANG.pt_BR = 76 #Brazilian Portuguese
+SYMBIAN_LANG.en_CA = 46 #Canadian English
+SYMBIAN_LANG.fr_CA = 51 #Canadian French
+SYMBIAN_LANG.el_CY = 55 #Cyprus Greek
+SYMBIAN_LANG.tr_CY = 91 #Cyprus Turkish
+SYMBIAN_LANG.en_TW = 157 #English as appropriate for use in Taiwan
+SYMBIAN_LANG.en_HK = 158 #English as appropriate for use in Hong Kong
+SYMBIAN_LANG.en_CN = 159 #English as appropriate for use in the Peoples Republic of China
+SYMBIAN_LANG.en_JP = 160 #English as appropriate for use in Japan
+SYMBIAN_LANG.en_TH = 161 #English as appropriate for use in Thailand
+SYMBIAN_LANG.sv_FI = 85 #Finland Swedish
+SYMBIAN_LANG.zh_HK = 30 #HongKong Chinese
+SYMBIAN_LANG.es_419 = 83 #Latin American Spanish
+SYMBIAN_LANG.en_ZA = 48 #South African English
+SYMBIAN_LANG.fr_CH = 11 #Swiss French
+SYMBIAN_LANG.de_CH = 12 #Swiss German
+SYMBIAN_LANG.it_CH = 61 #Swiss Italian
+SYMBIAN_LANG.zh_TW = 29 #Taiwan Chinese
+
+isEmpty(SYMBIAN_MATCHED_LANGUAGES) {
+ matchSymbianLanguages()
+}
+
+!isEmpty(SYMBIAN_MATCHED_TRANSLATIONS) {
+ # Generate dependencies to .ts files for pkg files
+ template_pkg_target.depends += $$SYMBIAN_MATCHED_TRANSLATIONS
+ installer_pkg_target.depends += $$SYMBIAN_MATCHED_TRANSLATIONS
+ stub_pkg_target.depends += $$SYMBIAN_MATCHED_TRANSLATIONS
+}
diff --git a/mkspecs/features/symbian/qt.prf b/mkspecs/features/symbian/qt.prf
index b5d3d98002..c8f97aa439 100644
--- a/mkspecs/features/symbian/qt.prf
+++ b/mkspecs/features/symbian/qt.prf
@@ -25,9 +25,10 @@ INCLUDEPATH = $$PREPEND_INCLUDEPATH $$INCLUDEPATH
# Note: Qt libs package with full capabilities has UID3 of 0x2001E61C,
# while self-signed version typically has temporary UID3 of 0xE001E61C.
contains(CONFIG, qt):!contains(TARGET.UID3, 0x2001E61C):!contains(TARGET.UID3, 0xE001E61C):isEmpty(QT_LIBINFIX) {
+ qt_pkg_name = Qt
pkg_depends_qt += \
"; Default dependency to Qt libraries" \
- "(0x2001E61C), $${QT_MAJOR_VERSION}, $${QT_MINOR_VERSION}, $${QT_PATCH_VERSION}, {\"Qt\"}"
+ "(0x2001E61C), $${QT_MAJOR_VERSION}, $${QT_MINOR_VERSION}, $${QT_PATCH_VERSION}, {$$addLanguageDependentPkgItem(qt_pkg_name)}"
# Projects linking to webkit need dependency to webkit
contains(QT, webkit): {
@@ -38,9 +39,10 @@ contains(CONFIG, qt):!contains(TARGET.UID3, 0x2001E61C):!contains(TARGET.UID3, 0
QT_WEBKIT_PATCH_VERSION = $${QT_PATCH_VERSION}
}
+ webkit_pkg_name = QtWebKit
pkg_depends_webkit += \
"; Dependency to Qt Webkit" \
- "(0x200267C2), $${QT_WEBKIT_MAJOR_VERSION}, $${QT_WEBKIT_MINOR_VERSION}, $${QT_WEBKIT_PATCH_VERSION}, {\"QtWebKit\"}"
+ "(0x200267C2), $${QT_WEBKIT_MAJOR_VERSION}, $${QT_WEBKIT_MINOR_VERSION}, $${QT_WEBKIT_PATCH_VERSION}, {$$addLanguageDependentPkgItem(webkit_pkg_name)}"
} else {
default_deployment.pkg_prerules -= pkg_depends_webkit
}
diff --git a/mkspecs/features/symbian/sis_targets.prf b/mkspecs/features/symbian/sis_targets.prf
index e838e10d3a..024378b020 100644
--- a/mkspecs/features/symbian/sis_targets.prf
+++ b/mkspecs/features/symbian/sis_targets.prf
@@ -12,6 +12,17 @@ else:!equals(DEPLOYMENT, default_deployment) {
equals(GENERATE_SIS_TARGETS, true) {
baseTarget = $$symbianRemoveSpecialCharacters($$basename(TARGET))
+ template_pkg_target.target = $${baseTarget}_template.pkg
+ template_pkg_target.depends += $$_PRO_FILE_
+ template_pkg_target.commands = $(MAKE) -f $(MAKEFILE) qmake
+ installer_pkg_target.target = $${baseTarget}_installer.pkg
+ installer_pkg_target.depends += $$_PRO_FILE_
+ installer_pkg_target.commands = $(MAKE) -f $(MAKEFILE) qmake
+ stub_pkg_target.target = $${baseTarget}_stub.pkg
+ stub_pkg_target.depends += $$_PRO_FILE_
+ stub_pkg_target.commands = $(MAKE) -f $(MAKEFILE) qmake
+ QMAKE_EXTRA_TARGETS += template_pkg_target installer_pkg_target stub_pkg_target
+
symbian-abld|symbian-sbsv2 {
symbian-sbsv2 {
@@ -22,38 +33,34 @@ equals(GENERATE_SIS_TARGETS, true) {
make_cache_name = .make.cache
sis_target.target = sis
- sis_target.commands = $(if $(wildcard $${baseTarget}_template.pkg), \
- $(if $(wildcard $$make_cache_name), \
- $(MAKE) -f $(MAKEFILE) ok_sis MAKEFILES=$$make_cache_name \
+ sis_target.commands = $(if $(wildcard $$make_cache_name), \
+ $(MAKE) -f $(MAKEFILE) ok_sis MAKEFILES=$$make_cache_name \
+ , \
+ $(if $(QT_SIS_TARGET), \
+ $(MAKE) -f $(MAKEFILE) ok_sis \
, \
- $(if $(QT_SIS_TARGET), \
- $(MAKE) -f $(MAKEFILE) ok_sis \
- , \
- $(MAKE) -f $(MAKEFILE) fail_sis_nocache \
- ) \
+ $(MAKE) -f $(MAKEFILE) fail_sis_nocache \
) \
- , \
- $(MAKE) -f $(MAKEFILE) fail_sis_nopkg \
)
+ sis_target.depends += $${baseTarget}_template.pkg
+
ok_sis_target.target = ok_sis
ok_sis_target.commands = createpackage $$CONVERT_GCCE_PARAM $(QT_SIS_OPTIONS) $${baseTarget}_template.pkg \
$(QT_SIS_TARGET) $(QT_SIS_CERTIFICATE) $(QT_SIS_KEY) $(QT_SIS_PASSPHRASE)
unsigned_sis_target.target = unsigned_sis
- unsigned_sis_target.commands = $(if $(wildcard $${baseTarget}_template.pkg), \
- $(if $(wildcard $$make_cache_name), \
- $(MAKE) -f $(MAKEFILE) ok_unsigned_sis MAKEFILES=$$make_cache_name \
- , \
- $(if $(QT_SIS_TARGET), \
- $(MAKE) -f $(MAKEFILE) ok_unsigned_sis \
+ unsigned_sis_target.commands = $(if $(wildcard $$make_cache_name), \
+ $(MAKE) -f $(MAKEFILE) ok_unsigned_sis MAKEFILES=$$make_cache_name \
, \
- $(MAKE) -f $(MAKEFILE) fail_sis_nocache \
- ) \
- ) \
- , \
- $(MAKE) -f $(MAKEFILE) fail_sis_nopkg \
- )
+ $(if $(QT_SIS_TARGET), \
+ $(MAKE) -f $(MAKEFILE) ok_unsigned_sis \
+ , \
+ $(MAKE) -f $(MAKEFILE) fail_sis_nocache \
+ ) \
+ )
+
+ unsigned_sis_target.depends += $${baseTarget}_template.pkg
ok_unsigned_sis_target.target = ok_unsigned_sis
ok_unsigned_sis_target.commands = createpackage $$CONVERT_GCCE_PARAM $(QT_SIS_OPTIONS) -o $${baseTarget}_template.pkg $(QT_SIS_TARGET)
@@ -61,50 +68,41 @@ equals(GENERATE_SIS_TARGETS, true) {
target_sis_target.target = $${baseTarget}.sis
target_sis_target.commands = $(MAKE) -f $(MAKEFILE) sis
+ # The installer_sis target has dependency to sis target, so it will regenerate sis package.
+ # To create smart installer wrapper for for an existing sis package, use ok_installer_sis target directly.
installer_sis_target.target = installer_sis
- installer_sis_target.commands = $(if $(wildcard $${baseTarget}_installer.pkg), \
- $(MAKE) -f $(MAKEFILE) ok_installer_sis \
- , \
- $(MAKE) -f $(MAKEFILE) fail_sis_nopkg \
- )
- installer_sis_target.depends = sis
+ installer_sis_target.commands = $(MAKE) -f $(MAKEFILE) ok_installer_sis
+ installer_sis_target.depends = $${baseTarget}_installer.pkg sis
ok_installer_sis_target.target = ok_installer_sis
ok_installer_sis_target.commands = createpackage $(QT_SIS_OPTIONS) $${baseTarget}_installer.pkg - \
$(QT_SIS_CERTIFICATE) $(QT_SIS_KEY) $(QT_SIS_PASSPHRASE)
+ ok_installer_sis_target.depends = $${baseTarget}_installer.pkg
unsigned_installer_sis_target.target = unsigned_installer_sis
- unsigned_installer_sis_target.commands = $(if $(wildcard $${baseTarget}_installer.pkg), \
- $(MAKE) -f $(MAKEFILE) ok_unsigned_installer_sis \
- , \
- $(MAKE) -f $(MAKEFILE) fail_sis_nopkg \
- )
- unsigned_installer_sis_target.depends = unsigned_sis
+ unsigned_installer_sis_target.commands = $(MAKE) -f $(MAKEFILE) ok_unsigned_installer_sis
+ unsigned_installer_sis_target.depends = $${baseTarget}_installer.pkg unsigned_sis
ok_unsigned_installer_sis_target.target = ok_unsigned_installer_sis
ok_unsigned_installer_sis_target.commands = createpackage $(QT_SIS_OPTIONS) -o $${baseTarget}_installer.pkg
-
- fail_sis_nopkg_target.target = fail_sis_nopkg
- fail_sis_nopkg_target.commands = "$(error PKG file does not exist, 'sis' and 'installer_sis' target are only supported for executables or projects with DEPLOYMENT statement)"
+ ok_unsigned_installer_sis_target.depends = $${baseTarget}_installer.pkg
fail_sis_nocache_target.target = fail_sis_nocache
fail_sis_nocache_target.commands = "$(error Project has to be built or QT_SIS_TARGET environment variable has to be set before calling 'SIS' target)"
stub_sis_target.target = stub_sis
- stub_sis_target.commands = $(if $(wildcard $${baseTarget}_template.pkg), \
- $(if $(wildcard $$make_cache_name), \
- $(MAKE) -f $(MAKEFILE) ok_stub_sis MAKEFILES=$$make_cache_name \
+ stub_sis_target.commands = $(if $(wildcard $$make_cache_name), \
+ $(MAKE) -f $(MAKEFILE) ok_stub_sis MAKEFILES=$$make_cache_name \
+ , \
+ $(if $(QT_SIS_TARGET), \
+ $(MAKE) -f $(MAKEFILE) ok_stub_sis \
, \
- $(if $(QT_SIS_TARGET), \
- $(MAKE) -f $(MAKEFILE) ok_stub_sis \
- , \
- $(MAKE) -f $(MAKEFILE) fail_sis_nocache \
- ) \
+ $(MAKE) -f $(MAKEFILE) fail_sis_nocache \
) \
- , \
- $(MAKE) -f $(MAKEFILE) fail_sis_nopkg \
)
+ stub_sis_target.depends += $${baseTarget}_stub.pkg
+
ok_stub_sis_target.target = ok_stub_sis
ok_stub_sis_target.commands = createpackage -s $(QT_SIS_OPTIONS) $${baseTarget}_stub.pkg \
$(QT_SIS_TARGET) $(QT_SIS_CERTIFICATE) $(QT_SIS_KEY) $(QT_SIS_PASSPHRASE)
@@ -118,7 +116,6 @@ equals(GENERATE_SIS_TARGETS, true) {
ok_installer_sis_target \
unsigned_installer_sis_target \
ok_unsigned_installer_sis_target \
- fail_sis_nopkg_target \
fail_sis_nocache_target \
stub_sis_target \
ok_stub_sis_target
@@ -154,23 +151,27 @@ equals(GENERATE_SIS_TARGETS, true) {
sis_target.target = sis
sis_target.commands = $$QMAKE_CREATEPACKAGE $(QT_SIS_OPTIONS) $${baseTarget}_template.pkg \
- $(QT_SIS_CERTIFICATE) $(QT_SIS_KEY) $(QT_SIS_PASSPHRASE)
- sis_target.depends = first
+ sis_target.depends = first $${baseTarget}_template.pkg
unsigned_sis_target.target = unsigned_sis
unsigned_sis_target.commands = $$QMAKE_CREATEPACKAGE $(QT_SIS_OPTIONS) -o $${baseTarget}_template.pkg
- unsigned_sis_target.depends = first
+ unsigned_sis_target.depends = first $${baseTarget}_template.pkg
target_sis_target.target = $${sis_destdir}/$${baseTarget}.sis
target_sis_target.commands = $(MAKE) -f $(MAKEFILE) sis
installer_sis_target.target = installer_sis
- installer_sis_target.commands = $$QMAKE_CREATEPACKAGE $(QT_SIS_OPTIONS) $${baseTarget}_installer.pkg - \
+ installer_sis_target.commands = $(MAKE) -f $(MAKEFILE) ok_installer_sis
+ installer_sis_target.depends = $${baseTarget}_installer.pkg sis
+
+ ok_installer_sis_target.target = ok_installer_sis
+ ok_installer_sis_target.commands = $$QMAKE_CREATEPACKAGE $(QT_SIS_OPTIONS) $${baseTarget}_installer.pkg - \
$(QT_SIS_CERTIFICATE) $(QT_SIS_KEY) $(QT_SIS_PASSPHRASE)
- installer_sis_target.depends = sis
+ ok_installer_sis_target.depends = $${baseTarget}_installer.pkg
unsigned_installer_sis_target.target = unsigned_installer_sis
unsigned_installer_sis_target.commands = $$QMAKE_CREATEPACKAGE $(QT_SIS_OPTIONS) -o $${baseTarget}_installer.pkg
- unsigned_installer_sis_target.depends = unsigned_sis
+ unsigned_installer_sis_target.depends = $${baseTarget}_installer.pkg unsigned_sis
!isEmpty(sis_destdir):!equals(sis_destdir, "."):!equals(sis_destdir, "./") {
sis_target.commands += && $$QMAKE_MOVE $${baseTarget}.sis $$sis_destdir
@@ -183,6 +184,7 @@ equals(GENERATE_SIS_TARGETS, true) {
unsigned_sis_target \
target_sis_target \
installer_sis_target \
+ ok_installer_sis_target \
unsigned_installer_sis_target
QMAKE_DISTCLEAN += $${sis_destdir}/$${baseTarget}.sis
diff --git a/mkspecs/features/symbian/stl.prf b/mkspecs/features/symbian/stl.prf
index 65d4b93af2..1fd5e16e32 100644
--- a/mkspecs/features/symbian/stl.prf
+++ b/mkspecs/features/symbian/stl.prf
@@ -12,7 +12,7 @@ INCLUDEPATH += $$OS_LAYER_STDCPP_SYSTEMINCLUDE
# Remove mkspecs/common/symbian/stl-off from beginning of includepath
# in order to use new and delete operators from STL
-INCLUDEPATH -= $$[QT_INSTALL_PREFIX]/mkspecs/common/symbian/stl-off
+INCLUDEPATH -= $$[QT_INSTALL_DATA]/mkspecs/common/symbian/stl-off
# libstdcppv5 is preferred over libstdcpp as it has/uses the throwing version of operator new
# STDCPP turns on standard C++ new behaviour (ie. throwing new)
diff --git a/mkspecs/linux-g++-maemo/qmake.conf b/mkspecs/linux-g++-maemo/qmake.conf
index a977e7ac42..0178f14d3e 100644
--- a/mkspecs/linux-g++-maemo/qmake.conf
+++ b/mkspecs/linux-g++-maemo/qmake.conf
@@ -21,10 +21,7 @@ QMAKE_LIBDIR_X11 = /usr/lib
QMAKE_LIBDIR_OPENGL = /usr/lib
# We still need to generate debug symbols in release mode to put into the *-dbg packages:
-QMAKE_CFLAGS_RELEASE += -g -fno-omit-frame-pointer -fno-optimize-sibling-calls
-QMAKE_CXXFLAGS_RELEASE += -g -fno-omit-frame-pointer -fno-optimize-sibling-calls
-
-# Work round PowerVR SGX 1.3 driver bug with glScissor & FBOs:
-DEFINES += QT_GL_NO_SCISSOR_TEST
+QMAKE_CFLAGS_RELEASE += -g -Wno-psabi
+QMAKE_CXXFLAGS_RELEASE += -g -Wno-psabi
load(qt_config)
diff --git a/qmake/Makefile.unix b/qmake/Makefile.unix
index 8d56fc8d0f..d941dc4a15 100644
--- a/qmake/Makefile.unix
+++ b/qmake/Makefile.unix
@@ -68,7 +68,7 @@ CPPFLAGS = -I. -Igenerators -Igenerators/unix -Igenerators/win32 -Igenerators/ma
-I$(BUILD_PATH)/src/corelib/global -I$(BUILD_PATH)/src/corelib/xml \
-I$(SOURCE_PATH)/tools/shared \
-DQT_NO_PCRE \
- -DQT_BUILD_QMAKE -DQT_BOOTSTRAPPED \
+ -DQT_BUILD_QMAKE -DQT_BOOTSTRAPPED -DQLIBRARYINFO_EPOCROOT \
-DQT_NO_TEXTCODEC -DQT_NO_UNICODETABLES -DQT_NO_COMPONENT -DQT_NO_STL \
-DQT_NO_COMPRESS -I$(QMAKESPEC) -DHAVE_QCONFIG_CPP -DQT_NO_THREAD -DQT_NO_QOBJECT \
-DQT_NO_GEOM_VARIANT $(OPENSOURCE_CXXFLAGS)
diff --git a/qmake/Makefile.win32 b/qmake/Makefile.win32
index 4d0121c02b..c04bcb29a3 100644
--- a/qmake/Makefile.win32
+++ b/qmake/Makefile.win32
@@ -40,7 +40,8 @@ CFLAGS_BARE = -c -Fo./ \
-I$(SOURCE_PATH)\tools\shared \
-DQT_NO_TEXTCODEC -DQT_NO_UNICODETABLES -DQT_LITE_COMPONENT -DQT_NODLL -DQT_NO_STL \
-DQT_NO_COMPRESS -DUNICODE -DHAVE_QCONFIG_CPP -DQT_BUILD_QMAKE -DQT_NO_THREAD \
- -DQT_NO_QOBJECT -DQT_NO_GEOM_VARIANT -DQT_NO_DATASTREAM -DQT_NO_PCRE -DQT_BOOTSTRAPPED
+ -DQT_NO_QOBJECT -DQT_NO_GEOM_VARIANT -DQT_NO_DATASTREAM -DQT_NO_PCRE -DQT_BOOTSTRAPPED \
+ -DQLIBRARYINFO_EPOCROOT
CFLAGS = -Yuqmake_pch.h -FIqmake_pch.h -Fpqmake_pch.pch $(CFLAGS_BARE) $(CFLAGS)
CXXFLAGS_BARE = $(CFLAGS_BARE)
diff --git a/qmake/Makefile.win32-g++ b/qmake/Makefile.win32-g++
index f313f9ef0b..29fbd0af7a 100644
--- a/qmake/Makefile.win32-g++
+++ b/qmake/Makefile.win32-g++
@@ -25,7 +25,7 @@ CFLAGS = -c -o$@ -O \
-DQT_NO_TEXTCODEC -DQT_NO_UNICODETABLES -DQT_LITE_COMPONENT -DQT_NO_PCRE \
-DQT_NODLL -DQT_NO_STL -DQT_NO_COMPRESS -DUNICODE -DHAVE_QCONFIG_CPP \
-DQT_BUILD_QMAKE -DQT_NO_THREAD -DQT_NO_QOBJECT -DQT_NO_GEOM_VARIANT -DQT_NO_DATASTREAM \
- -DQT_BOOTSTRAPPED
+ -DQT_BOOTSTRAPPED -DQLIBRARYINFO_EPOCROOT
CXXFLAGS = $(CFLAGS)
LFLAGS = -static-libgcc -static-libstdc++ -s
LIBS = -lole32 -luuid
diff --git a/qmake/Makefile.win32-g++-sh b/qmake/Makefile.win32-g++-sh
index af5428877d..9c7942c3ca 100644
--- a/qmake/Makefile.win32-g++-sh
+++ b/qmake/Makefile.win32-g++-sh
@@ -25,7 +25,7 @@ CFLAGS = -c -o$@ -O \
-DQT_NO_TEXTCODEC -DQT_NO_UNICODETABLES -DQT_LITE_COMPONENT -DQT_NO_PCRE \
-DQT_NODLL -DQT_NO_STL -DQT_NO_COMPRESS -DUNICODE -DHAVE_QCONFIG_CPP \
-DQT_BUILD_QMAKE -DQT_NO_THREAD -DQT_NO_QOBJECT -DQT_NO_GEOM_VARIANT -DQT_NO_DATASTREAM \
- -DQT_BOOTSTRAPPED
+ -DQT_BOOTSTRAPPED -DQLIBRARYINFO_EPOCROOT
CXXFLAGS = $(CFLAGS)
LFLAGS = -static-libgcc -static-libstdc++ -s
LIBS = -lole32 -luuid
diff --git a/qmake/generators/symbian/initprojectdeploy_symbian.cpp b/qmake/generators/symbian/initprojectdeploy_symbian.cpp
index 22a4a82b9f..81236d40c2 100644
--- a/qmake/generators/symbian/initprojectdeploy_symbian.cpp
+++ b/qmake/generators/symbian/initprojectdeploy_symbian.cpp
@@ -47,7 +47,7 @@
#include <qdebug.h>
// Included from tools/shared
-#include <symbian/epocroot.h>
+#include <symbian/epocroot_p.h>
#define SYSBIN_DIR "/sys/bin"
#define HW_Z_DIR "epoc32/data/z"
@@ -75,7 +75,7 @@ static bool isPlugin(const QFileInfo& info, const QString& devicePath)
&& (devicePath.size() < 8
|| (0 != devicePath.compare(QLatin1String(SYSBIN_DIR), Qt::CaseInsensitive)
&& 0 != devicePath.mid(1).compare(QLatin1String(":" SYSBIN_DIR), Qt::CaseInsensitive)
- && 0 != devicePath.compare(epocRoot() + QLatin1String(HW_Z_DIR SYSBIN_DIR))))) {
+ && 0 != devicePath.compare(qt_epocRoot() + QLatin1String(HW_Z_DIR SYSBIN_DIR))))) {
return true;
} else {
return false;
@@ -182,7 +182,7 @@ void initProjectDeploySymbian(QMakeProject* project,
QString deploymentDrive;
if (0 == platform.compare(QLatin1String(ROM_DEPLOYMENT_PLATFORM))) {
- deploymentDrive = epocRoot() + HW_Z_DIR;
+ deploymentDrive = qt_epocRoot() + HW_Z_DIR;
} else {
deploymentDrive = targetPathHasDriveLetter ? targetPath.left(2) : QLatin1String("c:");
}
@@ -225,9 +225,9 @@ void initProjectDeploySymbian(QMakeProject* project,
} else {
if (0 == platform.compare(QLatin1String(EMULATOR_DEPLOYMENT_PLATFORM))) {
if (devicePathHasDriveLetter) {
- devicePath = epocRoot() + "epoc32/winscw/" + devicePath.remove(1, 1);
+ devicePath = qt_epocRoot() + "epoc32/winscw/" + devicePath.remove(1, 1);
} else {
- devicePath = epocRoot() + "epoc32/winscw/c" + devicePath;
+ devicePath = qt_epocRoot() + "epoc32/winscw/c" + devicePath;
}
} else {
if (devicePathHasDriveLetter
@@ -278,7 +278,7 @@ void initProjectDeploySymbian(QMakeProject* project,
// Executables and libraries are deployed to \sys\bin
QFileInfo targetPath;
if (epocBuild)
- targetPath.setFile(epocRoot() + "epoc32/release/" + platform + "/" + build + "/");
+ targetPath.setFile(qt_epocRoot() + "epoc32/release/" + platform + "/" + build + "/");
else
targetPath.setFile(info.path() + QDir::separator());
if(devicePathHasDriveLetter) {
diff --git a/qmake/generators/symbian/symbian_makefile.h b/qmake/generators/symbian/symbian_makefile.h
index 94f01453c7..28a6206103 100644
--- a/qmake/generators/symbian/symbian_makefile.h
+++ b/qmake/generators/symbian/symbian_makefile.h
@@ -79,18 +79,18 @@ public:
}
}
+ SymbianLocalizationList symbianLocalizationList;
+ parseTsFiles(&symbianLocalizationList);
+
if (generatePkg) {
- generatePkgFile(iconFile, false);
+ generatePkgFile(iconFile, false, symbianLocalizationList);
}
- // Get the application translations and convert to symbian OS lang code, i.e. decical number
- QStringList symbianLangCodes = symbianLangCodesFromTsFiles();
-
if (targetType == TypeExe) {
if (!this->project->values("CONFIG").contains("no_icon", Qt::CaseInsensitive)) {
writeRegRssFile(userRssRules);
writeRssFile(numberOfIcons, iconFile);
- writeLocFile(symbianLangCodes);
+ writeLocFile(symbianLocalizationList);
}
}
diff --git a/qmake/generators/symbian/symbiancommon.cpp b/qmake/generators/symbian/symbiancommon.cpp
index 9d4f27e124..602bcc29df 100644
--- a/qmake/generators/symbian/symbiancommon.cpp
+++ b/qmake/generators/symbian/symbiancommon.cpp
@@ -41,9 +41,10 @@
#include "symbiancommon.h"
#include <qdebug.h>
+#include <qxmlstream.h>
// Included from tools/shared
-#include <symbian/epocroot.h>
+#include <symbian/epocroot_p.h>
#define RESOURCE_DIRECTORY_RESOURCE "\\\\resource\\\\apps\\\\"
@@ -151,7 +152,9 @@ QString romPath(const QString& path)
return QLatin1String("z:") + path;
}
-void SymbianCommonGenerator::generatePkgFile(const QString &iconFile, bool epocBuild)
+void SymbianCommonGenerator::generatePkgFile(const QString &iconFile,
+ bool epocBuild,
+ const SymbianLocalizationList &symbianLocalizationList)
{
QMakeProject *project = generator->project;
QString pkgFilename = Option::output_dir + QLatin1Char('/') +
@@ -270,8 +273,17 @@ void SymbianCommonGenerator::generatePkgFile(const QString &iconFile, bool epocB
// Apply some defaults if specific data does not exist in PKG pre-rules
if (languageRules.isEmpty()) {
- // language, (*** hardcoded to english atm, should be parsed from TRANSLATIONS)
- languageRules << "; Language\n&EN\n\n";
+ if (symbianLocalizationList.isEmpty()) {
+ languageRules << "; Language\n&EN\n\n";
+ } else {
+ QStringList langCodes;
+ SymbianLocalizationListIterator iter(symbianLocalizationList);
+ while (iter.hasNext()) {
+ const SymbianLocalization &loc = iter.next();
+ langCodes << loc.symbianLanguageCode;
+ }
+ languageRules << QString("; Languages\n&%1\n\n").arg(langCodes.join(","));
+ }
} else if (headerRules.isEmpty()) {
// In case user defines langs, he must take care also about SIS header
fprintf(stderr, "Warning: If language is defined with DEPLOYMENT pkg_prerules, also the SIS header must be defined\n");
@@ -320,12 +332,14 @@ void SymbianCommonGenerator::generatePkgFile(const QString &iconFile, bool epocB
// Package header
QString sisHeader = "; SIS header: name, uid, version\n#{\"%1\"},(%2),%3\n\n";
- QString visualTarget = project->values("DEPLOYMENT.display_name").join(" ");
- if (visualTarget.isEmpty())
- visualTarget = generator->escapeFilePath(project->first("TARGET"));
- visualTarget = removePathSeparators(visualTarget);
- QString wrapperTarget = visualTarget + " installer";
+ QString defaultVisualTarget = project->values("DEPLOYMENT.display_name").join(" ");
+ if (defaultVisualTarget.isEmpty())
+ defaultVisualTarget = generator->escapeFilePath(project->first("TARGET"));
+ defaultVisualTarget = removePathSeparators(defaultVisualTarget);
+
+ QString visualTarget = generatePkgNameForHeader(symbianLocalizationList, defaultVisualTarget, false);
+ QString wrapperTarget = generatePkgNameForHeader(symbianLocalizationList, defaultVisualTarget, true);
if (installerSisHeader.startsWith("0x", Qt::CaseInsensitive)) {
tw << sisHeader.arg(wrapperTarget).arg(installerSisHeader).arg(applicationVersion);
@@ -344,7 +358,13 @@ void SymbianCommonGenerator::generatePkgFile(const QString &iconFile, bool epocB
// Vendor name
if (!containsStartWithItem('%', vendorRules)) {
- vendorRules << "; Default localized vendor name\n%{\"Vendor\"}\n\n";
+ QString vendorStr = QLatin1String("\"Vendor\",");
+ QString locVendors = vendorStr;
+ for (int i = 1; i < symbianLocalizationList.size(); i++) {
+ locVendors.append(vendorStr);
+ }
+ locVendors.chop(1);
+ vendorRules << QString("; Default localized vendor name\n%{%1}\n\n").arg(locVendors);
}
if (!containsStartWithItem(':', vendorRules)) {
vendorRules << "; Default unique vendor name\n:\"Vendor\"\n\n";
@@ -385,12 +405,19 @@ void SymbianCommonGenerator::generatePkgFile(const QString &iconFile, bool epocB
t << manufacturerStr << endl;
}
+ // ### FIXME: remove epocBuild check once makefile based mkspecs support localized resource generation
+ if (epocBuild && symbianLocalizationList.size()) {
+ // Add localized resources to DEPLOYMENT if default resource deployment is done
+ addLocalizedResourcesToDeployment("default_resource_deployment.sources", symbianLocalizationList);
+ addLocalizedResourcesToDeployment("default_reg_deployment.sources", symbianLocalizationList);
+ }
+
// deploy files specified by DEPLOYMENT variable
QString remoteTestPath;
QString zDir;
remoteTestPath = QString("!:\\private\\%1").arg(privateDirUid);
if (epocBuild)
- zDir = epocRoot() + QLatin1String("epoc32/data/z");
+ zDir = qt_epocRoot() + QLatin1String("epoc32/data/z");
DeploymentList depList;
initProjectDeploySymbian(project, depList, remoteTestPath, true, epocBuild, "$(PLATFORM)", "$(TARGET)", generatedDirs, generatedFiles);
@@ -633,12 +660,9 @@ void SymbianCommonGenerator::writeRssFile(QString &numberOfIcons, QString &iconF
}
}
-void SymbianCommonGenerator::writeLocFile(QStringList &symbianLangCodes)
+void SymbianCommonGenerator::writeLocFile(const SymbianLocalizationList &symbianLocalizationList)
{
- QString filename(fixedTarget);
- if (!Option::output_dir.isEmpty())
- filename = Option::output_dir + '/' + filename;
- filename.append(".loc");
+ QString filename = generateLocFileName();
QFile ft(filename);
if (ft.open(QIODevice::WriteOnly)) {
generatedFiles << ft.fileName();
@@ -658,11 +682,22 @@ void SymbianCommonGenerator::writeLocFile(QStringList &symbianLangCodes)
t << "#ifdef LANGUAGE_SC" << endl;
t << "#define STRING_r_short_caption \"" << displayName << "\"" << endl;
t << "#define STRING_r_caption \"" << displayName << "\"" << endl;
- foreach(QString lang, symbianLangCodes) {
- t << "#elif defined LANGUAGE_" << lang << endl;
- t << "#define STRING_r_short_caption \"" << displayName << "\"" << endl;
- t << "#define STRING_r_caption \"" << displayName << "\"" << endl;
+
+ SymbianLocalizationListIterator iter(symbianLocalizationList);
+ while (iter.hasNext()) {
+ const SymbianLocalization &loc = iter.next();
+ QString shortCaption = loc.shortCaption;
+ QString longCaption = loc.longCaption;
+ if (shortCaption.isEmpty())
+ shortCaption = displayName;
+ if (longCaption.isEmpty())
+ longCaption = displayName;
+
+ t << "#elif defined LANGUAGE_" << loc.symbianLanguageCode << endl;
+ t << "#define STRING_r_short_caption \"" << shortCaption << "\"" << endl;
+ t << "#define STRING_r_caption \"" << longCaption << "\"" << endl;
}
+
t << "#else" << endl;
t << "#define STRING_r_short_caption \"" << displayName << "\"" << endl;
t << "#define STRING_r_caption \"" << displayName << "\"" << endl;
@@ -803,195 +838,49 @@ void SymbianCommonGenerator::writeCustomDefFile()
}
}
-QStringList SymbianCommonGenerator::symbianLangCodesFromTsFiles()
+void SymbianCommonGenerator::parseTsFiles(SymbianLocalizationList *symbianLocalizationList)
{
- QStringList tsfiles;
- QStringList symbianLangCodes;
- tsfiles << generator->project->values("TRANSLATIONS");
+ if (!generator->project->isActiveConfig("localize_deployment")) {
+ return;
+ }
- fillQt2S60LangMapTable();
+ QStringList symbianTsFiles;
- foreach(QString file, tsfiles) {
- int extIndex = file.lastIndexOf(".");
- int langIndex = file.lastIndexOf("_", (extIndex - file.length()));
- langIndex += 1;
- QString qtlang = file.mid(langIndex, extIndex - langIndex);
- QString s60lang = qt2S60LangMapTable.value(qtlang, QString("SC"));
+ symbianTsFiles << generator->project->values("SYMBIAN_MATCHED_TRANSLATIONS");
- if (!symbianLangCodes.contains(s60lang) && s60lang != "SC")
- symbianLangCodes += s60lang;
- }
+ if (!symbianTsFiles.isEmpty()) {
+ fillQt2SymbianLocalizationList(symbianLocalizationList);
- return symbianLangCodes;
+ QMutableListIterator<SymbianLocalization> iter(*symbianLocalizationList);
+ while (iter.hasNext()) {
+ SymbianLocalization &loc = iter.next();
+ static QString matchStrTemplate = QLatin1String(".*_%1\\.ts");
+ QString matchStr = matchStrTemplate.arg(loc.qtLanguageCode);
+
+ foreach (QString file, symbianTsFiles) {
+ QRegExp matcher(matchStr);
+ if (matcher.exactMatch(file) && parseTsContent(file, &loc))
+ break;
+ }
+ }
+ }
}
-void SymbianCommonGenerator::fillQt2S60LangMapTable()
+void SymbianCommonGenerator::fillQt2SymbianLocalizationList(SymbianLocalizationList *symbianLocalizationList)
{
- qt2S60LangMapTable.reserve(170); // 165 items at time of writing.
- qt2S60LangMapTable.insert("ab", "SC"); //Abkhazian //
- qt2S60LangMapTable.insert("om", "SC"); //Afan //
- qt2S60LangMapTable.insert("aa", "SC"); //Afar //
- qt2S60LangMapTable.insert("af", "34"); //Afrikaans //Afrikaans
- qt2S60LangMapTable.insert("sq", "35"); //Albanian //Albanian
- qt2S60LangMapTable.insert("am", "36"); //Amharic //Amharic
- qt2S60LangMapTable.insert("ar", "37"); //Arabic //Arabic
- qt2S60LangMapTable.insert("hy", "38"); //Armenian //Armenian
- qt2S60LangMapTable.insert("as", "SC"); //Assamese //
- qt2S60LangMapTable.insert("ay", "SC"); //Aymara //
- qt2S60LangMapTable.insert("az", "SC"); //Azerbaijani //
- qt2S60LangMapTable.insert("ba", "SC"); //Bashkir //
- qt2S60LangMapTable.insert("eu", "SC"); //Basque //
- qt2S60LangMapTable.insert("bn", "41"); //Bengali //Bengali
- qt2S60LangMapTable.insert("dz", "SC"); //Bhutani //
- qt2S60LangMapTable.insert("bh", "SC"); //Bihari //
- qt2S60LangMapTable.insert("bi", "SC"); //Bislama //
- qt2S60LangMapTable.insert("br", "SC"); //Breton //
- qt2S60LangMapTable.insert("bg", "42"); //Bulgarian //Bulgarian
- qt2S60LangMapTable.insert("my", "43"); //Burmese //Burmese
- qt2S60LangMapTable.insert("be", "40"); //Byelorussian //Belarussian
- qt2S60LangMapTable.insert("km", "SC"); //Cambodian //
- qt2S60LangMapTable.insert("ca", "44"); //Catalan //Catalan
- qt2S60LangMapTable.insert("zh", "SC"); //Chinese //
- qt2S60LangMapTable.insert("co", "SC"); //Corsican //
- qt2S60LangMapTable.insert("hr", "45"); //Croatian //Croatian
- qt2S60LangMapTable.insert("cs", "25"); //Czech //Czech
- qt2S60LangMapTable.insert("da", "07"); //Danish //Danish
- qt2S60LangMapTable.insert("nl", "18"); //Dutch //Dutch
- qt2S60LangMapTable.insert("en", "01"); //English //English(UK)
- qt2S60LangMapTable.insert("eo", "SC"); //Esperanto //
- qt2S60LangMapTable.insert("et", "49"); //Estonian //Estonian
- qt2S60LangMapTable.insert("fo", "SC"); //Faroese //
- qt2S60LangMapTable.insert("fj", "SC"); //Fiji //
- qt2S60LangMapTable.insert("fi", "09"); //Finnish //Finnish
- qt2S60LangMapTable.insert("fr", "02"); //French //French
- qt2S60LangMapTable.insert("fy", "SC"); //Frisian //
- qt2S60LangMapTable.insert("gd", "52"); //Gaelic //Gaelic
- qt2S60LangMapTable.insert("gl", "SC"); //Galician //
- qt2S60LangMapTable.insert("ka", "53"); //Georgian //Georgian
- qt2S60LangMapTable.insert("de", "03"); //German //German
- qt2S60LangMapTable.insert("el", "54"); //Greek //Greek
- qt2S60LangMapTable.insert("kl", "SC"); //Greenlandic //
- qt2S60LangMapTable.insert("gn", "SC"); //Guarani //
- qt2S60LangMapTable.insert("gu", "56"); //Gujarati //Gujarati
- qt2S60LangMapTable.insert("ha", "SC"); //Hausa //
- qt2S60LangMapTable.insert("he", "57"); //Hebrew //Hebrew
- qt2S60LangMapTable.insert("hi", "58"); //Hindi //Hindi
- qt2S60LangMapTable.insert("hu", "17"); //Hungarian //Hungarian
- qt2S60LangMapTable.insert("is", "15"); //Icelandic //Icelandic
- qt2S60LangMapTable.insert("id", "59"); //Indonesian //Indonesian
- qt2S60LangMapTable.insert("ia", "SC"); //Interlingua //
- qt2S60LangMapTable.insert("ie", "SC"); //Interlingue //
- qt2S60LangMapTable.insert("iu", "SC"); //Inuktitut //
- qt2S60LangMapTable.insert("ik", "SC"); //Inupiak //
- qt2S60LangMapTable.insert("ga", "60"); //Irish //Irish
- qt2S60LangMapTable.insert("it", "05"); //Italian //Italian
- qt2S60LangMapTable.insert("ja", "32"); //Japanese //Japanese
- qt2S60LangMapTable.insert("jv", "SC"); //Javanese //
- qt2S60LangMapTable.insert("kn", "62"); //Kannada //Kannada
- qt2S60LangMapTable.insert("ks", "SC"); //Kashmiri //
- qt2S60LangMapTable.insert("kk", "63"); //Kazakh //Kazakh
- qt2S60LangMapTable.insert("rw", "SC"); //Kinyarwanda //
- qt2S60LangMapTable.insert("ky", "SC"); //Kirghiz //
- qt2S60LangMapTable.insert("ko", "65"); //Korean //Korean
- qt2S60LangMapTable.insert("ku", "SC"); //Kurdish //
- qt2S60LangMapTable.insert("rn", "SC"); //Kurundi //
- qt2S60LangMapTable.insert("lo", "66"); //Laothian //Laothian
- qt2S60LangMapTable.insert("la", "SC"); //Latin //
- qt2S60LangMapTable.insert("lv", "67"); //Latvian //Latvian
- qt2S60LangMapTable.insert("ln", "SC"); //Lingala //
- qt2S60LangMapTable.insert("lt", "68"); //Lithuanian //Lithuanian
- qt2S60LangMapTable.insert("mk", "69"); //Macedonian //Macedonian
- qt2S60LangMapTable.insert("mg", "SC"); //Malagasy //
- qt2S60LangMapTable.insert("ms", "70"); //Malay //Malay
- qt2S60LangMapTable.insert("ml", "71"); //Malayalam //Malayalam
- qt2S60LangMapTable.insert("mt", "SC"); //Maltese //
- qt2S60LangMapTable.insert("mi", "SC"); //Maori //
- qt2S60LangMapTable.insert("mr", "72"); //Marathi //Marathi
- qt2S60LangMapTable.insert("mo", "73"); //Moldavian //Moldovian
- qt2S60LangMapTable.insert("mn", "74"); //Mongolian //Mongolian
- qt2S60LangMapTable.insert("na", "SC"); //Nauru //
- qt2S60LangMapTable.insert("ne", "SC"); //Nepali //
- qt2S60LangMapTable.insert("nb", "08"); //Norwegian //Norwegian
- qt2S60LangMapTable.insert("oc", "SC"); //Occitan //
- qt2S60LangMapTable.insert("or", "SC"); //Oriya //
- qt2S60LangMapTable.insert("ps", "SC"); //Pashto //
- qt2S60LangMapTable.insert("fa", "SC"); //Persian //
- qt2S60LangMapTable.insert("pl", "27"); //Polish //Polish
- qt2S60LangMapTable.insert("pt", "13"); //Portuguese //Portuguese
- qt2S60LangMapTable.insert("pa", "77"); //Punjabi //Punjabi
- qt2S60LangMapTable.insert("qu", "SC"); //Quechua //
- qt2S60LangMapTable.insert("rm", "SC"); //RhaetoRomance //
- qt2S60LangMapTable.insert("ro", "78"); //Romanian //Romanian
- qt2S60LangMapTable.insert("ru", "16"); //Russian //Russian
- qt2S60LangMapTable.insert("sm", "SC"); //Samoan //
- qt2S60LangMapTable.insert("sg", "SC"); //Sangho //
- qt2S60LangMapTable.insert("sa", "SC"); //Sanskrit //
- qt2S60LangMapTable.insert("sr", "79"); //Serbian //Serbian
- qt2S60LangMapTable.insert("sh", "SC"); //SerboCroatian //
- qt2S60LangMapTable.insert("st", "SC"); //Sesotho //
- qt2S60LangMapTable.insert("tn", "SC"); //Setswana //
- qt2S60LangMapTable.insert("sn", "SC"); //Shona //
- qt2S60LangMapTable.insert("sd", "SC"); //Sindhi //
- qt2S60LangMapTable.insert("si", "80"); //Singhalese //Sinhalese
- qt2S60LangMapTable.insert("ss", "SC"); //Siswati //
- qt2S60LangMapTable.insert("sk", "26"); //Slovak //Slovak
- qt2S60LangMapTable.insert("sl", "28"); //Slovenian //Slovenian
- qt2S60LangMapTable.insert("so", "81"); //Somali //Somali
- qt2S60LangMapTable.insert("es", "04"); //Spanish //Spanish
- qt2S60LangMapTable.insert("su", "SC"); //Sundanese //
- qt2S60LangMapTable.insert("sw", "84"); //Swahili //Swahili
- qt2S60LangMapTable.insert("sv", "06"); //Swedish //Swedish
- qt2S60LangMapTable.insert("tl", "39"); //Tagalog //Tagalog
- qt2S60LangMapTable.insert("tg", "SC"); //Tajik //
- qt2S60LangMapTable.insert("ta", "87"); //Tamil //Tamil
- qt2S60LangMapTable.insert("tt", "SC"); //Tatar //
- qt2S60LangMapTable.insert("te", "88"); //Telugu //Telugu
- qt2S60LangMapTable.insert("th", "33"); //Thai //Thai
- qt2S60LangMapTable.insert("bo", "89"); //Tibetan //Tibetan
- qt2S60LangMapTable.insert("ti", "90"); //Tigrinya //Tigrinya
- qt2S60LangMapTable.insert("to", "SC"); //Tonga //
- qt2S60LangMapTable.insert("ts", "SC"); //Tsonga //
- qt2S60LangMapTable.insert("tr", "14"); //Turkish //Turkish
- qt2S60LangMapTable.insert("tk", "92"); //Turkmen //Turkmen
- qt2S60LangMapTable.insert("tw", "SC"); //Twi //
- qt2S60LangMapTable.insert("ug", "SC"); //Uigur //
- qt2S60LangMapTable.insert("uk", "93"); //Ukrainian //Ukrainian
- qt2S60LangMapTable.insert("ur", "94"); //Urdu //Urdu
- qt2S60LangMapTable.insert("uz", "SC"); //Uzbek //
- qt2S60LangMapTable.insert("vi", "96"); //Vietnamese //Vietnamese
- qt2S60LangMapTable.insert("vo", "SC"); //Volapuk //
- qt2S60LangMapTable.insert("cy", "97"); //Welsh //Welsh
- qt2S60LangMapTable.insert("wo", "SC"); //Wolof //
- qt2S60LangMapTable.insert("xh", "SC"); //Xhosa //
- qt2S60LangMapTable.insert("yi", "SC"); //Yiddish //
- qt2S60LangMapTable.insert("yo", "SC"); //Yoruba //
- qt2S60LangMapTable.insert("za", "SC"); //Zhuang //
- qt2S60LangMapTable.insert("zu", "98"); //Zulu //Zulu
- qt2S60LangMapTable.insert("nn", "75"); //Nynorsk //NorwegianNynorsk
- qt2S60LangMapTable.insert("bs", "SC"); //Bosnian //
- qt2S60LangMapTable.insert("dv", "SC"); //Divehi //
- qt2S60LangMapTable.insert("gv", "SC"); //Manx //
- qt2S60LangMapTable.insert("kw", "SC"); //Cornish //
- qt2S60LangMapTable.insert("ak", "SC"); //Akan //
- qt2S60LangMapTable.insert("kok", "SC"); //Konkani //
- qt2S60LangMapTable.insert("gaa", "SC"); //Ga //
- qt2S60LangMapTable.insert("ig", "SC"); //Igbo //
- qt2S60LangMapTable.insert("kam", "SC"); //Kamba //
- qt2S60LangMapTable.insert("syr", "SC"); //Syriac //
- qt2S60LangMapTable.insert("byn", "SC"); //Blin //
- qt2S60LangMapTable.insert("gez", "SC"); //Geez //
- qt2S60LangMapTable.insert("kfo", "SC"); //Koro //
- qt2S60LangMapTable.insert("sid", "SC"); //Sidamo //
- qt2S60LangMapTable.insert("cch", "SC"); //Atsam //
- qt2S60LangMapTable.insert("tig", "SC"); //Tigre //
- qt2S60LangMapTable.insert("kaj", "SC"); //Jju //
- qt2S60LangMapTable.insert("fur", "SC"); //Friulian //
- qt2S60LangMapTable.insert("ve", "SC"); //Venda //
- qt2S60LangMapTable.insert("ee", "SC"); //Ewe //
- qt2S60LangMapTable.insert("wa", "SC"); //Walamo //
- qt2S60LangMapTable.insert("haw", "SC"); //Hawaiian //
- qt2S60LangMapTable.insert("kcg", "SC"); //Tyap //
- qt2S60LangMapTable.insert("ny", "SC"); //Chewa //
+ static QString symbianCodePrefix = QLatin1String("SYMBIAN_LANG.");
+
+ QStringList symbianLanguages = generator->project->values("SYMBIAN_MATCHED_LANGUAGES");
+
+ foreach (QString qtCode, symbianLanguages) {
+ SymbianLocalization newLoc;
+ QString symbianCodeVariable = symbianCodePrefix + qtCode;
+ newLoc.symbianLanguageCode = generator->project->first(symbianCodeVariable);
+ if (!newLoc.symbianLanguageCode.isEmpty()) {
+ newLoc.qtLanguageCode = qtCode;
+ symbianLocalizationList->append(newLoc);
+ }
+ }
}
void SymbianCommonGenerator::parsePreRules(const QString &deploymentVariable,
@@ -1057,3 +946,183 @@ void SymbianCommonGenerator::parsePostRules(const QString &deploymentVariable,
}
}
+bool SymbianCommonGenerator::parseTsContent(const QString &tsFilename, SymbianLocalization *loc)
+{
+ bool retval = true;
+ QMakeProject *project = generator->project;
+ QFile tsFile(tsFilename);
+
+ if (tsFile.exists()) {
+ if (tsFile.open(QIODevice::ReadOnly)) {
+ static QString applicationCaptionsContext = QLatin1String("QtApplicationCaptions");
+ static QString pkgNameContext = QLatin1String("QtPackageNames");
+ static QString tsElement = QLatin1String("TS");
+ static QString contextElement = QLatin1String("context");
+ static QString nameElement = QLatin1String("name");
+ static QString messageElement = QLatin1String("message");
+ static QString sourceElement = QLatin1String("source");
+ static QString translationElement = QLatin1String("translation");
+ static QString shortCaptionId = QLatin1String("Application short caption");
+ static QString longCaptionId = QLatin1String("Application long caption");
+ static QString pkgDisplayNameId = QLatin1String("Package name");
+ static QString installerPkgDisplayNameId = QLatin1String("Smart installer package name");
+ static QString languageAttribute = QLatin1String("language");
+ static QChar underscoreChar = QLatin1Char('_');
+
+ enum CurrentContext {
+ ContextUnknown,
+ ContextUninteresting,
+ ContextInteresting
+ };
+
+ QXmlStreamReader xml(&tsFile);
+
+ while (xml.name() != tsElement)
+ xml.readNextStartElement();
+
+ while (xml.readNextStartElement()) {
+ if (xml.name() == contextElement) {
+ CurrentContext currentContext = ContextUnknown;
+ while (xml.readNextStartElement()) {
+ if (currentContext == ContextUnknown) {
+ // Expect name element before message elements
+ if (xml.name() == nameElement) {
+ QString nameText = xml.readElementText();
+ if (nameText == applicationCaptionsContext || nameText == pkgNameContext) {
+ currentContext = ContextInteresting;
+ } else {
+ currentContext = ContextUninteresting;
+ }
+ } else {
+ xml.skipCurrentElement();
+ }
+ } else if (currentContext == ContextInteresting) {
+ if (xml.name() == messageElement) {
+ QString source;
+ QString translation;
+ while (xml.readNextStartElement()) {
+ if (xml.name() == sourceElement) {
+ source = xml.readElementText();
+ } else if (xml.name() == translationElement) {
+ translation = xml.readElementText();
+ } else {
+ xml.skipCurrentElement();
+ }
+ }
+
+ if (source == shortCaptionId) {
+ if (loc->shortCaption.isEmpty()) {
+ loc->shortCaption = translation;
+ } else {
+ fprintf(stderr, "Warning: Duplicate application short caption defined in (%s).\n",
+ qPrintable(tsFilename));
+ }
+ } else if (source == longCaptionId) {
+ if (loc->longCaption.isEmpty()) {
+ loc->longCaption = translation;
+ } else {
+ fprintf(stderr, "Warning: Duplicate application long caption defined in (%s).\n",
+ qPrintable(tsFilename));
+ }
+ } else if (source == pkgDisplayNameId) {
+ if (loc->pkgDisplayName.isEmpty()) {
+ loc->pkgDisplayName = translation;
+ } else {
+ fprintf(stderr, "Warning: Duplicate package display name defined in (%s).\n",
+ qPrintable(tsFilename));
+ }
+ } else if (source == installerPkgDisplayNameId) {
+ if (loc->installerPkgDisplayName.isEmpty()) {
+ loc->installerPkgDisplayName = translation;
+ } else {
+ fprintf(stderr, "Warning: Duplicate smart installer package display name defined in (%s).\n",
+ qPrintable(tsFilename));
+ }
+ }
+ } else {
+ xml.skipCurrentElement();
+ }
+ } else {
+ xml.skipCurrentElement();
+ }
+ }
+ } else {
+ xml.skipCurrentElement();
+ }
+ }
+ if (xml.hasError()) {
+ retval = false;
+ fprintf(stderr, "ERROR: Encountered error \"%s\" when parsing ts file (%s).\n",
+ qPrintable(xml.errorString()), qPrintable(tsFilename));
+ }
+ } else {
+ retval = false;
+ fprintf(stderr, "Warning: Could not open ts file (%s).\n", qPrintable(tsFilename));
+ }
+ } else {
+ retval = false;
+ fprintf(stderr, "Warning: ts file does not exist: (%s), unable to parse it.\n",
+ qPrintable(tsFilename));
+ }
+
+ return retval;
+}
+
+QString SymbianCommonGenerator::generatePkgNameForHeader(const SymbianLocalizationList &symbianLocalizationList,
+ const QString &defaultName,
+ bool isForSmartInstaller)
+{
+ QStringList allNames;
+ QString noTranslation = defaultName;
+
+ if (isForSmartInstaller)
+ noTranslation += QLatin1String(" installer");
+
+ SymbianLocalizationListIterator iter(symbianLocalizationList);
+ while (iter.hasNext()) {
+ const SymbianLocalization &loc = iter.next();
+ QString currentName;
+ if (isForSmartInstaller) {
+ currentName = loc.installerPkgDisplayName;
+ } else {
+ currentName = loc.pkgDisplayName;
+ }
+
+ if (currentName.isEmpty())
+ currentName = noTranslation;
+
+ allNames << currentName;
+ }
+
+ if (!allNames.size())
+ allNames << noTranslation;
+
+ return allNames.join("\",\"");
+
+}
+
+void SymbianCommonGenerator::addLocalizedResourcesToDeployment(const QString &deploymentFilesVar,
+ const SymbianLocalizationList &symbianLocalizationList)
+{
+ QStringList locResources;
+ foreach (QString defaultResource, generator->project->values(deploymentFilesVar)) {
+ if (defaultResource.endsWith(".rsc")) {
+ defaultResource.chop(2);
+ SymbianLocalizationListIterator iter(symbianLocalizationList);
+ while (iter.hasNext()) {
+ const SymbianLocalization &loc = iter.next();
+ locResources << QString(defaultResource + loc.symbianLanguageCode);
+ }
+ }
+ }
+ generator->project->values(deploymentFilesVar) << locResources;
+}
+
+QString SymbianCommonGenerator::generateLocFileName()
+{
+ QString fileName(fixedTarget);
+ if (!Option::output_dir.isEmpty())
+ fileName = Option::output_dir + QLatin1Char('/') + fileName;
+ fileName.append(".loc");
+ return fileName;
+}
diff --git a/qmake/generators/symbian/symbiancommon.h b/qmake/generators/symbian/symbiancommon.h
index 80f2079e0d..1db5890448 100644
--- a/qmake/generators/symbian/symbiancommon.h
+++ b/qmake/generators/symbian/symbiancommon.h
@@ -48,6 +48,20 @@
#define PRINT_FILE_CREATE_ERROR(filename) fprintf(stderr, "Error: Could not create '%s'\n", qPrintable(filename));
+class SymbianLocalization
+{
+public:
+ QString qtLanguageCode;
+ QString symbianLanguageCode;
+ QString shortCaption;
+ QString longCaption;
+ QString pkgDisplayName;
+ QString installerPkgDisplayName;
+};
+
+typedef QList<SymbianLocalization> SymbianLocalizationList;
+typedef QListIterator<SymbianLocalization> SymbianLocalizationListIterator;
+
class SymbianCommonGenerator
{
public:
@@ -59,6 +73,7 @@ public:
TypeSubdirs
};
+
SymbianCommonGenerator(MakefileGenerator *generator);
virtual void init();
@@ -68,7 +83,9 @@ protected:
QString removePathSeparators(QString &file);
void removeSpecialCharacters(QString& str);
void removeEpocSpecialCharacters(QString& str);
- void generatePkgFile(const QString &iconFile, bool epocBuild);
+ void generatePkgFile(const QString &iconFile,
+ bool epocBuild,
+ const SymbianLocalizationList &symbianLocalizationList);
bool containsStartWithItem(const QChar &c, const QStringList& src);
void writeRegRssFile(QMap<QString, QStringList> &useritems);
@@ -76,15 +93,15 @@ protected:
const QString &listTag,
const QString &listItem);
void writeRssFile(QString &numberOfIcons, QString &iconfile);
- void writeLocFile(QStringList &symbianLangCodes);
+ void writeLocFile(const SymbianLocalizationList &symbianLocalizationList);
void readRssRules(QString &numberOfIcons,
QString &iconFile,
QMap<QString, QStringList> &userRssRules);
void writeCustomDefFile();
- QStringList symbianLangCodesFromTsFiles();
- void fillQt2S60LangMapTable();
+ void parseTsFiles(SymbianLocalizationList *symbianLocalizationList);
+ void fillQt2SymbianLocalizationList(SymbianLocalizationList *symbianLocalizationList);
void parsePreRules(const QString &deploymentVariable,
const QString &variableSuffix,
@@ -95,7 +112,13 @@ protected:
void parsePostRules(const QString &deploymentVariable,
const QString &variableSuffix,
QStringList *rawRuleList);
-
+ bool parseTsContent(const QString &tsFilename, SymbianLocalization *loc);
+ QString generatePkgNameForHeader(const SymbianLocalizationList &symbianLocalizationList,
+ const QString &defaultName,
+ bool isForSmartInstaller);
+ void addLocalizedResourcesToDeployment(const QString &deploymentFilesVar,
+ const SymbianLocalizationList &symbianLocalizationList);
+ QString generateLocFileName();
protected:
MakefileGenerator *generator;
@@ -106,8 +129,6 @@ protected:
QString privateDirUid;
QString uid3;
TargetType targetType;
-
- QHash<QString, QString> qt2S60LangMapTable;
};
#endif // SYMBIANCOMMON_H
diff --git a/qmake/generators/symbian/symmake.cpp b/qmake/generators/symbian/symmake.cpp
index 0b0033a79b..7bebd562ac 100644
--- a/qmake/generators/symbian/symmake.cpp
+++ b/qmake/generators/symbian/symmake.cpp
@@ -50,7 +50,7 @@
#include <qdebug.h>
// Included from tools/shared
-#include <symbian/epocroot.h>
+#include <symbian/epocroot_p.h>
#define RESOURCE_DIRECTORY_MMP "/resource/apps"
#define REGISTRATION_RESOURCE_DIRECTORY_HW "/private/10003a3f/import/apps"
@@ -87,10 +87,10 @@ QString SymbianMakefileGenerator::fixPathForMmp(const QString& origPath, const Q
{
static QString epocRootStr;
if (epocRootStr.isEmpty()) {
- epocRootStr = epocRoot();
+ epocRootStr = qt_epocRoot();
QFileInfo efi(epocRootStr);
if (!efi.exists() || epocRootStr.isEmpty()) {
- fprintf(stderr, "Unable to resolve epocRoot '%s' to real dir on current drive, defaulting to '/' for mmp paths\n", qPrintable(epocRoot()));
+ fprintf(stderr, "Unable to resolve epocRoot '%s' to real dir on current drive, defaulting to '/' for mmp paths\n", qPrintable(qt_epocRoot()));
epocRootStr = "/";
} else {
epocRootStr = efi.absoluteFilePath();
@@ -122,7 +122,7 @@ QString SymbianMakefileGenerator::absolutizePath(const QString& origPath)
// Prepend epocroot to any paths beginning with "/epoc32/"
QString resultPath = QDir::fromNativeSeparators(origPath);
if (resultPath.startsWith("/epoc32/", Qt::CaseInsensitive))
- resultPath = QDir::fromNativeSeparators(epocRoot()) + resultPath.mid(1);
+ resultPath = QDir::fromNativeSeparators(qt_epocRoot()) + resultPath.mid(1);
QFileInfo fi(fileInfo(resultPath));
@@ -187,8 +187,8 @@ bool SymbianMakefileGenerator::writeMakefile(QTextStream &t)
QMap<QString, QStringList> userRssRules;
readRssRules(numberOfIcons, iconFile, userRssRules);
- // Get the application translations and convert to symbian OS lang code, i.e. decical number
- QStringList symbianLangCodes = symbianLangCodesFromTsFiles();
+ SymbianLocalizationList symbianLocalizationList;
+ parseTsFiles(&symbianLocalizationList);
// Generate pkg files if there are any actual files to deploy
bool generatePkg = false;
@@ -205,7 +205,7 @@ bool SymbianMakefileGenerator::writeMakefile(QTextStream &t)
}
if (generatePkg) {
- generatePkgFile(iconFile, true);
+ generatePkgFile(iconFile, true, symbianLocalizationList);
}
writeBldInfContent(t, generatePkg, iconFile);
@@ -242,13 +242,13 @@ bool SymbianMakefileGenerator::writeMakefile(QTextStream &t)
writeMkFile(wrapperFileName, false);
QString absoluteMmpFileName = Option::output_dir + QLatin1Char('/') + mmpFileName;
- writeMmpFile(absoluteMmpFileName, symbianLangCodes);
+ writeMmpFile(absoluteMmpFileName, symbianLocalizationList);
if (targetType == TypeExe) {
if (!project->isActiveConfig("no_icon")) {
writeRegRssFile(userRssRules);
writeRssFile(numberOfIcons, iconFile);
- writeLocFile(symbianLangCodes);
+ writeLocFile(symbianLocalizationList);
}
}
@@ -489,7 +489,7 @@ void SymbianMakefileGenerator::writeMmpFileHeader(QTextStream &t)
t << "// ==============================================================================" << endl << endl;
}
-void SymbianMakefileGenerator::writeMmpFile(QString &filename, QStringList &symbianLangCodes)
+void SymbianMakefileGenerator::writeMmpFile(QString &filename, const SymbianLocalizationList &symbianLocalizationList)
{
QFile ft(filename);
if (ft.open(QIODevice::WriteOnly)) {
@@ -501,7 +501,7 @@ void SymbianMakefileGenerator::writeMmpFile(QString &filename, QStringList &symb
writeMmpFileTargetPart(t);
- writeMmpFileResourcePart(t, symbianLangCodes);
+ writeMmpFileResourcePart(t, symbianLocalizationList);
writeMmpFileMacrosPart(t);
@@ -643,7 +643,7 @@ void SymbianMakefileGenerator::writeMmpFileTargetPart(QTextStream& t)
Application registration resource files should be installed to the
\private\10003a3f\import\apps directory.
*/
-void SymbianMakefileGenerator::writeMmpFileResourcePart(QTextStream& t, QStringList &symbianLangCodes)
+void SymbianMakefileGenerator::writeMmpFileResourcePart(QTextStream& t, const SymbianLocalizationList &symbianLocalizationList)
{
if ((targetType == TypeExe) &&
!project->isActiveConfig("no_icon")) {
@@ -653,8 +653,10 @@ void SymbianMakefileGenerator::writeMmpFileResourcePart(QTextStream& t, QStringL
t << "SOURCEPATH\t\t\t. " << endl;
t << "LANG SC "; // no endl
- foreach(QString lang, symbianLangCodes) {
- t << lang << " "; // no endl
+ SymbianLocalizationListIterator iter(symbianLocalizationList);
+ while (iter.hasNext()) {
+ const SymbianLocalization &loc = iter.next();
+ t << loc.symbianLanguageCode << " "; // no endl
}
t << endl;
t << MMP_START_RESOURCE "\t\t" << locTarget << endl;
@@ -717,7 +719,7 @@ void SymbianMakefileGenerator::writeMmpFileLibraryPart(QTextStream& t)
// Hacky way to find out what kind of library it is. Check the
// ARMV5 build directory for library type. We default to shared
// library, since that is more common.
- QString udebStaticLibLocation(epocRoot());
+ QString udebStaticLibLocation(qt_epocRoot());
QString urelStaticLibLocation(udebStaticLibLocation);
udebStaticLibLocation += QString("epoc32/release/armv5/udeb/%1.lib").arg(lib);
urelStaticLibLocation += QString("epoc32/release/armv5/urel/%1.lib").arg(lib);
@@ -1108,3 +1110,18 @@ void SymbianMakefileGenerator::generateDistcleanTargets(QTextStream& t)
t << "distclean: clean dodistclean" << endl;
t << endl;
}
+
+// Returns a string that can be used as a dependency to loc file on other targets
+QString SymbianMakefileGenerator::generateLocFileTarget(QTextStream& t, const QString& locCmd)
+{
+ QString locFile;
+ if (targetType == TypeExe && !project->isActiveConfig("no_icon")) {
+ locFile = Option::fixPathToLocalOS(generateLocFileName());
+ t << locFile << QLatin1String(": ") << project->values("SYMBIAN_MATCHED_TRANSLATIONS").join(" ") << endl;
+ t << locCmd << endl;
+ t << endl;
+ locFile += QLatin1Char(' ');
+ }
+
+ return locFile;
+} \ No newline at end of file
diff --git a/qmake/generators/symbian/symmake.h b/qmake/generators/symbian/symmake.h
index a1a8e887c1..aba11dea12 100644
--- a/qmake/generators/symbian/symmake.h
+++ b/qmake/generators/symbian/symmake.h
@@ -97,11 +97,11 @@ protected:
static bool removeDuplicatedStrings(QStringList& stringList);
void writeMmpFileHeader(QTextStream &t);
- void writeMmpFile(QString &filename, QStringList &symbianLangCodes);
+ void writeMmpFile(QString &filename, const SymbianLocalizationList &symbianLocalizationList);
void writeMmpFileMacrosPart(QTextStream& t);
void addMacro(QTextStream& t, const QString& value);
void writeMmpFileTargetPart(QTextStream& t);
- void writeMmpFileResourcePart(QTextStream& t, QStringList &symbianLangCodes);
+ void writeMmpFileResourcePart(QTextStream& t, const SymbianLocalizationList &symbianLocalizationList);
void writeMmpFileSystemIncludePart(QTextStream& t);
void writeMmpFileIncludePart(QTextStream& t);
void writeMmpFileLibraryPart(QTextStream& t);
@@ -131,6 +131,7 @@ protected:
const QString& itemSuffix);
void generateDistcleanTargets(QTextStream& t);
+ QString generateLocFileTarget(QTextStream& t, const QString& locCmd);
// Subclass implements
virtual void writeBldInfExtensionRulesPart(QTextStream& t, const QString &iconTargetFile) = 0;
diff --git a/qmake/generators/symbian/symmake_abld.cpp b/qmake/generators/symbian/symmake_abld.cpp
index f8951098a1..eb39d36170 100644
--- a/qmake/generators/symbian/symmake_abld.cpp
+++ b/qmake/generators/symbian/symmake_abld.cpp
@@ -49,7 +49,7 @@
#include <qdebug.h>
// Included from tools/shared
-#include <symbian/epocroot.h>
+#include <symbian/epocroot_p.h>
#define DO_NOTHING_TARGET "do_nothing"
#define CREATE_TEMPS_TARGET "create_temps"
@@ -184,16 +184,7 @@ void SymbianAbldMakefileGenerator::writeWrapperMakefile(QFile& wrapperFile, bool
QTextStream t(&wrapperFile);
- t << "# ==============================================================================" << endl;
- t << "# Generated by qmake (" << qmake_version() << ") (Qt " << QT_VERSION_STR << ") on: ";
- t << QDateTime::currentDateTime().toString() << endl;
- t << "# This file is generated by qmake and should not be modified by the" << endl;
- t << "# user." << endl;
- t << "# Name : " << wrapperFile.fileName() << endl;
- t << "# Description : Wrapper Makefile for calling Symbian build tools" << endl;
- t << "#" << endl;
- t << "# ==============================================================================" << "\n" << endl;
- t << endl;
+ MakefileGenerator::writeHeader(t);
t << "MAKEFILE = " << fileInfo(wrapperFile.fileName()).fileName() << endl;
t << "QMAKE = " << var("QMAKE_QMAKE") << endl;
@@ -267,12 +258,14 @@ void SymbianAbldMakefileGenerator::writeWrapperMakefile(QFile& wrapperFile, bool
t << "\tbldmake bldfiles" << endl;
t << endl;
- t << "debug: $(ABLD)" << endl;
+ QString locFileDep = generateLocFileTarget(t, qmakeCmd);
+
+ t << "debug: " << locFileDep << "$(ABLD)" << endl;
foreach(QString item, debugPlatforms) {
t << "\t$(ABLD)" << testClause << " build " << item << " udeb" << endl;
}
t << endl;
- t << "release: $(ABLD)" << endl;
+ t << "release: " << locFileDep << "$(ABLD)" << endl;
foreach(QString item, releasePlatforms) {
t << "\t$(ABLD)" << testClause << " build " << item << " urel" << endl;
}
@@ -280,12 +273,12 @@ void SymbianAbldMakefileGenerator::writeWrapperMakefile(QFile& wrapperFile, bool
// For more specific builds, targets are in this form: build-platform, e.g. release-armv5
foreach(QString item, debugPlatforms) {
- t << "debug-" << item << ": $(ABLD)" << endl;
+ t << "debug-" << item << ": " << locFileDep << "$(ABLD)" << endl;
t << "\t$(ABLD)" << testClause << " build " << item << " udeb" << endl;
}
foreach(QString item, releasePlatforms) {
- t << "release-" << item << ": $(ABLD)" << endl;
+ t << "release-" << item << ": " << locFileDep << "$(ABLD)" << endl;
t << "\t$(ABLD)" << testClause << " build " << item << " urel" << endl;
}
@@ -429,7 +422,7 @@ bool SymbianAbldMakefileGenerator::writeDeploymentTargets(QTextStream &t, bool i
else
t << WINSCW_DEPLOYMENT_TARGET ":" << endl;
- QString remoteTestPath = epocRoot()
+ QString remoteTestPath = qt_epocRoot()
+ QDir::toNativeSeparators(QLatin1String(isRom ? "epoc32/data/z/private/"
: "epoc32/winscw/c/private/"))
+ privateDirUid;
diff --git a/qmake/generators/symbian/symmake_sbsv2.cpp b/qmake/generators/symbian/symmake_sbsv2.cpp
index d650e083bc..c219f1d791 100644
--- a/qmake/generators/symbian/symmake_sbsv2.cpp
+++ b/qmake/generators/symbian/symmake_sbsv2.cpp
@@ -49,7 +49,7 @@
#include <qdebug.h>
// Included from tools/shared
-#include <symbian/epocroot.h>
+#include <symbian/epocroot_p.h>
SymbianSbsv2MakefileGenerator::SymbianSbsv2MakefileGenerator() : SymbianMakefileGenerator() { }
SymbianSbsv2MakefileGenerator::~SymbianSbsv2MakefileGenerator() { }
@@ -82,7 +82,7 @@ void SymbianSbsv2MakefileGenerator::exportFlm()
QDir sourceDir = QDir(QLibraryInfo::location(QLibraryInfo::PrefixPath) + FLM_SOURCE_DIR);
QFileInfoList sourceInfos = sourceDir.entryInfoList(QDir::Files);
- QDir destDir(epocRoot() + FLM_DEST_DIR);
+ QDir destDir(qt_epocRoot() + FLM_DEST_DIR);
if (!destDir.exists()) {
if (destDir.mkpath(destDir.absolutePath()))
generatedDirs << destDir.absolutePath();
@@ -324,16 +324,8 @@ void SymbianSbsv2MakefileGenerator::writeWrapperMakefile(QFile& wrapperFile, boo
QTextStream t(&wrapperFile);
- t << "# ==============================================================================" << endl;
- t << "# Generated by qmake (" << qmake_version() << ") (Qt " << QT_VERSION_STR << ") on: ";
- t << QDateTime::currentDateTime().toString() << endl;
- t << "# This file is generated by qmake and should not be modified by the" << endl;
- t << "# user." << endl;
- t << "# Name : " << wrapperFile.fileName() << endl;
- t << "# Description : Wrapper Makefile for calling Symbian build tools" << endl;
- t << "#" << endl;
- t << "# ==============================================================================" << "\n" << endl;
- t << endl;
+ MakefileGenerator::writeHeader(t);
+
t << "MAKEFILE = " << fileInfo(wrapperFile.fileName()).fileName() << endl;
t << "QMAKE = " << var("QMAKE_QMAKE") << endl;
t << "DEL_FILE = " << var("QMAKE_DEL_FILE") << endl;
@@ -385,9 +377,9 @@ void SymbianSbsv2MakefileGenerator::writeWrapperMakefile(QFile& wrapperFile, boo
t << qmakeCmd << endl;
t << endl;
- QString currentClause;
+ QString locFileDep = generateLocFileTarget(t, qmakeCmd);
- t << "debug: " << BLD_INF_FILENAME << endl;
+ t << "debug: " << locFileDep << BLD_INF_FILENAME << endl;
t << "\t$(SBS)";
foreach(QString clause, debugClauses) {
t << clause;
@@ -399,7 +391,7 @@ void SymbianSbsv2MakefileGenerator::writeWrapperMakefile(QFile& wrapperFile, boo
t << clause;
}
t << endl;
- t << "release: " << BLD_INF_FILENAME << endl;
+ t << "release: " << locFileDep << BLD_INF_FILENAME << endl;
t << "\t$(SBS)";
foreach(QString clause, releaseClauses) {
t << clause;
@@ -431,7 +423,7 @@ void SymbianSbsv2MakefileGenerator::writeWrapperMakefile(QFile& wrapperFile, boo
else // use generic arm clause
clause = configClause(item, debugBuild, defaultRvctCompilerVersion, genericArmClause);
- t << "debug-" << item << ": " << BLD_INF_FILENAME << endl;
+ t << "debug-" << item << ": " << locFileDep << BLD_INF_FILENAME << endl;
t << "\t$(SBS)" << clause << endl;
t << "clean-debug-" << item << ": " << BLD_INF_FILENAME << endl;
t << "\t$(SBS) reallyclean" << clause << endl;
@@ -444,7 +436,7 @@ void SymbianSbsv2MakefileGenerator::writeWrapperMakefile(QFile& wrapperFile, boo
else // use generic arm clause
clause = configClause(item, releaseBuild, defaultRvctCompilerVersion, genericArmClause);
- t << "release-" << item << ": " << BLD_INF_FILENAME << endl;
+ t << "release-" << item << ": " << locFileDep << BLD_INF_FILENAME << endl;
t << "\t$(SBS)" << clause << endl;
t << "clean-release-" << item << ": " << BLD_INF_FILENAME << endl;
t << "\t$(SBS) reallyclean" << clause << endl;
@@ -454,11 +446,11 @@ void SymbianSbsv2MakefileGenerator::writeWrapperMakefile(QFile& wrapperFile, boo
foreach(QString compilerVersion, allArmCompilerVersions) {
QString debugClause = configClause(item, debugBuild, compilerVersion, armClause);
QString releaseClause = configClause(item, releaseBuild, compilerVersion, armClause);
- t << "debug-" << item << "-" << compilerVersion << ": " << BLD_INF_FILENAME << endl;
+ t << "debug-" << item << "-" << compilerVersion << ": " << locFileDep << BLD_INF_FILENAME << endl;
t << "\t$(SBS)" << debugClause << endl;
t << "clean-debug-" << item << "-" << compilerVersion << ": " << BLD_INF_FILENAME << endl;
t << "\t$(SBS) reallyclean" << debugClause << endl;
- t << "release-" << item << "-" << compilerVersion << ": " << BLD_INF_FILENAME << endl;
+ t << "release-" << item << "-" << compilerVersion << ": " << locFileDep << BLD_INF_FILENAME << endl;
t << "\t$(SBS)" << releaseClause << endl;
t << "clean-release-" << item << "-" << compilerVersion << ": " << BLD_INF_FILENAME << endl;
t << "\t$(SBS) reallyclean" << releaseClause << endl;
@@ -629,7 +621,7 @@ void SymbianSbsv2MakefileGenerator::writeBldInfExtensionRulesPart(QTextStream& t
t << endl;
// Write deployment rules
- QString remoteTestPath = epocRoot() + QLatin1String("epoc32/winscw/c/private/") + privateDirUid;
+ QString remoteTestPath = qt_epocRoot() + QLatin1String("epoc32/winscw/c/private/") + privateDirUid;
DeploymentList depList;
//write emulator deployment
@@ -640,7 +632,7 @@ void SymbianSbsv2MakefileGenerator::writeBldInfExtensionRulesPart(QTextStream& t
t << "#endif" << endl;
//write ROM deployment
- remoteTestPath = epocRoot() + QLatin1String("epoc32/data/z/private/") + privateDirUid;
+ remoteTestPath = qt_epocRoot() + QLatin1String("epoc32/data/z/private/") + privateDirUid;
depList.clear();
initProjectDeploySymbian(project, depList, remoteTestPath, false, true,
QLatin1String(ROM_DEPLOYMENT_PLATFORM), QString(), generatedDirs, generatedFiles);
diff --git a/qmake/generators/win32/msbuild_objectmodel.cpp b/qmake/generators/win32/msbuild_objectmodel.cpp
index c963f46dae..3381d532e4 100644
--- a/qmake/generators/win32/msbuild_objectmodel.cpp
+++ b/qmake/generators/win32/msbuild_objectmodel.cpp
@@ -2507,7 +2507,7 @@ bool VCXFilter::addExtraCompiler(const VCXFilterFile &info)
// Output in info.additionalFile -----------
if (!CustomBuildTool.Description.isEmpty())
- CustomBuildTool.Description += " & ";
+ CustomBuildTool.Description += ", ";
CustomBuildTool.Description += cmd_name;
CustomBuildTool.CommandLine += VCToolBase::fixCommandLine(cmd.trimmed());
int space = cmd.indexOf(' ');
@@ -2908,26 +2908,43 @@ void XTreeNode::generateXML(XmlOutput &xml, XmlOutput &xmlFilter, const QString
if (children.size()) {
// Filter
+ QString tempFilterName;
ChildrenMap::ConstIterator it, end = children.constEnd();
if (!tagName.isEmpty()) {
+ tempFilterName.append(filter);
+ tempFilterName.append("\\");
+ tempFilterName.append(tagName);
+ xmlFilter << tag(_ItemGroup);
xmlFilter << tag("Filter")
- << attrTag("Include", tagName)
- << attrTagS("Extensions", "");
+ << attrTag("Include", tempFilterName)
+ << closetag();
+ xmlFilter << closetag();
}
// First round, do nested filters
for (it = children.constBegin(); it != end; ++it)
if ((*it)->children.size())
- (*it)->generateXML(xml, xmlFilter, it.key(), tool, filter);
+ {
+ if ( !tempFilterName.isEmpty() )
+ (*it)->generateXML(xml, xmlFilter, it.key(), tool, tempFilterName);
+ else
+ (*it)->generateXML(xml, xmlFilter, it.key(), tool, filter);
+ }
// Second round, do leafs
for (it = children.constBegin(); it != end; ++it)
if (!(*it)->children.size())
- (*it)->generateXML(xml, xmlFilter, it.key(), tool, filter);
-
- if (!tagName.isEmpty())
- xml << closetag("Filter");
+ {
+ if ( !tempFilterName.isEmpty() )
+ (*it)->generateXML(xml, xmlFilter, it.key(), tool, tempFilterName);
+ else
+ (*it)->generateXML(xml, xmlFilter, it.key(), tool, filter);
+ }
} else {
// Leaf
+ xml << tag(_ItemGroup);
+ xmlFilter << tag(_ItemGroup);
tool.outputFileConfigs(xml, xmlFilter, info, filter);
+ xmlFilter << closetag();
+ xml << closetag();
}
}
diff --git a/qmake/generators/win32/msvc_vcproj.cpp b/qmake/generators/win32/msvc_vcproj.cpp
index a8ff3067ca..6f27515ae2 100644
--- a/qmake/generators/win32/msvc_vcproj.cpp
+++ b/qmake/generators/win32/msvc_vcproj.cpp
@@ -67,7 +67,7 @@ QT_END_NAMESPACE
#ifdef Q_OS_WIN32
#include <qt_windows.h>
-#include <windows/registry.h>
+#include <windows/registry_p.h>
QT_BEGIN_NAMESPACE
@@ -119,7 +119,7 @@ DotNET which_dotnet_version()
int installed = 0;
int i = 0;
for(; dotNetCombo[i].version; ++i) {
- QString path = readRegistryKey(HKEY_LOCAL_MACHINE, dotNetCombo[i].regKey);
+ QString path = qt_readRegistryKey(HKEY_LOCAL_MACHINE, dotNetCombo[i].regKey);
if(!path.isEmpty()) {
++installed;
current_version = dotNetCombo[i].version;
@@ -136,7 +136,7 @@ DotNET which_dotnet_version()
i = installed = 0;
for(; dotNetCombo[i].version; ++i) {
- QString productPath = readRegistryKey(HKEY_LOCAL_MACHINE, dotNetCombo[i].regKey).toLower();
+ QString productPath = qt_readRegistryKey(HKEY_LOCAL_MACHINE, dotNetCombo[i].regKey).toLower();
if (productPath.isEmpty())
continue;
QStringList::iterator it;
diff --git a/qmake/project.cpp b/qmake/project.cpp
index fe08b7b39c..d967a63a18 100644
--- a/qmake/project.cpp
+++ b/qmake/project.cpp
@@ -64,7 +64,7 @@
#include <stdlib.h>
// Included from tools/shared
-#include <symbian/epocroot.h>
+#include <symbian/epocroot_p.h>
#ifdef Q_OS_WIN32
#define QT_POPEN _popen
@@ -1813,11 +1813,10 @@ QMakeProject::doProjectExpand(QString func, QList<QStringList> args_list,
for(int i = 0; i < args_list.size(); ++i)
args += args_list[i].join(QString(Option::field_sep));
- QString lfunc = func.toLower();
- if (!lfunc.isSharedWith(func))
+ ExpandFunc func_t = qmake_expandFunctions().value(func);
+ if (!func_t && (func_t = qmake_expandFunctions().value(func.toLower())))
warn_msg(WarnDeprecated, "%s:%d: Using uppercased builtin functions is deprecated.",
parser.file.toLatin1().constData(), parser.line_no);
- ExpandFunc func_t = qmake_expandFunctions().value(lfunc);
debug_msg(1, "Running project expand: %s(%s) [%d]",
func.toLatin1().constData(), args.join("::").toLatin1().constData(), func_t);
@@ -3118,7 +3117,7 @@ QStringList &QMakeProject::values(const QString &_var, QMap<QString, QStringList
false));
} else if (var == QLatin1String("EPOCROOT")) {
if (place[var].isEmpty())
- place[var] = QStringList(epocRoot());
+ place[var] = QStringList(qt_epocRoot());
}
#if defined(Q_OS_WIN32) && defined(Q_CC_MSVC)
else if(var.startsWith(QLatin1String("QMAKE_TARGET."))) {
diff --git a/qmake/qmake.pri b/qmake/qmake.pri
index 36c5d36a83..8f46a2eb7f 100644
--- a/qmake/qmake.pri
+++ b/qmake/qmake.pri
@@ -3,7 +3,7 @@ CONFIG += depend_includepath
QMAKE_INCREMENTAL =
SKIP_DEPENDS += qconfig.h qmodules.h
DEFINES += QT_NO_TEXTCODEC QT_NO_LIBRARY QT_NO_STL QT_NO_COMPRESS QT_NO_UNICODETABLES \
- QT_NO_GEOM_VARIANT QT_NO_DATASTREAM
+ QT_NO_GEOM_VARIANT QT_NO_DATASTREAM QLIBRARYINFO_EPOCROOT
#qmake code
SOURCES += project.cpp property.cpp main.cpp generators/makefile.cpp \
@@ -36,8 +36,8 @@ HEADERS += project.h property.h generators/makefile.h \
generators/symbian/symmake_abld.h \
generators/symbian/symmake_sbsv2.h \
generators/symbian/initprojectdeploy_symbian.h \
- windows/registry.h \
- symbian/epocroot.h
+ windows/registry_p.h \
+ symbian/epocroot_p.h
contains(QT_EDITION, OpenSource) {
DEFINES += QMAKE_OPENSOURCE_EDITION
diff --git a/src/3rdparty/harfbuzz/src/harfbuzz-buffer.h b/src/3rdparty/harfbuzz/src/harfbuzz-buffer.h
index 0d7c2c2c7c..0d631b20a6 100644
--- a/src/3rdparty/harfbuzz/src/harfbuzz-buffer.h
+++ b/src/3rdparty/harfbuzz/src/harfbuzz-buffer.h
@@ -32,10 +32,6 @@
HB_BEGIN_HEADER
-#ifdef HB_USE_PACKED_STRUCTS
-#pragma pack(push, 1)
-#endif
-
typedef struct HB_GlyphItemRec_ {
HB_UInt gindex;
HB_UInt properties;
@@ -93,10 +89,6 @@ hb_buffer_add_glyph( HB_Buffer buffer,
HB_UInt properties,
HB_UInt cluster );
-#ifdef HB_USE_PACKED_STRUCTS
-#pragma pack(pop)
-#endif
-
HB_END_HEADER
#endif /* HARFBUZZ_BUFFER_H */
diff --git a/src/3rdparty/harfbuzz/src/harfbuzz-gdef-private.h b/src/3rdparty/harfbuzz/src/harfbuzz-gdef-private.h
index 2a6d9581f9..94e9b43e61 100644
--- a/src/3rdparty/harfbuzz/src/harfbuzz-gdef-private.h
+++ b/src/3rdparty/harfbuzz/src/harfbuzz-gdef-private.h
@@ -33,11 +33,6 @@
HB_BEGIN_HEADER
-
-#ifdef HB_USE_PACKED_STRUCTS
-#pragma pack(push, 1)
-#endif
-
/* Attachment related structures */
struct HB_AttachPoint_
@@ -126,10 +121,6 @@ _HB_GDEF_LoadMarkAttachClassDef_From_LookupFlags( HB_GDEFHeader* gdef,
HB_Lookup* lo,
HB_UShort num_lookups );
-#ifdef HB_USE_PACKED_STRUCTS
-#pragma pack(pop)
-#endif
-
HB_END_HEADER
#endif /* HARFBUZZ_GDEF_PRIVATE_H */
diff --git a/src/3rdparty/harfbuzz/src/harfbuzz-gdef.h b/src/3rdparty/harfbuzz/src/harfbuzz-gdef.h
index f9a03dde9d..ccb6bf9734 100644
--- a/src/3rdparty/harfbuzz/src/harfbuzz-gdef.h
+++ b/src/3rdparty/harfbuzz/src/harfbuzz-gdef.h
@@ -31,10 +31,6 @@
HB_BEGIN_HEADER
-#ifdef HB_USE_PACKED_STRUCTS
-#pragma pack(push, 1)
-#endif
-
/* GDEF glyph properties. Note that HB_GDEF_COMPONENT has no corresponding
* flag in the LookupFlag field. */
#define HB_GDEF_BASE_GLYPH 0x0002
@@ -131,10 +127,6 @@ HB_Error HB_GDEF_Build_ClassDefinition( HB_GDEFHeader* gdef,
HB_UShort* glyph_array,
HB_UShort* class_array );
-#ifdef HB_USE_PACKED_STRUCTS
-#pragma pack(pop)
-#endif
-
HB_END_HEADER
#endif /* HARFBUZZ_GDEF_H */
diff --git a/src/3rdparty/harfbuzz/src/harfbuzz-global.h b/src/3rdparty/harfbuzz/src/harfbuzz-global.h
index bccd6a265d..d4e6b466b6 100644
--- a/src/3rdparty/harfbuzz/src/harfbuzz-global.h
+++ b/src/3rdparty/harfbuzz/src/harfbuzz-global.h
@@ -39,10 +39,6 @@
#define HB_END_HEADER /* nothing */
#endif
-#if defined(__GNUC__) || defined(_MSC_VER)
-#define HB_USE_PACKED_STRUCTS
-#endif
-
HB_BEGIN_HEADER
#ifndef FALSE
diff --git a/src/3rdparty/harfbuzz/src/harfbuzz-gpos-private.h b/src/3rdparty/harfbuzz/src/harfbuzz-gpos-private.h
index 39f3159987..63ba90797d 100644
--- a/src/3rdparty/harfbuzz/src/harfbuzz-gpos-private.h
+++ b/src/3rdparty/harfbuzz/src/harfbuzz-gpos-private.h
@@ -32,10 +32,6 @@
HB_BEGIN_HEADER
-#ifdef HB_USE_PACKED_STRUCTS
-#pragma pack(push, 1)
-#endif
-
/* shared tables */
#define VR_X_PLACEMENT_DEVICE 0
@@ -720,10 +716,6 @@ HB_INTERNAL void
_HB_GPOS_Free_SubTable( HB_GPOS_SubTable* st,
HB_UShort lookup_type );
-#ifdef HB_USE_PACKED_STRUCTS
-#pragma pack(pop)
-#endif
-
HB_END_HEADER
#endif /* HARFBUZZ_GPOS_PRIVATE_H */
diff --git a/src/3rdparty/harfbuzz/src/harfbuzz-gsub-private.h b/src/3rdparty/harfbuzz/src/harfbuzz-gsub-private.h
index 7eb329e20c..df0c3f639f 100644
--- a/src/3rdparty/harfbuzz/src/harfbuzz-gsub-private.h
+++ b/src/3rdparty/harfbuzz/src/harfbuzz-gsub-private.h
@@ -32,10 +32,6 @@
HB_BEGIN_HEADER
-#ifdef HB_USE_PACKED_STRUCTS
-#pragma pack(push, 1)
-#endif
-
typedef union HB_GSUB_SubTable_ HB_GSUB_SubTable;
/* LookupType 1 */
@@ -474,10 +470,6 @@ HB_INTERNAL void
_HB_GSUB_Free_SubTable( HB_GSUB_SubTable* st,
HB_UShort lookup_type );
-#ifdef HB_USE_PACKED_STRUCTS
-#pragma pack(pop)
-#endif
-
HB_END_HEADER
#endif /* HARFBUZZ_GSUB_PRIVATE_H */
diff --git a/src/3rdparty/harfbuzz/src/harfbuzz-gsub.h b/src/3rdparty/harfbuzz/src/harfbuzz-gsub.h
index b00df4401f..6e452bdb35 100644
--- a/src/3rdparty/harfbuzz/src/harfbuzz-gsub.h
+++ b/src/3rdparty/harfbuzz/src/harfbuzz-gsub.h
@@ -31,11 +31,6 @@
HB_BEGIN_HEADER
-
-#ifdef HB_USE_PACKED_STRUCTS
-#pragma pack(push, 1)
-#endif
-
/* Lookup types for glyph substitution */
#define HB_GSUB_LOOKUP_SINGLE 1
@@ -139,10 +134,6 @@ HB_Error HB_GSUB_Register_Alternate_Function( HB_GSUBHeader* gsub,
HB_Error HB_GSUB_Apply_String( HB_GSUBHeader* gsub,
HB_Buffer buffer );
-#ifdef HB_USE_PACKED_STRUCTS
-#pragma pack(pop)
-#endif
-
HB_END_HEADER
#endif /* HARFBUZZ_GSUB_H */
diff --git a/src/3rdparty/harfbuzz/src/harfbuzz-open.h b/src/3rdparty/harfbuzz/src/harfbuzz-open.h
index 4ba6cf5803..9ad7c98b2c 100644
--- a/src/3rdparty/harfbuzz/src/harfbuzz-open.h
+++ b/src/3rdparty/harfbuzz/src/harfbuzz-open.h
@@ -30,10 +30,6 @@
HB_BEGIN_HEADER
-#ifdef HB_USE_PACKED_STRUCTS
-#pragma pack(push, 1)
-#endif
-
/* Use this if a feature applies to all glyphs */
#define HB_ALL_GLYPHS 0xFFFF
@@ -279,10 +275,6 @@ enum HB_Type_
typedef enum HB_Type_ HB_Type;
-#ifdef HB_USE_PACKED_STRUCTS
-#pragma pack(pop)
-#endif
-
HB_END_HEADER
#endif /* HARFBUZZ_OPEN_H */
diff --git a/src/3rdparty/harfbuzz/src/harfbuzz-shaper.h b/src/3rdparty/harfbuzz/src/harfbuzz-shaper.h
index ab5c07a6c8..470e27b6f9 100644
--- a/src/3rdparty/harfbuzz/src/harfbuzz-shaper.h
+++ b/src/3rdparty/harfbuzz/src/harfbuzz-shaper.h
@@ -34,10 +34,6 @@
HB_BEGIN_HEADER
-#ifdef HB_USE_PACKED_STRUCTS
-#pragma pack(push, 1)
-#endif
-
/*
using anything else than signed or unsigned for bitfields in C is non standard,
but accepted by almost all compilers. And it gives a significant reduction in
@@ -258,10 +254,6 @@ typedef struct HB_Font_ {
void *userData;
} HB_FontRec;
-#ifdef HB_USE_PACKED_STRUCTS
-#pragma pack(pop)
-#endif
-
typedef struct HB_ShaperItem_ HB_ShaperItem;
struct HB_ShaperItem_ {
diff --git a/src/3rdparty/harfbuzz/src/harfbuzz-stream.h b/src/3rdparty/harfbuzz/src/harfbuzz-stream.h
index a155cc277c..cfbfb1c4fe 100644
--- a/src/3rdparty/harfbuzz/src/harfbuzz-stream.h
+++ b/src/3rdparty/harfbuzz/src/harfbuzz-stream.h
@@ -30,10 +30,6 @@
HB_BEGIN_HEADER
-#ifdef HB_USE_PACKED_STRUCTS
-#pragma pack(push, 1)
-#endif
-
typedef struct HB_StreamRec_
{
HB_Byte* base;
@@ -42,10 +38,6 @@ typedef struct HB_StreamRec_
HB_UInt pos;
} HB_StreamRec;
-#ifdef HB_USE_PACKED_STRUCTS
-#pragma pack(pop)
-#endif
-
HB_END_HEADER
#endif
diff --git a/src/3rdparty/phonon/ds9/videorenderer_evr.cpp b/src/3rdparty/phonon/ds9/videorenderer_evr.cpp
index de3f46f0be..ff39eccc4b 100644
--- a/src/3rdparty/phonon/ds9/videorenderer_evr.cpp
+++ b/src/3rdparty/phonon/ds9/videorenderer_evr.cpp
@@ -62,19 +62,21 @@ namespace Phonon
VideoRendererEVR::VideoRendererEVR(QWidget *target) : m_target(target)
{
+ if (QSysInfo::WindowsVersion < QSysInfo::WV_VISTA)
+ return;
m_filter = Filter(CLSID_EnhancedVideoRenderer, IID_IBaseFilter);
if (!m_filter) {
return;
}
ComPointer<IMFVideoDisplayControl> filterControl = getService<IMFVideoDisplayControl>(m_filter, MR_VIDEO_RENDER_SERVICE, IID_IMFVideoDisplayControl);
- if (!filterControl) {
+ if (!filterControl ||
+ FAILED(filterControl->SetVideoWindow(reinterpret_cast<HWND>(target->winId()))) ||
+ FAILED(filterControl->SetAspectRatioMode(MFVideoARMode_None)) || // We're in control of the size
+ !getService<IMFVideoMixerControl>(m_filter, MR_VIDEO_MIXER_SERVICE, IID_IMFVideoMixerControl) ||
+ !getService<IMFVideoProcessor>(m_filter, MR_VIDEO_MIXER_SERVICE, IID_IMFVideoProcessor)) {
m_filter = Filter(); //will release the interface
- return;
}
-
- filterControl->SetVideoWindow(reinterpret_cast<HWND>(target->winId()));
- filterControl->SetAspectRatioMode(MFVideoARMode_None); // We're in control of the size
}
QImage VideoRendererEVR::snapshot() const
diff --git a/src/3rdparty/phonon/phonon/effectwidget.cpp b/src/3rdparty/phonon/phonon/effectwidget.cpp
index a2fe50fea4..edcbe1f6aa 100644
--- a/src/3rdparty/phonon/phonon/effectwidget.cpp
+++ b/src/3rdparty/phonon/phonon/effectwidget.cpp
@@ -112,7 +112,7 @@ void EffectWidgetPrivate::autogenerateUi()
#endif
QWidget *control = 0;
- switch (para.type()) {
+ switch (int(para.type())) {
case QVariant::String:
{
QComboBox *cb = new QComboBox(q);
diff --git a/src/3rdparty/phonon/phonon/globalconfig.cpp b/src/3rdparty/phonon/phonon/globalconfig.cpp
index be751ce4ac..f83ebc4ab0 100644
--- a/src/3rdparty/phonon/phonon/globalconfig.cpp
+++ b/src/3rdparty/phonon/phonon/globalconfig.cpp
@@ -97,7 +97,7 @@ static void filter(ObjectDescriptionType type, BackendInterface *backendIface, Q
static QList<int> sortDevicesByCategoryPriority(const GlobalConfig *config, const QSettingsGroup *backendConfig, ObjectDescriptionType type, Phonon::Category category, QList<int> &defaultList)
{
- Q_ASSERT(config);
+ Q_ASSERT(config); Q_UNUSED(config);
Q_ASSERT(backendConfig);
Q_ASSERT(type == AudioOutputDeviceType || type == AudioCaptureDeviceType);
diff --git a/src/3rdparty/phonon/phonon/mediacontroller.cpp b/src/3rdparty/phonon/phonon/mediacontroller.cpp
index 59fd5c7dfd..37af3f7f25 100644
--- a/src/3rdparty/phonon/phonon/mediacontroller.cpp
+++ b/src/3rdparty/phonon/phonon/mediacontroller.cpp
@@ -76,9 +76,9 @@ MediaController::~MediaController()
MediaController::Features MediaController::supportedFeatures() const
{
if (!d || !d->media) {
- return false;
+ return Features();
}
- IFACE false;
+ IFACE Features();
Features ret;
if (iface->hasInterface(AddonInterface::AngleInterface)) {
ret |= Angles;
diff --git a/src/3rdparty/phonon/phonon/pulsesupport.cpp b/src/3rdparty/phonon/phonon/pulsesupport.cpp
index 642843f6fa..b1ba196839 100644
--- a/src/3rdparty/phonon/phonon/pulsesupport.cpp
+++ b/src/3rdparty/phonon/phonon/pulsesupport.cpp
@@ -56,7 +56,7 @@ static int debugLevel() {
static int level = -1;
if (level < 1) {
level = 0;
- QString pulseenv = qgetenv("PHONON_PULSEAUDIO_DEBUG");
+ QByteArray pulseenv = qgetenv("PHONON_PULSEAUDIO_DEBUG");
int l = pulseenv.toInt();
if (l > 0)
level = (l > 2 ? 2 : l);
@@ -71,18 +71,18 @@ static void logMessage(const QString &message, int priority, QObject *obj)
QString output;
if (obj) {
// Strip away namespace from className
- QString className(obj->metaObject()->className());
+ QByteArray className(obj->metaObject()->className());
int nameLength = className.length() - className.lastIndexOf(':') - 1;
className = className.right(nameLength);
output.sprintf("%s %s (%s %p)", message.toLatin1().constData(),
obj->objectName().toLatin1().constData(),
- className.toLatin1().constData(), obj);
+ className.constData(), obj);
}
else {
output = message;
}
if (priority <= debugLevel()) {
- qDebug() << QString("PulseSupport(%1): %2").arg(priority).arg(output);
+ qDebug() << QString::fromLatin1("PulseSupport(%1): %2").arg(priority).arg(output);
}
}
}
@@ -96,7 +96,7 @@ class AudioDevice
: pulseName(name), pulseIndex(index)
{
properties["name"] = desc;
- properties["description"] = ""; // We don't have descriptions (well we do, but we use them as the name!)
+ properties["description"] = QLatin1String(""); // We don't have descriptions (well we do, but we use them as the name!)
properties["icon"] = icon;
properties["available"] = (index != PA_INVALID_INDEX);
properties["isAdvanced"] = false; // Nothing is advanced!
@@ -158,8 +158,8 @@ static void createGenericDevices()
s_outputDevices.clear();
s_outputDevicePriorities.clear();
index = s_deviceIndexCounter++;
- s_outputDeviceIndexes.insert("sink:default", index);
- s_outputDevices.insert(index, AudioDevice("sink:default", QObject::tr("PulseAudio Sound Server").toUtf8(), "audio-backend-pulseaudio", 0));
+ s_outputDeviceIndexes.insert(QLatin1String("sink:default"), index);
+ s_outputDevices.insert(index, AudioDevice(QLatin1String("sink:default"), QObject::tr("PulseAudio Sound Server"), QLatin1String("audio-backend-pulseaudio"), 0));
for (int i = Phonon::NoCategory; i <= Phonon::LastCategory; ++i) {
Phonon::Category cat = static_cast<Phonon::Category>(i);
s_outputDevicePriorities[cat].insert(0, index);
@@ -169,8 +169,8 @@ static void createGenericDevices()
s_captureDevices.clear();
s_captureDevicePriorities.clear();
index = s_deviceIndexCounter++;
- s_captureDeviceIndexes.insert("source:default", index);
- s_captureDevices.insert(index, AudioDevice("source:default", QObject::tr("PulseAudio Sound Server").toUtf8(), "audio-backend-pulseaudio", 0));
+ s_captureDeviceIndexes.insert(QLatin1String("source:default"), index);
+ s_captureDevices.insert(index, AudioDevice(QLatin1String("source:default"), QObject::tr("PulseAudio Sound Server"), QLatin1String("audio-backend-pulseaudio"), 0));
for (int i = Phonon::NoCategory; i <= Phonon::LastCategory; ++i) {
Phonon::Category cat = static_cast<Phonon::Category>(i);
s_captureDevicePriorities[cat].insert(0, index);
@@ -397,7 +397,7 @@ void sink_input_cb(pa_context *c, const pa_sink_input_info *i, int eol, void *us
if (pa_context_errno(c) == PA_ERR_NOENTITY)
return;
- logMessage(QString("Sink input callback failure"));
+ logMessage(QLatin1String("Sink input callback failure"));
return;
}
@@ -409,8 +409,8 @@ void sink_input_cb(pa_context *c, const pa_sink_input_info *i, int eol, void *us
// loop through (*i) and extract phonon->streamindex...
const char *t;
if ((t = pa_proplist_gets(i->proplist, "phonon.streamid"))) {
- logMessage(QString("Found PulseAudio stream index %1 for Phonon Output Stream %2").arg(i->index).arg(t));
- s_outputStreamIndexMap[QString(t)] = i->index;
+ logMessage(QString::fromLatin1("Found PulseAudio stream index %1 for Phonon Output Stream %2").arg(i->index).arg(QLatin1String(t)));
+ s_outputStreamIndexMap[QLatin1String(t)] = i->index;
// Find the sink's phonon index and notify whoever cares...
if (PA_INVALID_INDEX != i->sink) {
@@ -426,8 +426,8 @@ void sink_input_cb(pa_context *c, const pa_sink_input_info *i, int eol, void *us
}
if (found) {
// OK so we just emit our signal
- logMessage(QString("Letting the rest of phonon know about this"));
- s_instance->emitUsingDevice(QString(t), device);
+ logMessage(QLatin1String("Letting the rest of phonon know about this"));
+ s_instance->emitUsingDevice(QLatin1String(t), device);
}
}
}
@@ -441,7 +441,7 @@ void source_output_cb(pa_context *c, const pa_source_output_info *i, int eol, vo
if (pa_context_errno(c) == PA_ERR_NOENTITY)
return;
- logMessage(QString("Source output callback failure"));
+ logMessage(QLatin1String("Source output callback failure"));
return;
}
@@ -453,8 +453,8 @@ void source_output_cb(pa_context *c, const pa_source_output_info *i, int eol, vo
// loop through (*i) and extract phonon->streamindex...
const char *t;
if ((t = pa_proplist_gets(i->proplist, "phonon.streamid"))) {
- logMessage(QString("Found PulseAudio stream index %1 for Phonon Capture Stream %2").arg(i->index).arg(t));
- s_captureStreamIndexMap[QString(t)] = i->index;
+ logMessage(QString::fromLatin1("Found PulseAudio stream index %1 for Phonon Capture Stream %2").arg(i->index).arg(QLatin1String(t)));
+ s_captureStreamIndexMap[QLatin1String(t)] = i->index;
// Find the source's phonon index and notify whoever cares...
if (PA_INVALID_INDEX != i->source) {
@@ -470,8 +470,8 @@ void source_output_cb(pa_context *c, const pa_source_output_info *i, int eol, vo
}
if (found) {
// OK so we just emit our signal
- logMessage(QString("Letting the rest of phonon know about this"));
- s_instance->emitUsingDevice(QString(t), device);
+ logMessage(QLatin1String("Letting the rest of phonon know about this"));
+ s_instance->emitUsingDevice(QLatin1String(t), device);
}
}
}
@@ -486,17 +486,17 @@ static void subscribe_cb(pa_context *c, pa_subscription_event_type_t t, uint32_t
QString phononid = s_outputStreamIndexMap.key(index);
if (!phononid.isEmpty()) {
if (s_outputStreamIndexMap.contains(phononid)) {
- logMessage(QString("Phonon Output Stream %1 is gone at the PA end. Marking it as invalid in our cache as we may reuse it.").arg(phononid));
+ logMessage(QString::fromLatin1("Phonon Output Stream %1 is gone at the PA end. Marking it as invalid in our cache as we may reuse it.").arg(phononid));
s_outputStreamIndexMap[phononid] = PA_INVALID_INDEX;
} else {
- logMessage(QString("Removing Phonon Output Stream %1 (it's gone!)").arg(phononid));
+ logMessage(QString::fromLatin1("Removing Phonon Output Stream %1 (it's gone!)").arg(phononid));
s_outputStreamIndexMap.remove(phononid);
}
}
} else {
pa_operation *o;
if (!(o = pa_context_get_sink_input_info(c, index, sink_input_cb, NULL))) {
- logMessage(QString("pa_context_get_sink_input_info() failed"));
+ logMessage(QLatin1String("pa_context_get_sink_input_info() failed"));
return;
}
pa_operation_unref(o);
@@ -508,17 +508,17 @@ static void subscribe_cb(pa_context *c, pa_subscription_event_type_t t, uint32_t
QString phononid = s_captureStreamIndexMap.key(index);
if (!phononid.isEmpty()) {
if (s_captureStreamIndexMap.contains(phononid)) {
- logMessage(QString("Phonon Capture Stream %1 is gone at the PA end. Marking it as invalid in our cache as we may reuse it.").arg(phononid));
+ logMessage(QString::fromLatin1("Phonon Capture Stream %1 is gone at the PA end. Marking it as invalid in our cache as we may reuse it.").arg(phononid));
s_captureStreamIndexMap[phononid] = PA_INVALID_INDEX;
} else {
- logMessage(QString("Removing Phonon Capture Stream %1 (it's gone!)").arg(phononid));
+ logMessage(QString::fromLatin1("Removing Phonon Capture Stream %1 (it's gone!)").arg(phononid));
s_captureStreamIndexMap.remove(phononid);
}
}
} else {
pa_operation *o;
if (!(o = pa_context_get_source_output_info(c, index, source_output_cb, NULL))) {
- logMessage(QString("pa_context_get_sink_input_info() failed"));
+ logMessage(QLatin1String("pa_context_get_sink_input_info() failed"));
return;
}
pa_operation_unref(o);
@@ -528,29 +528,27 @@ static void subscribe_cb(pa_context *c, pa_subscription_event_type_t t, uint32_t
}
-static const char* statename(pa_context_state_t state)
+static QString statename(pa_context_state_t state)
{
switch (state)
{
- case PA_CONTEXT_UNCONNECTED: return "Unconnected";
- case PA_CONTEXT_CONNECTING: return "Connecting";
- case PA_CONTEXT_AUTHORIZING: return "Authorizing";
- case PA_CONTEXT_SETTING_NAME: return "Setting Name";
- case PA_CONTEXT_READY: return "Ready";
- case PA_CONTEXT_FAILED: return "Failed";
- case PA_CONTEXT_TERMINATED: return "Terminated";
+ case PA_CONTEXT_UNCONNECTED: return QLatin1String("Unconnected");
+ case PA_CONTEXT_CONNECTING: return QLatin1String("Connecting");
+ case PA_CONTEXT_AUTHORIZING: return QLatin1String("Authorizing");
+ case PA_CONTEXT_SETTING_NAME: return QLatin1String("Setting Name");
+ case PA_CONTEXT_READY: return QLatin1String("Ready");
+ case PA_CONTEXT_FAILED: return QLatin1String("Failed");
+ case PA_CONTEXT_TERMINATED: return QLatin1String("Terminated");
}
- static QString unknown;
- unknown = QString("Unknown state: %0").arg(state);
- return unknown.toAscii().constData();
+ return QString::fromLatin1("Unknown state: %0").arg(state);
}
static void context_state_callback(pa_context *c, void *)
{
Q_ASSERT(c);
- logMessage(QString("context_state_callback %1").arg(statename(pa_context_get_state(c))));
+ logMessage(QString::fromLatin1("context_state_callback %1").arg(statename(pa_context_get_state(c))));
pa_context_state_t state = pa_context_get_state(c);
if (state == PA_CONTEXT_READY) {
// We've connected to PA, so it is active
@@ -566,7 +564,7 @@ static void context_state_callback(pa_context *c, void *)
if (!(o = pa_context_subscribe(c, (pa_subscription_mask_t)
(PA_SUBSCRIPTION_MASK_SINK_INPUT|
PA_SUBSCRIPTION_MASK_SOURCE_OUTPUT), NULL, NULL))) {
- logMessage(QString("pa_context_subscribe() failed"));
+ logMessage(QLatin1String("pa_context_subscribe() failed"));
return;
}
pa_operation_unref(o);
@@ -639,27 +637,27 @@ PulseSupport::PulseSupport()
{
#ifdef HAVE_PULSEAUDIO
// Initialise our map (is there a better way to do this?)
- s_roleCategoryMap["none"] = Phonon::NoCategory;
- s_roleCategoryMap["video"] = Phonon::VideoCategory;
- s_roleCategoryMap["music"] = Phonon::MusicCategory;
- s_roleCategoryMap["game"] = Phonon::GameCategory;
- s_roleCategoryMap["event"] = Phonon::NotificationCategory;
- s_roleCategoryMap["phone"] = Phonon::CommunicationCategory;
- //s_roleCategoryMap["animation"]; // No Mapping
- //s_roleCategoryMap["production"]; // No Mapping
- s_roleCategoryMap["a11y"] = Phonon::AccessibilityCategory;
+ s_roleCategoryMap[QLatin1String("none")] = Phonon::NoCategory;
+ s_roleCategoryMap[QLatin1String("video")] = Phonon::VideoCategory;
+ s_roleCategoryMap[QLatin1String("music")] = Phonon::MusicCategory;
+ s_roleCategoryMap[QLatin1String("game")] = Phonon::GameCategory;
+ s_roleCategoryMap[QLatin1String("event")] = Phonon::NotificationCategory;
+ s_roleCategoryMap[QLatin1String("phone")] = Phonon::CommunicationCategory;
+ //s_roleCategoryMap[QLatin1String("animation")]; // No Mapping
+ //s_roleCategoryMap[QLatin1String("production")]; // No Mapping
+ s_roleCategoryMap[QLatin1String("a11y")] = Phonon::AccessibilityCategory;
// To allow for easy debugging, give an easy way to disable this pulseaudio check
- QString pulseenv = qgetenv("PHONON_PULSEAUDIO_DISABLE");
+ QByteArray pulseenv = qgetenv("PHONON_PULSEAUDIO_DISABLE");
if (pulseenv.toInt()) {
- logMessage("PulseAudio support disabled: PHONON_PULSEAUDIO_DISABLE is set");
+ logMessage(QLatin1String("PulseAudio support disabled: PHONON_PULSEAUDIO_DISABLE is set"));
return;
}
// We require a glib event loop
- if (QLatin1String(QAbstractEventDispatcher::instance()->metaObject()->className())
- != "QGuiEventDispatcherGlib") {
- logMessage("Disabling PulseAudio integration for lack of GLib event loop.");
+ if (strcmp(QAbstractEventDispatcher::instance()->metaObject()->className(),
+ "QGuiEventDispatcherGlib") != 0) {
+ logMessage(QLatin1String("Disabling PulseAudio integration for lack of GLib event loop."));
return;
}
@@ -667,21 +665,21 @@ PulseSupport::PulseSupport()
// use a fully async integrated mainloop method to connect and get proper support.
pa_mainloop *p_test_mainloop;
if (!(p_test_mainloop = pa_mainloop_new())) {
- logMessage("PulseAudio support disabled: Unable to create mainloop");
+ logMessage(QLatin1String("PulseAudio support disabled: Unable to create mainloop"));
return;
}
pa_context *p_test_context;
if (!(p_test_context = pa_context_new(pa_mainloop_get_api(p_test_mainloop), "libphonon-probe"))) {
- logMessage("PulseAudio support disabled: Unable to create context");
+ logMessage(QLatin1String("PulseAudio support disabled: Unable to create context"));
pa_mainloop_free(p_test_mainloop);
return;
}
- logMessage("Probing for PulseAudio...");
+ logMessage(QLatin1String("Probing for PulseAudio..."));
// (cg) Convert to PA_CONTEXT_NOFLAGS when PulseAudio 0.9.19 is required
if (pa_context_connect(p_test_context, NULL, static_cast<pa_context_flags_t>(0), NULL) < 0) {
- logMessage(QString("PulseAudio support disabled: %1").arg(pa_strerror(pa_context_errno(p_test_context))));
+ logMessage(QString::fromLatin1("PulseAudio support disabled: %1").arg(QString::fromLocal8Bit(pa_strerror(pa_context_errno(p_test_context)))));
pa_context_disconnect(p_test_context);
pa_context_unref(p_test_context);
pa_mainloop_free(p_test_mainloop);
@@ -693,7 +691,7 @@ PulseSupport::PulseSupport()
pa_mainloop_iterate(p_test_mainloop, 1, NULL);
if (!PA_CONTEXT_IS_GOOD(pa_context_get_state(p_test_context))) {
- logMessage("PulseAudio probe complete.");
+ logMessage(QLatin1String("PulseAudio probe complete."));
break;
}
}
@@ -702,12 +700,12 @@ PulseSupport::PulseSupport()
pa_mainloop_free(p_test_mainloop);
if (!s_pulseActive) {
- logMessage("PulseAudio support is not available.");
+ logMessage(QLatin1String("PulseAudio support is not available."));
return;
}
// If we're still here, PA is available.
- logMessage("PulseAudio support enabled");
+ logMessage(QLatin1String("PulseAudio support enabled"));
// Now we connect for real using a proper main loop that we can forget
// all about processing.
@@ -856,7 +854,7 @@ static void setDevicePriority(Category category, QStringList list)
if (role.isEmpty())
return;
- logMessage(QString("Reindexing %1: %2").arg(role).arg(list.join(", ")));
+ logMessage(QString::fromLatin1("Reindexing %1: %2").arg(role).arg(list.join(QLatin1String(", "))));
char **devices;
devices = pa_xnew(char *, list.size()+1);
@@ -926,7 +924,7 @@ void PulseSupport::setStreamPropList(Category category, QString streamUuid)
if (role.isEmpty())
return;
- logMessage(QString("Setting role to %1 for streamindex %2").arg(role).arg(streamUuid));
+ logMessage(QString::fromLatin1("Setting role to %1 for streamindex %2").arg(role).arg(streamUuid));
setenv("PULSE_PROP_media.role", role.toLatin1().constData(), 1);
setenv("PULSE_PROP_phonon.streamid", streamUuid.toLatin1().constData(), 1);
#endif
@@ -952,30 +950,30 @@ bool PulseSupport::setOutputDevice(QString streamUuid, int device) {
return true;
if (!s_outputDevices.contains(device)) {
- logMessage(QString("Attempting to set Output Device for invalid device id %1.").arg(device));
+ logMessage(QString::fromLatin1("Attempting to set Output Device for invalid device id %1.").arg(device));
return false;
}
const QVariant var = s_outputDevices[device].properties["name"];
- logMessage(QString("Attempting to set Output Device to '%1' for Output Stream %2").arg(var.toString()).arg(streamUuid));
+ logMessage(QString::fromLatin1("Attempting to set Output Device to '%1' for Output Stream %2").arg(var.toString()).arg(streamUuid));
// Attempt to look up the pulse stream index.
if (s_outputStreamIndexMap.contains(streamUuid) && s_outputStreamIndexMap[streamUuid] != PA_INVALID_INDEX) {
- logMessage(QString("... Found in map. Moving now"));
+ logMessage(QLatin1String("... Found in map. Moving now"));
uint32_t pulse_device_index = s_outputDevices[device].pulseIndex;
uint32_t pulse_stream_index = s_outputStreamIndexMap[streamUuid];
- logMessage(QString("Moving Pulse Sink Input %1 to '%2' (Pulse Sink %3)").arg(pulse_stream_index).arg(var.toString()).arg(pulse_device_index));
+ logMessage(QString::fromLatin1("Moving Pulse Sink Input %1 to '%2' (Pulse Sink %3)").arg(pulse_stream_index).arg(var.toString()).arg(pulse_device_index));
/// @todo Find a way to move the stream without saving it... We don't want to pollute the stream restore db.
pa_operation* o;
if (!(o = pa_context_move_sink_input_by_index(s_context, pulse_stream_index, pulse_device_index, NULL, NULL))) {
- logMessage(QString("pa_context_move_sink_input_by_index() failed"));
+ logMessage(QLatin1String("pa_context_move_sink_input_by_index() failed"));
return false;
}
pa_operation_unref(o);
} else {
- logMessage(QString("... Not found in map. We will be notified of the device when the stream appears and we can process any moves needed then"));
+ logMessage(QLatin1String("... Not found in map. We will be notified of the device when the stream appears and we can process any moves needed then"));
}
return true;
#endif
@@ -991,30 +989,30 @@ bool PulseSupport::setCaptureDevice(QString streamUuid, int device) {
return true;
if (!s_captureDevices.contains(device)) {
- logMessage(QString("Attempting to set Capture Device for invalid device id %1.").arg(device));
+ logMessage(QString::fromLatin1("Attempting to set Capture Device for invalid device id %1.").arg(device));
return false;
}
const QVariant var = s_captureDevices[device].properties["name"];
- logMessage(QString("Attempting to set Capture Device to '%1' for Capture Stream %2").arg(var.toString()).arg(streamUuid));
+ logMessage(QString::fromLatin1("Attempting to set Capture Device to '%1' for Capture Stream %2").arg(var.toString()).arg(streamUuid));
// Attempt to look up the pulse stream index.
if (s_captureStreamIndexMap.contains(streamUuid) && s_captureStreamIndexMap[streamUuid] == PA_INVALID_INDEX) {
- logMessage(QString("... Found in map. Moving now"));
+ logMessage(QString::fromLatin1("... Found in map. Moving now"));
uint32_t pulse_device_index = s_captureDevices[device].pulseIndex;
uint32_t pulse_stream_index = s_captureStreamIndexMap[streamUuid];
- logMessage(QString("Moving Pulse Source Output %1 to '%2' (Pulse Sink %3)").arg(pulse_stream_index).arg(var.toString()).arg(pulse_device_index));
+ logMessage(QString::fromLatin1("Moving Pulse Source Output %1 to '%2' (Pulse Sink %3)").arg(pulse_stream_index).arg(var.toString()).arg(pulse_device_index));
/// @todo Find a way to move the stream without saving it... We don't want to pollute the stream restore db.
pa_operation* o;
if (!(o = pa_context_move_source_output_by_index(s_context, pulse_stream_index, pulse_device_index, NULL, NULL))) {
- logMessage(QString("pa_context_move_source_output_by_index() failed"));
+ logMessage(QString::fromLatin1("pa_context_move_source_output_by_index() failed"));
return false;
}
pa_operation_unref(o);
} else {
- logMessage(QString("... Not found in map. We will be notified of the device when the stream appears and we can process any moves needed then"));
+ logMessage(QString::fromLatin1("... Not found in map. We will be notified of the device when the stream appears and we can process any moves needed then"));
}
return true;
#endif
@@ -1025,7 +1023,7 @@ void PulseSupport::clearStreamCache(QString streamUuid) {
Q_UNUSED(streamUuid);
return;
#else
- logMessage(QString("Clearing stream cache for stream %1").arg(streamUuid));
+ logMessage(QString::fromLatin1("Clearing stream cache for stream %1").arg(streamUuid));
s_outputStreamIndexMap.remove(streamUuid);
s_captureStreamIndexMap.remove(streamUuid);
#endif
diff --git a/src/3rdparty/webkit/WebKit/qt/Api/qwebpage.cpp b/src/3rdparty/webkit/WebKit/qt/Api/qwebpage.cpp
index 9b97c8b350..5bb3c57e92 100644
--- a/src/3rdparty/webkit/WebKit/qt/Api/qwebpage.cpp
+++ b/src/3rdparty/webkit/WebKit/qt/Api/qwebpage.cpp
@@ -1351,26 +1351,30 @@ void QWebPagePrivate::inputMethodEvent(QInputMethodEvent *ev)
}
}
- if (!ev->commitString().isEmpty())
+ if (renderTextControl && ev->replacementLength() > 0) {
+ renderTextControl->setSelectionStart(qMax(renderTextControl->selectionStart() + ev->replacementStart(), 0));
+ renderTextControl->setSelectionEnd(qMin(renderTextControl->selectionStart() + ev->replacementLength(), static_cast<int>(renderTextControl->text().length())));
+ // Commit regardless of whether commitString is empty, to get rid of selection.
editor->confirmComposition(ev->commitString());
- else {
- // 1. empty preedit with a selection attribute, and start/end of 0 cancels composition
- // 2. empty preedit with a selection attribute, and start/end of non-0 updates selection of current preedit text
- // 3. populated preedit with a selection attribute, and start/end of 0 or non-0 updates selection of supplied preedit text
- // 4. otherwise event is updating supplied pre-edit text
- QString preedit = ev->preeditString();
+ } else if (!ev->commitString().isEmpty()) {
+ editor->confirmComposition(ev->commitString());
+ }
+ // 1. empty preedit with a selection attribute, and start/end of 0 cancels composition
+ // 2. empty preedit with a selection attribute, and start/end of non-0 updates selection of current preedit text
+ // 3. populated preedit with a selection attribute, and start/end of 0 or non-0 updates selection of supplied preedit text
+ // 4. otherwise event is updating supplied pre-edit text
+ QString preedit = ev->preeditString();
#if QT_VERSION >= 0x040600
- if (hasSelection) {
- QString text = (renderTextControl) ? QString(renderTextControl->text()) : QString();
- if (preedit.isEmpty() && selection.start + selection.length > 0)
- preedit = text;
- editor->setComposition(preedit, underlines,
- (selection.length < 0) ? selection.start + selection.length : selection.start,
- (selection.length < 0) ? selection.start : selection.start + selection.length);
- } else
+ if (hasSelection) {
+ QString text = (renderTextControl) ? QString(renderTextControl->text()) : QString();
+ if (preedit.isEmpty() && selection.start + selection.length > 0)
+ preedit = text;
+ editor->setComposition(preedit, underlines,
+ (selection.length < 0) ? selection.start + selection.length : selection.start,
+ (selection.length < 0) ? selection.start : selection.start + selection.length);
+ } else
#endif
- editor->setComposition(preedit, underlines, preedit.length(), 0);
- }
+ editor->setComposition(preedit, underlines, preedit.length(), 0);
ev->accept();
}
diff --git a/src/3rdparty/webkit/WebKit/qt/declarative/qdeclarativewebview.cpp b/src/3rdparty/webkit/WebKit/qt/declarative/qdeclarativewebview.cpp
index e4f70deb76..7a8aae7535 100644
--- a/src/3rdparty/webkit/WebKit/qt/declarative/qdeclarativewebview.cpp
+++ b/src/3rdparty/webkit/WebKit/qt/declarative/qdeclarativewebview.cpp
@@ -141,6 +141,16 @@ void GraphicsWebView::mouseMoveEvent(QGraphicsSceneMouseEvent* event)
QGraphicsWebView::mouseMoveEvent(event);
}
+bool GraphicsWebView::sceneEvent(QEvent *event)
+{
+ bool rv = QGraphicsWebView::sceneEvent(event);
+ if (event->type() == QEvent::UngrabMouse) {
+ pressTimer.stop();
+ parent->setKeepMouseGrab(false);
+ }
+ return rv;
+}
+
/*!
\qmlclass WebView QDeclarativeWebView
\ingroup qml-view-elements
diff --git a/src/3rdparty/webkit/WebKit/qt/declarative/qdeclarativewebview_p.h b/src/3rdparty/webkit/WebKit/qt/declarative/qdeclarativewebview_p.h
index b2055bf121..ca15a1eefb 100644
--- a/src/3rdparty/webkit/WebKit/qt/declarative/qdeclarativewebview_p.h
+++ b/src/3rdparty/webkit/WebKit/qt/declarative/qdeclarativewebview_p.h
@@ -70,6 +70,8 @@ protected:
void mouseMoveEvent(QGraphicsSceneMouseEvent* event);
void mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event);
void timerEvent(QTimerEvent* event);
+ bool sceneEvent(QEvent *event);
+
Q_SIGNALS:
void doubleClick(int clickX, int clickY);
private:
diff --git a/src/3rdparty/webkit/WebKit/qt/qt_webkit_version.pri b/src/3rdparty/webkit/WebKit/qt/qt_webkit_version.pri
index f2282f847d..b98617f439 100644
--- a/src/3rdparty/webkit/WebKit/qt/qt_webkit_version.pri
+++ b/src/3rdparty/webkit/WebKit/qt/qt_webkit_version.pri
@@ -1,5 +1,5 @@
-QT_WEBKIT_VERSION = 4.7.1
+QT_WEBKIT_VERSION = 4.7.2
QT_WEBKIT_MAJOR_VERSION = 4
QT_WEBKIT_MINOR_VERSION = 7
-QT_WEBKIT_PATCH_VERSION = 1
+QT_WEBKIT_PATCH_VERSION = 2
QT_CONFIG += webkit
diff --git a/src/3rdparty/webkit/WebKit/qt/tests/qwebpage/tst_qwebpage.cpp b/src/3rdparty/webkit/WebKit/qt/tests/qwebpage/tst_qwebpage.cpp
index b7ffb8a60c..31cf277607 100644
--- a/src/3rdparty/webkit/WebKit/qt/tests/qwebpage/tst_qwebpage.cpp
+++ b/src/3rdparty/webkit/WebKit/qt/tests/qwebpage/tst_qwebpage.cpp
@@ -1502,6 +1502,20 @@ void tst_QWebPage::inputMethods()
QCOMPARE(value, QString("QtWebKit"));
#endif
+ {
+ QList<QInputMethodEvent::Attribute> attributes;
+ QInputMethodEvent event(QString(), attributes);
+ event.setCommitString("XXX", 0, 0);
+ page->event(&event);
+ event.setCommitString(QString(), -2, 2); // Erase two characters.
+ page->event(&event);
+ event.setCommitString(QString(), -1, 1); // Erase one character.
+ page->event(&event);
+ variant = page->inputMethodQuery(Qt::ImSurroundingText);
+ value = variant.value<QString>();
+ QCOMPARE(value, QString("QtWebKit"));
+ }
+
// Cancel current composition first
inputAttributes << QInputMethodEvent::Attribute(QInputMethodEvent::Selection, 0, 0, QVariant());
QInputMethodEvent eventSelection4("", inputAttributes);
diff --git a/src/corelib/corelib.pro b/src/corelib/corelib.pro
index b7d6034609..a0019407b5 100644
--- a/src/corelib/corelib.pro
+++ b/src/corelib/corelib.pro
@@ -37,10 +37,3 @@ symbian: {
MMP_RULES -= PAGED
MMP_RULES *= UNPAGED
}
-
-neon {
- DEFINES += QT_HAVE_NEON
- QMAKE_CXXFLAGS *= -mfpu=neon
-}
-
-
diff --git a/src/corelib/global/global.pri b/src/corelib/global/global.pri
index 4800716664..86800efc33 100644
--- a/src/corelib/global/global.pri
+++ b/src/corelib/global/global.pri
@@ -27,3 +27,5 @@ linux*:!static:!linux-armcc:!linux-gcce {
# Compensate for lack of platform defines in Symbian3 and Symbian4
symbian: DEFINES += SYMBIAN_VERSION_$$upper($$replace(SYMBIAN_VERSION,\\.,_))
+
+include(../../../tools/shared/symbian/epocroot.pri)
diff --git a/src/corelib/global/qglobal.h b/src/corelib/global/qglobal.h
index 35607d5dd3..b148a1d6ab 100644
--- a/src/corelib/global/qglobal.h
+++ b/src/corelib/global/qglobal.h
@@ -44,11 +44,11 @@
#include <stddef.h>
-#define QT_VERSION_STR "4.7.1"
+#define QT_VERSION_STR "4.7.2"
/*
QT_VERSION is (major << 16) + (minor << 8) + patch.
*/
-#define QT_VERSION 0x040701
+#define QT_VERSION 0x040702
/*
can be used like #if (QT_VERSION >= QT_VERSION_CHECK(4, 4, 0))
*/
diff --git a/src/corelib/global/qlibraryinfo.cpp b/src/corelib/global/qlibraryinfo.cpp
index 957abbfe60..898b860019 100644
--- a/src/corelib/global/qlibraryinfo.cpp
+++ b/src/corelib/global/qlibraryinfo.cpp
@@ -62,6 +62,10 @@ QT_END_NAMESPACE
# include "private/qcore_mac_p.h"
#endif
+#ifdef QLIBRARYINFO_EPOCROOT
+# include "symbian/epocroot_p.h"
+#endif
+
#include "qconfig.cpp"
QT_BEGIN_NAMESPACE
@@ -433,6 +437,14 @@ QLibraryInfo::location(LibraryLocation loc)
QString::fromLocal8Bit(qgetenv(ret.mid(rep + 2,
reg_var.matchedLength() - 3).toLatin1().constData()).constData()));
}
+
+#ifdef QLIBRARYINFO_EPOCROOT
+ // $${EPOCROOT} is a special case, resolve it similarly to qmake.
+ QRegExp epocrootMatcher(QLatin1String("\\$\\$\\{EPOCROOT\\}"));
+ if ((rep = epocrootMatcher.indexIn(ret)) != -1)
+ ret.replace(rep, epocrootMatcher.matchedLength(), qt_epocRoot());
+#endif
+
config->endGroup();
}
}
diff --git a/src/corelib/io/qdiriterator.cpp b/src/corelib/io/qdiriterator.cpp
index fd4b9c181b..dbb333fdc0 100644
--- a/src/corelib/io/qdiriterator.cpp
+++ b/src/corelib/io/qdiriterator.cpp
@@ -389,9 +389,6 @@ QDirIterator::QDirIterator(const QDir &dir, IteratorFlags flags)
\note To list symlinks that point to non existing files, QDir::System must be
passed to the flags.
- \warning This constructor expects \a flags to be left at its default value. Use
- the constructors that do not take the \a filters argument instead.
-
\sa hasNext(), next(), IteratorFlags
*/
QDirIterator::QDirIterator(const QString &path, QDir::Filters filters, IteratorFlags flags)
@@ -429,9 +426,6 @@ QDirIterator::QDirIterator(const QString &path, IteratorFlags flags)
\note To list symlinks that point to non existing files, QDir::System must be
passed to the flags.
- \warning This constructor expects \c flags to be left at its default value. Use the
- constructors that do not take the \a filters argument instead.
-
\sa hasNext(), next(), IteratorFlags
*/
QDirIterator::QDirIterator(const QString &path, const QStringList &nameFilters,
diff --git a/src/corelib/io/qfilesystemwatcher.cpp b/src/corelib/io/qfilesystemwatcher.cpp
index 18c3c9fd8d..1e6dcee5a6 100644
--- a/src/corelib/io/qfilesystemwatcher.cpp
+++ b/src/corelib/io/qfilesystemwatcher.cpp
@@ -228,8 +228,14 @@ void QPollingFileSystemWatcherEngine::timeout()
dit.remove();
emit directoryChanged(path, true);
} else if (x.value() != fi) {
- x.value() = fi;
- emit directoryChanged(path, false);
+ fi.refresh();
+ if (!fi.exists()) {
+ dit.remove();
+ emit directoryChanged(path, true);
+ } else {
+ x.value() = fi;
+ emit directoryChanged(path, false);
+ }
}
}
diff --git a/src/corelib/io/qfilesystemwatcher_kqueue.cpp b/src/corelib/io/qfilesystemwatcher_kqueue.cpp
index 378ad20af2..3664396048 100644
--- a/src/corelib/io/qfilesystemwatcher_kqueue.cpp
+++ b/src/corelib/io/qfilesystemwatcher_kqueue.cpp
@@ -117,67 +117,77 @@ QStringList QKqueueFileSystemWatcherEngine::addPaths(const QStringList &paths,
QStringList *files,
QStringList *directories)
{
- QMutexLocker locker(&mutex);
-
QStringList p = paths;
- QMutableListIterator<QString> it(p);
- while (it.hasNext()) {
- QString path = it.next();
- int fd;
+ {
+ QMutexLocker locker(&mutex);
+
+ QMutableListIterator<QString> it(p);
+ while (it.hasNext()) {
+ QString path = it.next();
+ int fd;
#if defined(O_EVTONLY)
- fd = qt_safe_open(QFile::encodeName(path), O_EVTONLY);
+ fd = qt_safe_open(QFile::encodeName(path), O_EVTONLY);
#else
- fd = qt_safe_open(QFile::encodeName(path), O_RDONLY);
+ fd = qt_safe_open(QFile::encodeName(path), O_RDONLY);
#endif
- if (fd == -1) {
- perror("QKqueueFileSystemWatcherEngine::addPaths: open");
- continue;
- }
+ if (fd == -1) {
+ perror("QKqueueFileSystemWatcherEngine::addPaths: open");
+ continue;
+ }
+ if (fd >= (int)FD_SETSIZE / 2 && fd < (int)FD_SETSIZE) {
+ int fddup = fcntl(fd, F_DUPFD, FD_SETSIZE);
+ if (fddup != -1) {
+ ::close(fd);
+ fd = fddup;
+ }
+ }
+ fcntl(fd, F_SETFD, FD_CLOEXEC);
- QT_STATBUF st;
- if (QT_FSTAT(fd, &st) == -1) {
- perror("QKqueueFileSystemWatcherEngine::addPaths: fstat");
- ::close(fd);
- continue;
- }
- int id = (S_ISDIR(st.st_mode)) ? -fd : fd;
- if (id < 0) {
- if (directories->contains(path)) {
+ QT_STATBUF st;
+ if (QT_FSTAT(fd, &st) == -1) {
+ perror("QKqueueFileSystemWatcherEngine::addPaths: fstat");
::close(fd);
continue;
}
- } else {
- if (files->contains(path)) {
+ int id = (S_ISDIR(st.st_mode)) ? -fd : fd;
+ if (id < 0) {
+ if (directories->contains(path)) {
+ ::close(fd);
+ continue;
+ }
+ } else {
+ if (files->contains(path)) {
+ ::close(fd);
+ continue;
+ }
+ }
+
+ struct kevent kev;
+ EV_SET(&kev,
+ fd,
+ EVFILT_VNODE,
+ EV_ADD | EV_ENABLE | EV_CLEAR,
+ NOTE_DELETE | NOTE_WRITE | NOTE_EXTEND | NOTE_ATTRIB | NOTE_RENAME | NOTE_REVOKE,
+ 0,
+ 0);
+ if (kevent(kqfd, &kev, 1, 0, 0, 0) == -1) {
+ perror("QKqueueFileSystemWatcherEngine::addPaths: kevent");
::close(fd);
continue;
}
- }
- struct kevent kev;
- EV_SET(&kev,
- fd,
- EVFILT_VNODE,
- EV_ADD | EV_ENABLE | EV_ONESHOT,
- NOTE_DELETE | NOTE_WRITE | NOTE_EXTEND | NOTE_ATTRIB | NOTE_RENAME | NOTE_REVOKE,
- 0,
- 0);
- if (kevent(kqfd, &kev, 1, 0, 0, 0) == -1) {
- perror("QKqueueFileSystemWatcherEngine::addPaths: kevent");
- ::close(fd);
- continue;
- }
+ it.remove();
+ if (id < 0) {
+ DEBUG() << "QKqueueFileSystemWatcherEngine: added directory path" << path;
+ directories->append(path);
+ } else {
+ DEBUG() << "QKqueueFileSystemWatcherEngine: added file path" << path;
+ files->append(path);
+ }
- it.remove();
- if (id < 0) {
- DEBUG() << "QKqueueFileSystemWatcherEngine: added directory path" << path;
- directories->append(path);
- } else {
- DEBUG() << "QKqueueFileSystemWatcherEngine: added file path" << path;
- files->append(path);
+ pathToID.insert(path, id);
+ idToPath.insert(id, path);
}
-
- pathToID.insert(path, id);
- idToPath.insert(id, path);
}
if (!isRunning())
@@ -192,43 +202,35 @@ QStringList QKqueueFileSystemWatcherEngine::removePaths(const QStringList &paths
QStringList *files,
QStringList *directories)
{
- QMutexLocker locker(&mutex);
-
+ bool isEmpty;
QStringList p = paths;
- QMutableListIterator<QString> it(p);
- while (it.hasNext()) {
- QString path = it.next();
- int id = pathToID.take(path);
- QString x = idToPath.take(id);
- if (x.isEmpty() || x != path)
- continue;
-
- int fd = id < 0 ? -id : id;
- struct kevent kev;
- EV_SET(&kev,
- fd,
- EVFILT_VNODE,
- EV_DELETE,
- NOTE_DELETE | NOTE_WRITE | NOTE_EXTEND | NOTE_ATTRIB | NOTE_RENAME | NOTE_REVOKE,
- 0,
- 0);
- if (kevent(kqfd, &kev, 1, 0, 0, 0) == -1) {
- perror("QKqueueFileSystemWatcherEngine::removeWatch: kevent");
- }
- ::close(fd);
+ {
+ QMutexLocker locker(&mutex);
+ if (pathToID.isEmpty())
+ return p;
+
+ QMutableListIterator<QString> it(p);
+ while (it.hasNext()) {
+ QString path = it.next();
+ int id = pathToID.take(path);
+ QString x = idToPath.take(id);
+ if (x.isEmpty() || x != path)
+ continue;
- it.remove();
- if (id < 0)
- directories->removeAll(path);
- else
- files->removeAll(path);
+ ::close(id < 0 ? -id : id);
+
+ it.remove();
+ if (id < 0)
+ directories->removeAll(path);
+ else
+ files->removeAll(path);
+ }
+ isEmpty = pathToID.isEmpty();
}
- if (pathToID.isEmpty()) {
+ if (isEmpty) {
stop();
- locker.unlock();
wait();
- locker.relock();
} else {
write(kqpipe[1], "@", 1);
}
@@ -243,19 +245,15 @@ void QKqueueFileSystemWatcherEngine::stop()
void QKqueueFileSystemWatcherEngine::run()
{
- static const struct timespec ZeroTimeout = { 0, 0 };
-
forever {
+ int r;
struct kevent kev;
DEBUG() << "QKqueueFileSystemWatcherEngine: waiting for kevents...";
- int r = kevent(kqfd, 0, 0, &kev, 1, 0);
+ EINTR_LOOP(r, kevent(kqfd, 0, 0, &kev, 1, 0));
if (r < 0) {
perror("QKqueueFileSystemWatcherEngine: error during kevent wait");
return;
- }
-
- QMutexLocker locker(&mutex);
- do {
+ } else {
int fd = kev.ident;
DEBUG() << "QKqueueFileSystemWatcherEngine: processing kevent" << kev.ident << kev.filter;
@@ -287,6 +285,8 @@ void QKqueueFileSystemWatcherEngine::run()
break;
}
} else {
+ QMutexLocker locker(&mutex);
+
int id = fd;
QString path = idToPath.value(id);
if (path.isEmpty()) {
@@ -295,12 +295,12 @@ void QKqueueFileSystemWatcherEngine::run()
path = idToPath.value(id);
if (path.isEmpty()) {
DEBUG() << "QKqueueFileSystemWatcherEngine: received a kevent for a file we're not watching";
- goto process_next_event;
+ continue;
}
}
if (kev.filter != EVFILT_VNODE) {
DEBUG() << "QKqueueFileSystemWatcherEngine: received a kevent with the wrong filter";
- goto process_next_event;
+ continue;
}
if ((kev.fflags & (NOTE_DELETE | NOTE_REVOKE | NOTE_RENAME)) != 0) {
@@ -315,31 +315,15 @@ void QKqueueFileSystemWatcherEngine::run()
else
emit fileChanged(path, true);
} else {
- DEBUG() << path << "changed, re-enabling watch";
+ DEBUG() << path << "changed";
if (id < 0)
emit directoryChanged(path, false);
else
emit fileChanged(path, false);
-
- // renable the watch
- EV_SET(&kev,
- fd,
- EVFILT_VNODE,
- EV_ADD | EV_ENABLE | EV_ONESHOT,
- NOTE_DELETE | NOTE_WRITE | NOTE_EXTEND | NOTE_ATTRIB | NOTE_RENAME | NOTE_REVOKE,
- 0,
- 0);
- if (kevent(kqfd, &kev, 1, 0, 0, 0) == -1) {
- perror("QKqueueFileSystemWatcherEngine::processKqueueEvents: kevent EV_ADD");
- }
}
}
-
- // are there any more?
-process_next_event:
- r = kevent(kqfd, 0, 0, &kev, 1, &ZeroTimeout);
- } while (r > 0);
+ }
}
}
diff --git a/src/corelib/io/qprocess_symbian.cpp b/src/corelib/io/qprocess_symbian.cpp
index 003e78167f..5b283a57ce 100644
--- a/src/corelib/io/qprocess_symbian.cpp
+++ b/src/corelib/io/qprocess_symbian.cpp
@@ -1050,6 +1050,7 @@ bool QProcessPrivate::startDetached(const QString &program, const QStringList &a
newProc->Resume();
newProc->Close();
+ delete newProc;
return true;
}
diff --git a/src/corelib/io/qresource.cpp b/src/corelib/io/qresource.cpp
index ce9c57ecea..b45710c916 100644
--- a/src/corelib/io/qresource.cpp
+++ b/src/corelib/io/qresource.cpp
@@ -187,7 +187,7 @@ Q_GLOBAL_STATIC(QStringList, resourceSearchPaths)
A QResource can either be loaded with an absolute path, either treated
as a file system rooted with a \c{/} character, or in resource notation
rooted with a \c{:} character. A relative resource can also be opened
- which will be found through the searchPaths().
+ which will be found in the list of paths returned by QDir::searchPaths().
A QResource that is representing a file will have data backing it, this
data can possibly be compressed, in which case qUncompress() must be
diff --git a/src/corelib/kernel/qeventdispatcher_glib.cpp b/src/corelib/kernel/qeventdispatcher_glib.cpp
index 8390275bb7..6fa2707f87 100644
--- a/src/corelib/kernel/qeventdispatcher_glib.cpp
+++ b/src/corelib/kernel/qeventdispatcher_glib.cpp
@@ -311,6 +311,10 @@ QEventDispatcherGlibPrivate::QEventDispatcherGlibPrivate(GMainContext *context)
}
}
+#if GLIB_CHECK_VERSION (2, 22, 0)
+ g_main_context_push_thread_default (mainContext);
+#endif
+
// setup post event source
postEventSource = reinterpret_cast<GPostEventSource *>(g_source_new(&postEventSourceFuncs,
sizeof(GPostEventSource)));
@@ -389,6 +393,9 @@ QEventDispatcherGlib::~QEventDispatcherGlib()
d->postEventSource = 0;
Q_ASSERT(d->mainContext != 0);
+#if GLIB_CHECK_VERSION (2, 22, 0)
+ g_main_context_pop_thread_default (d->mainContext);
+#endif
g_main_context_unref(d->mainContext);
d->mainContext = 0;
}
diff --git a/src/corelib/kernel/qeventdispatcher_win.cpp b/src/corelib/kernel/qeventdispatcher_win.cpp
index a719e727bd..4eb007350d 100644
--- a/src/corelib/kernel/qeventdispatcher_win.cpp
+++ b/src/corelib/kernel/qeventdispatcher_win.cpp
@@ -84,7 +84,8 @@ extern uint qGlobalPostedEventsCount();
enum {
WM_QT_SOCKETNOTIFIER = WM_USER,
- WM_QT_SENDPOSTEDEVENTS = WM_USER + 1
+ WM_QT_SENDPOSTEDEVENTS = WM_USER + 1,
+ SendPostedEventsWindowsTimerId = ~1u
};
#if defined(Q_OS_WINCE)
@@ -353,7 +354,7 @@ public:
// for controlling when to send posted events
QAtomicInt serialNumber;
- int lastSerialNumber;
+ int lastSerialNumber, sendPostedEventsWindowsTimerId;
QAtomicInt wakeUps;
// timers
@@ -378,7 +379,7 @@ public:
QEventDispatcherWin32Private::QEventDispatcherWin32Private()
: threadId(GetCurrentThreadId()), interrupt(false), internalHwnd(0), getMessageHook(0),
- serialNumber(0), lastSerialNumber(0), wakeUps(0)
+ serialNumber(0), lastSerialNumber(0), sendPostedEventsWindowsTimerId(0), wakeUps(0)
{
resolveTimerAPI();
}
@@ -485,17 +486,21 @@ LRESULT QT_WIN_CALLBACK qt_internal_proc(HWND hwnd, UINT message, WPARAM wp, LPA
}
}
return 0;
- } else if (message == WM_TIMER) {
- Q_ASSERT(d != 0);
- d->sendTimerEvent(wp);
- return 0;
- } else if (message == WM_QT_SENDPOSTEDEVENTS) {
+ } else if (message == WM_QT_SENDPOSTEDEVENTS
+ // we also use a Windows timer to send posted events when the message queue is full
+ || (message == WM_TIMER
+ && d->sendPostedEventsWindowsTimerId != 0
+ && wp == d->sendPostedEventsWindowsTimerId)) {
int localSerialNumber = d->serialNumber;
if (localSerialNumber != d->lastSerialNumber) {
d->lastSerialNumber = localSerialNumber;
QCoreApplicationPrivate::sendPostedEvents(0, 0, d->threadData);
}
return 0;
+ } else if (message == WM_TIMER) {
+ Q_ASSERT(d != 0);
+ d->sendTimerEvent(wp);
+ return 0;
}
return DefWindowProc(hwnd, message, wp, lp);
@@ -507,21 +512,36 @@ LRESULT QT_WIN_CALLBACK qt_GetMessageHook(int code, WPARAM wp, LPARAM lp)
QEventDispatcherWin32 *q = qobject_cast<QEventDispatcherWin32 *>(QAbstractEventDispatcher::instance());
Q_ASSERT(q != 0);
if (q) {
+ MSG *msg = (MSG *) lp;
QEventDispatcherWin32Private *d = q->d_func();
int localSerialNumber = d->serialNumber;
- MSG unused;
- if ((HIWORD(GetQueueStatus(QS_INPUT | QS_RAWINPUT)) == 0
- && PeekMessage(&unused, 0, WM_TIMER, WM_TIMER, PM_NOREMOVE) == 0)) {
- // no more input or timer events in the message queue or more than 10ms has elapsed since
- // we send posted events, we can allow posted events to be sent now
+ if (HIWORD(GetQueueStatus(QS_TIMER | QS_INPUT | QS_RAWINPUT)) == 0) {
+ // no more input or timer events in the message queue, we can allow posted events to be sent normally now
+ if (d->sendPostedEventsWindowsTimerId != 0) {
+ // stop the timer to send posted events, since we now allow the WM_QT_SENDPOSTEDEVENTS message
+ KillTimer(d->internalHwnd, d->sendPostedEventsWindowsTimerId);
+ d->sendPostedEventsWindowsTimerId = 0;
+ }
(void) d->wakeUps.fetchAndStoreRelease(0);
- MSG *msg = (MSG *) lp;
if (localSerialNumber != d->lastSerialNumber
// if this message IS the one that triggers sendPostedEvents(), no need to post it again
&& (msg->hwnd != d->internalHwnd
|| msg->message != WM_QT_SENDPOSTEDEVENTS)) {
PostMessage(d->internalHwnd, WM_QT_SENDPOSTEDEVENTS, 0, 0);
}
+ } else if (d->sendPostedEventsWindowsTimerId == 0
+ && localSerialNumber != d->lastSerialNumber
+ // if this message IS the one that triggers sendPostedEvents(), no need to post it again
+ && (msg->hwnd != d->internalHwnd
+ || msg->message != WM_QT_SENDPOSTEDEVENTS)) {
+ // start a special timer to continue delivering posted events while
+ // there are still input and timer messages in the message queue
+ d->sendPostedEventsWindowsTimerId = SetTimer(d->internalHwnd,
+ SendPostedEventsWindowsTimerId,
+ 0, // we specify zero, but Windows uses USER_TIMER_MINIMUM
+ NULL);
+ // we don't check the return value of SetTimer()... if creating the timer failed, there's little
+ // we can do. we just have to accept that posted events will be starved
}
}
}
diff --git a/src/corelib/kernel/qtcore_eval.cpp b/src/corelib/kernel/qtcore_eval.cpp
index 78556c3cc9..da76b74878 100644
--- a/src/corelib/kernel/qtcore_eval.cpp
+++ b/src/corelib/kernel/qtcore_eval.cpp
@@ -90,14 +90,14 @@ static const char will_shutdown_now[] =
static int qt_eval_is_supported()
{
- const char *const license_key = qt_eval_key_data + 12;
+ const volatile char *const license_key = qt_eval_key_data + 12;
// fast fail
if (!qt_eval_key_data[0] || !*license_key)
return -1;
// is this an unsupported evaluation?
- const char* typecode = license_key;
+ const volatile char *typecode = license_key;
int field = 2;
for ( ; field && *typecode; ++typecode)
if (*typecode == '-')
diff --git a/src/corelib/thread/qthread.cpp b/src/corelib/thread/qthread.cpp
index 69b70cb4d2..6fb182b76f 100644
--- a/src/corelib/thread/qthread.cpp
+++ b/src/corelib/thread/qthread.cpp
@@ -482,8 +482,10 @@ int QThread::exec()
Q_D(QThread);
QMutexLocker locker(&d->mutex);
d->data->quitNow = false;
- if (d->exited)
+ if (d->exited) {
+ d->exited = false;
return d->returnCode;
+ }
locker.unlock();
QEventLoop eventLoop;
diff --git a/src/corelib/thread/qthread_unix.cpp b/src/corelib/thread/qthread_unix.cpp
index a44a0e811a..e3b587daf8 100644
--- a/src/corelib/thread/qthread_unix.cpp
+++ b/src/corelib/thread/qthread_unix.cpp
@@ -97,6 +97,11 @@
# define SCHED_IDLE 5
#endif
+#if defined(Q_OS_DARWIN) || !defined(Q_OS_OPENBSD) && defined(_POSIX_THREAD_PRIORITY_SCHEDULING) && (_POSIX_THREAD_PRIORITY_SCHEDULING-0 >= 0)
+#define QT_HAS_THREAD_PRIORITY_SCHEDULING
+#endif
+
+
QT_BEGIN_NAMESPACE
#ifndef QT_NO_THREAD
@@ -503,6 +508,7 @@ void QThread::usleep(unsigned long usecs)
thread_sleep(&ti);
}
+#ifdef QT_HAS_THREAD_PRIORITY_SCHEDULING
// Does some magic and calculate the Unix scheduler priorities
// sched_policy is IN/OUT: it must be set to a valid policy before calling this function
// sched_priority is OUT only
@@ -533,6 +539,7 @@ static bool calculateUnixPriority(int priority, int *sched_policy, int *sched_pr
*sched_priority = prio;
return true;
}
+#endif
void QThread::start(Priority priority)
{
@@ -553,7 +560,7 @@ void QThread::start(Priority priority)
d->priority = priority;
-#if defined(Q_OS_DARWIN) || !defined(Q_OS_OPENBSD) && !defined(Q_OS_SYMBIAN) && defined(_POSIX_THREAD_PRIORITY_SCHEDULING) && (_POSIX_THREAD_PRIORITY_SCHEDULING-0 >= 0)
+#if defined(QT_HAS_THREAD_PRIORITY_SCHEDULING) && !defined(Q_OS_SYMBIAN)
// ### Need to implement thread sheduling and priorities for symbian os. Implementation removed for now
switch (priority) {
case InheritPriority:
@@ -594,7 +601,7 @@ void QThread::start(Priority priority)
break;
}
}
-#endif // _POSIX_THREAD_PRIORITY_SCHEDULING
+#endif // QT_HAS_THREAD_PRIORITY_SCHEDULING
#ifdef Q_OS_SYMBIAN
if (d->stackSize == 0)
@@ -757,7 +764,7 @@ void QThread::setPriority(Priority priority)
// copied from start() with a few modifications:
-#if defined(Q_OS_DARWIN) || !defined(Q_OS_OPENBSD) && defined(_POSIX_THREAD_PRIORITY_SCHEDULING) && (_POSIX_THREAD_PRIORITY_SCHEDULING-0 >= 0)
+#ifdef QT_HAS_THREAD_PRIORITY_SCHEDULING
int sched_policy;
sched_param param;
diff --git a/src/corelib/tools/qalgorithms.qdoc b/src/corelib/tools/qalgorithms.qdoc
index 898f9400da..cd33f28bc3 100644
--- a/src/corelib/tools/qalgorithms.qdoc
+++ b/src/corelib/tools/qalgorithms.qdoc
@@ -266,7 +266,7 @@
\overload
- This is the same as qFind(\a{container}.begin(), \a{container}.end(), value);
+ This is the same as qFind(\a{container}.constBegin(), \a{container}.constEnd(), value);
*/
/*! \fn void qCount(InputIterator begin, InputIterator end, const T &value, Size &n)
diff --git a/src/corelib/tools/qlocale.cpp b/src/corelib/tools/qlocale.cpp
index 6b1de5ef0e..b817eb2fe9 100644
--- a/src/corelib/tools/qlocale.cpp
+++ b/src/corelib/tools/qlocale.cpp
@@ -77,7 +77,7 @@ QT_END_NAMESPACE
#include <qdebug.h>
#include <time.h>
-#if defined(Q_OS_LINUX) && !defined(__UCLIBC__)
+#if defined(__GLIBC__) && !defined(__UCLIBC__)
# include <fenv.h>
#endif
@@ -1576,8 +1576,6 @@ QDataStream &operator>>(QDataStream &ds, QLocale &l)
defaults to the default locale (see setDefault()).
\endlist
- The "C" locale is identical in behavior to \l{English}/\l{UnitedStates}.
-
Use language() and country() to determine the actual language and
country values used.
@@ -6637,7 +6635,7 @@ Q_CORE_EXPORT char *qdtoa ( double d, int mode, int ndigits, int *decpt, int *si
_control87(MCW_EM, MCW_EM);
#endif
-#if defined(Q_OS_LINUX) && !defined(__UCLIBC__)
+#if defined(__GLIBC__) && !defined(__UCLIBC__)
fenv_t envp;
feholdexcept(&envp);
#endif
@@ -6653,7 +6651,7 @@ Q_CORE_EXPORT char *qdtoa ( double d, int mode, int ndigits, int *decpt, int *si
#endif //_M_X64
#endif //Q_OS_WIN
-#if defined(Q_OS_LINUX) && !defined(__UCLIBC__)
+#if defined(__GLIBC__) && !defined(__UCLIBC__)
fesetenv(&envp);
#endif
@@ -7308,6 +7306,7 @@ Q_CORE_EXPORT char *qdtoa( double d, int mode, int ndigits, int *decpt, int *sig
Q_CORE_EXPORT double qstrtod(const char *s00, const char **se, bool *ok)
{
+ errno = 0;
double ret = strtod((char*)s00, (char**)se);
if (ok) {
if((ret == 0.0l && errno == ERANGE)
diff --git a/src/corelib/tools/qsimd.cpp b/src/corelib/tools/qsimd.cpp
index b2fe2dabad..bc5e9e418c 100644
--- a/src/corelib/tools/qsimd.cpp
+++ b/src/corelib/tools/qsimd.cpp
@@ -135,7 +135,7 @@ static inline uint detectProcessorFeatures()
#if defined(QT_HAVE_IWMMXT)
// runtime detection only available when running as a previlegied process
features = IWMMXT;
-#elif defined(QT_HAVE_NEON)
+#elif defined(QT_ALWAYS_HAVE_NEON)
features = NEON;
#endif
@@ -285,7 +285,13 @@ static inline uint detectProcessorFeatures()
uint features = MMX|SSE|SSE2|CMOV;
uint feature_result = 0;
-#if defined(Q_CC_GNU)
+#if defined (Q_OS_WIN64)
+ {
+ int info[4];
+ __cpuid(info, 1);
+ feature_result = info[2];
+ }
+#elif defined(Q_CC_GNU)
quint64 tmp;
asm ("xchg %%rbx, %1\n"
"cpuid\n"
@@ -294,12 +300,6 @@ static inline uint detectProcessorFeatures()
: "a" (1)
: "%edx"
);
-#elif defined (Q_OS_WIN64)
- {
- int info[4];
- __cpuid(info, 1);
- feature_result = info[2];
- }
#endif
if (feature_result & (1u))
diff --git a/src/corelib/tools/qsimd_p.h b/src/corelib/tools/qsimd_p.h
index 664543b136..2dbed76523 100644
--- a/src/corelib/tools/qsimd_p.h
+++ b/src/corelib/tools/qsimd_p.h
@@ -87,9 +87,13 @@ QT_BEGIN_HEADER
#include <tmmintrin.h>
#endif
-// SSE4.1 and SSE4.2 intrinsics
-#if (defined(QT_HAVE_SSE4_1) || defined(QT_HAVE_SSE4_2)) && (defined(__SSE4_1__) || defined(Q_CC_MSVC))
+// SSE4.1 intrinsics
+#if defined(QT_HAVE_SSE4_1) && (defined(__SSE4_1__) || defined(Q_CC_MSVC))
#include <smmintrin.h>
+#endif
+
+// SSE4.2 intrinsics
+#if defined(QT_HAVE_SSE4_2) && (defined(__SSE4_2__) || defined(Q_CC_MSVC))
#include <nmmintrin.h>
#endif
@@ -105,7 +109,8 @@ QT_BEGIN_HEADER
#endif // defined(QT_HAVE_SSE2) && (defined(__SSE2__) || defined(Q_CC_MSVC))
// NEON intrinsics
-#if defined(QT_HAVE_NEON)
+#if defined __ARM_NEON__
+#define QT_ALWAYS_HAVE_NEON
#include <arm_neon.h>
#endif
diff --git a/src/corelib/tools/qstring.cpp b/src/corelib/tools/qstring.cpp
index bfbdb733aa..92b54a040e 100644
--- a/src/corelib/tools/qstring.cpp
+++ b/src/corelib/tools/qstring.cpp
@@ -3572,7 +3572,7 @@ static QByteArray toLatin1_helper(const QChar *data, int length)
}
length = length % 16;
}
-#elif QT_HAVE_NEON
+#elif defined(QT_ALWAYS_HAVE_NEON)
// Refer to the documentation of the SSE2 implementation
// this use eactly the same method as for SSE except:
// 1) neon has unsigned comparison
diff --git a/src/dbus/qdbusconnection_p.h b/src/dbus/qdbusconnection_p.h
index 1bd00dafae..67145b885e 100644
--- a/src/dbus/qdbusconnection_p.h
+++ b/src/dbus/qdbusconnection_p.h
@@ -203,6 +203,8 @@ public:
void disconnectRelay(const QString &service,
const QString &path, const QString &interface,
QDBusAbstractInterface *receiver, const char *signal);
+ void registerService(const QString &serviceName);
+ void unregisterService(const QString &serviceName);
bool handleMessage(const QDBusMessage &msg);
void waitForFinished(QDBusPendingCallPrivate *pcall);
@@ -247,9 +249,11 @@ public slots:
void socketWrite(int);
void objectDestroyed(QObject *o);
void relaySignal(QObject *obj, const QMetaObject *, int signalId, const QVariantList &args);
- void _q_serviceOwnerChanged(const QString &name, const QString &oldOwner, const QString &newOwner);
- void registerService(const QString &serviceName);
- void unregisterService(const QString &serviceName);
+
+private slots:
+ void serviceOwnerChangedNoLock(const QString &name, const QString &oldOwner, const QString &newOwner);
+ void registerServiceNoLock(const QString &serviceName);
+ void unregisterServiceNoLock(const QString &serviceName);
signals:
void serviceOwnerChanged(const QString &name, const QString &oldOwner, const QString &newOwner);
@@ -303,6 +307,9 @@ public:
QObject *receiver, const char *signal, int minMIdx,
bool buildSignature);
static DBusHandlerResult messageFilter(DBusConnection *, DBusMessage *, void *);
+ static bool checkReplyForDelivery(QDBusConnectionPrivate *target, QObject *object,
+ int idx, const QList<int> &metaTypes,
+ const QDBusMessage &msg);
static QDBusCallDeliveryEvent *prepareReply(QDBusConnectionPrivate *target, QObject *object,
int idx, const QList<int> &metaTypes,
const QDBusMessage &msg);
diff --git a/src/dbus/qdbusintegrator.cpp b/src/dbus/qdbusintegrator.cpp
index a5d8ada3b0..1842e5aec9 100644
--- a/src/dbus/qdbusintegrator.cpp
+++ b/src/dbus/qdbusintegrator.cpp
@@ -552,6 +552,9 @@ bool QDBusConnectionPrivate::handleMessage(const QDBusMessage &amsg)
(*(*list)[i])(amsg);
}
+ if (!ref)
+ return false;
+
switch (amsg.type()) {
case QDBusMessage::SignalMessage:
handleSignal(amsg);
@@ -713,6 +716,8 @@ static int findSlot(const QMetaObject *mo, const QByteArray &name, int flags,
return -1;
}
+static QDBusCallDeliveryEvent * const DIRECT_DELIVERY = (QDBusCallDeliveryEvent *)1;
+
QDBusCallDeliveryEvent* QDBusConnectionPrivate::prepareReply(QDBusConnectionPrivate *target,
QObject *object, int idx,
const QList<int> &metaTypes,
@@ -736,6 +741,8 @@ QDBusCallDeliveryEvent* QDBusConnectionPrivate::prepareReply(QDBusConnectionPriv
// we can deliver
// prepare for the call
+ if (target == object)
+ return DIRECT_DELIVERY;
return new QDBusCallDeliveryEvent(QDBusConnection(target), idx, target, msg, metaTypes);
}
@@ -750,6 +757,12 @@ void QDBusConnectionPrivate::activateSignal(const QDBusConnectionPrivate::Signal
// Slots can optionally have one final parameter that is a QDBusMessage
// Slots receive read-only copies of the message (i.e., pass by value or by const-ref)
QDBusCallDeliveryEvent *call = prepareReply(this, hook.obj, hook.midx, hook.params, msg);
+ if (call == DIRECT_DELIVERY) {
+ // short-circuit delivery
+ Q_ASSERT(this == hook.obj);
+ deliverCall(this, 0, msg, hook.params, hook.midx);
+ return;
+ }
if (call)
postEventToThread(ActivateSignalAction, hook.obj, call);
}
@@ -1207,11 +1220,11 @@ void QDBusConnectionPrivate::relaySignal(QObject *obj, const QMetaObject *mo, in
q_dbus_message_unref(msg);
}
-void QDBusConnectionPrivate::_q_serviceOwnerChanged(const QString &name,
- const QString &oldOwner, const QString &newOwner)
+void QDBusConnectionPrivate::serviceOwnerChangedNoLock(const QString &name,
+ const QString &oldOwner, const QString &newOwner)
{
Q_UNUSED(oldOwner);
- QDBusWriteLocker locker(UpdateSignalHookOwnerAction, this);
+// QDBusWriteLocker locker(UpdateSignalHookOwnerAction, this);
WatchedServicesHash::Iterator it = watchedServices.find(name);
if (it == watchedServices.end())
return;
@@ -1686,11 +1699,11 @@ void QDBusConnectionPrivate::setConnection(DBusConnection *dbc, const QDBusError
hook.obj = this;
hook.params << QMetaType::Void << QVariant::String; // both functions take a QString as parameter and return void
- hook.midx = staticMetaObject.indexOfSlot("registerService(QString)");
+ hook.midx = staticMetaObject.indexOfSlot("registerServiceNoLock(QString)");
Q_ASSERT(hook.midx != -1);
signalHooks.insert(QLatin1String("NameAcquired:" DBUS_INTERFACE_DBUS), hook);
- hook.midx = staticMetaObject.indexOfSlot("unregisterService(QString)");
+ hook.midx = staticMetaObject.indexOfSlot("unregisterServiceNoLock(QString)");
Q_ASSERT(hook.midx != -1);
signalHooks.insert(QLatin1String("NameLost:" DBUS_INTERFACE_DBUS), hook);
@@ -2081,7 +2094,7 @@ void QDBusConnectionPrivate::connectSignal(const QString &key, const SignalHook
// we need to watch for this service changing
connectSignal(dbusServiceString(), QString(), dbusInterfaceString(),
QLatin1String("NameOwnerChanged"), QStringList() << hook.service, QString(),
- this, SLOT(_q_serviceOwnerChanged(QString,QString,QString)));
+ this, SLOT(serviceOwnerChangedNoLock(QString,QString,QString)));
data.owner = getNameOwnerNoCache(hook.service);
qDBusDebug() << this << "Watching service" << hook.service << "for owner changes (current owner:"
<< data.owner << ")";
@@ -2342,12 +2355,22 @@ QDBusConnectionPrivate::findMetaObject(const QString &service, const QString &pa
void QDBusConnectionPrivate::registerService(const QString &serviceName)
{
QDBusWriteLocker locker(RegisterServiceAction, this);
+ registerServiceNoLock(serviceName);
+}
+
+void QDBusConnectionPrivate::registerServiceNoLock(const QString &serviceName)
+{
serviceNames.append(serviceName);
}
void QDBusConnectionPrivate::unregisterService(const QString &serviceName)
{
QDBusWriteLocker locker(UnregisterServiceAction, this);
+ unregisterServiceNoLock(serviceName);
+}
+
+void QDBusConnectionPrivate::unregisterServiceNoLock(const QString &serviceName)
+{
serviceNames.removeAll(serviceName);
}
diff --git a/src/declarative/debugger/qdeclarativedebugservice.cpp b/src/declarative/debugger/qdeclarativedebugservice.cpp
index 8c86ae820e..849df73c8c 100644
--- a/src/declarative/debugger/qdeclarativedebugservice.cpp
+++ b/src/declarative/debugger/qdeclarativedebugservice.cpp
@@ -226,9 +226,11 @@ QDeclarativeDebugServer *QDeclarativeDebugServer::instance()
server->waitForConnection();
}
} else {
- qWarning(QString::fromAscii("QDeclarativeDebugServer: Ignoring \"-qmljsdebugger=%1\". "
- "Format is -qmljsdebugger=port:<port>[,block]").arg(
- appD->qmljsDebugArgumentsString()).toAscii().constData());
+ const QString message =
+ QString::fromAscii("QDeclarativeDebugServer: Ignoring \"-qmljsdebugger=%1\". "
+ "Format is -qmljsdebugger=port:<port>[,block]").
+ arg(appD->qmljsDebugArgumentsString());
+ qWarning("%s", qPrintable(message));
}
}
#endif
diff --git a/src/declarative/declarative.pro b/src/declarative/declarative.pro
index 299ca066df..93ad861651 100644
--- a/src/declarative/declarative.pro
+++ b/src/declarative/declarative.pro
@@ -25,7 +25,10 @@ include(graphicsitems/graphicsitems.pri)
include(qml/qml.pri)
include(debugger/debugger.pri)
-symbian:TARGET.UID3=0x2001E623
+symbian: {
+ TARGET.UID3=0x2001E623
+ LIBS += -lefsrv
+}
DEFINES += QT_NO_OPENTYPE
INCLUDEPATH += ../3rdparty/harfbuzz/src
diff --git a/src/declarative/graphicsitems/qdeclarativeborderimage.cpp b/src/declarative/graphicsitems/qdeclarativeborderimage.cpp
index 649c8fb074..c0a7d72af3 100644
--- a/src/declarative/graphicsitems/qdeclarativeborderimage.cpp
+++ b/src/declarative/graphicsitems/qdeclarativeborderimage.cpp
@@ -509,7 +509,7 @@ void QDeclarativeBorderImage::doUpdate()
void QDeclarativeBorderImage::paint(QPainter *p, const QStyleOptionGraphicsItem *, QWidget *)
{
Q_D(QDeclarativeBorderImage);
- if (d->pix.isNull())
+ if (d->pix.isNull() || d->width() <= 0.0 || d->height() <= 0.0)
return;
bool oldAA = p->testRenderHint(QPainter::Antialiasing);
@@ -518,7 +518,23 @@ void QDeclarativeBorderImage::paint(QPainter *p, const QStyleOptionGraphicsItem
p->setRenderHints(QPainter::Antialiasing | QPainter::SmoothPixmapTransform, d->smooth);
const QDeclarativeScaleGrid *border = d->getScaleGrid();
- QMargins margins(border->left(), border->top(), border->right(), border->bottom());
+ int left = border->left();
+ int right = border->right();
+ qreal borderWidth = left + right;
+ if (borderWidth > 0.0 && d->width() < borderWidth) {
+ qreal diff = borderWidth - d->width() - 1;
+ left -= qRound(diff * qreal(left) / borderWidth);
+ right -= qRound(diff * qreal(right) / borderWidth);
+ }
+ int top = border->top();
+ int bottom = border->bottom();
+ qreal borderHeight = top + bottom;
+ if (borderHeight > 0.0 && d->height() < borderHeight) {
+ qreal diff = borderHeight - d->height() - 1;
+ top -= qRound(diff * qreal(top) / borderHeight);
+ bottom -= qRound(diff * qreal(bottom) / borderHeight);
+ }
+ QMargins margins(left, top, right, bottom);
QTileRules rules((Qt::TileRule)d->horizontalTileMode, (Qt::TileRule)d->verticalTileMode);
qDrawBorderPixmap(p, QRect(0, 0, (int)d->width(), (int)d->height()), margins, d->pix, d->pix.rect(), margins, rules);
if (d->smooth) {
diff --git a/src/declarative/graphicsitems/qdeclarativeevents.cpp b/src/declarative/graphicsitems/qdeclarativeevents.cpp
index 61fd562ce7..4b5e7774ca 100644
--- a/src/declarative/graphicsitems/qdeclarativeevents.cpp
+++ b/src/declarative/graphicsitems/qdeclarativeevents.cpp
@@ -108,6 +108,34 @@ Item {
so that ancestor items do not also respond to the same event.
*/
+/*!
+ \qmlproperty int KeyEvent::modifiers
+
+ This property holds the keyboard modifier flags that existed immediately
+ before the event occurred.
+
+ It contains a bitwise combination of:
+ \list
+ \o Qt.NoModifier - No modifier key is pressed.
+ \o Qt.ShiftModifier - A Shift key on the keyboard is pressed.
+ \o Qt.ControlModifier - A Ctrl key on the keyboard is pressed.
+ \o Qt.AltModifier - An Alt key on the keyboard is pressed.
+ \o Qt.MetaModifier - A Meta key on the keyboard is pressed.
+ \o Qt.KeypadModifier - A keypad button is pressed.
+ \endlist
+
+ For example, to react to a Shift key + Enter key combination:
+ \qml
+ Item {
+ focus: true
+ Keys.onPressed: {
+ if ((event.key == Qt.Key_Enter) && (event.modifiers & Qt.ShiftModifier))
+ doSomething();
+ }
+ }
+ \endqml
+*/
+
/*!
\qmlclass MouseEvent QDeclarativeMouseEvent
@@ -199,7 +227,7 @@ Item {
\qml
MouseArea {
onClicked: {
- if (mouse.button == Qt.LeftButton && mouse.modifiers & Qt.ShiftModifier)
+ if ((mouse.button == Qt.LeftButton) && (mouse.modifiers & Qt.ShiftModifier))
doSomething();
}
}
diff --git a/src/declarative/graphicsitems/qdeclarativeflickable.cpp b/src/declarative/graphicsitems/qdeclarativeflickable.cpp
index 3a3189cd28..377f3b5407 100644
--- a/src/declarative/graphicsitems/qdeclarativeflickable.cpp
+++ b/src/declarative/graphicsitems/qdeclarativeflickable.cpp
@@ -281,7 +281,6 @@ void QDeclarativeFlickablePrivate::fixupY()
void QDeclarativeFlickablePrivate::fixup(AxisData &data, qreal minExtent, qreal maxExtent)
{
- Q_Q(QDeclarativeFlickable);
if (data.move.value() > minExtent || maxExtent > minExtent) {
timeline.reset(data.move);
if (data.move.value() != minExtent) {
@@ -290,8 +289,7 @@ void QDeclarativeFlickablePrivate::fixup(AxisData &data, qreal minExtent, qreal
timeline.move(data.move, minExtent - dist/2, QEasingCurve(QEasingCurve::InQuad), fixupDuration/4);
timeline.move(data.move, minExtent, QEasingCurve(QEasingCurve::OutExpo), 3*fixupDuration/4);
} else {
- data.move.setValue(minExtent);
- q->viewportMoved();
+ timeline.set(data.move, minExtent);
}
}
} else if (data.move.value() < maxExtent) {
@@ -301,8 +299,7 @@ void QDeclarativeFlickablePrivate::fixup(AxisData &data, qreal minExtent, qreal
timeline.move(data.move, maxExtent - dist/2, QEasingCurve(QEasingCurve::InQuad), fixupDuration/4);
timeline.move(data.move, maxExtent, QEasingCurve(QEasingCurve::OutExpo), 3*fixupDuration/4);
} else {
- data.move.setValue(maxExtent);
- q->viewportMoved();
+ timeline.set(data.move, minExtent);
}
}
vTime = timeline.time();
@@ -386,6 +383,13 @@ void QDeclarativeFlickablePrivate::updateBeginningEnd()
\snippet doc/src/snippets/declarative/flickable.qml document
\clearfloat
+
+ Items declared as children of a Flickable are automatically parented to the
+ Flickable's \l contentItem. This should be taken into account when
+ operating on the children of the Flickable; it is usually the children of
+ \c contentItem that are relevant. For example, the bound of Items added
+ to the Flickable will be available by \c contentItem.childrenRect
+
\section1 Limitations
\note Due to an implementation detail, items placed inside a Flickable cannot anchor to it by
@@ -696,6 +700,9 @@ void QDeclarativeFlickablePrivate::handleMouseMoveEvent(QGraphicsSceneMouseEvent
bool rejectY = false;
bool rejectX = false;
+ bool stealY = false;
+ bool stealX = false;
+
if (q->yflick()) {
int dy = int(event->pos().y() - pressPos.y());
if (qAbs(dy) > QApplication::startDragDistance() || QDeclarativeItemPrivate::elapsed(pressTime) > 200) {
@@ -724,7 +731,7 @@ void QDeclarativeFlickablePrivate::handleMouseMoveEvent(QGraphicsSceneMouseEvent
vMoved = true;
}
if (qAbs(dy) > QApplication::startDragDistance())
- stealMouse = true;
+ stealY = true;
}
}
@@ -757,10 +764,12 @@ void QDeclarativeFlickablePrivate::handleMouseMoveEvent(QGraphicsSceneMouseEvent
}
if (qAbs(dx) > QApplication::startDragDistance())
- stealMouse = true;
+ stealX = true;
}
}
+ stealMouse = stealX || stealY;
+
if (!lastPos.isNull()) {
qreal elapsed = qreal(QDeclarativeItemPrivate::restart(lastPosTime)) / 1000.;
if (elapsed <= 0)
diff --git a/src/declarative/graphicsitems/qdeclarativegridview.cpp b/src/declarative/graphicsitems/qdeclarativegridview.cpp
index 6f38f63449..1615b0fd5d 100644
--- a/src/declarative/graphicsitems/qdeclarativegridview.cpp
+++ b/src/declarative/graphicsitems/qdeclarativegridview.cpp
@@ -219,12 +219,8 @@ public:
}
} else {
qreal pos = (modelIndex / columns) * rowSize();
- if (header) {
- qreal headerSize = flow == QDeclarativeGridView::LeftToRight
- ? header->item->height()
- : header->item->width();
- pos += headerSize;
- }
+ if (header)
+ pos += headerSize();
return pos;
}
return 0;
@@ -291,11 +287,9 @@ public:
if (item->index == -1)
continue;
qreal itemTop = item->rowPos();
- if (item->index == model->count()-1 || (itemTop+rowSize()/2 >= pos))
+ if (itemTop+rowSize()/2 >= pos && itemTop - rowSize()/2 <= pos)
return item;
}
- if (visibleItems.count() && visibleItems.first()->rowPos() <= pos)
- return visibleItems.first();
return 0;
}
@@ -315,6 +309,16 @@ public:
return index;
}
+ qreal headerSize() const {
+ if (!header)
+ return 0.0;
+
+ return flow == QDeclarativeGridView::LeftToRight
+ ? header->item->height()
+ : header->item->width();
+ }
+
+
virtual void itemGeometryChanged(QDeclarativeItem *item, const QRectF &newGeometry, const QRectF &oldGeometry) {
Q_Q(const QDeclarativeGridView);
QDeclarativeFlickablePrivate::itemGeometryChanged(item, newGeometry, oldGeometry);
@@ -878,14 +882,11 @@ void QDeclarativeGridViewPrivate::updateHeader()
if (header) {
if (visibleItems.count()) {
qreal startPos = startPosition();
- qreal headerSize = flow == QDeclarativeGridView::LeftToRight
- ? header->item->height()
- : header->item->width();
if (visibleIndex == 0) {
- header->setPosition(0, startPos - headerSize);
+ header->setPosition(0, startPos - headerSize());
} else {
- if (position() <= startPos || header->rowPos() > startPos - headerSize)
- header->setPosition(0, startPos - headerSize);
+ if (position() <= startPos || header->rowPos() > startPos - headerSize())
+ header->setPosition(0, startPos - headerSize());
}
} else {
header->setPosition(0, 0);
@@ -920,10 +921,14 @@ void QDeclarativeGridViewPrivate::fixup(AxisData &data, qreal minExtent, qreal m
qreal bottomPos = qMax(bottomItem->rowPos() - highlightRangeEnd, -minExtent);
pos = qAbs(data.move + topPos) < qAbs(data.move + bottomPos) ? topPos : bottomPos;
} else if (topItem) {
- pos = qMax(qMin(topItem->rowPos() - highlightRangeStart, -maxExtent), -minExtent);
+ if (topItem->index == 0 && header && position()+highlightRangeStart < header->rowPos()+headerSize()/2)
+ pos = header->rowPos() - highlightRangeStart;
+ else
+ pos = qMax(qMin(topItem->rowPos() - highlightRangeStart, -maxExtent), -minExtent);
} else if (bottomItem) {
pos = qMax(qMin(bottomItem->rowPos() - highlightRangeStart, -maxExtent), -minExtent);
} else {
+ QDeclarativeFlickablePrivate::fixup(data, minExtent, maxExtent);
fixupDuration = oldDuration;
return;
}
@@ -1764,8 +1769,10 @@ void QDeclarativeGridView::setFooter(QDeclarativeComponent *footer)
d->footer = 0;
}
d->footerComponent = footer;
- d->updateFooter();
- d->updateGrid();
+ if (isComponentComplete()) {
+ d->updateFooter();
+ d->updateGrid();
+ }
emit footerChanged();
}
}
@@ -1794,9 +1801,11 @@ void QDeclarativeGridView::setHeader(QDeclarativeComponent *header)
d->header = 0;
}
d->headerComponent = header;
- d->updateHeader();
- d->updateFooter();
- d->updateGrid();
+ if (isComponentComplete()) {
+ d->updateHeader();
+ d->updateFooter();
+ d->updateGrid();
+ }
emit headerChanged();
}
}
@@ -2221,6 +2230,8 @@ void QDeclarativeGridView::componentComplete()
{
Q_D(QDeclarativeGridView);
QDeclarativeFlickable::componentComplete();
+ d->updateHeader();
+ d->updateFooter();
d->updateGrid();
if (d->isValid()) {
refill();
diff --git a/src/declarative/graphicsitems/qdeclarativeimage.cpp b/src/declarative/graphicsitems/qdeclarativeimage.cpp
index 3b08a9bcb3..aa74716325 100644
--- a/src/declarative/graphicsitems/qdeclarativeimage.cpp
+++ b/src/declarative/graphicsitems/qdeclarativeimage.cpp
@@ -461,7 +461,7 @@ QRectF QDeclarativeImage::boundingRect() const
void QDeclarativeImage::paint(QPainter *p, const QStyleOptionGraphicsItem *, QWidget *)
{
Q_D(QDeclarativeImage);
- if (d->pix.isNull())
+ if (d->pix.pixmap().isNull() )
return;
bool oldAA = p->testRenderHint(QPainter::Antialiasing);
diff --git a/src/declarative/graphicsitems/qdeclarativeitem.cpp b/src/declarative/graphicsitems/qdeclarativeitem.cpp
index e0df75195b..11286b0410 100644
--- a/src/declarative/graphicsitems/qdeclarativeitem.cpp
+++ b/src/declarative/graphicsitems/qdeclarativeitem.cpp
@@ -421,58 +421,28 @@ void QDeclarativeItemKeyFilter::componentComplete()
\since 4.7
\brief The KeyNavigation attached property supports key navigation by arrow keys.
- It is common in key-based UIs to use arrow keys to navigate
- between focused items. The KeyNavigation property provides a
- convenient way of specifying which item will gain focus
- when an arrow key is pressed. The following example provides
- key navigation for a 2x2 grid of items.
-
- \code
- Grid {
- columns: 2
- width: 100; height: 100
- Rectangle {
- id: item1
- focus: true
- width: 50; height: 50
- color: focus ? "red" : "lightgray"
- KeyNavigation.right: item2
- KeyNavigation.down: item3
- }
- Rectangle {
- id: item2
- width: 50; height: 50
- color: focus ? "red" : "lightgray"
- KeyNavigation.left: item1
- KeyNavigation.down: item4
- }
- Rectangle {
- id: item3
- width: 50; height: 50
- color: focus ? "red" : "lightgray"
- KeyNavigation.right: item4
- KeyNavigation.up: item1
- }
- Rectangle {
- id: item4
- width: 50; height: 50
- color: focus ? "red" : "lightgray"
- KeyNavigation.left: item3
- KeyNavigation.up: item2
- }
- }
- \endcode
+ Key-based user interfaces commonly allow the use of arrow keys to navigate between
+ focusable items. The KeyNavigation attached property enables this behavior by providing a
+ convenient way to specify the item that should gain focus when an arrow or tab key is pressed.
+
+ The following example provides key navigation for a 2x2 grid of items:
- By default KeyNavigation receives key events after the item it is attached to.
- If the item accepts an arrow key event, the KeyNavigation
- attached property will not receive an event for that key. Setting the
- \l priority property to KeyNavigation.BeforeItem allows handling
- of the key events before normal item processing.
+ \snippet doc/src/snippets/declarative/keynavigation.qml 0
- If an item has been set for a direction and the KeyNavigation
- attached property receives the corresponding
- key press and release events, the events will be accepted by
- KeyNavigation and will not propagate any further.
+ The top-left item initially receives focus by setting \l {Item::}{focus} to
+ \c true. When an arrow key is pressed, the focus will move to the
+ appropriate item, as defined by the value that has been set for
+ the KeyNavigation \l left, \l right, \l up or \l down properties.
+
+ Note that if a KeyNavigation attached property receives the key press and release
+ events for a requested arrow or tab key, the event is accepted and does not
+ propagate any further.
+
+ By default, KeyNavigation receives key events after the item to which it is attached.
+ If the item accepts the key event, the KeyNavigation attached property will not
+ receive an event for that key. Setting the \l priority property to
+ \c KeyNavigation.BeforeItem allows the event to be used for key navigation
+ before the item, rather than after.
\sa {Keys}{Keys attached property}
*/
@@ -484,10 +454,18 @@ void QDeclarativeItemKeyFilter::componentComplete()
\qmlproperty Item KeyNavigation::down
These properties hold the item to assign focus to
- when Key_Left, Key_Right, Key_Up or Key_Down are
+ when the left, right, up or down cursor keys are
pressed.
*/
+/*!
+ \qmlproperty Item KeyNavigation::tab
+ \qmlproperty Item KeyNavigation::backtab
+
+ These properties hold the item to assign focus to
+ when the Tab key or Shift+Tab key combination (Backtab) are pressed.
+*/
+
QDeclarativeKeyNavigationAttached::QDeclarativeKeyNavigationAttached(QObject *parent)
: QObject(*(new QDeclarativeKeyNavigationAttachedPrivate), parent),
QDeclarativeItemKeyFilter(qobject_cast<QDeclarativeItem*>(parent))
@@ -599,7 +577,7 @@ void QDeclarativeKeyNavigationAttached::setBacktab(QDeclarativeItem *i)
\list
\o KeyNavigation.BeforeItem - process the key events before normal
- item key processing. If the event is accepted it will not
+ item key processing. If the event is used for key navigation, it will be accepted and will not
be passed on to the item.
\o KeyNavigation.AfterItem (default) - process the key events after normal item key
handling. If the item accepts the key event it will not be
@@ -941,6 +919,20 @@ void QDeclarativeKeyNavigationAttached::keyReleased(QKeyEvent *event, bool post)
*/
/*!
+ \qmlsignal Keys::onTabPressed(KeyEvent event)
+
+ This handler is called when the Tab key has been pressed. The \a event
+ parameter provides information about the event.
+*/
+
+/*!
+ \qmlsignal Keys::onBacktabPressed(KeyEvent event)
+
+ This handler is called when the Shift+Tab key combination (Backtab) has
+ been pressed. The \a event parameter provides information about the event.
+*/
+
+/*!
\qmlsignal Keys::onAsteriskPressed(KeyEvent event)
This handler is called when the Asterisk '*' has been pressed. The \a event
diff --git a/src/declarative/graphicsitems/qdeclarativeitem_p.h b/src/declarative/graphicsitems/qdeclarativeitem_p.h
index f85fa27874..a36ee34363 100644
--- a/src/declarative/graphicsitems/qdeclarativeitem_p.h
+++ b/src/declarative/graphicsitems/qdeclarativeitem_p.h
@@ -126,7 +126,7 @@ public:
widthValid(false), heightValid(false),
componentComplete(true), keepMouse(false),
smooth(false), transformOriginDirty(true), doneEventPreHandler(false), keyHandler(0),
- mWidth(0), mHeight(0), implicitWidth(0), implicitHeight(0)
+ mWidth(0), mHeight(0), implicitWidth(0), implicitHeight(0), hadSubFocusItem(false)
{
QGraphicsItemPrivate::acceptedMouseButtons = 0;
isDeclarativeItem = 1;
@@ -259,7 +259,7 @@ public:
QDeclarativeStateGroup *_states();
QDeclarativeStateGroup *_stateGroup;
- QDeclarativeItem::TransformOrigin origin:4;
+ QDeclarativeItem::TransformOrigin origin:5;
bool widthValid:1;
bool heightValid:1;
bool componentComplete:1;
@@ -275,6 +275,8 @@ public:
qreal implicitWidth;
qreal implicitHeight;
+ bool hadSubFocusItem;
+
QPointF computeTransformOrigin() const;
virtual void setPosHelper(const QPointF &pos)
@@ -288,9 +290,11 @@ public:
// Reimplemented from QGraphicsItemPrivate
virtual void subFocusItemChange()
{
- if (flags & QGraphicsItem::ItemIsFocusScope || !parent)
- emit q_func()->activeFocusChanged(subFocusItem != 0);
+ bool hasSubFocusItem = subFocusItem != 0;
+ if (((flags & QGraphicsItem::ItemIsFocusScope) || !parent) && hasSubFocusItem != hadSubFocusItem)
+ emit q_func()->activeFocusChanged(hasSubFocusItem);
//see also QDeclarativeItemPrivate::focusChanged
+ hadSubFocusItem = hasSubFocusItem;
}
// Reimplemented from QGraphicsItemPrivate
diff --git a/src/declarative/graphicsitems/qdeclarativelistview.cpp b/src/declarative/graphicsitems/qdeclarativelistview.cpp
index 94b1cb368c..845da79858 100644
--- a/src/declarative/graphicsitems/qdeclarativelistview.cpp
+++ b/src/declarative/graphicsitems/qdeclarativelistview.cpp
@@ -124,8 +124,8 @@ public:
}
qreal endPosition() const {
return (view->orientation() == QDeclarativeListView::Vertical
- ? item->y() + (item->height() > 0 ? item->height() : 1)
- : item->x() + (item->width() > 0 ? item->width() : 1)) - 1;
+ ? item->y() + (item->height() >= 1.0 ? item->height() : 1)
+ : item->x() + (item->width() >= 1.0 ? item->width() : 1)) - 1;
}
void setPosition(qreal pos) {
if (view->orientation() == QDeclarativeListView::Vertical) {
@@ -183,6 +183,7 @@ public:
, ownModel(false), wrap(false), autoHighlight(true), haveHighlightRange(false)
, correctFlick(false), inFlickCorrection(false), lazyRelease(false)
, deferredRelease(false), layoutScheduled(false), currentIndexCleared(false)
+ , inViewportMoved(false)
, minExtentDirty(true), maxExtentDirty(true)
{}
@@ -401,6 +402,8 @@ public:
void itemGeometryChanged(QDeclarativeItem *item, const QRectF &newGeometry, const QRectF &oldGeometry) {
Q_Q(QDeclarativeListView);
QDeclarativeFlickablePrivate::itemGeometryChanged(item, newGeometry, oldGeometry);
+ if (!q->isComponentComplete())
+ return;
if (item != contentItem && (!highlight || item != highlight->item)) {
if ((orient == QDeclarativeListView::Vertical && newGeometry.height() != oldGeometry.height())
|| (orient == QDeclarativeListView::Horizontal && newGeometry.width() != oldGeometry.width())) {
@@ -503,6 +506,7 @@ public:
bool deferredRelease : 1;
bool layoutScheduled : 1;
bool currentIndexCleared : 1;
+ bool inViewportMoved : 1;
mutable bool minExtentDirty : 1;
mutable bool maxExtentDirty : 1;
};
@@ -736,7 +740,7 @@ void QDeclarativeListViewPrivate::layout()
}
if (!visibleItems.isEmpty()) {
qreal oldEnd = visibleItems.last()->endPosition();
- qreal pos = visibleItems.first()->endPosition() + spacing + 1;
+ qreal pos = visibleItems.first()->position() + visibleItems.first()->size() + spacing;
for (int i=1; i < visibleItems.count(); ++i) {
FxListItem *item = visibleItems.at(i);
item->setPosition(pos);
@@ -1121,8 +1125,6 @@ void QDeclarativeListViewPrivate::updateHeader()
QDeclarativeItemPrivate *itemPrivate = static_cast<QDeclarativeItemPrivate*>(QGraphicsItemPrivate::get(item));
itemPrivate->addItemChangeListener(this, QDeclarativeItemPrivate::Geometry);
header = new FxListItem(item, q);
- if (visibleItems.isEmpty())
- visiblePos = header->size();
}
}
if (header) {
@@ -1135,6 +1137,8 @@ void QDeclarativeListViewPrivate::updateHeader()
header->setPosition(startPos - header->size());
}
} else {
+ if (itemCount == 0)
+ visiblePos = header->size();
header->setPosition(0);
}
}
@@ -1161,30 +1165,39 @@ void QDeclarativeListViewPrivate::fixup(AxisData &data, qreal minExtent, qreal m
int oldDuration = fixupDuration;
fixupDuration = moveReason == Mouse ? fixupDuration : 0;
- if (snapMode != QDeclarativeListView::NoSnap) {
+ if (currentItem && haveHighlightRange && highlightRange == QDeclarativeListView::StrictlyEnforceRange) {
+ updateHighlight();
+ qreal pos = currentItem->itemPosition();
+ qreal viewPos = position();
+ if (viewPos < pos + currentItem->itemSize() - highlightRangeEnd)
+ viewPos = pos + currentItem->itemSize() - highlightRangeEnd;
+ if (viewPos > pos - highlightRangeStart)
+ viewPos = pos - highlightRangeStart;
+
+ timeline.reset(data.move);
+ if (viewPos != position()) {
+ if (fixupDuration)
+ timeline.move(data.move, -viewPos, QEasingCurve(QEasingCurve::InOutQuad), fixupDuration/2);
+ else
+ timeline.set(data.move, -viewPos);
+ }
+ vTime = timeline.time();
+ } else if (snapMode != QDeclarativeListView::NoSnap) {
FxListItem *topItem = snapItemAt(position()+highlightRangeStart);
FxListItem *bottomItem = snapItemAt(position()+highlightRangeEnd);
qreal pos;
- if (topItem && bottomItem && haveHighlightRange && highlightRange == QDeclarativeListView::StrictlyEnforceRange) {
- qreal topPos = qMin(topItem->position() - highlightRangeStart, -maxExtent);
- qreal bottomPos = qMax(bottomItem->position() - highlightRangeEnd, -minExtent);
- pos = qAbs(data.move + topPos) < qAbs(data.move + bottomPos) ? topPos : bottomPos;
- } else if (topItem) {
- pos = qMax(qMin(topItem->position() - highlightRangeStart, -maxExtent), -minExtent);
+ if (topItem) {
+ if (topItem->index == 0 && header && position()+highlightRangeStart < header->position()+header->size()/2)
+ pos = header->position() - highlightRangeStart;
+ else
+ pos = qMax(qMin(topItem->position() - highlightRangeStart, -maxExtent), -minExtent);
} else if (bottomItem) {
- pos = qMax(qMin(bottomItem->position() - highlightRangeStart, -maxExtent), -minExtent);
+ pos = qMax(qMin(bottomItem->position() - highlightRangeStart, -maxExtent), -minExtent);
} else {
+ QDeclarativeFlickablePrivate::fixup(data, minExtent, maxExtent);
fixupDuration = oldDuration;
return;
}
- if (currentItem && haveHighlightRange && highlightRange == QDeclarativeListView::StrictlyEnforceRange) {
- updateHighlight();
- qreal currPos = currentItem->itemPosition();
- if (pos < currPos + currentItem->itemSize() - highlightRangeEnd)
- pos = currPos + currentItem->itemSize() - highlightRangeEnd;
- if (pos > currPos - highlightRangeStart)
- pos = currPos - highlightRangeStart;
- }
qreal dist = qAbs(data.move + pos);
if (dist > 0) {
@@ -1195,25 +1208,6 @@ void QDeclarativeListViewPrivate::fixup(AxisData &data, qreal minExtent, qreal m
timeline.set(data.move, -pos);
vTime = timeline.time();
}
- } else if (haveHighlightRange && highlightRange == QDeclarativeListView::StrictlyEnforceRange) {
- if (currentItem) {
- updateHighlight();
- qreal pos = currentItem->itemPosition();
- qreal viewPos = position();
- if (viewPos < pos + currentItem->itemSize() - highlightRangeEnd)
- viewPos = pos + currentItem->itemSize() - highlightRangeEnd;
- if (viewPos > pos - highlightRangeStart)
- viewPos = pos - highlightRangeStart;
-
- timeline.reset(data.move);
- if (viewPos != position()) {
- if (fixupDuration)
- timeline.move(data.move, -viewPos, QEasingCurve(QEasingCurve::InOutQuad), fixupDuration/2);
- else
- timeline.set(data.move, -viewPos);
- }
- vTime = timeline.time();
- }
} else {
QDeclarativeFlickablePrivate::fixup(data, minExtent, maxExtent);
}
@@ -2223,8 +2217,10 @@ void QDeclarativeListView::setFooter(QDeclarativeComponent *footer)
d->footerComponent = footer;
d->minExtentDirty = true;
d->maxExtentDirty = true;
- d->updateFooter();
- d->updateViewport();
+ if (isComponentComplete()) {
+ d->updateFooter();
+ d->updateViewport();
+ }
emit footerChanged();
}
}
@@ -2255,9 +2251,11 @@ void QDeclarativeListView::setHeader(QDeclarativeComponent *header)
d->headerComponent = header;
d->minExtentDirty = true;
d->maxExtentDirty = true;
- d->updateHeader();
- d->updateFooter();
- d->updateViewport();
+ if (isComponentComplete()) {
+ d->updateHeader();
+ d->updateFooter();
+ d->updateViewport();
+ }
emit headerChanged();
}
}
@@ -2295,6 +2293,10 @@ void QDeclarativeListView::viewportMoved()
QDeclarativeFlickable::viewportMoved();
if (!d->itemCount)
return;
+ // Recursion can occur due to refill changing the content size.
+ if (d->inViewportMoved)
+ return;
+ d->inViewportMoved = true;
d->lazyRelease = true;
refill();
if (d->flickingHorizontally || d->flickingVertically || d->movingHorizontally || d->movingVertically)
@@ -2308,6 +2310,7 @@ void QDeclarativeListView::viewportMoved()
pos = viewPos + d->highlightRangeEnd - d->highlight->size();
if (pos < viewPos + d->highlightRangeStart)
pos = viewPos + d->highlightRangeStart;
+ d->highlightPosAnimator->stop();
d->highlight->setPosition(qRound(pos));
// update current index
@@ -2355,6 +2358,7 @@ void QDeclarativeListView::viewportMoved()
}
d->inFlickCorrection = false;
}
+ d->inViewportMoved = false;
}
qreal QDeclarativeListView::minYExtent() const
@@ -2661,6 +2665,8 @@ void QDeclarativeListView::componentComplete()
Q_D(QDeclarativeListView);
QDeclarativeFlickable::componentComplete();
updateSections();
+ d->updateHeader();
+ d->updateFooter();
if (d->isValid()) {
refill();
d->moveReason = QDeclarativeListViewPrivate::SetIndex;
diff --git a/src/declarative/graphicsitems/qdeclarativeloader.cpp b/src/declarative/graphicsitems/qdeclarativeloader.cpp
index 109fbbbbd5..1119b92162 100644
--- a/src/declarative/graphicsitems/qdeclarativeloader.cpp
+++ b/src/declarative/graphicsitems/qdeclarativeloader.cpp
@@ -129,15 +129,41 @@ void QDeclarativeLoaderPrivate::initResize()
The loaded item can be accessed using the \l item property.
- Loader is like any other visual item and must be positioned and sized
- accordingly to become visible. Once the component is loaded, the Loader
- is automatically resized to the size of the component.
-
If the \l source or \l sourceComponent changes, any previously instantiated
items are destroyed. Setting \l source to an empty string or setting
\l sourceComponent to \c undefined destroys the currently loaded item,
freeing resources and leaving the Loader empty.
+ \section2 Loader sizing behavior
+
+ Loader is like any other visual item and must be positioned and sized
+ accordingly to become visible.
+
+ \list
+ \o If an explicit size is not specified for the Loader, the Loader
+ is automatically resized to the size of the loaded item once the
+ component is loaded.
+ \o If the size of the Loader is specified explicitly by setting
+ the width, height or by anchoring, the loaded item will be resized
+ to the size of the Loader.
+ \endlist
+
+ In both scenarios the size of the item and the Loader are identical.
+ This ensures that anchoring to the Loader is equivalent to anchoring
+ to the loaded item.
+
+ \table
+ \row
+ \o sizeloader.qml
+ \o sizeitem.qml
+ \row
+ \o \snippet doc/src/snippets/declarative/loader/sizeloader.qml 0
+ \o \snippet doc/src/snippets/declarative/loader/sizeitem.qml 0
+ \row
+ \o The red rectangle will be sized to the size of the root item.
+ \o The red rectangle will be 50x50, centered in the root item.
+ \endtable
+
\section2 Receiving signals from loaded items
@@ -343,12 +369,14 @@ void QDeclarativeLoaderPrivate::_q_sourceLoaded()
QDeclarativeContext *ctxt = new QDeclarativeContext(creationContext);
ctxt->setContextObject(q);
- QDeclarativeComponent *c = component;
- QObject *obj = component->create(ctxt);
+ QDeclarativeGuard<QDeclarativeComponent> c = component;
+ QObject *obj = component->beginCreate(ctxt);
if (component != c) {
// component->create could trigger a change in source that causes
// component to be set to something else. In that case we just
// need to cleanup.
+ if (c)
+ c->completeCreate();
delete obj;
delete ctxt;
return;
@@ -373,6 +401,7 @@ void QDeclarativeLoaderPrivate::_q_sourceLoaded()
delete ctxt;
source = QUrl();
}
+ component->completeCreate();
emit q->sourceChanged();
emit q->statusChanged();
emit q->progressChanged();
diff --git a/src/declarative/graphicsitems/qdeclarativemousearea.cpp b/src/declarative/graphicsitems/qdeclarativemousearea.cpp
index d9edd11171..0a043a7967 100644
--- a/src/declarative/graphicsitems/qdeclarativemousearea.cpp
+++ b/src/declarative/graphicsitems/qdeclarativemousearea.cpp
@@ -500,17 +500,9 @@ void QDeclarativeMouseArea::mouseMoveEvent(QGraphicsSceneMouseEvent *event)
const int dragThreshold = QApplication::startDragDistance();
qreal dx = qAbs(curLocalPos.x() - startLocalPos.x());
qreal dy = qAbs(curLocalPos.y() - startLocalPos.y());
- if ((d->dragX && !(dx < dragThreshold)) || (d->dragY && !(dy < dragThreshold))) {
+
+ if (keepMouseGrab() && d->stealMouse)
d->drag->setActive(true);
- d->stealMouse = true;
- }
- if (!keepMouseGrab()) {
- if ((!d->dragY && dy < dragThreshold && d->dragX && dx > dragThreshold)
- || (!d->dragX && dx < dragThreshold && d->dragY && dy > dragThreshold)
- || (d->dragX && d->dragY)) {
- setKeepMouseGrab(true);
- }
- }
if (d->dragX && d->drag->active()) {
qreal x = (curLocalPos.x() - startLocalPos.x()) + d->startX;
@@ -528,6 +520,16 @@ void QDeclarativeMouseArea::mouseMoveEvent(QGraphicsSceneMouseEvent *event)
y = drag()->ymax();
drag()->target()->setY(y);
}
+
+ if (!keepMouseGrab()) {
+ if ((!d->dragY && dy < dragThreshold && d->dragX && dx > dragThreshold)
+ || (!d->dragX && dx < dragThreshold && d->dragY && dy > dragThreshold)
+ || (d->dragX && d->dragY && (dx > dragThreshold || dy > dragThreshold))) {
+ setKeepMouseGrab(true);
+ d->stealMouse = true;
+ }
+ }
+
d->moved = true;
}
QDeclarativeMouseEvent me(d->lastPos.x(), d->lastPos.y(), d->lastButton, d->lastButtons, d->lastModifiers, false, d->longPress);
@@ -618,6 +620,7 @@ bool QDeclarativeMouseArea::sceneEvent(QEvent *event)
// if our mouse grab has been removed (probably by Flickable), fix our
// state
d->pressed = false;
+ d->stealMouse = false;
setKeepMouseGrab(false);
emit canceled();
emit pressedChanged();
@@ -672,8 +675,18 @@ bool QDeclarativeMouseArea::sendMouseEvent(QGraphicsSceneMouseEvent *event)
return stealThisEvent;
}
if (mouseEvent.type() == QEvent::GraphicsSceneMouseRelease) {
- d->stealMouse = false;
- ungrabMouse();
+ if (d->pressed) {
+ d->pressed = false;
+ d->stealMouse = false;
+ if (s && s->mouseGrabberItem() == this)
+ ungrabMouse();
+ emit canceled();
+ emit pressedChanged();
+ if (d->hovered) {
+ d->hovered = false;
+ emit hoveredChanged();
+ }
+ }
}
return false;
}
diff --git a/src/declarative/graphicsitems/qdeclarativepathview.cpp b/src/declarative/graphicsitems/qdeclarativepathview.cpp
index dc3d5ee0c6..7c79afe6bc 100644
--- a/src/declarative/graphicsitems/qdeclarativepathview.cpp
+++ b/src/declarative/graphicsitems/qdeclarativepathview.cpp
@@ -373,7 +373,21 @@ void QDeclarativePathViewPrivate::regenerate()
opacity of the items as they rotate. This additional code can be seen in the
PathAttribute documentation.)
- The \c focus can be set to \c true to enable keyboard navigation.
+ PathView does not automatically handle keyboard navigation. This is because
+ the keys to use for navigation will depend upon the shape of the path. Navigation
+ can be added quite simply by setting \c focus to \c true and calling
+ \l decrementCurrentIndex() or \l incrementCurrentIndex(), for example to navigate
+ using the left and right arrow keys:
+
+ \code
+ PathView {
+ ...
+ focus: true
+ Keys.onLeftPressed: decrementCurrentIndex()
+ Keys.onRightPressed: incrementCurrentIndex()
+ }
+ \endcode
+
The path view itself is a focus scope (see \l{qmlfocus#Acquiring Focus and Focus Scopes}{the focus documentation page} for more details).
Delegates are instantiated as needed and may be destroyed at any time.
@@ -523,7 +537,6 @@ int QDeclarativePathView::count() const
/*!
\qmlproperty Path PathView::path
- \default
This property holds the path used to lay out the items.
For more information see the \l Path documentation.
*/
@@ -607,6 +620,8 @@ void QDeclarativePathView::setCurrentIndex(int idx)
*/
void QDeclarativePathView::incrementCurrentIndex()
{
+ Q_D(QDeclarativePathView);
+ d->moveDirection = QDeclarativePathViewPrivate::Positive;
setCurrentIndex(currentIndex()+1);
}
@@ -625,6 +640,7 @@ void QDeclarativePathView::decrementCurrentIndex()
int idx = currentIndex()-1;
if (idx < 0)
idx = d->modelCount - 1;
+ d->moveDirection = QDeclarativePathViewPrivate::Negative;
setCurrentIndex(idx);
}
}
@@ -995,6 +1011,7 @@ void QDeclarativePathView::setDelegate(QDeclarativeComponent *delegate)
}
if (QDeclarativeVisualDataModel *dataModel = qobject_cast<QDeclarativeVisualDataModel*>(d->model)) {
dataModel->setDelegate(delegate);
+ d->modelCount = dataModel->count();
d->regenerate();
emit delegateChanged();
}
@@ -1636,7 +1653,7 @@ void QDeclarativePathViewPrivate::snapToCurrent()
if (!model || modelCount <= 0)
return;
- qreal targetOffset = modelCount - currentIndex;
+ qreal targetOffset = qmlMod(modelCount - currentIndex, modelCount);
moveReason = Other;
offsetAdj = 0.0;
@@ -1645,19 +1662,28 @@ void QDeclarativePathViewPrivate::snapToCurrent()
const int duration = highlightMoveDuration;
- if (targetOffset - offset > modelCount/2) {
+ if (moveDirection == Positive || (moveDirection == Shortest && targetOffset - offset > modelCount/2)) {
qreal distance = modelCount - targetOffset + offset;
- tl.move(moveOffset, 0.0, QEasingCurve(QEasingCurve::InQuad), int(duration * offset / distance));
- tl.set(moveOffset, modelCount);
- tl.move(moveOffset, targetOffset, QEasingCurve(QEasingCurve::OutQuad), int(duration * (modelCount-targetOffset) / distance));
- } else if (targetOffset - offset <= -modelCount/2) {
+ if (targetOffset > moveOffset) {
+ tl.move(moveOffset, 0.0, QEasingCurve(QEasingCurve::InQuad), int(duration * offset / distance));
+ tl.set(moveOffset, modelCount);
+ tl.move(moveOffset, targetOffset, QEasingCurve(offset == 0.0 ? QEasingCurve::InOutQuad : QEasingCurve::OutQuad), int(duration * (modelCount-targetOffset) / distance));
+ } else {
+ tl.move(moveOffset, targetOffset, QEasingCurve(QEasingCurve::InOutQuad), duration);
+ }
+ } else if (moveDirection == Negative || targetOffset - offset <= -modelCount/2) {
qreal distance = modelCount - offset + targetOffset;
- tl.move(moveOffset, modelCount, QEasingCurve(QEasingCurve::InQuad), int(duration * (modelCount-offset) / distance));
- tl.set(moveOffset, 0.0);
- tl.move(moveOffset, targetOffset, QEasingCurve(QEasingCurve::OutQuad), int(duration * targetOffset / distance));
+ if (targetOffset < moveOffset) {
+ tl.move(moveOffset, modelCount, QEasingCurve(targetOffset == 0 ? QEasingCurve::InOutQuad : QEasingCurve::InQuad), int(duration * (modelCount-offset) / distance));
+ tl.set(moveOffset, 0.0);
+ tl.move(moveOffset, targetOffset, QEasingCurve(QEasingCurve::OutQuad), int(duration * targetOffset / distance));
+ } else {
+ tl.move(moveOffset, targetOffset, QEasingCurve(QEasingCurve::InOutQuad), duration);
+ }
} else {
tl.move(moveOffset, targetOffset, QEasingCurve(QEasingCurve::InOutQuad), duration);
}
+ moveDirection = Shortest;
}
QDeclarativePathViewAttached *QDeclarativePathView::qmlAttachedProperties(QObject *obj)
diff --git a/src/declarative/graphicsitems/qdeclarativepathview_p_p.h b/src/declarative/graphicsitems/qdeclarativepathview_p_p.h
index b21721635b..6232b83cb1 100644
--- a/src/declarative/graphicsitems/qdeclarativepathview_p_p.h
+++ b/src/declarative/graphicsitems/qdeclarativepathview_p_p.h
@@ -82,7 +82,7 @@ public:
, dragMargin(0), deceleration(100)
, moveOffset(this, &QDeclarativePathViewPrivate::setAdjustedOffset)
, firstIndex(-1), pathItems(-1), requestedIndex(-1)
- , moveReason(Other), attType(0), highlightComponent(0), highlightItem(0)
+ , moveReason(Other), moveDirection(Shortest), attType(0), highlightComponent(0), highlightItem(0)
, moveHighlight(this, &QDeclarativePathViewPrivate::setHighlightPosition)
, highlightPosition(0)
, highlightRangeStart(0), highlightRangeEnd(0)
@@ -173,6 +173,8 @@ public:
QVariant modelVariant;
enum MovementReason { Other, SetIndex, Mouse };
MovementReason moveReason;
+ enum MovementDirection { Shortest, Negative, Positive };
+ MovementDirection moveDirection;
QDeclarativeOpenMetaObjectType *attType;
QDeclarativeComponent *highlightComponent;
QDeclarativeItem *highlightItem;
diff --git a/src/declarative/graphicsitems/qdeclarativerectangle.cpp b/src/declarative/graphicsitems/qdeclarativerectangle.cpp
index fc3954f042..99b36a882f 100644
--- a/src/declarative/graphicsitems/qdeclarativerectangle.cpp
+++ b/src/declarative/graphicsitems/qdeclarativerectangle.cpp
@@ -260,6 +260,9 @@ void QDeclarativeRectangle::doUpdate()
A width of 1 creates a thin line. For no line, use a width of 0 or a transparent color.
+ \note The width of the rectangle's border does not affect the geometry of the
+ rectangle itself or its position relative to other items if anchors are used.
+
If \c border.width is an odd number, the rectangle is painted at a half-pixel offset to retain
border smoothness. Also, the border is rendered evenly on either side of the
rectangle's boundaries, and the spare pixel is rendered to the right and below the
@@ -417,6 +420,10 @@ void QDeclarativeRectangle::generateRoundedRect()
p.drawRoundedRect(QRectF(qreal(pw)/2+1, qreal(pw)/2+1, d->rectImage.width()-(pw+1), d->rectImage.height()-(pw+1)), d->radius, d->radius);
else
p.drawRoundedRect(QRectF(qreal(pw)/2, qreal(pw)/2, d->rectImage.width()-pw, d->rectImage.height()-pw), d->radius, d->radius);
+
+ // end painting before inserting pixmap
+ // to pixmap cache to avoid a deep copy
+ p.end();
QPixmapCache::insert(key, d->rectImage);
}
}
@@ -451,6 +458,10 @@ void QDeclarativeRectangle::generateBorderedRect()
p.drawRect(QRectF(qreal(pw)/2+1, qreal(pw)/2+1, d->rectImage.width()-(pw+1), d->rectImage.height()-(pw+1)));
else
p.drawRect(QRectF(qreal(pw)/2, qreal(pw)/2, d->rectImage.width()-pw, d->rectImage.height()-pw));
+
+ // end painting before inserting pixmap
+ // to pixmap cache to avoid a deep copy
+ p.end();
QPixmapCache::insert(key, d->rectImage);
}
}
@@ -459,6 +470,8 @@ void QDeclarativeRectangle::generateBorderedRect()
void QDeclarativeRectangle::paint(QPainter *p, const QStyleOptionGraphicsItem *, QWidget *)
{
Q_D(QDeclarativeRectangle);
+ if (width() <= 0 || height() <= 0)
+ return;
if (d->radius > 0 || (d->pen && d->pen->isValid())
|| (d->gradient && d->gradient->gradient()) ) {
drawRect(*p);
@@ -528,6 +541,12 @@ void QDeclarativeRectangle::drawRect(QPainter &p)
Q_ASSERT(d->rectImage.width() == 2*xOffset + 1);
Q_ASSERT(d->rectImage.height() == 2*yOffset + 1);
+ // check whether we've eliminated the center completely
+ if (2*xOffset > width()+pw)
+ xOffset = (width()+pw)/2;
+ if (2*yOffset > height()+pw)
+ yOffset = (height()+pw)/2;
+
QMargins margins(xOffset, yOffset, xOffset, yOffset);
QTileRules rules(Qt::StretchTile, Qt::StretchTile);
//NOTE: even though our item may have qreal-based width and height, qDrawBorderPixmap only supports QRects
diff --git a/src/declarative/graphicsitems/qdeclarativetext.cpp b/src/declarative/graphicsitems/qdeclarativetext.cpp
index 82c444e04f..303b21c0ae 100644
--- a/src/declarative/graphicsitems/qdeclarativetext.cpp
+++ b/src/declarative/graphicsitems/qdeclarativetext.cpp
@@ -436,12 +436,13 @@ void QDeclarativeTextPrivate::invalidateImageCache()
{
Q_Q(QDeclarativeText);
- if (imageCacheDirty)
- return;
-
- imageCacheDirty = true;
- imageCache = QPixmap();
+ if(cacheAllTextAsImage || style != QDeclarativeText::Normal){//If actually using the image cache
+ if (imageCacheDirty)
+ return;
+ imageCacheDirty = true;
+ imageCache = QPixmap();
+ }
if (q->isComponentComplete())
q->update();
}
diff --git a/src/declarative/graphicsitems/qdeclarativetextinput.cpp b/src/declarative/graphicsitems/qdeclarativetextinput.cpp
index 0deacf889b..f8421a3199 100644
--- a/src/declarative/graphicsitems/qdeclarativetextinput.cpp
+++ b/src/declarative/graphicsitems/qdeclarativetextinput.cpp
@@ -771,7 +771,7 @@ void QDeclarativeTextInput::setEchoMode(QDeclarativeTextInput::EchoMode echo)
imHints &= ~(Qt::ImhNoAutoUppercase | Qt::ImhNoPredictiveText);
setInputMethodHints(imHints);
d->control->setEchoMode((uint)echo);
- update();
+ q_textChanged();
emit echoModeChanged(echoMode());
}
diff --git a/src/declarative/graphicsitems/qdeclarativetextlayout.cpp b/src/declarative/graphicsitems/qdeclarativetextlayout.cpp
index e8da3676c4..14a1109aa5 100644
--- a/src/declarative/graphicsitems/qdeclarativetextlayout.cpp
+++ b/src/declarative/graphicsitems/qdeclarativetextlayout.cpp
@@ -361,10 +361,18 @@ void QDeclarativeTextLayout::draw(QPainter *painter, const QPointF &p)
d->position = p;
}
+ QPen oldPen = priv->state->pen;
+ QColor currentColor = oldPen.color();
for (int ii = 0; ii < itemCount; ++ii) {
QStaticTextItem &item = d->items[ii];
+ if (item.color.isValid() && currentColor != item.color) {
+ painter->setPen(item.color);
+ currentColor = item.color;
+ }
priv->extended->drawStaticTextItem(&item);
}
+ if (currentColor != oldPen.color())
+ painter->setPen(oldPen);
}
QT_END_NAMESPACE
diff --git a/src/declarative/graphicsitems/qdeclarativevisualitemmodel.cpp b/src/declarative/graphicsitems/qdeclarativevisualitemmodel.cpp
index 1f01a45bf0..4fe6c4cac2 100644
--- a/src/declarative/graphicsitems/qdeclarativevisualitemmodel.cpp
+++ b/src/declarative/graphicsitems/qdeclarativevisualitemmodel.cpp
@@ -937,6 +937,10 @@ void QDeclarativeVisualDataModel::setPart(const QString &part)
int QDeclarativeVisualDataModel::count() const
{
Q_D(const QDeclarativeVisualDataModel);
+ if (d->m_visualItemModel)
+ return d->m_visualItemModel->count();
+ if (!d->m_delegate)
+ return 0;
return d->modelCount();
}
diff --git a/src/declarative/qml/qdeclarativebinding.cpp b/src/declarative/qml/qdeclarativebinding.cpp
index cb6ad8c76f..a7fbf4438f 100644
--- a/src/declarative/qml/qdeclarativebinding.cpp
+++ b/src/declarative/qml/qdeclarativebinding.cpp
@@ -55,6 +55,158 @@
QT_BEGIN_NAMESPACE
+QDeclarativeAbstractBinding::QDeclarativeAbstractBinding()
+: m_object(0), m_propertyIndex(-1), m_mePtr(0), m_prevBinding(0), m_nextBinding(0)
+{
+}
+
+QDeclarativeAbstractBinding::~QDeclarativeAbstractBinding()
+{
+ Q_ASSERT(m_prevBinding == 0);
+ Q_ASSERT(m_mePtr == 0);
+}
+
+/*!
+Destroy the binding. Use this instead of calling delete.
+
+Bindings are free to implement their own memory management, so the delete operator is not
+necessarily safe. The default implementation clears the binding, removes it from the object
+and calls delete.
+*/
+void QDeclarativeAbstractBinding::destroy()
+{
+ removeFromObject();
+ clear();
+
+ delete this;
+}
+
+/*!
+Add this binding to \a object.
+
+This transfers ownership of the binding to the object, marks the object's property as
+being bound.
+
+However, it does not enable the binding itself or call update() on it.
+*/
+void QDeclarativeAbstractBinding::addToObject(QObject *object, int index)
+{
+ Q_ASSERT(object);
+
+ if (m_object == object && m_propertyIndex == index)
+ return;
+
+ removeFromObject();
+
+ Q_ASSERT(!m_prevBinding);
+
+ m_object = object;
+ m_propertyIndex = index;
+
+ QDeclarativeData *data = QDeclarativeData::get(object, true);
+
+ if (index & 0xFF000000) {
+ // Value type
+
+ int coreIndex = index & 0xFFFFFF;
+
+ // Find the value type proxy (if there is one)
+ QDeclarativeValueTypeProxyBinding *proxy = 0;
+ if (data->hasBindingBit(coreIndex)) {
+ QDeclarativeAbstractBinding *b = data->bindings;
+ while (b && b->propertyIndex() != coreIndex)
+ b = b->m_nextBinding;
+ Q_ASSERT(b && b->bindingType() == QDeclarativeAbstractBinding::ValueTypeProxy);
+ proxy = static_cast<QDeclarativeValueTypeProxyBinding *>(b);
+ }
+
+ if (!proxy) {
+ proxy = new QDeclarativeValueTypeProxyBinding(object, coreIndex);
+ proxy->addToObject(object, coreIndex);
+ }
+
+ m_nextBinding = proxy->m_bindings;
+ if (m_nextBinding) m_nextBinding->m_prevBinding = &m_nextBinding;
+ m_prevBinding = &proxy->m_bindings;
+ proxy->m_bindings = this;
+
+ } else {
+ m_nextBinding = data->bindings;
+ if (m_nextBinding) m_nextBinding->m_prevBinding = &m_nextBinding;
+ m_prevBinding = &data->bindings;
+ data->bindings = this;
+
+ data->setBindingBit(m_object, index);
+ }
+}
+
+/*!
+Remove the binding from the object.
+*/
+void QDeclarativeAbstractBinding::removeFromObject()
+{
+ if (m_prevBinding) {
+ int index = propertyIndex();
+
+ *m_prevBinding = m_nextBinding;
+ if (m_nextBinding) m_nextBinding->m_prevBinding = m_prevBinding;
+ m_prevBinding = 0;
+ m_nextBinding = 0;
+
+ if (index & 0xFF000000) {
+ // Value type - we don't remove the proxy from the object. It will sit their happily
+ // doing nothing until it is removed by a write, a binding change or it is reused
+ // to hold more sub-bindings.
+ } else if (m_object) {
+ QDeclarativeData *data = QDeclarativeData::get(m_object, false);
+ if (data) data->clearBindingBit(index);
+ }
+
+ m_object = 0;
+ m_propertyIndex = -1;
+ }
+}
+
+static void bindingDummyDeleter(QDeclarativeAbstractBinding *)
+{
+}
+
+QDeclarativeAbstractBinding::Pointer QDeclarativeAbstractBinding::weakPointer()
+{
+ if (m_selfPointer.isNull())
+ m_selfPointer = QSharedPointer<QDeclarativeAbstractBinding>(this, bindingDummyDeleter);
+
+ return m_selfPointer.toWeakRef();
+}
+
+void QDeclarativeAbstractBinding::clear()
+{
+ if (m_mePtr) {
+ *m_mePtr = 0;
+ m_mePtr = 0;
+ }
+}
+
+QString QDeclarativeAbstractBinding::expression() const
+{
+ return QLatin1String("<Unknown>");
+}
+
+QObject *QDeclarativeAbstractBinding::object() const
+{
+ return m_object;
+}
+
+int QDeclarativeAbstractBinding::propertyIndex() const
+{
+ return m_propertyIndex;
+}
+
+void QDeclarativeAbstractBinding::setEnabled(bool enabled, QDeclarativePropertyPrivate::WriteFlags flags)
+{
+ if (enabled) update(flags);
+}
+
void QDeclarativeBindingPrivate::refresh()
{
Q_Q(QDeclarativeBinding);
@@ -255,20 +407,8 @@ void QDeclarativeBinding::setEnabled(bool e, QDeclarativePropertyPrivate::WriteF
d->enabled = e;
setNotifyOnValueChanged(e);
- QDeclarativeAbstractBinding::setEnabled(e, flags);
-
- if (e) {
- addToObject(d->property.object());
+ if (e)
update(flags);
- } else {
- removeFromObject();
- }
-}
-
-int QDeclarativeBinding::propertyIndex()
-{
- Q_D(QDeclarativeBinding);
- return QDeclarativePropertyPrivate::bindingIndex(d->property);
}
bool QDeclarativeBinding::enabled() const
@@ -283,127 +423,6 @@ QString QDeclarativeBinding::expression() const
return QDeclarativeExpression::expression();
}
-QDeclarativeAbstractBinding::QDeclarativeAbstractBinding()
-: m_object(0), m_mePtr(0), m_prevBinding(0), m_nextBinding(0)
-{
-}
-
-QDeclarativeAbstractBinding::~QDeclarativeAbstractBinding()
-{
- Q_ASSERT(m_prevBinding == 0);
- Q_ASSERT(m_mePtr == 0);
-}
-
-void QDeclarativeAbstractBinding::destroy()
-{
- removeFromObject();
- clear();
-
- delete this;
-}
-
-void QDeclarativeAbstractBinding::addToObject(QObject *object)
-{
- Q_ASSERT(object);
-
- if (m_object == object)
- return;
-
- int index = propertyIndex();
-
- removeFromObject();
-
- Q_ASSERT(!m_prevBinding);
-
- m_object = object;
- QDeclarativeData *data = QDeclarativeData::get(object, true);
-
- if (index & 0xFF000000) {
- // Value type
-
- int coreIndex = index & 0xFFFFFF;
-
- // Find the value type proxy (if there is one)
- QDeclarativeValueTypeProxyBinding *proxy = 0;
- if (data->hasBindingBit(coreIndex)) {
- QDeclarativeAbstractBinding *b = data->bindings;
- while (b && b->propertyIndex() != coreIndex)
- b = b->m_nextBinding;
- Q_ASSERT(b && b->bindingType() == QDeclarativeAbstractBinding::ValueTypeProxy);
- proxy = static_cast<QDeclarativeValueTypeProxyBinding *>(b);
- }
-
- if (!proxy)
- proxy = new QDeclarativeValueTypeProxyBinding(object, coreIndex);
- proxy->addToObject(object);
-
- m_nextBinding = proxy->m_bindings;
- if (m_nextBinding) m_nextBinding->m_prevBinding = &m_nextBinding;
- m_prevBinding = &proxy->m_bindings;
- proxy->m_bindings = this;
-
- } else {
- m_nextBinding = data->bindings;
- if (m_nextBinding) m_nextBinding->m_prevBinding = &m_nextBinding;
- m_prevBinding = &data->bindings;
- data->bindings = this;
-
- data->setBindingBit(m_object, index);
- }
-}
-
-void QDeclarativeAbstractBinding::removeFromObject()
-{
- if (m_prevBinding) {
- int index = propertyIndex();
-
- *m_prevBinding = m_nextBinding;
- if (m_nextBinding) m_nextBinding->m_prevBinding = m_prevBinding;
- m_prevBinding = 0;
- m_nextBinding = 0;
-
- if (index & 0xFF000000) {
- // Value type - we don't remove the proxy from the object. It will sit their happily
- // doing nothing for ever more.
- } else if (m_object) {
- QDeclarativeData *data = QDeclarativeData::get(m_object, false);
- if (data) data->clearBindingBit(index);
- }
-
- m_object = 0;
- }
-}
-
-static void bindingDummyDeleter(QDeclarativeAbstractBinding *)
-{
-}
-
-QDeclarativeAbstractBinding::Pointer QDeclarativeAbstractBinding::weakPointer()
-{
- if (m_selfPointer.isNull())
- m_selfPointer = QSharedPointer<QDeclarativeAbstractBinding>(this, bindingDummyDeleter);
-
- return m_selfPointer.toWeakRef();
-}
-
-void QDeclarativeAbstractBinding::clear()
-{
- if (m_mePtr) {
- *m_mePtr = 0;
- m_mePtr = 0;
- }
-}
-
-QString QDeclarativeAbstractBinding::expression() const
-{
- return QLatin1String("<Unknown>");
-}
-
-void QDeclarativeAbstractBinding::setEnabled(bool e, QDeclarativePropertyPrivate::WriteFlags)
-{
- if (e) m_mePtr = 0;
-}
-
QDeclarativeValueTypeProxyBinding::QDeclarativeValueTypeProxyBinding(QObject *o, int index)
: m_object(o), m_index(index), m_bindings(0)
{
@@ -421,16 +440,10 @@ QDeclarativeValueTypeProxyBinding::~QDeclarativeValueTypeProxyBinding()
void QDeclarativeValueTypeProxyBinding::setEnabled(bool e, QDeclarativePropertyPrivate::WriteFlags flags)
{
if (e) {
- addToObject(m_object);
-
QDeclarativeAbstractBinding *bindings = m_bindings;
- m_bindings = 0;
recursiveEnable(bindings, flags);
} else {
- removeFromObject();
-
QDeclarativeAbstractBinding *bindings = m_bindings;
- m_bindings = 0;
recursiveDisable(bindings);
}
}
@@ -440,13 +453,7 @@ void QDeclarativeValueTypeProxyBinding::recursiveEnable(QDeclarativeAbstractBind
if (!b)
return;
- QDeclarativeAbstractBinding *next = b->m_nextBinding;
- b->m_prevBinding = 0;
- b->m_nextBinding = 0;
- Q_ASSERT(b->m_mePtr == 0);
- b->m_mePtr = &b;
-
- recursiveEnable(next, flags);
+ recursiveEnable(b->m_nextBinding, flags);
if (b)
b->setEnabled(true, flags);
@@ -459,19 +466,8 @@ void QDeclarativeValueTypeProxyBinding::recursiveDisable(QDeclarativeAbstractBin
recursiveDisable(b->m_nextBinding);
- b->setEnabled(false, 0);
-
- Q_ASSERT(b->m_prevBinding == 0);
- Q_ASSERT(b->m_nextBinding == 0);
- b->m_nextBinding = m_bindings;
- if (b->m_nextBinding) b->m_nextBinding->m_prevBinding = &b->m_nextBinding;
- b->m_prevBinding = &m_bindings;
- m_bindings = b;
-}
-
-int QDeclarativeValueTypeProxyBinding::propertyIndex()
-{
- return m_index;
+ if (b)
+ b->setEnabled(false, 0);
}
void QDeclarativeValueTypeProxyBinding::update(QDeclarativePropertyPrivate::WriteFlags)
@@ -488,4 +484,25 @@ QDeclarativeAbstractBinding *QDeclarativeValueTypeProxyBinding::binding(int prop
return binding;
}
+/*!
+Removes a collection of bindings, corresponding to the set bits in \a mask.
+*/
+void QDeclarativeValueTypeProxyBinding::removeBindings(quint32 mask)
+{
+ QDeclarativeAbstractBinding *binding = m_bindings;
+ while (binding) {
+ if (mask & (1 << (binding->propertyIndex() >> 24))) {
+ QDeclarativeAbstractBinding *remove = binding;
+ binding = remove->m_nextBinding;
+ *remove->m_prevBinding = remove->m_nextBinding;
+ if (remove->m_nextBinding) remove->m_nextBinding->m_prevBinding = remove->m_prevBinding;
+ remove->m_prevBinding = 0;
+ remove->m_nextBinding = 0;
+ remove->destroy();
+ } else {
+ binding = binding->m_nextBinding;
+ }
+ }
+}
+
QT_END_NAMESPACE
diff --git a/src/declarative/qml/qdeclarativebinding_p.h b/src/declarative/qml/qdeclarativebinding_p.h
index 0b9bde6e75..7823a3db54 100644
--- a/src/declarative/qml/qdeclarativebinding_p.h
+++ b/src/declarative/qml/qdeclarativebinding_p.h
@@ -78,14 +78,16 @@ public:
enum Type { PropertyBinding, ValueTypeProxy };
virtual Type bindingType() const { return PropertyBinding; }
+ QObject *object() const;
+ int propertyIndex() const;
+
void setEnabled(bool e) { setEnabled(e, QDeclarativePropertyPrivate::DontRemoveBinding); }
virtual void setEnabled(bool, QDeclarativePropertyPrivate::WriteFlags) = 0;
- virtual int propertyIndex() = 0;
void update() { update(QDeclarativePropertyPrivate::DontRemoveBinding); }
virtual void update(QDeclarativePropertyPrivate::WriteFlags) = 0;
- void addToObject(QObject *);
+ void addToObject(QObject *, int);
void removeFromObject();
static Pointer getPointer(QDeclarativeAbstractBinding *p) { return p ? p->weakPointer() : Pointer(); }
@@ -98,12 +100,14 @@ private:
Pointer weakPointer();
friend class QDeclarativeData;
+ friend class QDeclarativeComponentPrivate;
friend class QDeclarativeValueTypeProxyBinding;
friend class QDeclarativePropertyPrivate;
friend class QDeclarativeVME;
friend class QtSharedPointer::ExternalRefCount<QDeclarativeAbstractBinding>;
QObject *m_object;
+ int m_propertyIndex;
QDeclarativeAbstractBinding **m_mePtr;
QDeclarativeAbstractBinding **m_prevBinding;
QDeclarativeAbstractBinding *m_nextBinding;
@@ -118,11 +122,12 @@ public:
virtual Type bindingType() const { return ValueTypeProxy; }
virtual void setEnabled(bool, QDeclarativePropertyPrivate::WriteFlags);
- virtual int propertyIndex();
virtual void update(QDeclarativePropertyPrivate::WriteFlags);
QDeclarativeAbstractBinding *binding(int propertyIndex);
+ void removeBindings(quint32 mask);
+
protected:
~QDeclarativeValueTypeProxyBinding();
@@ -154,7 +159,6 @@ public:
// Inherited from QDeclarativeAbstractBinding
virtual void setEnabled(bool, QDeclarativePropertyPrivate::WriteFlags flags);
- virtual int propertyIndex();
virtual void update(QDeclarativePropertyPrivate::WriteFlags flags);
virtual QString expression() const;
diff --git a/src/declarative/qml/qdeclarativecompiledbindings.cpp b/src/declarative/qml/qdeclarativecompiledbindings.cpp
index 5f0fd560ab..5c295b93e6 100644
--- a/src/declarative/qml/qdeclarativecompiledbindings.cpp
+++ b/src/declarative/qml/qdeclarativecompiledbindings.cpp
@@ -187,7 +187,6 @@ public:
// Inherited from QDeclarativeAbstractBinding
virtual void setEnabled(bool, QDeclarativePropertyPrivate::WriteFlags flags);
- virtual int propertyIndex();
virtual void update(QDeclarativePropertyPrivate::WriteFlags flags);
virtual void destroy();
@@ -294,14 +293,6 @@ QDeclarativeAbstractBinding *QDeclarativeCompiledBindings::configBinding(int ind
void QDeclarativeCompiledBindingsPrivate::Binding::setEnabled(bool e, QDeclarativePropertyPrivate::WriteFlags flags)
{
- if (e) {
- addToObject(target);
- } else {
- removeFromObject();
- }
-
- QDeclarativeAbstractBinding::setEnabled(e, flags);
-
if (enabled != e) {
enabled = e;
@@ -309,11 +300,6 @@ void QDeclarativeCompiledBindingsPrivate::Binding::setEnabled(bool e, QDeclarati
}
}
-int QDeclarativeCompiledBindingsPrivate::Binding::propertyIndex()
-{
- return property & 0xFFFF;
-}
-
void QDeclarativeCompiledBindingsPrivate::Binding::update(QDeclarativePropertyPrivate::WriteFlags flags)
{
parent->run(this, flags);
@@ -601,7 +587,7 @@ struct QDeclarativeBindingCompilerPrivate
QDeclarativeImports imports;
QDeclarativeEnginePrivate *engine;
- QString contextName() const { return QLatin1String("$$$SCOPE_") + QString::number((intptr_t)context, 16); }
+ QString contextName() const { return QLatin1String("$$$SCOPE_") + QString::number((quintptr)context, 16); }
bool compile(QDeclarativeJS::AST::Node *);
diff --git a/src/declarative/qml/qdeclarativecompileddata.cpp b/src/declarative/qml/qdeclarativecompileddata.cpp
index a4ecc770c4..690f499b06 100644
--- a/src/declarative/qml/qdeclarativecompileddata.cpp
+++ b/src/declarative/qml/qdeclarativecompileddata.cpp
@@ -169,8 +169,8 @@ QDeclarativeCompiledData::QDeclarativeCompiledData(QDeclarativeEngine *engine)
QDeclarativeCompiledData::~QDeclarativeCompiledData()
{
for (int ii = 0; ii < types.count(); ++ii) {
- if (types.at(ii).ref)
- types.at(ii).ref->release();
+ if (types.at(ii).component)
+ types.at(ii).component->release();
}
for (int ii = 0; ii < propertyCaches.count(); ++ii)
diff --git a/src/declarative/qml/qdeclarativecompiler.cpp b/src/declarative/qml/qdeclarativecompiler.cpp
index b2740b82a6..df428b113e 100644
--- a/src/declarative/qml/qdeclarativecompiler.cpp
+++ b/src/declarative/qml/qdeclarativecompiler.cpp
@@ -591,8 +591,6 @@ bool QDeclarativeCompiler::compile(QDeclarativeEngine *engine,
}
} else if (tref.typeData) {
ref.component = tref.typeData->compiledData();
- ref.ref = tref.typeData;
- ref.ref->addref();
}
ref.className = parserRef->name.toUtf8();
out->types << ref;
@@ -948,6 +946,16 @@ void QDeclarativeCompiler::genObject(QDeclarativeParser::Object *obj)
QDeclarativePropertyCache::Data::IsVMEFunction,
QDeclarativePropertyCache::Data::IsVMESignal);
+ // Add flag for alias properties
+ if (!obj->synthdata.isEmpty()) {
+ const QDeclarativeVMEMetaData *vmeMetaData =
+ reinterpret_cast<const QDeclarativeVMEMetaData *>(obj->synthdata.constData());
+ for (int ii = 0; ii < vmeMetaData->aliasCount; ++ii) {
+ int index = obj->metaObject()->propertyOffset() + vmeMetaData->propertyCount + ii;
+ propertyCache->property(index)->flags |= QDeclarativePropertyCache::Data::IsAlias;
+ }
+ }
+
if (obj == unitRoot) {
propertyCache->addref();
output->rootPropertyCache = propertyCache;
@@ -1005,7 +1013,8 @@ void QDeclarativeCompiler::genObjectBody(QDeclarativeParser::Object *obj)
seenDefer = true;
continue;
}
- genValueProperty(prop, obj);
+ if (!prop->isAlias)
+ genValueProperty(prop, obj);
}
if (seenDefer) {
QDeclarativeInstruction defer;
@@ -1115,25 +1124,56 @@ void QDeclarativeCompiler::genObjectBody(QDeclarativeParser::Object *obj)
}
foreach(Property *prop, obj->valueTypeProperties) {
- QDeclarativeInstruction fetch;
- fetch.type = QDeclarativeInstruction::FetchValueType;
- fetch.fetchValue.property = prop->index;
- fetch.fetchValue.type = prop->type;
- fetch.line = prop->location.start.line;
+ if (!prop->isAlias)
+ genValueTypeProperty(obj, prop);
+ }
- output->bytecode << fetch;
+ foreach(Property *prop, obj->valueProperties) {
+ if (prop->isDeferred)
+ continue;
+ if (prop->isAlias)
+ genValueProperty(prop, obj);
+ }
+
+ foreach(Property *prop, obj->valueTypeProperties) {
+ if (prop->isAlias)
+ genValueTypeProperty(obj, prop);
+ }
+}
+void QDeclarativeCompiler::genValueTypeProperty(QDeclarativeParser::Object *obj,QDeclarativeParser::Property *prop)
+{
+ QDeclarativeInstruction fetch;
+ fetch.type = QDeclarativeInstruction::FetchValueType;
+ fetch.fetchValue.property = prop->index;
+ fetch.fetchValue.type = prop->type;
+ fetch.fetchValue.bindingSkipList = 0;
+ fetch.line = prop->location.start.line;
+
+ if (obj->type == -1 || output->types.at(obj->type).component) {
+ // We only have to do this if this is a composite type. If it is a builtin
+ // type it can't possibly already have bindings that need to be cleared.
foreach(Property *vprop, prop->value->valueProperties) {
- genPropertyAssignment(vprop, prop->value, prop);
+ if (!vprop->values.isEmpty()) {
+ Q_ASSERT(vprop->index >= 0 && vprop->index < 32);
+ fetch.fetchValue.bindingSkipList |= (1 << vprop->index);
+ }
}
+ }
- QDeclarativeInstruction pop;
- pop.type = QDeclarativeInstruction::PopValueType;
- pop.fetchValue.property = prop->index;
- pop.fetchValue.type = prop->type;
- pop.line = prop->location.start.line;
- output->bytecode << pop;
+ output->bytecode << fetch;
+
+ foreach(Property *vprop, prop->value->valueProperties) {
+ genPropertyAssignment(vprop, prop->value, prop);
}
+
+ QDeclarativeInstruction pop;
+ pop.type = QDeclarativeInstruction::PopValueType;
+ pop.fetchValue.property = prop->index;
+ pop.fetchValue.type = prop->type;
+ pop.fetchValue.bindingSkipList = 0;
+ pop.line = prop->location.start.line;
+ output->bytecode << pop;
}
void QDeclarativeCompiler::genComponent(QDeclarativeParser::Object *obj)
@@ -1442,10 +1482,22 @@ bool QDeclarativeCompiler::buildProperty(QDeclarativeParser::Property *prop,
if (p.name()) {
prop->type = p.userType();
}
- }
- if (prop->index != -1)
- prop->parent->setBindingBit(prop->index);
+ // Check if this is an alias
+ if (prop->index != -1 &&
+ prop->parent &&
+ prop->parent->type != -1 &&
+ output->types.at(prop->parent->type).component) {
+
+ QDeclarativePropertyCache *cache = output->types.at(prop->parent->type).component->rootPropertyCache;
+ if (cache && cache->property(prop->index) &&
+ cache->property(prop->index)->flags & QDeclarativePropertyCache::Data::IsAlias)
+ prop->isAlias = true;
+ }
+
+ if (prop->index != -1 && !prop->values.isEmpty())
+ prop->parent->setBindingBit(prop->index);
+ }
if (!prop->isDefault && prop->name == "id" && !ctxt.isSubContext()) {
@@ -1780,6 +1832,12 @@ bool QDeclarativeCompiler::buildGroupedProperty(QDeclarativeParser::Property *pr
COMPILE_EXCEPTION(prop, tr( "Invalid property assignment: \"%1\" is a read-only property").arg(QString::fromUtf8(prop->name)));
}
+
+ if (prop->isAlias) {
+ foreach (Property *vtProp, prop->value->properties)
+ vtProp->isAlias = true;
+ }
+
COMPILE_CHECK(buildValueTypeProperty(enginePrivate->valueTypes[prop->type],
prop->value, obj, ctxt.incr()));
obj->addValueTypeProperty(prop);
@@ -2425,7 +2483,7 @@ bool QDeclarativeCompiler::buildDynamicMeta(QDeclarativeParser::Object *obj, Dyn
if (p.type == Object::DynamicProperty::Alias) {
if (mode == ResolveAliases) {
((QDeclarativeVMEMetaData *)dynamicData.data())->aliasCount++;
- compileAlias(builder, dynamicData, obj, p);
+ COMPILE_CHECK(compileAlias(builder, dynamicData, obj, p));
} else {
// Need a fake signal so that the metaobject remains consistent across
// the resolve and non-resolve alias runs
@@ -2696,7 +2754,10 @@ void QDeclarativeCompiler::genBindingAssignment(QDeclarativeParser::Value *bindi
}
QDeclarativeInstruction store;
- store.type = QDeclarativeInstruction::StoreBinding;
+ if (!prop->isAlias)
+ store.type = QDeclarativeInstruction::StoreBinding;
+ else
+ store.type = QDeclarativeInstruction::StoreBindingOnAlias;
store.assignBinding.value = output->indexForByteArray(ref.compiledData);
store.assignBinding.context = ref.bindingContext.stack;
store.assignBinding.owner = ref.bindingContext.owner;
@@ -2771,13 +2832,17 @@ bool QDeclarativeCompiler::completeComponentBuild()
expr.expression = binding.expression;
expr.imports = unit->imports();
- int index = bindingCompiler.compile(expr, enginePrivate);
- if (index != -1) {
- binding.dataType = BindingReference::Experimental;
- binding.compiledIndex = index;
- componentStat.optimizedBindings.append(iter.key()->location);
- continue;
- }
+ // ### We don't currently optimize for bindings on alias's - because
+ // of the solution to QTBUG-13719
+ if (!binding.property->isAlias) {
+ int index = bindingCompiler.compile(expr, enginePrivate);
+ if (index != -1) {
+ binding.dataType = BindingReference::Experimental;
+ binding.compiledIndex = index;
+ componentStat.optimizedBindings.append(iter.key()->location);
+ continue;
+ }
+ }
binding.dataType = BindingReference::QtScript;
diff --git a/src/declarative/qml/qdeclarativecompiler_p.h b/src/declarative/qml/qdeclarativecompiler_p.h
index 43a0901ca4..7d76ad9cb0 100644
--- a/src/declarative/qml/qdeclarativecompiler_p.h
+++ b/src/declarative/qml/qdeclarativecompiler_p.h
@@ -89,14 +89,12 @@ public:
struct TypeReference
{
TypeReference()
- : type(0), component(0), ref(0) {}
+ : type(0), component(0) {}
QByteArray className;
QDeclarativeType *type;
-// QDeclarativeComponent *component;
QDeclarativeCompiledData *component;
- QDeclarativeRefCount *ref;
QObject *createInstance(QDeclarativeContextData *, const QBitField &, QList<QDeclarativeError> *) const;
const QMetaObject *metaObject() const;
};
@@ -254,6 +252,7 @@ private:
void genObject(QDeclarativeParser::Object *obj);
void genObjectBody(QDeclarativeParser::Object *obj);
+ void genValueTypeProperty(QDeclarativeParser::Object *obj,QDeclarativeParser::Property *);
void genComponent(QDeclarativeParser::Object *obj);
void genValueProperty(QDeclarativeParser::Property *prop, QDeclarativeParser::Object *obj);
void genListProperty(QDeclarativeParser::Property *prop, QDeclarativeParser::Object *obj);
diff --git a/src/declarative/qml/qdeclarativecomponent.cpp b/src/declarative/qml/qdeclarativecomponent.cpp
index 2686ce3d52..63bde0fd14 100644
--- a/src/declarative/qml/qdeclarativecomponent.cpp
+++ b/src/declarative/qml/qdeclarativecomponent.cpp
@@ -876,9 +876,12 @@ void QDeclarativeComponentPrivate::complete(QDeclarativeEnginePrivate *enginePri
QDeclarativeEnginePrivate::SimpleList<QDeclarativeAbstractBinding> bv =
state->bindValues.at(ii);
for (int jj = 0; jj < bv.count; ++jj) {
- if(bv.at(jj))
+ if(bv.at(jj)) {
+ // XXX akennedy
+ bv.at(jj)->m_mePtr = 0;
bv.at(jj)->setEnabled(true, QDeclarativePropertyPrivate::BypassInterceptor |
QDeclarativePropertyPrivate::DontRemoveBinding);
+ }
}
QDeclarativeEnginePrivate::clear(bv);
}
diff --git a/src/declarative/qml/qdeclarativecontext.cpp b/src/declarative/qml/qdeclarativecontext.cpp
index 1e58a71d1e..3ee0e6f321 100644
--- a/src/declarative/qml/qdeclarativecontext.cpp
+++ b/src/declarative/qml/qdeclarativecontext.cpp
@@ -474,7 +474,7 @@ int QDeclarativeContextPrivate::context_count(QDeclarativeListProperty<QObject>
{
QDeclarativeContext *context = static_cast<QDeclarativeContext*>(prop->object);
QDeclarativeContextPrivate *d = QDeclarativeContextPrivate::get(context);
- int contextProperty = (int)(intptr_t)prop->data;
+ int contextProperty = (int)(quintptr)prop->data;
if (d->propertyValues.at(contextProperty).userType() != qMetaTypeId<QList<QObject*> >()) {
return 0;
@@ -487,7 +487,7 @@ QObject *QDeclarativeContextPrivate::context_at(QDeclarativeListProperty<QObject
{
QDeclarativeContext *context = static_cast<QDeclarativeContext*>(prop->object);
QDeclarativeContextPrivate *d = QDeclarativeContextPrivate::get(context);
- int contextProperty = (int)(intptr_t)prop->data;
+ int contextProperty = (int)(quintptr)prop->data;
if (d->propertyValues.at(contextProperty).userType() != qMetaTypeId<QList<QObject*> >()) {
return 0;
diff --git a/src/declarative/qml/qdeclarativedata_p.h b/src/declarative/qml/qdeclarativedata_p.h
index def418842c..476716968a 100644
--- a/src/declarative/qml/qdeclarativedata_p.h
+++ b/src/declarative/qml/qdeclarativedata_p.h
@@ -65,6 +65,7 @@ class QDeclarativeContext;
class QDeclarativePropertyCache;
class QDeclarativeContextData;
class QDeclarativeNotifier;
+class QDeclarativeDataExtended;
// This class is structured in such a way, that simply zero'ing it is the
// default state for elemental object allocations. This is crucial in the
// workings of the QDeclarativeInstruction::CreateSimpleObject instruction.
@@ -150,17 +151,13 @@ public:
}
}
+ bool hasExtendedData() const { return extendedData != 0; }
QDeclarativeNotifier *objectNameNotifier() const;
QHash<int, QObject *> *attachedProperties() const;
- struct ExtendedData {
- ExtendedData();
- ~ExtendedData();
-
- QHash<int, QObject *> attachedProperties;
- void *objectNameNotifier;
- };
- mutable ExtendedData *extendedData;
+private:
+ // For objectNameNotifier and attachedProperties
+ mutable QDeclarativeDataExtended *extendedData;
};
template<class T>
diff --git a/src/declarative/qml/qdeclarativeengine.cpp b/src/declarative/qml/qdeclarativeengine.cpp
index 808ba687ea..a8404f0c68 100644
--- a/src/declarative/qml/qdeclarativeengine.cpp
+++ b/src/declarative/qml/qdeclarativeengine.cpp
@@ -678,6 +678,9 @@ QNetworkAccessManager *QDeclarativeEngine::networkAccessManager() const
requests. See the QDeclarativeImageProvider documentation for details on
implementing and using image providers.
+ All required image providers should be added to the engine before any
+ QML sources files are loaded.
+
Note that images loaded from a QDeclarativeImageProvider are cached
by QPixmapCache, similar to any image loaded by QML.
@@ -897,9 +900,7 @@ void QDeclarativeEngine::setObjectOwnership(QObject *object, ObjectOwnership own
if (!object)
return;
- // No need to do anything if CppOwnership and there is no QDeclarativeData as
- // the current ownership must be CppOwnership
- QDeclarativeData *ddata = QDeclarativeData::get(object, ownership == JavaScriptOwnership);
+ QDeclarativeData *ddata = QDeclarativeData::get(object, true);
if (!ddata)
return;
@@ -957,7 +958,7 @@ QObject *qmlAttachedPropertiesObjectById(int id, const QObject *object, bool cre
if (!data)
return 0; // Attached properties are only on objects created by QML
- QObject *rv = data->extendedData?data->attachedProperties()->value(id):0;
+ QObject *rv = data->hasExtendedData()?data->attachedProperties()->value(id):0;
if (rv || !create)
return rv;
@@ -985,6 +986,35 @@ QObject *qmlAttachedPropertiesObject(int *idCache, const QObject *object,
return qmlAttachedPropertiesObjectById(*idCache, object, create);
}
+class QDeclarativeDataExtended {
+public:
+ QDeclarativeDataExtended();
+ ~QDeclarativeDataExtended();
+
+ QHash<int, QObject *> attachedProperties;
+ QDeclarativeNotifier objectNameNotifier;
+};
+
+QDeclarativeDataExtended::QDeclarativeDataExtended()
+{
+}
+
+QDeclarativeDataExtended::~QDeclarativeDataExtended()
+{
+}
+
+QDeclarativeNotifier *QDeclarativeData::objectNameNotifier() const
+{
+ if (!extendedData) extendedData = new QDeclarativeDataExtended;
+ return &extendedData->objectNameNotifier;
+}
+
+QHash<int, QObject *> *QDeclarativeData::attachedProperties() const
+{
+ if (!extendedData) extendedData = new QDeclarativeDataExtended;
+ return &extendedData->attachedProperties;
+}
+
void QDeclarativeData::destroyed(QObject *object)
{
if (deferredComponent)
@@ -1075,28 +1105,6 @@ void QDeclarativeData::setBindingBit(QObject *obj, int bit)
bindingBits[bit / 32] |= (1 << (bit % 32));
}
-QDeclarativeData::ExtendedData::ExtendedData()
-: objectNameNotifier(0)
-{
-}
-
-QDeclarativeData::ExtendedData::~ExtendedData()
-{
- ((QDeclarativeNotifier *)&objectNameNotifier)->~QDeclarativeNotifier();
-}
-
-QDeclarativeNotifier *QDeclarativeData::objectNameNotifier() const
-{
- if (!extendedData) extendedData = new ExtendedData;
- return (QDeclarativeNotifier *)&extendedData->objectNameNotifier;
-}
-
-QHash<int, QObject *> *QDeclarativeData::attachedProperties() const
-{
- if (!extendedData) extendedData = new ExtendedData;
- return &extendedData->attachedProperties;
-}
-
/*!
Creates a QScriptValue allowing you to use \a object in QML script.
\a engine is the QDeclarativeEngine it is to be created in.
@@ -2225,8 +2233,9 @@ bool QDeclarative_isFileCaseCorrect(const QString &fileName)
if (a != c)
return false;
}
+#else
+ Q_UNUSED(fileName)
#endif
-
return true;
}
diff --git a/src/declarative/qml/qdeclarativeimport.cpp b/src/declarative/qml/qdeclarativeimport.cpp
index 6f5216ab33..acc13de9d4 100644
--- a/src/declarative/qml/qdeclarativeimport.cpp
+++ b/src/declarative/qml/qdeclarativeimport.cpp
@@ -51,6 +51,10 @@
#include <private/qdeclarativetypenamecache_p.h>
#include <private/qdeclarativeengine_p.h>
+#ifdef Q_OS_SYMBIAN
+#include "private/qcore_symbian_p.h"
+#endif
+
QT_BEGIN_NAMESPACE
DEFINE_BOOL_CONFIG_OPTION(qmlImportTrace, QML_IMPORT_TRACE)
@@ -658,8 +662,32 @@ QDeclarativeImportDatabase::QDeclarativeImportDatabase(QDeclarativeEngine *e)
// Search order is applicationDirPath(), $QML_IMPORT_PATH, QLibraryInfo::ImportsPath
- addImportPath(QLibraryInfo::location(QLibraryInfo::ImportsPath));
+ QString installImportsPath = QLibraryInfo::location(QLibraryInfo::ImportsPath);
+#if defined(Q_OS_SYMBIAN)
+ // Append imports path for all available drives in Symbian
+ if (installImportsPath.at(1) != QChar(QLatin1Char(':'))) {
+ QString tempPath = installImportsPath;
+ if (tempPath.at(tempPath.length() - 1) != QDir::separator()) {
+ tempPath += QDir::separator();
+ }
+ RFs& fs = qt_s60GetRFs();
+ TPtrC tempPathPtr(reinterpret_cast<const TText*> (tempPath.constData()));
+ TFindFile finder(fs);
+ TInt err = finder.FindByDir(tempPathPtr, tempPathPtr);
+ while (err == KErrNone) {
+ QString foundDir(reinterpret_cast<const QChar *>(finder.File().Ptr()),
+ finder.File().Length());
+ foundDir = QDir(foundDir).canonicalPath();
+ addImportPath(foundDir);
+ err = finder.Find();
+ }
+ } else {
+ addImportPath(installImportsPath);
+ }
+#else
+ addImportPath(installImportsPath);
+#endif
// env import paths
QByteArray envImportPath = qgetenv("QML_IMPORT_PATH");
if (!envImportPath.isEmpty()) {
diff --git a/src/declarative/qml/qdeclarativeinstruction.cpp b/src/declarative/qml/qdeclarativeinstruction.cpp
index 1767d2f9b1..818c15df88 100644
--- a/src/declarative/qml/qdeclarativeinstruction.cpp
+++ b/src/declarative/qml/qdeclarativeinstruction.cpp
@@ -63,7 +63,7 @@ void QDeclarativeCompiledData::dump(QDeclarativeInstruction *instr, int idx)
qWarning().nospace() << idx << "\t\t" << line << "\t" << "INIT\t\t\t" << instr->init.bindingsSize << "\t" << instr->init.parserStatusSize << "\t" << instr->init.contextCache << "\t" << instr->init.compiledBinding;
break;
case QDeclarativeInstruction::CreateObject:
- qWarning().nospace() << idx << "\t\t" << line << "\t" << "CREATE\t\t\t" << instr->create.type << "\t\t\t" << types.at(instr->create.type).className;
+ qWarning().nospace() << idx << "\t\t" << line << "\t" << "CREATE\t\t\t" << instr->create.type << "\t" << instr->create.bindingBits << "\t\t" << types.at(instr->create.type).className;
break;
case QDeclarativeInstruction::CreateSimpleObject:
qWarning().nospace() << idx << "\t\t" << line << "\t" << "CREATE_SIMPLE\t\t" << instr->createSimple.typeSize;
@@ -174,6 +174,9 @@ void QDeclarativeCompiledData::dump(QDeclarativeInstruction *instr, int idx)
case QDeclarativeInstruction::StoreBinding:
qWarning().nospace() << idx << "\t\t" << line << "\t" << "STORE_BINDING\t" << instr->assignBinding.property << "\t" << instr->assignBinding.value << "\t" << instr->assignBinding.context;
break;
+ case QDeclarativeInstruction::StoreBindingOnAlias:
+ qWarning().nospace() << idx << "\t\t" << line << "\t" << "STORE_BINDING_ALIAS\t" << instr->assignBinding.property << "\t" << instr->assignBinding.value << "\t" << instr->assignBinding.context;
+ break;
case QDeclarativeInstruction::StoreCompiledBinding:
qWarning().nospace() << idx << "\t\t" << line << "\t" << "STORE_COMPILED_BINDING\t" << instr->assignBinding.property << "\t" << instr->assignBinding.value << "\t" << instr->assignBinding.context;
break;
@@ -203,7 +206,7 @@ void QDeclarativeCompiledData::dump(QDeclarativeInstruction *instr, int idx)
qWarning().nospace() << idx << "\t\t" << line << "\t" << "FETCH\t\t\t" << instr->fetch.property;
break;
case QDeclarativeInstruction::FetchValueType:
- qWarning().nospace() << idx << "\t\t" << line << "\t" << "FETCH_VALUE\t\t" << instr->fetchValue.property << "\t" << instr->fetchValue.type;
+ qWarning().nospace() << idx << "\t\t" << line << "\t" << "FETCH_VALUE\t\t" << instr->fetchValue.property << "\t" << instr->fetchValue.type << "\t" << instr->fetchValue.bindingSkipList;
break;
case QDeclarativeInstruction::PopFetchedObject:
qWarning().nospace() << idx << "\t\t" << line << "\t" << "POP";
diff --git a/src/declarative/qml/qdeclarativeinstruction_p.h b/src/declarative/qml/qdeclarativeinstruction_p.h
index f0b032c7dc..94676fc451 100644
--- a/src/declarative/qml/qdeclarativeinstruction_p.h
+++ b/src/declarative/qml/qdeclarativeinstruction_p.h
@@ -132,6 +132,7 @@ public:
AssignCustomType, /* assignCustomType */
StoreBinding, /* assignBinding */
+ StoreBindingOnAlias, /* assignBinding */
StoreCompiledBinding, /* assignBinding */
StoreValueSource, /* assignValueSource */
StoreValueInterceptor, /* assignValueInterceptor */
@@ -214,6 +215,7 @@ public:
struct FetchValueInstruction {
int property;
int type;
+ quint32 bindingSkipList;
};
struct FetchQmlListInstruction {
int property;
diff --git a/src/declarative/qml/qdeclarativeobjectscriptclass.cpp b/src/declarative/qml/qdeclarativeobjectscriptclass.cpp
index ea9211195b..b0bc5bb789 100644
--- a/src/declarative/qml/qdeclarativeobjectscriptclass.cpp
+++ b/src/declarative/qml/qdeclarativeobjectscriptclass.cpp
@@ -69,7 +69,7 @@ struct ObjectData : public QScriptDeclarativeClass::Object {
virtual ~ObjectData() {
if (object && !object->parent()) {
QDeclarativeData *ddata = QDeclarativeData::get(object, false);
- if (ddata && !ddata->indestructible && 0 == --ddata->objectDataRefCount)
+ if (ddata && !ddata->indestructible && 0 == --ddata->objectDataRefCount)
object->deleteLater();
}
}
@@ -421,7 +421,7 @@ QScriptValue QDeclarativeObjectScriptClass::tostring(QScriptContext *context, QS
ret += QString::fromUtf8(obj->metaObject()->className());
ret += QLatin1String("(0x");
- ret += QString::number((intptr_t)obj,16);
+ ret += QString::number((quintptr)obj,16);
if (!objectName.isEmpty()) {
ret += QLatin1String(", \"");
@@ -808,7 +808,14 @@ QScriptDeclarativeClass::Value MetaCallArgument::toValue(QDeclarativeEngine *e)
}
return QScriptDeclarativeClass::Value(engine, rv);
} else if (type == -1 || type == qMetaTypeId<QVariant>()) {
- return QScriptDeclarativeClass::Value(engine, QDeclarativeEnginePrivate::get(e)->scriptValueFromVariant(*((QVariant *)&data)));
+ QDeclarativeEnginePrivate *ep = QDeclarativeEnginePrivate::get(e);
+ QScriptValue rv = ep->scriptValueFromVariant(*((QVariant *)&data));
+ if (rv.isQObject()) {
+ QObject *object = rv.toQObject();
+ if (object)
+ QDeclarativeData::get(object, true)->setImplicitDestructible();
+ }
+ return QScriptDeclarativeClass::Value(engine, rv);
} else {
return QScriptDeclarativeClass::Value();
}
diff --git a/src/declarative/qml/qdeclarativeparser.cpp b/src/declarative/qml/qdeclarativeparser.cpp
index 8d00ef841d..effecb1ff1 100644
--- a/src/declarative/qml/qdeclarativeparser.cpp
+++ b/src/declarative/qml/qdeclarativeparser.cpp
@@ -205,13 +205,13 @@ QDeclarativeParser::Object::DynamicSlot::DynamicSlot(const DynamicSlot &o)
QDeclarativeParser::Property::Property()
: parent(0), type(0), index(-1), value(0), isDefault(true), isDeferred(false),
- isValueTypeSubProperty(false)
+ isValueTypeSubProperty(false), isAlias(false)
{
}
QDeclarativeParser::Property::Property(const QByteArray &n)
: parent(0), type(0), index(-1), value(0), name(n), isDefault(false),
- isDeferred(false), isValueTypeSubProperty(false)
+ isDeferred(false), isValueTypeSubProperty(false), isAlias(false)
{
}
diff --git a/src/declarative/qml/qdeclarativeparser_p.h b/src/declarative/qml/qdeclarativeparser_p.h
index 77184c2ddb..633847d79e 100644
--- a/src/declarative/qml/qdeclarativeparser_p.h
+++ b/src/declarative/qml/qdeclarativeparser_p.h
@@ -358,6 +358,9 @@ namespace QDeclarativeParser
bool isDeferred;
// True if this property is a value-type pseudo-property
bool isValueTypeSubProperty;
+ // True if this property is a property alias. Set by the
+ // QDeclarativeCompiler
+ bool isAlias;
LocationSpan location;
LocationRange listValueRange;
diff --git a/src/declarative/qml/qdeclarativeproperty.cpp b/src/declarative/qml/qdeclarativeproperty.cpp
index 1395e975ec..df0917f6e8 100644
--- a/src/declarative/qml/qdeclarativeproperty.cpp
+++ b/src/declarative/qml/qdeclarativeproperty.cpp
@@ -607,26 +607,7 @@ QDeclarativePropertyPrivate::binding(const QDeclarativeProperty &that)
if (!that.isProperty() || !that.d->object)
return 0;
- QDeclarativeData *data = QDeclarativeData::get(that.d->object);
- if (!data)
- return 0;
-
- if (!data->hasBindingBit(that.d->core.coreIndex))
- return 0;
-
- QDeclarativeAbstractBinding *binding = data->bindings;
- while (binding && binding->propertyIndex() != that.d->core.coreIndex)
- binding = binding->m_nextBinding;
-
- if (binding && that.d->valueType.valueTypeCoreIdx != -1) {
- if (binding->bindingType() == QDeclarativeAbstractBinding::ValueTypeProxy) {
- QDeclarativeValueTypeProxyBinding *proxy = static_cast<QDeclarativeValueTypeProxyBinding *>(binding);
-
- binding = proxy->binding(bindingIndex(that));
- }
- }
-
- return binding;
+ return binding(that.d->object, that.d->core.coreIndex, that.d->valueType.valueTypeCoreIdx);
}
/*!
@@ -658,12 +639,106 @@ QDeclarativePropertyPrivate::setBinding(const QDeclarativeProperty &that,
}
QDeclarativeAbstractBinding *
+QDeclarativePropertyPrivate::binding(QObject *object, int coreIndex, int valueTypeIndex)
+{
+ QDeclarativeData *data = QDeclarativeData::get(object);
+ if (!data)
+ return 0;
+
+ QDeclarativePropertyCache::Data *propertyData =
+ data->propertyCache?data->propertyCache->property(coreIndex):0;
+ if (propertyData && propertyData->flags & QDeclarativePropertyCache::Data::IsAlias) {
+ const QDeclarativeVMEMetaObject *vme =
+ static_cast<const QDeclarativeVMEMetaObject *>(metaObjectForProperty(object->metaObject(), coreIndex));
+
+ QObject *aObject = 0; int aCoreIndex = -1; int aValueTypeIndex = -1;
+ if (!vme->aliasTarget(coreIndex, &aObject, &aCoreIndex, &aValueTypeIndex))
+ return 0;
+
+ // This will either be a value type sub-reference or an alias to a value-type sub-reference not both
+ Q_ASSERT(valueTypeIndex == -1 || aValueTypeIndex == -1);
+ return binding(aObject, aCoreIndex, (valueTypeIndex == -1)?aValueTypeIndex:valueTypeIndex);
+ }
+
+ if (!data->hasBindingBit(coreIndex))
+ return 0;
+
+ QDeclarativeAbstractBinding *binding = data->bindings;
+ while (binding && binding->propertyIndex() != coreIndex)
+ binding = binding->m_nextBinding;
+
+ if (binding && valueTypeIndex != -1) {
+ if (binding->bindingType() == QDeclarativeAbstractBinding::ValueTypeProxy) {
+ int index = coreIndex | (valueTypeIndex << 24);
+ binding = static_cast<QDeclarativeValueTypeProxyBinding *>(binding)->binding(index);
+ }
+ }
+
+ return binding;
+}
+
+void QDeclarativePropertyPrivate::findAliasTarget(QObject *object, int bindingIndex,
+ QObject **targetObject, int *targetBindingIndex)
+{
+ int coreIndex = bindingIndex & 0xFFFFFF;
+ int valueTypeIndex = bindingIndex >> 24;
+ if (valueTypeIndex == 0) valueTypeIndex = -1;
+
+ QDeclarativeData *data = QDeclarativeData::get(object, false);
+ if (data) {
+ QDeclarativePropertyCache::Data *propertyData =
+ data->propertyCache?data->propertyCache->property(coreIndex):0;
+ if (propertyData && propertyData->flags & QDeclarativePropertyCache::Data::IsAlias) {
+ const QDeclarativeVMEMetaObject *vme =
+ static_cast<const QDeclarativeVMEMetaObject *>(metaObjectForProperty(object->metaObject(), coreIndex));
+ QObject *aObject = 0; int aCoreIndex = -1; int aValueTypeIndex = -1;
+ if (vme->aliasTarget(coreIndex, &aObject, &aCoreIndex, &aValueTypeIndex)) {
+ // This will either be a value type sub-reference or an alias to a value-type sub-reference not both
+ Q_ASSERT(valueTypeIndex == -1 || aValueTypeIndex == -1);
+
+ int aBindingIndex = aCoreIndex;
+ if (aValueTypeIndex != -1)
+ aBindingIndex |= aValueTypeIndex << 24;
+ else if (valueTypeIndex != -1)
+ aBindingIndex |= valueTypeIndex << 24;
+
+ findAliasTarget(aObject, aBindingIndex, targetObject, targetBindingIndex);
+ return;
+ }
+ }
+ }
+
+ *targetObject = object;
+ *targetBindingIndex = bindingIndex;
+}
+
+QDeclarativeAbstractBinding *
QDeclarativePropertyPrivate::setBinding(QObject *object, int coreIndex, int valueTypeIndex,
QDeclarativeAbstractBinding *newBinding, WriteFlags flags)
{
QDeclarativeData *data = QDeclarativeData::get(object, 0 != newBinding);
QDeclarativeAbstractBinding *binding = 0;
+ if (data) {
+ QDeclarativePropertyCache::Data *propertyData =
+ data->propertyCache?data->propertyCache->property(coreIndex):0;
+ if (propertyData && propertyData->flags & QDeclarativePropertyCache::Data::IsAlias) {
+ const QDeclarativeVMEMetaObject *vme =
+ static_cast<const QDeclarativeVMEMetaObject *>(metaObjectForProperty(object->metaObject(), coreIndex));
+
+ QObject *aObject = 0; int aCoreIndex = -1; int aValueTypeIndex = -1;
+ if (!vme->aliasTarget(coreIndex, &aObject, &aCoreIndex, &aValueTypeIndex)) {
+ if (newBinding) newBinding->destroy();
+ return 0;
+ }
+
+ // This will either be a value type sub-reference or an alias to a value-type sub-reference not both
+ Q_ASSERT(valueTypeIndex == -1 || aValueTypeIndex == -1);
+ return setBinding(aObject, aCoreIndex, (valueTypeIndex == -1)?aValueTypeIndex:valueTypeIndex,
+ newBinding, flags);
+ }
+ }
+
if (data && data->hasBindingBit(coreIndex)) {
binding = data->bindings;
@@ -671,16 +746,72 @@ QDeclarativePropertyPrivate::setBinding(QObject *object, int coreIndex, int valu
binding = binding->m_nextBinding;
}
- if (binding && valueTypeIndex != -1 && binding->bindingType() == QDeclarativeAbstractBinding::ValueTypeProxy) {
- int index = coreIndex | (valueTypeIndex << 24);
+ int index = coreIndex;
+ if (valueTypeIndex != -1)
+ index |= (valueTypeIndex << 24);
+
+ if (binding && valueTypeIndex != -1 && binding->bindingType() == QDeclarativeAbstractBinding::ValueTypeProxy)
binding = static_cast<QDeclarativeValueTypeProxyBinding *>(binding)->binding(index);
+
+ if (binding) {
+ binding->removeFromObject();
+ binding->setEnabled(false, 0);
}
+ if (newBinding) {
+ newBinding->addToObject(object, index);
+ newBinding->setEnabled(true, flags);
+ }
+
+ return binding;
+}
+
+QDeclarativeAbstractBinding *
+QDeclarativePropertyPrivate::setBindingNoEnable(QObject *object, int coreIndex, int valueTypeIndex,
+ QDeclarativeAbstractBinding *newBinding)
+{
+ QDeclarativeData *data = QDeclarativeData::get(object, 0 != newBinding);
+ QDeclarativeAbstractBinding *binding = 0;
+
+ if (data) {
+ QDeclarativePropertyCache::Data *propertyData =
+ data->propertyCache?data->propertyCache->property(coreIndex):0;
+ if (propertyData && propertyData->flags & QDeclarativePropertyCache::Data::IsAlias) {
+ const QDeclarativeVMEMetaObject *vme =
+ static_cast<const QDeclarativeVMEMetaObject *>(metaObjectForProperty(object->metaObject(), coreIndex));
+
+ QObject *aObject = 0; int aCoreIndex = -1; int aValueTypeIndex = -1;
+ if (!vme->aliasTarget(coreIndex, &aObject, &aCoreIndex, &aValueTypeIndex)) {
+ if (newBinding) newBinding->destroy();
+ return 0;
+ }
+
+ // This will either be a value type sub-reference or an alias to a value-type sub-reference not both
+ Q_ASSERT(valueTypeIndex == -1 || aValueTypeIndex == -1);
+ return setBindingNoEnable(aObject, aCoreIndex, (valueTypeIndex == -1)?aValueTypeIndex:valueTypeIndex,
+ newBinding);
+ }
+ }
+
+ if (data && data->hasBindingBit(coreIndex)) {
+ binding = data->bindings;
+
+ while (binding && binding->propertyIndex() != coreIndex)
+ binding = binding->m_nextBinding;
+ }
+
+ int index = coreIndex;
+ if (valueTypeIndex != -1)
+ index |= (valueTypeIndex << 24);
+
+ if (binding && valueTypeIndex != -1 && binding->bindingType() == QDeclarativeAbstractBinding::ValueTypeProxy)
+ binding = static_cast<QDeclarativeValueTypeProxyBinding *>(binding)->binding(index);
+
if (binding)
- binding->setEnabled(false);
+ binding->removeFromObject();
if (newBinding)
- newBinding->setEnabled(true, flags);
+ newBinding->addToObject(object, index);
return binding;
}
@@ -1392,11 +1523,26 @@ static inline int QMetaObject_methods(const QMetaObject *metaObject)
int className;
int classInfoCount, classInfoData;
int methodCount, methodData;
+ int propertyCount, propertyData;
};
return reinterpret_cast<const Private *>(metaObject->d.data)->methodCount;
}
+static inline int QMetaObject_properties(const QMetaObject *metaObject)
+{
+ struct Private
+ {
+ int revision;
+ int className;
+ int classInfoCount, classInfoData;
+ int methodCount, methodData;
+ int propertyCount, propertyData;
+ };
+
+ return reinterpret_cast<const Private *>(metaObject->d.data)->propertyCount;
+}
+
static inline void flush_vme_signal(const QObject *object, int index)
{
QDeclarativeData *data = static_cast<QDeclarativeData *>(QObjectPrivate::get(const_cast<QObject *>(object))->declarativeData);
@@ -1437,4 +1583,19 @@ bool QDeclarativePropertyPrivate::connect(const QObject *sender, int signal_inde
return QMetaObject::connect(sender, signal_index, receiver, method_index, type, types);
}
+/*!
+Return \a metaObject's [super] meta object that provides data for \a property.
+*/
+const QMetaObject *QDeclarativePropertyPrivate::metaObjectForProperty(const QMetaObject *metaObject, int property)
+{
+ int propertyOffset = metaObject->propertyOffset();
+
+ while (propertyOffset > property) {
+ metaObject = metaObject->d.superdata;
+ propertyOffset -= QMetaObject_properties(metaObject);
+ }
+
+ return metaObject;
+}
+
QT_END_NAMESPACE
diff --git a/src/declarative/qml/qdeclarativeproperty_p.h b/src/declarative/qml/qdeclarativeproperty_p.h
index a9d69791ae..6392f88d80 100644
--- a/src/declarative/qml/qdeclarativeproperty_p.h
+++ b/src/declarative/qml/qdeclarativeproperty_p.h
@@ -68,7 +68,7 @@ class QDeclarativeExpression;
class Q_DECLARATIVE_PRIVATE_EXPORT QDeclarativePropertyPrivate
{
public:
- enum WriteFlag { BypassInterceptor = 0x01, DontRemoveBinding = 0x02 };
+ enum WriteFlag { BypassInterceptor = 0x01, DontRemoveBinding = 0x02, RemoveBindingOnAliasWrite = 0x04 };
Q_DECLARE_FLAGS(WriteFlags, WriteFlag)
QDeclarativePropertyPrivate()
@@ -108,9 +108,13 @@ public:
const QVariant &value, int flags);
static bool write(QObject *, const QDeclarativePropertyCache::Data &, const QVariant &,
QDeclarativeContextData *, WriteFlags flags = 0);
+ static void findAliasTarget(QObject *, int, QObject **, int *);
static QDeclarativeAbstractBinding *setBinding(QObject *, int coreIndex, int valueTypeIndex /* -1 */,
QDeclarativeAbstractBinding *,
WriteFlags flags = DontRemoveBinding);
+ static QDeclarativeAbstractBinding *setBindingNoEnable(QObject *, int coreIndex, int valueTypeIndex /* -1 */,
+ QDeclarativeAbstractBinding *);
+ static QDeclarativeAbstractBinding *binding(QObject *, int coreIndex, int valueTypeIndex /* -1 */);
static QByteArray saveValueType(const QMetaObject *, int,
const QMetaObject *, int);
@@ -120,7 +124,6 @@ public:
static bool equal(const QMetaObject *, const QMetaObject *);
static bool canConvert(const QMetaObject *from, const QMetaObject *to);
-
// "Public" (to QML) methods
static QDeclarativeAbstractBinding *binding(const QDeclarativeProperty &that);
static QDeclarativeAbstractBinding *setBinding(const QDeclarativeProperty &that,
@@ -136,6 +139,7 @@ public:
static bool connect(const QObject *sender, int signal_index,
const QObject *receiver, int method_index,
int type = 0, int *types = 0);
+ static const QMetaObject *metaObjectForProperty(const QMetaObject *, int);
};
Q_DECLARE_OPERATORS_FOR_FLAGS(QDeclarativePropertyPrivate::WriteFlags)
diff --git a/src/declarative/qml/qdeclarativepropertycache.cpp b/src/declarative/qml/qdeclarativepropertycache.cpp
index 0adcdbda44..dd9a2247bd 100644
--- a/src/declarative/qml/qdeclarativepropertycache.cpp
+++ b/src/declarative/qml/qdeclarativepropertycache.cpp
@@ -320,7 +320,6 @@ void QDeclarativePropertyCache::update(QDeclarativeEngine *engine, const QMetaOb
{
Q_ASSERT(engine);
Q_ASSERT(metaObject);
- QDeclarativeEnginePrivate *enginePriv = QDeclarativeEnginePrivate::get(engine);
clear();
diff --git a/src/declarative/qml/qdeclarativepropertycache_p.h b/src/declarative/qml/qdeclarativepropertycache_p.h
index 922010d117..f7c5daaae2 100644
--- a/src/declarative/qml/qdeclarativepropertycache_p.h
+++ b/src/declarative/qml/qdeclarativepropertycache_p.h
@@ -83,6 +83,7 @@ public:
IsConstant = 0x00000001,
IsWritable = 0x00000002,
IsResettable = 0x00000004,
+ IsAlias = 0x00000008,
// These are mutualy exclusive
IsFunction = 0x00000010,
diff --git a/src/declarative/qml/qdeclarativevaluetype.cpp b/src/declarative/qml/qdeclarativevaluetype.cpp
index b9e9cec613..5dc6ffde76 100644
--- a/src/declarative/qml/qdeclarativevaluetype.cpp
+++ b/src/declarative/qml/qdeclarativevaluetype.cpp
@@ -109,36 +109,54 @@ void QDeclarativeValueTypeFactory::registerValueTypes()
QDeclarativeValueType *QDeclarativeValueTypeFactory::valueType(int t)
{
+ QDeclarativeValueType *rv = 0;
+
switch (t) {
case QVariant::Point:
- return new QDeclarativePointValueType;
+ rv = new QDeclarativePointValueType;
+ break;
case QVariant::PointF:
- return new QDeclarativePointFValueType;
+ rv = new QDeclarativePointFValueType;
+ break;
case QVariant::Size:
- return new QDeclarativeSizeValueType;
+ rv = new QDeclarativeSizeValueType;
+ break;
case QVariant::SizeF:
- return new QDeclarativeSizeFValueType;
+ rv = new QDeclarativeSizeFValueType;
+ break;
case QVariant::Rect:
- return new QDeclarativeRectValueType;
+ rv = new QDeclarativeRectValueType;
+ break;
case QVariant::RectF:
- return new QDeclarativeRectFValueType;
+ rv = new QDeclarativeRectFValueType;
+ break;
case QVariant::Vector2D:
- return new QDeclarativeVector2DValueType;
+ rv = new QDeclarativeVector2DValueType;
+ break;
case QVariant::Vector3D:
- return new QDeclarativeVector3DValueType;
+ rv = new QDeclarativeVector3DValueType;
+ break;
case QVariant::Vector4D:
- return new QDeclarativeVector4DValueType;
+ rv = new QDeclarativeVector4DValueType;
+ break;
case QVariant::Quaternion:
- return new QDeclarativeQuaternionValueType;
+ rv = new QDeclarativeQuaternionValueType;
+ break;
case QVariant::Matrix4x4:
- return new QDeclarativeMatrix4x4ValueType;
+ rv = new QDeclarativeMatrix4x4ValueType;
+ break;
case QVariant::EasingCurve:
- return new QDeclarativeEasingValueType;
+ rv = new QDeclarativeEasingValueType;
+ break;
case QVariant::Font:
- return new QDeclarativeFontValueType;
+ rv = new QDeclarativeFontValueType;
+ break;
default:
- return 0;
+ break;
}
+
+ Q_ASSERT(!rv || rv->metaObject()->propertyCount() < 32);
+ return rv;
}
QDeclarativeValueType::QDeclarativeValueType(QObject *parent)
diff --git a/src/declarative/qml/qdeclarativevme.cpp b/src/declarative/qml/qdeclarativevme.cpp
index db90afff81..c742dece24 100644
--- a/src/declarative/qml/qdeclarativevme.cpp
+++ b/src/declarative/qml/qdeclarativevme.cpp
@@ -154,7 +154,8 @@ QObject *QDeclarativeVME::run(QDeclarativeVMEStack<QObject *> &stack,
QDeclarativeEnginePrivate *ep = QDeclarativeEnginePrivate::get(ctxt->engine);
int status = -1; //for dbus
- QDeclarativePropertyPrivate::WriteFlags flags = QDeclarativePropertyPrivate::BypassInterceptor;
+ QDeclarativePropertyPrivate::WriteFlags flags = QDeclarativePropertyPrivate::BypassInterceptor |
+ QDeclarativePropertyPrivate::RemoveBindingOnAliasWrite;
for (int ii = start; !isError() && ii < (start + count); ++ii) {
const QDeclarativeInstruction &instr = comp->bytecode.at(ii);
@@ -664,6 +665,7 @@ QObject *QDeclarativeVME::run(QDeclarativeVMEStack<QObject *> &stack,
break;
case QDeclarativeInstruction::StoreBinding:
+ case QDeclarativeInstruction::StoreBindingOnAlias:
{
QObject *target =
stack.at(stack.count() - 1 - instr.assignBinding.owner);
@@ -675,14 +677,20 @@ QObject *QDeclarativeVME::run(QDeclarativeVMEStack<QObject *> &stack,
int coreIndex = mp.index();
- if (stack.count() == 1 && bindingSkipList.testBit(coreIndex))
+ if ((stack.count() - instr.assignBinding.owner) == 1 && bindingSkipList.testBit(coreIndex))
break;
QDeclarativeBinding *bind = new QDeclarativeBinding((void *)datas.at(instr.assignBinding.value).constData(), comp, context, ctxt, comp->name, instr.line, 0);
bindValues.append(bind);
bind->m_mePtr = &bindValues.values[bindValues.count - 1];
bind->setTarget(mp);
- bind->addToObject(target);
+
+ if (instr.type == QDeclarativeInstruction::StoreBindingOnAlias) {
+ QDeclarativeAbstractBinding *old = QDeclarativePropertyPrivate::setBindingNoEnable(target, coreIndex, QDeclarativePropertyPrivate::valueTypeCoreIndex(mp), bind);
+ if (old) { old->destroy(); }
+ } else {
+ bind->addToObject(target, QDeclarativePropertyPrivate::bindingIndex(mp));
+ }
}
break;
@@ -701,7 +709,7 @@ QObject *QDeclarativeVME::run(QDeclarativeVMEStack<QObject *> &stack,
ctxt->optimizedBindings->configBinding(instr.assignBinding.value, target, scope, property);
bindValues.append(binding);
binding->m_mePtr = &bindValues.values[bindValues.count - 1];
- binding->addToObject(target);
+ binding->addToObject(target, property);
}
break;
@@ -874,8 +882,26 @@ QObject *QDeclarativeVME::run(QDeclarativeVMEStack<QObject *> &stack,
case QDeclarativeInstruction::FetchValueType:
{
QObject *target = stack.top();
- QDeclarativeValueType *valueHandler =
- ep->valueTypes[instr.fetchValue.type];
+
+ if (instr.fetchValue.bindingSkipList != 0) {
+ // Possibly need to clear bindings
+ QDeclarativeData *targetData = QDeclarativeData::get(target);
+ if (targetData) {
+ QDeclarativeAbstractBinding *binding =
+ QDeclarativePropertyPrivate::binding(target, instr.fetchValue.property, -1);
+
+ if (binding && binding->bindingType() != QDeclarativeAbstractBinding::ValueTypeProxy) {
+ QDeclarativePropertyPrivate::setBinding(target, instr.fetchValue.property, -1, 0);
+ binding->destroy();
+ } else if (binding) {
+ QDeclarativeValueTypeProxyBinding *proxy =
+ static_cast<QDeclarativeValueTypeProxyBinding *>(binding);
+ proxy->removeBindings(instr.fetchValue.bindingSkipList);
+ }
+ }
+ }
+
+ QDeclarativeValueType *valueHandler = ep->valueTypes[instr.fetchValue.type];
valueHandler->read(target, instr.fetchValue.property);
stack.push(valueHandler);
}
diff --git a/src/declarative/qml/qdeclarativevmemetaobject.cpp b/src/declarative/qml/qdeclarativevmemetaobject.cpp
index e28062b9d9..38c170998d 100644
--- a/src/declarative/qml/qdeclarativevmemetaobject.cpp
+++ b/src/declarative/qml/qdeclarativevmemetaobject.cpp
@@ -46,6 +46,7 @@
#include "qdeclarativeexpression.h"
#include "private/qdeclarativeexpression_p.h"
#include "private/qdeclarativecontext_p.h"
+#include "private/qdeclarativebinding_p.h"
Q_DECLARE_METATYPE(QScriptValue);
@@ -589,7 +590,21 @@ int QDeclarativeVMEMetaObject::metaCall(QMetaObject::Call c, int _id, void **a)
if (d->isObjectAlias()) {
*reinterpret_cast<QObject **>(a[0]) = target;
return -1;
- } else if (d->isValueTypeAlias()) {
+ }
+
+ // Remove binding (if any) on write
+ if(c == QMetaObject::WriteProperty) {
+ int flags = *reinterpret_cast<int*>(a[3]);
+ if (flags & QDeclarativePropertyPrivate::RemoveBindingOnAliasWrite) {
+ QDeclarativeData *targetData = QDeclarativeData::get(target);
+ if (targetData && targetData->hasBindingBit(d->propertyIndex())) {
+ QDeclarativeAbstractBinding *binding = QDeclarativePropertyPrivate::setBinding(target, d->propertyIndex(), d->isValueTypeAlias()?d->valueTypeIndex():-1, 0);
+ if (binding) binding->destroy();
+ }
+ }
+ }
+
+ if (d->isValueTypeAlias()) {
// Value type property
QDeclarativeEnginePrivate *ep = QDeclarativeEnginePrivate::get(ctxt->engine);
@@ -821,6 +836,36 @@ void QDeclarativeVMEMetaObject::setVMEProperty(int index, const QScriptValue &v)
return writeVarProperty(index - propOffset, v);
}
+bool QDeclarativeVMEMetaObject::aliasTarget(int index, QObject **target, int *coreIndex, int *valueTypeIndex) const
+{
+ Q_ASSERT(index >= propOffset + metaData->propertyCount);
+
+ *target = 0;
+ *coreIndex = -1;
+ *valueTypeIndex = -1;
+
+ if (!ctxt)
+ return false;
+
+ QDeclarativeVMEMetaData::AliasData *d = metaData->aliasData() + (index - propOffset - metaData->propertyCount);
+ QDeclarativeContext *context = ctxt->asQDeclarativeContext();
+ QDeclarativeContextPrivate *ctxtPriv = QDeclarativeContextPrivate::get(context);
+
+ *target = ctxtPriv->data->idValues[d->contextIdx].data();
+ if (!*target)
+ return false;
+
+ if (d->isObjectAlias()) {
+ } else if (d->isValueTypeAlias()) {
+ *coreIndex = d->propertyIndex();
+ *valueTypeIndex = d->valueTypeIndex();
+ } else {
+ *coreIndex = d->propertyIndex();
+ }
+
+ return true;
+}
+
void QDeclarativeVMEMetaObject::connectAlias(int aliasId)
{
if (!aConnected.testBit(aliasId)) {
diff --git a/src/declarative/qml/qdeclarativevmemetaobject_p.h b/src/declarative/qml/qdeclarativevmemetaobject_p.h
index 5134763de1..7b6b410ffe 100644
--- a/src/declarative/qml/qdeclarativevmemetaobject_p.h
+++ b/src/declarative/qml/qdeclarativevmemetaobject_p.h
@@ -138,6 +138,7 @@ public:
QDeclarativeCompiledData *compiledData);
~QDeclarativeVMEMetaObject();
+ bool aliasTarget(int index, QObject **target, int *coreIndex, int *valueTypeIndex) const;
void registerInterceptor(int index, int valueIndex, QDeclarativePropertyValueInterceptor *interceptor);
QScriptValue vmeMethod(int index);
int vmeMethodLineNumber(int index);
@@ -146,6 +147,7 @@ public:
void setVMEProperty(int index, const QScriptValue &);
void connectAliasSignal(int index);
+
protected:
virtual int metaCall(QMetaObject::Call _c, int _id, void **_a);
diff --git a/src/declarative/qml/qdeclarativeworkerscript.cpp b/src/declarative/qml/qdeclarativeworkerscript.cpp
index be7ea0eae3..4b78020d6b 100644
--- a/src/declarative/qml/qdeclarativeworkerscript.cpp
+++ b/src/declarative/qml/qdeclarativeworkerscript.cpp
@@ -52,6 +52,7 @@
#include <QtCore/qwaitcondition.h>
#include <QtScript/qscriptvalueiterator.h>
#include <QtCore/qfile.h>
+#include <QtCore/qdatetime.h>
#include <QtNetwork/qnetworkaccessmanager.h>
#include <QtDeclarative/qdeclarativeinfo.h>
#include "qdeclarativenetworkaccessmanagerfactory.h"
@@ -314,6 +315,12 @@ QVariant QDeclarativeWorkerScriptEnginePrivate::scriptValueToVariant(const QScri
return QVariant(value.toString());
} else if (value.isNumber()) {
return QVariant((qreal)value.toNumber());
+ } else if (value.isDate()) {
+ return QVariant(value.toDateTime());
+#ifndef QT_NO_REGEXP
+ } else if (value.isRegExp()) {
+ return QVariant(value.toRegExp());
+#endif
} else if (value.isArray()) {
QVariantList list;
@@ -364,6 +371,12 @@ QScriptValue QDeclarativeWorkerScriptEnginePrivate::variantToScriptValue(const Q
return QScriptValue(value.toString());
} else if (value.userType() == QMetaType::QReal) {
return QScriptValue(value.toReal());
+ } else if (value.userType() == QVariant::DateTime) {
+ return engine->newDate(value.toDateTime());
+#ifndef QT_NO_REGEXP
+ } else if (value.userType() == QVariant::RegExp) {
+ return engine->newRegExp(value.toRegExp());
+#endif
} else if (value.userType() == qMetaTypeId<QDeclarativeListModelWorkerAgent::VariantRef>()) {
QDeclarativeListModelWorkerAgent::VariantRef vr = qvariant_cast<QDeclarativeListModelWorkerAgent::VariantRef>(value);
if (vr.a->scriptEngine() == 0)
diff --git a/src/declarative/util/qdeclarativeanimation.cpp b/src/declarative/util/qdeclarativeanimation.cpp
index f2e6217f03..dd7e5fd168 100644
--- a/src/declarative/util/qdeclarativeanimation.cpp
+++ b/src/declarative/util/qdeclarativeanimation.cpp
@@ -1324,7 +1324,7 @@ void QDeclarativeVector3dAnimation::setTo(QVector3D t)
/*!
\qmlclass RotationAnimation QDeclarativeRotationAnimation
- \ingroup qml-animation-transition
+ \ingroup qml-animation-transition
\since 4.7
\inherits PropertyAnimation
\brief The RotationAnimation element animates changes in rotation values.
@@ -1333,8 +1333,8 @@ void QDeclarativeVector3dAnimation::setTo(QVector3D t)
over the direction of rotation during an animation.
By default, it rotates in the direction
- of the numerical change; a rotation from 0 to 240 will rotate 220 degrees
- clockwise, while a rotation from 240 to 0 will rotate 220 degrees
+ of the numerical change; a rotation from 0 to 240 will rotate 240 degrees
+ clockwise, while a rotation from 240 to 0 will rotate 240 degrees
counterclockwise. The \l direction property can be set to specify the
direction in which the rotation should occur.
@@ -1342,7 +1342,7 @@ void QDeclarativeVector3dAnimation::setTo(QVector3D t)
between states via the shortest path:
\snippet doc/src/snippets/declarative/rotationanimation.qml 0
-
+
Notice the RotationAnimation did not need to set a \l target
value. As a convenience, when used in a transition, RotationAnimation will rotate all
properties named "rotation" or "angle". You can override this by providing
diff --git a/src/declarative/util/qdeclarativeopenmetaobject.cpp b/src/declarative/util/qdeclarativeopenmetaobject.cpp
index 40485bd503..c611435a1e 100644
--- a/src/declarative/util/qdeclarativeopenmetaobject.cpp
+++ b/src/declarative/util/qdeclarativeopenmetaobject.cpp
@@ -186,6 +186,7 @@ QDeclarativeOpenMetaObject::QDeclarativeOpenMetaObject(QObject *obj, bool automa
d->type->d->referers.insert(this);
QObjectPrivate *op = QObjectPrivate::get(obj);
+ d->parent = static_cast<QAbstractDynamicMetaObject *>(op->metaObject);
*static_cast<QMetaObject *>(this) = *d->type->d->mem;
op->metaObject = this;
}
@@ -201,6 +202,7 @@ QDeclarativeOpenMetaObject::QDeclarativeOpenMetaObject(QObject *obj, QDeclarativ
d->type->d->referers.insert(this);
QObjectPrivate *op = QObjectPrivate::get(obj);
+ d->parent = static_cast<QAbstractDynamicMetaObject *>(op->metaObject);
*static_cast<QMetaObject *>(this) = *d->type->d->mem;
op->metaObject = this;
}
diff --git a/src/declarative/util/qdeclarativepixmapcache.cpp b/src/declarative/util/qdeclarativepixmapcache.cpp
index a07b1bb1cc..380d9bc82f 100644
--- a/src/declarative/util/qdeclarativepixmapcache.cpp
+++ b/src/declarative/util/qdeclarativepixmapcache.cpp
@@ -684,7 +684,7 @@ void QDeclarativePixmapStore::timerEvent(QTimerEvent *)
}
QDeclarativePixmapReply::QDeclarativePixmapReply(QDeclarativePixmapData *d)
-: data(d), reader(0), loading(false), redirectCount(0), requestSize(d->requestSize)
+: data(d), reader(0), requestSize(d->requestSize), loading(false), redirectCount(0)
{
if (finishedIndex == -1) {
finishedIndex = QDeclarativePixmapReply::staticMetaObject.indexOfSignal("finished()");
diff --git a/src/declarative/util/qdeclarativeview.cpp b/src/declarative/util/qdeclarativeview.cpp
index 0e31a20cc5..c22f2004ad 100644
--- a/src/declarative/util/qdeclarativeview.cpp
+++ b/src/declarative/util/qdeclarativeview.cpp
@@ -192,7 +192,7 @@ void QDeclarativeViewPrivate::itemGeometryChanged(QDeclarativeItem *resizeItem,
/*!
\class QDeclarativeView
- \since 4.7
+ \since 4.7
\brief The QDeclarativeView class provides a widget for displaying a Qt Declarative user interface.
QDeclarativeItem objects can be placed on a standard QGraphicsScene and
@@ -360,13 +360,14 @@ QDeclarativeContext* QDeclarativeView::rootContext() const
}
/*!
- \enum QDeclarativeView::Status
+ \enum QDeclarativeView::Status
Specifies the loading status of the QDeclarativeView.
\value Null This QDeclarativeView has no source set.
\value Ready This QDeclarativeView has loaded and created the QML component.
\value Loading This QDeclarativeView is loading network data.
- \value Error An error has occurred. Call errorDescription() to retrieve a description.
+ \value Error One or more errors has occurred. Call errors() to retrieve a list
+ of errors.
*/
/*! \enum QDeclarativeView::ResizeMode
diff --git a/src/gui/dialogs/dialogs.pri b/src/gui/dialogs/dialogs.pri
index 4e1b9a71d1..c25b6d5c1d 100644
--- a/src/gui/dialogs/dialogs.pri
+++ b/src/gui/dialogs/dialogs.pri
@@ -108,6 +108,15 @@ SOURCES += \
dialogs/qwizard.cpp \
dialogs/qprintpreviewdialog.cpp
+symbian:contains(QT_CONFIG, s60) {
+ LIBS += -lcommondialogs
+ SOURCES += dialogs/qfiledialog_symbian.cpp \
+ dialogs/qcolordialog_symbian.cpp
+}
+
FORMS += dialogs/qpagesetupwidget.ui
RESOURCES += dialogs/qprintdialog.qrc
RESOURCES += dialogs/qmessagebox.qrc
+
+# Compensate for lack of platform defines in Symbian3
+symbian: DEFINES += SYMBIAN_VERSION_$$upper($$replace(SYMBIAN_VERSION,\\.,_))
diff --git a/src/gui/dialogs/qabstractprintdialog.cpp b/src/gui/dialogs/qabstractprintdialog.cpp
index 25d9ebbdb3..641419f332 100644
--- a/src/gui/dialogs/qabstractprintdialog.cpp
+++ b/src/gui/dialogs/qabstractprintdialog.cpp
@@ -65,6 +65,9 @@ class QPrintDialogPrivate : public QAbstractPrintDialogPrivate
customize settings shown in print dialogs, but it is not used directly.
Use QPrintDialog to display a print dialog in your application.
+ In Symbian, there is no support for printing. Hence, this dialog should not
+ be used in Symbian.
+
\sa QPrintDialog, QPrinter, {Printing with Qt}
*/
diff --git a/src/gui/dialogs/qcolordialog.cpp b/src/gui/dialogs/qcolordialog.cpp
index e9b5720584..a66a979e22 100644
--- a/src/gui/dialogs/qcolordialog.cpp
+++ b/src/gui/dialogs/qcolordialog.cpp
@@ -1952,6 +1952,12 @@ void QColorDialog::open(QObject *receiver, const char *member)
\sa QDialog::open()
*/
+/*
+ For Symbian color dialogs
+*/
+#ifdef Q_WS_S60
+extern QColor qtSymbianGetColor(const QColor &initial);
+#endif
/*!
\since 4.5
@@ -1961,10 +1967,19 @@ void QColorDialog::open(QObject *receiver, const char *member)
QColor::isValid()) color if the user cancels the dialog.
The \a options argument allows you to customize the dialog.
+
+ On Symbian, this static function will use the native color dialog and not a QColorDialog.
+ On Symbian the parameters \a title and \a parent has no relevance and the
+ \a options parameter is only used to define if the native color dialog is
+ used or not.
*/
QColor QColorDialog::getColor(const QColor &initial, QWidget *parent, const QString &title,
ColorDialogOptions options)
{
+#ifdef Q_WS_S60
+ if (!(options & DontUseNativeDialog))
+ return qtSymbianGetColor(initial);
+#endif
QColorDialog dlg(parent);
if (!title.isEmpty())
dlg.setWindowTitle(title);
@@ -1979,10 +1994,16 @@ QColor QColorDialog::getColor(const QColor &initial, QWidget *parent, const QStr
returns that color. The color is initially set to \a initial. The
dialog is a child of \a parent. It returns an invalid (see
QColor::isValid()) color if the user cancels the dialog.
+
+ On Symbian, this static function will use the native
+ color dialog and not a QColorDialog.
*/
QColor QColorDialog::getColor(const QColor &initial, QWidget *parent)
{
+#ifdef Q_WS_S60
+ return qtSymbianGetColor(initial);
+#endif
return getColor(initial, parent, QString(), ColorDialogOptions(0));
}
diff --git a/src/gui/dialogs/qcolordialog_symbian.cpp b/src/gui/dialogs/qcolordialog_symbian.cpp
new file mode 100644
index 0000000000..8f73f7cc90
--- /dev/null
+++ b/src/gui/dialogs/qcolordialog_symbian.cpp
@@ -0,0 +1,107 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the QtGui module 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 "qcolordialog_p.h"
+
+#ifndef QT_NO_COLORDIALOG
+
+
+#include "qcolor.h"
+#include "private/qguiplatformplugin_p.h"
+
+#ifdef Q_WS_S60
+#include <AknColourSelectionGrid.h>
+#endif
+
+#include "private/qt_s60_p.h"
+
+QT_BEGIN_NAMESPACE
+
+QColor launchSymbianColorDialog(QColor initial)
+{
+ QColor currentColor = QColor::Invalid;
+#ifdef Q_WS_S60
+ QT_TRAP_THROWING(
+ CArrayFixFlat<TRgb>* array = new( ELeave ) CArrayFixFlat<TRgb>(17);
+ CleanupStack::PushL(array);
+ array->AppendL(KRgbBlack);
+ array->AppendL(KRgbDarkGray);
+ array->AppendL(KRgbDarkRed);
+ array->AppendL(KRgbDarkGreen);
+ array->AppendL(KRgbDarkYellow);
+ array->AppendL(KRgbDarkBlue);
+ array->AppendL(KRgbDarkMagenta);
+ array->AppendL(KRgbDarkCyan);
+ array->AppendL(KRgbRed);
+ array->AppendL(KRgbGreen);
+ array->AppendL(KRgbYellow);
+ array->AppendL(KRgbBlue);
+ array->AppendL(KRgbMagenta);
+ array->AppendL(KRgbCyan);
+ array->AppendL(KRgbGray);
+ array->AppendL(KRgbWhite);
+
+ TRgb initialColour(initial.red(), initial.green(), initial.blue(), initial.alpha());
+
+ TBool noneChosen = EFalse; // If true shows the default colour button
+ CAknColourSelectionGrid* colourSelectionGrid =
+ CAknColourSelectionGrid::NewL(array, EFalse, noneChosen, initialColour);
+ CleanupStack::PushL(colourSelectionGrid);
+
+ if (colourSelectionGrid->ExecuteLD()) {
+ currentColor.setRgb(initialColour.Red(), initialColour.Green(),
+ initialColour.Blue(), initialColour.Alpha());
+ }
+ CleanupStack::Pop(colourSelectionGrid);
+ CleanupStack::PopAndDestroy(array);
+ );
+#endif
+ return currentColor;
+}
+
+QColor qtSymbianGetColor(const QColor &initial)
+{
+ return launchSymbianColorDialog(initial);
+}
+
+QT_END_NAMESPACE
+
+#endif // QT_NO_COLORDIALOG
diff --git a/src/gui/dialogs/qdialog.cpp b/src/gui/dialogs/qdialog.cpp
index b7a00268a7..fbdc5221e1 100644
--- a/src/gui/dialogs/qdialog.cpp
+++ b/src/gui/dialogs/qdialog.cpp
@@ -282,8 +282,8 @@ QDialog::QDialog(QWidget *parent, Qt::WindowFlags f)
QDialog::QDialog(QWidget *parent, const char *name, bool modal, Qt::WindowFlags f)
: QWidget(*new QDialogPrivate, parent,
f
- | QFlag(modal ? Qt::WShowModal : 0)
- | QFlag((f & Qt::WindowType_Mask) == 0 ? Qt::Dialog : 0)
+ | QFlag(modal ? Qt::WShowModal : Qt::WindowType(0))
+ | QFlag((f & Qt::WindowType_Mask) == 0 ? Qt::Dialog : Qt::WindowType(0))
)
{
setObjectName(QString::fromAscii(name));
diff --git a/src/gui/dialogs/qfiledialog.cpp b/src/gui/dialogs/qfiledialog.cpp
index fc3c1862ee..f3f746945a 100644
--- a/src/gui/dialogs/qfiledialog.cpp
+++ b/src/gui/dialogs/qfiledialog.cpp
@@ -1616,6 +1616,25 @@ extern QStringList qt_win_get_open_file_names(const QFileDialogArgs &args,
extern QString qt_win_get_existing_directory(const QFileDialogArgs &args);
#endif
+/*
+ For Symbian file dialogs
+*/
+#if defined(Q_WS_S60)
+extern QString qtSymbianGetOpenFileName(const QString &caption,
+ const QString &dir,
+ const QString &filter);
+
+extern QStringList qtSymbianGetOpenFileNames(const QString &caption,
+ const QString &dir,
+ const QString &filter);
+
+extern QString qtSymbianGetSaveFileName(const QString &caption,
+ const QString &dir);
+
+extern QString qtSymbianGetExistingDirectory(const QString &caption,
+ const QString &dir);
+#endif
+
/*!
This is a convenience static function that returns an existing file
selected by the user. If the user presses Cancel, it returns a null string.
@@ -1644,8 +1663,8 @@ extern QString qt_win_get_existing_directory(const QFileDialogArgs &args);
The dialog's caption is set to \a caption. If \a caption is not specified
then a default caption will be used.
- On Windows and Mac OS X, this static function will use the native file
- dialog and not a QFileDialog.
+ On Windows, Mac OS X and Symbian^3, this static function will use the
+ native file dialog and not a QFileDialog.
On Windows the dialog will spin a blocking modal event loop that will not
dispatch any QTimers, and if \a parent is not 0 then it will position the
@@ -1657,6 +1676,10 @@ extern QString qt_win_get_existing_directory(const QFileDialogArgs &args);
\a options includes DontResolveSymlinks, the file dialog will treat
symlinks as regular directories.
+ On Symbian^3 the parameter \a selectedFilter has no meaning and the
+ \a options parameter is only used to define if the native file dialog is
+ used.
+
\warning Do not delete \a parent during the execution of the dialog. If you
want to do this, you should create the dialog yourself using one of the
QFileDialog constructors.
@@ -1672,6 +1695,10 @@ QString QFileDialog::getOpenFileName(QWidget *parent,
{
if (qt_filedialog_open_filename_hook && !(options & DontUseNativeDialog))
return qt_filedialog_open_filename_hook(parent, caption, dir, filter, selectedFilter, options);
+#if defined(Q_WS_S60)
+ if (QSysInfo::s60Version() > QSysInfo::SV_S60_5_0 && !(options & DontUseNativeDialog))
+ return qtSymbianGetOpenFileName(caption, dir, filter);
+#endif
QFileDialogArgs args;
args.parent = parent;
args.caption = caption;
@@ -1722,8 +1749,8 @@ QString QFileDialog::getOpenFileName(QWidget *parent,
The dialog's caption is set to \a caption. If \a caption is not specified
then a default caption will be used.
- On Windows and Mac OS X, this static function will use the native file
- dialog and not a QFileDialog.
+ On Windows, Mac OS X and Symbian^3, this static function will use the
+ native file dialog and not a QFileDialog.
On Windows the dialog will spin a blocking modal event loop that will not
dispatch any QTimers, and if \a parent is not 0 then it will position the
@@ -1741,6 +1768,10 @@ QString QFileDialog::getOpenFileName(QWidget *parent,
\snippet doc/src/snippets/code/src_gui_dialogs_qfiledialog.cpp 10
+ On Symbian^3 the parameter \a selectedFilter has no meaning and the
+ \a options parameter is only used to define if the native file dialog is
+ used.
+
\warning Do not delete \a parent during the execution of the dialog. If you
want to do this, you should create the dialog yourself using one of the
QFileDialog constructors.
@@ -1756,6 +1787,10 @@ QStringList QFileDialog::getOpenFileNames(QWidget *parent,
{
if (qt_filedialog_open_filenames_hook && !(options & DontUseNativeDialog))
return qt_filedialog_open_filenames_hook(parent, caption, dir, filter, selectedFilter, options);
+#if defined(Q_WS_S60)
+ if (QSysInfo::s60Version() > QSysInfo::SV_S60_5_0 && !(options & DontUseNativeDialog))
+ return qtSymbianGetOpenFileNames(caption, dir, filter);
+#endif
QFileDialogArgs args;
args.parent = parent;
args.caption = caption;
@@ -1813,8 +1848,8 @@ QStringList QFileDialog::getOpenFileNames(QWidget *parent,
The dialog's caption is set to \a caption. If \a caption is not specified,
a default caption will be used.
- On Windows and Mac OS X, this static function will use the native file
- dialog and not a QFileDialog.
+ On Windows, Mac OS X and Symbian^3, this static function will use the
+ native file dialog and not a QFileDialog.
On Windows the dialog will spin a blocking modal event loop that will not
dispatch any QTimers, and if \a parent is not 0 then it will position the
@@ -1827,6 +1862,10 @@ QStringList QFileDialog::getOpenFileNames(QWidget *parent,
\a options includes DontResolveSymlinks the file dialog will treat symlinks
as regular directories.
+ On Symbian^3 the parameters \a filter and \a selectedFilter have no
+ meaning. The \a options parameter is only used to define if the native file
+ dialog is used.
+
\warning Do not delete \a parent during the execution of the dialog. If you
want to do this, you should create the dialog yourself using one of the
QFileDialog constructors.
@@ -1842,6 +1881,10 @@ QString QFileDialog::getSaveFileName(QWidget *parent,
{
if (qt_filedialog_save_filename_hook && !(options & DontUseNativeDialog))
return qt_filedialog_save_filename_hook(parent, caption, dir, filter, selectedFilter, options);
+#if defined(Q_WS_S60)
+ if (QSysInfo::s60Version() > QSysInfo::SV_S60_5_0 && !(options & DontUseNativeDialog))
+ return qtSymbianGetSaveFileName(caption, dir);
+#endif
QFileDialogArgs args;
args.parent = parent;
args.caption = caption;
@@ -1890,9 +1933,9 @@ QString QFileDialog::getSaveFileName(QWidget *parent,
pass. To ensure a native file dialog, \l{QFileDialog::}{ShowDirsOnly} must
be set.
- On Windows and Mac OS X, this static function will use the native file
- dialog and not a QFileDialog. On Windows CE, if the device has no native
- file dialog, a QFileDialog will be used.
+ On Windows, Mac OS X and Symbian^3, this static function will use the
+ native file dialog and not a QFileDialog. On Windows CE, if the device has
+ no native file dialog, a QFileDialog will be used.
On Unix/X11, the normal behavior of the file dialog is to resolve and
follow symlinks. For example, if \c{/usr/tmp} is a symlink to \c{/var/tmp},
@@ -1904,6 +1947,9 @@ QString QFileDialog::getSaveFileName(QWidget *parent,
dispatch any QTimers, and if \a parent is not 0 then it will position the
dialog just below the parent's title bar.
+ On Symbian^3 the \a options parameter is only used to define if the native
+ file dialog is used.
+
\warning Do not delete \a parent during the execution of the dialog. If you
want to do this, you should create the dialog yourself using one of the
QFileDialog constructors.
@@ -1917,6 +1963,10 @@ QString QFileDialog::getExistingDirectory(QWidget *parent,
{
if (qt_filedialog_existing_directory_hook && !(options & DontUseNativeDialog))
return qt_filedialog_existing_directory_hook(parent, caption, dir, options);
+#if defined(Q_WS_S60)
+ if (QSysInfo::s60Version() > QSysInfo::SV_S60_5_0 && !(options & DontUseNativeDialog))
+ return qtSymbianGetExistingDirectory(caption, dir);
+#endif
QFileDialogArgs args;
args.parent = parent;
args.caption = caption;
diff --git a/src/gui/dialogs/qfiledialog_symbian.cpp b/src/gui/dialogs/qfiledialog_symbian.cpp
new file mode 100644
index 0000000000..1f7030510d
--- /dev/null
+++ b/src/gui/dialogs/qfiledialog_symbian.cpp
@@ -0,0 +1,196 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the QtGui module 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 "qfiledialog.h"
+
+#ifndef QT_NO_FILEDIALOG
+
+#include <private/qfiledialog_p.h>
+#if defined(Q_WS_S60) && defined(SYMBIAN_VERSION_SYMBIAN3)
+#include <driveinfo.h>
+#include <AknCommonDialogsDynMem.h>
+#include <CAknMemorySelectionDialogMultiDrive.h>
+#include <MAknFileFilter.h>
+#endif
+#include "private/qcore_symbian_p.h"
+
+QT_BEGIN_NAMESPACE
+
+enum DialogMode { DialogOpen, DialogSave, DialogFolder };
+#if defined(Q_WS_S60) && defined(SYMBIAN_VERSION_SYMBIAN3)
+class CExtensionFilter : public MAknFileFilter
+{
+public:
+ void setFilter(const QString filter)
+ {
+ filterList.clear();
+ if (filter.left(2) == QLatin1String("*.")) {
+ //Filter has only extensions
+ filterList << filter.split(" ");
+ return;
+ } else {
+ //Extensions are in parenthesis and there may be several filters
+ QStringList separatedFilters(filter.split(QLatin1String(";;")));
+ for (int i = 0; i < separatedFilters.size(); i++) {
+ if (separatedFilters.at(i).contains(QLatin1String("(*)"))) {
+ filterList << QLatin1String("(*)");
+ return;
+ }
+ }
+ QRegExp rx("\\(([^\\)]*)\\)");
+ int pos = 0;
+ while ((pos = rx.indexIn(filter, pos)) != -1) {
+ filterList << rx.cap(1).split(QLatin1String(" "));
+ pos += rx.matchedLength();
+ }
+ }
+ }
+
+ TBool Accept(const TDesC &/*aDriveAndPath*/, const TEntry &aEntry) const
+ {
+ if (aEntry.IsDir())
+ return ETrue;
+
+ //If no filter for files, all can be accepted
+ if (filterList.isEmpty())
+ return ETrue;
+
+ if (filterList == QStringList(QLatin1String("(*)")))
+ return ETrue;
+
+ for (int i = 0; i < filterList.size(); ++i) {
+ QString extension = filterList.at(i);
+ //remove '*' from the beginning of the extension
+ if (extension.at(0) == QLatin1Char('*'))
+ extension = extension.mid(1);
+
+ QString fileName = qt_TDesC2QString(aEntry.iName);
+ if (fileName.endsWith(extension))
+ return ETrue;
+ }
+ return EFalse;
+ }
+
+private:
+ QStringList filterList;
+};
+#endif
+
+static QString launchSymbianDialog(const QString dialogCaption, const QString startDirectory,
+ const QString filter, DialogMode dialogMode)
+{
+ QString selection;
+#if defined(Q_WS_S60) && defined(SYMBIAN_VERSION_SYMBIAN3)
+ QT_TRAP_THROWING(
+ TFileName startFolder;
+ if (!startDirectory.isEmpty()) {
+ QString dir = QDir::toNativeSeparators(startDirectory);
+ startFolder = qt_QString2TPtrC(dir);
+ }
+ TInt types = AknCommonDialogsDynMem::EMemoryTypeMMCExternal|
+ AknCommonDialogsDynMem::EMemoryTypeInternalMassStorage|
+ AknCommonDialogsDynMem::EMemoryTypePhone;
+
+ TPtrC titlePtr(qt_QString2TPtrC(dialogCaption));
+ TFileName target;
+ bool select = false;
+ if (dialogMode == DialogOpen) {
+ CExtensionFilter* extensionFilter = new (ELeave) CExtensionFilter;
+ CleanupStack::PushL(extensionFilter);
+ extensionFilter->setFilter(filter);
+ select = AknCommonDialogsDynMem::RunSelectDlgLD(types, target,
+ startFolder, NULL, NULL, titlePtr, extensionFilter);
+ CleanupStack::Pop(extensionFilter);
+ } else if (dialogMode == DialogSave) {
+ select = AknCommonDialogsDynMem::RunSaveDlgLD(types, target,
+ startFolder, NULL, NULL, titlePtr);
+ } else if (dialogMode == DialogFolder) {
+ select = AknCommonDialogsDynMem::RunFolderSelectDlgLD(types, target, startFolder,
+ 0, 0, titlePtr, NULL, NULL);
+ }
+ if (select)
+ selection.append(qt_TDesC2QString(target));
+ );
+#endif
+ return selection;
+}
+
+QString qtSymbianGetOpenFileName(const QString &caption,
+ const QString &dir,
+ const QString &filter)
+{
+ return launchSymbianDialog(caption, dir, filter, DialogOpen);
+}
+
+QStringList qtSymbianGetOpenFileNames(const QString &caption,
+ const QString &dir,
+ const QString &filter)
+{
+ QString fileName;
+ fileName.append(launchSymbianDialog(caption, dir, filter, DialogOpen));
+ QStringList fileList;
+ fileList << fileName;
+
+ return fileList;
+}
+
+QString qtSymbianGetSaveFileName(const QString &caption,
+ const QString &dir)
+{
+ return launchSymbianDialog(caption, dir, QString(), DialogSave);
+}
+
+QString qtSymbianGetExistingDirectory(const QString &caption,
+ const QString &dir)
+{
+ QString folderCaption;
+ if (!caption.isEmpty()) {
+ folderCaption.append(caption);
+ } else {
+ // Title for folder selection dialog is mandatory
+ folderCaption.append(QFileDialog::tr("Find Directory"));
+ }
+ return launchSymbianDialog(folderCaption, dir, QString(), DialogFolder);
+}
+
+QT_END_NAMESPACE
+
+#endif
diff --git a/src/gui/dialogs/qmessagebox.cpp b/src/gui/dialogs/qmessagebox.cpp
index fe25b0f807..2f8b9e22fa 100644
--- a/src/gui/dialogs/qmessagebox.cpp
+++ b/src/gui/dialogs/qmessagebox.cpp
@@ -776,10 +776,8 @@ QMessageBox::QMessageBox(QWidget *parent)
added at any time using addButton(). The \a parent and \a f
arguments are passed to the QDialog constructor.
- If \a parent is 0, the message box is an \l{Qt::ApplicationModal}
- {application modal} dialog box. If \a parent is a widget, the
- message box is \l{Qt::WindowModal} {window modal} relative to \a
- parent.
+ The message box is an \l{Qt::ApplicationModal} {application modal}
+ dialog box.
On Mac OS X, if \a parent is not 0 and you want your message box
to appear as a Qt::Sheet of that parent, set the message box's
@@ -1549,10 +1547,8 @@ static QMessageBox::StandardButton showNewMessageBox(QWidget *parent,
\key Esc was pressed instead, the \l{Default and Escape Keys}
{escape button} is returned.
- If \a parent is 0, the message box is an \l{Qt::ApplicationModal}
- {application modal} dialog box. If \a parent is a widget, the
- message box is \l{Qt::WindowModal} {window modal} relative to \a
- parent.
+ The message box is an \l{Qt::ApplicationModal} {application modal}
+ dialog box.
\sa question(), warning(), critical()
*/
@@ -1579,10 +1575,8 @@ QMessageBox::StandardButton QMessageBox::information(QWidget *parent, const QStr
\key Esc was pressed instead, the \l{Default and Escape Keys}
{escape button} is returned.
- If \a parent is 0, the message box is an \l{Qt::ApplicationModal}
- {application modal} dialog box. If \a parent is a widget, the
- message box is \l{Qt::WindowModal} {window modal} relative to \a
- parent.
+ The message box is an \l{Qt::ApplicationModal} {application modal}
+ dialog box.
\sa information(), warning(), critical()
*/
@@ -1607,10 +1601,8 @@ QMessageBox::StandardButton QMessageBox::question(QWidget *parent, const QString
\key Esc was pressed instead, the \l{Default and Escape Keys}
{escape button} is returned.
- If \a parent is 0, the message box is an \l{Qt::ApplicationModal}
- {application modal} dialog box. If \a parent is a widget, the
- message box is \l{Qt::WindowModal} {window modal} relative to \a
- parent.
+ The message box is an \l{Qt::ApplicationModal} {application modal}
+ dialog box.
\sa question(), information(), critical()
*/
@@ -1635,10 +1627,8 @@ QMessageBox::StandardButton QMessageBox::warning(QWidget *parent, const QString
\key Esc was pressed instead, the \l{Default and Escape Keys}
{escape button} is returned.
- If \a parent is 0, the message box is an \l{Qt::ApplicationModal}
- {application modal} dialog box. If \a parent is a widget, the
- message box is \l{Qt::WindowModal} {window modal} relative to \a
- parent.
+ The message box is an \l{Qt::ApplicationModal} {application modal}
+ dialog box.
\warning Do not delete \a parent during the execution of the dialog.
If you want to do this, you should create the dialog
@@ -1670,7 +1660,7 @@ QMessageBox::StandardButton QMessageBox::critical(QWidget *parent, const QString
The about box has a single button labelled "OK". On Mac OS X, the
about box is popped up as a modeless window; on other platforms,
- it is currently a window modal.
+ it is currently application modal.
\sa QWidget::windowIcon(), QApplication::activeWindow()
*/
@@ -1723,7 +1713,7 @@ void QMessageBox::about(QWidget *parent, const QString &title, const QString &te
QApplication provides this functionality as a slot.
On Mac OS X, the about box is popped up as a modeless window; on
- other platforms, it is currently window modal.
+ other platforms, it is currently application modal.
\sa QApplication::aboutQt()
*/
@@ -1983,10 +1973,8 @@ void QMessageBoxPrivate::retranslateStrings()
\snippet doc/src/snippets/dialogs/dialogs.cpp 2
- If \a parent is 0, the message box is an \l{Qt::ApplicationModal}
- {application modal} dialog box. If \a parent is a widget, the
- message box is \l{Qt::WindowModal} {window modal} relative to \a
- parent.
+ The message box is an \l{Qt::ApplicationModal} {application modal}
+ dialog box.
The \a parent and \a f arguments are passed to
the QDialog constructor.
@@ -2035,10 +2023,8 @@ QMessageBox::QMessageBox(const QString &title, const QString &text, Icon icon,
Returns the identity (QMessageBox::Ok, or QMessageBox::No, etc.)
of the button that was clicked.
- If \a parent is 0, the message box is an \l{Qt::ApplicationModal}
- {application modal} dialog box. If \a parent is a widget, the
- message box is \l{Qt::WindowModal} {window modal} relative to \a
- parent.
+ The message box is an \l{Qt::ApplicationModal} {application modal}
+ dialog box.
\warning Do not delete \a parent during the execution of the dialog.
If you want to do this, you should create the dialog
@@ -2073,10 +2059,8 @@ int QMessageBox::information(QWidget *parent, const QString &title, const QStrin
supply 0, 1 or 2 to make pressing \key Esc equivalent to clicking
the relevant button.
- If \a parent is 0, the message box is an \l{Qt::ApplicationModal}
- {application modal} dialog box. If \a parent is a widget, the
- message box is \l{Qt::WindowModal} {window modal} relative to \a
- parent.
+ The message box is an \l{Qt::ApplicationModal} {application modal}
+ dialog box.
\warning Do not delete \a parent during the execution of the dialog.
If you want to do this, you should create the dialog
@@ -2125,10 +2109,8 @@ int QMessageBox::information(QWidget *parent, const QString &title, const QStrin
Returns the identity (QMessageBox::Yes, or QMessageBox::No, etc.)
of the button that was clicked.
- If \a parent is 0, the message box is an \l{Qt::ApplicationModal}
- {application modal} dialog box. If \a parent is a widget, the
- message box is \l{Qt::WindowModal} {window modal} relative to \a
- parent.
+ The message box is an \l{Qt::ApplicationModal} {application modal}
+ dialog box.
\warning Do not delete \a parent during the execution of the dialog.
If you want to do this, you should create the dialog
@@ -2163,10 +2145,8 @@ int QMessageBox::question(QWidget *parent, const QString &title, const QString&
supply 0, 1 or 2 to make pressing Escape equivalent to clicking
the relevant button.
- If \a parent is 0, the message box is an \l{Qt::ApplicationModal}
- {application modal} dialog box. If \a parent is a widget, the
- message box is \l{Qt::WindowModal} {window modal} relative to \a
- parent.
+ The message box is an \l{Qt::ApplicationModal} {application modal}
+ dialog box.
\warning Do not delete \a parent during the execution of the dialog.
If you want to do this, you should create the dialog
@@ -2215,10 +2195,8 @@ int QMessageBox::question(QWidget *parent, const QString &title, const QString&
Returns the identity (QMessageBox::Ok or QMessageBox::No or ...)
of the button that was clicked.
- If \a parent is 0, the message box is an \l{Qt::ApplicationModal}
- {application modal} dialog box. If \a parent is a widget, the
- message box is \l{Qt::WindowModal} {window modal} relative to \a
- parent.
+ The message box is an \l{Qt::ApplicationModal} {application modal}
+ dialog box.
\warning Do not delete \a parent during the execution of the dialog.
If you want to do this, you should create the dialog
@@ -2253,10 +2231,8 @@ int QMessageBox::warning(QWidget *parent, const QString &title, const QString& t
supply 0, 1, or 2 to make pressing Escape equivalent to clicking
the relevant button.
- If \a parent is 0, the message box is an \l{Qt::ApplicationModal}
- {application modal} dialog box. If \a parent is a widget, the
- message box is \l{Qt::WindowModal} {window modal} relative to \a
- parent.
+ The message box is an \l{Qt::ApplicationModal} {application modal}
+ dialog box.
\warning Do not delete \a parent during the execution of the dialog.
If you want to do this, you should create the dialog
@@ -2304,10 +2280,8 @@ int QMessageBox::warning(QWidget *parent, const QString &title, const QString& t
Returns the identity (QMessageBox::Ok, or QMessageBox::No, etc.)
of the button that was clicked.
- If \a parent is 0, the message box is an \l{Qt::ApplicationModal}
- {application modal} dialog box. If \a parent is a widget, the
- message box is \l{Qt::WindowModal} {window modal} relative to \a
- parent.
+ The message box is an \l{Qt::ApplicationModal} {application modal}
+ dialog box.
\warning Do not delete \a parent during the execution of the dialog.
If you want to do this, you should create the dialog
@@ -2343,10 +2317,8 @@ int QMessageBox::critical(QWidget *parent, const QString &title, const QString&
supply 0, 1, or 2 to make pressing Escape equivalent to clicking
the relevant button.
- If \a parent is 0, the message box is an \l{Qt::ApplicationModal}
- {application modal} dialog box. If \a parent is a widget, the
- message box is \l{Qt::WindowModal} {window modal} relative to \a
- parent.
+ The message box is an \l{Qt::ApplicationModal} {application modal}
+ dialog box.
\warning Do not delete \a parent during the execution of the dialog.
If you want to do this, you should create the dialog
diff --git a/src/gui/dialogs/qpagesetupdialog.cpp b/src/gui/dialogs/qpagesetupdialog.cpp
index 5d77de1b71..b5be942b82 100644
--- a/src/gui/dialogs/qpagesetupdialog.cpp
+++ b/src/gui/dialogs/qpagesetupdialog.cpp
@@ -62,6 +62,9 @@ QT_BEGIN_NAMESPACE
page margins set on a QPrinter won't show in the native Mac OS X
page setup dialog.
+ In Symbian, there is no support for printing. Hence, this dialog should not
+ be used in Symbian.
+
\sa QPrinter, QPrintDialog
*/
diff --git a/src/gui/dialogs/qprintpreviewdialog.cpp b/src/gui/dialogs/qprintpreviewdialog.cpp
index f21343e2dc..d74742a5db 100644
--- a/src/gui/dialogs/qprintpreviewdialog.cpp
+++ b/src/gui/dialogs/qprintpreviewdialog.cpp
@@ -676,6 +676,8 @@ void QPrintPreviewDialogPrivate::_q_zoomFactorChanged()
Call QPrintPreviewDialog::exec() to show the preview dialog.
\endlist
+ In Symbian, there is no support for printing. Hence, this dialog should not
+ be used in Symbian.
\sa QPrinter, QPrintDialog, QPageSetupDialog, QPrintPreviewWidget
*/
diff --git a/src/gui/egl/qegl_x11.cpp b/src/gui/egl/qegl_x11.cpp
index 15cc109819..29415ed1dc 100644
--- a/src/gui/egl/qegl_x11.cpp
+++ b/src/gui/egl/qegl_x11.cpp
@@ -165,8 +165,10 @@ VisualID QEgl::getCompatibleVisualId(EGLConfig config)
if (chosenVisualInfo) {
// Skip size checks if implementation supports non-matching visual
// and config (http://bugreports.qt.nokia.com/browse/QTBUG-9444).
- if (QEgl::hasExtension("EGL_NV_post_convert_rounding"))
+ if (QEgl::hasExtension("EGL_NV_post_convert_rounding")) {
+ XFree(chosenVisualInfo);
return visualId;
+ }
int visualRedSize = countBits(chosenVisualInfo->red_mask);
int visualGreenSize = countBits(chosenVisualInfo->green_mask);
diff --git a/src/gui/graphicsview/qgraphicsgridlayout.cpp b/src/gui/graphicsview/qgraphicsgridlayout.cpp
index 3fc7f1071b..20ebab62fa 100644
--- a/src/gui/graphicsview/qgraphicsgridlayout.cpp
+++ b/src/gui/graphicsview/qgraphicsgridlayout.cpp
@@ -64,6 +64,17 @@
removeAt() will remove an item from the layout, without
destroying it.
+ \section1 Size Hints and Size Policies in QGraphicsGridLayout
+
+ QGraphicsGridLayout respects each item's size hints and size policies,
+ and when a cell in the grid has more space than the items can fill, each item
+ is arranged according to the layout's alignment for that item. You can set
+ an alignment for each item by calling setAlignment(), and check the
+ alignment for any item by calling alignment(). You can also set the alignment
+ for an entire row or column by calling setRowAlignment() and setColumnAlignment()
+ respectively. By default, items are aligned to the top left.
+
+
\sa QGraphicsLinearLayout, QGraphicsWidget
*/
diff --git a/src/gui/graphicsview/qgraphicsitem.cpp b/src/gui/graphicsview/qgraphicsitem.cpp
index 7ab49cb991..94e1a727cb 100644
--- a/src/gui/graphicsview/qgraphicsitem.cpp
+++ b/src/gui/graphicsview/qgraphicsitem.cpp
@@ -3295,9 +3295,13 @@ void QGraphicsItemPrivate::setFocusHelper(Qt::FocusReason focusReason, bool clim
}
// Update the child focus chain.
- if (scene && scene->focusItem())
- scene->focusItem()->d_ptr->clearSubFocus();
- f->d_ptr->setSubFocus();
+ QGraphicsItem *commonAncestor = 0;
+ if (scene && scene->focusItem()) {
+ commonAncestor = scene->focusItem()->commonAncestorItem(f);
+ scene->focusItem()->d_ptr->clearSubFocus(scene->focusItem(), commonAncestor);
+ }
+
+ f->d_ptr->setSubFocus(f, commonAncestor);
// Update the scene's focus item.
if (scene) {
@@ -5554,7 +5558,7 @@ void QGraphicsItemPrivate::ensureSceneTransformRecursive(QGraphicsItem **topMost
/*!
\internal
*/
-void QGraphicsItemPrivate::setSubFocus(QGraphicsItem *rootItem)
+void QGraphicsItemPrivate::setSubFocus(QGraphicsItem *rootItem, QGraphicsItem *stopItem)
{
// Update focus child chain. Stop at panels, or if this item
// is hidden, stop at the first item with a visible parent.
@@ -5567,7 +5571,7 @@ void QGraphicsItemPrivate::setSubFocus(QGraphicsItem *rootItem)
if (parent != q_ptr && parent->d_ptr->subFocusItem) {
if (parent->d_ptr->subFocusItem == q_ptr)
break;
- parent->d_ptr->subFocusItem->d_ptr->clearSubFocus();
+ parent->d_ptr->subFocusItem->d_ptr->clearSubFocus(0, stopItem);
}
parent->d_ptr->subFocusItem = q_ptr;
parent->d_ptr->subFocusItemChange();
@@ -5580,12 +5584,12 @@ void QGraphicsItemPrivate::setSubFocus(QGraphicsItem *rootItem)
/*!
\internal
*/
-void QGraphicsItemPrivate::clearSubFocus(QGraphicsItem *rootItem)
+void QGraphicsItemPrivate::clearSubFocus(QGraphicsItem *rootItem, QGraphicsItem *stopItem)
{
// Reset sub focus chain.
QGraphicsItem *parent = rootItem ? rootItem : q_ptr;
do {
- if (parent->d_ptr->subFocusItem != q_ptr)
+ if (parent->d_ptr->subFocusItem != q_ptr || parent == stopItem)
break;
parent->d_ptr->subFocusItem = 0;
parent->d_ptr->subFocusItemChange();
diff --git a/src/gui/graphicsview/qgraphicsitem_p.h b/src/gui/graphicsview/qgraphicsitem_p.h
index 1b7aa975a9..b938759471 100644
--- a/src/gui/graphicsview/qgraphicsitem_p.h
+++ b/src/gui/graphicsview/qgraphicsitem_p.h
@@ -479,8 +479,8 @@ public:
void setFocusHelper(Qt::FocusReason focusReason, bool climb, bool focusFromHide);
void clearFocusHelper(bool giveFocusToParent);
- void setSubFocus(QGraphicsItem *rootItem = 0);
- void clearSubFocus(QGraphicsItem *rootItem = 0);
+ void setSubFocus(QGraphicsItem *rootItem = 0, QGraphicsItem *stopItem = 0);
+ void clearSubFocus(QGraphicsItem *rootItem = 0, QGraphicsItem *stopItem = 0);
void resetFocusProxy();
virtual void subFocusItemChange();
virtual void focusScopeItemChange(bool isSubFocusItem);
diff --git a/src/gui/graphicsview/qgraphicslayoutitem.cpp b/src/gui/graphicsview/qgraphicslayoutitem.cpp
index e43f7fa672..016cfbfcdc 100644
--- a/src/gui/graphicsview/qgraphicslayoutitem.cpp
+++ b/src/gui/graphicsview/qgraphicslayoutitem.cpp
@@ -137,19 +137,28 @@ void QGraphicsLayoutItemPrivate::init()
QSizeF *QGraphicsLayoutItemPrivate::effectiveSizeHints(const QSizeF &constraint) const
{
Q_Q(const QGraphicsLayoutItem);
- if (!sizeHintCacheDirty && cachedConstraint == constraint)
- return cachedSizeHints;
+ QSizeF *sizeHintCache;
+ const bool hasConstraint = constraint.width() >= 0 || constraint.height() >= 0;
+ if (hasConstraint) {
+ if (!sizeHintWithConstraintCacheDirty && constraint == cachedConstraint)
+ return cachedSizeHintsWithConstraints;
+ sizeHintCache = cachedSizeHintsWithConstraints;
+ } else {
+ if (!sizeHintCacheDirty)
+ return cachedSizeHints;
+ sizeHintCache = cachedSizeHints;
+ }
for (int i = 0; i < Qt::NSizeHints; ++i) {
- cachedSizeHints[i] = constraint;
+ sizeHintCache[i] = constraint;
if (userSizeHints)
- combineSize(cachedSizeHints[i], userSizeHints[i]);
+ combineSize(sizeHintCache[i], userSizeHints[i]);
}
- QSizeF &minS = cachedSizeHints[Qt::MinimumSize];
- QSizeF &prefS = cachedSizeHints[Qt::PreferredSize];
- QSizeF &maxS = cachedSizeHints[Qt::MaximumSize];
- QSizeF &descentS = cachedSizeHints[Qt::MinimumDescent];
+ QSizeF &minS = sizeHintCache[Qt::MinimumSize];
+ QSizeF &prefS = sizeHintCache[Qt::PreferredSize];
+ QSizeF &maxS = sizeHintCache[Qt::MaximumSize];
+ QSizeF &descentS = sizeHintCache[Qt::MinimumDescent];
normalizeHints(minS.rwidth(), prefS.rwidth(), maxS.rwidth(), descentS.rwidth());
normalizeHints(minS.rheight(), prefS.rheight(), maxS.rheight(), descentS.rheight());
@@ -175,9 +184,13 @@ QSizeF *QGraphicsLayoutItemPrivate::effectiveSizeHints(const QSizeF &constraint)
// Not supported yet
// COMBINE_SIZE(descentS, q->sizeHint(Qt::MinimumDescent, constraint));
- cachedConstraint = constraint;
- sizeHintCacheDirty = false;
- return cachedSizeHints;
+ if (hasConstraint) {
+ cachedConstraint = constraint;
+ sizeHintWithConstraintCacheDirty = false;
+ } else {
+ sizeHintCacheDirty = false;
+ }
+ return sizeHintCache;
}
diff --git a/src/gui/graphicsview/qgraphicslayoutitem_p.h b/src/gui/graphicsview/qgraphicslayoutitem_p.h
index b752e03ad2..d72ee9f0d9 100644
--- a/src/gui/graphicsview/qgraphicslayoutitem_p.h
+++ b/src/gui/graphicsview/qgraphicslayoutitem_p.h
@@ -85,8 +85,10 @@ public:
QSizeF *userSizeHints;
mutable QSizeF cachedSizeHints[Qt::NSizeHints];
mutable QSizeF cachedConstraint;
+ mutable QSizeF cachedSizeHintsWithConstraints[Qt::NSizeHints];
mutable quint32 sizeHintCacheDirty : 1;
+ mutable quint32 sizeHintWithConstraintCacheDirty : 1;
quint32 isLayout : 1;
quint32 ownedByLayout : 1;
diff --git a/src/gui/graphicsview/qgraphicslinearlayout.cpp b/src/gui/graphicsview/qgraphicslinearlayout.cpp
index 7e8d19f2aa..244a7284ba 100644
--- a/src/gui/graphicsview/qgraphicslinearlayout.cpp
+++ b/src/gui/graphicsview/qgraphicslinearlayout.cpp
@@ -75,7 +75,7 @@
is arranged according to the layout's alignment for that item. You can set
an alignment for each item by calling setAlignment(), and check the
alignment for any item by calling alignment(). By default, items are
- centered both vertically and horizontally.
+ aligned to the top left.
\section1 Spacing within QGraphicsLinearLayout
@@ -446,7 +446,7 @@ void QGraphicsLinearLayout::setAlignment(QGraphicsLayoutItem *item, Qt::Alignmen
/*!
Returns the alignment for \a item. The default alignment is
- Qt::AlignCenter.
+ Qt::AlignTop | Qt::AlignLeft.
The alignment decides how the item is positioned within its assigned space
in the case where there's more space available in the layout than the
diff --git a/src/gui/graphicsview/qgraphicstransform.cpp b/src/gui/graphicsview/qgraphicstransform.cpp
index 1f155c6e9d..d495da27cb 100644
--- a/src/gui/graphicsview/qgraphicstransform.cpp
+++ b/src/gui/graphicsview/qgraphicstransform.cpp
@@ -54,7 +54,7 @@
instances to one QGraphicsItem. Each QGraphicsTransform is applied in
order, one at a time, to the QGraphicsItem it's assigned to.
- QGraphicsTransform is particularily useful for animations. Whereas
+ QGraphicsTransform is particularly useful for animations. Whereas
QGraphicsItem::setTransform() lets you assign any transform directly to an
item, there is no direct way to interpolate between two different
transformations (e.g., when transitioning between two states, each for
diff --git a/src/gui/graphicsview/qgridlayoutengine.cpp b/src/gui/graphicsview/qgridlayoutengine.cpp
index e486b4dcbf..f1055ba3c4 100644
--- a/src/gui/graphicsview/qgridlayoutengine.cpp
+++ b/src/gui/graphicsview/qgridlayoutengine.cpp
@@ -166,7 +166,7 @@ void QGridLayoutRowData::reset(int count)
hasIgnoreFlag = false;
}
-void QGridLayoutRowData::distributeMultiCells()
+void QGridLayoutRowData::distributeMultiCells(const QGridLayoutRowInfo &rowInfo)
{
MultiCellMap::const_iterator i = multiCellMap.constBegin();
for (; i != multiCellMap.constEnd(); ++i) {
@@ -185,7 +185,7 @@ void QGridLayoutRowData::distributeMultiCells()
qreal extra = compare(box, totalBox, j);
if (extra > 0.0) {
calculateGeometries(start, end, box.q_sizes(j), dummy.data(), newSizes.data(),
- 0, totalBox);
+ 0, totalBox, rowInfo);
for (int k = 0; k < span; ++k)
extras[k].q_sizes(j) = newSizes[k];
@@ -202,11 +202,12 @@ void QGridLayoutRowData::distributeMultiCells()
void QGridLayoutRowData::calculateGeometries(int start, int end, qreal targetSize, qreal *positions,
qreal *sizes, qreal *descents,
- const QGridLayoutBox &totalBox)
+ const QGridLayoutBox &totalBox,
+ const QGridLayoutRowInfo &rowInfo)
{
Q_ASSERT(end > start);
- targetSize = qBound(totalBox.q_minimumSize, targetSize, totalBox.q_maximumSize);
+ targetSize = qMax(totalBox.q_minimumSize, targetSize);
int n = end - start;
QVarLengthArray<qreal> newSizes(n);
@@ -246,16 +247,22 @@ void QGridLayoutRowData::calculateGeometries(int start, int end, qreal targetSiz
}
}
} else {
- stealBox(start, end, PreferredSize, positions, sizes);
+ bool isLargerThanMaximum = (targetSize > totalBox.q_maximumSize);
+ if (isLargerThanMaximum) {
+ stealBox(start, end, MaximumSize, positions, sizes);
+ sumAvailable = targetSize - totalBox.q_maximumSize;
+ } else {
+ stealBox(start, end, PreferredSize, positions, sizes);
+ sumAvailable = targetSize - totalBox.q_preferredSize;
+ }
- sumAvailable = targetSize - totalBox.q_preferredSize;
if (sumAvailable > 0.0) {
qreal sumCurrentAvailable = sumAvailable;
bool somethingHasAMaximumSize = false;
- qreal sumPreferredSizes = 0.0;
+ qreal sumSizes = 0.0;
for (int i = 0; i < n; ++i)
- sumPreferredSizes += sizes[i];
+ sumSizes += sizes[i];
for (int i = 0; i < n; ++i) {
if (ignore.testBit(start + i)) {
@@ -265,7 +272,16 @@ void QGridLayoutRowData::calculateGeometries(int start, int end, qreal targetSiz
}
const QGridLayoutBox &box = boxes.at(start + i);
- qreal desired = box.q_maximumSize - box.q_preferredSize;
+ qreal boxSize;
+
+ qreal desired;
+ if (isLargerThanMaximum) {
+ boxSize = box.q_maximumSize;
+ desired = rowInfo.boxes.value(start + i).q_maximumSize - boxSize;
+ } else {
+ boxSize = box.q_preferredSize;
+ desired = box.q_maximumSize - boxSize;
+ }
if (desired == 0.0) {
newSizes[i] = sizes[i];
factors[i] = 0.0;
@@ -284,17 +300,17 @@ void QGridLayoutRowData::calculateGeometries(int start, int end, qreal targetSiz
} else if (stretch <= 0) {
factors[i] = 0.0;
} else {
- qreal ultimatePreferredSize;
- qreal ultimateSumPreferredSizes;
- qreal x = ((stretch * sumPreferredSizes)
- - (sumStretches * box.q_preferredSize))
+ qreal ultimateSize;
+ qreal ultimateSumSizes;
+ qreal x = ((stretch * sumSizes)
+ - (sumStretches * boxSize))
/ (sumStretches - stretch);
if (x >= 0.0) {
- ultimatePreferredSize = box.q_preferredSize + x;
- ultimateSumPreferredSizes = sumPreferredSizes + x;
+ ultimateSize = boxSize + x;
+ ultimateSumSizes = sumSizes + x;
} else {
- ultimatePreferredSize = box.q_preferredSize;
- ultimateSumPreferredSizes = (sumStretches * box.q_preferredSize)
+ ultimateSize = boxSize;
+ ultimateSumSizes = (sumStretches * boxSize)
/ stretch;
}
@@ -303,17 +319,17 @@ void QGridLayoutRowData::calculateGeometries(int start, int end, qreal targetSiz
(at the expense of the stretch factors, which are not fully respected
during the transition).
*/
- ultimatePreferredSize = ultimatePreferredSize * 3 / 2;
- ultimateSumPreferredSizes = ultimateSumPreferredSizes * 3 / 2;
+ ultimateSize = ultimateSize * 3 / 2;
+ ultimateSumSizes = ultimateSumSizes * 3 / 2;
- qreal beta = ultimateSumPreferredSizes - sumPreferredSizes;
+ qreal beta = ultimateSumSizes - sumSizes;
if (!beta) {
factors[i] = 1;
} else {
qreal alpha = qMin(sumCurrentAvailable, beta);
- qreal ultimateFactor = (stretch * ultimateSumPreferredSizes / sumStretches)
- - (box.q_preferredSize);
- qreal transitionalFactor = sumCurrentAvailable * (ultimatePreferredSize - box.q_preferredSize) / beta;
+ qreal ultimateFactor = (stretch * ultimateSumSizes / sumStretches)
+ - (boxSize);
+ qreal transitionalFactor = sumCurrentAvailable * (ultimateSize - boxSize) / beta;
factors[i] = ((alpha * ultimateFactor)
+ ((beta - alpha) * transitionalFactor)) / beta;
@@ -336,11 +352,16 @@ void QGridLayoutRowData::calculateGeometries(int start, int end, qreal targetSiz
if (newSizes[i] >= 0.0)
continue;
- const QGridLayoutBox &box = boxes.at(start + i);
+ qreal maxBoxSize;
+ if (isLargerThanMaximum)
+ maxBoxSize = rowInfo.boxes.value(start + i).q_maximumSize;
+ else
+ maxBoxSize = boxes.at(start + i).q_maximumSize;
+
qreal avail = sumCurrentAvailable * factors[i] / sumFactors;
- if (sizes[i] + avail >= box.q_maximumSize) {
- newSizes[i] = box.q_maximumSize;
- sumCurrentAvailable -= box.q_maximumSize - sizes[i];
+ if (sizes[i] + avail >= maxBoxSize) {
+ newSizes[i] = maxBoxSize;
+ sumCurrentAvailable -= maxBoxSize - sizes[i];
sumFactors -= factors[i];
keepGoing = (sumCurrentAvailable > 0.0);
if (!keepGoing)
@@ -637,7 +658,7 @@ QRectF QGridLayoutItem::geometryWithin(qreal x, qreal y, qreal width, qreal heig
if (dynamicConstraintOrientation() == Qt::Vertical) {
if (size.width() > cellWidth)
size = effectiveMaxSize(QSizeF(cellWidth, -1));
- } else if(size.height() > cellHeight) {
+ } else if (size.height() > cellHeight) {
size = effectiveMaxSize(QSizeF(-1, cellHeight));
}
}
@@ -1107,63 +1128,58 @@ QSizeF QGridLayoutEngine::sizeHint(const QLayoutStyleInfo &styleInfo, Qt::SizeHi
{
QGridLayoutBox sizehint_totalBoxes[NOrientations];
- if(rowCount() < 1 || columnCount() < 1 || !hasDynamicConstraint()) {
+ bool sizeHintCalculated = false;
+
+ if (hasDynamicConstraint() && rowCount() > 0 && columnCount() > 0) {
+ if (constraintOrientation() == Qt::Vertical) {
+ //We have items whose height depends on their width
+ if (constraint.width() >= 0) {
+ if (q_cachedDataForStyleInfo != styleInfo)
+ ensureColumnAndRowData(&q_columnData, &sizehint_totalBoxes[Hor], styleInfo, NULL, NULL, Qt::Horizontal);
+ else
+ sizehint_totalBoxes[Hor] = q_totalBoxes[Hor];
+ QVector<qreal> sizehint_xx;
+ QVector<qreal> sizehint_widths;
+
+ sizehint_xx.resize(columnCount());
+ sizehint_widths.resize(columnCount());
+ qreal width = constraint.width();
+ //Calculate column widths and positions, and put results in q_xx.data() and q_widths.data() so that we can use this information as
+ //constraints to find the row heights
+ q_columnData.calculateGeometries(0, columnCount(), width, sizehint_xx.data(), sizehint_widths.data(),
+ 0, sizehint_totalBoxes[Hor], q_infos[Hor]);
+ ensureColumnAndRowData(&q_rowData, &sizehint_totalBoxes[Ver], styleInfo, sizehint_xx.data(), sizehint_widths.data(), Qt::Vertical);
+ sizeHintCalculated = true;
+ }
+ } else {
+ if (constraint.height() >= 0) {
+ //We have items whose width depends on their height
+ ensureColumnAndRowData(&q_rowData, &sizehint_totalBoxes[Ver], styleInfo, NULL, NULL, Qt::Vertical);
+ QVector<qreal> sizehint_yy;
+ QVector<qreal> sizehint_heights;
+
+ sizehint_yy.resize(rowCount());
+ sizehint_heights.resize(rowCount());
+ qreal height = constraint.height();
+ //Calculate row heights and positions, and put results in q_yy.data() and q_heights.data() so that we can use this information as
+ //constraints to find the column widths
+ q_rowData.calculateGeometries(0, rowCount(), height, sizehint_yy.data(), sizehint_heights.data(),
+ 0, sizehint_totalBoxes[Ver], q_infos[Ver]);
+ ensureColumnAndRowData(&q_columnData, &sizehint_totalBoxes[Hor], styleInfo, sizehint_yy.data(), sizehint_heights.data(), Qt::Vertical);
+ sizeHintCalculated = true;
+ }
+ }
+ }
+
+ if (!sizeHintCalculated) {
//No items with height for width, so it doesn't matter which order we do these in
- if(q_cachedDataForStyleInfo != styleInfo) {
+ if (q_cachedDataForStyleInfo != styleInfo) {
ensureColumnAndRowData(&q_columnData, &sizehint_totalBoxes[Hor], styleInfo, NULL, NULL, Qt::Horizontal);
ensureColumnAndRowData(&q_rowData, &sizehint_totalBoxes[Ver], styleInfo, NULL, NULL, Qt::Vertical);
} else {
sizehint_totalBoxes[Hor] = q_totalBoxes[Hor];
sizehint_totalBoxes[Ver] = q_totalBoxes[Ver];
}
- } else if(constraintOrientation() == Qt::Vertical) {
- //We have items whose width depends on their height
- if(q_cachedDataForStyleInfo != styleInfo)
- ensureColumnAndRowData(&q_columnData, &sizehint_totalBoxes[Hor], styleInfo, NULL, NULL, Qt::Horizontal);
- else
- sizehint_totalBoxes[Hor] = q_totalBoxes[Hor];
- QVector<qreal> sizehint_xx;
- QVector<qreal> sizehint_widths;
-
- sizehint_xx.resize(columnCount());
- sizehint_widths.resize(columnCount());
- qreal width = constraint.width();
- if(width < 0) {
- /* It's not obvious what the behaviour should be. */
-/* if(which == Qt::MaximumSize)
- width = sizehint_totalBoxes[Hor].q_maximumSize;
- else if(which == Qt::MinimumSize)
- width = sizehint_totalBoxes[Hor].q_minimumSize;
- else*/
- width = sizehint_totalBoxes[Hor].q_preferredSize;
- }
- //Calculate column widths and positions, and put results in q_xx.data() and q_widths.data() so that we can use this information as
- //constraints to find the row heights
- q_columnData.calculateGeometries(0, columnCount(), width, sizehint_xx.data(), sizehint_widths.data(),
- 0, sizehint_totalBoxes[Hor]);
- ensureColumnAndRowData(&q_rowData, &sizehint_totalBoxes[Ver], styleInfo, sizehint_xx.data(), sizehint_widths.data(), Qt::Vertical);
- } else {
- //We have items whose height depends on their width
- ensureColumnAndRowData(&q_rowData, &sizehint_totalBoxes[Ver], styleInfo, NULL, NULL, Qt::Vertical);
- QVector<qreal> sizehint_yy;
- QVector<qreal> sizehint_heights;
-
- sizehint_yy.resize(rowCount());
- sizehint_heights.resize(rowCount());
- qreal height = constraint.height();
- if(height < 0) {
-/* if(which == Qt::MaximumSize)
- height = sizehint_totalBoxes[Ver].q_maximumSize;
- else if(which == Qt::MinimumSize)
- height = sizehint_totalBoxes[Ver].q_minimumSize;
- else*/
- height = sizehint_totalBoxes[Ver].q_preferredSize;
- }
- //Calculate row heights and positions, and put results in q_yy.data() and q_heights.data() so that we can use this information as
- //constraints to find the column widths
- q_rowData.calculateGeometries(0, rowCount(), height, sizehint_yy.data(), sizehint_heights.data(),
- 0, sizehint_totalBoxes[Ver]);
- ensureColumnAndRowData(&q_columnData, &sizehint_totalBoxes[Hor], styleInfo, sizehint_yy.data(), sizehint_heights.data(), Qt::Vertical);
}
switch (which) {
@@ -1622,7 +1638,8 @@ void QGridLayoutEngine::ensureColumnAndRowData(QGridLayoutRowData *rowData, QGri
{
rowData->reset(rowCount(orientation));
fillRowData(rowData, styleInfo, colPositions, colSizes, orientation);
- rowData->distributeMultiCells();
+ const QGridLayoutRowInfo &rowInfo = q_infos[orientation == Qt::Vertical];
+ rowData->distributeMultiCells(rowInfo);
*totalBox = rowData->totalBox(0, rowCount(orientation));
//We have items whose width depends on their height
}
@@ -1685,28 +1702,28 @@ void QGridLayoutEngine::ensureGeometries(const QLayoutStyleInfo &styleInfo,
q_heights.resize(rowCount());
q_descents.resize(rowCount());
- if(constraintOrientation() != Qt::Horizontal) {
+ if (constraintOrientation() != Qt::Horizontal) {
//We might have items whose width depends on their height
ensureColumnAndRowData(&q_columnData, &q_totalBoxes[Hor], styleInfo, NULL, NULL, Qt::Horizontal);
//Calculate column widths and positions, and put results in q_xx.data() and q_widths.data() so that we can use this information as
//constraints to find the row heights
q_columnData.calculateGeometries(0, columnCount(), size.width(), q_xx.data(), q_widths.data(),
- 0, q_totalBoxes[Hor]);
+ 0, q_totalBoxes[Hor], q_infos[Hor] );
ensureColumnAndRowData(&q_rowData, &q_totalBoxes[Ver], styleInfo, q_xx.data(), q_widths.data(), Qt::Vertical);
//Calculate row heights and positions, and put results in q_yy.data() and q_heights.data()
q_rowData.calculateGeometries(0, rowCount(), size.height(), q_yy.data(), q_heights.data(),
- q_descents.data(), q_totalBoxes[Ver]);
+ q_descents.data(), q_totalBoxes[Ver], q_infos[Ver]);
} else {
//We have items whose height depends on their width
ensureColumnAndRowData(&q_rowData, &q_totalBoxes[Ver], styleInfo, NULL, NULL, Qt::Vertical);
//Calculate row heights and positions, and put results in q_yy.data() and q_heights.data() so that we can use this information as
//constraints to find the column widths
q_rowData.calculateGeometries(0, rowCount(), size.height(), q_yy.data(), q_heights.data(),
- q_descents.data(), q_totalBoxes[Ver]);
+ q_descents.data(), q_totalBoxes[Ver], q_infos[Ver]);
ensureColumnAndRowData(&q_columnData, &q_totalBoxes[Hor], styleInfo, q_yy.data(), q_heights.data(), Qt::Horizontal);
//Calculate row heights and positions, and put results in q_yy.data() and q_heights.data()
q_columnData.calculateGeometries(0, columnCount(), size.width(), q_xx.data(), q_widths.data(),
- 0, q_totalBoxes[Hor]);
+ 0, q_totalBoxes[Hor], q_infos[Hor]);
}
}
diff --git a/src/gui/graphicsview/qgridlayoutengine_p.h b/src/gui/graphicsview/qgridlayoutengine_p.h
index 02c74b07ac..44efbba998 100644
--- a/src/gui/graphicsview/qgridlayoutengine_p.h
+++ b/src/gui/graphicsview/qgridlayoutengine_p.h
@@ -224,13 +224,16 @@ public:
typedef QMap<QPair<int, int>, QGridLayoutMultiCellData> MultiCellMap;
+class QGridLayoutRowInfo;
+
class QGridLayoutRowData
{
public:
void reset(int count);
- void distributeMultiCells();
+ void distributeMultiCells(const QGridLayoutRowInfo &rowInfo);
void calculateGeometries(int start, int end, qreal targetSize, qreal *positions, qreal *sizes,
- qreal *descents, const QGridLayoutBox &totalBox);
+ qreal *descents, const QGridLayoutBox &totalBox,
+ const QGridLayoutRowInfo &rowInfo);
QGridLayoutBox totalBox(int start, int end) const;
void stealBox(int start, int end, int which, qreal *positions, qreal *sizes);
diff --git a/src/gui/gui.pro b/src/gui/gui.pro
index 90b5de5971..4d51fa8ce3 100644
--- a/src/gui/gui.pro
+++ b/src/gui/gui.pro
@@ -64,13 +64,12 @@ symbian {
neon:*-g++* {
DEFINES += QT_HAVE_NEON
- QMAKE_CXXFLAGS *= -mfpu=neon
HEADERS += $$NEON_HEADERS
SOURCES += $$NEON_SOURCES
DRAWHELPER_NEON_ASM_FILES = $$NEON_ASM
- neon_compiler.commands = $$QMAKE_CXX -c
+ neon_compiler.commands = $$QMAKE_CXX -c -mfpu=neon
neon_compiler.commands += $(CXXFLAGS) $(INCPATH) ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT}
neon_compiler.dependency_type = TYPE_C
neon_compiler.output = ${QMAKE_VAR_OBJECTS_DIR}${QMAKE_FILE_BASE}$${first(QMAKE_EXT_OBJ)}
diff --git a/src/gui/image/qimage.cpp b/src/gui/image/qimage.cpp
index 1157b93236..6ba3858080 100644
--- a/src/gui/image/qimage.cpp
+++ b/src/gui/image/qimage.cpp
@@ -1121,9 +1121,14 @@ QImage::QImage(const char * const xpm[])
QImage::QImage(const QImage &image)
: QPaintDevice()
{
- d = image.d;
- if (d)
- d->ref.ref();
+ if (image.paintingActive()) {
+ d = 0;
+ operator=(image.copy());
+ } else {
+ d = image.d;
+ if (d)
+ d->ref.ref();
+ }
}
#ifdef QT3_SUPPORT
@@ -1320,11 +1325,15 @@ QImage::~QImage()
QImage &QImage::operator=(const QImage &image)
{
- if (image.d)
- image.d->ref.ref();
- if (d && !d->ref.deref())
- delete d;
- d = image.d;
+ if (image.paintingActive()) {
+ operator=(image.copy());
+ } else {
+ if (image.d)
+ image.d->ref.ref();
+ if (d && !d->ref.deref())
+ delete d;
+ d = image.d;
+ }
return *this;
}
diff --git a/src/gui/image/qpixmap_raster.cpp b/src/gui/image/qpixmap_raster.cpp
index 53f3559298..29bf5f5d1a 100644
--- a/src/gui/image/qpixmap_raster.cpp
+++ b/src/gui/image/qpixmap_raster.cpp
@@ -44,11 +44,13 @@
#include "qpixmap_raster_p.h"
#include "qnativeimage_p.h"
#include "qimage_p.h"
+#include "qpaintengine.h"
#include "qbitmap.h"
#include "qimage.h"
#include <QBuffer>
#include <QImageReader>
+#include <private/qimage_p.h>
#include <private/qsimd_p.h>
#include <private/qwidget_p.h>
#include <private/qdrawhelper_p.h>
@@ -302,6 +304,15 @@ bool QRasterPixmapData::hasAlphaChannel() const
QImage QRasterPixmapData::toImage() const
{
+ if (!image.isNull()) {
+ QImageData *data = const_cast<QImage &>(image).data_ptr();
+ if (data->paintEngine && data->paintEngine->isActive()
+ && data->paintEngine->paintDevice() == &image)
+ {
+ return image.copy();
+ }
+ }
+
return image;
}
diff --git a/src/gui/image/qpnghandler.cpp b/src/gui/image/qpnghandler.cpp
index 935aba0423..1a78bae5ad 100644
--- a/src/gui/image/qpnghandler.cpp
+++ b/src/gui/image/qpnghandler.cpp
@@ -82,6 +82,41 @@ QT_BEGIN_NAMESPACE
Never to grayscale.
*/
+class QPngHandlerPrivate
+{
+public:
+ enum State {
+ Ready,
+ ReadHeader,
+ ReadingEnd,
+ Error
+ };
+
+ QPngHandlerPrivate(QPngHandler *qq)
+ : gamma(0.0), quality(2), png_ptr(0), info_ptr(0),
+ end_info(0), row_pointers(0), state(Ready), q(qq)
+ { }
+
+ float gamma;
+ int quality;
+ QString description;
+
+ png_struct *png_ptr;
+ png_info *info_ptr;
+ png_info *end_info;
+ png_byte **row_pointers;
+
+ bool readPngHeader();
+ bool readPngImage(QImage *image);
+
+ QImage::Format readImageFormat();
+
+ State state;
+
+ QPngHandler *q;
+};
+
+
#if defined(Q_C_CALLBACKS)
extern "C" {
#endif
@@ -118,7 +153,16 @@ private:
static
void CALLBACK_CALL_TYPE iod_read_fn(png_structp png_ptr, png_bytep data, png_size_t length)
{
- QIODevice *in = (QIODevice *)png_get_io_ptr(png_ptr);
+ QPngHandlerPrivate *d = (QPngHandlerPrivate *)png_get_io_ptr(png_ptr);
+ QIODevice *in = d->q->device();
+
+ if (d->state == QPngHandlerPrivate::ReadingEnd && !in->isSequential() && (in->size() - in->pos()) < 4 && length == 4) {
+ // Workaround for certain malformed PNGs that lack the final crc bytes
+ uchar endcrc[4] = { 0xae, 0x42, 0x60, 0x82 };
+ qMemCopy(data, endcrc, 4);
+ in->seek(in->size());
+ return;
+ }
while (length) {
int nr = in->read((char*)data, length);
@@ -314,38 +358,6 @@ static void CALLBACK_CALL_TYPE qt_png_warning(png_structp /*png_ptr*/, png_const
}
#endif
-class QPngHandlerPrivate
-{
-public:
- enum State {
- Ready,
- ReadHeader,
- Error
- };
-
- QPngHandlerPrivate(QPngHandler *qq)
- : gamma(0.0), quality(2), png_ptr(0), info_ptr(0),
- end_info(0), row_pointers(0), state(Ready), q(qq)
- { }
-
- float gamma;
- int quality;
- QString description;
-
- png_struct *png_ptr;
- png_info *info_ptr;
- png_info *end_info;
- png_byte **row_pointers;
-
- bool readPngHeader();
- bool readPngImage(QImage *image);
-
- QImage::Format readImageFormat();
-
- State state;
-
- QPngHandler *q;
-};
/*!
\internal
@@ -379,7 +391,7 @@ bool Q_INTERNAL_WIN_NO_THROW QPngHandlerPrivate::readPngHeader()
return false;
}
- png_set_read_fn(png_ptr, q->device(), iod_read_fn);
+ png_set_read_fn(png_ptr, this, iod_read_fn);
png_read_info(png_ptr, info_ptr);
#ifndef QT_NO_IMAGE_TEXT
@@ -505,6 +517,7 @@ bool Q_INTERNAL_WIN_NO_THROW QPngHandlerPrivate::readPngImage(QImage *outImage)
}
#endif
+ state = ReadingEnd;
png_read_end(png_ptr, end_info);
png_destroy_read_struct(&png_ptr, &info_ptr, &end_info);
delete [] row_pointers;
diff --git a/src/gui/itemviews/qabstractitemview.cpp b/src/gui/itemviews/qabstractitemview.cpp
index 7b81761ea8..acc8debdc3 100644
--- a/src/gui/itemviews/qabstractitemview.cpp
+++ b/src/gui/itemviews/qabstractitemview.cpp
@@ -827,7 +827,7 @@ QVariant QAbstractItemView::inputMethodQuery(Qt::InputMethodQuery query) const
deleted. QAbstractItemView does not take ownership of \a delegate.
\note If a delegate has been assigned to both a row and a column, the row
- delegate (i.e., this delegate) will take presedence and manage the
+ delegate (i.e., this delegate) will take precedence and manage the
intersecting cell index.
\warning You should not share the same instance of a delegate between views.
@@ -885,7 +885,7 @@ QAbstractItemDelegate *QAbstractItemView::itemDelegateForRow(int row) const
deleted. QAbstractItemView does not take ownership of \a delegate.
\note If a delegate has been assigned to both a row and a column, the row
- delegate will take presedence and manage the intersecting cell index.
+ delegate will take precedence and manage the intersecting cell index.
\warning You should not share the same instance of a delegate between views.
Doing so can cause incorrect or unintuitive editing behavior since each
diff --git a/src/gui/itemviews/qstandarditemmodel.cpp b/src/gui/itemviews/qstandarditemmodel.cpp
index 767b5a9069..7d20bbb64a 100644
--- a/src/gui/itemviews/qstandarditemmodel.cpp
+++ b/src/gui/itemviews/qstandarditemmodel.cpp
@@ -1130,7 +1130,7 @@ Qt::ItemFlags QStandardItem::flags() const
meaning that the user can interact with the item; if \a enabled is false, the
user cannot interact with the item.
- This flag takes presedence over the other item flags; e.g. if an item is not
+ This flag takes precedence over the other item flags; e.g. if an item is not
enabled, it cannot be selected by the user, even if the Qt::ItemIsSelectable
flag has been set.
diff --git a/src/gui/kernel/qapplication_win.cpp b/src/gui/kernel/qapplication_win.cpp
index 78028eb1f4..10c4ed6f1b 100644
--- a/src/gui/kernel/qapplication_win.cpp
+++ b/src/gui/kernel/qapplication_win.cpp
@@ -3269,7 +3269,7 @@ bool QETWidget::translateMouseEvent(const MSG &msg)
if (type == QEvent::MouseButtonPress
&& QApplication::activePopupWidget() != activePopupWidget
&& replayPopupMouseEvent) {
- // the popup dissappeared. Replay the event
+ // the popup disappeared. Replay the event
QWidget* w = QApplication::widgetAt(gpos.x, gpos.y);
if (w && !QApplicationPrivate::isBlockedByModal(w)) {
Q_ASSERT(w->testAttribute(Qt::WA_WState_Created));
@@ -3506,7 +3506,7 @@ static void tabletInit(const quint64 uniqueId, const UINT csr_type, HCTX hTab)
}
#endif // QT_NO_TABLETEVENT
-// Update the "dynamic" informations of a cursor device (pen, airbrush, etc).
+// Update the "dynamic" information of a cursor device (pen, airbrush, etc).
// The dynamic information is the information of QTabletDeviceData that can change
// in time (eraser or pen if a device is turned around).
#ifndef QT_NO_TABLETEVENT
diff --git a/src/gui/kernel/qclipboard_mac.cpp b/src/gui/kernel/qclipboard_mac.cpp
index 49a6cc81d7..482a3a3be4 100644
--- a/src/gui/kernel/qclipboard_mac.cpp
+++ b/src/gui/kernel/qclipboard_mac.cpp
@@ -623,7 +623,7 @@ QMacPasteboard::sync() const
#ifdef DEBUG_PASTEBOARD
if(fromGlobal)
- qDebug("Pasteboard: Syncronize!");
+ qDebug("Pasteboard: Synchronize!");
#endif
return fromGlobal;
}
diff --git a/src/gui/kernel/qevent.cpp b/src/gui/kernel/qevent.cpp
index eade02e7a3..7fdb92680d 100644
--- a/src/gui/kernel/qevent.cpp
+++ b/src/gui/kernel/qevent.cpp
@@ -1970,7 +1970,7 @@ void QInputMethodEvent::setCommitString(const QString &commitString, int replace
is usually given by a wheel on 4D mouse. If the device does not support a
Z-axis, pass zero here.
- The \a tangentialPressure paramater contins the tangential pressure of an air
+ The \a tangentialPressure parameter contins the tangential pressure of an air
brush. If the device does not support tangential pressure, pass 0 here.
\a rotation contains the device's rotation in degrees. 4D mice support
diff --git a/src/gui/kernel/qeventdispatcher_s60_p.h b/src/gui/kernel/qeventdispatcher_s60_p.h
index c14fef0643..539a21cc6a 100644
--- a/src/gui/kernel/qeventdispatcher_s60_p.h
+++ b/src/gui/kernel/qeventdispatcher_s60_p.h
@@ -75,6 +75,13 @@ public:
void complete();
private:
+ // Workaround for a BC break from S60 3.2 -> 5.0, where the CEikonEnv override was removed.
+ // To avoid linking to that when we build against 3.2, define an empty body here.
+ // Reserved_*() have been verified to be empty in the S60 code.
+ void Reserved_1() {}
+ void Reserved_2() {}
+
+private:
int m_lastIterationCount;
TInt m_savedStatusCode;
bool m_hasAlreadyRun;
diff --git a/src/gui/kernel/qgesturemanager.cpp b/src/gui/kernel/qgesturemanager.cpp
index 5e9a0cba77..46450b197f 100644
--- a/src/gui/kernel/qgesturemanager.cpp
+++ b/src/gui/kernel/qgesturemanager.cpp
@@ -175,9 +175,9 @@ void QGestureManager::cleanupCachedGestures(QObject *target, Qt::GestureType typ
m_activeGestures.remove(g);
m_gestureOwners.remove(g);
m_gestureTargets.remove(g);
+ m_gesturesToDelete.insert(g);
}
- qDeleteAll(gestures);
iter = m_objectGestures.erase(iter);
} else {
++iter;
@@ -189,7 +189,7 @@ void QGestureManager::cleanupCachedGestures(QObject *target, Qt::GestureType typ
QGesture *QGestureManager::getState(QObject *object, QGestureRecognizer *recognizer, Qt::GestureType type)
{
// if the widget is being deleted we should be careful not to
- // create a new state, as it will create QWeakPointer which doesnt work
+ // create a new state, as it will create QWeakPointer which doesn't work
// from the destructor.
if (object->isWidgetType()) {
if (static_cast<QWidget *>(object)->d_func()->data.in_destructor)
@@ -385,6 +385,11 @@ bool QGestureManager::filterEventThroughContexts(const QMultiMap<QObject *,
recycle(gesture);
m_gestureTargets.remove(gesture);
}
+
+ //Clean up the Gestures
+ qDeleteAll(m_gesturesToDelete);
+ m_gesturesToDelete.clear();
+
return ret;
}
@@ -447,7 +452,8 @@ void QGestureManager::cancelGesturesForChildren(QGesture *original)
void QGestureManager::cleanupGesturesForRemovedRecognizer(QGesture *gesture)
{
QGestureRecognizer *recognizer = m_deletedRecognizers.value(gesture);
- Q_ASSERT(recognizer);
+ if(!recognizer) //The Gesture is removed while in the even loop, so the recognizers for this gestures was removed
+ return;
m_deletedRecognizers.remove(gesture);
if (m_deletedRecognizers.keys(recognizer).isEmpty()) {
// no more active gestures, cleanup!
diff --git a/src/gui/kernel/qgesturemanager_p.h b/src/gui/kernel/qgesturemanager_p.h
index 0d84b67434..92310f5f0b 100644
--- a/src/gui/kernel/qgesturemanager_p.h
+++ b/src/gui/kernel/qgesturemanager_p.h
@@ -101,7 +101,7 @@ private:
NotGesture,
MaybeGesture // this means timers are up and waiting for some
// more events, and input events are handled by
- // gesture recognizer explicitely
+ // gesture recognizer explicitly
} state;
struct ObjectGesture
@@ -130,6 +130,7 @@ private:
QHash<QGestureRecognizer *, QSet<QGesture *> > m_obsoleteGestures;
QHash<QGesture *, QGestureRecognizer *> m_deletedRecognizers;
+ QSet<QGesture *> m_gesturesToDelete;
void cleanupGesturesForRemovedRecognizer(QGesture *gesture);
QGesture *getState(QObject *widget, QGestureRecognizer *recognizer,
diff --git a/src/gui/kernel/qguiplatformplugin.cpp b/src/gui/kernel/qguiplatformplugin.cpp
index 2dd251bcd7..c80c6d36e2 100644
--- a/src/gui/kernel/qguiplatformplugin.cpp
+++ b/src/gui/kernel/qguiplatformplugin.cpp
@@ -187,7 +187,7 @@ QString QGuiPlatformPlugin::styleName()
#endif
}
-/* return an aditional default palette (only work on X11) */
+/* return an additional default palette (only work on X11) */
QPalette QGuiPlatformPlugin::palette()
{
#ifdef Q_WS_X11
diff --git a/src/gui/kernel/qkeymapper_mac.cpp b/src/gui/kernel/qkeymapper_mac.cpp
index 300e5cac12..b8f08bfcd4 100644
--- a/src/gui/kernel/qkeymapper_mac.cpp
+++ b/src/gui/kernel/qkeymapper_mac.cpp
@@ -765,7 +765,7 @@ bool QKeyMapperPrivate::translateKeyEvent(QWidget *widget, EventHandlerCallRef e
&handled_event) == false)
return handled_event;
QString text(ourChar);
- /* This is actually wrong - but unfortunatly it is the best that can be
+ /* This is actually wrong - but unfortunately it is the best that can be
done for now because of the Control/Meta mapping problems */
if (modifiers & (Qt::ControlModifier | Qt::MetaModifier)
&& !qApp->testAttribute(Qt::AA_MacDontSwapCtrlAndMeta)) {
diff --git a/src/gui/kernel/qkeysequence.cpp b/src/gui/kernel/qkeysequence.cpp
index 50b2354156..bf3eddde23 100644
--- a/src/gui/kernel/qkeysequence.cpp
+++ b/src/gui/kernel/qkeysequence.cpp
@@ -1105,7 +1105,7 @@ QKeySequence QKeySequence::mnemonic(const QString &text)
#else
found = true;
} else {
- qWarning("QKeySequence::mnemonic: \"%s\" contains multiple occurences of '&'", qPrintable(text));
+ qWarning("QKeySequence::mnemonic: \"%s\" contains multiple occurrences of '&'", qPrintable(text));
#endif
}
}
diff --git a/src/gui/kernel/qsound_s60.cpp b/src/gui/kernel/qsound_s60.cpp
index df2830bc4e..accfce2dd0 100644
--- a/src/gui/kernel/qsound_s60.cpp
+++ b/src/gui/kernel/qsound_s60.cpp
@@ -150,7 +150,7 @@ void QAuServerS60::playCompleted(QAuBucketS60 *bucket, int error)
} else {
// We don't have a way to inform about errors -> just decrement loops
// in order that QSound::isFinished will return true;
- while (decLoop(sound)) {}
+ while (decLoop(sound) > 0) {}
if (staticPlayingSounds.removeAll(sound))
delete sound;
}
diff --git a/src/gui/kernel/qwidget.cpp b/src/gui/kernel/qwidget.cpp
index e22ec55182..c5f64e5d52 100644
--- a/src/gui/kernel/qwidget.cpp
+++ b/src/gui/kernel/qwidget.cpp
@@ -1673,13 +1673,8 @@ void QWidgetPrivate::setWinId(WId id) // set widget identifier
}
if(oldWinId != id) {
- // Do not emit an event when the old winId is destroyed. This only
- // happens (a) during widget destruction, and (b) immediately prior
- // to creation of a new winId, for example as a result of re-parenting.
- if(id != 0) {
- QEvent e(QEvent::WinIdChange);
- QCoreApplication::sendEvent(q, &e);
- }
+ QEvent e(QEvent::WinIdChange);
+ QCoreApplication::sendEvent(q, &e);
}
}
@@ -8836,7 +8831,7 @@ void QWidget::mousePressEvent(QMouseEvent *event)
QWidget* w;
while ((w = QApplication::activePopupWidget()) && w != this){
w->close();
- if (QApplication::activePopupWidget() == w) // widget does not want to dissappear
+ if (QApplication::activePopupWidget() == w) // widget does not want to disappear
w->hide(); // hide at least
}
if (!rect().contains(event->pos())){
@@ -9305,7 +9300,7 @@ void QWidget::setInputMethodHints(Qt::InputMethodHints hints)
#ifndef QT_NO_IM
Q_D(QWidget);
d->imHints = hints;
- // Optimisation to update input context only it has already been created.
+ // Optimization to update input context only it has already been created.
if (d->ic || qApp->d_func()->inputContext) {
QInputContext *ic = inputContext();
if (ic)
diff --git a/src/gui/kernel/qwidget_p.h b/src/gui/kernel/qwidget_p.h
index ca1e3fc96c..6a27469e34 100644
--- a/src/gui/kernel/qwidget_p.h
+++ b/src/gui/kernel/qwidget_p.h
@@ -226,6 +226,7 @@ struct QTLWExtra {
#endif
#elif defined(Q_OS_SYMBIAN)
uint inExpose : 1; // Prevents drawing recursion
+ uint nativeWindowTransparencyEnabled : 1; // Tracks native window transparency
#endif
};
diff --git a/src/gui/kernel/qwidget_s60.cpp b/src/gui/kernel/qwidget_s60.cpp
index cf4bdf152d..609307c275 100644
--- a/src/gui/kernel/qwidget_s60.cpp
+++ b/src/gui/kernel/qwidget_s60.cpp
@@ -57,7 +57,7 @@
#include <eikbtgpc.h>
#endif
-// This is necessary in order to be able to perform delayed invokation on slots
+// This is necessary in order to be able to perform delayed invocation on slots
// which take arguments of type WId. One example is
// QWidgetPrivate::_q_delayedDestroy, which is used to delay destruction of
// CCoeControl objects until after the CONE event handler has finished running.
@@ -767,17 +767,24 @@ void QWidgetPrivate::s60UpdateIsOpaque()
if (!q->testAttribute(Qt::WA_WState_Created) || !q->testAttribute(Qt::WA_TranslucentBackground))
return;
+ createTLExtra();
+
RWindow *const window = static_cast<RWindow *>(q->effectiveWinId()->DrawableWindow());
#ifdef Q_SYMBIAN_SEMITRANSPARENT_BG_SURFACE
window->SetSurfaceTransparency(!isOpaque);
+ extra->topextra->nativeWindowTransparencyEnabled = !isOpaque;
#else
if (!isOpaque) {
const TDisplayMode displayMode = static_cast<TDisplayMode>(window->SetRequiredDisplayMode(EColor16MA));
- if (window->SetTransparencyAlphaChannel() == KErrNone)
+ if (window->SetTransparencyAlphaChannel() == KErrNone) {
window->SetBackgroundColor(TRgb(255, 255, 255, 0));
- } else
+ extra->topextra->nativeWindowTransparencyEnabled = 1;
+ }
+ } else if (extra->topextra->nativeWindowTransparencyEnabled) {
window->SetTransparentRegion(TRegionFix<1>());
+ extra->topextra->nativeWindowTransparencyEnabled = 0;
+ }
#endif
}
@@ -936,6 +943,7 @@ void QWidgetPrivate::registerDropSite(bool /* on */)
void QWidgetPrivate::createTLSysExtra()
{
extra->topextra->inExpose = 0;
+ extra->topextra->nativeWindowTransparencyEnabled = 0;
}
void QWidgetPrivate::deleteTLSysExtra()
diff --git a/src/gui/kernel/qx11embed_x11.cpp b/src/gui/kernel/qx11embed_x11.cpp
index 9f1b1f8f3c..e6e3bfb9f3 100644
--- a/src/gui/kernel/qx11embed_x11.cpp
+++ b/src/gui/kernel/qx11embed_x11.cpp
@@ -1136,7 +1136,7 @@ void QX11EmbedContainer::paintEvent(QPaintEvent *)
/*! \internal
- Returns wether or not the windows' embedded flag is set.
+ Returns whether or not the windows' embedded flag is set.
*/
bool QX11EmbedContainerPrivate::isEmbedded() const
{
diff --git a/src/gui/painting/qdrawhelper.cpp b/src/gui/painting/qdrawhelper.cpp
index a4ab2783ae..024a69d261 100644
--- a/src/gui/painting/qdrawhelper.cpp
+++ b/src/gui/painting/qdrawhelper.cpp
@@ -6432,6 +6432,8 @@ Q_STATIC_TEMPLATE_FUNCTION void blendTransformedTiled(int count, const QSpan *sp
int px = int(tx) - (tx < 0);
int py = int(ty) - (ty < 0);
+ px %= image_width;
+ py %= image_height;
if (px < 0)
px += image_width;
if (py < 0)
diff --git a/src/gui/painting/qemulationpaintengine.cpp b/src/gui/painting/qemulationpaintengine.cpp
index 0510b103a7..714d5de6c6 100644
--- a/src/gui/painting/qemulationpaintengine.cpp
+++ b/src/gui/painting/qemulationpaintengine.cpp
@@ -268,6 +268,15 @@ void QEmulationPaintEngine::setState(QPainterState *s)
real_engine->setState(s);
}
+void QEmulationPaintEngine::beginNativePainting()
+{
+ real_engine->beginNativePainting();
+}
+
+void QEmulationPaintEngine::endNativePainting()
+{
+ real_engine->endNativePainting();
+}
void QEmulationPaintEngine::fillBGRect(const QRectF &r)
{
diff --git a/src/gui/painting/qemulationpaintengine_p.h b/src/gui/painting/qemulationpaintengine_p.h
index 5835f10afb..e283645621 100644
--- a/src/gui/painting/qemulationpaintengine_p.h
+++ b/src/gui/painting/qemulationpaintengine_p.h
@@ -93,6 +93,9 @@ public:
virtual void setState(QPainterState *s);
+ virtual void beginNativePainting();
+ virtual void endNativePainting();
+
virtual uint flags() const {return QPaintEngineEx::IsEmulationEngine | QPaintEngineEx::DoNotEmulate;}
inline QPainterState *state() { return (QPainterState *)QPaintEngine::state; }
diff --git a/src/gui/painting/qgrayraster.c b/src/gui/painting/qgrayraster.c
index ec9ebeb71f..001345fe6a 100644
--- a/src/gui/painting/qgrayraster.c
+++ b/src/gui/painting/qgrayraster.c
@@ -963,49 +963,53 @@
const QT_FT_Vector* control2,
const QT_FT_Vector* to )
{
+ TPos dx, dy, da, db;
int top, level;
int* levels;
QT_FT_Vector* arc;
- int mid_x = ( DOWNSCALE( ras.x ) + to->x +
- 3 * (control1->x + control2->x ) ) / 8;
- int mid_y = ( DOWNSCALE( ras.y ) + to->y +
- 3 * (control1->y + control2->y ) ) / 8;
- TPos dx = DOWNSCALE( ras.x ) + to->x - ( mid_x << 1 );
- TPos dy = DOWNSCALE( ras.y ) + to->y - ( mid_y << 1 );
+ dx = DOWNSCALE( ras.x ) + to->x - ( control1->x << 1 );
if ( dx < 0 )
dx = -dx;
+ dy = DOWNSCALE( ras.y ) + to->y - ( control1->y << 1 );
if ( dy < 0 )
dy = -dy;
if ( dx < dy )
dx = dy;
+ da = dx;
+
+ dx = DOWNSCALE( ras.x ) + to->x - 3 * ( control1->x + control2->x );
+ if ( dx < 0 )
+ dx = -dx;
+ dy = DOWNSCALE( ras.y ) + to->y - 3 * ( control1->y + control2->y );
+ if ( dy < 0 )
+ dy = -dy;
+ if ( dx < dy )
+ dx = dy;
+ db = dx;
level = 1;
- dx /= ras.cubic_level;
- while ( dx > 0 )
+ da = da / ras.cubic_level;
+ db = db / ras.conic_level;
+ while ( da > 0 || db > 0 )
{
- dx >>= 2;
+ da >>= 2;
+ db >>= 3;
level++;
}
if ( level <= 1 )
{
- TPos to_x, to_y;
+ TPos to_x, to_y, mid_x, mid_y;
to_x = UPSCALE( to->x );
to_y = UPSCALE( to->y );
-
- /* Recalculation of midpoint is needed only if */
- /* UPSCALE and DOWNSCALE have any effect. */
-
-#if ( PIXEL_BITS != 6 )
mid_x = ( ras.x + to_x +
3 * UPSCALE( control1->x + control2->x ) ) / 8;
mid_y = ( ras.y + to_y +
3 * UPSCALE( control1->y + control2->y ) ) / 8;
-#endif
gray_render_line( RAS_VAR_ mid_x, mid_y );
gray_render_line( RAS_VAR_ to_x, to_y );
diff --git a/src/gui/painting/qpathclipper.cpp b/src/gui/painting/qpathclipper.cpp
index a17b7c1357..5060ad6ab0 100644
--- a/src/gui/painting/qpathclipper.cpp
+++ b/src/gui/painting/qpathclipper.cpp
@@ -868,9 +868,9 @@ QWingedEdge::QWingedEdge() :
}
QWingedEdge::QWingedEdge(const QPainterPath &subject, const QPainterPath &clip) :
- m_edges(subject.length()),
- m_vertices(subject.length()),
- m_segments(subject.length())
+ m_edges(subject.elementCount()),
+ m_vertices(subject.elementCount()),
+ m_segments(subject.elementCount())
{
m_segments.setPath(subject);
m_segments.addPath(clip);
@@ -1405,9 +1405,9 @@ bool QPathClipper::intersect()
else if (clipIsRect)
return subjectPath.intersects(r2);
- QPathSegments a(subjectPath.length());
+ QPathSegments a(subjectPath.elementCount());
a.setPath(subjectPath);
- QPathSegments b(clipPath.length());
+ QPathSegments b(clipPath.elementCount());
b.setPath(clipPath);
QIntersectionFinder finder;
@@ -1450,9 +1450,9 @@ bool QPathClipper::contains()
if (clipIsRect)
return subjectPath.contains(r2);
- QPathSegments a(subjectPath.length());
+ QPathSegments a(subjectPath.elementCount());
a.setPath(subjectPath);
- QPathSegments b(clipPath.length());
+ QPathSegments b(clipPath.elementCount());
b.setPath(clipPath);
QIntersectionFinder finder;
diff --git a/src/gui/painting/qpdf.cpp b/src/gui/painting/qpdf.cpp
index ba5d164c9d..bd68d2a251 100644
--- a/src/gui/painting/qpdf.cpp
+++ b/src/gui/painting/qpdf.cpp
@@ -1390,7 +1390,7 @@ int QPdfBaseEngine::metric(QPaintDevice::PaintDeviceMetric metricType) const
void QPdfBaseEngine::setProperty(PrintEnginePropertyKey key, const QVariant &value)
{
Q_D(QPdfBaseEngine);
- switch (key) {
+ switch (int(key)) {
case PPK_CollateCopies:
d->collate = value.toBool();
break;
@@ -1480,7 +1480,7 @@ QVariant QPdfBaseEngine::property(PrintEnginePropertyKey key) const
Q_D(const QPdfBaseEngine);
QVariant ret;
- switch (key) {
+ switch (int(key)) {
case PPK_CollateCopies:
ret = d->collate;
break;
diff --git a/src/gui/painting/qtextureglyphcache.cpp b/src/gui/painting/qtextureglyphcache.cpp
index b609f7b3ec..eab9cf6034 100644
--- a/src/gui/painting/qtextureglyphcache.cpp
+++ b/src/gui/painting/qtextureglyphcache.cpp
@@ -65,7 +65,7 @@ static inline int qt_next_power_of_two(int v)
return v;
}
-void QTextureGlyphCache::populate(QFontEngine *fontEngine, int numGlyphs, const glyph_t *glyphs,
+bool QTextureGlyphCache::populate(QFontEngine *fontEngine, int numGlyphs, const glyph_t *glyphs,
const QFixedPoint *)
{
#ifdef CACHE_DEBUG
@@ -119,7 +119,7 @@ void QTextureGlyphCache::populate(QFontEngine *fontEngine, int numGlyphs, const
rowHeight = qMax(rowHeight, glyph_height);
}
if (listItemCoordinates.isEmpty())
- return;
+ return true;
rowHeight += margin * 2 + paddingDoubled;
if (isNull())
@@ -143,13 +143,20 @@ void QTextureGlyphCache::populate(QFontEngine *fontEngine, int numGlyphs, const
// no room on the current line, start new glyph strip
m_cx = 0;
m_cy += m_currentRowHeight + paddingDoubled;
- m_currentRowHeight = 0; // New row
+ m_currentRowHeight = c.h + margin * 2; // New row
}
}
if (m_cy + c.h > m_h) {
int new_height = m_h*2;
while (new_height < m_cy + c.h)
new_height *= 2;
+
+ if (maxTextureHeight() > 0 && new_height > maxTextureHeight()) {
+ // We can't make a new texture of the required size, so
+ // bail out
+ return false;
+ }
+
// if no room in the current texture - realloc a larger texture
resizeTextureData(m_w, new_height);
m_h = new_height;
@@ -165,7 +172,7 @@ void QTextureGlyphCache::populate(QFontEngine *fontEngine, int numGlyphs, const
++iter;
}
-
+ return true;
}
QImage QTextureGlyphCache::textureMapForGlyph(glyph_t g) const
@@ -259,11 +266,14 @@ void QImageTextureGlyphCache::fillTexture(const Coord &c, glyph_t g)
}
#endif
- if (m_type == QFontEngineGlyphCache::Raster_RGBMask) {
- QPainter p(&m_image);
+ if (m_type == QFontEngineGlyphCache::Raster_RGBMask) {
+ QImage ref(m_image.bits() + (c.x * 4 + c.y * m_image.bytesPerLine()),
+ qMax(mask.width(), c.w), qMax(mask.height(), c.h), m_image.bytesPerLine(),
+ m_image.format());
+ QPainter p(&ref);
p.setCompositionMode(QPainter::CompositionMode_Source);
- p.fillRect(c.x, c.y, c.w, c.h, QColor(0,0,0,0)); // TODO optimize this
- p.drawImage(c.x, c.y, mask);
+ p.fillRect(0, 0, c.w, c.h, QColor(0,0,0,0)); // TODO optimize this
+ p.drawImage(0, 0, mask);
p.end();
} else if (m_type == QFontEngineGlyphCache::Raster_Mono) {
if (mask.depth() > 1) {
diff --git a/src/gui/painting/qtextureglyphcache_p.h b/src/gui/painting/qtextureglyphcache_p.h
index e6d2b22190..94cb555540 100644
--- a/src/gui/painting/qtextureglyphcache_p.h
+++ b/src/gui/painting/qtextureglyphcache_p.h
@@ -96,7 +96,7 @@ public:
int baseLineY;
};
- void populate(QFontEngine *fontEngine, int numGlyphs, const glyph_t *glyphs,
+ bool populate(QFontEngine *fontEngine, int numGlyphs, const glyph_t *glyphs,
const QFixedPoint *positions);
virtual void createTextureData(int width, int height) = 0;
@@ -118,7 +118,7 @@ public:
QImage textureMapForGlyph(glyph_t g) const;
virtual int maxTextureWidth() const { return QT_DEFAULT_TEXTURE_GLYPH_CACHE_WIDTH; }
- virtual int maxTextureHeight() const { return 32768; }
+ virtual int maxTextureHeight() const { return -1; }
protected:
QFontEngine *m_current_fontengine;
diff --git a/src/gui/styles/qs60style.cpp b/src/gui/styles/qs60style.cpp
index 5fe90507c0..2f095299cd 100644
--- a/src/gui/styles/qs60style.cpp
+++ b/src/gui/styles/qs60style.cpp
@@ -1438,10 +1438,11 @@ void QS60Style::drawControl(ControlElement element, const QStyleOption *option,
const QRect iconRect = subElementRect(SE_ItemViewItemDecoration, &voptAdj, widget);
QRect textRect = subElementRect(SE_ItemViewItemText, &voptAdj, widget);
const QAbstractItemView *itemView = qobject_cast<const QAbstractItemView *>(widget);
- const bool singleSelection =
- (itemView->selectionMode() == QAbstractItemView::SingleSelection ||
- itemView->selectionMode() == QAbstractItemView::NoSelection);
- const bool selectItems = (itemView->selectionBehavior() == QAbstractItemView::SelectItems);
+
+ const bool singleSelection = itemView &&
+ ((itemView->selectionMode() == QAbstractItemView::SingleSelection ||
+ itemView->selectionMode() == QAbstractItemView::NoSelection));
+ const bool selectItems = itemView && (itemView->selectionBehavior() == QAbstractItemView::SelectItems);
// draw themed background for itemview unless background brush has been defined.
if (vopt->backgroundBrush == Qt::NoBrush) {
@@ -2536,6 +2537,56 @@ QSize QS60Style::sizeFromContents(ContentsType ct, const QStyleOption *opt,
if (const QStyleOptionToolButton *toolBtn = qstyleoption_cast<const QStyleOptionToolButton *>(opt))
if (toolBtn->subControls & SC_ToolButtonMenu)
sz += QSize(pixelMetric(PM_MenuButtonIndicator), 0);
+
+ //Make toolbuttons in toolbar stretch the whole screen area
+ if (widget && qobject_cast<const QToolBar *>(widget->parentWidget())) {
+ const QToolBar *tb = qobject_cast<const QToolBar *>(widget->parentWidget());
+ const bool parentCanGrowHorizontally = !(tb->sizePolicy().horizontalPolicy() == QSizePolicy::Fixed ||
+ tb->sizePolicy().horizontalPolicy() == QSizePolicy::Maximum) && tb->orientation() == Qt::Horizontal;
+
+ if (parentCanGrowHorizontally) {
+ int visibleButtons = 0;
+ //Make the auto-stretch to happen only for horizontal orientation
+ if (tb && tb->orientation() == Qt::Horizontal) {
+ QList<QAction*> actionList = tb->actions();
+ for (int i = 0; i < actionList.count(); i++) {
+ if (actionList.at(i)->isVisible())
+ visibleButtons++;
+ }
+ }
+
+ if (widget->parentWidget() && visibleButtons > 0) {
+ QWidget *w = const_cast<QWidget *>(widget);
+ int toolBarMaxWidth = 0;
+ int totalMargin = 0;
+ while (w) {
+ //honor fixed width parents
+ if (w->maximumWidth() == w->minimumWidth())
+ toolBarMaxWidth = qMax(toolBarMaxWidth, w->maximumWidth());
+ if (w->layout() && w->windowType() == Qt::Widget) {
+ totalMargin += w->layout()->contentsMargins().left() +
+ w->layout()->contentsMargins().right();
+ }
+ w = w->parentWidget();
+ }
+ totalMargin += 2 * pixelMetric(QStyle::PM_ToolBarFrameWidth);
+
+ if (toolBarMaxWidth == 0)
+ toolBarMaxWidth =
+ QApplication::desktop()->availableGeometry(widget->parentWidget()).width();
+ //Reduce the margins, toolbar frame, item spacing and internal margin from available area
+ toolBarMaxWidth -= totalMargin;
+
+ //ensure that buttons are side-by-side and not on top of each other
+ const int toolButtonWidth = (toolBarMaxWidth / visibleButtons)
+ - pixelMetric(QStyle::PM_ToolBarItemSpacing)
+ - pixelMetric(QStyle::PM_ToolBarItemMargin)
+ //toolbar frame needs to be reduced again, since QToolBarLayout adds it for each toolbar action
+ - 2 * pixelMetric(QStyle::PM_ToolBarFrameWidth) - 1;
+ sz.setWidth(qMax(toolButtonWidth, sz.width()));
+ }
+ }
+ }
break;
case CT_PushButton:
sz = QCommonStyle::sizeFromContents( ct, opt, csz, widget);
diff --git a/src/gui/styles/qs60style_s60.cpp b/src/gui/styles/qs60style_s60.cpp
index 7b75d40e5e..92f53ff105 100644
--- a/src/gui/styles/qs60style_s60.cpp
+++ b/src/gui/styles/qs60style_s60.cpp
@@ -698,7 +698,7 @@ void QS60StylePrivate::deleteStoredSettings()
{
QSettings settings(QSettings::UserScope, QLatin1String("Trolltech"));
settings.beginGroup(QLatin1String("QS60Style"));
- settings.remove("");
+ settings.remove(QString());
settings.endGroup();
}
@@ -717,7 +717,6 @@ QColor QS60StylePrivate::colorFromFrameGraphics(SkinFrameElements frame) const
QT_TRAP_THROWING(
CRepository *themeRepository = CRepository::NewLC(personalisationUID);
if (themeRepository) {
- static const TInt KThemePkgIDDesSize = 23; //size of the stored theme package ID
TBuf<32> value; //themeID is currently max of 8 + 1 + 8 characters, but lets have some extra space
const TUint32 key = 0x00000002; //active theme key in the repository
error = themeRepository->Get(key, value);
@@ -747,7 +746,7 @@ QColor QS60StylePrivate::colorFromFrameGraphics(SkinFrameElements frame) const
return storedColor;
}
}
- settings.remove(""); //if color was invalid, or theme has been changed, just delete all stored settings
+ settings.remove(QString()); //if color was invalid, or theme has been changed, just delete all stored settings
}
}
#endif
diff --git a/src/gui/styles/qstyle.cpp b/src/gui/styles/qstyle.cpp
index 3ebfab2a2e..be8f794da6 100644
--- a/src/gui/styles/qstyle.cpp
+++ b/src/gui/styles/qstyle.cpp
@@ -2456,6 +2456,8 @@ QDebug operator<<(QDebug debug, QStyle::State state)
qSort(states);
debug << states.join(QLatin1String(" | "));
debug << ')';
+#else
+ Q_UNUSED(state);
#endif
return debug;
}
diff --git a/src/gui/styles/qstyleoption.cpp b/src/gui/styles/qstyleoption.cpp
index 4780edfbc0..05ca793327 100644
--- a/src/gui/styles/qstyleoption.cpp
+++ b/src/gui/styles/qstyleoption.cpp
@@ -5483,6 +5483,8 @@ QDebug operator<<(QDebug debug, const QStyleOption::OptionType &optionType)
case QStyleOption::SO_GraphicsItem:
debug << "SO_GraphicsItem"; break;
}
+#else
+ Q_UNUSED(optionType);
#endif
return debug;
}
@@ -5496,6 +5498,8 @@ QDebug operator<<(QDebug debug, const QStyleOption &option)
debug << ',' << option.state;
debug << ',' << option.rect;
debug << ')';
+#else
+ Q_UNUSED(option);
#endif
return debug;
}
diff --git a/src/gui/text/qfontengine_x11.cpp b/src/gui/text/qfontengine_x11.cpp
index b7e4be2c9a..c06be3b862 100644
--- a/src/gui/text/qfontengine_x11.cpp
+++ b/src/gui/text/qfontengine_x11.cpp
@@ -429,7 +429,7 @@ void QFontEngineXLFD::recalcAdvances(QGlyphLayout *glyphs, QTextEngine::ShaperFl
{
int i = glyphs->numGlyphs;
XCharStruct *xcs;
- // inlined for better perfomance
+ // inlined for better performance
if (!_fs->per_char) {
xcs = &_fs->min_bounds;
while (i != 0) {
diff --git a/src/gui/text/qtextcursor.cpp b/src/gui/text/qtextcursor.cpp
index 769ab2fb66..f73cc4bbce 100644
--- a/src/gui/text/qtextcursor.cpp
+++ b/src/gui/text/qtextcursor.cpp
@@ -363,6 +363,9 @@ bool QTextCursorPrivate::movePosition(QTextCursor::MoveOperation op, QTextCursor
bool adjustX = true;
QTextBlock blockIt = block();
+ if (!blockIt.isValid())
+ return false;
+
if (op >= QTextCursor::Left && op <= QTextCursor::WordRight
&& blockIt.textDirection() == Qt::RightToLeft) {
if (op == QTextCursor::Left)
diff --git a/src/gui/text/qtextdocument.cpp b/src/gui/text/qtextdocument.cpp
index c35069f112..77e6aa1d94 100644
--- a/src/gui/text/qtextdocument.cpp
+++ b/src/gui/text/qtextdocument.cpp
@@ -596,8 +596,10 @@ void QTextDocument::markContentsDirty(int from, int length)
Q_D(QTextDocument);
d->documentChange(from, length);
if (!d->inContentsChange) {
- d->lout->documentChanged(d->docChangeFrom, d->docChangeOldLength, d->docChangeLength);
- d->docChangeFrom = -1;
+ if (d->lout) {
+ d->lout->documentChanged(d->docChangeFrom, d->docChangeOldLength, d->docChangeLength);
+ d->docChangeFrom = -1;
+ }
}
}
diff --git a/src/gui/text/qtextformat.cpp b/src/gui/text/qtextformat.cpp
index 46db25397b..fdbb680e5b 100644
--- a/src/gui/text/qtextformat.cpp
+++ b/src/gui/text/qtextformat.cpp
@@ -265,10 +265,18 @@ private:
friend QDataStream &operator>>(QDataStream &, QTextFormat &);
};
-// this is only safe if sizeof(int) == sizeof(float)
+// this is only safe because sizeof(int) == sizeof(float)
static inline uint hash(float d)
{
+#ifdef Q_CC_GNU
+ // this is a GCC extension and isn't guaranteed to work in other compilers
+ // the reinterpret_cast below generates a strict-aliasing warning with GCC
+ union { float f; uint u; } cvt;
+ cvt.f = d;
+ return cvt.u;
+#else
return reinterpret_cast<uint&>(d);
+#endif
}
static inline uint hash(const QColor &color)
diff --git a/src/gui/util/qdesktopservices_s60.cpp b/src/gui/util/qdesktopservices_s60.cpp
index cd023cb360..56c2b983cc 100644
--- a/src/gui/util/qdesktopservices_s60.cpp
+++ b/src/gui/util/qdesktopservices_s60.cpp
@@ -45,32 +45,29 @@
#include <qurl.h>
#include <private/qcore_symbian_p.h>
-#include <txtrich.h> // CRichText
#include <f32file.h> // TDriveUnit etc
+#include <pathinfo.h> // PathInfo
+
+#ifndef USE_SCHEMEHANDLER
+#ifdef Q_WS_S60
+// This flag changes the implementation to use S60 CDcoumentHandler
+// instead of apparc when opening the files
+#define USE_DOCUMENTHANDLER
+#endif
+
+#include <txtrich.h> // CRichText
#include <eikenv.h> // CEikonEnv
#include <apgcli.h> // RApaLsSession
#include <apgtask.h> // TApaTaskList, TApaTask
#include <rsendas.h> // RSendAs
#include <rsendasmessage.h> // RSendAsMessage
-#ifdef Q_WS_S60
-// This flag changes the implementation to use S60 CDcoumentHandler
-// instead of apparch when opening the files
-#define USE_DOCUMENTHANDLER
+#ifdef USE_DOCUMENTHANDLER
+#include <DocumentHandler.h> // CDocumentHandler
+#include <AknServerApp.h>
#endif
-
-// copied from miutset.h, so we don't get a dependency into the app layer
-const TUid KUidMsgTypeSMTP = {0x10001028}; // 268439592
-
-#ifdef Q_OS_SYMBIAN
-# include <pathinfo.h> // PathInfo
-# ifdef USE_DOCUMENTHANDLER
-# include <DocumentHandler.h> // CDocumentHandler
-# include <AknServerApp.h>
-# endif
-#else
-# warning CDocumentHandler requires support for S60
-# undef USE_DOCUMENTHANDLER // Fallback to RApaLsSession based implementation
+#else // USE_SCHEMEHANDLER
+#include <schemehandler.h>
#endif
QT_BEGIN_NAMESPACE
@@ -79,6 +76,10 @@ _LIT(KCacheSubDir, "Cache\\");
_LIT(KSysBin, "\\Sys\\Bin\\");
_LIT(KBrowserPrefix, "4 " );
_LIT(KFontsDir, "z:\\resource\\Fonts\\");
+
+#ifndef USE_SCHEMEHANDLER
+// copied from miutset.h, so we don't get a dependency into the app layer
+const TUid KUidMsgTypeSMTP = {0x10001028}; // 268439592
const TUid KUidBrowser = { 0x10008D39 };
template<class R>
@@ -137,7 +138,6 @@ private:
Q_GLOBAL_STATIC(QS60DocumentHandler, qt_s60_documenthandler);
#endif
-
static void handleMailtoSchemeLX(const QUrl &url)
{
// this function has many intermingled leaves and throws. Qt and Symbian objects do not have
@@ -155,12 +155,10 @@ static void handleMailtoSchemeLX(const QUrl &url)
QStringList ccs = cc.split(QLatin1String(","), QString::SkipEmptyParts);
QStringList bccs = bcc.split(QLatin1String(","), QString::SkipEmptyParts);
-
RSendAs sendAs;
User::LeaveIfError(sendAs.Connect());
QAutoClose<RSendAs> sendAsCleanup(sendAs);
-
CSendAsAccounts* accounts = CSendAsAccounts::NewL();
CleanupStack::PushL(accounts);
sendAs.AvailableAccountsL(KUidMsgTypeSMTP, *accounts);
@@ -249,47 +247,6 @@ static bool handleOtherSchemes(const QUrl &url)
return err ? false : true;
}
-static TDriveUnit exeDrive()
-{
- RProcess me;
- TFileName processFileName = me.FileName();
- TDriveUnit drive(processFileName);
- return drive;
-}
-
-static TDriveUnit writableExeDrive()
-{
- TDriveUnit drive = exeDrive();
- if(drive.operator TInt() == EDriveZ)
- return TDriveUnit(EDriveC);
- return drive;
-}
-
-static TPtrC writableDataRoot()
-{
- TDriveUnit drive = exeDrive();
-#ifdef Q_OS_SYMBIAN
- switch(drive.operator TInt()){
- case EDriveC:
- return PathInfo::PhoneMemoryRootPath();
- break;
- case EDriveE:
- return PathInfo::MemoryCardRootPath();
- break;
- case EDriveZ:
- // It is not possible to write on ROM drive ->
- // return phone mem root path instead
- return PathInfo::PhoneMemoryRootPath();
- break;
- default:
- return PathInfo::PhoneMemoryRootPath();
- break;
- }
-#else
-#warning No fallback implementation of writableDataRoot()
- return 0;
-#endif
-}
static void openDocumentL(const TDesC& aUrl)
{
@@ -314,13 +271,44 @@ static void openDocumentL(const TDesC& aUrl)
#endif
}
-#ifdef USE_SCHEMEHANDLER
+static bool launchWebBrowser(const QUrl &url)
+{
+ if (!url.isValid())
+ return false;
+
+ if (url.scheme() == QLatin1String("mailto")) {
+ return handleMailtoScheme(url);
+ }
+ return handleOtherSchemes( url );
+}
+
+static bool openDocument(const QUrl &file)
+{
+ if (!file.isValid())
+ return false;
+
+ QString filePath = file.toLocalFile();
+ filePath = QDir::toNativeSeparators(filePath);
+ TPtrC filePathPtr(qt_QString2TPtrC(filePath));
+ TRAPD(err, openDocumentL(filePathPtr));
+ return err ? false : true;
+}
+
+#else //USE_SCHEMEHANDLER
// The schemehandler component only exist in private SDK. This implementation
// exist here just for convenience in case that we need to use it later on
// The schemehandle based implementation is not yet tested.
// The biggest advantage of schemehandler is that it can handle
// wide range of schemes and is extensible by plugins
+static void handleUrlL(const TDesC& aUrl)
+{
+ CSchemeHandler* schemeHandler = CSchemeHandler::NewL(aUrl);
+ CleanupStack::PushL(schemeHandler);
+ schemeHandler->HandleUrlStandaloneL(); // Process the Url in standalone mode
+ CleanupStack::PopAndDestroy();
+}
+
static bool handleUrl(const QUrl &url)
{
if (!url.isValid())
@@ -332,13 +320,6 @@ static bool handleUrl(const QUrl &url)
return err ? false : true;
}
-static void handleUrlL(const TDesC& aUrl)
-{
- CSchemeHandler* schemeHandler = CSchemeHandler::NewL(aUrl);
- CleanupStack::PushL(schemeHandler);
- schemeHandler->HandleUrlStandaloneL(); // Process the Url in standalone mode
- CleanupStack::PopAndDestroy();
-}
static bool launchWebBrowser(const QUrl &url)
{
return handleUrl(url);
@@ -346,31 +327,48 @@ static bool launchWebBrowser(const QUrl &url)
static bool openDocument(const QUrl &file)
{
- return handleUrl(url);
+ return handleUrl(file);
}
-#endif
-static bool launchWebBrowser(const QUrl &url)
-{
- if (!url.isValid())
- return false;
+#endif //USE_SCHEMEHANDLER
- if (url.scheme() == QLatin1String("mailto")) {
- return handleMailtoScheme(url);
- }
- return handleOtherSchemes( url );
+// Common functions to all implementations
+
+static TDriveUnit exeDrive()
+{
+ RProcess me;
+ TFileName processFileName = me.FileName();
+ TDriveUnit drive(processFileName);
+ return drive;
}
-static bool openDocument(const QUrl &file)
+static TDriveUnit writableExeDrive()
{
- if (!file.isValid())
- return false;
+ TDriveUnit drive = exeDrive();
+ if (drive.operator TInt() == EDriveZ)
+ return TDriveUnit(EDriveC);
+ return drive;
+}
- QString filePath = file.toLocalFile();
- filePath = QDir::toNativeSeparators(filePath);
- TPtrC filePathPtr(qt_QString2TPtrC(filePath));
- TRAPD(err, openDocumentL(filePathPtr));
- return err ? false : true;
+static TPtrC writableDataRoot()
+{
+ TDriveUnit drive = exeDrive();
+ switch (drive.operator TInt()){
+ case EDriveC:
+ return PathInfo::PhoneMemoryRootPath();
+ break;
+ case EDriveE:
+ return PathInfo::MemoryCardRootPath();
+ break;
+ case EDriveZ:
+ // It is not possible to write on ROM drive ->
+ // return phone mem root path instead
+ return PathInfo::PhoneMemoryRootPath();
+ break;
+ default:
+ return PathInfo::PhoneMemoryRootPath();
+ break;
+ }
}
QString QDesktopServices::storageLocation(StandardLocation type)
@@ -395,21 +393,15 @@ QString QDesktopServices::storageLocation(StandardLocation type)
break;
case MusicLocation:
path.Append(writableDataRoot());
-#ifdef Q_OS_SYMBIAN
path.Append(PathInfo::SoundsPath());
-#endif
break;
case MoviesLocation:
path.Append(writableDataRoot());
-#ifdef Q_OS_SYMBIAN
path.Append(PathInfo::VideosPath());
-#endif
break;
case PicturesLocation:
path.Append(writableDataRoot());
-#ifdef Q_OS_SYMBIAN
path.Append(PathInfo::ImagesPath());
-#endif
break;
case TempLocation:
return QDir::tempPath();
diff --git a/src/gui/util/qundostack.cpp b/src/gui/util/qundostack.cpp
index 919ac3cc67..04cfca9c0d 100644
--- a/src/gui/util/qundostack.cpp
+++ b/src/gui/util/qundostack.cpp
@@ -441,7 +441,7 @@ bool QUndoStackPrivate::checkUndoLimit()
/*!
Constructs an empty undo stack with the parent \a parent. The
- stack will initally be in the clean state. If \a parent is a
+ stack will initially be in the clean state. If \a parent is a
QUndoGroup object, the stack is automatically added to the group.
\sa push()
diff --git a/src/gui/util/util.pri b/src/gui/util/util.pri
index bea520e3b4..d1c4ff812c 100644
--- a/src/gui/util/util.pri
+++ b/src/gui/util/util.pri
@@ -43,12 +43,17 @@ embedded {
}
symbian {
- LIBS += -lsendas2 -letext -lapmime -lplatformenv
- contains(QT_CONFIG, s60) {
- contains(CONFIG, is_using_gnupoc) {
- LIBS += -lcommonui
- } else {
- LIBS += -lCommonUI
+ LIBS += -letext -lplatformenv
+ contains(S60_VERSION, 3.1)|contains(S60_VERSION, 3.2)|contains(S60_VERSION, 5.0) {
+ LIBS += -lsendas2 -lapmime
+ contains(QT_CONFIG, s60) {
+ contains(CONFIG, is_using_gnupoc) {
+ LIBS += -lcommonui
+ } else {
+ LIBS += -lCommonUI
+ }
}
+ } else {
+ DEFINES += USE_SCHEMEHANDLER
}
-}
+} \ No newline at end of file
diff --git a/src/gui/widgets/qdockwidget.cpp b/src/gui/widgets/qdockwidget.cpp
index df9b1713be..0a6269d7a6 100644
--- a/src/gui/widgets/qdockwidget.cpp
+++ b/src/gui/widgets/qdockwidget.cpp
@@ -1531,8 +1531,11 @@ QAction * QDockWidget::toggleViewAction() const
/*!
\since 4.3
+
Sets an arbitrary \a widget as the dock widget's title bar. If \a widget
- is 0, the title bar widget is removed, but not deleted.
+ is 0, any custom title bar widget previously set on the dock widget is
+ removed, but not deleted, and the default title bar will be used
+ instead.
If a title bar widget is set, QDockWidget will not use native window
decorations when it is floated.
@@ -1540,23 +1543,27 @@ QAction * QDockWidget::toggleViewAction() const
Here are some tips for implementing custom title bars:
\list
- \i Mouse events that are not explicitly handled by the title bar widget
+ \o Mouse events that are not explicitly handled by the title bar widget
must be ignored by calling QMouseEvent::ignore(). These events then
propagate to the QDockWidget parent, which handles them in the usual
manner, moving when the title bar is dragged, docking and undocking
when it is double-clicked, etc.
- \i When DockWidgetVerticalTitleBar is set on QDockWidget, the title
+ \o When DockWidgetVerticalTitleBar is set on QDockWidget, the title
bar widget is repositioned accordingly. In resizeEvent(), the title
bar should check what orientation it should assume:
\snippet doc/src/snippets/code/src_gui_widgets_qdockwidget.cpp 0
- \i The title bar widget must have a valid QWidget::sizeHint() and
+ \o The title bar widget must have a valid QWidget::sizeHint() and
QWidget::minimumSizeHint(). These functions should take into account
the current orientation of the title bar.
+
+ \o It is not possible to remove a title bar from a dock widget. However,
+ a similar effect can be achieved by setting a default constructed
+ QWidget as the title bar widget.
\endlist
- Using qobject_cast as shown above, the title bar widget has full access
+ Using qobject_cast() as shown above, the title bar widget has full access
to its parent QDockWidget. Hence it can perform such operations as docking
and hiding in response to user actions.
diff --git a/src/gui/widgets/qtextedit.cpp b/src/gui/widgets/qtextedit.cpp
index 45417307fc..6b3f4447e7 100644
--- a/src/gui/widgets/qtextedit.cpp
+++ b/src/gui/widgets/qtextedit.cpp
@@ -773,7 +773,7 @@ Qt::Alignment QTextEdit::alignment() const
is the document's parent object. The parent object of the provided document
remains the owner of the object.
- If the current document is a child of the text editor, then it is deleted.
+ The editor does not delete the current document, even if it is a child of the editor.
\sa document()
*/
diff --git a/src/imports/folderlistmodel/qdeclarativefolderlistmodel.cpp b/src/imports/folderlistmodel/qdeclarativefolderlistmodel.cpp
index abab33c23b..9c710048bd 100644
--- a/src/imports/folderlistmodel/qdeclarativefolderlistmodel.cpp
+++ b/src/imports/folderlistmodel/qdeclarativefolderlistmodel.cpp
@@ -279,7 +279,7 @@ void QDeclarativeFolderListModel::classBegin()
void QDeclarativeFolderListModel::componentComplete()
{
- if (!d->folder.isValid() || !QDir().exists(d->folder.toLocalFile()))
+ if (!d->folder.isValid() || d->folder.toLocalFile().isEmpty() || !QDir().exists(d->folder.toLocalFile()))
setFolder(QUrl(QLatin1String("file://")+QDir::currentPath()));
if (!d->folderIndex.isValid())
diff --git a/src/multimedia/audio/qaudiodeviceinfo_alsa_p.cpp b/src/multimedia/audio/qaudiodeviceinfo_alsa_p.cpp
index 25622a49e3..3617d24333 100644
--- a/src/multimedia/audio/qaudiodeviceinfo_alsa_p.cpp
+++ b/src/multimedia/audio/qaudiodeviceinfo_alsa_p.cpp
@@ -63,7 +63,9 @@ QAudioDeviceInfoInternal::QAudioDeviceInfoInternal(QByteArray dev, QAudio::Mode
device = QLatin1String(dev);
this->mode = mode;
+#if (SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
checkSurround();
+#endif
}
QAudioDeviceInfoInternal::~QAudioDeviceInfoInternal()
@@ -394,9 +396,11 @@ void QAudioDeviceInfoInternal::updateLists()
}
channelz.append(1);
channelz.append(2);
+#if (SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
if (surround40) channelz.append(4);
if (surround51) channelz.append(6);
if (surround71) channelz.append(8);
+#endif
sizez.append(8);
sizez.append(16);
sizez.append(32);
@@ -494,6 +498,7 @@ QByteArray QAudioDeviceInfoInternal::defaultOutputDevice()
return devices.first();
}
+#if (SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
void QAudioDeviceInfoInternal::checkSurround()
{
QList<QByteArray> devices;
@@ -534,5 +539,6 @@ void QAudioDeviceInfoInternal::checkSurround()
}
snd_device_name_free_hint(hints);
}
+#endif
QT_END_NAMESPACE
diff --git a/src/multimedia/audio/qaudiodeviceinfo_alsa_p.h b/src/multimedia/audio/qaudiodeviceinfo_alsa_p.h
index 8525980e05..5f7e5e8317 100644
--- a/src/multimedia/audio/qaudiodeviceinfo_alsa_p.h
+++ b/src/multimedia/audio/qaudiodeviceinfo_alsa_p.h
@@ -98,10 +98,12 @@ private:
bool open();
void close();
+#if (SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
void checkSurround();
bool surround40;
bool surround51;
bool surround71;
+#endif
QString device;
QAudio::Mode mode;
diff --git a/src/network/access/qhttpnetworkconnection.cpp b/src/network/access/qhttpnetworkconnection.cpp
index 4d275315bf..0531595698 100644
--- a/src/network/access/qhttpnetworkconnection.cpp
+++ b/src/network/access/qhttpnetworkconnection.cpp
@@ -327,8 +327,6 @@ bool QHttpNetworkConnectionPrivate::handleAuthenticateChallenge(QAbstractSocket
Q_ASSERT(socket);
Q_ASSERT(reply);
- Q_Q(QHttpNetworkConnection);
-
resend = false;
//create the response header to be used with QAuthenticatorPrivate.
QList<QPair<QByteArray, QByteArray> > fields = reply->header();
@@ -854,12 +852,17 @@ QHttpNetworkReply* QHttpNetworkConnection::sendRequest(const QHttpNetworkRequest
return d->queueRequest(request);
}
-bool QHttpNetworkConnection::isEncrypted() const
+bool QHttpNetworkConnection::isSsl() const
{
Q_D(const QHttpNetworkConnection);
return d->encrypt;
}
+QHttpNetworkConnectionChannel *QHttpNetworkConnection::channels() const
+{
+ return d_func()->channels;
+}
+
#ifndef QT_NO_NETWORKPROXY
void QHttpNetworkConnection::setCacheProxy(const QNetworkProxy &networkProxy)
{
diff --git a/src/network/access/qhttpnetworkconnection_p.h b/src/network/access/qhttpnetworkconnection_p.h
index 8461426c44..9f23cbfe02 100644
--- a/src/network/access/qhttpnetworkconnection_p.h
+++ b/src/network/access/qhttpnetworkconnection_p.h
@@ -108,7 +108,9 @@ public:
QNetworkProxy transparentProxy() const;
#endif
- bool isEncrypted() const;
+ bool isSsl() const;
+
+ QHttpNetworkConnectionChannel *channels() const;
#ifndef QT_NO_OPENSSL
void setSslConfiguration(const QSslConfiguration &config);
diff --git a/src/network/access/qhttpnetworkconnectionchannel.cpp b/src/network/access/qhttpnetworkconnectionchannel.cpp
index 02daa50b63..c8caad48f1 100644
--- a/src/network/access/qhttpnetworkconnectionchannel.cpp
+++ b/src/network/access/qhttpnetworkconnectionchannel.cpp
@@ -180,7 +180,6 @@ bool QHttpNetworkConnectionChannel::sendRequest()
reply->d_func()->autoDecompress = request.d->autoDecompress;
reply->d_func()->pipeliningUsed = false;
- pendingEncrypt = false;
// if the url contains authentication parameters, use the new ones
// both channels will use the new authentication parameters
if (!request.url().userInfo().isEmpty() && request.withCredentials()) {
@@ -1019,6 +1018,7 @@ void QHttpNetworkConnectionChannel::_q_encrypted()
if (!socket)
return; // ### error
state = QHttpNetworkConnectionChannel::IdleState;
+ pendingEncrypt = false;
sendRequest();
}
diff --git a/src/network/access/qhttpnetworkconnectionchannel_p.h b/src/network/access/qhttpnetworkconnectionchannel_p.h
index 442086a222..fd18042d24 100644
--- a/src/network/access/qhttpnetworkconnectionchannel_p.h
+++ b/src/network/access/qhttpnetworkconnectionchannel_p.h
@@ -158,6 +158,8 @@ public:
bool isSocketWaiting() const;
bool isSocketReading() const;
+ friend class QNetworkAccessHttpBackend;
+
protected slots:
void _q_receiveReply();
void _q_bytesWritten(qint64 bytes); // proceed sending
diff --git a/src/network/access/qhttpnetworkheader.cpp b/src/network/access/qhttpnetworkheader.cpp
index 669f9cf340..3eb2f3bc7c 100644
--- a/src/network/access/qhttpnetworkheader.cpp
+++ b/src/network/access/qhttpnetworkheader.cpp
@@ -60,7 +60,17 @@ QHttpNetworkHeaderPrivate::QHttpNetworkHeaderPrivate(const QHttpNetworkHeaderPri
qint64 QHttpNetworkHeaderPrivate::contentLength() const
{
bool ok = false;
- QByteArray value = headerField("content-length");
+ // We are not using the headerField() method here because servers might send us multiple content-length
+ // headers which is crap (see QTBUG-15311). Therefore just take the first content-length header field.
+ QByteArray value;
+ QList<QPair<QByteArray, QByteArray> >::ConstIterator it = fields.constBegin(),
+ end = fields.constEnd();
+ for ( ; it != end; ++it)
+ if (qstricmp("content-length", it->first) == 0) {
+ value = it->second;
+ break;
+ }
+
qint64 length = value.toULongLong(&ok);
if (ok)
return length;
diff --git a/src/network/access/qhttpnetworkreply.cpp b/src/network/access/qhttpnetworkreply.cpp
index e4eb7c4b01..21bc427d3e 100644
--- a/src/network/access/qhttpnetworkreply.cpp
+++ b/src/network/access/qhttpnetworkreply.cpp
@@ -188,6 +188,12 @@ QByteArray QHttpNetworkReply::readAny()
return d->responseData.read();
}
+QByteArray QHttpNetworkReply::readAll()
+{
+ Q_D(QHttpNetworkReply);
+ return d->responseData.readAll();
+}
+
void QHttpNetworkReply::setDownstreamLimited(bool dsl)
{
Q_D(QHttpNetworkReply);
diff --git a/src/network/access/qhttpnetworkreply_p.h b/src/network/access/qhttpnetworkreply_p.h
index 3f79d81a50..9cf805cb15 100644
--- a/src/network/access/qhttpnetworkreply_p.h
+++ b/src/network/access/qhttpnetworkreply_p.h
@@ -126,6 +126,7 @@ public:
qint64 bytesAvailable() const;
qint64 bytesAvailableNextBlock() const;
QByteArray readAny();
+ QByteArray readAll();
void setDownstreamLimited(bool t);
bool isFinished() const;
diff --git a/src/network/access/qnetworkaccessbackend.cpp b/src/network/access/qnetworkaccessbackend.cpp
index 05eb6cb2d3..12b640036b 100644
--- a/src/network/access/qnetworkaccessbackend.cpp
+++ b/src/network/access/qnetworkaccessbackend.cpp
@@ -142,6 +142,7 @@ void QNetworkAccessBackend::emitReplyUploadProgress(qint64 bytesSent, qint64 byt
QNetworkAccessBackend::QNetworkAccessBackend()
: manager(0)
, reply(0)
+ , synchronous(false)
{
}
diff --git a/src/network/access/qnetworkaccessbackend_p.h b/src/network/access/qnetworkaccessbackend_p.h
index 7faa5cb68f..c9ec37e0bf 100644
--- a/src/network/access/qnetworkaccessbackend_p.h
+++ b/src/network/access/qnetworkaccessbackend_p.h
@@ -157,6 +157,9 @@ public:
QVariant attribute(QNetworkRequest::Attribute code) const;
void setAttribute(QNetworkRequest::Attribute code, const QVariant &value);
+ bool isSynchronous() { return synchronous; }
+ void setSynchronous(bool sync) { synchronous = sync; }
+
// return true if the QNonContiguousByteDevice of the upload
// data needs to support reset(). Currently needed for HTTP.
// This will possibly enable buffering of the upload data.
@@ -166,6 +169,8 @@ public:
virtual bool canResume() const { return false; }
virtual void setResumeOffset(quint64 offset) { Q_UNUSED(offset); }
+ virtual bool processRequestSynchronously() { return false; }
+
protected:
// Create the device used for reading the upload data
QNonContiguousByteDevice* createUploadByteDevice();
@@ -200,6 +205,7 @@ private:
friend class QNetworkReplyImplPrivate;
QNetworkAccessManagerPrivate *manager;
QNetworkReplyImplPrivate *reply;
+ bool synchronous;
};
class QNetworkAccessBackendFactory
diff --git a/src/network/access/qnetworkaccessdatabackend.cpp b/src/network/access/qnetworkaccessdatabackend.cpp
index efb6e3ef26..74aebdbef7 100644
--- a/src/network/access/qnetworkaccessdatabackend.cpp
+++ b/src/network/access/qnetworkaccessdatabackend.cpp
@@ -122,4 +122,10 @@ bool QNetworkAccessDataBackend::waitForUpstreamBytesWritten(int)
return false;
}
+bool QNetworkAccessDataBackend::processRequestSynchronously()
+{
+ start();
+ return true;
+}
+
QT_END_NAMESPACE
diff --git a/src/network/access/qnetworkaccessdatabackend_p.h b/src/network/access/qnetworkaccessdatabackend_p.h
index a7c63d54a2..0e5a494eff 100644
--- a/src/network/access/qnetworkaccessdatabackend_p.h
+++ b/src/network/access/qnetworkaccessdatabackend_p.h
@@ -68,6 +68,8 @@ public:
virtual void closeUpstreamChannel();
virtual bool waitForDownstreamReadyRead(int msecs);
virtual bool waitForUpstreamBytesWritten(int msecs);
+
+ virtual bool processRequestSynchronously();
};
class QNetworkAccessDataBackendFactory: public QNetworkAccessBackendFactory
diff --git a/src/network/access/qnetworkaccesshttpbackend.cpp b/src/network/access/qnetworkaccesshttpbackend.cpp
index 80b05a41f7..9df5d7be7e 100644
--- a/src/network/access/qnetworkaccesshttpbackend.cpp
+++ b/src/network/access/qnetworkaccesshttpbackend.cpp
@@ -50,6 +50,7 @@
#include "qnetworkrequest_p.h"
#include "qnetworkcookie_p.h"
#include "QtCore/qdatetime.h"
+#include "QtCore/qelapsedtimer.h"
#include "QtNetwork/qsslconfiguration.h"
#ifndef QT_NO_HTTP
@@ -318,7 +319,10 @@ void QNetworkAccessHttpBackend::disconnectFromHttp()
// Get the object cache that stores our QHttpNetworkConnection objects
QNetworkAccessCache *cache = QNetworkAccessManagerPrivate::getObjectCache(this);
- cache->releaseEntry(cacheKey);
+
+ // synchronous calls are not put into the cache, so for them the key is empty
+ if (!cacheKey.isEmpty())
+ cache->releaseEntry(cacheKey);
}
// This is abut disconnecting signals, not about disconnecting TCP connections
@@ -639,34 +643,49 @@ void QNetworkAccessHttpBackend::open()
if (transparentProxy.type() == QNetworkProxy::DefaultProxy &&
cacheProxy.type() == QNetworkProxy::DefaultProxy) {
// unsuitable proxies
- QMetaObject::invokeMethod(this, "error", Qt::QueuedConnection,
- Q_ARG(QNetworkReply::NetworkError, QNetworkReply::ProxyNotFoundError),
- Q_ARG(QString, tr("No suitable proxy found")));
- QMetaObject::invokeMethod(this, "finished", Qt::QueuedConnection);
- return;
+ if (isSynchronous()) {
+ error(QNetworkReply::ProxyNotFoundError, tr("No suitable proxy found"));
+ finished();
+ } else {
+ QMetaObject::invokeMethod(this, "error", Qt::QueuedConnection,
+ Q_ARG(QNetworkReply::NetworkError, QNetworkReply::ProxyNotFoundError),
+ Q_ARG(QString, tr("No suitable proxy found")));
+ QMetaObject::invokeMethod(this, "finished", Qt::QueuedConnection);
+ }
+ return;
}
#endif
- // check if we have an open connection to this host
- cacheKey = makeCacheKey(this, theProxy);
- QNetworkAccessCache *cache = QNetworkAccessManagerPrivate::getObjectCache(this);
- // the http object is actually a QHttpNetworkConnection
- http = static_cast<QNetworkAccessCachedHttpConnection *>(cache->requestEntryNow(cacheKey));
- if (http == 0) {
- // no entry in cache; create an object
- // the http object is actually a QHttpNetworkConnection
- http = new QNetworkAccessCachedHttpConnection(url.host(), url.port(), encrypt);
-
+ if (isSynchronous()) {
+ // for synchronous requests, we just create a new connection
+ http = new QHttpNetworkConnection(1, url.host(), url.port(), encrypt, this);
#ifndef QT_NO_NETWORKPROXY
http->setTransparentProxy(transparentProxy);
http->setCacheProxy(cacheProxy);
#endif
+ postRequest();
+ processRequestSynchronously();
+ } else {
+ // check if we have an open connection to this host
+ cacheKey = makeCacheKey(this, theProxy);
+ QNetworkAccessCache *cache = QNetworkAccessManagerPrivate::getObjectCache(this);
+ // the http object is actually a QHttpNetworkConnection
+ http = static_cast<QNetworkAccessCachedHttpConnection *>(cache->requestEntryNow(cacheKey));
+ if (http == 0) {
+ // no entry in cache; create an object
+ // the http object is actually a QHttpNetworkConnection
+ http = new QNetworkAccessCachedHttpConnection(url.host(), url.port(), encrypt);
- // cache the QHttpNetworkConnection corresponding to this cache key
- cache->addEntry(cacheKey, http);
- }
+#ifndef QT_NO_NETWORKPROXY
+ http->setTransparentProxy(transparentProxy);
+ http->setCacheProxy(cacheProxy);
+#endif
- postRequest();
+ // cache the QHttpNetworkConnection corresponding to this cache key
+ cache->addEntry(cacheKey, static_cast<QNetworkAccessCachedHttpConnection *>(http.data()));
+ }
+ postRequest();
+ }
}
void QNetworkAccessHttpBackend::closeDownstreamChannel()
@@ -1125,6 +1144,87 @@ void QNetworkAccessHttpBackend::setResumeOffset(quint64 offset)
resumeOffset = offset;
}
+bool QNetworkAccessHttpBackend::processRequestSynchronously()
+{
+ QHttpNetworkConnectionChannel *channel = &http->channels()[0];
+
+ // Disconnect all socket signals. They will only confuse us when using waitFor*
+ QObject::disconnect(channel->socket, 0, 0, 0);
+
+ qint64 timeout = 20*1000; // 20 sec
+ QElapsedTimer timeoutTimer;
+
+ bool waitResult = channel->socket->waitForConnected(timeout);
+ timeoutTimer.start();
+
+ if (!waitResult || channel->socket->state() != QAbstractSocket::ConnectedState) {
+ error(QNetworkReply::UnknownNetworkError, QLatin1String("could not connect"));
+ return false;
+ }
+ channel->_q_connected(); // this will send the request (via sendRequest())
+
+#ifndef QT_NO_OPENSSL
+ if (http->isSsl()) {
+ qint64 remainingTimeEncrypted = timeout - timeoutTimer.elapsed();
+ if (!static_cast<QSslSocket *>(channel->socket)->waitForEncrypted(remainingTimeEncrypted)) {
+ error(QNetworkReply::SslHandshakeFailedError,
+ QLatin1String("could not encrypt or timeout while encrypting"));
+ return false;
+ }
+ channel->_q_encrypted();
+ }
+#endif
+
+ // if we get a 401 or 407, we might need to send the request twice, see below
+ bool authenticating = false;
+
+ do {
+ channel->sendRequest();
+
+ qint64 remainingTimeBytesWritten;
+ while(channel->socket->bytesToWrite() > 0 ||
+ channel->state == QHttpNetworkConnectionChannel::WritingState) {
+ remainingTimeBytesWritten = timeout - timeoutTimer.elapsed();
+ channel->sendRequest(); // triggers channel->socket->write()
+ if (!channel->socket->waitForBytesWritten(remainingTimeBytesWritten)) {
+ error(QNetworkReply::TimeoutError,
+ QLatin1String("could not write bytes to socket or timeout while writing"));
+ return false;
+ }
+ }
+
+ qint64 remainingTimeBytesRead = timeout - timeoutTimer.elapsed();
+ // Loop for at most remainingTime until either the socket disconnects
+ // or the reply is finished
+ do {
+ waitResult = channel->socket->waitForReadyRead(remainingTimeBytesRead);
+ remainingTimeBytesRead = timeout - timeoutTimer.elapsed();
+ if (!waitResult || remainingTimeBytesRead <= 0
+ || channel->socket->state() != QAbstractSocket::ConnectedState) {
+ error(QNetworkReply::TimeoutError,
+ QLatin1String("could not read from socket or timeout while reading"));
+ return false;
+ }
+
+ if (channel->socket->bytesAvailable())
+ channel->_q_readyRead();
+
+ if (!httpReply)
+ return false; // we got a 401 or 407 and cannot handle it (it might happen that
+ // disconnectFromHttp() was called, in that case the reply is zero)
+ // ### I am quite sure this does not work for NTLM
+ // ### how about uploading to an auth / proxyAuth site?
+
+ authenticating = (httpReply->statusCode() == 401 || httpReply->statusCode() == 407);
+
+ if (httpReply->isFinished())
+ break;
+ } while (remainingTimeBytesRead > 0);
+ } while (authenticating);
+
+ return true;
+}
+
QT_END_NAMESPACE
#endif // QT_NO_HTTP
diff --git a/src/network/access/qnetworkaccesshttpbackend_p.h b/src/network/access/qnetworkaccesshttpbackend_p.h
index 5de3429b33..cc2f9ac556 100644
--- a/src/network/access/qnetworkaccesshttpbackend_p.h
+++ b/src/network/access/qnetworkaccesshttpbackend_p.h
@@ -99,6 +99,8 @@ public:
bool canResume() const;
void setResumeOffset(quint64 offset);
+ virtual bool processRequestSynchronously();
+
private slots:
void replyReadyRead();
void replyFinished();
@@ -111,7 +113,7 @@ private slots:
private:
QHttpNetworkReply *httpReply;
- QPointer<QNetworkAccessCachedHttpConnection> http;
+ QPointer<QHttpNetworkConnection> http;
QByteArray cacheKey;
QNetworkAccessBackendUploadIODevice *uploadDevice;
diff --git a/src/network/access/qnetworkaccessmanager.cpp b/src/network/access/qnetworkaccessmanager.cpp
index effd79e8c1..4bc036e742 100644
--- a/src/network/access/qnetworkaccessmanager.cpp
+++ b/src/network/access/qnetworkaccessmanager.cpp
@@ -1060,12 +1060,14 @@ QNetworkReply *QNetworkAccessManager::createRequest(QNetworkAccessManager::Opera
priv->backend->setParent(reply);
priv->backend->reply = priv;
}
- // fourth step: setup the reply
- priv->setup(op, request, outgoingData);
#ifndef QT_NO_OPENSSL
reply->setSslConfiguration(request.sslConfiguration());
#endif
+
+ // fourth step: setup the reply
+ priv->setup(op, request, outgoingData);
+
return reply;
}
@@ -1141,6 +1143,11 @@ void QNetworkAccessManagerPrivate::authenticationRequired(QNetworkAccessBackend
}
}
+ // if we emit a signal here in synchronous mode, the user might spin
+ // an event loop, which might recurse and lead to problems
+ if (backend->isSynchronous())
+ return;
+
backend->reply->urlForLastAuthentication = url;
emit q->authenticationRequired(backend->reply->q_func(), authenticator);
cacheCredentials(url, authenticator);
@@ -1168,6 +1175,11 @@ void QNetworkAccessManagerPrivate::proxyAuthenticationRequired(QNetworkAccessBac
}
}
+ // if we emit a signal here in synchronous mode, the user might spin
+ // an event loop, which might recurse and lead to problems
+ if (backend->isSynchronous())
+ return;
+
backend->reply->lastProxyAuthentication = proxy;
emit q->proxyAuthenticationRequired(proxy, authenticator);
cacheProxyCredentials(proxy, authenticator);
diff --git a/src/network/access/qnetworkreplyimpl.cpp b/src/network/access/qnetworkreplyimpl.cpp
index 5850494805..cf6e674598 100644
--- a/src/network/access/qnetworkreplyimpl.cpp
+++ b/src/network/access/qnetworkreplyimpl.cpp
@@ -85,7 +85,7 @@ void QNetworkReplyImplPrivate::_q_startOperation()
}
#ifndef QT_NO_BEARERMANAGEMENT
- if (!backend->start()) {
+ if (!backend->start()) { // ### we should call that method even if bearer is not used
// backend failed to start because the session state is not Connected.
// QNetworkAccessManager will call reply->backend->start() again for us when the session
// state changes.
@@ -109,11 +109,15 @@ void QNetworkReplyImplPrivate::_q_startOperation()
}
#endif
- if (state != Finished) {
- if (operation == QNetworkAccessManager::GetOperation)
- pendingNotifications.append(NotifyDownstreamReadyWrite);
+ if (backend->isSynchronous()) {
+ state = Finished;
+ } else {
+ if (state != Finished) {
+ if (operation == QNetworkAccessManager::GetOperation)
+ pendingNotifications.append(NotifyDownstreamReadyWrite);
- handleNotifications();
+ handleNotifications();
+ }
}
}
@@ -287,7 +291,25 @@ void QNetworkReplyImplPrivate::setup(QNetworkAccessManager::Operation op, const
url = request.url();
operation = op;
- if (outgoingData && backend) {
+ q->QIODevice::open(QIODevice::ReadOnly);
+ // Internal code that does a HTTP reply for the synchronous Ajax
+ // in QtWebKit.
+ QVariant synchronousHttpAttribute = req.attribute(
+ static_cast<QNetworkRequest::Attribute>(QNetworkRequest::DownloadBufferAttribute + 1));
+ if (synchronousHttpAttribute.toBool()) {
+ backend->setSynchronous(true);
+ if (outgoingData && outgoingData->isSequential()) {
+ outgoingDataBuffer = new QRingBuffer();
+ QByteArray data;
+ do {
+ data = outgoingData->readAll();
+ if (data.isEmpty())
+ break;
+ outgoingDataBuffer->append(data);
+ } while (1);
+ }
+ }
+ if (outgoingData && backend && !backend->isSynchronous()) {
// there is data to be uploaded, e.g. HTTP POST.
if (!backend->needsResetableUploadData() || !outgoingData->isSequential()) {
@@ -298,7 +320,7 @@ void QNetworkReplyImplPrivate::setup(QNetworkAccessManager::Operation op, const
} else {
bool bufferingDisallowed =
req.attribute(QNetworkRequest::DoNotBufferUploadDataAttribute,
- false).toBool();
+ false).toBool();
if (bufferingDisallowed) {
// if a valid content-length header for the request was supplied, we can disable buffering
@@ -323,17 +345,18 @@ void QNetworkReplyImplPrivate::setup(QNetworkAccessManager::Operation op, const
// for HTTP, we want to send out the request as fast as possible to the network, without
// invoking methods in a QueuedConnection
#ifndef QT_NO_HTTP
- if (qobject_cast<QNetworkAccessHttpBackend *>(backend)) {
+ if (qobject_cast<QNetworkAccessHttpBackend *>(backend) || (backend && backend->isSynchronous())) {
_q_startOperation();
} else {
QMetaObject::invokeMethod(q, "_q_startOperation", Qt::QueuedConnection);
}
#else
- QMetaObject::invokeMethod(q, "_q_startOperation", Qt::QueuedConnection);
+ if (backend->isSynchronous())
+ _q_startOperation();
+ else
+ QMetaObject::invokeMethod(q, "_q_startOperation", Qt::QueuedConnection);
#endif // QT_NO_HTTP
- }
-
- q->QIODevice::open(QIODevice::ReadOnly);
+ }
}
void QNetworkReplyImplPrivate::backendNotify(InternalNotifications notification)
diff --git a/src/network/access/qnetworkrequest.cpp b/src/network/access/qnetworkrequest.cpp
index b761af5544..162392d8a6 100644
--- a/src/network/access/qnetworkrequest.cpp
+++ b/src/network/access/qnetworkrequest.cpp
@@ -899,10 +899,16 @@ void QNetworkHeadersPrivate::parseAndSetHeader(const QByteArray &key, const QByt
// is it a known header?
QNetworkRequest::KnownHeaders parsedKey = parseHeaderName(key);
if (parsedKey != QNetworkRequest::KnownHeaders(-1)) {
- if (value.isNull())
+ if (value.isNull()) {
cookedHeaders.remove(parsedKey);
- else
+ } else if (parsedKey == QNetworkRequest::ContentLengthHeader
+ && cookedHeaders.contains(QNetworkRequest::ContentLengthHeader)) {
+ // Only set the cooked header "Content-Length" once.
+ // See bug QTBUG-15311
+ } else {
cookedHeaders.insert(parsedKey, parseHeaderValue(parsedKey, value));
+ }
+
}
}
diff --git a/src/network/access/qnetworkrequest.h b/src/network/access/qnetworkrequest.h
index cdadf0f69c..9bcc900ffa 100644
--- a/src/network/access/qnetworkrequest.h
+++ b/src/network/access/qnetworkrequest.h
@@ -85,6 +85,9 @@ public:
MaximumDownloadBufferSizeAttribute, // internal
DownloadBufferAttribute, // internal
+ // (DownloadBufferAttribute + 1) is reserved internal for QSynchronousHttpNetworkReply
+ // add the enum in 4.8
+
User = 1000,
UserMax = 32767
};
diff --git a/src/network/socket/qlocalsocket_win.cpp b/src/network/socket/qlocalsocket_win.cpp
index 1e0bced805..5b42578177 100644
--- a/src/network/socket/qlocalsocket_win.cpp
+++ b/src/network/socket/qlocalsocket_win.cpp
@@ -322,9 +322,9 @@ bool QLocalSocketPrivate::completeAsyncRead()
// buffer. We will read the remaining data in the next call.
break;
case ERROR_PIPE_NOT_CONNECTED:
- setErrorString(QLatin1String("QLocalSocketPrivate::completeAsyncRead"));
- // fall through
+ return false;
default:
+ setErrorString(QLatin1String("QLocalSocketPrivate::completeAsyncRead"));
return false;
}
}
diff --git a/src/network/ssl/qsslcertificate.cpp b/src/network/ssl/qsslcertificate.cpp
index a3ea555c65..275c7be718 100644
--- a/src/network/ssl/qsslcertificate.cpp
+++ b/src/network/ssl/qsslcertificate.cpp
@@ -716,7 +716,7 @@ QSslCertificate QSslCertificatePrivate::QSslCertificate_from_X509(X509 *x509)
static bool matchLineFeed(const QByteArray &pem, int *offset)
{
- char ch;
+ char ch = 0;
// ignore extra whitespace at the end of the line
while (*offset < pem.size() && (ch = pem.at(*offset)) == ' ')
diff --git a/src/network/ssl/qsslsocket_openssl.cpp b/src/network/ssl/qsslsocket_openssl.cpp
index 426b07ae21..99b5a95e5d 100644
--- a/src/network/ssl/qsslsocket_openssl.cpp
+++ b/src/network/ssl/qsslsocket_openssl.cpp
@@ -81,9 +81,6 @@ QT_BEGIN_NAMESPACE
bool QSslSocketPrivate::s_libraryLoaded = false;
bool QSslSocketPrivate::s_loadedCiphersAndCerts = false;
-// Useful defines
-#define SSL_ERRORSTR() QString::fromLocal8Bit(q_ERR_error_string(q_ERR_get_error(), NULL))
-
/* \internal
From OpenSSL's thread(3) manual page:
@@ -273,7 +270,7 @@ init_context:
}
// ### Bad error code
- q->setErrorString(QSslSocket::tr("Error creating SSL context (%1)").arg(SSL_ERRORSTR()));
+ q->setErrorString(QSslSocket::tr("Error creating SSL context (%1)").arg(getErrorsFromOpenSsl()));
q->setSocketError(QAbstractSocket::UnknownSocketError);
emit q->error(QAbstractSocket::UnknownSocketError);
return false;
@@ -298,7 +295,7 @@ init_context:
if (!q_SSL_CTX_set_cipher_list(ctx, cipherString.data())) {
// ### Bad error code
- q->setErrorString(QSslSocket::tr("Invalid or empty cipher list (%1)").arg(SSL_ERRORSTR()));
+ q->setErrorString(QSslSocket::tr("Invalid or empty cipher list (%1)").arg(getErrorsFromOpenSsl()));
q->setSocketError(QAbstractSocket::UnknownSocketError);
emit q->error(QAbstractSocket::UnknownSocketError);
return false;
@@ -326,14 +323,14 @@ init_context:
if (!configuration.localCertificate.isNull()) {
// Require a private key as well.
if (configuration.privateKey.isNull()) {
- q->setErrorString(QSslSocket::tr("Cannot provide a certificate with no key, %1").arg(SSL_ERRORSTR()));
+ q->setErrorString(QSslSocket::tr("Cannot provide a certificate with no key, %1").arg(getErrorsFromOpenSsl()));
emit q->error(QAbstractSocket::UnknownSocketError);
return false;
}
// Load certificate
if (!q_SSL_CTX_use_certificate(ctx, (X509 *)configuration.localCertificate.handle())) {
- q->setErrorString(QSslSocket::tr("Error loading local certificate, %1").arg(SSL_ERRORSTR()));
+ q->setErrorString(QSslSocket::tr("Error loading local certificate, %1").arg(getErrorsFromOpenSsl()));
emit q->error(QAbstractSocket::UnknownSocketError);
return false;
}
@@ -348,14 +345,14 @@ init_context:
else
q_EVP_PKEY_set1_DSA(pkey, (DSA *)configuration.privateKey.handle());
if (!q_SSL_CTX_use_PrivateKey(ctx, pkey)) {
- q->setErrorString(QSslSocket::tr("Error loading private key, %1").arg(SSL_ERRORSTR()));
+ q->setErrorString(QSslSocket::tr("Error loading private key, %1").arg(getErrorsFromOpenSsl()));
emit q->error(QAbstractSocket::UnknownSocketError);
return false;
}
// Check if the certificate matches the private key.
if (!q_SSL_CTX_check_private_key(ctx)) {
- q->setErrorString(QSslSocket::tr("Private key does not certify public key, %1").arg(SSL_ERRORSTR()));
+ q->setErrorString(QSslSocket::tr("Private key does not certify public key, %1").arg(getErrorsFromOpenSsl()));
emit q->error(QAbstractSocket::UnknownSocketError);
return false;
}
@@ -375,7 +372,7 @@ init_context:
// Create and initialize SSL session
if (!(ssl = q_SSL_new(ctx))) {
// ### Bad error code
- q->setErrorString(QSslSocket::tr("Error creating SSL session, %1").arg(SSL_ERRORSTR()));
+ q->setErrorString(QSslSocket::tr("Error creating SSL session, %1").arg(getErrorsFromOpenSsl()));
q->setSocketError(QAbstractSocket::UnknownSocketError);
emit q->error(QAbstractSocket::UnknownSocketError);
return false;
@@ -390,7 +387,7 @@ init_context:
writeBio = q_BIO_new(q_BIO_s_mem());
if (!readBio || !writeBio) {
// ### Bad error code
- q->setErrorString(QSslSocket::tr("Error creating SSL session: %1").arg(SSL_ERRORSTR()));
+ q->setErrorString(QSslSocket::tr("Error creating SSL session: %1").arg(getErrorsFromOpenSsl()));
q->setSocketError(QAbstractSocket::UnknownSocketError);
emit q->error(QAbstractSocket::UnknownSocketError);
return false;
@@ -659,8 +656,16 @@ TInt CSymbianCertificateRetriever::ThreadEntryPoint(TAny* aParams)
void CSymbianCertificateRetriever::ConstructL()
{
- User::LeaveIfError(iThread.Create(_L("CertWorkerThread"),
- CSymbianCertificateRetriever::ThreadEntryPoint, 16384, NULL, this));
+ TInt err;
+ int i=0;
+ QString name(QLatin1String("CertWorkerThread-%1"));
+ //recently closed thread names remain in use for a while until all handles have been closed
+ //including users of RUndertaker
+ do {
+ err = iThread.Create(qt_QString2TPtrC(name.arg(i++)),
+ CSymbianCertificateRetriever::ThreadEntryPoint, 16384, NULL, this);
+ } while (err == KErrAlreadyExists);
+ User::LeaveIfError(err);
}
void CSymbianCertificateRetriever::DoCancel()
@@ -731,7 +736,7 @@ void CSymbianCertificateRetriever::RunL()
if (iStatus.Int() == KErrNone)
iCertificates->append(iCertificateData);
else
- qWarning() << "CSymbianCertificateRetriever: failed to retreive a certificate, error " << iStatus.Int();
+ qWarning() << "CSymbianCertificateRetriever: failed to retrieve a certificate, error " << iStatus.Int();
GetCertificateL();
break;
}
@@ -835,6 +840,7 @@ QList<QSslCertificate> QSslSocketPrivate::systemCaCertificates()
systemCerts.append(QSslCertificate::fromPath(it.next()));
}
systemCerts.append(QSslCertificate::fromPath(QLatin1String("/etc/pki/tls/certs/ca-bundle.crt"), QSsl::Pem)); // Fedora, Mandriva
+ systemCerts.append(QSslCertificate::fromPath(QLatin1String("/usr/local/share/certs/ca-root-nss.crt"), QSsl::Pem)); // FreeBSD's ca_root_nss
#elif defined(Q_OS_SYMBIAN)
QList<QByteArray> certs;
@@ -911,7 +917,7 @@ void QSslSocketBackendPrivate::transmit()
int writtenBytes = q_SSL_write(ssl, writeBuffer.readPointer(), nextDataBlockSize);
if (writtenBytes <= 0) {
// ### Better error handling.
- q->setErrorString(QSslSocket::tr("Unable to write data: %1").arg(SSL_ERRORSTR()));
+ q->setErrorString(QSslSocket::tr("Unable to write data: %1").arg(getErrorsFromOpenSsl()));
q->setSocketError(QAbstractSocket::UnknownSocketError);
emit q->error(QAbstractSocket::UnknownSocketError);
return;
@@ -974,7 +980,7 @@ void QSslSocketBackendPrivate::transmit()
plainSocket->read(data.data(), writtenToBio);
} else {
// ### Better error handling.
- q->setErrorString(QSslSocket::tr("Unable to decrypt data: %1").arg(SSL_ERRORSTR()));
+ q->setErrorString(QSslSocket::tr("Unable to decrypt data: %1").arg(getErrorsFromOpenSsl()));
q->setSocketError(QAbstractSocket::UnknownSocketError);
emit q->error(QAbstractSocket::UnknownSocketError);
return;
@@ -1052,7 +1058,7 @@ void QSslSocketBackendPrivate::transmit()
case SSL_ERROR_SSL: // error in the SSL library
// we do not know exactly what the error is, nor whether we can recover from it,
// so just return to prevent an endless loop in the outer "while" statement
- q->setErrorString(QSslSocket::tr("Error while reading: %1").arg(SSL_ERRORSTR()));
+ q->setErrorString(QSslSocket::tr("Error while reading: %1").arg(getErrorsFromOpenSsl()));
q->setSocketError(QAbstractSocket::UnknownSocketError);
emit q->error(QAbstractSocket::UnknownSocketError);
return;
@@ -1062,7 +1068,7 @@ void QSslSocketBackendPrivate::transmit()
// SSL_ERROR_WANT_X509_LOOKUP: can only happen with a
// SSL_CTX_set_client_cert_cb(), which we do not call.
// So this default case should never be triggered.
- q->setErrorString(QSslSocket::tr("Error while reading: %1").arg(SSL_ERRORSTR()));
+ q->setErrorString(QSslSocket::tr("Error while reading: %1").arg(getErrorsFromOpenSsl()));
q->setSocketError(QAbstractSocket::UnknownSocketError);
emit q->error(QAbstractSocket::UnknownSocketError);
break;
@@ -1157,8 +1163,7 @@ bool QSslSocketBackendPrivate::startHandshake()
// The handshake is not yet complete.
break;
default:
- // ### Handle errors better
- q->setErrorString(QSslSocket::tr("Error during SSL handshake: %1").arg(SSL_ERRORSTR()));
+ q->setErrorString(QSslSocket::tr("Error during SSL handshake: %1").arg(getErrorsFromOpenSsl()));
q->setSocketError(QAbstractSocket::SslHandshakeFailedError);
#ifdef QSSLSOCKET_DEBUG
qDebug() << "QSslSocketBackendPrivate::startHandshake: error!" << q->errorString();
@@ -1334,6 +1339,19 @@ QList<QSslCertificate> QSslSocketBackendPrivate::STACKOFX509_to_QSslCertificates
return certificates;
}
+QString QSslSocketBackendPrivate::getErrorsFromOpenSsl()
+{
+ QString errorString;
+ unsigned long errNum;
+ while((errNum = q_ERR_get_error())) {
+ if (! errorString.isEmpty())
+ errorString.append(QLatin1String(", "));
+ const char *error = q_ERR_error_string(errNum, NULL);
+ errorString.append(QString::fromAscii(error)); // error is ascii according to man ERR_error_string
+ }
+ return errorString;
+}
+
bool QSslSocketBackendPrivate::isMatchingHostname(const QString &cn, const QString &hostname)
{
int wildcard = cn.indexOf(QLatin1Char('*'));
diff --git a/src/network/ssl/qsslsocket_openssl_p.h b/src/network/ssl/qsslsocket_openssl_p.h
index b59a6c9999..878c654a24 100644
--- a/src/network/ssl/qsslsocket_openssl_p.h
+++ b/src/network/ssl/qsslsocket_openssl_p.h
@@ -117,6 +117,7 @@ public:
static QSslCipher QSslCipher_from_SSL_CIPHER(SSL_CIPHER *cipher);
static QList<QSslCertificate> STACKOFX509_to_QSslCertificates(STACK_OF(X509) *x509);
Q_AUTOTEST_EXPORT static bool isMatchingHostname(const QString &cn, const QString &hostname);
+ static QString getErrorsFromOpenSsl();
};
#if defined(Q_OS_SYMBIAN)
diff --git a/src/opengl/gl2paintengineex/qglengineshadersource_p.h b/src/opengl/gl2paintengineex/qglengineshadersource_p.h
index a7ece0f162..0d30f9a844 100644
--- a/src/opengl/gl2paintengineex/qglengineshadersource_p.h
+++ b/src/opengl/gl2paintengineex/qglengineshadersource_p.h
@@ -340,12 +340,7 @@ static const char* const qglslImageSrcFragmentShader = "\n\
uniform lowp sampler2D imageTexture; \n\
lowp vec4 srcPixel() \n\
{ \n"
-#ifdef QT_OPENGL_ES_2
- // work-around for driver bug
- "return 1.0 * texture2D(imageTexture, textureCoords); \n"
-#else
"return texture2D(imageTexture, textureCoords); \n"
-#endif
"}\n";
static const char* const qglslCustomSrcFragmentShader = "\n\
diff --git a/src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp b/src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp
index 1dcb7733a3..3ddc15afe7 100644
--- a/src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp
+++ b/src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp
@@ -1212,6 +1212,9 @@ void QGL2PaintEngineExPrivate::stroke(const QVectorPath &path, const QPen &pen)
stroker.process(dashStroke, pen, clip);
}
+ if (!stroker.vertexCount())
+ return;
+
if (opaque) {
prepareForDraw(opaque);
setVertexAttributePointer(QT_VERTEX_COORDS_ATTR, stroker.vertices());
@@ -1479,6 +1482,8 @@ void QGL2PaintEngineExPrivate::drawCachedGlyphs(QFontEngineGlyphCache::Type glyp
if (!cache || cache->cacheType() != glyphType) {
cache = new QGLTextureGlyphCache(ctx, glyphType, QTransform());
staticTextItem->fontEngine()->setGlyphCache(ctx, cache);
+ } else if (cache->context() == 0) { // Old context has been destroyed, new context has same ptr value
+ cache->setContext(ctx);
}
bool recreateVertexArrays = false;
@@ -1494,8 +1499,13 @@ void QGL2PaintEngineExPrivate::drawCachedGlyphs(QFontEngineGlyphCache::Type glyp
// cache so this text is performed before we test if the cache size has changed.
if (recreateVertexArrays) {
cache->setPaintEnginePrivate(this);
- cache->populate(staticTextItem->fontEngine(), staticTextItem->numGlyphs,
- staticTextItem->glyphs, staticTextItem->glyphPositions);
+ if (!cache->populate(staticTextItem->fontEngine(), staticTextItem->numGlyphs,
+ staticTextItem->glyphs, staticTextItem->glyphPositions)) {
+ // No space in cache. We need to clear the cache and try again
+ cache->clear();
+ cache->populate(staticTextItem->fontEngine(), staticTextItem->numGlyphs,
+ staticTextItem->glyphs, staticTextItem->glyphPositions);
+ }
}
if (cache->width() == 0 || cache->height() == 0)
diff --git a/src/opengl/gl2paintengineex/qtextureglyphcache_gl.cpp b/src/opengl/gl2paintengineex/qtextureglyphcache_gl.cpp
index 919c542605..66445cd70e 100644
--- a/src/opengl/gl2paintengineex/qtextureglyphcache_gl.cpp
+++ b/src/opengl/gl2paintengineex/qtextureglyphcache_gl.cpp
@@ -54,11 +54,18 @@ extern Q_GUI_EXPORT bool qt_cleartype_enabled;
QGLTextureGlyphCache::QGLTextureGlyphCache(QGLContext *context, QFontEngineGlyphCache::Type type, const QTransform &matrix)
: QImageTextureGlyphCache(type, matrix)
- , ctx(context)
+ , ctx(0)
, m_width(0)
, m_height(0)
, m_filterMode(Nearest)
{
+ setContext(context);
+}
+
+void QGLTextureGlyphCache::setContext(QGLContext *context)
+{
+ ctx = context;
+
// broken FBO readback is a bug in the SGX 1.3 and 1.4 drivers for the N900 where
// copying between FBO's is broken if the texture is either GL_ALPHA or POT. The
// workaround is to use a system-memory copy of the glyph cache for this device.
@@ -71,7 +78,7 @@ QGLTextureGlyphCache::QGLTextureGlyphCache(QGLContext *context, QFontEngineGlyph
SLOT(contextDestroyed(const QGLContext*)));
}
-QGLTextureGlyphCache::~QGLTextureGlyphCache()
+void QGLTextureGlyphCache::clear()
{
if (ctx) {
QGLShareContextScope scope(ctx);
@@ -81,7 +88,24 @@ QGLTextureGlyphCache::~QGLTextureGlyphCache()
if (m_width || m_height)
glDeleteTextures(1, &m_texture);
+
+ m_fbo = 0;
+ m_texture = 0;
+ m_width = 0;
+ m_height = 0;
+ m_w = 0;
+ m_h = 0;
+ m_cx = 0;
+ m_cy = 0;
+ m_currentRowHeight = 0;
+ coords.clear();
}
+
+}
+
+QGLTextureGlyphCache::~QGLTextureGlyphCache()
+{
+ clear();
}
void QGLTextureGlyphCache::createTextureData(int width, int height)
@@ -104,14 +128,17 @@ void QGLTextureGlyphCache::createTextureData(int width, int height)
m_width = width;
m_height = height;
- QVarLengthArray<uchar> data(width * height);
- for (int i = 0; i < data.size(); ++i)
- data[i] = 0;
-
- if (m_type == QFontEngineGlyphCache::Raster_RGBMask)
- glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, width, height, 0, GL_ALPHA, GL_UNSIGNED_BYTE, &data[0]);
- else
+ if (m_type == QFontEngineGlyphCache::Raster_RGBMask) {
+ QVarLengthArray<uchar> data(width * height * 4);
+ for (int i = 0; i < data.size(); ++i)
+ data[i] = 0;
+ glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, width, height, 0, GL_RGBA, GL_UNSIGNED_BYTE, &data[0]);
+ } else {
+ QVarLengthArray<uchar> data(width * height);
+ for (int i = 0; i < data.size(); ++i)
+ data[i] = 0;
glTexImage2D(GL_TEXTURE_2D, 0, GL_ALPHA, width, height, 0, GL_ALPHA, GL_UNSIGNED_BYTE, &data[0]);
+ }
glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
@@ -263,7 +290,7 @@ void QGLTextureGlyphCache::fillTexture(const Coord &c, glyph_t glyph)
if (mask.format() == QImage::Format_RGB32) {
glTexSubImage2D(GL_TEXTURE_2D, 0, c.x, c.y, maskWidth, maskHeight, GL_BGRA, GL_UNSIGNED_BYTE, mask.bits());
} else {
-#ifdef QT_OPENGL_ES2
+#ifdef QT_OPENGL_ES_2
glTexSubImage2D(GL_TEXTURE_2D, 0, c.x, c.y, maskWidth, maskHeight, GL_ALPHA, GL_UNSIGNED_BYTE, mask.bits());
#else
// glTexSubImage2D() might cause some garbage to appear in the texture if the mask width is
diff --git a/src/opengl/gl2paintengineex/qtextureglyphcache_gl_p.h b/src/opengl/gl2paintengineex/qtextureglyphcache_gl_p.h
index e22146dc5a..aaef3508cf 100644
--- a/src/opengl/gl2paintengineex/qtextureglyphcache_gl_p.h
+++ b/src/opengl/gl2paintengineex/qtextureglyphcache_gl_p.h
@@ -90,6 +90,9 @@ public:
FilterMode filterMode() const { return m_filterMode; }
void setFilterMode(FilterMode m) { m_filterMode = m; }
+ void setContext(QGLContext *context);
+ QGLContext *context() const { return ctx; }
+
public Q_SLOTS:
void contextDestroyed(const QGLContext *context) {
if (context == ctx) {
@@ -98,10 +101,20 @@ public Q_SLOTS:
// the context may not be current, so we cannot directly
// destroy the fbo and texture here, but since the context
// is about to be destroyed, the GL server will do the
- // clean up for us anyway
+ // clean up for us anyway. We reset everything, so that the
+ // glyph cache object can be reused later by setting a new
+ // context on it.
m_fbo = 0;
m_texture = 0;
ctx = 0;
+ m_width = 0;
+ m_height = 0;
+ m_w = 0;
+ m_h = 0;
+ m_cx = 0;
+ m_cy = 0;
+ m_currentRowHeight = 0;
+ coords.clear();
} else {
// since the context holding the texture is shared, and
// about to be destroyed, we have to transfer ownership
@@ -111,6 +124,8 @@ public Q_SLOTS:
}
}
+ void clear();
+
private:
QGLContext *ctx;
diff --git a/src/opengl/gl2paintengineex/qtriangulator.cpp b/src/opengl/gl2paintengineex/qtriangulator.cpp
index 85f604a4bf..75d5ce2412 100644
--- a/src/opengl/gl2paintengineex/qtriangulator.cpp
+++ b/src/opengl/gl2paintengineex/qtriangulator.cpp
@@ -339,7 +339,7 @@ static inline qint64 qPointDistanceFromLine(const QPodPoint &p, const QPodPoint
static inline bool qPointIsLeftOfLine(const QPodPoint &p, const QPodPoint &v1, const QPodPoint &v2)
{
- return qPointDistanceFromLine(p, v1, v2) < 0;
+ return QT_PREPEND_NAMESPACE(qPointDistanceFromLine)(p, v1, v2) < 0;
}
// Return:
@@ -1741,7 +1741,7 @@ bool QTriangulator<T>::ComplexToSimple::calculateIntersection(int left, int righ
Intersection intersection;
intersection.leftEdge = left;
intersection.rightEdge = right;
- intersection.intersectionPoint = qIntersectionPoint(u1, u2, v1, v2);
+ intersection.intersectionPoint = QT_PREPEND_NAMESPACE(qIntersectionPoint)(u1, u2, v1, v2);
if (!intersection.intersectionPoint.isValid())
return false;
@@ -1767,10 +1767,10 @@ bool QTriangulator<T>::ComplexToSimple::edgeIsLeftOfEdge(int leftEdgeIndex, int
return true;
if (upper.x > qMax(l.x, u.x))
return false;
- qint64 d = qPointDistanceFromLine(upper, l, u);
+ qint64 d = QT_PREPEND_NAMESPACE(qPointDistanceFromLine)(upper, l, u);
// d < 0: left, d > 0: right, d == 0: on top
if (d == 0)
- d = qPointDistanceFromLine(m_parent->m_vertices.at(leftEdge.lower()), l, u);
+ d = QT_PREPEND_NAMESPACE(qPointDistanceFromLine)(m_parent->m_vertices.at(leftEdge.lower()), l, u);
return d < 0;
}
@@ -1814,7 +1814,7 @@ QPair<QRBTree<int>::Node *, QRBTree<int>::Node *> QTriangulator<T>::ComplexToSim
while (current) {
const QPodPoint &v1 = m_parent->m_vertices.at(m_edges.at(current->data).lower());
const QPodPoint &v2 = m_parent->m_vertices.at(m_edges.at(current->data).upper());
- qint64 d = qPointDistanceFromLine(point, v1, v2);
+ qint64 d = QT_PREPEND_NAMESPACE(qPointDistanceFromLine)(point, v1, v2);
if (d == 0) {
result.first = result.second = current;
break;
@@ -1828,7 +1828,7 @@ QPair<QRBTree<int>::Node *, QRBTree<int>::Node *> QTriangulator<T>::ComplexToSim
while (current) {
const QPodPoint &v1 = m_parent->m_vertices.at(m_edges.at(current->data).lower());
const QPodPoint &v2 = m_parent->m_vertices.at(m_edges.at(current->data).upper());
- qint64 d = qPointDistanceFromLine(point, v1, v2);
+ qint64 d = QT_PREPEND_NAMESPACE(qPointDistanceFromLine)(point, v1, v2);
Q_ASSERT(d >= 0);
if (d == 0) {
result.first = current;
@@ -1842,7 +1842,7 @@ QPair<QRBTree<int>::Node *, QRBTree<int>::Node *> QTriangulator<T>::ComplexToSim
while (current) {
const QPodPoint &v1 = m_parent->m_vertices.at(m_edges.at(current->data).lower());
const QPodPoint &v2 = m_parent->m_vertices.at(m_edges.at(current->data).upper());
- qint64 d = qPointDistanceFromLine(point, v1, v2);
+ qint64 d = QT_PREPEND_NAMESPACE(qPointDistanceFromLine)(point, v1, v2);
Q_ASSERT(d <= 0);
if (d == 0) {
result.second = current;
@@ -1864,7 +1864,7 @@ QPair<QRBTree<int>::Node *, QRBTree<int>::Node *> QTriangulator<T>::ComplexToSim
while (current) {
const QPodPoint &v1 = m_parent->m_vertices.at(m_edges.at(current->data).lower());
const QPodPoint &v2 = m_parent->m_vertices.at(m_edges.at(current->data).upper());
- qint64 d = qPointDistanceFromLine(point, v1, v2);
+ qint64 d = QT_PREPEND_NAMESPACE(qPointDistanceFromLine)(point, v1, v2);
if (d == 0)
break;
if (d < 0) {
@@ -1885,7 +1885,7 @@ QPair<QRBTree<int>::Node *, QRBTree<int>::Node *> QTriangulator<T>::ComplexToSim
while (current) {
const QPodPoint &v1 = m_parent->m_vertices.at(m_edges.at(current->data).lower());
const QPodPoint &v2 = m_parent->m_vertices.at(m_edges.at(current->data).upper());
- qint64 d = qPointDistanceFromLine(point, v1, v2);
+ qint64 d = QT_PREPEND_NAMESPACE(qPointDistanceFromLine)(point, v1, v2);
Q_ASSERT(d >= 0);
if (d == 0) {
current = current->left;
@@ -1899,7 +1899,7 @@ QPair<QRBTree<int>::Node *, QRBTree<int>::Node *> QTriangulator<T>::ComplexToSim
while (current) {
const QPodPoint &v1 = m_parent->m_vertices.at(m_edges.at(current->data).lower());
const QPodPoint &v2 = m_parent->m_vertices.at(m_edges.at(current->data).upper());
- qint64 d = qPointDistanceFromLine(point, v1, v2);
+ qint64 d = QT_PREPEND_NAMESPACE(qPointDistanceFromLine)(point, v1, v2);
Q_ASSERT(d <= 0);
if (d == 0) {
current = current->right;
@@ -1962,7 +1962,7 @@ void QTriangulator<T>::ComplexToSimple::reorderEdgeListRange(QRBTree<int>::Node
template <typename T>
void QTriangulator<T>::ComplexToSimple::sortEdgeList(const QPodPoint eventPoint)
{
- QIntersectionPoint eventPoint2 = qIntersectionPoint(eventPoint);
+ QIntersectionPoint eventPoint2 = QT_PREPEND_NAMESPACE(qIntersectionPoint)(eventPoint);
while (!m_topIntersection.isEmpty() && m_topIntersection.top().intersectionPoint < eventPoint2) {
Intersection intersection = m_topIntersection.pop();
@@ -2056,7 +2056,7 @@ void QTriangulator<T>::ComplexToSimple::calculateIntersections()
QPair<QRBTree<int>::Node *, QRBTree<int>::Node *> range = bounds(event.point);
QRBTree<int>::Node *leftNode = range.first ? m_edgeList.previous(range.first) : 0;
int vertex = (event.type == Event::Upper ? m_edges.at(event.edge).upper() : m_edges.at(event.edge).lower());
- QIntersectionPoint eventPoint = qIntersectionPoint(event.point);
+ QIntersectionPoint eventPoint = QT_PREPEND_NAMESPACE(qIntersectionPoint)(event.point);
if (range.first != 0) {
splitEdgeListRange(range.first, range.second, vertex, eventPoint);
@@ -2213,7 +2213,7 @@ void QTriangulator<T>::ComplexToSimple::removeUnwantedEdgesAndConnect()
while (current != b.second) {
Q_ASSERT(current);
Q_ASSERT(m_edges.at(current->data).node == current);
- Q_ASSERT(qIntersectionPoint(event.point).isOnLine(m_parent->m_vertices.at(m_edges.at(current->data).from), m_parent->m_vertices.at(m_edges.at(current->data).to)));
+ Q_ASSERT(QT_PREPEND_NAMESPACE(qIntersectionPoint)(event.point).isOnLine(m_parent->m_vertices.at(m_edges.at(current->data).from), m_parent->m_vertices.at(m_edges.at(current->data).to)));
Q_ASSERT(m_parent->m_vertices.at(m_edges.at(current->data).from) == event.point || m_parent->m_vertices.at(m_edges.at(current->data).to) == event.point);
insertEdgeIntoVectorIfWanted(orderedEdges, current->data);
current = m_edgeList.next(current);
@@ -2612,10 +2612,10 @@ bool QTriangulator<T>::SimpleToMonotone::edgeIsLeftOfEdge(int leftEdgeIndex, int
const Edge &rightEdge = m_edges.at(rightEdgeIndex);
const QPodPoint &u = m_parent->m_vertices.at(rightEdge.upper());
const QPodPoint &l = m_parent->m_vertices.at(rightEdge.lower());
- qint64 d = qPointDistanceFromLine(m_parent->m_vertices.at(leftEdge.upper()), l, u);
+ qint64 d = QT_PREPEND_NAMESPACE(qPointDistanceFromLine)(m_parent->m_vertices.at(leftEdge.upper()), l, u);
// d < 0: left, d > 0: right, d == 0: on top
if (d == 0)
- d = qPointDistanceFromLine(m_parent->m_vertices.at(leftEdge.lower()), l, u);
+ d = QT_PREPEND_NAMESPACE(qPointDistanceFromLine)(m_parent->m_vertices.at(leftEdge.lower()), l, u);
return d < 0;
}
@@ -2645,7 +2645,7 @@ QRBTree<int>::Node *QTriangulator<T>::SimpleToMonotone::searchEdgeLeftOfPoint(in
while (current) {
const QPodPoint &p1 = m_parent->m_vertices.at(m_edges.at(current->data).lower());
const QPodPoint &p2 = m_parent->m_vertices.at(m_edges.at(current->data).upper());
- qint64 d = qPointDistanceFromLine(m_parent->m_vertices.at(pointIndex), p1, p2);
+ qint64 d = QT_PREPEND_NAMESPACE(qPointDistanceFromLine)(m_parent->m_vertices.at(pointIndex), p1, p2);
if (d <= 0) {
current = current->left;
} else {
@@ -2668,7 +2668,7 @@ void QTriangulator<T>::SimpleToMonotone::classifyVertex(int i)
const QPodPoint &p1 = m_parent->m_vertices.at(e1.from);
const QPodPoint &p2 = m_parent->m_vertices.at(e2.from);
const QPodPoint &p3 = m_parent->m_vertices.at(e2.to);
- qint64 d = qPointDistanceFromLine(p1, p2, p3);
+ qint64 d = QT_PREPEND_NAMESPACE(qPointDistanceFromLine)(p1, p2, p3);
Q_ASSERT(d != 0 || (!startOrSplit && !endOrMerge));
e2.type = RegularVertex;
diff --git a/src/opengl/qgl.cpp b/src/opengl/qgl.cpp
index ed9753e9dd..18f120366c 100644
--- a/src/opengl/qgl.cpp
+++ b/src/opengl/qgl.cpp
@@ -2095,7 +2095,9 @@ void QGLContextPrivate::cleanup()
void QGLContextPrivate::setVertexAttribArrayEnabled(int arrayIndex, bool enabled)
{
Q_ASSERT(arrayIndex < QT_GL_VERTEX_ARRAY_TRACKED_COUNT);
+#ifdef glEnableVertexAttribArray
Q_ASSERT(glEnableVertexAttribArray);
+#endif
if (vertexAttributeArraysEnabledState[arrayIndex] && !enabled)
glDisableVertexAttribArray(arrayIndex);
@@ -2108,7 +2110,9 @@ void QGLContextPrivate::setVertexAttribArrayEnabled(int arrayIndex, bool enabled
void QGLContextPrivate::syncGlState()
{
+#ifdef glEnableVertexAttribArray
Q_ASSERT(glEnableVertexAttribArray);
+#endif
for (int i = 0; i < QT_GL_VERTEX_ARRAY_TRACKED_COUNT; ++i) {
if (vertexAttributeArraysEnabledState[i])
glEnableVertexAttribArray(i);
diff --git a/src/opengl/qgl_p.h b/src/opengl/qgl_p.h
index 4742bdb890..b46d428ab2 100644
--- a/src/opengl/qgl_p.h
+++ b/src/opengl/qgl_p.h
@@ -506,7 +506,8 @@ private slots:
// when you come to delete the context.
QGLContextPrivate::unbindPixmapFromTexture(boundPixmap);
glDeleteTextures(1, &id);
- oldContext->makeCurrent();
+ if (oldContext)
+ oldContext->makeCurrent();
return;
}
#endif
diff --git a/src/opengl/qgl_x11egl.cpp b/src/opengl/qgl_x11egl.cpp
index d33ea56cf4..75dd1b6697 100644
--- a/src/opengl/qgl_x11egl.cpp
+++ b/src/opengl/qgl_x11egl.cpp
@@ -97,7 +97,6 @@ QGLTemporaryContext::QGLTemporaryContext(bool, QWidget *)
XVisualInfo visualInfo;
XVisualInfo *vi;
int numVisuals;
- EGLint id = 0;
visualInfo.visualid = QEgl::getCompatibleVisualId(config);
vi = XGetVisualInfo(X11->display, VisualIDMask, &visualInfo, &numVisuals);
@@ -346,7 +345,7 @@ void QGLWidgetPrivate::recreateEglSurface()
// old surface before re-creating a new one. Note: This should not be the case as the
// surface should be deleted before the old window id.
if (glcx->d_func()->eglSurface != EGL_NO_SURFACE && (currentId != eglSurfaceWindowId)) {
- qWarning("EGL surface for deleted window %x was not destroyed", eglSurfaceWindowId);
+ qWarning("EGL surface for deleted window %x was not destroyed", uint(eglSurfaceWindowId));
glcx->d_func()->destroyEglSurfaceForDevice();
}
diff --git a/src/opengl/qglpixelbuffer_egl.cpp b/src/opengl/qglpixelbuffer_egl.cpp
index 0b94f5a2d9..2d9f6f1111 100644
--- a/src/opengl/qglpixelbuffer_egl.cpp
+++ b/src/opengl/qglpixelbuffer_egl.cpp
@@ -74,7 +74,6 @@ bool QGLPixelBufferPrivate::init(const QSize &size, const QGLFormat &f, QGLWidge
// Use the same configuration as the widget we are sharing with.
ctx->setConfig(shareContext->config());
#if QGL_RENDER_TEXTURE
- EGLint value = EGL_FALSE;
if (ctx->configAttrib(EGL_BIND_TO_TEXTURE_RGBA) == EGL_TRUE)
textureFormat = EGL_TEXTURE_RGBA;
else if (ctx->configAttrib(EGL_BIND_TO_TEXTURE_RGB) == EGL_TRUE)
diff --git a/src/opengl/qwindowsurface_gl.cpp b/src/opengl/qwindowsurface_gl.cpp
index bbb98d0991..f64b93c58b 100644
--- a/src/opengl/qwindowsurface_gl.cpp
+++ b/src/opengl/qwindowsurface_gl.cpp
@@ -377,7 +377,18 @@ void QGLWindowSurface::hijackWindow(QWidget *widget)
if (widgetPrivate->extraData()->glContext)
return;
- QGLContext *ctx = new QGLContext(surfaceFormat, widget);
+ QGLContext *ctx = NULL;
+
+ // For translucent top-level widgets we need alpha in the format.
+ if (widget->testAttribute(Qt::WA_TranslucentBackground)) {
+ QGLFormat modFormat(surfaceFormat);
+ modFormat.setSampleBuffers(false);
+ modFormat.setSamples(0);
+ modFormat.setAlpha(true);
+ ctx = new QGLContext(modFormat, widget);
+ } else
+ ctx = new QGLContext(surfaceFormat, widget);
+
ctx->create(qt_gl_share_widget()->context());
#ifndef QT_NO_EGL
diff --git a/src/openvg/qpaintengine_vg.cpp b/src/openvg/qpaintengine_vg.cpp
index aea203f9c8..b8e8badccb 100644
--- a/src/openvg/qpaintengine_vg.cpp
+++ b/src/openvg/qpaintengine_vg.cpp
@@ -1502,7 +1502,10 @@ void QVGPaintEnginePrivate::fill(VGPath path, const QBrush& brush, VGint rule)
return;
ensureBrush(brush);
setFillRule(rule);
+ QPen savedPen = currentPen;
+ currentPen = Qt::NoPen;
ensurePathTransform();
+ currentPen = savedPen;
vgDrawPath(path, VG_FILL_PATH);
}
@@ -3543,8 +3546,8 @@ void QVGPaintEngine::drawStaticTextItem(QStaticTextItem *textItem)
// Set the glyph drawing origin.
VGfloat origin[2];
- origin[0] = positions[0].x.toReal();
- origin[1] = positions[0].y.toReal();
+ origin[0] = positions[0].x.round().toReal();
+ origin[1] = positions[0].y.round().toReal();
vgSetfv(VG_GLYPH_ORIGIN, 2, origin);
// Fast anti-aliasing for paths, better for images.
diff --git a/src/openvg/qpixmapdata_vg.cpp b/src/openvg/qpixmapdata_vg.cpp
index 509882bf8c..c3c7def54b 100644
--- a/src/openvg/qpixmapdata_vg.cpp
+++ b/src/openvg/qpixmapdata_vg.cpp
@@ -214,7 +214,7 @@ void QVGPixmapData::createPixmapForImage(QImage &image, Qt::ImageConversionFlags
else if (!(flags & Qt::NoOpaqueDetection) && const_cast<QImage &>(image).data_ptr()->checkForAlphaPixels())
format = sourceFormat();
else
- format = QImage::Format_RGB32;
+ format = image.hasAlphaChannel() ? sourceFormat() : QImage::Format_RGB32;
if (inPlace && image.data_ptr()->convertInPlace(format, flags))
source = image;
diff --git a/src/plugins/bearer/connman/qconnmanengine.cpp b/src/plugins/bearer/connman/qconnmanengine.cpp
index 184ceb49b2..7f3501e80a 100644
--- a/src/plugins/bearer/connman/qconnmanengine.cpp
+++ b/src/plugins/bearer/connman/qconnmanengine.cpp
@@ -726,6 +726,7 @@ void QConnmanEngine::addNetworkConfiguration(const QString &networkPath)
if(servicePath.isEmpty()) {
id = QString::number(qHash(networkPath));
+ serv = 0;
} else {
id = QString::number(qHash(servicePath));
serv = new QConnmanServiceInterface(servicePath,this);
diff --git a/src/plugins/bearer/connman/qconnmanservice_linux.cpp b/src/plugins/bearer/connman/qconnmanservice_linux.cpp
index 952a444766..054542298d 100644
--- a/src/plugins/bearer/connman/qconnmanservice_linux.cpp
+++ b/src/plugins/bearer/connman/qconnmanservice_linux.cpp
@@ -216,7 +216,6 @@ void QConnmanManagerInterface::registerCounter(const QString &path, quint32 inte
{ QDBusReply<QList<QDBusObjectPath> > reply = this->call(QLatin1String("RegisterCounter"),
QVariant::fromValue(path),
QVariant::fromValue(interval));
- bool ok = true;
if(reply.error().type() == QDBusError::InvalidArgs) {
qWarning() << reply.error().message();
}
@@ -225,7 +224,6 @@ void QConnmanManagerInterface::registerCounter(const QString &path, quint32 inte
void QConnmanManagerInterface::unregisterCounter(const QString &path)
{ QDBusReply<QList<QDBusObjectPath> > reply = this->call(QLatin1String("UnregisterCounter"),
QVariant::fromValue(path));
- bool ok = true;
if(reply.error().type() == QDBusError::InvalidArgs) {
qWarning() << reply.error().message();
}
diff --git a/src/plugins/bearer/icd/proxyconf.cpp b/src/plugins/bearer/icd/proxyconf.cpp
index e5c8f4ee86..efe2da7e18 100644
--- a/src/plugins/bearer/icd/proxyconf.cpp
+++ b/src/plugins/bearer/icd/proxyconf.cpp
@@ -142,16 +142,23 @@ QHash<QString,QVariant> GConfItemFast::getEntries() const
-class NetworkProxyFactory : QNetworkProxyFactory {
+class NetworkProxyFactory : QNetworkProxyFactory
+{
+ ProxyConf proxy_conf;
+ bool proxy_data_read;
+
public:
- NetworkProxyFactory() { }
+ NetworkProxyFactory() : proxy_data_read(false) { }
QList<QNetworkProxy> queryProxy(const QNetworkProxyQuery &query = QNetworkProxyQuery());
};
QList<QNetworkProxy> NetworkProxyFactory::queryProxy(const QNetworkProxyQuery &query)
{
- ProxyConf proxy_conf;
+ if (proxy_data_read == false) {
+ proxy_data_read = true;
+ proxy_conf.readProxyData();
+ }
QList<QNetworkProxy> result = proxy_conf.flush(query);
if (result.isEmpty())
@@ -299,12 +306,12 @@ QList<QNetworkProxy> ProxyConfPrivate::flush(const QNetworkProxyQuery &query)
if (isHostExcluded(query.peerHostName()))
return result; // no proxy for this host
- if (mode == "auto") {
+ if (mode == QLatin1String("AUTO")) {
// TODO: pac currently not supported, fix me
return result;
}
- if (mode == "manual") {
+ if (mode == QLatin1String("MANUAL")) {
bool isHttps = false;
QString protocol = query.protocolTag().toLower();
@@ -377,10 +384,13 @@ ProxyConf::~ProxyConf()
delete d_ptr;
}
+void ProxyConf::readProxyData()
+{
+ d_ptr->readProxyData();
+}
QList<QNetworkProxy> ProxyConf::flush(const QNetworkProxyQuery &query)
{
- d_ptr->readProxyData();
return d_ptr->flush(query);
}
diff --git a/src/plugins/bearer/icd/proxyconf.h b/src/plugins/bearer/icd/proxyconf.h
index 884cc5c532..eedbbf2804 100644
--- a/src/plugins/bearer/icd/proxyconf.h
+++ b/src/plugins/bearer/icd/proxyconf.h
@@ -58,6 +58,7 @@ public:
virtual ~ProxyConf();
QList<QNetworkProxy> flush(const QNetworkProxyQuery &query = QNetworkProxyQuery()); // read the proxies from db
+ void readProxyData();
/* Note that for each update() call there should be corresponding
* clear() call because the ProxyConf class implements a reference
diff --git a/src/plugins/bearer/symbian/qnetworksession_impl.cpp b/src/plugins/bearer/symbian/qnetworksession_impl.cpp
index c5a39e1f6d..53a5b4d0d6 100644
--- a/src/plugins/bearer/symbian/qnetworksession_impl.cpp
+++ b/src/plugins/bearer/symbian/qnetworksession_impl.cpp
@@ -1151,10 +1151,10 @@ void QNetworkSessionPrivateImpl::RunL()
serviceConfig = QNetworkConfiguration();
iError = QNetworkSession::InvalidConfigurationError;
QT_TRYCATCH_LEAVING(emit QNetworkSessionPrivate::error(iError));
- Cancel();
if (ipConnectionNotifier) {
ipConnectionNotifier->StopNotifications();
}
+ Cancel();
QT_TRYCATCH_LEAVING(syncStateWithInterface());
break;
case KErrCancel: // Connection attempt cancelled
@@ -1173,10 +1173,10 @@ void QNetworkSessionPrivateImpl::RunL()
iError = QNetworkSession::UnknownSessionError;
}
QT_TRYCATCH_LEAVING(emit QNetworkSessionPrivate::error(iError));
- Cancel();
if (ipConnectionNotifier) {
ipConnectionNotifier->StopNotifications();
}
+ Cancel();
QT_TRYCATCH_LEAVING(syncStateWithInterface());
break;
}
@@ -1268,10 +1268,10 @@ bool QNetworkSessionPrivateImpl::newState(QNetworkSession::State newState, TUint
serviceConfig = QNetworkConfiguration();
iError = QNetworkSession::SessionAbortedError;
emit QNetworkSessionPrivate::error(iError);
- Cancel();
if (ipConnectionNotifier) {
ipConnectionNotifier->StopNotifications();
}
+ Cancel();
// Start handling IAP state change signals from QNetworkConfigurationManagerPrivate
iHandleStateNotificationsFromManager = true;
emitSessionClosed = true; // Emit SessionClosed after state change has been reported
diff --git a/src/plugins/bearer/symbian/symbianengine.cpp b/src/plugins/bearer/symbian/symbianengine.cpp
index b4dfc4d223..f025d865f4 100644
--- a/src/plugins/bearer/symbian/symbianengine.cpp
+++ b/src/plugins/bearer/symbian/symbianengine.cpp
@@ -135,10 +135,9 @@ void SymbianEngine::initialize()
updateConfigurations();
updateStatesToSnaps();
- updateAvailableAccessPoints(); // On first time updates synchronously (without WLAN scans)
+ updateAvailableAccessPoints(); // On first time updates (without WLAN scans)
// Start monitoring IAP and/or SNAP changes in Symbian CommsDB
startCommsDatabaseNotifications();
- iFirstUpdate = false;
}
SymbianEngine::~SymbianEngine()
@@ -790,6 +789,12 @@ void SymbianEngine::accessPointScanningReady(TBool scanSuccessful, TConnMonIapIn
mutex.unlock();
emit updateCompleted();
mutex.lock();
+ } else {
+ iFirstUpdate = false;
+ if (iScanInQueue) {
+ iScanInQueue = EFalse;
+ updateAvailableAccessPoints();
+ }
}
}
@@ -1356,27 +1361,39 @@ AccessPointsAvailabilityScanner::~AccessPointsAvailabilityScanner()
void AccessPointsAvailabilityScanner::DoCancel()
{
iConnectionMonitor.CancelAsyncRequest(EConnMonGetPckgAttribute);
+ iScanActive = EFalse;
+ iOwner.iScanInQueue = EFalse;
}
void AccessPointsAvailabilityScanner::StartScanning()
{
- if (iOwner.iFirstUpdate) {
- // On first update (the mgr is being instantiated) update only those bearers who
- // don't need time-consuming scans (WLAN).
- // Note: EBearerIdWCDMA covers also GPRS bearer
- iConnectionMonitor.GetPckgAttribute(EBearerIdWCDMA, 0, KIapAvailability, iIapBuf, iStatus);
+ if (!iScanActive) {
+ iScanActive = ETrue;
+ if (iOwner.iFirstUpdate) {
+ // On first update (the mgr is being instantiated) update only those bearers who
+ // don't need time-consuming scans (WLAN).
+ // Note: EBearerIdWCDMA covers also GPRS bearer
+ iConnectionMonitor.GetPckgAttribute(EBearerIdWCDMA, 0, KIapAvailability, iIapBuf, iStatus);
+ } else {
+ iConnectionMonitor.GetPckgAttribute(EBearerIdAll, 0, KIapAvailability, iIapBuf, iStatus);
+ }
+
+ if (!IsActive()) {
+ SetActive();
+ }
} else {
- iConnectionMonitor.GetPckgAttribute(EBearerIdAll, 0, KIapAvailability, iIapBuf, iStatus);
+ // Queue scan for getting WLAN info after first request returns
+ if (iOwner.iFirstUpdate) {
+ iOwner.iScanInQueue = ETrue;
+ }
}
-
- if (!IsActive())
- SetActive();
}
void AccessPointsAvailabilityScanner::RunL()
{
QMutexLocker locker(&iOwner.mutex);
+ iScanActive = EFalse;
if (iStatus.Int() != KErrNone) {
iIapBuf().iCount = 0;
QT_TRYCATCH_LEAVING(iOwner.accessPointScanningReady(false,iIapBuf()));
diff --git a/src/plugins/bearer/symbian/symbianengine.h b/src/plugins/bearer/symbian/symbianengine.h
index 7c1076ed2b..337d4d11e6 100644
--- a/src/plugins/bearer/symbian/symbianengine.h
+++ b/src/plugins/bearer/symbian/symbianengine.h
@@ -207,6 +207,7 @@ private: // Data
TBool iInitOk;
TBool iUpdateGoingOn;
TBool iUpdatePending;
+ TBool iScanInQueue;
AccessPointsAvailabilityScanner* ipAccessPointsAvailabilityScanner;
@@ -234,9 +235,10 @@ protected: // From CActive
void DoCancel();
private: // Data
- SymbianEngine& iOwner;
+ SymbianEngine& iOwner;
RConnectionMonitor& iConnectionMonitor;
- TConnMonIapInfoBuf iIapBuf;
+ TConnMonIapInfoBuf iIapBuf;
+ TBool iScanActive;
};
QT_END_NAMESPACE
diff --git a/src/plugins/gfxdrivers/directfb/qdirectfbpaintengine.cpp b/src/plugins/gfxdrivers/directfb/qdirectfbpaintengine.cpp
index c16a242b96..ceed7aeb59 100644
--- a/src/plugins/gfxdrivers/directfb/qdirectfbpaintengine.cpp
+++ b/src/plugins/gfxdrivers/directfb/qdirectfbpaintengine.cpp
@@ -68,6 +68,15 @@ public:
Matrix_BlitsUnsupported = (Matrix_NegativeScale|Matrix_RectsUnsupported)
};
+ inline static uint getTransformationType(const QTransform &transform)
+ {
+ int ret = transform.type();
+ if (qMin(transform.m11(), transform.m22()) < 0) {
+ ret |= QDirectFBPaintEnginePrivate::Matrix_NegativeScale;
+ }
+ return ret;
+ }
+
enum CompositionModeStatus {
PorterDuff_None = 0x0,
PorterDuff_Supported = 0x1,
@@ -99,7 +108,7 @@ public:
inline bool isSimpleBrush(const QBrush &brush) const;
- void drawTiledPixmap(const QRectF &dest, const QPixmap &pixmap, const QPointF &pos);
+ void drawTiledPixmap(const QRectF &dest, const QPixmap &pixmap, const QPointF &pos, const QTransform &pixmapTransform);
void blit(const QRectF &dest, IDirectFBSurface *surface, const QRectF &src);
inline bool supportsStretchBlit() const;
@@ -707,7 +716,8 @@ void QDirectFBPaintEngine::drawTiledPixmap(const QRectF &r,
const QPixmap pix(data);
QRasterPaintEngine::drawTiledPixmap(r, pix, offset);
} else {
- CLIPPED_PAINT(d->drawTiledPixmap(r, pixmap, offset));
+ QTransform transform(state()->matrix);
+ CLIPPED_PAINT(d->drawTiledPixmap(r, pixmap, offset, transform));
}
}
@@ -827,9 +837,14 @@ void QDirectFBPaintEngine::fillRect(const QRectF &rect, const QBrush &brush)
return; }
case Qt::TexturePattern: {
+ const QPointF &brushOrigin = state()->brushOrigin;
+ const QTransform stateTransform = state()->matrix;
+ QTransform transform(stateTransform);
+ transform.translate(brushOrigin.x(), brushOrigin.y());
+ transform = brush.transform() * transform;
if (!(d->compositionModeStatus & QDirectFBPaintEnginePrivate::PorterDuff_Supported)
- || (d->transformationType & QDirectFBPaintEnginePrivate::Matrix_BlitsUnsupported)
- || (!d->supportsStretchBlit() && state()->matrix.isScaling())) {
+ || (QDirectFBPaintEnginePrivate::getTransformationType(transform) & QDirectFBPaintEnginePrivate::Matrix_BlitsUnsupported)
+ || (!d->supportsStretchBlit() && transform.isScaling())) {
break;
}
@@ -837,7 +852,7 @@ void QDirectFBPaintEngine::fillRect(const QRectF &rect, const QBrush &brush)
if (texture.pixmapData()->classId() != QPixmapData::DirectFBClass)
break;
- CLIPPED_PAINT(d->drawTiledPixmap(rect, texture, rect.topLeft() - state()->brushOrigin));
+ CLIPPED_PAINT(d->drawTiledPixmap(stateTransform.mapRect(rect), texture, rect.topLeft() - brushOrigin, transform));
return; }
default:
break;
@@ -948,10 +963,7 @@ void QDirectFBPaintEnginePrivate::unlock(QDirectFBPaintDevice *device)
void QDirectFBPaintEnginePrivate::setTransform(const QTransform &transform)
{
- transformationType = transform.type();
- if (qMin(transform.m11(), transform.m22()) < 0) {
- transformationType |= QDirectFBPaintEnginePrivate::Matrix_NegativeScale;
- }
+ transformationType = getTransformationType(transform);
setPen(q->state()->pen);
}
@@ -1153,10 +1165,12 @@ static inline qreal fixCoord(qreal rect_pos, qreal pixmapSize, qreal offset)
return pos;
}
-void QDirectFBPaintEnginePrivate::drawTiledPixmap(const QRectF &dest, const QPixmap &pixmap, const QPointF &off)
+void QDirectFBPaintEnginePrivate::drawTiledPixmap(const QRectF &dest, const QPixmap &pixmap,
+ const QPointF &off, const QTransform &pixmapTransform)
{
- Q_ASSERT(!(transformationType & Matrix_BlitsUnsupported));
const QTransform &transform = q->state()->matrix;
+ Q_ASSERT(!(getTransformationType(transform) & Matrix_BlitsUnsupported) &&
+ !(getTransformationType(pixmapTransform) & Matrix_BlitsUnsupported));
const QRect destinationRect = transform.mapRect(dest).toRect().normalized();
QRect newClip = destinationRect;
if (!currentClip.isEmpty())
@@ -1173,7 +1187,7 @@ void QDirectFBPaintEnginePrivate::drawTiledPixmap(const QRectF &dest, const QPix
};
surface->SetClip(surface, &clip);
- QPointF offset = off;
+ QPointF offset = pixmapTransform.inverted().map(off);
Q_ASSERT(transform.type() <= QTransform::TxScale);
QPixmapData *data = pixmap.pixmapData();
Q_ASSERT(data->classId() == QPixmapData::DirectFBClass);
@@ -1187,13 +1201,13 @@ void QDirectFBPaintEnginePrivate::drawTiledPixmap(const QRectF &dest, const QPix
prepareForBlit(blitFlags);
QDirectFBPaintEnginePrivate::unlock(dfbData);
const QSize pixmapSize = dfbData->size();
- if (transform.isScaling()) {
+ if (transform.isScaling() || pixmapTransform.isScaling()) {
Q_ASSERT(supportsStretchBlit());
Q_ASSERT(qMin(transform.m11(), transform.m22()) >= 0);
offset.rx() *= transform.m11();
offset.ry() *= transform.m22();
- const QSizeF mappedSize(pixmapSize.width() * transform.m11(), pixmapSize.height() * transform.m22());
+ const QSizeF mappedSize(pixmapSize.width() * pixmapTransform.m11(), pixmapSize.height() * pixmapTransform.m22());
qreal y = fixCoord(destinationRect.y(), mappedSize.height(), offset.y());
const qreal startX = fixCoord(destinationRect.x(), mappedSize.width(), offset.x());
while (y <= destinationRect.bottom()) {
diff --git a/src/plugins/gfxdrivers/directfb/qdirectfbwindowsurface.cpp b/src/plugins/gfxdrivers/directfb/qdirectfbwindowsurface.cpp
index 2eeee24b6a..fbc539b021 100644
--- a/src/plugins/gfxdrivers/directfb/qdirectfbwindowsurface.cpp
+++ b/src/plugins/gfxdrivers/directfb/qdirectfbwindowsurface.cpp
@@ -344,9 +344,11 @@ void QDirectFBWindowSurface::flush(QWidget *widget, const QRegion &region,
if (!win)
return;
+#ifndef QT_NO_QWS_PROXYSCREEN
QWExtra *extra = qt_widget_private(widget)->extraData();
if (extra && extra->proxyWidget)
return;
+#endif
const quint8 windowOpacity = quint8(win->windowOpacity() * 0xff);
const QRect windowGeometry = geometry();
diff --git a/src/plugins/graphicssystems/meego/dithering.cpp b/src/plugins/graphicssystems/meego/dithering.cpp
index 1a2e3fa24a..ca303a898b 100644
--- a/src/plugins/graphicssystems/meego/dithering.cpp
+++ b/src/plugins/graphicssystems/meego/dithering.cpp
@@ -154,7 +154,10 @@ unsigned short* convertRGB32_to_RGB565(const unsigned char *in, int width, int h
// Add the diffusion for this pixel we stored in the accumulator.
// >> 7 because the values in accumulator are stored * 128
- component[c] += accumulator[c][x] >> 7;
+ if (x != 0 && x != (width - 1)) {
+ if (accumulator[c][x] >> 7 != 0)
+ component[c] += rand() % accumulator[c][x] >> 7;
+ }
// Make sure we're not over the boundaries.
CLAMP_256(component[c]);
@@ -172,10 +175,10 @@ unsigned short* convertRGB32_to_RGB565(const unsigned char *in, int width, int h
// Distribute the difference according to the matrix in the
// accumulation bufffer.
- ACCUMULATE(accumulator[c], x + 1, 0, width, diff * 7);
- ACCUMULATE(accumulator[c], x - 1, 1, width, diff * 3);
+ ACCUMULATE(accumulator[c], x + 1, 0, width, diff * 3);
+ ACCUMULATE(accumulator[c], x - 1, 1, width, diff * 5);
ACCUMULATE(accumulator[c], x, 1, width, diff * 5);
- ACCUMULATE(accumulator[c], x + 1, 1, width, diff * 1);
+ ACCUMULATE(accumulator[c], x + 1, 1, width, diff * 3);
}
// Write the newly produced pixel
diff --git a/src/plugins/graphicssystems/meego/qmeegographicssystem.cpp b/src/plugins/graphicssystems/meego/qmeegographicssystem.cpp
index 063af135e4..4a8608283c 100644
--- a/src/plugins/graphicssystems/meego/qmeegographicssystem.cpp
+++ b/src/plugins/graphicssystems/meego/qmeegographicssystem.cpp
@@ -83,7 +83,7 @@ QWindowSurface* QMeeGoGraphicsSystem::createWindowSurface(QWidget *widget) const
QPixmapData *QMeeGoGraphicsSystem::createPixmapData(QPixmapData::PixelType type) const
{
// Long story short: without this it's possible to hit an
- // unitialized paintDevice due to a Qt bug too complex to even
+ // uninitialized paintDevice due to a Qt bug too complex to even
// explain here... not to mention fix without going crazy.
// MDK
QGLShareContextScope ctx(qt_gl_share_widget()->context());
@@ -124,8 +124,10 @@ QPixmapData* QMeeGoGraphicsSystem::wrapPixmapData(QPixmapData *pmd)
void QMeeGoGraphicsSystem::setSurfaceFixedSize(int /*width*/, int /*height*/)
{
- if (QMeeGoGraphicsSystem::surfaceWasCreated)
+ if (QMeeGoGraphicsSystem::surfaceWasCreated) {
qWarning("Trying to set surface fixed size but surface already created!");
+ return;
+ }
#ifdef QT_WAS_PATCHED
QEglProperties *properties = new QEglProperties();
@@ -143,6 +145,11 @@ void QMeeGoGraphicsSystem::setSurfaceScaling(int x, int y, int width, int height
void QMeeGoGraphicsSystem::setTranslucent(bool translucent)
{
+ if (QMeeGoGraphicsSystem::surfaceWasCreated) {
+ qWarning("Trying to set translucency but surface already created!");
+ return;
+ }
+
QGLWindowSurface::surfaceFormat.setSampleBuffers(false);
QGLWindowSurface::surfaceFormat.setSamples(0);
QGLWindowSurface::surfaceFormat.setAlpha(translucent);
diff --git a/src/plugins/qpluginbase.pri b/src/plugins/qpluginbase.pri
index 84009d8ebc..7cbffe05b0 100644
--- a/src/plugins/qpluginbase.pri
+++ b/src/plugins/qpluginbase.pri
@@ -1,6 +1,6 @@
TEMPLATE = lib
isEmpty(QT_MAJOR_VERSION) {
- VERSION=4.7.1
+ VERSION=4.7.2
} else {
VERSION=$${QT_MAJOR_VERSION}.$${QT_MINOR_VERSION}.$${QT_PATCH_VERSION}
}
diff --git a/src/plugins/s60/feedback/feedback.pro b/src/plugins/s60/feedback/feedback.pro
index 1069220442..5e577ec593 100644
--- a/src/plugins/s60/feedback/feedback.pro
+++ b/src/plugins/s60/feedback/feedback.pro
@@ -6,7 +6,7 @@ QTDIR_build:DESTDIR = $$QT_BUILD_TREE/plugins/s60/feedback
INCLUDEPATH += $$APP_LAYER_SYSTEMINCLUDE
-contains(S60_VERSION, 5.0)|contains(S60_VERSION, symbian3) {
+!contains(S60_VERSION, 3.1):!contains(S60_VERSION, 3.2) {
HEADERS += qtactileFeedback.h
SOURCES += qtactileFeedback_s60.cpp
diff --git a/src/plugins/s60/s60.pro b/src/plugins/s60/s60.pro
index ffcd170f46..1ddf3261dc 100644
--- a/src/plugins/s60/s60.pro
+++ b/src/plugins/s60/s60.pro
@@ -6,7 +6,7 @@ symbian {
SUBDIRS += 3_1 3_2
}
- contains(S60_VERSION, 5.0)|contains(S60_VERSION, symbian3) {
+ !contains(S60_VERSION, 3.1):!contains(S60_VERSION, 3.2) {
SUBDIRS += feedback
}
diff --git a/src/qbase.pri b/src/qbase.pri
index 42176185a1..3a40928f69 100644
--- a/src/qbase.pri
+++ b/src/qbase.pri
@@ -4,7 +4,7 @@ INCLUDEPATH *= $$QMAKE_INCDIR_QT/$$TARGET #just for today to have some compat
isEmpty(QT_ARCH):!isEmpty(ARCH):QT_ARCH=$$ARCH #another compat that will rot for change #215700
TEMPLATE = lib
isEmpty(QT_MAJOR_VERSION) {
- VERSION=4.7.1
+ VERSION=4.7.2
} else {
VERSION=$${QT_MAJOR_VERSION}.$${QT_MINOR_VERSION}.$${QT_PATCH_VERSION}
}
@@ -36,7 +36,7 @@ CONFIG += qt warn_on depend_includepath
CONFIG += qmake_cache target_qt
CONFIG -= fix_output_dirs
win32|mac:!macx-xcode:CONFIG += debug_and_release
-linux*-g++*:QMAKE_LFLAGS += $$QMAKE_LFLAGS_NOUNDEF
+linux*:QMAKE_LFLAGS += $$QMAKE_LFLAGS_NOUNDEF
contains(QT_CONFIG, reduce_exports):CONFIG += hide_symbols
unix:contains(QT_CONFIG, reduce_relocations):CONFIG += bsymbolic_functions
diff --git a/src/s60installs/bwins/QtCoreu.def b/src/s60installs/bwins/QtCoreu.def
index f4e3a28275..6ecb403e2a 100644
--- a/src/s60installs/bwins/QtCoreu.def
+++ b/src/s60installs/bwins/QtCoreu.def
@@ -2960,7 +2960,7 @@ EXPORTS
?qvsnprintf@@YAHPADIPBD0@Z @ 2959 NONAME ; int qvsnprintf(char *, unsigned int, char const *, char *)
?raiseError@QXmlStreamReader@@QAEXABVQString@@@Z @ 2960 NONAME ; void QXmlStreamReader::raiseError(class QString const &)
?rangeContains@QXmlUtils@@CA_NPBVQXmlCharRange@@0VQChar@@@Z @ 2961 NONAME ; bool QXmlUtils::rangeContains(class QXmlCharRange const *, class QXmlCharRange const *, class QChar)
- ?reactivateDeferredActiveObjects@QEventDispatcherSymbian@@QAEXXZ @ 2962 NONAME ; void QEventDispatcherSymbian::reactivateDeferredActiveObjects(void)
+ ?reactivateDeferredActiveObjects@QEventDispatcherSymbian@@QAEXXZ @ 2962 NONAME ABSENT ; void QEventDispatcherSymbian::reactivateDeferredActiveObjects(void)
?reactivateSocketNotifier@QEventDispatcherSymbian@@QAEXPAVQSocketNotifier@@@Z @ 2963 NONAME ; void QEventDispatcherSymbian::reactivateSocketNotifier(class QSocketNotifier *)
?read@QAbstractFileEngine@@UAE_JPAD_J@Z @ 2964 NONAME ; long long QAbstractFileEngine::read(char *, long long)
?read@QFSFileEngine@@UAE_JPAD_J@Z @ 2965 NONAME ; long long QFSFileEngine::read(char *, long long)
@@ -4484,4 +4484,6 @@ EXPORTS
?selectThread@QEventDispatcherSymbian@@AAEAAVQSelectThread@@XZ @ 4483 NONAME ; class QSelectThread & QEventDispatcherSymbian::selectThread(void)
?qt_symbian_SetupThreadHeap@@YAHHAAUSStdEpocThreadCreateInfo@@@Z @ 4484 NONAME ; int qt_symbian_SetupThreadHeap(int, struct SStdEpocThreadCreateInfo &)
?objectNameChanged@QAbstractDeclarativeData@@2P6AXPAV1@PAVQObject@@@ZA @ 4485 NONAME ; void (*QAbstractDeclarativeData::objectNameChanged)(class QAbstractDeclarativeData *, class QObject *)
+ ?queueDeferredActiveObjectsCompletion@QEventDispatcherSymbian@@QAEXXZ @ 4486 NONAME ; void QEventDispatcherSymbian::queueDeferredActiveObjectsCompletion(void)
+ ?reactivateDeferredActiveObjects@QEventDispatcherSymbian@@UAEXXZ @ 4487 NONAME ; void QEventDispatcherSymbian::reactivateDeferredActiveObjects(void)
diff --git a/src/s60installs/bwins/QtGuiu.def b/src/s60installs/bwins/QtGuiu.def
index c91b22cbe5..6a33fc331e 100644
--- a/src/s60installs/bwins/QtGuiu.def
+++ b/src/s60installs/bwins/QtGuiu.def
@@ -12852,7 +12852,7 @@ EXPORTS
?drawStaticText@QPainter@@QAEXABVQPointF@@ABVQStaticText@@@Z @ 12851 NONAME ; void QPainter::drawStaticText(class QPointF const &, class QStaticText const &)
?updateAll@QGraphicsViewPrivate@@QAEXXZ @ 12852 NONAME ; void QGraphicsViewPrivate::updateAll(void)
?updateMicroFocus@QGraphicsItem@@IAEXXZ @ 12853 NONAME ; void QGraphicsItem::updateMicroFocus(void)
- ?populate@QTextureGlyphCache@@QAEXPAVQFontEngine@@HPBIPBUQFixedPoint@@@Z @ 12854 NONAME ; void QTextureGlyphCache::populate(class QFontEngine *, int, unsigned int const *, struct QFixedPoint const *)
+ ?populate@QTextureGlyphCache@@QAEXPAVQFontEngine@@HPBIPBUQFixedPoint@@@Z @ 12854 NONAME ABSENT ; void QTextureGlyphCache::populate(class QFontEngine *, int, unsigned int const *, struct QFixedPoint const *)
?hasPartialUpdateSupport@QWindowSurface@@QBE_NXZ @ 12855 NONAME ; bool QWindowSurface::hasPartialUpdateSupport(void) const
?scroll@QRuntimePixmapData@@UAE_NHHABVQRect@@@Z @ 12856 NONAME ; bool QRuntimePixmapData::scroll(int, int, class QRect const &)
?qt_draw_glyphs@@YAXPAVQPainter@@PBIPBVQPointF@@H@Z @ 12857 NONAME ; void qt_draw_glyphs(class QPainter *, unsigned int const *, class QPointF const *, int)
@@ -12898,4 +12898,11 @@ EXPORTS
?qmljsDebugArgumentsString@QApplicationPrivate@@SA?AVQString@@XZ @ 12897 NONAME ; class QString QApplicationPrivate::qmljsDebugArgumentsString(void)
?convertToPostscriptFontFamilyName@QFontEngine@@SA?AVQByteArray@@ABV2@@Z @ 12898 NONAME ; class QByteArray QFontEngine::convertToPostscriptFontFamilyName(class QByteArray const &)
?lastResortFont@QFont@@QBE?AVQString@@XZ @ 12899 NONAME ; class QString QFont::lastResortFont(void) const
+ ?setFontEngine@QStaticTextItem@@QAEXPAVQFontEngine@@@Z @ 12900 NONAME ; void QStaticTextItem::setFontEngine(class QFontEngine *)
+ ??0QStaticTextItem@@QAE@ABV0@@Z @ 12901 NONAME ; QStaticTextItem::QStaticTextItem(class QStaticTextItem const &)
+ ??4QStaticTextItem@@QAEXABV0@@Z @ 12902 NONAME ; void QStaticTextItem::operator=(class QStaticTextItem const &)
+ ?fontEngine@QStaticTextItem@@QBEPAVQFontEngine@@XZ @ 12903 NONAME ; class QFontEngine * QStaticTextItem::fontEngine(void) const
+ ?reactivateDeferredActiveObjects@QEventDispatcherS60@@UAEXXZ @ 12904 NONAME ; void QEventDispatcherS60::reactivateDeferredActiveObjects(void)
+ ?userData@QStaticTextItem@@QBEPAVQStaticTextUserData@@XZ @ 12905 NONAME ; class QStaticTextUserData * QStaticTextItem::userData(void) const
+ ?populate@QTextureGlyphCache@@QAE_NPAVQFontEngine@@HPBIPBUQFixedPoint@@@Z @ 12906 NONAME ; bool QTextureGlyphCache::populate(class QFontEngine *, int, unsigned int const *, struct QFixedPoint const *)
diff --git a/src/s60installs/bwins/QtOpenGLu.def b/src/s60installs/bwins/QtOpenGLu.def
index fa340e4e44..620fcb9b72 100644
--- a/src/s60installs/bwins/QtOpenGLu.def
+++ b/src/s60installs/bwins/QtOpenGLu.def
@@ -8,7 +8,7 @@ EXPORTS
?d_func@QGLShader@@AAEPAVQGLShaderPrivate@@XZ @ 7 NONAME ; class QGLShaderPrivate * QGLShader::d_func(void)
?bindToDynamicTexture@QGLPixelBuffer@@QAE_NI@Z @ 8 NONAME ; bool QGLPixelBuffer::bindToDynamicTexture(unsigned int)
??0QGLWidget@@QAE@PAVQGLContext@@PAVQWidget@@PBV0@V?$QFlags@W4WindowType@Qt@@@@@Z @ 9 NONAME ; QGLWidget::QGLWidget(class QGLContext *, class QWidget *, class QGLWidget const *, class QFlags<enum Qt::WindowType>)
- ??_EQGLFormat@@QAE@I@Z @ 10 NONAME ; QGLFormat::~QGLFormat(unsigned int)
+ ??_EQGLFormat@@QAE@I@Z @ 10 NONAME ABSENT ; QGLFormat::~QGLFormat(unsigned int)
?drawPixmapFragments@QGL2PaintEngineEx@@UAEXPBVPixmapFragment@QPainter@@HABVQPixmap@@V?$QFlags@W4PixmapFragmentHint@QPainter@@@@@Z @ 11 NONAME ; void QGL2PaintEngineEx::drawPixmapFragments(class QPainter::PixmapFragment const *, int, class QPixmap const &, class QFlags<enum QPainter::PixmapFragmentHint>)
?paintEngine@QGLWidget@@UBEPAVQPaintEngine@@XZ @ 12 NONAME ; class QPaintEngine * QGLWidget::paintEngine(void) const
?setPreferredPaintEngine@QGL@@YAXW4Type@QPaintEngine@@@Z @ 13 NONAME ; void QGL::setPreferredPaintEngine(enum QPaintEngine::Type)
@@ -107,7 +107,7 @@ EXPORTS
??0QGLContext@@QAE@ABVQGLFormat@@@Z @ 106 NONAME ; QGLContext::QGLContext(class QGLFormat const &)
?geometryOutputVertexCount@QGLShaderProgram@@QBEHXZ @ 107 NONAME ; int QGLShaderProgram::geometryOutputVertexCount(void) const
?setAccum@QGLFormat@@QAEX_N@Z @ 108 NONAME ; void QGLFormat::setAccum(bool)
- ??0QGLSignalProxy@@QAE@XZ @ 109 NONAME ; QGLSignalProxy::QGLSignalProxy(void)
+ ??0QGLSignalProxy@@QAE@XZ @ 109 NONAME ABSENT ; QGLSignalProxy::QGLSignalProxy(void)
?isUninitialized@QGLPixmapData@@ABE_NXZ @ 110 NONAME ; bool QGLPixmapData::isUninitialized(void) const
??0QGLFramebufferObjectFormat@@QAE@XZ @ 111 NONAME ; QGLFramebufferObjectFormat::QGLFramebufferObjectFormat(void)
??8@YA_NABVQGLFormat@@0@Z @ 112 NONAME ; bool operator==(class QGLFormat const &, class QGLFormat const &)
@@ -496,7 +496,7 @@ EXPORTS
?setUniformValue@QGLShaderProgram@@QAEXPBDABVQSize@@@Z @ 495 NONAME ; void QGLShaderProgram::setUniformValue(char const *, class QSize const &)
?convertToGLFormat@QGLWidget@@SA?AVQImage@@ABV2@@Z @ 496 NONAME ; class QImage QGLWidget::convertToGLFormat(class QImage const &)
?staticMetaObject@QGLTextureGlyphCache@@2UQMetaObject@@B @ 497 NONAME ; struct QMetaObject const QGLTextureGlyphCache::staticMetaObject
- ??_EQGLContextResource@@QAE@I@Z @ 498 NONAME ; QGLContextResource::~QGLContextResource(unsigned int)
+ ??_EQGLContextResource@@QAE@I@Z @ 498 NONAME ABSENT ; QGLContextResource::~QGLContextResource(unsigned int)
?handle@QGLColormap@@IAEKXZ @ 499 NONAME ; unsigned long QGLColormap::handle(void)
?isCreated@QGLBuffer@@QBE_NXZ @ 500 NONAME ; bool QGLBuffer::isCreated(void) const
?setColormap@QGLWidget@@QAEXABVQGLColormap@@@Z @ 501 NONAME ; void QGLWidget::setColormap(class QGLColormap const &)
@@ -698,4 +698,9 @@ EXPORTS
?setProfile@QGLFormat@@QAEXW4OpenGLContextProfile@1@@Z @ 697 NONAME ; void QGLFormat::setProfile(enum QGLFormat::OpenGLContextProfile)
?updateDynamicTexture@QGLPixelBuffer@@QBEXI@Z @ 698 NONAME ; void QGLPixelBuffer::updateDynamicTexture(unsigned int) const
?setUniformValue@QGLShaderProgram@@QAEXHH@Z @ 699 NONAME ; void QGLShaderProgram::setUniformValue(int, int)
+ ?maxTextureHeight@QGLTextureGlyphCache@@UBEHXZ @ 700 NONAME ; int QGLTextureGlyphCache::maxTextureHeight(void) const
+ ?initializeOffscreenTexture@QGLWindowSurface@@AAE_NABVQSize@@@Z @ 701 NONAME ; bool QGLWindowSurface::initializeOffscreenTexture(class QSize const &)
+ ?maxTextureWidth@QGLTextureGlyphCache@@UBEHXZ @ 702 NONAME ; int QGLTextureGlyphCache::maxTextureWidth(void) const
+ ?filterMode@QGLTextureGlyphCache@@QBE?AW4FilterMode@1@XZ @ 703 NONAME ; enum QGLTextureGlyphCache::FilterMode QGLTextureGlyphCache::filterMode(void) const
+ ?setFilterMode@QGLTextureGlyphCache@@QAEXW4FilterMode@1@@Z @ 704 NONAME ; void QGLTextureGlyphCache::setFilterMode(enum QGLTextureGlyphCache::FilterMode)
diff --git a/src/s60installs/eabi/QtGuiu.def b/src/s60installs/eabi/QtGuiu.def
index 75bb026245..632326d206 100644
--- a/src/s60installs/eabi/QtGuiu.def
+++ b/src/s60installs/eabi/QtGuiu.def
@@ -4658,11 +4658,11 @@ EXPORTS
_ZN20QGraphicsEllipseItemD1Ev @ 4657 NONAME
_ZN20QGraphicsEllipseItemD2Ev @ 4658 NONAME
_ZN20QGraphicsItemPrivate11removeChildEP13QGraphicsItem @ 4659 NONAME
- _ZN20QGraphicsItemPrivate11setSubFocusEP13QGraphicsItem @ 4660 NONAME
+ _ZN20QGraphicsItemPrivate11setSubFocusEP13QGraphicsItem @ 4660 NONAME ABSENT
_ZN20QGraphicsItemPrivate12remapItemPosEP6QEventP13QGraphicsItem @ 4661 NONAME
_ZN20QGraphicsItemPrivate12resolveDepthEv @ 4662 NONAME
_ZN20QGraphicsItemPrivate12setPosHelperERK7QPointF @ 4663 NONAME
- _ZN20QGraphicsItemPrivate13clearSubFocusEP13QGraphicsItem @ 4664 NONAME
+ _ZN20QGraphicsItemPrivate13clearSubFocusEP13QGraphicsItem @ 4664 NONAME ABSENT
_ZN20QGraphicsItemPrivate14setFocusHelperEN2Qt11FocusReasonEb @ 4665 NONAME ABSENT
_ZN20QGraphicsItemPrivate15resetFocusProxyEv @ 4666 NONAME
_ZN20QGraphicsItemPrivate16setEnabledHelperEbbb @ 4667 NONAME
@@ -12104,4 +12104,7 @@ EXPORTS
_ZN15QStaticTextItem13setFontEngineEP11QFontEngine @ 12103 NONAME
_ZN15QStaticTextItemD1Ev @ 12104 NONAME
_ZN15QStaticTextItemD2Ev @ 12105 NONAME
+ _ZN19QEventDispatcherS6031reactivateDeferredActiveObjectsEv @ 12106 NONAME
+ _ZN20QGraphicsItemPrivate11setSubFocusEP13QGraphicsItemS1_ @ 12107 NONAME
+ _ZN20QGraphicsItemPrivate13clearSubFocusEP13QGraphicsItemS1_ @ 12108 NONAME
diff --git a/src/s60installs/eabi/QtOpenGLu.def b/src/s60installs/eabi/QtOpenGLu.def
index 7ceade4a55..c92d99ecc6 100644
--- a/src/s60installs/eabi/QtOpenGLu.def
+++ b/src/s60installs/eabi/QtOpenGLu.def
@@ -702,4 +702,9 @@ EXPORTS
_ZeqRK9QGLFormatS1_ @ 701 NONAME
_Zls6QDebugRK9QGLFormat @ 702 NONAME
_ZneRK9QGLFormatS1_ @ 703 NONAME
+ _ZN16QGLWindowSurface26initializeOffscreenTextureERK5QSize @ 704 NONAME
+ _ZNK20QGLTextureGlyphCache15maxTextureWidthEv @ 705 NONAME
+ _ZNK20QGLTextureGlyphCache16maxTextureHeightEv @ 706 NONAME
+ _ZThn8_NK20QGLTextureGlyphCache15maxTextureWidthEv @ 707 NONAME
+ _ZThn8_NK20QGLTextureGlyphCache16maxTextureHeightEv @ 708 NONAME
diff --git a/src/s60installs/s60installs.pro b/src/s60installs/s60installs.pro
index 65b8781ee4..ff67bcfb88 100644
--- a/src/s60installs/s60installs.pro
+++ b/src/s60installs/s60installs.pro
@@ -87,7 +87,7 @@ symbian: {
DEPLOYMENT += bearer_plugin
}
- contains(S60_VERSION, 5.0)|contains(S60_VERSION, symbian3) {
+ !contains(S60_VERSION, 3.1):!contains(S60_VERSION, 3.2) {
feedback_plugin.sources = $$QT_BUILD_TREE/plugins/s60/feedback/qtactilefeedback$${QT_LIBINFIX}.dll
feedback_plugin.path = c:$$QT_PLUGINS_BASE_DIR/feedback
DEPLOYMENT += feedback_plugin
@@ -191,11 +191,9 @@ symbian: {
qtlibraries.sources += $$QMAKE_LIBDIR_QT/QtOpenVG$${QT_LIBINFIX}.dll
graphicssystems_plugins.sources += $$QT_BUILD_TREE/plugins/graphicssystems/qvggraphicssystem$${QT_LIBINFIX}.dll
# OpenVG requires Symbian^3 or later
- pkg_platform_dependencies -= \
- "[0x101F7961],0,0,0,{\"S60ProductID\"}" \
- "[0x102032BE],0,0,0,{\"S60ProductID\"}" \
- "[0x102752AE],0,0,0,{\"S60ProductID\"}" \
- "[0x1028315F],0,0,0,{\"S60ProductID\"}"
+ pkg_platform_dependencies = \
+ "[0x20022E6D],0,0,0,{\"S60ProductID\"}" \
+ "[0x20032DE7],0,0,0,{\"S60ProductID\"}"
}
contains(QT_CONFIG, opengl) {
diff --git a/src/script/api/qscriptcontextinfo.cpp b/src/script/api/qscriptcontextinfo.cpp
index a90e0146af..8528decd61 100644
--- a/src/script/api/qscriptcontextinfo.cpp
+++ b/src/script/api/qscriptcontextinfo.cpp
@@ -177,7 +177,7 @@ QScriptContextInfoPrivate::QScriptContextInfoPrivate(const QScriptContext *conte
fileName = source->url();
}
- // Get the others informations:
+ // Get the others information:
JSC::JSObject *callee = frame->callee();
if (callee && callee->inherits(&JSC::InternalFunction::info))
functionName = JSC::asInternalFunction(callee)->name(frame);
diff --git a/src/sql/models/qsqlrelationaldelegate.h b/src/sql/models/qsqlrelationaldelegate.h
index 7600e52036..96760e12fa 100644
--- a/src/sql/models/qsqlrelationaldelegate.h
+++ b/src/sql/models/qsqlrelationaldelegate.h
@@ -59,23 +59,23 @@ class QSqlRelationalDelegate: public QItemDelegate
{
public:
-explicit QSqlRelationalDelegate(QObject *parent = 0)
- : QItemDelegate(parent)
+explicit QSqlRelationalDelegate(QObject *aParent = 0)
+ : QItemDelegate(aParent)
{}
~QSqlRelationalDelegate()
{}
-QWidget *createEditor(QWidget *parent,
+QWidget *createEditor(QWidget *aParent,
const QStyleOptionViewItem &option,
const QModelIndex &index) const
{
const QSqlRelationalTableModel *sqlModel = qobject_cast<const QSqlRelationalTableModel *>(index.model());
QSqlTableModel *childModel = sqlModel ? sqlModel->relationModel(index.column()) : 0;
if (!childModel)
- return QItemDelegate::createEditor(parent, option, index);
+ return QItemDelegate::createEditor(aParent, option, index);
- QComboBox *combo = new QComboBox(parent);
+ QComboBox *combo = new QComboBox(aParent);
combo->setModel(childModel);
combo->setModelColumn(childModel->fieldIndex(sqlModel->relation(index.column()).displayColumn()));
combo->installEventFilter(const_cast<QSqlRelationalDelegate *>(this));
diff --git a/src/testlib/qtestcase.cpp b/src/testlib/qtestcase.cpp
index 17f1a6b3b0..e3a8726061 100644
--- a/src/testlib/qtestcase.cpp
+++ b/src/testlib/qtestcase.cpp
@@ -755,6 +755,9 @@ QT_BEGIN_NAMESPACE
QTest::touchEvent to create a QTouchEventSequence instance. Add touch events to
the sequence by calling press(), move(), release() and stationary(), and let the
instance run out of scope to commit the sequence to the event system.
+
+ Example:
+ \snippet doc/src/snippets/code/src_qtestlib_qtestcase.cpp 25
*/
/*!
diff --git a/src/testlib/qtesttouch.h b/src/testlib/qtesttouch.h
index 1beef85f5f..6c58e4c012 100644
--- a/src/testlib/qtesttouch.h
+++ b/src/testlib/qtesttouch.h
@@ -106,8 +106,8 @@ namespace QTest
}
private:
- QTouchEventSequence(QWidget *widget, QTouchEvent::DeviceType deviceType)
- : targetWidget(widget), deviceType(deviceType)
+ QTouchEventSequence(QWidget *widget, QTouchEvent::DeviceType aDeviceType)
+ : targetWidget(widget), deviceType(aDeviceType)
{
}
QTouchEventSequence(const QTouchEventSequence &v);
diff --git a/src/xmlpatterns/data/qatomicvalue.cpp b/src/xmlpatterns/data/qatomicvalue.cpp
index ecc78bfb69..fc4cf2e6de 100644
--- a/src/xmlpatterns/data/qatomicvalue.cpp
+++ b/src/xmlpatterns/data/qatomicvalue.cpp
@@ -202,7 +202,7 @@ ItemType::Ptr AtomicValue::qtToXDMType(const QXmlItem &item)
Q_ASSERT(item.isAtomicValue());
const QVariant v(item.toAtomicValue());
- switch(v.type())
+ switch(int(v.type()))
{
case QVariant::Char:
/* Fallthrough. */
diff --git a/src/xmlpatterns/expr/qarithmeticexpression_p.h b/src/xmlpatterns/expr/qarithmeticexpression_p.h
index 66c1f136f2..6ff82191a9 100644
--- a/src/xmlpatterns/expr/qarithmeticexpression_p.h
+++ b/src/xmlpatterns/expr/qarithmeticexpression_p.h
@@ -62,7 +62,7 @@ QT_BEGIN_NAMESPACE
namespace QPatternist
{
/**
- * @short Implements arithmetics, such as multiplication and substraction.
+ * @short Implements arithmetics, such as multiplication and subtraction.
*
*
* Optimizations: there's some operator/value combos that are no ops. For
diff --git a/src/xmlpatterns/parser/createTokenLookup.sh b/src/xmlpatterns/parser/createTokenLookup.sh
index e11a3ba3e4..933956869d 100755
--- a/src/xmlpatterns/parser/createTokenLookup.sh
+++ b/src/xmlpatterns/parser/createTokenLookup.sh
@@ -55,8 +55,8 @@ license=`cat <<EOF
** 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 either Technology Preview License Agreement or the
-** Beta Release License Agreement.
+** 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
@@ -66,13 +66,12 @@ license=`cat <<EOF
** 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.0, included in the file LGPL_EXCEPTION.txt in this
-** package.
+** 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 are unsure which license is appropriate for your use, please
-** contact the sales department at http://qt.nokia.com/contact.
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
**
**
**
diff --git a/tests/auto/collections/tst_collections.cpp b/tests/auto/collections/tst_collections.cpp
index f81535ee2b..43e1a52d5b 100644
--- a/tests/auto/collections/tst_collections.cpp
+++ b/tests/auto/collections/tst_collections.cpp
@@ -1222,7 +1222,7 @@ void tst_Collections::vector()
}
}
- // this used to trigger an unitialized read in valgrind
+ // this used to trigger an uninitialized read in valgrind
QVector<char> foo;
foo.resize(144);
diff --git a/tests/auto/declarative/qdeclarativeecmascript/data/AliasBindingsAssignCorrectlyType.qml b/tests/auto/declarative/qdeclarativeecmascript/data/AliasBindingsAssignCorrectlyType.qml
new file mode 100644
index 0000000000..0eda67d51a
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativeecmascript/data/AliasBindingsAssignCorrectlyType.qml
@@ -0,0 +1,9 @@
+import QtQuick 1.0
+
+QtObject {
+ id: root
+
+ property real realProperty
+ property alias aliasProperty: root.realProperty
+}
+
diff --git a/tests/auto/declarative/qdeclarativeecmascript/data/AliasBindingsOverrideTargetType.qml b/tests/auto/declarative/qdeclarativeecmascript/data/AliasBindingsOverrideTargetType.qml
new file mode 100644
index 0000000000..f539fb62b4
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativeecmascript/data/AliasBindingsOverrideTargetType.qml
@@ -0,0 +1,14 @@
+import QtQuick 1.0
+import Qt.test 1.0
+
+MyTypeObject {
+ id: root
+
+ property int data: 7
+
+ property int targetProperty: root.data * 43 - root.data
+ property alias aliasProperty: root.targetProperty
+
+ pointProperty: Qt.point(data, data);
+ property alias pointAliasProperty: root.pointProperty
+}
diff --git a/tests/auto/declarative/qdeclarativeecmascript/data/AliasBindingsOverrideTargetType3.qml b/tests/auto/declarative/qdeclarativeecmascript/data/AliasBindingsOverrideTargetType3.qml
new file mode 100644
index 0000000000..a4b0527436
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativeecmascript/data/AliasBindingsOverrideTargetType3.qml
@@ -0,0 +1,9 @@
+import QtQuick 1.0
+
+QtObject {
+ id: root
+
+ property int testProperty
+ property alias aliasProperty: root.testProperty
+}
+
diff --git a/tests/auto/declarative/qdeclarativeecmascript/data/aliasBindingsAssignCorrectly.qml b/tests/auto/declarative/qdeclarativeecmascript/data/aliasBindingsAssignCorrectly.qml
new file mode 100644
index 0000000000..f0808c4cb8
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativeecmascript/data/aliasBindingsAssignCorrectly.qml
@@ -0,0 +1,59 @@
+import QtQuick 1.0
+
+Item {
+ id: root
+
+ property bool test: false
+
+ property real testData: 9
+ property real testData2: 9
+
+ states: State {
+ name: "change"
+ PropertyChanges {
+ target: myType
+ realProperty: if (testData2 > 3) 9; else 11;
+ }
+ }
+
+ AliasBindingsAssignCorrectlyType {
+ id: myType
+
+ aliasProperty: if (testData > 3) 14; else 12;
+ }
+
+ Component.onCompleted: {
+ // Check original binding works
+ if (myType.aliasProperty != 14) return;
+
+ testData = 2;
+ if (myType.aliasProperty != 12) return;
+
+ // Change binding indirectly by modifying the "realProperty"
+ root.state = "change";
+ if (myType.aliasProperty != 9) return;
+
+ // Check the new binding works
+ testData2 = 1;
+ if (myType.aliasProperty != 11) return;
+
+ // Try and trigger the old binding (that should have been removed)
+ testData = 6;
+ if (myType.aliasProperty != 11) return;
+
+ // Restore the original binding
+ root.state = "";
+ if (myType.aliasProperty != 14) return;
+
+ // Test the restored binding works
+ testData = 0;
+ if (myType.aliasProperty != 12) return;
+
+ // Test the old binding isn't somehow hanging around and still in effect
+ testData2 = 13;
+ if (myType.aliasProperty != 12) return;
+
+ test = true;
+ }
+}
+
diff --git a/tests/auto/declarative/qdeclarativeecmascript/data/aliasBindingsOverrideTarget.2.qml b/tests/auto/declarative/qdeclarativeecmascript/data/aliasBindingsOverrideTarget.2.qml
new file mode 100644
index 0000000000..4f07cbf616
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativeecmascript/data/aliasBindingsOverrideTarget.2.qml
@@ -0,0 +1,29 @@
+import QtQuick 1.0
+
+Item {
+ id: me
+ property bool test: false
+
+ property int value: 9
+
+ AliasBindingsOverrideTargetType {
+ id: aliasType
+ pointAliasProperty.x: me.value
+ }
+
+ Component.onCompleted: {
+ if (aliasType.pointAliasProperty.x != 9) return;
+
+ me.value = 11;
+ if (aliasType.pointAliasProperty.x != 11) return;
+
+ aliasType.data = 8;
+ if (aliasType.pointAliasProperty.x != 11) return;
+
+ me.value = 4;
+ if (aliasType.pointAliasProperty.x != 4) return;
+
+ test = true;
+ }
+}
+
diff --git a/tests/auto/declarative/qdeclarativeecmascript/data/aliasBindingsOverrideTarget.3.qml b/tests/auto/declarative/qdeclarativeecmascript/data/aliasBindingsOverrideTarget.3.qml
new file mode 100644
index 0000000000..937ae91c9b
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativeecmascript/data/aliasBindingsOverrideTarget.3.qml
@@ -0,0 +1,24 @@
+import QtQuick 1.0
+
+Item {
+ id: root
+ property bool test: false;
+
+ property int value1: 10
+ property int value2: 11
+
+ AliasBindingsOverrideTargetType3 {
+ id: obj
+
+ testProperty: root.value1 * 9
+ aliasProperty: root.value2 * 10
+ }
+
+ Component.onCompleted: {
+ if (obj.testProperty != 110) return;
+ if (obj.aliasProperty != 110) return;
+
+ test = true;
+ }
+}
+
diff --git a/tests/auto/declarative/qdeclarativeecmascript/data/aliasBindingsOverrideTarget.qml b/tests/auto/declarative/qdeclarativeecmascript/data/aliasBindingsOverrideTarget.qml
new file mode 100644
index 0000000000..a01dc5b0b2
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativeecmascript/data/aliasBindingsOverrideTarget.qml
@@ -0,0 +1,28 @@
+import QtQuick 1.0
+
+Item {
+ id: me
+ property bool test: false
+
+ property int value: 9
+
+ AliasBindingsOverrideTargetType {
+ id: aliasType
+ aliasProperty: me.value
+ }
+
+ Component.onCompleted: {
+ if (aliasType.aliasProperty != 9) return;
+
+ me.value = 11;
+ if (aliasType.aliasProperty != 11) return;
+
+ aliasType.data = 8;
+ if (aliasType.aliasProperty != 11) return;
+
+ me.value = 4;
+ if (aliasType.aliasProperty != 4) return;
+
+ test = true;
+ }
+}
diff --git a/tests/auto/declarative/qdeclarativeecmascript/data/aliasWritesOverrideBindings.2.qml b/tests/auto/declarative/qdeclarativeecmascript/data/aliasWritesOverrideBindings.2.qml
new file mode 100644
index 0000000000..5bf9f6a2ed
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativeecmascript/data/aliasWritesOverrideBindings.2.qml
@@ -0,0 +1,29 @@
+import QtQuick 1.0
+
+Item {
+ id: me
+ property bool test: false
+
+ property int value: 9
+
+ AliasBindingsOverrideTargetType {
+ id: aliasType
+ }
+
+ Component.onCompleted: {
+ if (aliasType.aliasProperty != 294) return;
+
+ aliasType.data = 8;
+ if (aliasType.aliasProperty != 336) return;
+
+ aliasType.aliasProperty = 4;
+ if (aliasType.aliasProperty != 4) return;
+
+ aliasType.data = 7;
+ if (aliasType.aliasProperty != 4) return;
+
+ test = true;
+ }
+}
+
+
diff --git a/tests/auto/declarative/qdeclarativeecmascript/data/aliasWritesOverrideBindings.3.qml b/tests/auto/declarative/qdeclarativeecmascript/data/aliasWritesOverrideBindings.3.qml
new file mode 100644
index 0000000000..a23ad4a0dd
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativeecmascript/data/aliasWritesOverrideBindings.3.qml
@@ -0,0 +1,23 @@
+import QtQuick 1.0
+
+Item {
+ id: me
+ property bool test: false
+
+ property int value: 9
+
+ AliasBindingsOverrideTargetType {
+ id: aliasType
+ pointAliasProperty.x: 9
+ }
+
+ Component.onCompleted: {
+ if (aliasType.pointAliasProperty.x != 9) return;
+
+ aliasType.data = 8;
+ if (aliasType.pointAliasProperty.x != 9) return;
+
+ test = true;
+ }
+}
+
diff --git a/tests/auto/declarative/qdeclarativeecmascript/data/aliasWritesOverrideBindings.qml b/tests/auto/declarative/qdeclarativeecmascript/data/aliasWritesOverrideBindings.qml
new file mode 100644
index 0000000000..ac20371472
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativeecmascript/data/aliasWritesOverrideBindings.qml
@@ -0,0 +1,23 @@
+import QtQuick 1.0
+
+Item {
+ id: me
+ property bool test: false
+
+ property int value: 9
+
+ AliasBindingsOverrideTargetType {
+ id: aliasType
+ aliasProperty: 11
+ }
+
+ Component.onCompleted: {
+ if (aliasType.aliasProperty != 11) return;
+
+ aliasType.data = 8;
+ if (aliasType.aliasProperty != 11) return;
+
+ test = true;
+ }
+}
+
diff --git a/tests/auto/declarative/qdeclarativeecmascript/data/writeRemovesBinding.qml b/tests/auto/declarative/qdeclarativeecmascript/data/writeRemovesBinding.qml
new file mode 100644
index 0000000000..035f0374e8
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativeecmascript/data/writeRemovesBinding.qml
@@ -0,0 +1,46 @@
+import QtQuick 1.0
+
+QtObject {
+ id: root
+
+ property bool test: false
+
+ property real data: 9
+ property real binding: data
+
+ property alias aliasProperty: root.aliasBinding
+ property real aliasBinding: data
+
+ Component.onCompleted: {
+ // Non-aliased properties
+ if (binding != 9) return;
+
+ data = 11;
+ if (binding != 11) return;
+
+ binding = 6;
+ if (binding != 6) return;
+
+ data = 3;
+ if (binding != 6) return;
+
+
+ // Writing through an aliased property
+ if (aliasProperty != 3) return;
+ if (aliasBinding != 3) return;
+
+ data = 4;
+ if (aliasProperty != 4) return;
+ if (aliasBinding != 4) return;
+
+ aliasProperty = 19;
+ if (aliasProperty != 19) return;
+ if (aliasBinding != 19) return;
+
+ data = 5;
+ if (aliasProperty != 19) return;
+ if (aliasBinding != 19) return;
+
+ test = true;
+ }
+}
diff --git a/tests/auto/declarative/qdeclarativeecmascript/testtypes.h b/tests/auto/declarative/qdeclarativeecmascript/testtypes.h
index 40451c33d2..15c310ff22 100644
--- a/tests/auto/declarative/qdeclarativeecmascript/testtypes.h
+++ b/tests/auto/declarative/qdeclarativeecmascript/testtypes.h
@@ -92,7 +92,7 @@ class MyQmlObject : public QObject
Q_PROPERTY(QDeclarativeListProperty<QObject> objectListProperty READ objectListProperty CONSTANT)
Q_PROPERTY(int resettableProperty READ resettableProperty WRITE setResettableProperty RESET resetProperty)
Q_PROPERTY(QRegExp regExp READ regExp WRITE setRegExp)
- Q_PROPERTY(int nonscriptable READ nonscriptable WRITE setNonscriptable SCRIPTABLE false);
+ Q_PROPERTY(int nonscriptable READ nonscriptable WRITE setNonscriptable SCRIPTABLE false)
public:
MyQmlObject(): myinvokableObject(0), m_methodCalled(false), m_methodIntCalled(false), m_object(0), m_value(0), m_resetProperty(13) {}
diff --git a/tests/auto/declarative/qdeclarativeecmascript/tst_qdeclarativeecmascript.cpp b/tests/auto/declarative/qdeclarativeecmascript/tst_qdeclarativeecmascript.cpp
index 3dd69da71e..77fab91805 100644
--- a/tests/auto/declarative/qdeclarativeecmascript/tst_qdeclarativeecmascript.cpp
+++ b/tests/auto/declarative/qdeclarativeecmascript/tst_qdeclarativeecmascript.cpp
@@ -135,6 +135,8 @@ private slots:
void scriptConnect();
void scriptDisconnect();
void ownership();
+ void cppOwnershipReturnValue();
+ void ownershipCustomReturnValue();
void qlistqobjectMethods();
void strictlyEquals();
void compiled();
@@ -164,6 +166,10 @@ private slots:
void in();
void sharedAttachedObject();
void objectName();
+ void writeRemovesBinding();
+ void aliasBindingsAssignCorrectly();
+ void aliasBindingsOverrideTarget();
+ void aliasWritesOverrideBindings();
void include();
@@ -741,11 +747,9 @@ void tst_qdeclarativeecmascript::constantsOverrideBindings()
QVERIFY(object != 0);
QCOMPARE(object->property("c1").toInt(), 0);
- QEXPECT_FAIL("", "QTBUG-13719", Continue);
QCOMPARE(object->property("c3").toInt(), 10);
object->setProperty("c1", QVariant(9));
QCOMPARE(object->property("c1").toInt(), 9);
- QEXPECT_FAIL("", "QTBUG-13719", Continue);
QCOMPARE(object->property("c3").toInt(), 10);
}
}
@@ -1566,7 +1570,7 @@ void tst_qdeclarativeecmascript::callQtInvokables()
o.reset();
{
- QString expected = "MyInvokableObject(0x" + QString::number((intptr_t)&o, 16) + ")";
+ QString expected = "MyInvokableObject(0x" + QString::number((quintptr)&o, 16) + ")";
QCOMPARE(engine->evaluate("object.method_QString(object)").isUndefined(), true);
QCOMPARE(o.error(), false);
QCOMPARE(o.invoked(), 11);
@@ -2098,6 +2102,87 @@ void tst_qdeclarativeecmascript::ownership()
}
}
+class CppOwnershipReturnValue : public QObject
+{
+ Q_OBJECT
+public:
+ CppOwnershipReturnValue() : value(0) {}
+ ~CppOwnershipReturnValue() { delete value; }
+
+ Q_INVOKABLE QObject *create() {
+ Q_ASSERT(value == 0);
+
+ value = new QObject;
+ QDeclarativeEngine::setObjectOwnership(value, QDeclarativeEngine::CppOwnership);
+ return value;
+ }
+
+ Q_INVOKABLE MyQmlObject *createQmlObject() {
+ Q_ASSERT(value == 0);
+
+ MyQmlObject *rv = new MyQmlObject;
+ value = rv;
+ return rv;
+ }
+
+ QPointer<QObject> value;
+};
+
+// QTBUG-15695.
+// Test setObjectOwnership(CppOwnership) works even when there is no QDeclarativeData
+void tst_qdeclarativeecmascript::cppOwnershipReturnValue()
+{
+ CppOwnershipReturnValue source;
+
+ {
+ QDeclarativeEngine engine;
+ engine.rootContext()->setContextProperty("source", &source);
+
+ QVERIFY(source.value == 0);
+
+ QDeclarativeComponent component(&engine);
+ component.setData("import QtQuick 1.0\nQtObject {\nComponent.onCompleted: { var a = source.create(); }\n}\n", QUrl());
+
+ QObject *object = component.create();
+
+ QVERIFY(object != 0);
+ QVERIFY(source.value != 0);
+
+ delete object;
+ }
+
+ QCoreApplication::instance()->processEvents(QEventLoop::DeferredDeletion);
+
+ QVERIFY(source.value != 0);
+}
+
+// QTBUG-15697
+void tst_qdeclarativeecmascript::ownershipCustomReturnValue()
+{
+ CppOwnershipReturnValue source;
+
+ {
+ QDeclarativeEngine engine;
+ engine.rootContext()->setContextProperty("source", &source);
+
+ QVERIFY(source.value == 0);
+
+ QDeclarativeComponent component(&engine);
+ component.setData("import QtQuick 1.0\nQtObject {\nComponent.onCompleted: { var a = source.createQmlObject(); }\n}\n", QUrl());
+
+ QObject *object = component.create();
+
+ QVERIFY(object != 0);
+ QVERIFY(source.value != 0);
+
+ delete object;
+ }
+
+ QCoreApplication::instance()->processEvents(QEventLoop::DeferredDeletion);
+
+ QVERIFY(source.value == 0);
+}
+
class QListQObjectMethodsObject : public QObject
{
Q_OBJECT
@@ -2671,6 +2756,97 @@ void tst_qdeclarativeecmascript::objectName()
delete o;
}
+void tst_qdeclarativeecmascript::writeRemovesBinding()
+{
+ QDeclarativeComponent component(&engine, TEST_FILE("writeRemovesBinding.qml"));
+ QObject *o = component.create();
+ QVERIFY(o != 0);
+
+ QCOMPARE(o->property("test").toBool(), true);
+
+ delete o;
+}
+
+// Test bindings assigned to alias properties actually assign to the alias' target
+void tst_qdeclarativeecmascript::aliasBindingsAssignCorrectly()
+{
+ QDeclarativeComponent component(&engine, TEST_FILE("aliasBindingsAssignCorrectly.qml"));
+ QObject *o = component.create();
+ QVERIFY(o != 0);
+
+ QCOMPARE(o->property("test").toBool(), true);
+
+ delete o;
+}
+
+// Test bindings assigned to alias properties override a binding on the target (QTBUG-13719)
+void tst_qdeclarativeecmascript::aliasBindingsOverrideTarget()
+{
+ {
+ QDeclarativeComponent component(&engine, TEST_FILE("aliasBindingsOverrideTarget.qml"));
+ QObject *o = component.create();
+ QVERIFY(o != 0);
+
+ QCOMPARE(o->property("test").toBool(), true);
+
+ delete o;
+ }
+
+ {
+ QDeclarativeComponent component(&engine, TEST_FILE("aliasBindingsOverrideTarget.2.qml"));
+ QObject *o = component.create();
+ QVERIFY(o != 0);
+
+ QCOMPARE(o->property("test").toBool(), true);
+
+ delete o;
+ }
+
+ {
+ QDeclarativeComponent component(&engine, TEST_FILE("aliasBindingsOverrideTarget.3.qml"));
+ QObject *o = component.create();
+ QVERIFY(o != 0);
+
+ QCOMPARE(o->property("test").toBool(), true);
+
+ delete o;
+ }
+}
+
+// Test that writes to alias properties override bindings on the alias target (QTBUG-13719)
+void tst_qdeclarativeecmascript::aliasWritesOverrideBindings()
+{
+ {
+ QDeclarativeComponent component(&engine, TEST_FILE("aliasWritesOverrideBindings.qml"));
+ QObject *o = component.create();
+ QVERIFY(o != 0);
+
+ QCOMPARE(o->property("test").toBool(), true);
+
+ delete o;
+ }
+
+ {
+ QDeclarativeComponent component(&engine, TEST_FILE("aliasWritesOverrideBindings.2.qml"));
+ QObject *o = component.create();
+ QVERIFY(o != 0);
+
+ QCOMPARE(o->property("test").toBool(), true);
+
+ delete o;
+ }
+
+ {
+ QDeclarativeComponent component(&engine, TEST_FILE("aliasWritesOverrideBindings.3.qml"));
+ QObject *o = component.create();
+ QVERIFY(o != 0);
+
+ QCOMPARE(o->property("test").toBool(), true);
+
+ delete o;
+ }
+}
+
QTEST_MAIN(tst_qdeclarativeecmascript)
#include "tst_qdeclarativeecmascript.moc"
diff --git a/tests/auto/declarative/qdeclarativefocusscope/data/forceActiveFocus.qml b/tests/auto/declarative/qdeclarativefocusscope/data/forceActiveFocus.qml
new file mode 100644
index 0000000000..6c39d4a432
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativefocusscope/data/forceActiveFocus.qml
@@ -0,0 +1,26 @@
+import QtQuick 1.0
+
+Rectangle {
+ objectName: "root"
+ FocusScope {
+ objectName: "scope"
+ Item {
+ objectName: "item-a1"
+ FocusScope {
+ objectName: "scope-a"
+ Item {
+ objectName: "item-a2"
+ }
+ }
+ }
+ Item {
+ objectName: "item-b1"
+ FocusScope {
+ objectName: "scope-b"
+ Item {
+ objectName: "item-b2"
+ }
+ }
+ }
+ }
+}
diff --git a/tests/auto/declarative/qdeclarativefocusscope/tst_qdeclarativefocusscope.cpp b/tests/auto/declarative/qdeclarativefocusscope/tst_qdeclarativefocusscope.cpp
index 1645dac9f4..6a3627baf4 100644
--- a/tests/auto/declarative/qdeclarativefocusscope/tst_qdeclarativefocusscope.cpp
+++ b/tests/auto/declarative/qdeclarativefocusscope/tst_qdeclarativefocusscope.cpp
@@ -71,6 +71,7 @@ private slots:
void noParentFocus();
void signalEmission();
void qtBug13380();
+ void forceActiveFocus();
};
/*
@@ -432,6 +433,114 @@ void tst_qdeclarativefocusscope::qtBug13380()
delete view;
}
+void tst_qdeclarativefocusscope::forceActiveFocus()
+{
+ QDeclarativeView *view = new QDeclarativeView;
+ view->setSource(QUrl::fromLocalFile(SRCDIR "/data/forceActiveFocus.qml"));
+
+ QGraphicsObject *rootObject = view->rootObject();
+ QVERIFY(rootObject);
+
+ QDeclarativeItem *scope = findItem<QDeclarativeItem>(rootObject, QLatin1String("scope"));
+ QDeclarativeItem *itemA1 = findItem<QDeclarativeItem>(rootObject, QLatin1String("item-a1"));
+ QDeclarativeItem *scopeA = findItem<QDeclarativeItem>(rootObject, QLatin1String("scope-a"));
+ QDeclarativeItem *itemA2 = findItem<QDeclarativeItem>(rootObject, QLatin1String("item-a2"));
+ QDeclarativeItem *itemB1 = findItem<QDeclarativeItem>(rootObject, QLatin1String("item-b1"));
+ QDeclarativeItem *scopeB = findItem<QDeclarativeItem>(rootObject, QLatin1String("scope-b"));
+ QDeclarativeItem *itemB2 = findItem<QDeclarativeItem>(rootObject, QLatin1String("item-b2"));
+
+ QVERIFY(scope);
+ QVERIFY(itemA1);
+ QVERIFY(scopeA);
+ QVERIFY(itemA2);
+ QVERIFY(itemB1);
+ QVERIFY(scopeB);
+ QVERIFY(itemB2);
+
+ QSignalSpy rootSpy(rootObject, SIGNAL(activeFocusChanged(bool)));
+ QSignalSpy scopeSpy(scope, SIGNAL(activeFocusChanged(bool)));
+ QSignalSpy scopeASpy(scopeA, SIGNAL(activeFocusChanged(bool)));
+ QSignalSpy scopeBSpy(scopeB, SIGNAL(activeFocusChanged(bool)));
+
+ // First, walk the focus from item-a1 down to item-a2 and back again
+ itemA1->forceActiveFocus();
+ QVERIFY(itemA1->hasActiveFocus());
+ QCOMPARE(rootSpy.count(), 1);
+ QCOMPARE(scopeSpy.count(), 1);
+
+ scopeA->forceActiveFocus();
+ QVERIFY(!itemA1->hasActiveFocus());
+ QVERIFY(scopeA->hasActiveFocus());
+ QCOMPARE(scopeASpy.count(), 1);
+ QCOMPARE(rootSpy.count(), 1);
+ QCOMPARE(scopeSpy.count(), 1);
+
+ itemA2->forceActiveFocus();
+ QVERIFY(!itemA1->hasActiveFocus());
+ QVERIFY(itemA2->hasActiveFocus());
+ QVERIFY(scopeA->hasActiveFocus());
+ QCOMPARE(scopeASpy.count(), 1);
+ QCOMPARE(rootSpy.count(), 1);
+ QCOMPARE(scopeSpy.count(), 1);
+
+ scopeA->forceActiveFocus();
+ QVERIFY(!itemA1->hasActiveFocus());
+ QVERIFY(itemA2->hasActiveFocus());
+ QVERIFY(scopeA->hasActiveFocus());
+ QCOMPARE(scopeASpy.count(), 1);
+ QCOMPARE(rootSpy.count(), 1);
+ QCOMPARE(scopeSpy.count(), 1);
+
+ itemA1->forceActiveFocus();
+ QVERIFY(itemA1->hasActiveFocus());
+ QVERIFY(!scopeA->hasActiveFocus());
+ QVERIFY(!itemA2->hasActiveFocus());
+ QCOMPARE(scopeASpy.count(), 2);
+ QCOMPARE(rootSpy.count(), 1);
+ QCOMPARE(scopeSpy.count(), 1);
+
+ // Then jump back and forth between branch 'a' and 'b'
+ itemB1->forceActiveFocus();
+ QVERIFY(itemB1->hasActiveFocus());
+ QCOMPARE(rootSpy.count(), 1);
+ QCOMPARE(scopeSpy.count(), 1);
+
+ scopeA->forceActiveFocus();
+ QVERIFY(!itemA1->hasActiveFocus());
+ QVERIFY(!itemB1->hasActiveFocus());
+ QVERIFY(scopeA->hasActiveFocus());
+ QCOMPARE(scopeASpy.count(), 3);
+ QCOMPARE(rootSpy.count(), 1);
+ QCOMPARE(scopeSpy.count(), 1);
+
+ scopeB->forceActiveFocus();
+ QVERIFY(!scopeA->hasActiveFocus());
+ QVERIFY(!itemB1->hasActiveFocus());
+ QVERIFY(scopeB->hasActiveFocus());
+ QCOMPARE(scopeASpy.count(), 4);
+ QCOMPARE(scopeBSpy.count(), 1);
+ QCOMPARE(rootSpy.count(), 1);
+ QCOMPARE(scopeSpy.count(), 1);
+
+ itemA2->forceActiveFocus();
+ QVERIFY(!scopeB->hasActiveFocus());
+ QVERIFY(itemA2->hasActiveFocus());
+ QCOMPARE(scopeASpy.count(), 5);
+ QCOMPARE(scopeBSpy.count(), 2);
+ QCOMPARE(rootSpy.count(), 1);
+ QCOMPARE(scopeSpy.count(), 1);
+
+ itemB2->forceActiveFocus();
+ QVERIFY(!itemA2->hasActiveFocus());
+ QVERIFY(itemB2->hasActiveFocus());
+ QCOMPARE(scopeASpy.count(), 6);
+ QCOMPARE(scopeBSpy.count(), 3);
+ QCOMPARE(rootSpy.count(), 1);
+ QCOMPARE(scopeSpy.count(), 1);
+
+ delete view;
+}
+
QTEST_MAIN(tst_qdeclarativefocusscope)
#include "tst_qdeclarativefocusscope.moc"
diff --git a/tests/auto/declarative/qdeclarativegridview/tst_qdeclarativegridview.cpp b/tests/auto/declarative/qdeclarativegridview/tst_qdeclarativegridview.cpp
index 327bba2d00..7998e304ad 100644
--- a/tests/auto/declarative/qdeclarativegridview/tst_qdeclarativegridview.cpp
+++ b/tests/auto/declarative/qdeclarativegridview/tst_qdeclarativegridview.cpp
@@ -1263,7 +1263,7 @@ void tst_QDeclarativeGridView::header()
QDeclarativeView *canvas = createView();
TestModel model;
- for (int i = 0; i < 7; i++)
+ for (int i = 0; i < 30; i++)
model.addItem("Item" + QString::number(i), "");
QDeclarativeContext *ctxt = canvas->rootContext();
diff --git a/tests/auto/declarative/qdeclarativeimage/tst_qdeclarativeimage.cpp b/tests/auto/declarative/qdeclarativeimage/tst_qdeclarativeimage.cpp
index bf779adec0..447210d756 100644
--- a/tests/auto/declarative/qdeclarativeimage/tst_qdeclarativeimage.cpp
+++ b/tests/auto/declarative/qdeclarativeimage/tst_qdeclarativeimage.cpp
@@ -87,6 +87,7 @@ private slots:
void noLoading();
void paintedWidthHeight();
void sourceSize_QTBUG_14303();
+ void nullPixmapPaint();
private:
template<typename T>
@@ -540,6 +541,35 @@ void tst_qdeclarativeimage::sourceSize_QTBUG_14303()
QTRY_COMPARE(sourceSizeSpy.count(), 2);
}
+static int numberOfWarnings = 0;
+static void checkWarnings(QtMsgType, const char *)
+{
+ numberOfWarnings++;
+}
+
+// QTBUG-15690
+void tst_qdeclarativeimage::nullPixmapPaint()
+{
+ QString componentStr = QString("import QtQuick 1.0\nImage { width: 10; height:10; fillMode: Image.PreserveAspectFit; source: \"")
+ + SERVER_ADDR + QString("/no-such-file.png\" }");
+ QDeclarativeComponent component(&engine);
+ component.setData(componentStr.toLatin1(), QUrl::fromLocalFile(""));
+ QDeclarativeImage *image = qobject_cast<QDeclarativeImage*>(component.create());
+
+ QTRY_VERIFY(image != 0);
+
+ QtMsgHandler previousMsgHandler = qInstallMsgHandler(checkWarnings);
+
+ QPixmap pm(100, 100);
+ QPainter p(&pm);
+
+ // used to print "QTransform::translate with NaN called"
+ image->paint(&p, 0, 0);
+ qInstallMsgHandler(previousMsgHandler);
+ QVERIFY(numberOfWarnings == 0);
+ delete image;
+}
+
/*
Find an item with the specified objectName. If index is supplied then the
item must also evaluate the {index} expression equal to index
diff --git a/tests/auto/declarative/qdeclarativeinstruction/tst_qdeclarativeinstruction.cpp b/tests/auto/declarative/qdeclarativeinstruction/tst_qdeclarativeinstruction.cpp
index db1f1911d9..4470d6576a 100644
--- a/tests/auto/declarative/qdeclarativeinstruction/tst_qdeclarativeinstruction.cpp
+++ b/tests/auto/declarative/qdeclarativeinstruction/tst_qdeclarativeinstruction.cpp
@@ -458,6 +458,7 @@ void tst_qdeclarativeinstruction::dump()
i.type = QDeclarativeInstruction::FetchValueType;
i.fetchValue.property = 34;
i.fetchValue.type = 6;
+ i.fetchValue.bindingSkipList = 7;
data->bytecode << i;
}
@@ -538,7 +539,7 @@ void tst_qdeclarativeinstruction::dump()
<< "Index\tLine\tOperation\t\tData1\tData2\tData3\tComments"
<< "-------------------------------------------------------------------------------"
<< "0\t\t0\tINIT\t\t\t0\t3\t-1\t-1"
- << "1\t\t1\tCREATE\t\t\t0\t\t\t\"Test\""
+ << "1\t\t1\tCREATE\t\t\t0\t-1\t\t\"Test\""
<< "2\t\t2\tSETID\t\t\t0\t\t\t\"testId\""
<< "3\t\t3\tSET_DEFAULT"
<< "4\t\t4\tCREATE_COMPONENT\t3"
@@ -578,7 +579,7 @@ void tst_qdeclarativeinstruction::dump()
<< "38\t\t40\tFETCH_ATTACHED\t\t23"
<< "39\t\t42\tFETCH_QLIST\t\t32"
<< "40\t\t43\tFETCH\t\t\t33"
- << "41\t\t44\tFETCH_VALUE\t\t34\t6"
+ << "41\t\t44\tFETCH_VALUE\t\t34\t6\t7"
<< "42\t\t45\tPOP"
<< "43\t\t46\tPOP_QLIST"
<< "44\t\t47\tPOP_VALUE\t\t35\t8"
diff --git a/tests/auto/declarative/qdeclarativelanguage/testtypes.h b/tests/auto/declarative/qdeclarativelanguage/testtypes.h
index 2b23a49fe9..f8d785c516 100644
--- a/tests/auto/declarative/qdeclarativelanguage/testtypes.h
+++ b/tests/auto/declarative/qdeclarativelanguage/testtypes.h
@@ -112,7 +112,7 @@ class MyQmlObject : public QObject, public MyInterface
Q_PROPERTY(MyCustomVariantType customType READ customType WRITE setCustomType)
Q_PROPERTY(MyQmlObject *qmlobjectProperty READ qmlobject WRITE setQmlobject)
Q_PROPERTY(int propertyWithNotify READ propertyWithNotify WRITE setPropertyWithNotify NOTIFY oddlyNamedNotifySignal)
- Q_PROPERTY(int nonScriptable READ nonScriptable WRITE setNonScriptable SCRIPTABLE false);
+ Q_PROPERTY(int nonScriptable READ nonScriptable WRITE setNonScriptable SCRIPTABLE false)
Q_INTERFACES(MyInterface)
public:
diff --git a/tests/auto/declarative/qdeclarativelistview/data/header.qml b/tests/auto/declarative/qdeclarativelistview/data/header.qml
new file mode 100644
index 0000000000..6da996eeb6
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativelistview/data/header.qml
@@ -0,0 +1,31 @@
+import QtQuick 1.0
+
+Rectangle {
+ width: 240
+ height: 320
+ color: "#ffffff"
+ Component {
+ id: myDelegate
+ Rectangle {
+ id: wrapper
+ objectName: "wrapper"
+ height: 30
+ width: 240
+ Text {
+ text: index
+ }
+ color: ListView.isCurrentItem ? "lightsteelblue" : "white"
+ }
+ }
+ ListView {
+ id: list
+ objectName: "list"
+ focus: true
+ width: 240
+ height: 320
+ snapMode: ListView.SnapToItem
+ model: testModel
+ delegate: myDelegate
+ header: Text { objectName: "header"; text: "Header"; height: 10 }
+ }
+}
diff --git a/tests/auto/declarative/qdeclarativelistview/data/header1.qml b/tests/auto/declarative/qdeclarativelistview/data/header1.qml
new file mode 100644
index 0000000000..f2ab4c1257
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativelistview/data/header1.qml
@@ -0,0 +1,33 @@
+import QtQuick 1.0
+
+Rectangle {
+ width: 240
+ height: 320
+ color: "#ffffff"
+
+ ListModel { id: testModel }
+
+ ListView {
+ id: list
+ objectName: "list"
+ width: parent.width
+ anchors.top: parent.top
+ anchors.bottom: parent.bottom
+ model: testModel
+ delegate: Text {
+ objectName: "wrapper"
+ font.pointSize: 20
+ text: index
+ }
+ footer: Rectangle {
+ width: parent.width
+ height: 40
+ color: "green"
+ }
+ header: Text { objectName: "header"; text: "Header" }
+ }
+
+ Component.onCompleted: {
+ for (var i=0; i<30; i++) testModel.append({"name" : i, "val": i})
+ }
+}
diff --git a/tests/auto/declarative/qdeclarativelistview/data/qtbug14821.qml b/tests/auto/declarative/qdeclarativelistview/data/qtbug14821.qml
new file mode 100644
index 0000000000..e0303ecaa3
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativelistview/data/qtbug14821.qml
@@ -0,0 +1,31 @@
+import QtQuick 1.0
+
+ListView {
+ id: view
+ width: 300; height: 200
+ focus: true
+ keyNavigationWraps: true
+
+ model: 100
+
+ preferredHighlightBegin: 90
+ preferredHighlightEnd: 110
+
+ highlightRangeMode: ListView.StrictlyEnforceRange
+ highlight: Component {
+ Rectangle {
+ border.color: "blue"
+ border.width: 3
+ color: "transparent"
+ width: 300; height: 15
+ }
+ }
+
+ delegate: Component {
+ Item {
+ height: 15 + (view.currentIndex == index ? 20 : 0)
+ width: 200
+ Text { text: 'Index: ' + index; anchors.verticalCenter: parent.verticalCenter }
+ }
+ }
+}
diff --git a/tests/auto/declarative/qdeclarativelistview/data/sizelessthan1.qml b/tests/auto/declarative/qdeclarativelistview/data/sizelessthan1.qml
new file mode 100644
index 0000000000..77bfef8e57
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativelistview/data/sizelessthan1.qml
@@ -0,0 +1,26 @@
+import QtQuick 1.0
+
+Rectangle {
+ width: 240
+ height: 320
+ color: "#ffffff"
+ Component {
+ id: myDelegate
+ Rectangle {
+ id: wrapper
+ objectName: "wrapper"
+ height: 0.5
+ width: 240
+ color: ((index % 2) == 1 ? "red" : "blue")
+ }
+ }
+ ListView {
+ id: list
+ objectName: "list"
+ focus: true
+ width: 240
+ height: 320
+ model: testModel
+ delegate: myDelegate
+ }
+}
diff --git a/tests/auto/declarative/qdeclarativelistview/tst_qdeclarativelistview.cpp b/tests/auto/declarative/qdeclarativelistview/tst_qdeclarativelistview.cpp
index 79fef7a40f..759caf2522 100644
--- a/tests/auto/declarative/qdeclarativelistview/tst_qdeclarativelistview.cpp
+++ b/tests/auto/declarative/qdeclarativelistview/tst_qdeclarativelistview.cpp
@@ -98,8 +98,11 @@ private slots:
void QTBUG_9791();
void manualHighlight();
void QTBUG_11105();
+ void header();
void footer();
void resizeView();
+ void sizeLessThan1();
+ void QTBUG_14821();
private:
template <class T> void items();
@@ -1659,6 +1662,67 @@ void tst_QDeclarativeListView::QTBUG_11105()
delete canvas;
}
+void tst_QDeclarativeListView::header()
+{
+ {
+ QDeclarativeView *canvas = createView();
+
+ TestModel model;
+ for (int i = 0; i < 30; i++)
+ model.addItem("Item" + QString::number(i), "");
+
+ QDeclarativeContext *ctxt = canvas->rootContext();
+ ctxt->setContextProperty("testModel", &model);
+
+ canvas->setSource(QUrl::fromLocalFile(SRCDIR "/data/header.qml"));
+ qApp->processEvents();
+
+ QDeclarativeListView *listview = findItem<QDeclarativeListView>(canvas->rootObject(), "list");
+ QTRY_VERIFY(listview != 0);
+
+ QDeclarativeItem *contentItem = listview->contentItem();
+ QTRY_VERIFY(contentItem != 0);
+
+ QDeclarativeText *header = findItem<QDeclarativeText>(contentItem, "header");
+ QVERIFY(header);
+ QCOMPARE(header->y(), 0.0);
+
+ QCOMPARE(listview->contentY(), 0.0);
+
+ model.clear();
+ QTRY_COMPARE(header->y(), 0.0);
+
+ delete canvas;
+ }
+ {
+ QDeclarativeView *canvas = createView();
+
+ TestModel model;
+
+ QDeclarativeContext *ctxt = canvas->rootContext();
+
+ canvas->setSource(QUrl::fromLocalFile(SRCDIR "/data/header1.qml"));
+ qApp->processEvents();
+
+ QDeclarativeListView *listview = findItem<QDeclarativeListView>(canvas->rootObject(), "list");
+ QTRY_VERIFY(listview != 0);
+
+ QDeclarativeItem *contentItem = listview->contentItem();
+ QTRY_VERIFY(contentItem != 0);
+
+ QDeclarativeText *header = findItem<QDeclarativeText>(contentItem, "header");
+ QVERIFY(header);
+ QCOMPARE(header->y(), 0.0);
+
+ QCOMPARE(listview->contentY(), 0.0);
+
+ model.clear();
+ QTRY_COMPARE(header->y(), 0.0);
+
+ delete canvas;
+ }
+}
+
void tst_QDeclarativeListView::footer()
{
QDeclarativeView *canvas = createView();
@@ -1732,6 +1796,61 @@ void tst_QDeclarativeListView::resizeView()
QCOMPARE(heightRatio.toReal(), 0.25);
}
+void tst_QDeclarativeListView::sizeLessThan1()
+{
+ QDeclarativeView *canvas = createView();
+
+ TestModel model;
+ for (int i = 0; i < 30; i++)
+ model.addItem("Item" + QString::number(i), "");
+
+ QDeclarativeContext *ctxt = canvas->rootContext();
+ ctxt->setContextProperty("testModel", &model);
+
+ TestObject *testObject = new TestObject;
+ ctxt->setContextProperty("testObject", testObject);
+
+ canvas->setSource(QUrl::fromLocalFile(SRCDIR "/data/sizelessthan1.qml"));
+ qApp->processEvents();
+
+ QDeclarativeListView *listview = findItem<QDeclarativeListView>(canvas->rootObject(), "list");
+ QTRY_VERIFY(listview != 0);
+
+ QDeclarativeItem *contentItem = listview->contentItem();
+ QTRY_VERIFY(contentItem != 0);
+
+ // Confirm items positioned correctly
+ int itemCount = findItems<QDeclarativeItem>(contentItem, "wrapper").count();
+ for (int i = 0; i < model.count() && i < itemCount; ++i) {
+ QDeclarativeItem *item = findItem<QDeclarativeItem>(contentItem, "wrapper", i);
+ if (!item) qWarning() << "Item" << i << "not found";
+ QTRY_VERIFY(item);
+ QTRY_COMPARE(item->y(), i*0.5);
+ }
+
+ delete canvas;
+}
+
+void tst_QDeclarativeListView::QTBUG_14821()
+{
+ QDeclarativeView *canvas = createView();
+
+ canvas->setSource(QUrl::fromLocalFile(SRCDIR "/data/qtbug14821.qml"));
+ qApp->processEvents();
+
+ QDeclarativeListView *listview = qobject_cast<QDeclarativeListView*>(canvas->rootObject());
+ QVERIFY(listview != 0);
+
+ QDeclarativeItem *contentItem = listview->contentItem();
+ QVERIFY(contentItem != 0);
+
+ listview->decrementCurrentIndex();
+ QCOMPARE(listview->currentIndex(), 99);
+
+ listview->incrementCurrentIndex();
+ QCOMPARE(listview->currentIndex(), 0);
+}
+
void tst_QDeclarativeListView::qListModelInterface_items()
{
items<TestModel>();
diff --git a/tests/auto/declarative/qdeclarativemousearea/tst_qdeclarativemousearea.cpp b/tests/auto/declarative/qdeclarativemousearea/tst_qdeclarativemousearea.cpp
index 57a58e9478..9d7cc055f9 100644
--- a/tests/auto/declarative/qdeclarativemousearea/tst_qdeclarativemousearea.cpp
+++ b/tests/auto/declarative/qdeclarativemousearea/tst_qdeclarativemousearea.cpp
@@ -216,7 +216,14 @@ void tst_QDeclarativeMouseArea::dragging()
QCOMPARE(blackRect->x(), 50.0);
QCOMPARE(blackRect->y(), 50.0);
+ // First move event triggers drag, second is acted upon.
+ // This is due to possibility of higher stacked area taking precedence.
QGraphicsSceneMouseEvent moveEvent(QEvent::GraphicsSceneMouseMove);
+ moveEvent.setScenePos(QPointF(106, 106));
+ moveEvent.setButton(Qt::LeftButton);
+ moveEvent.setButtons(Qt::LeftButton);
+ QApplication::sendEvent(scene, &moveEvent);
+
moveEvent.setScenePos(QPointF(110, 110));
moveEvent.setButton(Qt::LeftButton);
moveEvent.setButtons(Qt::LeftButton);
diff --git a/tests/auto/declarative/qdeclarativeproperty/data/aliasPropertyBindings.qml b/tests/auto/declarative/qdeclarativeproperty/data/aliasPropertyBindings.qml
new file mode 100644
index 0000000000..a253a58da9
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativeproperty/data/aliasPropertyBindings.qml
@@ -0,0 +1,19 @@
+import QtQuick 1.0
+
+Item {
+ id: root
+
+ property real test: 9
+ property real test2: 3
+
+ property real realProperty: test * test + test
+ property alias aliasProperty: root.realProperty
+
+ states: State {
+ name: "switch"
+ PropertyChanges {
+ target: root
+ aliasProperty: 32 * test2
+ }
+ }
+}
diff --git a/tests/auto/declarative/qdeclarativeproperty/tst_qdeclarativeproperty.cpp b/tests/auto/declarative/qdeclarativeproperty/tst_qdeclarativeproperty.cpp
index 0ca0e03b8e..3cc71bb3ea 100644
--- a/tests/auto/declarative/qdeclarativeproperty/tst_qdeclarativeproperty.cpp
+++ b/tests/auto/declarative/qdeclarativeproperty/tst_qdeclarativeproperty.cpp
@@ -132,6 +132,7 @@ private slots:
// Bugs
void crashOnValueProperty();
+ void aliasPropertyBindings();
void copy();
private:
@@ -1308,6 +1309,74 @@ void tst_qdeclarativeproperty::crashOnValueProperty()
QCOMPARE(p.read(), QVariant(20));
}
+// QTBUG-13719
+void tst_qdeclarativeproperty::aliasPropertyBindings()
+{
+ QDeclarativeComponent component(&engine, TEST_FILE("aliasPropertyBindings.qml"));
+
+ QObject *object = component.create();
+ QVERIFY(object != 0);
+
+ QCOMPARE(object->property("realProperty").toReal(), 90.);
+ QCOMPARE(object->property("aliasProperty").toReal(), 90.);
+
+ object->setProperty("test", 10);
+
+ QCOMPARE(object->property("realProperty").toReal(), 110.);
+ QCOMPARE(object->property("aliasProperty").toReal(), 110.);
+
+ QDeclarativeProperty realProperty(object, QLatin1String("realProperty"));
+ QDeclarativeProperty aliasProperty(object, QLatin1String("aliasProperty"));
+
+ // Check there is a binding on these two properties
+ QVERIFY(QDeclarativePropertyPrivate::binding(realProperty) != 0);
+ QVERIFY(QDeclarativePropertyPrivate::binding(aliasProperty) != 0);
+
+ // Check that its the same binding on these two properties
+ QCOMPARE(QDeclarativePropertyPrivate::binding(realProperty),
+ QDeclarativePropertyPrivate::binding(aliasProperty));
+
+ // Change the binding
+ object->setProperty("state", QString("switch"));
+
+ QVERIFY(QDeclarativePropertyPrivate::binding(realProperty) != 0);
+ QVERIFY(QDeclarativePropertyPrivate::binding(aliasProperty) != 0);
+ QCOMPARE(QDeclarativePropertyPrivate::binding(realProperty),
+ QDeclarativePropertyPrivate::binding(aliasProperty));
+
+ QCOMPARE(object->property("realProperty").toReal(), 96.);
+ QCOMPARE(object->property("aliasProperty").toReal(), 96.);
+
+ // Check the old binding really has not effect any more
+ object->setProperty("test", 4);
+
+ QCOMPARE(object->property("realProperty").toReal(), 96.);
+ QCOMPARE(object->property("aliasProperty").toReal(), 96.);
+
+ object->setProperty("test2", 9);
+
+ QCOMPARE(object->property("realProperty").toReal(), 288.);
+ QCOMPARE(object->property("aliasProperty").toReal(), 288.);
+
+ // Revert
+ object->setProperty("state", QString(""));
+
+ QVERIFY(QDeclarativePropertyPrivate::binding(realProperty) != 0);
+ QVERIFY(QDeclarativePropertyPrivate::binding(aliasProperty) != 0);
+ QCOMPARE(QDeclarativePropertyPrivate::binding(realProperty),
+ QDeclarativePropertyPrivate::binding(aliasProperty));
+
+ QCOMPARE(object->property("realProperty").toReal(), 20.);
+ QCOMPARE(object->property("aliasProperty").toReal(), 20.);
+
+ object->setProperty("test2", 3);
+
+ QCOMPARE(object->property("realProperty").toReal(), 20.);
+ QCOMPARE(object->property("aliasProperty").toReal(), 20.);
+
+ delete object;
+}
+
void tst_qdeclarativeproperty::copy()
{
PropertyObject object;
diff --git a/tests/auto/declarative/qdeclarativevaluetypes/data/BindingsSpliceCorrectlyType.qml b/tests/auto/declarative/qdeclarativevaluetypes/data/BindingsSpliceCorrectlyType.qml
new file mode 100644
index 0000000000..f625d081e5
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativevaluetypes/data/BindingsSpliceCorrectlyType.qml
@@ -0,0 +1,7 @@
+import Test 1.0
+
+MyTypeObject {
+ property bool boldProperty: false
+
+ font.bold: boldProperty
+}
diff --git a/tests/auto/declarative/qdeclarativevaluetypes/data/BindingsSpliceCorrectlyType4.qml b/tests/auto/declarative/qdeclarativevaluetypes/data/BindingsSpliceCorrectlyType4.qml
new file mode 100644
index 0000000000..0bdccce5be
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativevaluetypes/data/BindingsSpliceCorrectlyType4.qml
@@ -0,0 +1,7 @@
+import Test 1.0
+
+MyTypeObject {
+ property int dataProperty: 7
+
+ point: Qt.point(dataProperty, dataProperty)
+}
diff --git a/tests/auto/declarative/qdeclarativevaluetypes/data/BindingsSpliceCorrectlyType5.qml b/tests/auto/declarative/qdeclarativevaluetypes/data/BindingsSpliceCorrectlyType5.qml
new file mode 100644
index 0000000000..151c49971e
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativevaluetypes/data/BindingsSpliceCorrectlyType5.qml
@@ -0,0 +1,7 @@
+import Test 1.0
+
+MyTypeObject {
+ property int dataProperty: 7
+
+ point.x: dataProperty
+}
diff --git a/tests/auto/declarative/qdeclarativevaluetypes/data/bindingsSpliceCorrectly.1.qml b/tests/auto/declarative/qdeclarativevaluetypes/data/bindingsSpliceCorrectly.1.qml
new file mode 100644
index 0000000000..70121435d4
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativevaluetypes/data/bindingsSpliceCorrectly.1.qml
@@ -0,0 +1,29 @@
+import Test 1.0
+import QtQuick 1.0
+
+BindingsSpliceCorrectlyType {
+ property bool test: false
+
+ property bool italicProperty: false
+
+ font.italic: italicProperty
+
+ Component.onCompleted: {
+ // Test initial state
+ if (font.italic != false) return;
+ if (font.bold != false) return;
+
+ // Test italic binding worked
+ italicProperty = true;
+
+ if (font.italic != true) return;
+ if (font.bold != false) return;
+
+ // Test bold binding worked
+ boldProperty = true;
+ if (font.italic != true) return;
+ if (font.bold != true) return;
+
+ test = true;
+ }
+}
diff --git a/tests/auto/declarative/qdeclarativevaluetypes/data/bindingsSpliceCorrectly.2.qml b/tests/auto/declarative/qdeclarativevaluetypes/data/bindingsSpliceCorrectly.2.qml
new file mode 100644
index 0000000000..69dbcab9f2
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativevaluetypes/data/bindingsSpliceCorrectly.2.qml
@@ -0,0 +1,31 @@
+import Test 1.0
+import QtQuick 1.0
+
+BindingsSpliceCorrectlyType {
+ property bool test: false
+
+ property bool italicProperty: false
+
+ font.italic: italicProperty
+ font.bold: false
+
+ Component.onCompleted: {
+ // Test initial state
+ if (font.italic != false) return;
+ if (font.bold != false) return;
+
+ // Test italic binding worked
+ italicProperty = true;
+
+ if (font.italic != true) return;
+ if (font.bold != false) return;
+
+ // Test bold binding was removed by constant write
+ boldProperty = true;
+ if (font.italic != true) return;
+ if (font.bold != false) return;
+
+ test = true;
+ }
+}
+
diff --git a/tests/auto/declarative/qdeclarativevaluetypes/data/bindingsSpliceCorrectly.3.qml b/tests/auto/declarative/qdeclarativevaluetypes/data/bindingsSpliceCorrectly.3.qml
new file mode 100644
index 0000000000..669feb99b2
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativevaluetypes/data/bindingsSpliceCorrectly.3.qml
@@ -0,0 +1,36 @@
+import Test 1.0
+import QtQuick 1.0
+
+BindingsSpliceCorrectlyType {
+ property bool test: false
+
+ property bool italicProperty: false
+ property bool boldProperty2: false
+
+ font.italic: italicProperty
+ font.bold: boldProperty2
+
+ Component.onCompleted: {
+ // Test initial state
+ if (font.italic != false) return;
+ if (font.bold != false) return;
+
+ // Test italic binding worked
+ italicProperty = true;
+
+ if (font.italic != true) return;
+ if (font.bold != false) return;
+
+ // Test bold binding was overridden
+ boldProperty = true;
+ if (font.italic != true) return;
+ if (font.bold != false) return;
+
+ boldProperty2 = true;
+ if (font.italic != true) return;
+ if (font.bold != true) return;
+
+ test = true;
+ }
+}
+
diff --git a/tests/auto/declarative/qdeclarativevaluetypes/data/bindingsSpliceCorrectly.4.qml b/tests/auto/declarative/qdeclarativevaluetypes/data/bindingsSpliceCorrectly.4.qml
new file mode 100644
index 0000000000..f28584f426
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativevaluetypes/data/bindingsSpliceCorrectly.4.qml
@@ -0,0 +1,27 @@
+import Test 1.0
+import QtQuick 1.0
+
+BindingsSpliceCorrectlyType4 {
+ property bool test: false
+
+ property int dataProperty2: 8
+
+ point.x: dataProperty2
+
+ Component.onCompleted: {
+ if (point.x != 8) return;
+ if (point.y != 4) return;
+
+ dataProperty = 9;
+
+ if (point.x != 8) return;
+ if (point.y != 4) return;
+
+ dataProperty2 = 13;
+
+ if (point.x != 13) return;
+ if (point.y != 4) return;
+
+ test = true;
+ }
+}
diff --git a/tests/auto/declarative/qdeclarativevaluetypes/data/bindingsSpliceCorrectly.5.qml b/tests/auto/declarative/qdeclarativevaluetypes/data/bindingsSpliceCorrectly.5.qml
new file mode 100644
index 0000000000..1214c83991
--- /dev/null
+++ b/tests/auto/declarative/qdeclarativevaluetypes/data/bindingsSpliceCorrectly.5.qml
@@ -0,0 +1,27 @@
+import Test 1.0
+import QtQuick 1.0
+
+BindingsSpliceCorrectlyType5 {
+ property bool test: false
+
+ property int dataProperty2: 8
+
+ point: Qt.point(dataProperty2, dataProperty2);
+
+ Component.onCompleted: {
+ if (point.x != 8) return;
+ if (point.y != 8) return;
+
+ dataProperty = 9;
+
+ if (point.x != 8) return;
+ if (point.y != 8) return;
+
+ dataProperty2 = 13;
+
+ if (point.x != 13) return;
+ if (point.y != 13) return;
+
+ test = true;
+ }
+}
diff --git a/tests/auto/declarative/qdeclarativevaluetypes/tst_qdeclarativevaluetypes.cpp b/tests/auto/declarative/qdeclarativevaluetypes/tst_qdeclarativevaluetypes.cpp
index a4819f3d82..c243a752d5 100644
--- a/tests/auto/declarative/qdeclarativevaluetypes/tst_qdeclarativevaluetypes.cpp
+++ b/tests/auto/declarative/qdeclarativevaluetypes/tst_qdeclarativevaluetypes.cpp
@@ -94,6 +94,7 @@ private slots:
void conflictingBindings();
void returnValues();
void varAssignment();
+ void bindingsSpliceCorrectly();
private:
QDeclarativeEngine engine;
@@ -942,6 +943,61 @@ void tst_qdeclarativevaluetypes::varAssignment()
delete object;
}
+// Test bindings splice together correctly
+void tst_qdeclarativevaluetypes::bindingsSpliceCorrectly()
+{
+ {
+ QDeclarativeComponent component(&engine, TEST_FILE("bindingsSpliceCorrectly.1.qml"));
+ QObject *object = component.create();
+ QVERIFY(object != 0);
+
+ QCOMPARE(object->property("test").toBool(), true);
+
+ delete object;
+ }
+
+ {
+ QDeclarativeComponent component(&engine, TEST_FILE("bindingsSpliceCorrectly.2.qml"));
+ QObject *object = component.create();
+ QVERIFY(object != 0);
+
+ QCOMPARE(object->property("test").toBool(), true);
+
+ delete object;
+ }
+
+
+ {
+ QDeclarativeComponent component(&engine, TEST_FILE("bindingsSpliceCorrectly.3.qml"));
+ QObject *object = component.create();
+ QVERIFY(object != 0);
+
+ QCOMPARE(object->property("test").toBool(), true);
+
+ delete object;
+ }
+
+ {
+ QDeclarativeComponent component(&engine, TEST_FILE("bindingsSpliceCorrectly.4.qml"));
+ QObject *object = component.create();
+ QVERIFY(object != 0);
+
+ QCOMPARE(object->property("test").toBool(), true);
+
+ delete object;
+ }
+
+ {
+ QDeclarativeComponent component(&engine, TEST_FILE("bindingsSpliceCorrectly.5.qml"));
+ QObject *object = component.create();
+ QVERIFY(object != 0);
+
+ QCOMPARE(object->property("test").toBool(), true);
+
+ delete object;
+ }
+}
+
QTEST_MAIN(tst_qdeclarativevaluetypes)
#include "tst_qdeclarativevaluetypes.moc"
diff --git a/tests/auto/declarative/qdeclarativeviewer/tst_qdeclarativeviewer.cpp b/tests/auto/declarative/qdeclarativeviewer/tst_qdeclarativeviewer.cpp
index 1c1c04bf64..f19eb0379b 100644
--- a/tests/auto/declarative/qdeclarativeviewer/tst_qdeclarativeviewer.cpp
+++ b/tests/auto/declarative/qdeclarativeviewer/tst_qdeclarativeviewer.cpp
@@ -45,6 +45,7 @@
#include <QtDeclarative/qdeclarativeitem.h>
#include <QtDeclarative/qdeclarativecontext.h>
#include <QtGui/qmenubar.h>
+#include <QSignalSpy>
#include "../../../shared/util.h"
#include "qmlruntime.h"
#include "deviceorientation.h"
@@ -194,7 +195,9 @@ void tst_QDeclarativeViewer::loading()
QCOMPARE(viewer->size(), QSize(250, 350));
QCOMPARE(viewer->size(), viewer->sizeHint());
+ QSignalSpy statusSpy(viewer->view(), SIGNAL(statusChanged(QDeclarativeView::Status)));
viewer->reload();
+ QTRY_VERIFY(statusSpy.count() == 1);
rootItem = qobject_cast<QDeclarativeItem*>(viewer->view()->rootObject());
QVERIFY(rootItem);
@@ -235,13 +238,25 @@ void tst_QDeclarativeViewer::loading()
delete viewer;
}
+static int numberOfWarnings = 0;
+static void checkWarnings(QtMsgType, const char *)
+{
+ numberOfWarnings++;
+}
+
void tst_QDeclarativeViewer::fileBrowser()
{
+ QtMsgHandler previousMsgHandler = qInstallMsgHandler(checkWarnings);
QDeclarativeViewer *viewer = new QDeclarativeViewer();
QVERIFY(viewer);
viewer->setUseNativeFileBrowser(false);
viewer->openFile();
viewer->show();
+ QCoreApplication::processEvents();
+ qInstallMsgHandler(previousMsgHandler);
+
+ // QTBUG-15720
+ QVERIFY(numberOfWarnings == 0);
QApplication::setActiveWindow(viewer);
QTest::qWaitForWindowShown(viewer);
diff --git a/tests/auto/declarative/qdeclarativevisualdatamodel/tst_qdeclarativevisualdatamodel.cpp b/tests/auto/declarative/qdeclarativevisualdatamodel/tst_qdeclarativevisualdatamodel.cpp
index 0aad099429..29a065c2b3 100644
--- a/tests/auto/declarative/qdeclarativevisualdatamodel/tst_qdeclarativevisualdatamodel.cpp
+++ b/tests/auto/declarative/qdeclarativevisualdatamodel/tst_qdeclarativevisualdatamodel.cpp
@@ -121,6 +121,7 @@ private slots:
void objectListModel();
void singleRole();
void modelProperties();
+ void noDelegate();
private:
QDeclarativeEngine engine;
@@ -472,6 +473,29 @@ void tst_qdeclarativevisualdatamodel::modelProperties()
//### should also test QStringList and QVariantList
}
+void tst_qdeclarativevisualdatamodel::noDelegate()
+{
+ QDeclarativeView view;
+
+ QStandardItemModel model;
+ initStandardTreeModel(&model);
+
+ view.rootContext()->setContextProperty("myModel", &model);
+
+ view.setSource(QUrl::fromLocalFile(SRCDIR "/data/datalist.qml"));
+
+ QDeclarativeListView *listview = qobject_cast<QDeclarativeListView*>(view.rootObject());
+ QVERIFY(listview != 0);
+
+ QDeclarativeVisualDataModel *vdm = listview->findChild<QDeclarativeVisualDataModel*>("visualModel");
+ QVERIFY(vdm != 0);
+ QCOMPARE(vdm->count(), 3);
+
+ vdm->setDelegate(0);
+ QCOMPARE(vdm->count(), 0);
+}
+
+
template<typename T>
T *tst_qdeclarativevisualdatamodel::findItem(QGraphicsObject *parent, const QString &objectName, int index)
{
diff --git a/tests/auto/declarative/qdeclarativeworkerscript/tst_qdeclarativeworkerscript.cpp b/tests/auto/declarative/qdeclarativeworkerscript/tst_qdeclarativeworkerscript.cpp
index 31402650e7..5a6cf3c887 100644
--- a/tests/auto/declarative/qdeclarativeworkerscript/tst_qdeclarativeworkerscript.cpp
+++ b/tests/auto/declarative/qdeclarativeworkerscript/tst_qdeclarativeworkerscript.cpp
@@ -137,6 +137,11 @@ void tst_QDeclarativeWorkerScript::messaging_data()
QTest::newRow("real") << qVariantFromValue(10334.375);
QTest::newRow("string") << qVariantFromValue(QString("More cheeeese, Gromit!"));
QTest::newRow("variant list") << qVariantFromValue((QVariantList() << "a" << "b" << "c"));
+ QTest::newRow("date time") << qVariantFromValue(QDateTime::currentDateTime());
+#ifndef QT_NO_REGEXP
+ // QtScript's QScriptValue -> QRegExp uses RegExp2 pattern syntax
+ QTest::newRow("regexp") << qVariantFromValue(QRegExp("^\\d\\d?$", Qt::CaseInsensitive, QRegExp::RegExp2));
+#endif
}
void tst_QDeclarativeWorkerScript::messaging_sendQObjectList()
diff --git a/tests/auto/declarative/qmlvisual/ListView/data/basic1.0.png b/tests/auto/declarative/qmlvisual/ListView/data/basic1.0.png
new file mode 100644
index 0000000000..049d9c8d6f
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/ListView/data/basic1.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/ListView/data/basic1.qml b/tests/auto/declarative/qmlvisual/ListView/data/basic1.qml
index 6670ae5908..aad4858ca4 100644
--- a/tests/auto/declarative/qmlvisual/ListView/data/basic1.qml
+++ b/tests/auto/declarative/qmlvisual/ListView/data/basic1.qml
@@ -6,78 +6,6 @@ VisualTest {
}
Frame {
msec: 16
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 32
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 48
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 64
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 80
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 96
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 112
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 128
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 144
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 160
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 176
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 192
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 208
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 224
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 240
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 256
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 272
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 288
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 304
- hash: "7b874555d744b10ed666dcb6fad79a19"
+ image: "basic1.0.png"
}
}
diff --git a/tests/auto/declarative/qmlvisual/ListView/data/basic2.0.png b/tests/auto/declarative/qmlvisual/ListView/data/basic2.0.png
new file mode 100644
index 0000000000..049d9c8d6f
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/ListView/data/basic2.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/ListView/data/basic2.qml b/tests/auto/declarative/qmlvisual/ListView/data/basic2.qml
index 283b44377b..373ad27cb3 100644
--- a/tests/auto/declarative/qmlvisual/ListView/data/basic2.qml
+++ b/tests/auto/declarative/qmlvisual/ListView/data/basic2.qml
@@ -6,162 +6,6 @@ VisualTest {
}
Frame {
msec: 16
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 32
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 48
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 64
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 80
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 96
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 112
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 128
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 144
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 160
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 176
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 192
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 208
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 224
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 240
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 256
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 272
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 288
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 304
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 320
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 336
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 352
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 368
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 384
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 400
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 416
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 432
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 448
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 464
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 480
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 496
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 512
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 528
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 544
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 560
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 576
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 592
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 608
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 624
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 640
- hash: "7b874555d744b10ed666dcb6fad79a19"
+ image: "basic2.0.png"
}
}
diff --git a/tests/auto/declarative/qmlvisual/ListView/data/basic3.0.png b/tests/auto/declarative/qmlvisual/ListView/data/basic3.0.png
new file mode 100644
index 0000000000..049d9c8d6f
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/ListView/data/basic3.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/ListView/data/basic3.qml b/tests/auto/declarative/qmlvisual/ListView/data/basic3.qml
index 2ee835a379..f5dbf65a43 100644
--- a/tests/auto/declarative/qmlvisual/ListView/data/basic3.qml
+++ b/tests/auto/declarative/qmlvisual/ListView/data/basic3.qml
@@ -6,114 +6,6 @@ VisualTest {
}
Frame {
msec: 16
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 32
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 48
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 64
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 80
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 96
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 112
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 128
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 144
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 160
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 176
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 192
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 208
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 224
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 240
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 256
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 272
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 288
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 304
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 320
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 336
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 352
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 368
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 384
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 400
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 416
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 432
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 448
- hash: "7b874555d744b10ed666dcb6fad79a19"
+ image: "basic3.0.png"
}
}
diff --git a/tests/auto/declarative/qmlvisual/ListView/data/basic4.0.png b/tests/auto/declarative/qmlvisual/ListView/data/basic4.0.png
new file mode 100644
index 0000000000..049d9c8d6f
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/ListView/data/basic4.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/ListView/data/basic4.qml b/tests/auto/declarative/qmlvisual/ListView/data/basic4.qml
index 3bbf8369c2..5e494d13a7 100644
--- a/tests/auto/declarative/qmlvisual/ListView/data/basic4.qml
+++ b/tests/auto/declarative/qmlvisual/ListView/data/basic4.qml
@@ -6,110 +6,6 @@ VisualTest {
}
Frame {
msec: 16
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 32
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 48
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 64
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 80
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 96
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 112
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 128
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 144
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 160
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 176
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 192
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 208
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 224
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 240
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 256
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 272
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 288
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 304
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 320
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 336
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 352
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 368
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 384
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 400
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 416
- hash: "7b874555d744b10ed666dcb6fad79a19"
- }
- Frame {
- msec: 432
- hash: "7b874555d744b10ed666dcb6fad79a19"
+ image: "basic4.0.png"
}
}
diff --git a/tests/auto/declarative/qmlvisual/ListView/data/enforcerange.0.png b/tests/auto/declarative/qmlvisual/ListView/data/enforcerange.0.png
index d466434eab..5c0b6a6a72 100644
--- a/tests/auto/declarative/qmlvisual/ListView/data/enforcerange.0.png
+++ b/tests/auto/declarative/qmlvisual/ListView/data/enforcerange.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/ListView/data/enforcerange.1.png b/tests/auto/declarative/qmlvisual/ListView/data/enforcerange.1.png
index 45d9712932..5c0b6a6a72 100644
--- a/tests/auto/declarative/qmlvisual/ListView/data/enforcerange.1.png
+++ b/tests/auto/declarative/qmlvisual/ListView/data/enforcerange.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/ListView/data/enforcerange.2.png b/tests/auto/declarative/qmlvisual/ListView/data/enforcerange.2.png
index 3f05a5eb2d..304aed8b34 100644
--- a/tests/auto/declarative/qmlvisual/ListView/data/enforcerange.2.png
+++ b/tests/auto/declarative/qmlvisual/ListView/data/enforcerange.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/ListView/data/enforcerange.3.png b/tests/auto/declarative/qmlvisual/ListView/data/enforcerange.3.png
index d466434eab..4abc58e03a 100644
--- a/tests/auto/declarative/qmlvisual/ListView/data/enforcerange.3.png
+++ b/tests/auto/declarative/qmlvisual/ListView/data/enforcerange.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/ListView/data/enforcerange.4.png b/tests/auto/declarative/qmlvisual/ListView/data/enforcerange.4.png
index c9026763af..5c0b6a6a72 100644
--- a/tests/auto/declarative/qmlvisual/ListView/data/enforcerange.4.png
+++ b/tests/auto/declarative/qmlvisual/ListView/data/enforcerange.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/ListView/data/enforcerange.5.png b/tests/auto/declarative/qmlvisual/ListView/data/enforcerange.5.png
index 45d9712932..8d421afa38 100644
--- a/tests/auto/declarative/qmlvisual/ListView/data/enforcerange.5.png
+++ b/tests/auto/declarative/qmlvisual/ListView/data/enforcerange.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/ListView/data/enforcerange.6.png b/tests/auto/declarative/qmlvisual/ListView/data/enforcerange.6.png
new file mode 100644
index 0000000000..81ea1ff41a
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/ListView/data/enforcerange.6.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/ListView/data/enforcerange.qml b/tests/auto/declarative/qmlvisual/ListView/data/enforcerange.qml
index 20ed077a89..de3f49c813 100644
--- a/tests/auto/declarative/qmlvisual/ListView/data/enforcerange.qml
+++ b/tests/auto/declarative/qmlvisual/ListView/data/enforcerange.qml
@@ -6,7 +6,7 @@ VisualTest {
}
Frame {
msec: 16
- hash: "19c43fcf2875769c9a15f1ce317a0f1e"
+ image: "enforcerange.0.png"
}
Frame {
msec: 32
@@ -242,11 +242,11 @@ VisualTest {
}
Frame {
msec: 960
- image: "enforcerange.0.png"
+ hash: "19c43fcf2875769c9a15f1ce317a0f1e"
}
Frame {
msec: 976
- hash: "19c43fcf2875769c9a15f1ce317a0f1e"
+ image: "enforcerange.1.png"
}
Frame {
msec: 992
@@ -602,11 +602,11 @@ VisualTest {
}
Frame {
msec: 1920
- image: "enforcerange.1.png"
+ hash: "b64810845a97bedf6fe11c043457c197"
}
Frame {
msec: 1936
- hash: "b64810845a97bedf6fe11c043457c197"
+ image: "enforcerange.2.png"
}
Frame {
msec: 1952
@@ -842,11 +842,11 @@ VisualTest {
}
Frame {
msec: 2880
- image: "enforcerange.2.png"
+ hash: "a4ff6c6c43697808f9ad7387d152cef3"
}
Frame {
msec: 2896
- hash: "a4ff6c6c43697808f9ad7387d152cef3"
+ image: "enforcerange.3.png"
}
Frame {
msec: 2912
@@ -1210,11 +1210,11 @@ VisualTest {
}
Frame {
msec: 3840
- image: "enforcerange.3.png"
+ hash: "19c43fcf2875769c9a15f1ce317a0f1e"
}
Frame {
msec: 3856
- hash: "19c43fcf2875769c9a15f1ce317a0f1e"
+ image: "enforcerange.4.png"
}
Frame {
msec: 3872
@@ -1650,11 +1650,11 @@ VisualTest {
}
Frame {
msec: 4800
- image: "enforcerange.4.png"
+ hash: "da5a30a6f9f40fbb5e2b150965be8ac0"
}
Frame {
msec: 4816
- hash: "7eb75e8e83874d52448a7dbf6a0ad29c"
+ image: "enforcerange.5.png"
}
Frame {
msec: 4832
@@ -1890,11 +1890,11 @@ VisualTest {
}
Frame {
msec: 5760
- image: "enforcerange.5.png"
+ hash: "b64810845a97bedf6fe11c043457c197"
}
Frame {
msec: 5776
- hash: "87aaa82b96131fed8822e57e226162a0"
+ image: "enforcerange.6.png"
}
Frame {
msec: 5792
diff --git a/tests/auto/declarative/qmlvisual/ListView/data/itemlist.0.png b/tests/auto/declarative/qmlvisual/ListView/data/itemlist.0.png
index 6a589c60da..75d2089cda 100644
--- a/tests/auto/declarative/qmlvisual/ListView/data/itemlist.0.png
+++ b/tests/auto/declarative/qmlvisual/ListView/data/itemlist.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/ListView/data/itemlist.1.png b/tests/auto/declarative/qmlvisual/ListView/data/itemlist.1.png
index a8957d646e..75d2089cda 100644
--- a/tests/auto/declarative/qmlvisual/ListView/data/itemlist.1.png
+++ b/tests/auto/declarative/qmlvisual/ListView/data/itemlist.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/ListView/data/itemlist.2.png b/tests/auto/declarative/qmlvisual/ListView/data/itemlist.2.png
index fe2d28b6a3..bc7dc2c489 100644
--- a/tests/auto/declarative/qmlvisual/ListView/data/itemlist.2.png
+++ b/tests/auto/declarative/qmlvisual/ListView/data/itemlist.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/ListView/data/itemlist.3.png b/tests/auto/declarative/qmlvisual/ListView/data/itemlist.3.png
index 0f20b07456..def378f40d 100644
--- a/tests/auto/declarative/qmlvisual/ListView/data/itemlist.3.png
+++ b/tests/auto/declarative/qmlvisual/ListView/data/itemlist.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/ListView/data/itemlist.4.png b/tests/auto/declarative/qmlvisual/ListView/data/itemlist.4.png
index fe2d28b6a3..e23b9033c8 100644
--- a/tests/auto/declarative/qmlvisual/ListView/data/itemlist.4.png
+++ b/tests/auto/declarative/qmlvisual/ListView/data/itemlist.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/ListView/data/itemlist.5.png b/tests/auto/declarative/qmlvisual/ListView/data/itemlist.5.png
index 0ab58c50c9..def378f40d 100644
--- a/tests/auto/declarative/qmlvisual/ListView/data/itemlist.5.png
+++ b/tests/auto/declarative/qmlvisual/ListView/data/itemlist.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/ListView/data/itemlist.6.png b/tests/auto/declarative/qmlvisual/ListView/data/itemlist.6.png
index 6a589c60da..b81e713aec 100644
--- a/tests/auto/declarative/qmlvisual/ListView/data/itemlist.6.png
+++ b/tests/auto/declarative/qmlvisual/ListView/data/itemlist.6.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/ListView/data/itemlist.7.png b/tests/auto/declarative/qmlvisual/ListView/data/itemlist.7.png
new file mode 100644
index 0000000000..75d2089cda
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/ListView/data/itemlist.7.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/ListView/data/itemlist.qml b/tests/auto/declarative/qmlvisual/ListView/data/itemlist.qml
index 6d09bc0028..6438e425b5 100644
--- a/tests/auto/declarative/qmlvisual/ListView/data/itemlist.qml
+++ b/tests/auto/declarative/qmlvisual/ListView/data/itemlist.qml
@@ -6,7 +6,7 @@ VisualTest {
}
Frame {
msec: 16
- hash: "bf47cc398a702dd17c8efebb3d2f8073"
+ image: "itemlist.0.png"
}
Frame {
msec: 32
@@ -242,11 +242,11 @@ VisualTest {
}
Frame {
msec: 960
- image: "itemlist.0.png"
+ hash: "bf47cc398a702dd17c8efebb3d2f8073"
}
Frame {
msec: 976
- hash: "bf47cc398a702dd17c8efebb3d2f8073"
+ image: "itemlist.1.png"
}
Frame {
msec: 992
@@ -602,11 +602,11 @@ VisualTest {
}
Frame {
msec: 1920
- image: "itemlist.1.png"
+ hash: "75ab445a739fb2415e20e8997b043656"
}
Frame {
msec: 1936
- hash: "c23846634417c3e8dbbef5175036c071"
+ image: "itemlist.2.png"
}
Frame {
msec: 1952
@@ -850,11 +850,11 @@ VisualTest {
}
Frame {
msec: 2880
- image: "itemlist.2.png"
+ hash: "99f9988040a389576cb6420b5391f768"
}
Frame {
msec: 2896
- hash: "99f9988040a389576cb6420b5391f768"
+ image: "itemlist.3.png"
}
Mouse {
type: 5
@@ -1170,11 +1170,11 @@ VisualTest {
}
Frame {
msec: 3840
- image: "itemlist.3.png"
+ hash: "88143ff6c278a5433b314b551b7b8b1d"
}
Frame {
msec: 3856
- hash: "88143ff6c278a5433b314b551b7b8b1d"
+ image: "itemlist.4.png"
}
Frame {
msec: 3872
@@ -1490,11 +1490,11 @@ VisualTest {
}
Frame {
msec: 4800
- image: "itemlist.4.png"
+ hash: "99f9988040a389576cb6420b5391f768"
}
Frame {
msec: 4816
- hash: "99f9988040a389576cb6420b5391f768"
+ image: "itemlist.5.png"
}
Frame {
msec: 4832
@@ -1810,11 +1810,11 @@ VisualTest {
}
Frame {
msec: 5760
- image: "itemlist.5.png"
+ hash: "35fe67a91e50f8ebc896451b39cb8f1c"
}
Frame {
msec: 5776
- hash: "35fe67a91e50f8ebc896451b39cb8f1c"
+ image: "itemlist.6.png"
}
Frame {
msec: 5792
@@ -2050,11 +2050,11 @@ VisualTest {
}
Frame {
msec: 6720
- image: "itemlist.6.png"
+ hash: "bf47cc398a702dd17c8efebb3d2f8073"
}
Frame {
msec: 6736
- hash: "bf47cc398a702dd17c8efebb3d2f8073"
+ image: "itemlist.7.png"
}
Frame {
msec: 6752
diff --git a/tests/auto/declarative/qmlvisual/ListView/data/listview.0.png b/tests/auto/declarative/qmlvisual/ListView/data/listview.0.png
index c7fa6954f8..71926d71d4 100644
--- a/tests/auto/declarative/qmlvisual/ListView/data/listview.0.png
+++ b/tests/auto/declarative/qmlvisual/ListView/data/listview.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/ListView/data/listview.1.png b/tests/auto/declarative/qmlvisual/ListView/data/listview.1.png
index b6c5e19d76..80f82e4178 100644
--- a/tests/auto/declarative/qmlvisual/ListView/data/listview.1.png
+++ b/tests/auto/declarative/qmlvisual/ListView/data/listview.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/ListView/data/listview.2.png b/tests/auto/declarative/qmlvisual/ListView/data/listview.2.png
index 711c47a029..61501bb17e 100644
--- a/tests/auto/declarative/qmlvisual/ListView/data/listview.2.png
+++ b/tests/auto/declarative/qmlvisual/ListView/data/listview.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/ListView/data/listview.3.png b/tests/auto/declarative/qmlvisual/ListView/data/listview.3.png
index e56fae0ac1..51c4eb137c 100644
--- a/tests/auto/declarative/qmlvisual/ListView/data/listview.3.png
+++ b/tests/auto/declarative/qmlvisual/ListView/data/listview.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/ListView/data/listview.4.png b/tests/auto/declarative/qmlvisual/ListView/data/listview.4.png
index 0030842b9a..81e00ed6bf 100644
--- a/tests/auto/declarative/qmlvisual/ListView/data/listview.4.png
+++ b/tests/auto/declarative/qmlvisual/ListView/data/listview.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/ListView/data/listview.5.png b/tests/auto/declarative/qmlvisual/ListView/data/listview.5.png
index 2ec8177be8..63a594e64f 100644
--- a/tests/auto/declarative/qmlvisual/ListView/data/listview.5.png
+++ b/tests/auto/declarative/qmlvisual/ListView/data/listview.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/ListView/data/listview.6.png b/tests/auto/declarative/qmlvisual/ListView/data/listview.6.png
index 38ed52594c..05e24c6ec8 100644
--- a/tests/auto/declarative/qmlvisual/ListView/data/listview.6.png
+++ b/tests/auto/declarative/qmlvisual/ListView/data/listview.6.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/ListView/data/listview.qml b/tests/auto/declarative/qmlvisual/ListView/data/listview.qml
index 45f96e1614..059128dfe9 100644
--- a/tests/auto/declarative/qmlvisual/ListView/data/listview.qml
+++ b/tests/auto/declarative/qmlvisual/ListView/data/listview.qml
@@ -6,7 +6,7 @@ VisualTest {
}
Frame {
msec: 16
- hash: "3b88645092be28037fca4a6034f5b2f7"
+ image: "listview.0.png"
}
Frame {
msec: 32
@@ -298,11 +298,11 @@ VisualTest {
}
Frame {
msec: 960
- image: "listview.0.png"
+ hash: "d193987835dc12e4391e55ff5fee4ce1"
}
Frame {
msec: 976
- hash: "e15814643bad6a71cb8c318ee5fd684a"
+ image: "listview.1.png"
}
Key {
type: 7
@@ -650,11 +650,11 @@ VisualTest {
}
Frame {
msec: 1920
- image: "listview.1.png"
+ hash: "02f34b6fde613c7c5928285bf81837d6"
}
Frame {
msec: 1936
- hash: "fae571933c4eafb33bb764bd1cddfc30"
+ image: "listview.2.png"
}
Key {
type: 7
@@ -1034,11 +1034,11 @@ VisualTest {
}
Frame {
msec: 2880
- image: "listview.2.png"
+ hash: "5387de4152cac542735a4debf997b56f"
}
Frame {
msec: 2896
- hash: "6ceadf740293537c7b9f2e2cfe8e6f1e"
+ image: "listview.3.png"
}
Frame {
msec: 2912
@@ -1394,7 +1394,7 @@ VisualTest {
}
Frame {
msec: 3840
- image: "listview.3.png"
+ hash: "294e6961316b028201657ab6b244559f"
}
Mouse {
type: 5
@@ -1406,7 +1406,7 @@ VisualTest {
}
Frame {
msec: 3856
- hash: "58e61d0a4f397c5a2b137d6a6e85d99b"
+ image: "listview.4.png"
}
Mouse {
type: 5
@@ -1550,7 +1550,7 @@ VisualTest {
}
Frame {
msec: 4240
- hash: "ad913e53e63c030ffdf4560766722760"
+ hash: "84b477b46c313d6dcb0a77628182905b"
}
Mouse {
type: 5
@@ -1570,7 +1570,7 @@ VisualTest {
}
Frame {
msec: 4256
- hash: "ef31f8a4d5bde5a2e308d19ee6d5e759"
+ hash: "281c0499db31ca78175ca7af6292b853"
}
Mouse {
type: 5
@@ -1582,7 +1582,7 @@ VisualTest {
}
Frame {
msec: 4272
- hash: "3ba07527f66e8bea5a8fb7647b0b4f3f"
+ hash: "5c29d61f037e4636988fdc99ee2ed8a4"
}
Mouse {
type: 5
@@ -1594,7 +1594,7 @@ VisualTest {
}
Frame {
msec: 4288
- hash: "70e5fe656f5fd843383964825690b678"
+ hash: "a18f5e9f7be932dcd1bcb4c7fe0797e8"
}
Mouse {
type: 5
@@ -1614,7 +1614,7 @@ VisualTest {
}
Frame {
msec: 4304
- hash: "b7d8738be4cd6caa63dbecdb0f810a2f"
+ hash: "85a4130b4a57ef79e90d350cf4816801"
}
Mouse {
type: 5
@@ -1626,7 +1626,7 @@ VisualTest {
}
Frame {
msec: 4320
- hash: "d6312191f9d7bbddc07f9253d8a93469"
+ hash: "364dd89fd6f96e1c77723436c7078a7b"
}
Mouse {
type: 5
@@ -1638,7 +1638,7 @@ VisualTest {
}
Frame {
msec: 4336
- hash: "b182da64886cf4f444296e5fde26701e"
+ hash: "3e37312c45aa92de34d9661f9b482c48"
}
Mouse {
type: 5
@@ -1650,7 +1650,7 @@ VisualTest {
}
Frame {
msec: 4352
- hash: "ebefef14b6fb990e0c6900884528bbd3"
+ hash: "dc2d63ad430ea6214f962629793925f3"
}
Mouse {
type: 5
@@ -1662,7 +1662,7 @@ VisualTest {
}
Frame {
msec: 4368
- hash: "9a3451ed091b1bb6b975a9c5506b1ea4"
+ hash: "188fe1e6af9d02b2680426127ef1d39e"
}
Mouse {
type: 5
@@ -1674,7 +1674,7 @@ VisualTest {
}
Frame {
msec: 4384
- hash: "04290d8d62436c8a812f886e0a56ec1b"
+ hash: "bdb784f5ccf428f8b8a9d29310069808"
}
Mouse {
type: 5
@@ -1686,7 +1686,7 @@ VisualTest {
}
Frame {
msec: 4400
- hash: "eaaf9ea1d7fcf4a2a9dd58b1b5bb3cae"
+ hash: "bb74813667f49b15978aa78843436205"
}
Mouse {
type: 5
@@ -1698,7 +1698,7 @@ VisualTest {
}
Frame {
msec: 4416
- hash: "7ca8e3d76cf913d85f84f0b96acde829"
+ hash: "8e88500470517ed1d7c3ca10edd4e230"
}
Mouse {
type: 5
@@ -1710,7 +1710,7 @@ VisualTest {
}
Frame {
msec: 4432
- hash: "7cfef56b24a552c6d4ecb3d0b88a1d08"
+ hash: "614dc45593db51f467adeda87d84f9a4"
}
Mouse {
type: 5
@@ -1730,7 +1730,7 @@ VisualTest {
}
Frame {
msec: 4448
- hash: "d032b257259810b4fe514c63ca5c9e4b"
+ hash: "b170583b9b284debdd04af643752aa6b"
}
Mouse {
type: 5
@@ -1742,7 +1742,7 @@ VisualTest {
}
Frame {
msec: 4464
- hash: "568f6a57e6f1644b0dc245d03a1d7b85"
+ hash: "dba0394b92f3ee166bc397439a86e6dc"
}
Mouse {
type: 5
@@ -1754,99 +1754,99 @@ VisualTest {
}
Frame {
msec: 4480
- hash: "5cb4cf2c527d821db2a5072dd3702653"
+ hash: "74b499d5d764bf53efbee8932bab3cc3"
}
Frame {
msec: 4496
- hash: "5cb4cf2c527d821db2a5072dd3702653"
+ hash: "74b499d5d764bf53efbee8932bab3cc3"
}
Frame {
msec: 4512
- hash: "5cb4cf2c527d821db2a5072dd3702653"
+ hash: "74b499d5d764bf53efbee8932bab3cc3"
}
Frame {
msec: 4528
- hash: "5cb4cf2c527d821db2a5072dd3702653"
+ hash: "74b499d5d764bf53efbee8932bab3cc3"
}
Frame {
msec: 4544
- hash: "5cb4cf2c527d821db2a5072dd3702653"
+ hash: "74b499d5d764bf53efbee8932bab3cc3"
}
Frame {
msec: 4560
- hash: "5cb4cf2c527d821db2a5072dd3702653"
+ hash: "74b499d5d764bf53efbee8932bab3cc3"
}
Frame {
msec: 4576
- hash: "5cb4cf2c527d821db2a5072dd3702653"
+ hash: "74b499d5d764bf53efbee8932bab3cc3"
}
Frame {
msec: 4592
- hash: "5cb4cf2c527d821db2a5072dd3702653"
+ hash: "74b499d5d764bf53efbee8932bab3cc3"
}
Frame {
msec: 4608
- hash: "5cb4cf2c527d821db2a5072dd3702653"
+ hash: "74b499d5d764bf53efbee8932bab3cc3"
}
Frame {
msec: 4624
- hash: "5cb4cf2c527d821db2a5072dd3702653"
+ hash: "74b499d5d764bf53efbee8932bab3cc3"
}
Frame {
msec: 4640
- hash: "5cb4cf2c527d821db2a5072dd3702653"
+ hash: "74b499d5d764bf53efbee8932bab3cc3"
}
Frame {
msec: 4656
- hash: "5cb4cf2c527d821db2a5072dd3702653"
+ hash: "74b499d5d764bf53efbee8932bab3cc3"
}
Frame {
msec: 4672
- hash: "5cb4cf2c527d821db2a5072dd3702653"
+ hash: "74b499d5d764bf53efbee8932bab3cc3"
}
Frame {
msec: 4688
- hash: "5cb4cf2c527d821db2a5072dd3702653"
+ hash: "74b499d5d764bf53efbee8932bab3cc3"
}
Frame {
msec: 4704
- hash: "5cb4cf2c527d821db2a5072dd3702653"
+ hash: "74b499d5d764bf53efbee8932bab3cc3"
}
Frame {
msec: 4720
- hash: "5cb4cf2c527d821db2a5072dd3702653"
+ hash: "74b499d5d764bf53efbee8932bab3cc3"
}
Frame {
msec: 4736
- hash: "5cb4cf2c527d821db2a5072dd3702653"
+ hash: "74b499d5d764bf53efbee8932bab3cc3"
}
Frame {
msec: 4752
- hash: "5cb4cf2c527d821db2a5072dd3702653"
+ hash: "74b499d5d764bf53efbee8932bab3cc3"
}
Frame {
msec: 4768
- hash: "5cb4cf2c527d821db2a5072dd3702653"
+ hash: "74b499d5d764bf53efbee8932bab3cc3"
}
Frame {
msec: 4784
- hash: "5cb4cf2c527d821db2a5072dd3702653"
+ hash: "74b499d5d764bf53efbee8932bab3cc3"
}
Frame {
msec: 4800
- image: "listview.4.png"
+ hash: "74b499d5d764bf53efbee8932bab3cc3"
}
Frame {
msec: 4816
- hash: "5cb4cf2c527d821db2a5072dd3702653"
+ image: "listview.5.png"
}
Frame {
msec: 4832
- hash: "5cb4cf2c527d821db2a5072dd3702653"
+ hash: "74b499d5d764bf53efbee8932bab3cc3"
}
Frame {
msec: 4848
- hash: "5cb4cf2c527d821db2a5072dd3702653"
+ hash: "74b499d5d764bf53efbee8932bab3cc3"
}
Mouse {
type: 5
@@ -1866,7 +1866,7 @@ VisualTest {
}
Frame {
msec: 4864
- hash: "d48ecbd0661e08b2117fe2fd96ffeb2c"
+ hash: "95ab953fc04389396da9a38d97262d98"
}
Mouse {
type: 5
@@ -1878,7 +1878,7 @@ VisualTest {
}
Frame {
msec: 4880
- hash: "7cfef56b24a552c6d4ecb3d0b88a1d08"
+ hash: "614dc45593db51f467adeda87d84f9a4"
}
Mouse {
type: 5
@@ -1890,7 +1890,7 @@ VisualTest {
}
Frame {
msec: 4896
- hash: "5b12e9d17d9d464b055601db9cf0da44"
+ hash: "0d884cdb22e3668203d07c72055bcb85"
}
Mouse {
type: 5
@@ -1902,7 +1902,7 @@ VisualTest {
}
Frame {
msec: 4912
- hash: "25333e1f0cc9cfc664fd7369af544c06"
+ hash: "23bd71236829253fb3ef18ebc9dd3136"
}
Mouse {
type: 5
@@ -1914,39 +1914,39 @@ VisualTest {
}
Frame {
msec: 4928
- hash: "04290d8d62436c8a812f886e0a56ec1b"
+ hash: "bdb784f5ccf428f8b8a9d29310069808"
}
Frame {
msec: 4944
- hash: "04290d8d62436c8a812f886e0a56ec1b"
+ hash: "bdb784f5ccf428f8b8a9d29310069808"
}
Frame {
msec: 4960
- hash: "04290d8d62436c8a812f886e0a56ec1b"
+ hash: "bdb784f5ccf428f8b8a9d29310069808"
}
Frame {
msec: 4976
- hash: "04290d8d62436c8a812f886e0a56ec1b"
+ hash: "bdb784f5ccf428f8b8a9d29310069808"
}
Frame {
msec: 4992
- hash: "04290d8d62436c8a812f886e0a56ec1b"
+ hash: "bdb784f5ccf428f8b8a9d29310069808"
}
Frame {
msec: 5008
- hash: "04290d8d62436c8a812f886e0a56ec1b"
+ hash: "bdb784f5ccf428f8b8a9d29310069808"
}
Frame {
msec: 5024
- hash: "04290d8d62436c8a812f886e0a56ec1b"
+ hash: "bdb784f5ccf428f8b8a9d29310069808"
}
Frame {
msec: 5040
- hash: "04290d8d62436c8a812f886e0a56ec1b"
+ hash: "bdb784f5ccf428f8b8a9d29310069808"
}
Frame {
msec: 5056
- hash: "04290d8d62436c8a812f886e0a56ec1b"
+ hash: "bdb784f5ccf428f8b8a9d29310069808"
}
Mouse {
type: 3
@@ -1958,270 +1958,270 @@ VisualTest {
}
Frame {
msec: 5072
- hash: "04290d8d62436c8a812f886e0a56ec1b"
+ hash: "bdb784f5ccf428f8b8a9d29310069808"
}
Frame {
msec: 5088
- hash: "04290d8d62436c8a812f886e0a56ec1b"
+ hash: "bdb784f5ccf428f8b8a9d29310069808"
}
Frame {
msec: 5104
- hash: "04290d8d62436c8a812f886e0a56ec1b"
+ hash: "bdb784f5ccf428f8b8a9d29310069808"
}
Frame {
msec: 5120
- hash: "04290d8d62436c8a812f886e0a56ec1b"
+ hash: "bdb784f5ccf428f8b8a9d29310069808"
}
Frame {
msec: 5136
- hash: "04290d8d62436c8a812f886e0a56ec1b"
+ hash: "bdb784f5ccf428f8b8a9d29310069808"
}
Frame {
msec: 5152
- hash: "04290d8d62436c8a812f886e0a56ec1b"
+ hash: "bdb784f5ccf428f8b8a9d29310069808"
}
Frame {
msec: 5168
- hash: "04290d8d62436c8a812f886e0a56ec1b"
+ hash: "bdb784f5ccf428f8b8a9d29310069808"
}
Frame {
msec: 5184
- hash: "04290d8d62436c8a812f886e0a56ec1b"
+ hash: "bdb784f5ccf428f8b8a9d29310069808"
}
Frame {
msec: 5200
- hash: "04290d8d62436c8a812f886e0a56ec1b"
+ hash: "bdb784f5ccf428f8b8a9d29310069808"
}
Frame {
msec: 5216
- hash: "04290d8d62436c8a812f886e0a56ec1b"
+ hash: "bdb784f5ccf428f8b8a9d29310069808"
}
Frame {
msec: 5232
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5248
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5264
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5280
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5296
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5312
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5328
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5344
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5360
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5376
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5392
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5408
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5424
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5440
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5456
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5472
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5488
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5504
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5520
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5536
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5552
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5568
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5584
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5600
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5616
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5632
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5648
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5664
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5680
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5696
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5712
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5728
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5744
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5760
- image: "listview.5.png"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5776
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ image: "listview.6.png"
}
Frame {
msec: 5792
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5808
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5824
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5840
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5856
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5872
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5888
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5904
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5920
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5936
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5952
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5968
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 5984
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 6000
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 6016
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 6032
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 6048
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 6064
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 6080
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 6096
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 6112
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
Frame {
msec: 6128
- hash: "dbd87bf02d698b7f053d307ef0c98452"
+ hash: "9ba43cbdd92c077f64e4a59c6c1c42ac"
}
}
diff --git a/tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.0.png b/tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.0.png
index f94e879839..85f86916b8 100644
--- a/tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.0.png
+++ b/tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.1.png b/tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.1.png
index 521e818775..3cbb470e0e 100644
--- a/tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.1.png
+++ b/tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.2.png b/tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.2.png
index 645abf816f..521e818775 100644
--- a/tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.2.png
+++ b/tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.3.png b/tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.3.png
index 517331abed..f5e76401dc 100644
--- a/tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.3.png
+++ b/tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.4.png b/tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.4.png
index 806063fd26..7b0c620fdf 100644
--- a/tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.4.png
+++ b/tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.5.png b/tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.5.png
index 8dfcf7bad8..8c40a7a757 100644
--- a/tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.5.png
+++ b/tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.6.png b/tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.6.png
new file mode 100644
index 0000000000..8dfcf7bad8
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.6.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.qml b/tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.qml
index 18043827ba..af9e005c2d 100644
--- a/tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.qml
+++ b/tests/auto/declarative/qmlvisual/Package_Views/data/packageviews.qml
@@ -6,7 +6,7 @@ VisualTest {
}
Frame {
msec: 16
- hash: "7cf95f1bc67a90c0df788787589a75a9"
+ image: "packageviews.0.png"
}
Frame {
msec: 32
@@ -258,11 +258,11 @@ VisualTest {
}
Frame {
msec: 960
- image: "packageviews.0.png"
+ hash: "9748e4da669f474bf10abfe7a9c013fd"
}
Frame {
msec: 976
- hash: "856cbf02e052f9b08a02608128af818d"
+ image: "packageviews.1.png"
}
Frame {
msec: 992
@@ -530,11 +530,11 @@ VisualTest {
}
Frame {
msec: 1920
- image: "packageviews.1.png"
+ hash: "6056cb02b921b56c63696d7fe9fe90fa"
}
Frame {
msec: 1936
- hash: "6056cb02b921b56c63696d7fe9fe90fa"
+ image: "packageviews.2.png"
}
Frame {
msec: 1952
@@ -818,11 +818,11 @@ VisualTest {
}
Frame {
msec: 2880
- image: "packageviews.2.png"
+ hash: "7bb02b032c1dcb4a7b3e6604ea5a8a8d"
}
Frame {
msec: 2896
- hash: "80eba5bc28e88ab12e195555f76bef1c"
+ image: "packageviews.3.png"
}
Frame {
msec: 2912
@@ -1114,11 +1114,11 @@ VisualTest {
}
Frame {
msec: 3840
- image: "packageviews.3.png"
+ hash: "6dbc00069eca813c20731afdf0d25e35"
}
Frame {
msec: 3856
- hash: "126b19793c902cf8848824fe4a38fe0c"
+ image: "packageviews.4.png"
}
Frame {
msec: 3872
@@ -1426,11 +1426,11 @@ VisualTest {
}
Frame {
msec: 4800
- image: "packageviews.4.png"
+ hash: "a703cbbef38b49be2d3033163ad450e7"
}
Frame {
msec: 4816
- hash: "63158568d5fdf558d0192809da0cf5fe"
+ image: "packageviews.5.png"
}
Frame {
msec: 4832
@@ -1714,11 +1714,11 @@ VisualTest {
}
Frame {
msec: 5760
- image: "packageviews.5.png"
+ hash: "8d52a504170547407fad6d8785b7199b"
}
Frame {
msec: 5776
- hash: "8d52a504170547407fad6d8785b7199b"
+ image: "packageviews.6.png"
}
Frame {
msec: 5792
diff --git a/tests/auto/declarative/qmlvisual/TEST_GUIDELINES b/tests/auto/declarative/qmlvisual/TEST_GUIDELINES
new file mode 100644
index 0000000000..469832f501
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/TEST_GUIDELINES
@@ -0,0 +1,7 @@
+Guidelines for creating new visual tests:
+
+1. Keep it small. All visual tests should be able to run on a device with a screen of at least 640x360 pixels. Smaller than that is even better, because images of this side need to be processed and saved for every test (and even committed to the repository).
+
+2. Keep it short. It is hoped that these tests can be run regularly, perhaps even for every commit, and if you add up ten seconds for every time someone commits a change to QML then we'll be sitting here for a long time. Completeness is more important than haste, but consider the most time efficient ways to achieve said completeness. Do not forget about snapshot mode (tst_qmlvisual -help for details on -recordsnapshot) when testing that a static scene looks right.
+
+3. Avoid text. Text is relatively unstable due to platform specific peculiarities. If you need to identify an area, consider a unique color as opposed to a unique text label. If you must use Text, TextEdit, or TextInput, use the test-friendlier versions in the 'shared' directory. Also keep in mind that text anti-aliasing is disabled during tests for greater consistency, and you should never use point sizes in tests. Text autotests can thus only test some aspects of the elements.
diff --git a/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.0.png b/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.0.png
index cba9bce6b0..24c11beead 100644
--- a/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.0.png
+++ b/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.1.png b/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.1.png
index 4080c80855..82492d4998 100644
--- a/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.1.png
+++ b/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.2.png b/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.2.png
index 61fec3d987..a31f02a3ed 100644
--- a/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.2.png
+++ b/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.3.png b/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.3.png
index 900156f67d..a029af69ed 100644
--- a/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.3.png
+++ b/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.qml b/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.qml
index b4c7542566..be0637e47a 100644
--- a/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.qml
+++ b/tests/auto/declarative/qmlvisual/animation/bindinganimation/data/bindinganimation.qml
@@ -6,7 +6,7 @@ VisualTest {
}
Frame {
msec: 16
- hash: "7cb5fc371040e587de9f06ce14a4b29a"
+ image: "bindinganimation.0.png"
}
Frame {
msec: 32
@@ -250,11 +250,11 @@ VisualTest {
}
Frame {
msec: 960
- image: "bindinganimation.0.png"
+ hash: "383ba6b9efcc58fca512982a207631f6"
}
Frame {
msec: 976
- hash: "383ba6b9efcc58fca512982a207631f6"
+ image: "bindinganimation.1.png"
}
Frame {
msec: 992
@@ -506,11 +506,11 @@ VisualTest {
}
Frame {
msec: 1920
- image: "bindinganimation.1.png"
+ hash: "abc2ec0bc7a93e75b5823310e6284db1"
}
Frame {
msec: 1936
- hash: "afbd5b24e2f86646f5ec2aa22f3a4b5b"
+ image: "bindinganimation.2.png"
}
Frame {
msec: 1952
@@ -810,11 +810,11 @@ VisualTest {
}
Frame {
msec: 2880
- image: "bindinganimation.2.png"
+ hash: "82363265ed2b611a54f8d48b2af22f11"
}
Frame {
msec: 2896
- hash: "f9deee3a204c939562b896a6179743d2"
+ image: "bindinganimation.3.png"
}
Frame {
msec: 2912
diff --git a/tests/auto/declarative/qmlvisual/animation/colorAnimation/data-X11/colorAnimation-visual.0.png b/tests/auto/declarative/qmlvisual/animation/colorAnimation/data-X11/colorAnimation-visual.0.png
index c5e802926e..99748a7a3c 100644
--- a/tests/auto/declarative/qmlvisual/animation/colorAnimation/data-X11/colorAnimation-visual.0.png
+++ b/tests/auto/declarative/qmlvisual/animation/colorAnimation/data-X11/colorAnimation-visual.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/colorAnimation/data-X11/colorAnimation-visual.1.png b/tests/auto/declarative/qmlvisual/animation/colorAnimation/data-X11/colorAnimation-visual.1.png
index b0f69c28b7..5393dd83c9 100644
--- a/tests/auto/declarative/qmlvisual/animation/colorAnimation/data-X11/colorAnimation-visual.1.png
+++ b/tests/auto/declarative/qmlvisual/animation/colorAnimation/data-X11/colorAnimation-visual.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/colorAnimation/data-X11/colorAnimation-visual.2.png b/tests/auto/declarative/qmlvisual/animation/colorAnimation/data-X11/colorAnimation-visual.2.png
index 1317eef8a7..8c17bf7679 100644
--- a/tests/auto/declarative/qmlvisual/animation/colorAnimation/data-X11/colorAnimation-visual.2.png
+++ b/tests/auto/declarative/qmlvisual/animation/colorAnimation/data-X11/colorAnimation-visual.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/colorAnimation/data-X11/colorAnimation-visual.3.png b/tests/auto/declarative/qmlvisual/animation/colorAnimation/data-X11/colorAnimation-visual.3.png
new file mode 100644
index 0000000000..1317eef8a7
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/animation/colorAnimation/data-X11/colorAnimation-visual.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/colorAnimation/data-X11/colorAnimation-visual.qml b/tests/auto/declarative/qmlvisual/animation/colorAnimation/data-X11/colorAnimation-visual.qml
index eb4564c89e..930f08f79e 100644
--- a/tests/auto/declarative/qmlvisual/animation/colorAnimation/data-X11/colorAnimation-visual.qml
+++ b/tests/auto/declarative/qmlvisual/animation/colorAnimation/data-X11/colorAnimation-visual.qml
@@ -6,7 +6,7 @@ VisualTest {
}
Frame {
msec: 16
- hash: "acc736435c9f84aa82941ba561bc5dbc"
+ image: "colorAnimation-visual.0.png"
}
Frame {
msec: 32
@@ -258,11 +258,11 @@ VisualTest {
}
Frame {
msec: 960
- image: "colorAnimation-visual.0.png"
+ hash: "2d133e7ee60c97386f57838b3f0976c7"
}
Frame {
msec: 976
- hash: "85b1821cc50f2a9f3ed6944f792b7a2f"
+ image: "colorAnimation-visual.1.png"
}
Frame {
msec: 992
@@ -498,11 +498,11 @@ VisualTest {
}
Frame {
msec: 1920
- image: "colorAnimation-visual.1.png"
+ hash: "02bafb5a81ca66f7670ac93de5123860"
}
Frame {
msec: 1936
- hash: "e7aa6374c73832e57ceb2427a1e258aa"
+ image: "colorAnimation-visual.2.png"
}
Frame {
msec: 1952
@@ -738,11 +738,11 @@ VisualTest {
}
Frame {
msec: 2880
- image: "colorAnimation-visual.2.png"
+ hash: "8c0fcda4f8956394c53fc4ba18caa850"
}
Frame {
msec: 2896
- hash: "8c0fcda4f8956394c53fc4ba18caa850"
+ image: "colorAnimation-visual.3.png"
}
Frame {
msec: 2912
@@ -931,7 +931,7 @@ VisualTest {
Key {
type: 6
key: 16777249
- modifiers: 0
+ modifiers: 67108864
text: ""
autorep: false
count: 1
diff --git a/tests/auto/declarative/qmlvisual/animation/colorAnimation/data/colorAnimation-visual.0.png b/tests/auto/declarative/qmlvisual/animation/colorAnimation/data/colorAnimation-visual.0.png
index e6ea16d16b..2a79113d0b 100644
--- a/tests/auto/declarative/qmlvisual/animation/colorAnimation/data/colorAnimation-visual.0.png
+++ b/tests/auto/declarative/qmlvisual/animation/colorAnimation/data/colorAnimation-visual.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/colorAnimation/data/colorAnimation-visual.1.png b/tests/auto/declarative/qmlvisual/animation/colorAnimation/data/colorAnimation-visual.1.png
index b75ba616fe..ebd1802325 100644
--- a/tests/auto/declarative/qmlvisual/animation/colorAnimation/data/colorAnimation-visual.1.png
+++ b/tests/auto/declarative/qmlvisual/animation/colorAnimation/data/colorAnimation-visual.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/colorAnimation/data/colorAnimation-visual.2.png b/tests/auto/declarative/qmlvisual/animation/colorAnimation/data/colorAnimation-visual.2.png
index 4320f6f568..9b8ecbbe55 100644
--- a/tests/auto/declarative/qmlvisual/animation/colorAnimation/data/colorAnimation-visual.2.png
+++ b/tests/auto/declarative/qmlvisual/animation/colorAnimation/data/colorAnimation-visual.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/colorAnimation/data/colorAnimation-visual.3.png b/tests/auto/declarative/qmlvisual/animation/colorAnimation/data/colorAnimation-visual.3.png
new file mode 100644
index 0000000000..277cb9e513
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/animation/colorAnimation/data/colorAnimation-visual.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/colorAnimation/data/colorAnimation-visual.qml b/tests/auto/declarative/qmlvisual/animation/colorAnimation/data/colorAnimation-visual.qml
index 9611d279de..2b664d44e6 100644
--- a/tests/auto/declarative/qmlvisual/animation/colorAnimation/data/colorAnimation-visual.qml
+++ b/tests/auto/declarative/qmlvisual/animation/colorAnimation/data/colorAnimation-visual.qml
@@ -6,7 +6,7 @@ VisualTest {
}
Frame {
msec: 16
- hash: "acc736435c9f84aa82941ba561bc5dbc"
+ image: "colorAnimation-visual.0.png"
}
Frame {
msec: 32
@@ -258,11 +258,11 @@ VisualTest {
}
Frame {
msec: 960
- image: "colorAnimation-visual.0.png"
+ hash: "2d133e7ee60c97386f57838b3f0976c7"
}
Frame {
msec: 976
- hash: "85b1821cc50f2a9f3ed6944f792b7a2f"
+ image: "colorAnimation-visual.1.png"
}
Frame {
msec: 992
@@ -498,11 +498,11 @@ VisualTest {
}
Frame {
msec: 1920
- image: "colorAnimation-visual.1.png"
+ hash: "02bafb5a81ca66f7670ac93de5123860"
}
Frame {
msec: 1936
- hash: "e7aa6374c73832e57ceb2427a1e258aa"
+ image: "colorAnimation-visual.2.png"
}
Frame {
msec: 1952
@@ -738,11 +738,11 @@ VisualTest {
}
Frame {
msec: 2880
- image: "colorAnimation-visual.2.png"
+ hash: "8c0fcda4f8956394c53fc4ba18caa850"
}
Frame {
msec: 2896
- hash: "8c0fcda4f8956394c53fc4ba18caa850"
+ image: "colorAnimation-visual.3.png"
}
Frame {
msec: 2912
@@ -931,7 +931,7 @@ VisualTest {
Key {
type: 6
key: 16777249
- modifiers: 67108864
+ modifiers: 0
text: ""
autorep: false
count: 1
diff --git a/tests/auto/declarative/qmlvisual/animation/easing/data/easing.0.png b/tests/auto/declarative/qmlvisual/animation/easing/data/easing.0.png
index 4f75bfd2e2..81edfff991 100644
--- a/tests/auto/declarative/qmlvisual/animation/easing/data/easing.0.png
+++ b/tests/auto/declarative/qmlvisual/animation/easing/data/easing.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/easing/data/easing.1.png b/tests/auto/declarative/qmlvisual/animation/easing/data/easing.1.png
index dc17765ae3..ebac47f65b 100644
--- a/tests/auto/declarative/qmlvisual/animation/easing/data/easing.1.png
+++ b/tests/auto/declarative/qmlvisual/animation/easing/data/easing.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/easing/data/easing.2.png b/tests/auto/declarative/qmlvisual/animation/easing/data/easing.2.png
index 7f83548f59..e1200bb14d 100644
--- a/tests/auto/declarative/qmlvisual/animation/easing/data/easing.2.png
+++ b/tests/auto/declarative/qmlvisual/animation/easing/data/easing.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/easing/data/easing.3.png b/tests/auto/declarative/qmlvisual/animation/easing/data/easing.3.png
index c68e0fa42e..81edfff991 100644
--- a/tests/auto/declarative/qmlvisual/animation/easing/data/easing.3.png
+++ b/tests/auto/declarative/qmlvisual/animation/easing/data/easing.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/easing/data/easing.qml b/tests/auto/declarative/qmlvisual/animation/easing/data/easing.qml
index 5923222df9..597c3a6bdf 100644
--- a/tests/auto/declarative/qmlvisual/animation/easing/data/easing.qml
+++ b/tests/auto/declarative/qmlvisual/animation/easing/data/easing.qml
@@ -6,774 +6,858 @@ VisualTest {
}
Frame {
msec: 16
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ image: "easing.0.png"
}
Frame {
msec: 32
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 48
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 64
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 80
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 96
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 112
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 128
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 144
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 160
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 176
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 192
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 208
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 224
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 240
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 256
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 272
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
- }
- Mouse {
- type: 2
- button: 1
- buttons: 1
- x: 111; y: 419
- modifiers: 0
- sendToViewport: true
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 288
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 304
- hash: "8f4c40d2e2b4f064bcb77c5ae43928c6"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 320
- hash: "8b65094a9b7d5394fc67f92ea058627f"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 336
- hash: "da450826b471a60ba98dabc581631ba1"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 352
- hash: "e820fb4f1bc97152aa940b07db549f1b"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 368
- hash: "b7d8186beca2fa0e37099f72419350f4"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 384
- hash: "8500b93774f214e5e4789e25500262b8"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 400
- hash: "277e1dff70285cca536b3e1fc2590688"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 416
- hash: "b05b18f92c2089c681661566117ae0f5"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 432
- hash: "6fec9c6b6ac3e3ea4126e3824a8d7566"
+ hash: "4f12d90df04192e3f28026249015fa41"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 28; y: 245
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 448
- hash: "53c6c90dd1eb7ca47721fc116474aebf"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 464
- hash: "cf729c4a31414af3d2705878ba615738"
+ hash: "a74da88fed6727a41b0bef096bd52eea"
}
Frame {
msec: 480
- hash: "f146b8a68960d507f893ef001189220e"
+ hash: "e640a847e36f4a7d322ad7ca0b893d9c"
}
Frame {
msec: 496
- hash: "18ff56b870bb048af246f928ee42a9b0"
+ hash: "3e3fe8581c80dc190108b9844e77fb17"
}
Frame {
msec: 512
- hash: "beee98f73fe7e878ada37b3070fa0c1d"
+ hash: "8ee8ce9f8d9d93997aa8e05efae9b901"
}
Frame {
msec: 528
- hash: "435d389082912950a0be2b5dff480319"
+ hash: "8752f7849a3afa35889f7f1406d79e5c"
}
Frame {
msec: 544
- hash: "dc39b080eaddeaf4e309b90b7d97a835"
+ hash: "df31ed3556e84a4517b26765ea11023c"
}
Frame {
msec: 560
- hash: "666b1cde53f78d7db9c81e21adbe406a"
+ hash: "a35602db546bf5e71fbc7ff7c5895427"
}
Frame {
msec: 576
- hash: "c5c9627f4329e48aa96ebfbc982b6ba6"
+ hash: "c29ee32e39126cb00544cf0326e483d8"
}
Frame {
msec: 592
- hash: "a583042052e5da7e80a4956337d6d1ff"
+ hash: "79b0d26288fd9ca67c6aacacb9bf355f"
}
Frame {
msec: 608
- hash: "a4a5df787e15da6f28275a12898e7620"
+ hash: "aa0b8c9921058be0913c00725c45b287"
}
Frame {
msec: 624
- hash: "02cacec2ccc803ebc03c5540484cbcaa"
+ hash: "964f498603fdd2abb2d3b1cc1b78ffde"
}
Frame {
msec: 640
- hash: "00600df1f006f358feaf43bfae9d32a5"
+ hash: "a3c7226d5b5f91b91d2a1ec21f2cb9ab"
}
Frame {
msec: 656
- hash: "737c884ba0d6d38b66252f4b97a36c33"
+ hash: "d28f5fb2e07c028c9697f8d1e4d7b676"
}
Frame {
msec: 672
- hash: "7eeeade8100c84a6b56efa51cf597baf"
+ hash: "0a1aa6ba2749b1ef5d8c67b5d8d7fba4"
}
Frame {
msec: 688
- hash: "18ab79d495097f0103dcf14db1897a88"
+ hash: "12d926e80c7b4da41ef9c747cf9ca1d4"
}
Frame {
msec: 704
- hash: "21d3b0da00c46a101e09048928cd8027"
+ hash: "2015e4d29b3424a3683d7d8710ef60b4"
}
Frame {
msec: 720
- hash: "a5995b0341872c275ffbc5aaee6eb853"
+ hash: "530924a6f4bdf7e9ab37415109a28e2f"
}
Frame {
msec: 736
- hash: "bb4a37c1bd5e412ebce54d9539017723"
+ hash: "4dd20811ffa8cfb64cebc6ec6f43b029"
}
Frame {
msec: 752
- hash: "63dcde9e2751ca94ed7d739feb359221"
+ hash: "2238138f486a061e32607b130ba505f8"
}
Frame {
msec: 768
- hash: "5790c8407e2e4d1a6a937d86d57d8edb"
+ hash: "a2991487b51b9802f18a975a323dfb32"
}
Frame {
msec: 784
- hash: "3a1c77abf6822030db60a036027dc86e"
+ hash: "9cf19f7c9ee16bfdd56cb889358ab789"
}
Frame {
msec: 800
- hash: "2a13c573ab9846cce60384dd7138b2b4"
+ hash: "32eee6b05e73a36eef878c562badbb8f"
}
Frame {
msec: 816
- hash: "98983c2525265830033495b61071a5aa"
+ hash: "04cbb2d8fe38011c46ff95d84830ed2a"
}
Frame {
msec: 832
- hash: "26d2bba3d77053b410715afb497d4063"
+ hash: "c11c2591ecf40ab31e616f6803e37e95"
}
Frame {
msec: 848
- hash: "fd65d954c16acee425d9de65af68ef40"
+ hash: "a22cdeea89739bdf10850c7251fb62f2"
}
Frame {
msec: 864
- hash: "094fcc18d28b19ac6b452dd8106d813b"
+ hash: "7d13f611bc516cda6afe56a8ec59cbf4"
}
Frame {
msec: 880
- hash: "160105f6f99a960763535e4d51990ef6"
+ hash: "4b3a3469f1c64760bd6ce84ec0bfc2cc"
}
Frame {
msec: 896
- hash: "0d5d1e6a66fc1f49f1106f01fb5a1c52"
+ hash: "e1a3af06282f369427d967cb21771564"
}
Frame {
msec: 912
- hash: "f6abc32680865783a4d94ecb738f9ff6"
+ hash: "e1c90f78a2fe5e7cf43eeb700c867beb"
}
Frame {
msec: 928
- hash: "350509eceb134d5b18647e5ad07dbb47"
+ hash: "e63fbd42405a5d251ea6703d9564b2e0"
}
Frame {
msec: 944
- hash: "a84e4e7c5385dc1f24ca219f45d529a5"
+ hash: "a1b4f08ccf38575f789bdb8968c7cdeb"
}
Frame {
msec: 960
- image: "easing.0.png"
+ hash: "2604313688bddd75b1fbd146415097a7"
}
Frame {
msec: 976
- hash: "efcc5ae79da3fa2f4c7d6eaa35e32d33"
+ image: "easing.1.png"
}
Frame {
msec: 992
- hash: "ff4afce604c8ecb4f08d1ddef8552534"
+ hash: "df391105c7f6e0fbcdb0b4719e5af9e3"
}
Frame {
msec: 1008
- hash: "e2e63e12e9a5f8459720dd8b023ed17b"
+ hash: "33603ef5b2368a7f5a71de0318404ac7"
}
Frame {
msec: 1024
- hash: "991a01f92bcfa9cd9fe98e3f39d192fc"
+ hash: "78cdbf2a2522e057db08aba284bd7a07"
}
Frame {
msec: 1040
- hash: "bc3d2f0f3fac650c981457f3694c2518"
+ hash: "7aac87953a7e1ddf0040769a15878017"
}
Frame {
msec: 1056
- hash: "ee39fc9b1a602bf813d9118aa21901ac"
+ hash: "eae27f47c56ee0c491eeebed0f3855b2"
}
Frame {
msec: 1072
- hash: "42120d098f2adf1e331332b33442dd3e"
+ hash: "0f0c4d8dbc27bc301c993a768afeaa39"
}
Frame {
msec: 1088
- hash: "1660c69b77b800d1ab57b93f0fc12aa5"
+ hash: "ec844dffe8be01b9906ffa10a18784bc"
}
Frame {
msec: 1104
- hash: "0630a3d6b8cb5dece5dc660f05036ec6"
+ hash: "69f6dd26fd9268c474c422c2ce126424"
}
Frame {
msec: 1120
- hash: "9163f0bd9c5888794d7a09d3359bf1e5"
+ hash: "0e3f95c339c1868fc716a542e9acbd49"
}
Frame {
msec: 1136
- hash: "e0b7ad4883f679948c852ff152ba7907"
+ hash: "fa0762f9d8112e5c6889ef3a204d4838"
}
Frame {
msec: 1152
- hash: "f748fc44f99b706e42b899cb18dbaaf7"
+ hash: "18132a9adedd13fcd015ac5c7f741718"
}
Frame {
msec: 1168
- hash: "c84442f0cb1cf0bb50dae7d1c701aaf8"
+ hash: "f07aba4891c1aab84f656b3507d4f31a"
}
Frame {
msec: 1184
- hash: "d7b41567e3f3aa9576fe2793872134b7"
+ hash: "123dfe5bf375b698ae529fe370133d4d"
}
Frame {
msec: 1200
- hash: "a1d10ff1adb85000902486fc8e4faa8d"
+ hash: "d176cacbad1459d18729e99b52ed0c89"
}
Frame {
msec: 1216
- hash: "44b7b5d77068e360ead3af84e7d80232"
+ hash: "21d9f6aeb67b5bfa0d190d305ddbaabd"
}
Frame {
msec: 1232
- hash: "486c0b19c1379d9eefdf575a085e2875"
+ hash: "38884e097938bdd2fecb33a2d782e87e"
}
Frame {
msec: 1248
- hash: "1d474472856d4740d960eb2f788ca5a6"
+ hash: "d0fb3dbb20f4873784dde690c48efd4b"
}
Frame {
msec: 1264
- hash: "c74082553ab0f4ee00f5044e3369580b"
+ hash: "9821efad0c5bfc459029f42a32ad7c85"
}
Frame {
msec: 1280
- hash: "89fcd5514f336075ad32cae69518c1e5"
+ hash: "c19ef8982ffa6d5d1a0b2844d0bd77e1"
}
Frame {
msec: 1296
- hash: "9dd235eb98998d9bdd92e01300297257"
+ hash: "e5d09b511557ac724b488dcaa5079ac7"
}
Frame {
msec: 1312
- hash: "9dd235eb98998d9bdd92e01300297257"
+ hash: "a1bf72e745137dd8ae48ff3e5df22944"
}
Frame {
msec: 1328
- hash: "9dd235eb98998d9bdd92e01300297257"
+ hash: "6319a88b12b431b1715b0231c0b86f9e"
}
Frame {
msec: 1344
- hash: "9dd235eb98998d9bdd92e01300297257"
+ hash: "f69fc6078e0b6c863b19f2306ca22a17"
}
Frame {
msec: 1360
- hash: "9dd235eb98998d9bdd92e01300297257"
+ hash: "e0945fc7aea81263fb84fb5de83b7ffc"
}
Frame {
msec: 1376
- hash: "9dd235eb98998d9bdd92e01300297257"
+ hash: "bae0fc82e69b37d6f0d23faf5d877d9b"
}
Frame {
msec: 1392
- hash: "9dd235eb98998d9bdd92e01300297257"
+ hash: "764e6cf407b66cefb0e867c55b4d214b"
}
Frame {
msec: 1408
- hash: "9dd235eb98998d9bdd92e01300297257"
+ hash: "208a9d634e7c45211a8aea56b7cb17e1"
}
Frame {
msec: 1424
- hash: "9dd235eb98998d9bdd92e01300297257"
+ hash: "5426675426babcfb303d5534b66038e0"
}
Frame {
msec: 1440
- hash: "9dd235eb98998d9bdd92e01300297257"
+ hash: "f9b2505bf94f9ae9a6212aae64a8023f"
}
Frame {
msec: 1456
- hash: "9dd235eb98998d9bdd92e01300297257"
+ hash: "672e4366f9eb212a3dcb539476ffe83b"
}
Frame {
msec: 1472
- hash: "9dd235eb98998d9bdd92e01300297257"
+ hash: "672e4366f9eb212a3dcb539476ffe83b"
}
Frame {
msec: 1488
- hash: "9dd235eb98998d9bdd92e01300297257"
+ hash: "672e4366f9eb212a3dcb539476ffe83b"
}
Frame {
msec: 1504
- hash: "9dd235eb98998d9bdd92e01300297257"
+ hash: "672e4366f9eb212a3dcb539476ffe83b"
}
Frame {
msec: 1520
- hash: "9dd235eb98998d9bdd92e01300297257"
+ hash: "672e4366f9eb212a3dcb539476ffe83b"
}
Frame {
msec: 1536
- hash: "9dd235eb98998d9bdd92e01300297257"
+ hash: "672e4366f9eb212a3dcb539476ffe83b"
}
Frame {
msec: 1552
- hash: "9dd235eb98998d9bdd92e01300297257"
+ hash: "672e4366f9eb212a3dcb539476ffe83b"
}
Frame {
msec: 1568
- hash: "9dd235eb98998d9bdd92e01300297257"
+ hash: "672e4366f9eb212a3dcb539476ffe83b"
}
Frame {
msec: 1584
- hash: "9dd235eb98998d9bdd92e01300297257"
+ hash: "672e4366f9eb212a3dcb539476ffe83b"
}
Frame {
msec: 1600
- hash: "9dd235eb98998d9bdd92e01300297257"
- }
- Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 111; y: 419
- modifiers: 0
- sendToViewport: true
+ hash: "672e4366f9eb212a3dcb539476ffe83b"
}
Frame {
msec: 1616
- hash: "9dd235eb98998d9bdd92e01300297257"
+ hash: "672e4366f9eb212a3dcb539476ffe83b"
}
Frame {
msec: 1632
- hash: "b77240f32e83d4f332d815c626f1e560"
+ hash: "672e4366f9eb212a3dcb539476ffe83b"
}
Frame {
msec: 1648
- hash: "7d89669231224cf8e02d75338c37c278"
+ hash: "672e4366f9eb212a3dcb539476ffe83b"
}
Frame {
msec: 1664
- hash: "a8cf7c179011ee8187a8e1111683e52e"
+ hash: "672e4366f9eb212a3dcb539476ffe83b"
}
Frame {
msec: 1680
- hash: "3e87a57e05da09a8260801320431b922"
+ hash: "672e4366f9eb212a3dcb539476ffe83b"
}
Frame {
msec: 1696
- hash: "a2b0d99c8a232715fe03e8772a36634c"
+ hash: "672e4366f9eb212a3dcb539476ffe83b"
}
Frame {
msec: 1712
- hash: "5b4634cd495ae7bb9c69a5c9c346189e"
+ hash: "672e4366f9eb212a3dcb539476ffe83b"
}
Frame {
msec: 1728
- hash: "492f8f2b84af355ef41c1a7cda3a8a73"
+ hash: "672e4366f9eb212a3dcb539476ffe83b"
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 28; y: 245
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 1744
- hash: "88e4eb08520fb5acc3d88ac4f0900542"
+ hash: "672e4366f9eb212a3dcb539476ffe83b"
}
Frame {
msec: 1760
- hash: "0c09cdcb906b4ce9840fd7502c39e5b9"
+ hash: "0312cf9bff66e992528cc24211a7a9ef"
}
Frame {
msec: 1776
- hash: "b054083bdd212cc03167a90df2d7eac5"
+ hash: "d29d071c26556302881badd90b1f1135"
}
Frame {
msec: 1792
- hash: "83971c2d37616ab92680364d6ac288a6"
+ hash: "747b398a00dec18a82fb3e2313ba318b"
}
Frame {
msec: 1808
- hash: "a73951d25e2cb7c1d04c88c86dfa0e4d"
+ hash: "1df120f0cc1e8583dd52b02b203ba7ff"
}
Frame {
msec: 1824
- hash: "31fc8b20302abac97e506c37a14bbb7e"
+ hash: "783f4c179f8468055f1b5585108c4c91"
}
Frame {
msec: 1840
- hash: "f760ccd7339e01a9423da7b592498291"
+ hash: "7307344c196f13348e7e23415c8eed1f"
}
Frame {
msec: 1856
- hash: "24dfcd5553f854908396de751fb15b88"
+ hash: "cf97103f94eb6b9e68e095ff5eaf2aeb"
}
Frame {
msec: 1872
- hash: "1daf38a6e6199f980e9494a3eb480047"
+ hash: "df8ef82f145ad55f084c3693cb601577"
}
Frame {
msec: 1888
- hash: "a39e2de1090209e5dbc8cc26577ec97d"
+ hash: "e25a344db6358ac5876cc95eb7ce35e7"
}
Frame {
msec: 1904
- hash: "f4edc780b063e34461263ed3b753be88"
+ hash: "4f4d55823e468ec2c0e73977a6851f5b"
}
Frame {
msec: 1920
- image: "easing.1.png"
+ hash: "894e23e77af266bde42f5ca6ac2184d7"
}
Frame {
msec: 1936
- hash: "a19b0353604491f56f72be0d20d76955"
+ image: "easing.2.png"
}
Frame {
msec: 1952
- hash: "9a70f109eebfcede2311ef77ceb50a44"
+ hash: "a48cc4f2c5282d9d2a8b55e0908324b7"
}
Frame {
msec: 1968
- hash: "7b28313d6860aeefd4a4e136d38d62f8"
+ hash: "f5cd3c873cf57f199ea7439a45f094d8"
}
Frame {
msec: 1984
- hash: "95d84f38473159fe6b38f84ffe371714"
+ hash: "8c6f4c913be02ee21efa551ce9a6544b"
}
Frame {
msec: 2000
- hash: "07f91261794edb0ac1fde9bb4ff36011"
+ hash: "fc979e4e4f6e82d704e0a53d3f9eef6e"
}
Frame {
msec: 2016
- hash: "f9a4a6b92a9c2d265688f1bfac18fa0a"
+ hash: "e8085e2e6741028a9218487181a8cc5b"
}
Frame {
msec: 2032
- hash: "cdec7cc00380fde4f73be997a992251a"
+ hash: "c67a1cec25d25687d369af58018ce213"
}
Frame {
msec: 2048
- hash: "a52b34f84e98fcd8babb1d39979fc9c7"
+ hash: "25b8e080f8fe5525bafa1e760b5845be"
}
Frame {
msec: 2064
- hash: "bf05b3c79a9616f2e6c33d348b30e0ba"
+ hash: "fef16bd6dc6dfa248ab5a33f53229528"
}
Frame {
msec: 2080
- hash: "c5931785685b4f4854d3ddfff5dd5466"
+ hash: "57b7e04b1722feda16fb80269dd51c2c"
}
Frame {
msec: 2096
- hash: "bae163e02b860a9ca19d1bcb60ac1f8e"
+ hash: "f2415e564efe5b5306b33001395a41f4"
}
Frame {
msec: 2112
- hash: "a36295a1ebb35e538f8899ae3ae3b36a"
+ hash: "40116a7a67be4de5b767ee1fe7ae0d02"
}
Frame {
msec: 2128
- hash: "b6448d61803d9b2c05b438aa8ce8bcd5"
+ hash: "52d71e7e8f44e554df361d7d9e281655"
}
Frame {
msec: 2144
- hash: "631bf4caff2d93ef96a426100ffc5b32"
+ hash: "226620a3c624f0a1659ee33616734a28"
}
Frame {
msec: 2160
- hash: "a8777c84a03996493f719f5fcfc80d00"
+ hash: "8849d02547a90ca47748749fc8615179"
}
Frame {
msec: 2176
- hash: "86e1759df103ef776bb03f24941f49da"
+ hash: "5523d277bc7a7161f3bbd79a4099e6c4"
}
Frame {
msec: 2192
- hash: "01a790ea60adeaf368c66bd53aa8fcb3"
+ hash: "6ff2c6b89c3a024e1597d1c110b5f5f3"
}
Frame {
msec: 2208
- hash: "79e5aca8ef6b9764f7f99cdfb51222ae"
+ hash: "732b9e2e601ad7fc11510f3c590dca20"
}
Frame {
msec: 2224
- hash: "82d10cc01b9be4683c5aa76096bd462c"
+ hash: "1ff9abdcb182fca444bc4b36e91b2a13"
}
Frame {
msec: 2240
- hash: "95d961a92c597e432611947f7480796a"
+ hash: "6f851aee4e3c4427fcb8672f37885d2d"
}
Frame {
msec: 2256
- hash: "e8ee89b5313c7e2c66741fe1c2090029"
+ hash: "3572977ef7c618404168514400fc22a4"
}
Frame {
msec: 2272
- hash: "2e3e8cf25dc1a3f09e7bf2a086f8e3bb"
+ hash: "e6e6f7cdf4f2ee1d182d18da482ab6a8"
}
Frame {
msec: 2288
- hash: "68ca8ad381f48db23d2bc5da9da0c17a"
+ hash: "fac4878038516ad0a5601f78ff3d3ab0"
}
Frame {
msec: 2304
- hash: "e29f2411667049e8fae6c080f61c5869"
+ hash: "b37e2cf2fb3b5a91845e50d2ab288572"
}
Frame {
msec: 2320
- hash: "5b0a6fadedf3024e8ecb7f2c73a2277d"
+ hash: "711ea820aa842c46f629f3eb36144ec2"
}
Frame {
msec: 2336
- hash: "af2eac625ef1fd928093ccd60bc0058e"
+ hash: "fcaa0576cbc8d4459b94498f332a4576"
}
Frame {
msec: 2352
- hash: "8a1ff780ebdc9e416e60ea0940e8f2d6"
+ hash: "dfa935d0ac700696a78c139585d2cc3f"
}
Frame {
msec: 2368
- hash: "7eb316c51cfd8ad972b7040247a651eb"
+ hash: "291042d40fc9fa8eebf80225b2cae93e"
}
Frame {
msec: 2384
- hash: "1bac7075c10c87a69e71c3859f0db41d"
+ hash: "4e1d6af5f5f9200b6871dfc63ec8d92e"
}
Frame {
msec: 2400
- hash: "0f16f40567729065cf9ecfcc15395a7b"
+ hash: "9c7ccdf3aba3c28717891e7ef4333aa5"
}
Frame {
msec: 2416
- hash: "719f4e776776f0db5c68ae7c6177e9b7"
+ hash: "b5bfa2eeb932ebc8913381bbea62ea9d"
}
Frame {
msec: 2432
- hash: "75172dbf31fd8d706f54748c59099845"
+ hash: "296bc4fcc206c6563630a6de8be9deac"
}
Frame {
msec: 2448
- hash: "d730b550e05167b05350e0e6636dd97d"
+ hash: "57d39578c1ba3a6a21efdef8c9323965"
}
Frame {
msec: 2464
- hash: "e1f33eb5f023d9d42a99f8bc23223c45"
+ hash: "16352e11b7fd763d82d26fcc02da24a7"
}
Frame {
msec: 2480
- hash: "8a4b0df5bed6c7be73c194ce2bb6a271"
+ hash: "02157cc0e120e1b751a9931ff65edb52"
}
Frame {
msec: 2496
- hash: "44a9ea371f12d4ac3a569121a995ae16"
+ hash: "23554c786732241aa9a59304cb4870b1"
}
Frame {
msec: 2512
- hash: "14747e2e9e072210b9d6db50b4f704a1"
+ hash: "e38f68e818b35b23361a7937b7a37bb7"
}
Frame {
msec: 2528
- hash: "eea52abf430f8cc1adc37e7180036584"
+ hash: "dd39869048e6ccfceb1b2882404ef1b3"
}
Frame {
msec: 2544
- hash: "0a9f6b14bc02e929a45bf4ebb736f9d3"
+ hash: "5587d88f5b8fcb3914efedee9ae3a939"
}
Frame {
msec: 2560
- hash: "a68a6eef0fc8754564c47c88b60d9a2a"
+ hash: "5a23991509d69d400249e403cd3fbe4d"
}
Frame {
msec: 2576
- hash: "eeb469e2fbda131d83538055e88ecdf7"
+ hash: "eed425fb759c92ec9966fcdc625321fb"
}
Frame {
msec: 2592
- hash: "0f7b673472050e807c9d935fde5afd83"
+ hash: "7bbf0748f5fbbf48605287342df8e687"
}
Frame {
msec: 2608
- hash: "80c90cce66bdd2324ca98bc591c22b44"
+ hash: "7722f0d3c358d57f3d614f2850fc23f9"
}
Frame {
msec: 2624
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "3ec5ccb1e6ed677617dcb3b699b10d58"
}
Frame {
msec: 2640
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "303a61969566062d5c77a3a1a65c847a"
}
Frame {
msec: 2656
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "aadf4d4cc978b5f88b97a7e453b21024"
}
Frame {
msec: 2672
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "2d24097717f5ec669e29250af78235fd"
}
Frame {
msec: 2688
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "2a58e7ce319cc1cd7dfcd740bfe59517"
}
Frame {
msec: 2704
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "6a21af6c920588f0f709bf91bb56f548"
}
Frame {
msec: 2720
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "f5a63f241f27c6e7cef969dde6790ac3"
}
Frame {
msec: 2736
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "33b64aad57e117f6b170432843c3c996"
}
Frame {
msec: 2752
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 2768
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 2784
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 2800
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 2816
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 2832
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 2848
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 2864
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 2880
- image: "easing.2.png"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 2896
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ image: "easing.3.png"
}
Frame {
msec: 2912
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 2928
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 2944
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 2960
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 2976
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 2992
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 3008
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "4f12d90df04192e3f28026249015fa41"
}
Frame {
msec: 3024
- hash: "bb8e2ba14526dc5ad74f74e8ff3d96a5"
+ hash: "4f12d90df04192e3f28026249015fa41"
+ }
+ Frame {
+ msec: 3040
+ hash: "4f12d90df04192e3f28026249015fa41"
+ }
+ Frame {
+ msec: 3056
+ hash: "4f12d90df04192e3f28026249015fa41"
+ }
+ Frame {
+ msec: 3072
+ hash: "4f12d90df04192e3f28026249015fa41"
+ }
+ Frame {
+ msec: 3088
+ hash: "4f12d90df04192e3f28026249015fa41"
+ }
+ Frame {
+ msec: 3104
+ hash: "4f12d90df04192e3f28026249015fa41"
+ }
+ Frame {
+ msec: 3120
+ hash: "4f12d90df04192e3f28026249015fa41"
+ }
+ Frame {
+ msec: 3136
+ hash: "4f12d90df04192e3f28026249015fa41"
+ }
+ Frame {
+ msec: 3152
+ hash: "4f12d90df04192e3f28026249015fa41"
+ }
+ Frame {
+ msec: 3168
+ hash: "4f12d90df04192e3f28026249015fa41"
+ }
+ Frame {
+ msec: 3184
+ hash: "4f12d90df04192e3f28026249015fa41"
+ }
+ Frame {
+ msec: 3200
+ hash: "4f12d90df04192e3f28026249015fa41"
+ }
+ Frame {
+ msec: 3216
+ hash: "4f12d90df04192e3f28026249015fa41"
+ }
+ Frame {
+ msec: 3232
+ hash: "4f12d90df04192e3f28026249015fa41"
+ }
+ Frame {
+ msec: 3248
+ hash: "4f12d90df04192e3f28026249015fa41"
+ }
+ Frame {
+ msec: 3264
+ hash: "4f12d90df04192e3f28026249015fa41"
+ }
+ Frame {
+ msec: 3280
+ hash: "4f12d90df04192e3f28026249015fa41"
+ }
+ Frame {
+ msec: 3296
+ hash: "4f12d90df04192e3f28026249015fa41"
+ }
+ Frame {
+ msec: 3312
+ hash: "4f12d90df04192e3f28026249015fa41"
+ }
+ Frame {
+ msec: 3328
+ hash: "4f12d90df04192e3f28026249015fa41"
+ }
+ Frame {
+ msec: 3344
+ hash: "4f12d90df04192e3f28026249015fa41"
+ }
+ Frame {
+ msec: 3360
+ hash: "4f12d90df04192e3f28026249015fa41"
}
}
diff --git a/tests/auto/declarative/qmlvisual/animation/easing/easing.qml b/tests/auto/declarative/qmlvisual/animation/easing/easing.qml
index 35b568a32a..625aeeb9b4 100644
--- a/tests/auto/declarative/qmlvisual/animation/easing/easing.qml
+++ b/tests/auto/declarative/qmlvisual/animation/easing/easing.qml
@@ -1,9 +1,10 @@
import QtQuick 1.0
+/* This test just animates y of a block with every easing curve*/
Rectangle {
id: item
- width: 600
- height: layout.height
+ height: 300
+ width: layout.width
color: "white"
resources: [
ListModel {
@@ -133,10 +134,10 @@ Rectangle {
}
}
]
- Column {
+ Row {
id: layout
- anchors.left: item.left
- anchors.right: item.right
+ anchors.top: item.top
+ anchors.bottom: item.bottom
Repeater {
model: easingtypes
Component {
@@ -149,8 +150,8 @@ Rectangle {
color: index & 1 ? "black" : "white"
opacity: 0 // 1 for debugging
}
- width: 120
- height: 18
+ width: 15
+ height: 30
color: index & 1 ? "red" : "blue"
states: [
State {
@@ -158,7 +159,7 @@ Rectangle {
when: !mouse.pressed
PropertyChanges {
target: block
- x: 0
+ y: 0
}
},
State {
@@ -166,7 +167,7 @@ Rectangle {
when: mouse.pressed
PropertyChanges {
target: block
- x: item.width-block.width
+ y: item.height-block.height
}
}
]
@@ -176,7 +177,7 @@ Rectangle {
to: "to"
reversible: true
NumberAnimation {
- properties: "x"
+ properties: "y"
easing.type: type
duration: 1000
}
diff --git a/tests/auto/declarative/qmlvisual/animation/loop/data/loop.0.png b/tests/auto/declarative/qmlvisual/animation/loop/data/loop.0.png
index f4301d3759..ca37de9d42 100644
--- a/tests/auto/declarative/qmlvisual/animation/loop/data/loop.0.png
+++ b/tests/auto/declarative/qmlvisual/animation/loop/data/loop.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/loop/data/loop.1.png b/tests/auto/declarative/qmlvisual/animation/loop/data/loop.1.png
index ceb0e20b17..a2d87ca8a5 100644
--- a/tests/auto/declarative/qmlvisual/animation/loop/data/loop.1.png
+++ b/tests/auto/declarative/qmlvisual/animation/loop/data/loop.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/loop/data/loop.2.png b/tests/auto/declarative/qmlvisual/animation/loop/data/loop.2.png
index 197c8c0150..1cb2cb893e 100644
--- a/tests/auto/declarative/qmlvisual/animation/loop/data/loop.2.png
+++ b/tests/auto/declarative/qmlvisual/animation/loop/data/loop.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/loop/data/loop.3.png b/tests/auto/declarative/qmlvisual/animation/loop/data/loop.3.png
index 3a4327ea37..f58deca6d2 100644
--- a/tests/auto/declarative/qmlvisual/animation/loop/data/loop.3.png
+++ b/tests/auto/declarative/qmlvisual/animation/loop/data/loop.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/loop/data/loop.4.png b/tests/auto/declarative/qmlvisual/animation/loop/data/loop.4.png
index 239771970a..1936361b37 100644
--- a/tests/auto/declarative/qmlvisual/animation/loop/data/loop.4.png
+++ b/tests/auto/declarative/qmlvisual/animation/loop/data/loop.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/loop/data/loop.5.png b/tests/auto/declarative/qmlvisual/animation/loop/data/loop.5.png
index 70d91a2e54..758c223180 100644
--- a/tests/auto/declarative/qmlvisual/animation/loop/data/loop.5.png
+++ b/tests/auto/declarative/qmlvisual/animation/loop/data/loop.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/loop/data/loop.6.png b/tests/auto/declarative/qmlvisual/animation/loop/data/loop.6.png
new file mode 100644
index 0000000000..b049e63873
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/animation/loop/data/loop.6.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/loop/data/loop.qml b/tests/auto/declarative/qmlvisual/animation/loop/data/loop.qml
index 58d0b26565..3cbc0745c4 100644
--- a/tests/auto/declarative/qmlvisual/animation/loop/data/loop.qml
+++ b/tests/auto/declarative/qmlvisual/animation/loop/data/loop.qml
@@ -6,7 +6,7 @@ VisualTest {
}
Frame {
msec: 16
- hash: "eff7cc4b163dceb6084270cc589393f1"
+ image: "loop.0.png"
}
Frame {
msec: 32
@@ -242,11 +242,11 @@ VisualTest {
}
Frame {
msec: 960
- image: "loop.0.png"
+ hash: "0de25d97a43cf1a7551c8e8dd1943039"
}
Frame {
msec: 976
- hash: "2cc40e1119060483ae067f3881af0391"
+ image: "loop.1.png"
}
Frame {
msec: 992
@@ -482,11 +482,11 @@ VisualTest {
}
Frame {
msec: 1920
- image: "loop.1.png"
+ hash: "72c0bf8225504e86ff023242b84513a8"
}
Frame {
msec: 1936
- hash: "7f79dd50a0af8e8871191ee80afcad0f"
+ image: "loop.2.png"
}
Frame {
msec: 1952
@@ -722,11 +722,11 @@ VisualTest {
}
Frame {
msec: 2880
- image: "loop.2.png"
+ hash: "d57e1a10e48938e1f7fc219220fe1204"
}
Frame {
msec: 2896
- hash: "df41be1fa564353ceb2088af209610d3"
+ image: "loop.3.png"
}
Frame {
msec: 2912
@@ -962,11 +962,11 @@ VisualTest {
}
Frame {
msec: 3840
- image: "loop.3.png"
+ hash: "fd7157aef6dfb303472cd33b176f91d8"
}
Frame {
msec: 3856
- hash: "e6521a3c74c190c193af2c913e5326e2"
+ image: "loop.4.png"
}
Frame {
msec: 3872
@@ -1202,11 +1202,11 @@ VisualTest {
}
Frame {
msec: 4800
- image: "loop.4.png"
+ hash: "2fb9e078573ebd1a5cf0f615c97f1d20"
}
Frame {
msec: 4816
- hash: "31fa31ed47ea16390be8ea9d41f483e7"
+ image: "loop.5.png"
}
Frame {
msec: 4832
@@ -1442,11 +1442,11 @@ VisualTest {
}
Frame {
msec: 5760
- image: "loop.5.png"
+ hash: "99789b6e168355a3960986c7d1f21f82"
}
Frame {
msec: 5776
- hash: "ebd37ee719ca460480521fd4ec284a3f"
+ image: "loop.6.png"
}
Frame {
msec: 5792
diff --git a/tests/auto/declarative/qmlvisual/animation/parallelAnimation/data/parallelAnimation-visual.0.png b/tests/auto/declarative/qmlvisual/animation/parallelAnimation/data/parallelAnimation-visual.0.png
new file mode 100644
index 0000000000..a45e421c88
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/animation/parallelAnimation/data/parallelAnimation-visual.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/parallelAnimation/data/parallelAnimation-visual.qml b/tests/auto/declarative/qmlvisual/animation/parallelAnimation/data/parallelAnimation-visual.qml
index 8fd59449ac..f4991cc2fc 100644
--- a/tests/auto/declarative/qmlvisual/animation/parallelAnimation/data/parallelAnimation-visual.qml
+++ b/tests/auto/declarative/qmlvisual/animation/parallelAnimation/data/parallelAnimation-visual.qml
@@ -6,458 +6,238 @@ VisualTest {
}
Frame {
msec: 16
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ image: "parallelAnimation-visual.0.png"
}
Frame {
msec: 32
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "d5eb647077598cab2f3d0c016fbbb419"
}
Frame {
msec: 48
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "d5eb647077598cab2f3d0c016fbbb419"
}
Frame {
msec: 64
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "d5eb647077598cab2f3d0c016fbbb419"
}
Frame {
msec: 80
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "d5eb647077598cab2f3d0c016fbbb419"
}
Frame {
msec: 96
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "d5eb647077598cab2f3d0c016fbbb419"
}
Frame {
msec: 112
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "d5eb647077598cab2f3d0c016fbbb419"
}
Frame {
msec: 128
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "d5eb647077598cab2f3d0c016fbbb419"
}
Frame {
msec: 144
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "aa22c670b17a7372732f9bc85e41a082"
}
Frame {
msec: 160
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "19d09945e45f74d1edd9935e855369b3"
}
Frame {
msec: 176
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "ed391a3b7eba8e98d2f8e372f42e9210"
}
Frame {
msec: 192
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "ac3f7547a9576e0a313e7060ed7431e9"
}
Frame {
msec: 208
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "ddf41ca7289f44990d0d6d41a838bd6f"
}
Frame {
msec: 224
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "42eb324d288b39fa32bf11795d6633f6"
}
Frame {
msec: 240
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "8447851893d2d8f5661731761b6702fa"
}
Frame {
msec: 256
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "7d86bc9b509bcd45eebf2c7e70151424"
}
Frame {
msec: 272
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "c33a6731151fbce1156888129d53b8ec"
}
Frame {
msec: 288
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "028cd521f75d3ecc810a0baa2e857441"
}
Frame {
msec: 304
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "58e565d78d68a69b864c1d7bb8d6180f"
}
Frame {
msec: 320
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "7f21037b48949c2086e7692723a90abf"
}
Frame {
msec: 336
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "5c5c9101a0594bae2f5f8c5bb534a931"
}
Frame {
msec: 352
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "8c010e7bd746d3865e283cc9f5fb83b7"
}
Frame {
msec: 368
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "0a2b5c4aa4e8ca8b264c774e4cc90f23"
}
Frame {
msec: 384
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "bf18f1e0102f471773de1cbb0b24bfc3"
}
Frame {
msec: 400
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "bc8e1d5a6d38e38284313ede359582bc"
}
Frame {
msec: 416
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "3a34e518882bd28d11ebdd1646737a8b"
}
Frame {
msec: 432
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "df113cd7cd502c0ae8cb2dd0f0c209a0"
}
Frame {
msec: 448
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "df113cd7cd502c0ae8cb2dd0f0c209a0"
}
Frame {
msec: 464
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "df113cd7cd502c0ae8cb2dd0f0c209a0"
}
Frame {
msec: 480
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "df113cd7cd502c0ae8cb2dd0f0c209a0"
}
Frame {
msec: 496
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "df113cd7cd502c0ae8cb2dd0f0c209a0"
}
Frame {
msec: 512
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "df113cd7cd502c0ae8cb2dd0f0c209a0"
}
Frame {
msec: 528
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "df113cd7cd502c0ae8cb2dd0f0c209a0"
}
Frame {
msec: 544
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "df113cd7cd502c0ae8cb2dd0f0c209a0"
}
Frame {
msec: 560
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "df113cd7cd502c0ae8cb2dd0f0c209a0"
}
Frame {
msec: 576
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "df113cd7cd502c0ae8cb2dd0f0c209a0"
}
Frame {
msec: 592
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "df113cd7cd502c0ae8cb2dd0f0c209a0"
}
Frame {
msec: 608
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "df113cd7cd502c0ae8cb2dd0f0c209a0"
}
Frame {
msec: 624
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "df113cd7cd502c0ae8cb2dd0f0c209a0"
}
Frame {
msec: 640
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "df113cd7cd502c0ae8cb2dd0f0c209a0"
}
Frame {
msec: 656
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "df113cd7cd502c0ae8cb2dd0f0c209a0"
}
Frame {
msec: 672
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "df113cd7cd502c0ae8cb2dd0f0c209a0"
}
Frame {
msec: 688
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "df113cd7cd502c0ae8cb2dd0f0c209a0"
}
Frame {
msec: 704
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "df113cd7cd502c0ae8cb2dd0f0c209a0"
}
Frame {
msec: 720
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "df113cd7cd502c0ae8cb2dd0f0c209a0"
}
Frame {
msec: 736
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "df113cd7cd502c0ae8cb2dd0f0c209a0"
}
Frame {
msec: 752
- hash: "4faa7727bafeea0771f2db62f0141ac9"
- }
- Mouse {
- type: 2
- button: 1
- buttons: 1
- x: 137; y: 74
- modifiers: 0
- sendToViewport: true
+ hash: "df113cd7cd502c0ae8cb2dd0f0c209a0"
}
Frame {
msec: 768
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "df113cd7cd502c0ae8cb2dd0f0c209a0"
}
Frame {
msec: 784
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "df113cd7cd502c0ae8cb2dd0f0c209a0"
}
Frame {
msec: 800
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "df113cd7cd502c0ae8cb2dd0f0c209a0"
}
Frame {
msec: 816
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "df113cd7cd502c0ae8cb2dd0f0c209a0"
}
Frame {
msec: 832
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "df113cd7cd502c0ae8cb2dd0f0c209a0"
}
Frame {
msec: 848
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "df113cd7cd502c0ae8cb2dd0f0c209a0"
}
Frame {
msec: 864
- hash: "4faa7727bafeea0771f2db62f0141ac9"
- }
- Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 137; y: 74
- modifiers: 0
- sendToViewport: true
+ hash: "df113cd7cd502c0ae8cb2dd0f0c209a0"
}
Frame {
msec: 880
- hash: "4faa7727bafeea0771f2db62f0141ac9"
+ hash: "df113cd7cd502c0ae8cb2dd0f0c209a0"
}
Frame {
msec: 896
- hash: "0fada111cb977c4de8c7499e44714f38"
+ hash: "df113cd7cd502c0ae8cb2dd0f0c209a0"
}
Frame {
msec: 912
- hash: "1817e010332117dcddc1a1b1a2caf52d"
+ hash: "df113cd7cd502c0ae8cb2dd0f0c209a0"
}
Frame {
msec: 928
- hash: "e4add6bf93479c9bca571419fe2fabf9"
+ hash: "df113cd7cd502c0ae8cb2dd0f0c209a0"
}
Frame {
msec: 944
- hash: "d8812e206d2cbf434d58db6a35439a44"
- }
- Frame {
- msec: 960
- image: "parallelAnimation.0.png"
- }
- Frame {
- msec: 976
- hash: "a238178c584aaf2563d29bff927d5bab"
- }
- Frame {
- msec: 992
- hash: "f583e9fe8feda02e796a61c5fed7b0eb"
- }
- Frame {
- msec: 1008
- hash: "b3a1a4fd85912831e551a8c07da1a561"
- }
- Frame {
- msec: 1024
- hash: "f7c111ee4a04af6c1da958f8b56c28ee"
- }
- Frame {
- msec: 1040
- hash: "f53fa374817d81ee44fb98e64e464b36"
- }
- Frame {
- msec: 1056
- hash: "547ddef13cbcaaf57bb1f4e2bb7bc822"
- }
- Frame {
- msec: 1072
- hash: "8b10ccfef926103a6d67d68eee250f83"
- }
- Frame {
- msec: 1088
- hash: "008bbb50dc659e6f5eea15290680edd7"
- }
- Frame {
- msec: 1104
- hash: "0217e3230d3df44363a023d0d7defc5f"
- }
- Frame {
- msec: 1120
- hash: "ab9907a92452de6878f4c346febe705c"
- }
- Frame {
- msec: 1136
- hash: "7bce31f347a7f0598d2d64026c702f3e"
- }
- Frame {
- msec: 1152
- hash: "032080184907bc5b01db7675802d7dbe"
- }
- Frame {
- msec: 1168
- hash: "2cba43a2e5febcc44bfd1379b9cb2591"
- }
- Frame {
- msec: 1184
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Frame {
- msec: 1200
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Frame {
- msec: 1216
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Frame {
- msec: 1232
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Frame {
- msec: 1248
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Frame {
- msec: 1264
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Frame {
- msec: 1280
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Frame {
- msec: 1296
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Frame {
- msec: 1312
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Frame {
- msec: 1328
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Frame {
- msec: 1344
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Frame {
- msec: 1360
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Frame {
- msec: 1376
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Frame {
- msec: 1392
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Frame {
- msec: 1408
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Frame {
- msec: 1424
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Frame {
- msec: 1440
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Frame {
- msec: 1456
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Frame {
- msec: 1472
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Frame {
- msec: 1488
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Frame {
- msec: 1504
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Key {
- type: 6
- key: 16777249
- modifiers: 67108864
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 1520
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Frame {
- msec: 1536
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Frame {
- msec: 1552
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Frame {
- msec: 1568
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Frame {
- msec: 1584
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Frame {
- msec: 1600
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Frame {
- msec: 1616
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Frame {
- msec: 1632
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Frame {
- msec: 1648
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Frame {
- msec: 1664
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Frame {
- msec: 1680
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Frame {
- msec: 1696
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Frame {
- msec: 1712
- hash: "b901a51b5605621adff7b34c61f8f320"
- }
- Frame {
- msec: 1728
- hash: "b901a51b5605621adff7b34c61f8f320"
+ hash: "df113cd7cd502c0ae8cb2dd0f0c209a0"
}
}
diff --git a/tests/auto/declarative/qmlvisual/animation/parallelAnimation/data/parallelAnimation.0.png b/tests/auto/declarative/qmlvisual/animation/parallelAnimation/data/parallelAnimation.0.png
deleted file mode 100644
index 82c18d7343..0000000000
--- a/tests/auto/declarative/qmlvisual/animation/parallelAnimation/data/parallelAnimation.0.png
+++ /dev/null
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/parallelAnimation/data/parallelAnimation.1.png b/tests/auto/declarative/qmlvisual/animation/parallelAnimation/data/parallelAnimation.1.png
deleted file mode 100644
index b9a3b898ca..0000000000
--- a/tests/auto/declarative/qmlvisual/animation/parallelAnimation/data/parallelAnimation.1.png
+++ /dev/null
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/parallelAnimation/data/parallelAnimation.2.png b/tests/auto/declarative/qmlvisual/animation/parallelAnimation/data/parallelAnimation.2.png
deleted file mode 100644
index 789615b54b..0000000000
--- a/tests/auto/declarative/qmlvisual/animation/parallelAnimation/data/parallelAnimation.2.png
+++ /dev/null
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/parallelAnimation/parallelAnimation-visual.qml b/tests/auto/declarative/qmlvisual/animation/parallelAnimation/parallelAnimation-visual.qml
index 9a757631bf..6974adbc33 100644
--- a/tests/auto/declarative/qmlvisual/animation/parallelAnimation/parallelAnimation-visual.qml
+++ b/tests/auto/declarative/qmlvisual/animation/parallelAnimation/parallelAnimation-visual.qml
@@ -9,34 +9,35 @@ import QtQuick 1.0
*/
Rectangle {
- width: 400; height: 200
+ width: 200; height: 100
Rectangle {
id: redRect
- width: 100; height: 100
+ width: 50; height: 50
color: "red"
}
Rectangle {
id: redRect2
- width: 100; height: 100
- y: 100
+ width: 50; height: 50
+ y: 50
color: "red"
}
- MouseArea {
- anchors.fill: parent
- onClicked: parent.state = "state1"
+ Timer{
+ interval: 100
+ running: true
+ onTriggered: parent.state = "state1"
}
states: State {
name: "state1"
PropertyChanges {
target: redRect
- x: 300
+ x: 150
color: "purple"
}
PropertyChanges {
target: redRect2
- x: 300
+ x: 150
color: "purple"
}
}
diff --git a/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation-visual.0.png b/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation-visual.0.png
new file mode 100644
index 0000000000..41d51da07a
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation-visual.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation-visual.1.png b/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation-visual.1.png
new file mode 100644
index 0000000000..953e8bd42f
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation-visual.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation-visual.2.png b/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation-visual.2.png
new file mode 100644
index 0000000000..b311ae1802
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation-visual.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation-visual.3.png b/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation-visual.3.png
new file mode 100644
index 0000000000..41d51da07a
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation-visual.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation-visual.4.png b/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation-visual.4.png
new file mode 100644
index 0000000000..5b68a73b5f
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation-visual.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation-visual.qml b/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation-visual.qml
index edefd01014..42968831a2 100644
--- a/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation-visual.qml
+++ b/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation-visual.qml
@@ -6,1658 +6,1218 @@ VisualTest {
}
Frame {
msec: 16
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ image: "parentAnimation-visual.0.png"
}
Frame {
msec: 32
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 48
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 64
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 80
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 96
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 112
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 128
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 144
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 160
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 176
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 192
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 208
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 224
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 240
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 256
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 272
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 288
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 304
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 320
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 336
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 352
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 368
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 181; y: 122
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 384
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 400
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "234b795b5dd412e4397f132f03f38175"
}
Frame {
msec: 416
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "eca09aebcc15501fd348b9eb19b54ee2"
}
Frame {
msec: 432
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "6ab63f771ac705439157cf0ed84bc274"
}
Frame {
msec: 448
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "42212db87d03c35e96e38ac200bd9ec2"
}
Frame {
msec: 464
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "46a79ff030b89a4c8791fd853a96b64f"
}
Frame {
msec: 480
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "cdfee36535e491328f5045b6f3378b64"
}
Frame {
msec: 496
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "5cfc7db34110aa39f296fe4475de0c08"
}
Frame {
msec: 512
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "df59e3aa557a661ce513523c3059c41d"
}
Frame {
msec: 528
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "2d2f8fc7d695bcd20ef682b25a22186a"
}
Frame {
msec: 544
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "daac5f2d4b451501669a7767d0a19ccc"
}
Frame {
msec: 560
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "e10801e6c7086eac3eaaa48a3d39bb95"
}
Frame {
msec: 576
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "a5fdf57b20bf4d4aad99f02a13bbfc66"
}
Frame {
msec: 592
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "b48721b169b4a1118b040a9e41c252a1"
}
Frame {
msec: 608
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "242425f06d5706f0483e49812bfb4718"
}
Frame {
msec: 624
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "33bdd4d71b1736055d821ee5040bfaed"
}
Frame {
msec: 640
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 656
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 672
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 688
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 704
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 720
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 736
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 752
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 768
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 784
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 800
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 816
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 832
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 848
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 864
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 880
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 896
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 912
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 928
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 944
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 960
- image: "parentAnimation.0.png"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 976
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ image: "parentAnimation-visual.1.png"
}
Frame {
msec: 992
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 1008
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 1024
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 1040
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 1056
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 1072
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 1088
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 1104
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 1120
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 1136
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 181; y: 122
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 1152
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 1168
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "b985be8701f0bbb73facfe745d43e32f"
}
Frame {
msec: 1184
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "6b3e91ff248516656fd2efe26db6c900"
}
Frame {
msec: 1200
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "40bd9296de59b3abc5b7a204a6ecff3f"
}
Frame {
msec: 1216
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "615817b53baf0d0cd290b18ad9deee4d"
}
Frame {
msec: 1232
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "c990d9afcebfc4dcc35457d555d7e9cb"
}
Frame {
msec: 1248
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "2d1a4687abe3fd7b1911f8e5020c4378"
}
Frame {
msec: 1264
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "b5e1399f1924dafa6782da6b739af882"
}
Frame {
msec: 1280
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "8686a36600410f4f39f558eadfb3479f"
}
Frame {
msec: 1296
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "39f1f7573198f86e1452211f62dc7f1a"
}
Frame {
msec: 1312
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbfbbcb5637c0f90396150abb0aecb14"
}
Frame {
msec: 1328
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "2c071570228d5a121a64c4c01c443ab2"
}
Frame {
msec: 1344
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "4e076ea1d8f566eca9aa5eb55ce02098"
}
Frame {
msec: 1360
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "72fd6c15e76fd6d74a9584be1e82399b"
}
Frame {
msec: 1376
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "b519ad1958ea69fc4682c06e83f22c42"
}
Frame {
msec: 1392
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "155b39717f45fe5d36348c499635e759"
}
Frame {
msec: 1408
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 1424
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 1440
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 1456
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 1472
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 1488
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 1504
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 1520
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 1536
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Mouse {
- type: 2
- button: 1
- buttons: 1
- x: 237; y: 299
- modifiers: 0
- sendToViewport: true
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 1552
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 1568
- hash: "633b5668278295faa57d0cfffe8a29cb"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 1584
- hash: "ccbf4505e0f05547d2f7ce874ab941c0"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 1600
- hash: "be904489959fa365badb642fa9e85922"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 1616
- hash: "de6a97ac6e2677feb223336199cbffe1"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 1632
- hash: "997b0a547336a9bb6a67cd9beffe1831"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 1648
- hash: "ac9a6e111050b8a7c4492f06c33d3969"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 1664
- hash: "7313c0d2ee06e393f486670222c29bb4"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 181; y: 122
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 1680
- hash: "24cea420d03d1fdcddb1b9cf5112cbee"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 1696
- hash: "764688785eeaa01e9c84821476911edb"
+ hash: "234b795b5dd412e4397f132f03f38175"
}
Frame {
msec: 1712
- hash: "b24ae0cb512abfd2606ff9c20a6751bf"
+ hash: "eca09aebcc15501fd348b9eb19b54ee2"
}
Frame {
msec: 1728
- hash: "f1daed3391f10e27435a54222df8d0ab"
+ hash: "6ab63f771ac705439157cf0ed84bc274"
}
Frame {
msec: 1744
- hash: "99704e182267f2c12d0215b9c03f4d68"
+ hash: "42212db87d03c35e96e38ac200bd9ec2"
}
Frame {
msec: 1760
- hash: "143cd9259a41b8af5d41a5b2aaf8de64"
+ hash: "46a79ff030b89a4c8791fd853a96b64f"
}
Frame {
msec: 1776
- hash: "b5f0a0f838b5870c162a24cd767f068b"
+ hash: "cdfee36535e491328f5045b6f3378b64"
}
Frame {
msec: 1792
- hash: "c5c8cdcbfab7466e447eaff582bf7312"
+ hash: "5cfc7db34110aa39f296fe4475de0c08"
}
Frame {
msec: 1808
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "df59e3aa557a661ce513523c3059c41d"
}
Frame {
msec: 1824
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "2d2f8fc7d695bcd20ef682b25a22186a"
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 181; y: 122
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 1840
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "2d2f8fc7d695bcd20ef682b25a22186a"
}
Frame {
msec: 1856
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "f611eb7652ce078c81dba533c6c0df5e"
}
Frame {
msec: 1872
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "2a4f853f3eeef5cbacc8fdacfdab3442"
}
Frame {
msec: 1888
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "86a201ea5c4af2a28b4047c0732d33c8"
}
Frame {
msec: 1904
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "e87f15694846a75ff3801aff063d35c7"
}
Frame {
msec: 1920
- image: "parentAnimation.1.png"
+ hash: "c3d42dd4ae49a843f32a3dcc818d0b68"
}
Frame {
msec: 1936
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ image: "parentAnimation-visual.2.png"
}
Frame {
msec: 1952
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "46a79ff030b89a4c8791fd853a96b64f"
+ }
+ Mouse {
+ type: 4
+ button: 1
+ buttons: 1
+ x: 181; y: 122
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 1968
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "46a79ff030b89a4c8791fd853a96b64f"
}
Frame {
msec: 1984
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "079898fb015f88ba9d7cd73f356d2c37"
}
Frame {
msec: 2000
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "5d03ca6d09d241bd686c878d53d9f269"
}
Frame {
msec: 2016
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "d986a00663eb3dafb24bf67b3d6c7a04"
}
Frame {
msec: 2032
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "4e609d8b8921428909a5b78ea1db78b9"
}
Frame {
msec: 2048
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "f611eb7652ce078c81dba533c6c0df5e"
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 181; y: 122
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 2064
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "f611eb7652ce078c81dba533c6c0df5e"
}
Frame {
msec: 2080
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "2a4f853f3eeef5cbacc8fdacfdab3442"
}
Frame {
msec: 2096
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "86a201ea5c4af2a28b4047c0732d33c8"
}
Frame {
msec: 2112
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "2d498b4b440cd6bce6e02102dc62996d"
}
Frame {
msec: 2128
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "53c55f9fc1aab5f4c552387e8cae749e"
}
Frame {
msec: 2144
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "8d188a1ab2be377198142f3037d15fc3"
}
Frame {
msec: 2160
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "66550b5102e2803fb3cbd85f4b2543e0"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 181; y: 122
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 2176
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "66550b5102e2803fb3cbd85f4b2543e0"
}
Frame {
msec: 2192
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "e495d8163793da7503b9d29c6721ff6e"
}
Frame {
msec: 2208
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "065e5775930146539ae589782f4e4352"
}
Frame {
msec: 2224
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "7861ff76ec52f1c0408636f7b53b30b6"
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 181; y: 122
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 2240
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "7861ff76ec52f1c0408636f7b53b30b6"
}
Frame {
msec: 2256
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "e87f15694846a75ff3801aff063d35c7"
}
Frame {
msec: 2272
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "67edcabe94a3968bbfe3dd1b0b2cd273"
}
Frame {
msec: 2288
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "a0f8e97d347970aca868538f4294a7ce"
}
Frame {
msec: 2304
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "c89421473e754235e209f35dea9afccb"
+ }
+ Mouse {
+ type: 4
+ button: 1
+ buttons: 1
+ x: 181; y: 122
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 2320
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "c89421473e754235e209f35dea9afccb"
}
Frame {
msec: 2336
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "cdfee36535e491328f5045b6f3378b64"
}
Frame {
msec: 2352
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "ab31653cb8a31f753782ffff045e2b07"
}
Frame {
msec: 2368
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "86a201ea5c4af2a28b4047c0732d33c8"
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 181; y: 122
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 2384
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "86a201ea5c4af2a28b4047c0732d33c8"
}
Frame {
msec: 2400
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "4bdc37cd35c71d8a25745cb0ff664fea"
}
Frame {
msec: 2416
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "5d03ca6d09d241bd686c878d53d9f269"
}
Frame {
msec: 2432
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "700ff7c6c4ae97b34309bd020807a0e1"
}
Frame {
msec: 2448
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "e812a79fb65142f6855974f87aabdc90"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 181; y: 122
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 2464
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "e812a79fb65142f6855974f87aabdc90"
}
Frame {
msec: 2480
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
- }
- Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 237; y: 299
- modifiers: 0
- sendToViewport: true
+ hash: "795809181debf916afbef73c41a66dee"
}
Frame {
msec: 2496
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
+ hash: "b61c0e25fa9f3c15f1caf91c25937d75"
}
Frame {
msec: 2512
- hash: "eaeeb8c51d43e3c38ff7dde632d1f9c8"
+ hash: "9dd01662ee9d0add862b3afadac72929"
}
Frame {
msec: 2528
- hash: "ec0e68c2e7a75fedd1091ce633dadd4f"
+ hash: "0a96c8fec8f6509dbbe16480fe8ebfb7"
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 181; y: 122
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 2544
- hash: "a5d60efc176dee9083a2d746e7ad8315"
+ hash: "0a96c8fec8f6509dbbe16480fe8ebfb7"
}
Frame {
msec: 2560
- hash: "48bcbbacf413080247f818e35e496e04"
+ hash: "ce67814de0091d5ab5cc2172a830bc93"
}
Frame {
msec: 2576
- hash: "c521af8efa19fbac39119ad75cd469f5"
+ hash: "d986a00663eb3dafb24bf67b3d6c7a04"
}
Frame {
msec: 2592
- hash: "0e74613c67fc9d9acb21a3d382c5efcd"
+ hash: "69e21aefb8bdbfaaa5e1e7969d827ec3"
}
Frame {
msec: 2608
- hash: "eeb3f4467ebd7ee678c3b7371db28519"
+ hash: "cdfee36535e491328f5045b6f3378b64"
}
Frame {
msec: 2624
- hash: "9c5b9009a35b74d0ddec8fec85f204bf"
+ hash: "cdb20c4866bdf55bd454864a31676053"
}
Frame {
msec: 2640
- hash: "aefc70824e23428aebf0a40830a57469"
+ hash: "46a79ff030b89a4c8791fd853a96b64f"
}
Frame {
msec: 2656
- hash: "1fa9c23760193b74b0063b4e4c434070"
+ hash: "c2535eb78e0cf46151f15cd2ec7c4838"
}
Frame {
msec: 2672
- hash: "8091700d4729163bd87521385853e608"
+ hash: "7a1455f07b916a63e43b89da4311a033"
}
Frame {
msec: 2688
- hash: "a13558e609570f9390f20a85d244fa22"
+ hash: "f9a2c0ef913ecd7026d9775648a063d6"
}
Frame {
msec: 2704
- hash: "7be5e3609bbeb9a2c1df7d52f3953d4d"
+ hash: "5da8f6f7d847c174da393015dfc33537"
}
Frame {
msec: 2720
- hash: "51c8ae31f858121d86ef09cc9a5c5ef3"
+ hash: "1d5f20cb721f1e5cb067095bee1b51fe"
}
Frame {
msec: 2736
- hash: "84ce8f39207f4b07c2c3323425a8c238"
+ hash: "ca7f5fa76264d1eb1182e46e371ee81c"
}
Frame {
msec: 2752
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "2467dc0ffdb051e092c5bfd5d371e6b6"
}
Frame {
msec: 2768
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "0b04e516eb08978914c39ec2d742e161"
}
Frame {
msec: 2784
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "5abec56587da54876c204d2e32efe7ad"
}
Frame {
msec: 2800
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 2816
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 2832
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 2848
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 2864
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 2880
- image: "parentAnimation.2.png"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 2896
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ image: "parentAnimation-visual.3.png"
}
Frame {
msec: 2912
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 2928
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 2944
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 2960
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 2976
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 2992
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 3008
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 3024
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 3040
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 3056
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 3072
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 3088
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 3104
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 181; y: 122
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 3120
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 3136
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "234b795b5dd412e4397f132f03f38175"
}
Frame {
msec: 3152
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "eca09aebcc15501fd348b9eb19b54ee2"
}
Frame {
msec: 3168
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "6ab63f771ac705439157cf0ed84bc274"
}
Frame {
msec: 3184
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "42212db87d03c35e96e38ac200bd9ec2"
}
Frame {
msec: 3200
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "46a79ff030b89a4c8791fd853a96b64f"
}
Frame {
msec: 3216
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "cdfee36535e491328f5045b6f3378b64"
}
Frame {
msec: 3232
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "5cfc7db34110aa39f296fe4475de0c08"
}
Frame {
msec: 3248
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "df59e3aa557a661ce513523c3059c41d"
}
Frame {
msec: 3264
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "2d2f8fc7d695bcd20ef682b25a22186a"
}
Frame {
msec: 3280
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "daac5f2d4b451501669a7767d0a19ccc"
}
Frame {
msec: 3296
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "e10801e6c7086eac3eaaa48a3d39bb95"
}
Frame {
msec: 3312
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "a5fdf57b20bf4d4aad99f02a13bbfc66"
}
Frame {
msec: 3328
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "b48721b169b4a1118b040a9e41c252a1"
}
Frame {
msec: 3344
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "242425f06d5706f0483e49812bfb4718"
}
Frame {
msec: 3360
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "33bdd4d71b1736055d821ee5040bfaed"
}
Frame {
msec: 3376
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Mouse {
- type: 2
- button: 1
- buttons: 1
- x: 237; y: 299
- modifiers: 0
- sendToViewport: true
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 3392
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 3408
- hash: "633b5668278295faa57d0cfffe8a29cb"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 3424
- hash: "ccbf4505e0f05547d2f7ce874ab941c0"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 3440
- hash: "be904489959fa365badb642fa9e85922"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 3456
- hash: "de6a97ac6e2677feb223336199cbffe1"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 3472
- hash: "997b0a547336a9bb6a67cd9beffe1831"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 3488
- hash: "ac9a6e111050b8a7c4492f06c33d3969"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 3504
- hash: "7313c0d2ee06e393f486670222c29bb4"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 3520
- hash: "24cea420d03d1fdcddb1b9cf5112cbee"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 3536
- hash: "764688785eeaa01e9c84821476911edb"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 3552
- hash: "b24ae0cb512abfd2606ff9c20a6751bf"
- }
- Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 237; y: 299
- modifiers: 0
- sendToViewport: true
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 3568
- hash: "b24ae0cb512abfd2606ff9c20a6751bf"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 3584
- hash: "d7bf1b48f1a03974e7f095468e07f037"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 3600
- hash: "a59ab4fe1c22d27b5cdde949cf90e6f4"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 3616
- hash: "7c3082720e65b8a6217bf5a5fe4d48c0"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 3632
- hash: "350d1ff24fb8fba0ab8a6694d99544b3"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 181; y: 122
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 3648
- hash: "81d17a62c33d79ed25968ec47771d292"
+ hash: "dce97e76b2541bbee52b0df1c1bb3d44"
}
Frame {
msec: 3664
- hash: "43fd3ef88bd7a2e5bf4546f088783077"
+ hash: "b985be8701f0bbb73facfe745d43e32f"
}
Frame {
msec: 3680
- hash: "041938ad2e023202db18df28f2329c8f"
+ hash: "6b3e91ff248516656fd2efe26db6c900"
}
Frame {
msec: 3696
- hash: "ec8677eae06cbf77a9508953325b179e"
- }
- Mouse {
- type: 4
- button: 1
- buttons: 1
- x: 237; y: 299
- modifiers: 0
- sendToViewport: true
+ hash: "40bd9296de59b3abc5b7a204a6ecff3f"
}
Frame {
msec: 3712
- hash: "ec8677eae06cbf77a9508953325b179e"
+ hash: "615817b53baf0d0cd290b18ad9deee4d"
}
Frame {
msec: 3728
- hash: "453026339c3901ee286831b4b41088f6"
+ hash: "c990d9afcebfc4dcc35457d555d7e9cb"
}
Frame {
msec: 3744
- hash: "d58a7a41ade691cc0acfb0303bfc3b68"
+ hash: "2d1a4687abe3fd7b1911f8e5020c4378"
}
Frame {
msec: 3760
- hash: "a200b05ef3d7e39e11513fd2f8ff1497"
+ hash: "b5e1399f1924dafa6782da6b739af882"
}
Frame {
msec: 3776
- hash: "faa1223975acdf2d4b48045d7f2ce445"
+ hash: "8686a36600410f4f39f558eadfb3479f"
}
Frame {
msec: 3792
- hash: "964d9b80d82d0fe3d3fb328a1661a60e"
+ hash: "39f1f7573198f86e1452211f62dc7f1a"
}
Frame {
msec: 3808
- hash: "705871bc384de93100354acb19b371b0"
+ hash: "fbfbbcb5637c0f90396150abb0aecb14"
}
Frame {
msec: 3824
- hash: "1a4480463adfc5a3d525916b03c2c3ce"
+ hash: "2c071570228d5a121a64c4c01c443ab2"
}
Frame {
msec: 3840
- image: "parentAnimation.3.png"
+ hash: "4e076ea1d8f566eca9aa5eb55ce02098"
}
Frame {
msec: 3856
- hash: "9a55bdf428f45f02d9c8cf414dcd7754"
- }
- Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 237; y: 299
- modifiers: 0
- sendToViewport: true
+ image: "parentAnimation-visual.4.png"
}
Frame {
msec: 3872
- hash: "9a55bdf428f45f02d9c8cf414dcd7754"
+ hash: "b519ad1958ea69fc4682c06e83f22c42"
}
Frame {
msec: 3888
- hash: "0f6d82d02ce7d79a1bdf6bf81791f321"
+ hash: "155b39717f45fe5d36348c499635e759"
}
Frame {
msec: 3904
- hash: "b145b9d299714020686069baec11cb71"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 3920
- hash: "5dbf5e4151c01f10cf23b07ca1df56ab"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 3936
- hash: "822d4397ac514673ca1015ad05c9b4ac"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 3952
- hash: "461d35e865153d22e9a67bb0ffddefb7"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 3968
- hash: "676fff498e6879144090d5596056c6c8"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 3984
- hash: "854da7ed627237250e20b263f9eb9d90"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 4000
- hash: "157ec877797883d329ff329537205d02"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 4016
- hash: "613669ca60240fcc490d548fe802390d"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 4032
- hash: "803e84f027c773db96f9530511e5fedb"
- }
- Mouse {
- type: 2
- button: 1
- buttons: 1
- x: 237; y: 299
- modifiers: 0
- sendToViewport: true
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 4048
- hash: "803e84f027c773db96f9530511e5fedb"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 4064
- hash: "f47cfd1f1094b782c08490be2f49c6ed"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 4080
- hash: "db5953f3ee4e2db87e33b85464167f74"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 4096
- hash: "8313cb750b9abc586a43b9422de08f53"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 4112
- hash: "deb390ce992fee85c56733168b4bd1ec"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 4128
- hash: "29a1cda3647c49731e9adcd107a2d13c"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 4144
- hash: "bfa17a3afa06699107b217df6e4aed43"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 4160
- hash: "8e639ef01ab6d8876c3f40adc44928c6"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 4176
- hash: "14038aedf42de0ca62d872d317018ee0"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 4192
- hash: "c1288465163d44ed40e28f21e0298ea6"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 4208
- hash: "d6915f22a905737488d27e8138002f31"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 4224
- hash: "5b1621451a5a3af40302603ec31bb8bb"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 4240
- hash: "16fd73c0cb615cc717cdc4a6787471c2"
- }
- Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 237; y: 299
- modifiers: 0
- sendToViewport: true
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 4256
- hash: "16fd73c0cb615cc717cdc4a6787471c2"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 4272
- hash: "db5caf42e11705ecdb2006e1ed6b0c4f"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 4288
- hash: "4b7e51e4e9fb1dacb32aac11a4a46ceb"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 4304
- hash: "63c93cda9892f733809125991af997b6"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 4320
- hash: "0e74613c67fc9d9acb21a3d382c5efcd"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 4336
- hash: "58e813a6619828b6c9ec9cf300ff0e2d"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 4352
- hash: "181a6e334d745381f091bf1b55fc1690"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 4368
- hash: "f25bbc9ddc8cc72036c49d50b45bece8"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 4384
- hash: "88e8f0496debfee6bc2426895fe1c3d9"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 4400
- hash: "db5953f3ee4e2db87e33b85464167f74"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
Frame {
msec: 4416
- hash: "9818a899adb916b6ba5f7537697ef062"
- }
- Frame {
- msec: 4432
- hash: "3842f40093d70089a4004fb803c05981"
- }
- Frame {
- msec: 4448
- hash: "be904489959fa365badb642fa9e85922"
- }
- Frame {
- msec: 4464
- hash: "cbae27751ff0ebce4fcc164564f4cf1b"
- }
- Frame {
- msec: 4480
- hash: "3a1b468bd3fd747bbe6b069426b170a9"
- }
- Frame {
- msec: 4496
- hash: "57fbcd580eb1607a2a7526a65842dfeb"
- }
- Frame {
- msec: 4512
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 4528
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 4544
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 4560
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 4576
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 4592
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 4608
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 4624
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Mouse {
- type: 2
- button: 1
- buttons: 1
- x: 237; y: 299
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 4640
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 4656
- hash: "633b5668278295faa57d0cfffe8a29cb"
- }
- Frame {
- msec: 4672
- hash: "ccbf4505e0f05547d2f7ce874ab941c0"
- }
- Frame {
- msec: 4688
- hash: "be904489959fa365badb642fa9e85922"
- }
- Frame {
- msec: 4704
- hash: "de6a97ac6e2677feb223336199cbffe1"
- }
- Frame {
- msec: 4720
- hash: "997b0a547336a9bb6a67cd9beffe1831"
- }
- Frame {
- msec: 4736
- hash: "ac9a6e111050b8a7c4492f06c33d3969"
- }
- Frame {
- msec: 4752
- hash: "7313c0d2ee06e393f486670222c29bb4"
- }
- Frame {
- msec: 4768
- hash: "24cea420d03d1fdcddb1b9cf5112cbee"
- }
- Frame {
- msec: 4784
- hash: "764688785eeaa01e9c84821476911edb"
- }
- Frame {
- msec: 4800
- image: "parentAnimation.4.png"
- }
- Frame {
- msec: 4816
- hash: "f1daed3391f10e27435a54222df8d0ab"
- }
- Frame {
- msec: 4832
- hash: "99704e182267f2c12d0215b9c03f4d68"
- }
- Frame {
- msec: 4848
- hash: "143cd9259a41b8af5d41a5b2aaf8de64"
- }
- Frame {
- msec: 4864
- hash: "b5f0a0f838b5870c162a24cd767f068b"
- }
- Frame {
- msec: 4880
- hash: "c5c8cdcbfab7466e447eaff582bf7312"
- }
- Frame {
- msec: 4896
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
- }
- Frame {
- msec: 4912
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
- }
- Frame {
- msec: 4928
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
- }
- Frame {
- msec: 4944
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
- }
- Frame {
- msec: 4960
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
- }
- Frame {
- msec: 4976
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
- }
- Frame {
- msec: 4992
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
- }
- Frame {
- msec: 5008
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
- }
- Frame {
- msec: 5024
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
- }
- Frame {
- msec: 5040
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
- }
- Frame {
- msec: 5056
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
- }
- Frame {
- msec: 5072
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
- }
- Frame {
- msec: 5088
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
- }
- Frame {
- msec: 5104
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
- }
- Frame {
- msec: 5120
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
- }
- Frame {
- msec: 5136
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
- }
- Frame {
- msec: 5152
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
- }
- Frame {
- msec: 5168
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
- }
- Frame {
- msec: 5184
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
- }
- Frame {
- msec: 5200
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
- }
- Frame {
- msec: 5216
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
- }
- Frame {
- msec: 5232
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
- }
- Frame {
- msec: 5248
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
- }
- Frame {
- msec: 5264
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
- }
- Frame {
- msec: 5280
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
- }
- Frame {
- msec: 5296
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
- }
- Frame {
- msec: 5312
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
- }
- Frame {
- msec: 5328
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
- }
- Frame {
- msec: 5344
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
- }
- Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 237; y: 299
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 5360
- hash: "f1bc451d1f62cfb5dd60a7ea483d3844"
- }
- Frame {
- msec: 5376
- hash: "eaeeb8c51d43e3c38ff7dde632d1f9c8"
- }
- Frame {
- msec: 5392
- hash: "ec0e68c2e7a75fedd1091ce633dadd4f"
- }
- Frame {
- msec: 5408
- hash: "a5d60efc176dee9083a2d746e7ad8315"
- }
- Frame {
- msec: 5424
- hash: "48bcbbacf413080247f818e35e496e04"
- }
- Frame {
- msec: 5440
- hash: "c521af8efa19fbac39119ad75cd469f5"
- }
- Frame {
- msec: 5456
- hash: "0e74613c67fc9d9acb21a3d382c5efcd"
- }
- Frame {
- msec: 5472
- hash: "eeb3f4467ebd7ee678c3b7371db28519"
- }
- Frame {
- msec: 5488
- hash: "9c5b9009a35b74d0ddec8fec85f204bf"
- }
- Frame {
- msec: 5504
- hash: "aefc70824e23428aebf0a40830a57469"
- }
- Frame {
- msec: 5520
- hash: "1fa9c23760193b74b0063b4e4c434070"
- }
- Frame {
- msec: 5536
- hash: "8091700d4729163bd87521385853e608"
- }
- Frame {
- msec: 5552
- hash: "a13558e609570f9390f20a85d244fa22"
- }
- Frame {
- msec: 5568
- hash: "7be5e3609bbeb9a2c1df7d52f3953d4d"
- }
- Frame {
- msec: 5584
- hash: "51c8ae31f858121d86ef09cc9a5c5ef3"
- }
- Frame {
- msec: 5600
- hash: "84ce8f39207f4b07c2c3323425a8c238"
- }
- Frame {
- msec: 5616
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 5632
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 5648
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 5664
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 5680
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 5696
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 5712
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 5728
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 5744
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 5760
- image: "parentAnimation.5.png"
- }
- Frame {
- msec: 5776
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 5792
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 5808
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 5824
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 5840
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 5856
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 5872
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 5888
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 5904
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 5920
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 5936
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 5952
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 5968
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 5984
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 6000
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 6016
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Key {
- type: 6
- key: 16777249
- modifiers: 67108864
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 6032
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 6048
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 6064
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 6080
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 6096
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 6112
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 6128
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 6144
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 6160
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 6176
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 6192
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 6208
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 6224
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 6240
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 6256
- hash: "4135271d78a5c63c3837a09c86f35ebe"
- }
- Frame {
- msec: 6272
- hash: "4135271d78a5c63c3837a09c86f35ebe"
+ hash: "fbf01bb217e393b79a6a2c567750de89"
}
}
diff --git a/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation.0.png b/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation.0.png
deleted file mode 100644
index 7d41abcca0..0000000000
--- a/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation.0.png
+++ /dev/null
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation.1.png b/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation.1.png
deleted file mode 100644
index 16b95ab3da..0000000000
--- a/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation.1.png
+++ /dev/null
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation.2.png b/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation.2.png
deleted file mode 100644
index 7d41abcca0..0000000000
--- a/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation.2.png
+++ /dev/null
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation.3.png b/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation.3.png
deleted file mode 100644
index 800bf12b5a..0000000000
--- a/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation.3.png
+++ /dev/null
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation.4.png b/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation.4.png
deleted file mode 100644
index d0155bbb81..0000000000
--- a/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation.4.png
+++ /dev/null
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation.5.png b/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation.5.png
deleted file mode 100644
index 7d41abcca0..0000000000
--- a/tests/auto/declarative/qmlvisual/animation/parentAnimation/data/parentAnimation.5.png
+++ /dev/null
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/parentAnimation/parentAnimation-visual.qml b/tests/auto/declarative/qmlvisual/animation/parentAnimation/parentAnimation-visual.qml
index 42cec3a46b..025aa80020 100644
--- a/tests/auto/declarative/qmlvisual/animation/parentAnimation/parentAnimation-visual.qml
+++ b/tests/auto/declarative/qmlvisual/animation/parentAnimation/parentAnimation-visual.qml
@@ -10,14 +10,14 @@ then a final full transition.
*/
Rectangle {
- width: 800;
- height: 480;
+ width: 400;
+ height: 240;
color: "black";
Rectangle {
id: gr
color: "green"
- width: 100; height: 100
+ width: 50; height: 50
}
MouseArea {
@@ -27,21 +27,21 @@ Rectangle {
Rectangle {
id: np
- x: 300
- width: 300; height: 300
+ x: 150
+ width: 150; height: 150
color: "yellow"
clip: true
Rectangle {
color: "red"
- x: 100; y: 100; height: 100; width: 100
+ x: 50; y: 50; height: 50; width: 50
}
}
Rectangle {
id: vp
- x: 200; y: 200
- width: 100; height: 100
+ x: 100; y: 100
+ width: 50; height: 50
color: "blue"
rotation: 45
scale: 2
@@ -53,7 +53,7 @@ Rectangle {
ParentChange {
target: gr
parent: np
- x: 100; y: 100; width: 200;
+ x: 50; y: 50; width: 100;
}
}
diff --git a/tests/auto/declarative/qmlvisual/animation/parentAnimation2/data/parentAnimation2.0.png b/tests/auto/declarative/qmlvisual/animation/parentAnimation2/data/parentAnimation2.0.png
index 135911c2fa..03ae932a97 100644
--- a/tests/auto/declarative/qmlvisual/animation/parentAnimation2/data/parentAnimation2.0.png
+++ b/tests/auto/declarative/qmlvisual/animation/parentAnimation2/data/parentAnimation2.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/parentAnimation2/data/parentAnimation2.1.png b/tests/auto/declarative/qmlvisual/animation/parentAnimation2/data/parentAnimation2.1.png
index 0d71292023..175adc3cfb 100644
--- a/tests/auto/declarative/qmlvisual/animation/parentAnimation2/data/parentAnimation2.1.png
+++ b/tests/auto/declarative/qmlvisual/animation/parentAnimation2/data/parentAnimation2.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/parentAnimation2/data/parentAnimation2.2.png b/tests/auto/declarative/qmlvisual/animation/parentAnimation2/data/parentAnimation2.2.png
index 920d992319..4dbe6a4f6e 100644
--- a/tests/auto/declarative/qmlvisual/animation/parentAnimation2/data/parentAnimation2.2.png
+++ b/tests/auto/declarative/qmlvisual/animation/parentAnimation2/data/parentAnimation2.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/parentAnimation2/data/parentAnimation2.3.png b/tests/auto/declarative/qmlvisual/animation/parentAnimation2/data/parentAnimation2.3.png
index 1c4d89e2bb..b9ea6b8722 100644
--- a/tests/auto/declarative/qmlvisual/animation/parentAnimation2/data/parentAnimation2.3.png
+++ b/tests/auto/declarative/qmlvisual/animation/parentAnimation2/data/parentAnimation2.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/parentAnimation2/data/parentAnimation2.qml b/tests/auto/declarative/qmlvisual/animation/parentAnimation2/data/parentAnimation2.qml
index 9e1b923867..1d7817b6da 100644
--- a/tests/auto/declarative/qmlvisual/animation/parentAnimation2/data/parentAnimation2.qml
+++ b/tests/auto/declarative/qmlvisual/animation/parentAnimation2/data/parentAnimation2.qml
@@ -6,7 +6,7 @@ VisualTest {
}
Frame {
msec: 16
- hash: "b3bfd7a06d3e246f4256ab5a267360b0"
+ image: "parentAnimation2.0.png"
}
Frame {
msec: 32
@@ -258,11 +258,11 @@ VisualTest {
}
Frame {
msec: 960
- image: "parentAnimation2.0.png"
+ hash: "5983f3e0800859134bff0182fe9e0142"
}
Frame {
msec: 976
- hash: "95b4fe1e5eeffe1673e199308e8ce76c"
+ image: "parentAnimation2.1.png"
}
Frame {
msec: 992
@@ -514,11 +514,11 @@ VisualTest {
}
Frame {
msec: 1920
- image: "parentAnimation2.1.png"
+ hash: "3210f97ac2799d84fc1d872c4c2994f7"
}
Frame {
msec: 1936
- hash: "60ed700e49bf2c51aba9b44400b56294"
+ image: "parentAnimation2.2.png"
}
Frame {
msec: 1952
@@ -762,11 +762,11 @@ VisualTest {
}
Frame {
msec: 2880
- image: "parentAnimation2.2.png"
+ hash: "acab4a79f22ebc8a45759ae282e8f3db"
}
Frame {
msec: 2896
- hash: "acab4a79f22ebc8a45759ae282e8f3db"
+ image: "parentAnimation2.3.png"
}
Mouse {
type: 3
@@ -1018,6 +1018,6 @@ VisualTest {
}
Frame {
msec: 3840
- image: "parentAnimation2.3.png"
+ hash: "b3bfd7a06d3e246f4256ab5a267360b0"
}
}
diff --git a/tests/auto/declarative/qmlvisual/animation/pauseAnimation/data/pauseAnimation-visual.0.png b/tests/auto/declarative/qmlvisual/animation/pauseAnimation/data/pauseAnimation-visual.0.png
new file mode 100644
index 0000000000..cb0971a6ef
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/animation/pauseAnimation/data/pauseAnimation-visual.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/pauseAnimation/data/pauseAnimation-visual.1.png b/tests/auto/declarative/qmlvisual/animation/pauseAnimation/data/pauseAnimation-visual.1.png
new file mode 100644
index 0000000000..c579dedaa8
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/animation/pauseAnimation/data/pauseAnimation-visual.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/pauseAnimation/data/pauseAnimation-visual.2.png b/tests/auto/declarative/qmlvisual/animation/pauseAnimation/data/pauseAnimation-visual.2.png
new file mode 100644
index 0000000000..49e2b9fe13
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/animation/pauseAnimation/data/pauseAnimation-visual.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/pauseAnimation/data/pauseAnimation-visual.3.png b/tests/auto/declarative/qmlvisual/animation/pauseAnimation/data/pauseAnimation-visual.3.png
new file mode 100644
index 0000000000..cb0971a6ef
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/animation/pauseAnimation/data/pauseAnimation-visual.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/pauseAnimation/data/pauseAnimation-visual.4.png b/tests/auto/declarative/qmlvisual/animation/pauseAnimation/data/pauseAnimation-visual.4.png
new file mode 100644
index 0000000000..e62485b362
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/animation/pauseAnimation/data/pauseAnimation-visual.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/pauseAnimation/data/pauseAnimation-visual.5.png b/tests/auto/declarative/qmlvisual/animation/pauseAnimation/data/pauseAnimation-visual.5.png
new file mode 100644
index 0000000000..61e746317d
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/animation/pauseAnimation/data/pauseAnimation-visual.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/pauseAnimation/data/pauseAnimation-visual.6.png b/tests/auto/declarative/qmlvisual/animation/pauseAnimation/data/pauseAnimation-visual.6.png
new file mode 100644
index 0000000000..8c31e7da5a
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/animation/pauseAnimation/data/pauseAnimation-visual.6.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/pauseAnimation/data/pauseAnimation-visual.qml b/tests/auto/declarative/qmlvisual/animation/pauseAnimation/data/pauseAnimation-visual.qml
index 8e1e1d7636..34deb9b186 100644
--- a/tests/auto/declarative/qmlvisual/animation/pauseAnimation/data/pauseAnimation-visual.qml
+++ b/tests/auto/declarative/qmlvisual/animation/pauseAnimation/data/pauseAnimation-visual.qml
@@ -6,7 +6,7 @@ VisualTest {
}
Frame {
msec: 16
- hash: "a350b70c5238a340e85fd4a3ec0390a3"
+ image: "pauseAnimation-visual.0.png"
}
Frame {
msec: 32
@@ -242,11 +242,11 @@ VisualTest {
}
Frame {
msec: 960
- image: "pauseAnimation.0.png"
+ hash: "f1e0301430d153fb9d15eaffdfcd5c58"
}
Frame {
msec: 976
- hash: "5f18a81707f23d377e81a27c1fc41ce9"
+ image: "pauseAnimation-visual.1.png"
}
Frame {
msec: 992
@@ -482,11 +482,11 @@ VisualTest {
}
Frame {
msec: 1920
- image: "pauseAnimation.1.png"
+ hash: "3042003c067b257de2cb32f650dde693"
}
Frame {
msec: 1936
- hash: "a725b59b4947357546bbfc7df3d830af"
+ image: "pauseAnimation-visual.2.png"
}
Frame {
msec: 1952
@@ -722,11 +722,11 @@ VisualTest {
}
Frame {
msec: 2880
- image: "pauseAnimation.2.png"
+ hash: "a350b70c5238a340e85fd4a3ec0390a3"
}
Frame {
msec: 2896
- hash: "a350b70c5238a340e85fd4a3ec0390a3"
+ image: "pauseAnimation-visual.3.png"
}
Frame {
msec: 2912
@@ -962,11 +962,11 @@ VisualTest {
}
Frame {
msec: 3840
- image: "pauseAnimation.3.png"
+ hash: "7c27ef654e645679c90520d6cf00b0c4"
}
Frame {
msec: 3856
- hash: "20258f07c613958c32f783466771391a"
+ image: "pauseAnimation-visual.4.png"
}
Frame {
msec: 3872
@@ -1202,11 +1202,11 @@ VisualTest {
}
Frame {
msec: 4800
- image: "pauseAnimation.4.png"
+ hash: "336d31586171f22d541b989d24b95cbb"
}
Frame {
msec: 4816
- hash: "f0d8132489c2f2ef760e905b3c093726"
+ image: "pauseAnimation-visual.5.png"
}
Frame {
msec: 4832
@@ -1442,11 +1442,11 @@ VisualTest {
}
Frame {
msec: 5760
- image: "pauseAnimation.5.png"
+ hash: "ce57e27af329eba4fac3ab891f0407ce"
}
Frame {
msec: 5776
- hash: "41ba853c3403f68a23e708df82e21c53"
+ image: "pauseAnimation-visual.6.png"
}
Frame {
msec: 5792
diff --git a/tests/auto/declarative/qmlvisual/animation/propertyAction/data/propertyAction-visual.0.png b/tests/auto/declarative/qmlvisual/animation/propertyAction/data/propertyAction-visual.0.png
index a02c063eac..7d2b66ef46 100644
--- a/tests/auto/declarative/qmlvisual/animation/propertyAction/data/propertyAction-visual.0.png
+++ b/tests/auto/declarative/qmlvisual/animation/propertyAction/data/propertyAction-visual.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/propertyAction/data/propertyAction-visual.1.png b/tests/auto/declarative/qmlvisual/animation/propertyAction/data/propertyAction-visual.1.png
index 0714b4acc6..a02c063eac 100644
--- a/tests/auto/declarative/qmlvisual/animation/propertyAction/data/propertyAction-visual.1.png
+++ b/tests/auto/declarative/qmlvisual/animation/propertyAction/data/propertyAction-visual.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/propertyAction/data/propertyAction-visual.2.png b/tests/auto/declarative/qmlvisual/animation/propertyAction/data/propertyAction-visual.2.png
index 7d2b66ef46..1af3243c15 100644
--- a/tests/auto/declarative/qmlvisual/animation/propertyAction/data/propertyAction-visual.2.png
+++ b/tests/auto/declarative/qmlvisual/animation/propertyAction/data/propertyAction-visual.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/propertyAction/data/propertyAction-visual.3.png b/tests/auto/declarative/qmlvisual/animation/propertyAction/data/propertyAction-visual.3.png
new file mode 100644
index 0000000000..7d2b66ef46
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/animation/propertyAction/data/propertyAction-visual.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/propertyAction/data/propertyAction-visual.qml b/tests/auto/declarative/qmlvisual/animation/propertyAction/data/propertyAction-visual.qml
index 09febd7525..3c24f5903d 100644
--- a/tests/auto/declarative/qmlvisual/animation/propertyAction/data/propertyAction-visual.qml
+++ b/tests/auto/declarative/qmlvisual/animation/propertyAction/data/propertyAction-visual.qml
@@ -6,7 +6,7 @@ VisualTest {
}
Frame {
msec: 16
- hash: "1e5ac43e0f553886bcb2b4016f7e3414"
+ image: "propertyAction-visual.0.png"
}
Frame {
msec: 32
@@ -250,11 +250,11 @@ VisualTest {
}
Frame {
msec: 960
- image: "propertyAction-visual.0.png"
+ hash: "4ba1bf769de9bc45630485d06642dc30"
}
Frame {
msec: 976
- hash: "4ba1bf769de9bc45630485d06642dc30"
+ image: "propertyAction-visual.1.png"
}
Frame {
msec: 992
@@ -498,11 +498,11 @@ VisualTest {
}
Frame {
msec: 1920
- image: "propertyAction-visual.1.png"
+ hash: "81c157daf3086b21ea2ba39277a31f3d"
}
Frame {
msec: 1936
- hash: "895ad99b422c5c6637f6569f391b4011"
+ image: "propertyAction-visual.2.png"
}
Frame {
msec: 1952
@@ -738,11 +738,11 @@ VisualTest {
}
Frame {
msec: 2880
- image: "propertyAction-visual.2.png"
+ hash: "1e5ac43e0f553886bcb2b4016f7e3414"
}
Frame {
msec: 2896
- hash: "1e5ac43e0f553886bcb2b4016f7e3414"
+ image: "propertyAction-visual.3.png"
}
Frame {
msec: 2912
diff --git a/tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.0.png b/tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.0.png
index 3545e5a853..4af174419a 100644
--- a/tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.0.png
+++ b/tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.1.png b/tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.1.png
index c7da35979b..29ca02a870 100644
--- a/tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.1.png
+++ b/tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.2.png b/tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.2.png
index d51e8e4ff8..c7da35979b 100644
--- a/tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.2.png
+++ b/tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.3.png b/tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.3.png
index c7da35979b..7373951f78 100644
--- a/tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.3.png
+++ b/tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.qml b/tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.qml
index 774cc134d8..05b5c995cf 100644
--- a/tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.qml
+++ b/tests/auto/declarative/qmlvisual/animation/qtbug10586/data/qtbug10586.qml
@@ -6,7 +6,7 @@ VisualTest {
}
Frame {
msec: 16
- hash: "0755ae54acb6af587bbf7ca509146e0f"
+ image: "qtbug10586.0.png"
}
Frame {
msec: 32
@@ -338,11 +338,11 @@ VisualTest {
}
Frame {
msec: 960
- image: "qtbug10586.0.png"
+ hash: "dff3c85f1bb42138410e9db7be98425b"
}
Frame {
msec: 976
- hash: "8a5247a3847809f56a2fdce0f4ac9c99"
+ image: "qtbug10586.1.png"
}
Frame {
msec: 992
@@ -666,11 +666,11 @@ VisualTest {
}
Frame {
msec: 1920
- image: "qtbug10586.1.png"
+ hash: "d84bf962449716cc64cb34b285926c48"
}
Frame {
msec: 1936
- hash: "d84bf962449716cc64cb34b285926c48"
+ image: "qtbug10586.2.png"
}
Frame {
msec: 1952
@@ -906,11 +906,11 @@ VisualTest {
}
Frame {
msec: 2880
- image: "qtbug10586.2.png"
+ hash: "7454984bc5316de021b87d04daf0e8bb"
}
Frame {
msec: 2896
- hash: "c6d306961e1e574d8c57fd849029121c"
+ image: "qtbug10586.3.png"
}
Frame {
msec: 2912
diff --git a/tests/auto/declarative/qmlvisual/animation/qtbug13398/data/qtbug13398.0.png b/tests/auto/declarative/qmlvisual/animation/qtbug13398/data/qtbug13398.0.png
index 16adc514df..29f7c750ad 100644
--- a/tests/auto/declarative/qmlvisual/animation/qtbug13398/data/qtbug13398.0.png
+++ b/tests/auto/declarative/qmlvisual/animation/qtbug13398/data/qtbug13398.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/qtbug13398/data/qtbug13398.1.png b/tests/auto/declarative/qmlvisual/animation/qtbug13398/data/qtbug13398.1.png
new file mode 100644
index 0000000000..d9a9959605
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/animation/qtbug13398/data/qtbug13398.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/qtbug13398/data/qtbug13398.qml b/tests/auto/declarative/qmlvisual/animation/qtbug13398/data/qtbug13398.qml
index 0cc98ce8c3..179dbc970d 100644
--- a/tests/auto/declarative/qmlvisual/animation/qtbug13398/data/qtbug13398.qml
+++ b/tests/auto/declarative/qmlvisual/animation/qtbug13398/data/qtbug13398.qml
@@ -6,7 +6,7 @@ VisualTest {
}
Frame {
msec: 16
- hash: "2452007928bf86b9c42e666c7a7afc89"
+ image: "qtbug13398.0.png"
}
Frame {
msec: 32
@@ -266,11 +266,11 @@ VisualTest {
}
Frame {
msec: 960
- image: "qtbug13398.0.png"
+ hash: "e09a359578935b988ac1cc8c40b25547"
}
Frame {
msec: 976
- hash: "e09a359578935b988ac1cc8c40b25547"
+ image: "qtbug13398.1.png"
}
Frame {
msec: 992
diff --git a/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.0.png b/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.0.png
index 454f6c1413..f08e0489c2 100644
--- a/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.0.png
+++ b/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.1.png b/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.1.png
index 9dde537866..f08e0489c2 100644
--- a/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.1.png
+++ b/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.2.png b/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.2.png
index 454f6c1413..9fb2be5e54 100644
--- a/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.2.png
+++ b/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.3.png b/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.3.png
index 454f6c1413..d229e87239 100644
--- a/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.3.png
+++ b/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.4.png b/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.4.png
index 043b487ed8..f08e0489c2 100644
--- a/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.4.png
+++ b/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.5.png b/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.5.png
index 79c791dee8..7d1d2cdac8 100644
--- a/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.5.png
+++ b/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.6.png b/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.6.png
index 454f6c1413..b537ace22a 100644
--- a/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.6.png
+++ b/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.6.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.7.png b/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.7.png
index 454f6c1413..f08e0489c2 100644
--- a/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.7.png
+++ b/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.7.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.8.png b/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.8.png
index a7d66741a8..d229e87239 100644
--- a/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.8.png
+++ b/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.8.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.9.png b/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.9.png
new file mode 100644
index 0000000000..432f8144b1
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.9.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.qml b/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.qml
index b4ee569de4..5146be2131 100644
--- a/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.qml
+++ b/tests/auto/declarative/qmlvisual/animation/reanchor/data/reanchor.qml
@@ -6,7 +6,7 @@ VisualTest {
}
Frame {
msec: 16
- hash: "213811853dbefdc418099721e3bf8651"
+ image: "reanchor.0.png"
}
Frame {
msec: 32
@@ -242,11 +242,11 @@ VisualTest {
}
Frame {
msec: 960
- image: "reanchor.0.png"
+ hash: "213811853dbefdc418099721e3bf8651"
}
Frame {
msec: 976
- hash: "213811853dbefdc418099721e3bf8651"
+ image: "reanchor.1.png"
}
Frame {
msec: 992
@@ -498,11 +498,11 @@ VisualTest {
}
Frame {
msec: 1920
- image: "reanchor.1.png"
+ hash: "ad3837dcf3e69274ac2918d796974f29"
}
Frame {
msec: 1936
- hash: "ad3837dcf3e69274ac2918d796974f29"
+ image: "reanchor.2.png"
}
Frame {
msec: 1952
@@ -770,11 +770,11 @@ VisualTest {
}
Frame {
msec: 2880
- image: "reanchor.2.png"
+ hash: "213811853dbefdc418099721e3bf8651"
}
Frame {
msec: 2896
- hash: "eb3eeb37ab7b26692cbf100adfaf3772"
+ image: "reanchor.3.png"
}
Frame {
msec: 2912
@@ -1026,11 +1026,11 @@ VisualTest {
}
Frame {
msec: 3840
- image: "reanchor.3.png"
+ hash: "213811853dbefdc418099721e3bf8651"
}
Frame {
msec: 3856
- hash: "213811853dbefdc418099721e3bf8651"
+ image: "reanchor.4.png"
}
Frame {
msec: 3872
@@ -1282,11 +1282,11 @@ VisualTest {
}
Frame {
msec: 4800
- image: "reanchor.4.png"
+ hash: "df51ffd71a82742af7c06f8a786f6bf2"
}
Frame {
msec: 4816
- hash: "c4559982aa3f3d291364deed4bd96d65"
+ image: "reanchor.5.png"
}
Frame {
msec: 4832
@@ -1522,11 +1522,11 @@ VisualTest {
}
Frame {
msec: 5760
- image: "reanchor.5.png"
+ hash: "1137e22c68e043950811dee295e19b04"
}
Frame {
msec: 5776
- hash: "1137e22c68e043950811dee295e19b04"
+ image: "reanchor.6.png"
}
Frame {
msec: 5792
@@ -1778,11 +1778,11 @@ VisualTest {
}
Frame {
msec: 6720
- image: "reanchor.6.png"
+ hash: "213811853dbefdc418099721e3bf8651"
}
Frame {
msec: 6736
- hash: "213811853dbefdc418099721e3bf8651"
+ image: "reanchor.7.png"
}
Frame {
msec: 6752
@@ -2034,11 +2034,11 @@ VisualTest {
}
Frame {
msec: 7680
- image: "reanchor.7.png"
+ hash: "213811853dbefdc418099721e3bf8651"
}
Frame {
msec: 7696
- hash: "eb3eeb37ab7b26692cbf100adfaf3772"
+ image: "reanchor.8.png"
}
Frame {
msec: 7712
@@ -2290,11 +2290,11 @@ VisualTest {
}
Frame {
msec: 8640
- image: "reanchor.8.png"
+ hash: "b36a09269dfc9173ff8583a62ae87e8a"
}
Frame {
msec: 8656
- hash: "6ed9b6118a0dc81c22af9fee108b7432"
+ image: "reanchor.9.png"
}
Frame {
msec: 8672
diff --git a/tests/auto/declarative/qmlvisual/animation/scriptAction/data/scriptAction-visual.0.png b/tests/auto/declarative/qmlvisual/animation/scriptAction/data/scriptAction-visual.0.png
index e7571f24b8..5bf32dda58 100644
--- a/tests/auto/declarative/qmlvisual/animation/scriptAction/data/scriptAction-visual.0.png
+++ b/tests/auto/declarative/qmlvisual/animation/scriptAction/data/scriptAction-visual.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/scriptAction/data/scriptAction-visual.1.png b/tests/auto/declarative/qmlvisual/animation/scriptAction/data/scriptAction-visual.1.png
index 60d09e9242..e7571f24b8 100644
--- a/tests/auto/declarative/qmlvisual/animation/scriptAction/data/scriptAction-visual.1.png
+++ b/tests/auto/declarative/qmlvisual/animation/scriptAction/data/scriptAction-visual.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/scriptAction/data/scriptAction-visual.2.png b/tests/auto/declarative/qmlvisual/animation/scriptAction/data/scriptAction-visual.2.png
new file mode 100644
index 0000000000..60d09e9242
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/animation/scriptAction/data/scriptAction-visual.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/animation/scriptAction/data/scriptAction-visual.qml b/tests/auto/declarative/qmlvisual/animation/scriptAction/data/scriptAction-visual.qml
index 82303efdea..f93458dc5a 100644
--- a/tests/auto/declarative/qmlvisual/animation/scriptAction/data/scriptAction-visual.qml
+++ b/tests/auto/declarative/qmlvisual/animation/scriptAction/data/scriptAction-visual.qml
@@ -6,7 +6,7 @@ VisualTest {
}
Frame {
msec: 16
- hash: "c5d2b291578c11c11452c29dc02bcad9"
+ image: "scriptAction-visual.0.png"
}
Frame {
msec: 32
@@ -250,11 +250,11 @@ VisualTest {
}
Frame {
msec: 960
- image: "scriptAction-visual.0.png"
+ hash: "1761f6606bbdf5772594cf96412337ca"
}
Frame {
msec: 976
- hash: "1761f6606bbdf5772594cf96412337ca"
+ image: "scriptAction-visual.1.png"
}
Frame {
msec: 992
@@ -498,11 +498,11 @@ VisualTest {
}
Frame {
msec: 1920
- image: "scriptAction-visual.1.png"
+ hash: "6741d853f099a5a98fcdf87053b69ec8"
}
Frame {
msec: 1936
- hash: "6741d853f099a5a98fcdf87053b69ec8"
+ image: "scriptAction-visual.2.png"
}
Frame {
msec: 1952
diff --git a/tests/auto/declarative/qmlvisual/fillmode/data/fillmode.0.png b/tests/auto/declarative/qmlvisual/fillmode/data/fillmode.0.png
index ee07a6849e..52fd55c37c 100644
--- a/tests/auto/declarative/qmlvisual/fillmode/data/fillmode.0.png
+++ b/tests/auto/declarative/qmlvisual/fillmode/data/fillmode.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/fillmode/face.png b/tests/auto/declarative/qmlvisual/fillmode/face.png
index 9623b1ad15..e087316821 100644
--- a/tests/auto/declarative/qmlvisual/fillmode/face.png
+++ b/tests/auto/declarative/qmlvisual/fillmode/face.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/fillmode/fillmode.qml b/tests/auto/declarative/qmlvisual/fillmode/fillmode.qml
index 2ac98dac47..b2ecfee4b7 100644
--- a/tests/auto/declarative/qmlvisual/fillmode/fillmode.qml
+++ b/tests/auto/declarative/qmlvisual/fillmode/fillmode.qml
@@ -6,16 +6,16 @@ import QtQuick 1.0
*/
Rectangle {
- id: screen; width: 750; height: 600; color: "gray"
+ id: screen; width: 360; height: 200; color: "gray"
property string source: "face.png"
Grid {
columns: 3
- Image { width: 250; height: 300; source: screen.source; fillMode: Image.Stretch }
- Image { width: 250; height: 300; source: screen.source; fillMode: Image.PreserveAspectFit; smooth: true }
- Image { width: 250; height: 300; source: screen.source; fillMode: Image.PreserveAspectCrop }
- Image { width: 250; height: 300; source: screen.source; fillMode: Image.Tile; smooth: true }
- Image { width: 250; height: 300; source: screen.source; fillMode: Image.TileHorizontally }
- Image { width: 250; height: 300; source: screen.source; fillMode: Image.TileVertically }
+ Image { width: 120; height: 100; source: screen.source; fillMode: Image.Stretch }
+ Image { width: 120; height: 100; source: screen.source; fillMode: Image.PreserveAspectFit; smooth: true }
+ Image { width: 120; height: 100; source: screen.source; fillMode: Image.PreserveAspectCrop }
+ Image { width: 120; height: 100; source: screen.source; fillMode: Image.Tile; smooth: true }
+ Image { width: 120; height: 100; source: screen.source; fillMode: Image.TileHorizontally }
+ Image { width: 120; height: 100; source: screen.source; fillMode: Image.TileVertically }
}
}
diff --git a/tests/auto/declarative/qmlvisual/focusscope/data-MAC/test3.0.png b/tests/auto/declarative/qmlvisual/focusscope/data-MAC/test3.0.png
deleted file mode 100644
index e469a7999f..0000000000
--- a/tests/auto/declarative/qmlvisual/focusscope/data-MAC/test3.0.png
+++ /dev/null
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/focusscope/data-MAC/test3.1.png b/tests/auto/declarative/qmlvisual/focusscope/data-MAC/test3.1.png
deleted file mode 100644
index 905603f020..0000000000
--- a/tests/auto/declarative/qmlvisual/focusscope/data-MAC/test3.1.png
+++ /dev/null
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/focusscope/data-MAC/test3.2.png b/tests/auto/declarative/qmlvisual/focusscope/data-MAC/test3.2.png
deleted file mode 100644
index 5cbd3bdf91..0000000000
--- a/tests/auto/declarative/qmlvisual/focusscope/data-MAC/test3.2.png
+++ /dev/null
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/focusscope/data-MAC/test3.3.png b/tests/auto/declarative/qmlvisual/focusscope/data-MAC/test3.3.png
deleted file mode 100644
index 851c1ba582..0000000000
--- a/tests/auto/declarative/qmlvisual/focusscope/data-MAC/test3.3.png
+++ /dev/null
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/focusscope/data-MAC/test3.qml b/tests/auto/declarative/qmlvisual/focusscope/data-MAC/test3.qml
deleted file mode 100644
index 0c9747e5f9..0000000000
--- a/tests/auto/declarative/qmlvisual/focusscope/data-MAC/test3.qml
+++ /dev/null
@@ -1,1327 +0,0 @@
-import Qt.VisualTest 4.7
-
-VisualTest {
- Frame {
- msec: 0
- }
- Frame {
- msec: 16
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 32
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 48
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 64
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 80
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 96
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 112
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 128
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 144
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 160
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 176
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 192
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 208
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 224
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 240
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 256
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 272
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 288
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 304
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 320
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 336
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 352
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 368
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 384
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 400
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 416
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 432
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 448
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 464
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 480
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 496
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 512
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 528
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Key {
- type: 6
- key: 16777236
- modifiers: 0
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 544
- hash: "be06cc567f08fbc0cd60d753a19df162"
- }
- Frame {
- msec: 560
- hash: "c4cf6807b423553872e848146e79efb3"
- }
- Frame {
- msec: 576
- hash: "b83923f1eef68a4a8dd36acad0f4b592"
- }
- Frame {
- msec: 592
- hash: "5599829a04f2c2a6c6181c5857762ba0"
- }
- Frame {
- msec: 608
- hash: "95da52b5add95150dd446bc5055a2b60"
- }
- Key {
- type: 7
- key: 16777236
- modifiers: 0
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 624
- hash: "9bb2757c3b1bbc051edd9ebd240611f8"
- }
- Frame {
- msec: 640
- hash: "25213fbced4c67f42ce35d07db93bb32"
- }
- Frame {
- msec: 656
- hash: "2a9ded25ed2dbb9563f9c14084234a22"
- }
- Frame {
- msec: 672
- hash: "2f532511a50d743aa1c7ebcc9b2b7350"
- }
- Frame {
- msec: 688
- hash: "2f532511a50d743aa1c7ebcc9b2b7350"
- }
- Frame {
- msec: 704
- hash: "2f532511a50d743aa1c7ebcc9b2b7350"
- }
- Frame {
- msec: 720
- hash: "2f532511a50d743aa1c7ebcc9b2b7350"
- }
- Key {
- type: 6
- key: 16777236
- modifiers: 0
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 736
- hash: "8c9f7d72e077a7e75d185a2ecbdcc77c"
- }
- Frame {
- msec: 752
- hash: "55a417e91f182ebd28dd7264d8b76363"
- }
- Frame {
- msec: 768
- hash: "01a637de9f60c82bfd9140e852e17574"
- }
- Frame {
- msec: 784
- hash: "01194b2c3489ea7298e961979064aab3"
- }
- Key {
- type: 7
- key: 16777236
- modifiers: 0
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 800
- hash: "f6126328d483536d3f161f71d40821df"
- }
- Frame {
- msec: 816
- hash: "b99dd9793a63bbdab37cfe236d56c589"
- }
- Frame {
- msec: 832
- hash: "825f39b42d0b2e0d894874713b731cfc"
- }
- Frame {
- msec: 848
- hash: "7729b9c2133c52e50f43d6100a24e9c2"
- }
- Frame {
- msec: 864
- hash: "e2f3bec9571b08b451309221b34ace5e"
- }
- Frame {
- msec: 880
- hash: "e2f3bec9571b08b451309221b34ace5e"
- }
- Key {
- type: 6
- key: 16777236
- modifiers: 0
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 896
- hash: "8e59b002437ec17043d11c92556365fd"
- }
- Frame {
- msec: 912
- hash: "3809a54af9c9a4b15aa8b82caa5b703f"
- }
- Frame {
- msec: 928
- hash: "96cb1ab7123c54d4fa0d93b6501a439d"
- }
- Key {
- type: 7
- key: 16777236
- modifiers: 0
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 944
- hash: "de74cd5be709954522dd02945d6da9c9"
- }
- Frame {
- msec: 960
- image: "test3.0.png"
- }
- Frame {
- msec: 976
- hash: "d3ff94471da3620701d62b87f37fca8b"
- }
- Frame {
- msec: 992
- hash: "15bccb078b9061ef50c73a974e2f43fa"
- }
- Frame {
- msec: 1008
- hash: "ea2059d511fdab60e77e9261f81aadfb"
- }
- Frame {
- msec: 1024
- hash: "ea2059d511fdab60e77e9261f81aadfb"
- }
- Frame {
- msec: 1040
- hash: "ea2059d511fdab60e77e9261f81aadfb"
- }
- Frame {
- msec: 1056
- hash: "ea2059d511fdab60e77e9261f81aadfb"
- }
- Key {
- type: 6
- key: 16777236
- modifiers: 0
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 1072
- hash: "5b68568968d0de3a9bad8d053045f45c"
- }
- Frame {
- msec: 1088
- hash: "6b6da385fbc00e3542d7007524ff87f6"
- }
- Key {
- type: 7
- key: 16777236
- modifiers: 0
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 1104
- hash: "bba5021ad78a5a142cf54d4db8d8689e"
- }
- Frame {
- msec: 1120
- hash: "5c223d5dcf028cd3bac18b21359253f3"
- }
- Frame {
- msec: 1136
- hash: "c5b09a11d466fd90e1014f58755ec77b"
- }
- Frame {
- msec: 1152
- hash: "f4ba8fcc4f955e25c2364d8ee1054d0d"
- }
- Frame {
- msec: 1168
- hash: "2a6009e790cd98e3a67c107b0f08e00b"
- }
- Frame {
- msec: 1184
- hash: "caa1b5ee40dc20c87516b7292a86f79b"
- }
- Frame {
- msec: 1200
- hash: "200dd4ac9c40c6eb32ad43570995f17d"
- }
- Frame {
- msec: 1216
- hash: "200dd4ac9c40c6eb32ad43570995f17d"
- }
- Key {
- type: 6
- key: 16777236
- modifiers: 0
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 1232
- hash: "2333dcdf0f46ade554e036caa5e3cb31"
- }
- Frame {
- msec: 1248
- hash: "9b09c65db96f483dec7ba3a55b5a91e6"
- }
- Key {
- type: 7
- key: 16777236
- modifiers: 0
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 1264
- hash: "49fc76245e741968095ab689195da40c"
- }
- Frame {
- msec: 1280
- hash: "4e991b92348d813f5a3a1080270a88a3"
- }
- Frame {
- msec: 1296
- hash: "1e4a07fc966dab9ee0d39b25a4c43c09"
- }
- Frame {
- msec: 1312
- hash: "ade33b908f2a5e6916a74bc00b08414e"
- }
- Frame {
- msec: 1328
- hash: "481b41b7bc8fafcb40b7d09fcfc2e86e"
- }
- Frame {
- msec: 1344
- hash: "68b528414ba662f14ea71511a01f8d33"
- }
- Frame {
- msec: 1360
- hash: "68b528414ba662f14ea71511a01f8d33"
- }
- Frame {
- msec: 1376
- hash: "68b528414ba662f14ea71511a01f8d33"
- }
- Frame {
- msec: 1392
- hash: "68b528414ba662f14ea71511a01f8d33"
- }
- Frame {
- msec: 1408
- hash: "68b528414ba662f14ea71511a01f8d33"
- }
- Frame {
- msec: 1424
- hash: "68b528414ba662f14ea71511a01f8d33"
- }
- Frame {
- msec: 1440
- hash: "68b528414ba662f14ea71511a01f8d33"
- }
- Frame {
- msec: 1456
- hash: "68b528414ba662f14ea71511a01f8d33"
- }
- Frame {
- msec: 1472
- hash: "68b528414ba662f14ea71511a01f8d33"
- }
- Frame {
- msec: 1488
- hash: "68b528414ba662f14ea71511a01f8d33"
- }
- Key {
- type: 6
- key: 16777236
- modifiers: 0
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 1504
- hash: "2a8a2867f38ff05a9ef5fa50fe7de229"
- }
- Frame {
- msec: 1520
- hash: "824ec4f9e596a67fe6ca17ea03529c1f"
- }
- Frame {
- msec: 1536
- hash: "bf7d9c49d0a0ff4d03ceadf8d797a774"
- }
- Key {
- type: 7
- key: 16777236
- modifiers: 0
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 1552
- hash: "3e3c62601c2965e851e8b5c0adb73651"
- }
- Frame {
- msec: 1568
- hash: "ed7357b2596da4683bb19cbf1dcd6458"
- }
- Frame {
- msec: 1584
- hash: "32ed0774f926341af504b716bd9394e1"
- }
- Frame {
- msec: 1600
- hash: "2d4ffbd7cf53ca4824d206d4a4608ebb"
- }
- Frame {
- msec: 1616
- hash: "a7a0b6bd336f00a10818bdd9992a29bb"
- }
- Frame {
- msec: 1632
- hash: "55801794958126a1890bc0122084ee20"
- }
- Frame {
- msec: 1648
- hash: "55801794958126a1890bc0122084ee20"
- }
- Frame {
- msec: 1664
- hash: "55801794958126a1890bc0122084ee20"
- }
- Frame {
- msec: 1680
- hash: "55801794958126a1890bc0122084ee20"
- }
- Key {
- type: 6
- key: 16777236
- modifiers: 0
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 1696
- hash: "49573efd5a0bc65107a074fb35d67f63"
- }
- Frame {
- msec: 1712
- hash: "c9bf07bc12f97c6d0eef816ce4423f5b"
- }
- Frame {
- msec: 1728
- hash: "ab91f24c27d52123502815381e926cdc"
- }
- Frame {
- msec: 1744
- hash: "32ca7e06569a63d56ab71c67c9f82d60"
- }
- Key {
- type: 7
- key: 16777236
- modifiers: 0
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 1760
- hash: "9e5f04f019ccd1f27b511faeb7470e10"
- }
- Frame {
- msec: 1776
- hash: "5544186a3338dd788367fa4262815204"
- }
- Frame {
- msec: 1792
- hash: "c01aa7b7363faf99f69b90be8843f059"
- }
- Frame {
- msec: 1808
- hash: "6bd1ec848b817ef978b4dfae4eb23c1e"
- }
- Frame {
- msec: 1824
- hash: "b75bd8d4e4f3fb5067b05ebf37f92e9b"
- }
- Frame {
- msec: 1840
- hash: "b75bd8d4e4f3fb5067b05ebf37f92e9b"
- }
- Frame {
- msec: 1856
- hash: "b75bd8d4e4f3fb5067b05ebf37f92e9b"
- }
- Frame {
- msec: 1872
- hash: "b75bd8d4e4f3fb5067b05ebf37f92e9b"
- }
- Key {
- type: 6
- key: 16777236
- modifiers: 0
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 1888
- hash: "04a3efd4b810417632726048bdffa904"
- }
- Frame {
- msec: 1904
- hash: "c347e7d3dccba41102e2b669c9e9c0a0"
- }
- Frame {
- msec: 1920
- image: "test3.1.png"
- }
- Frame {
- msec: 1936
- hash: "47c9794374c383e1f595e60ea6890e11"
- }
- Frame {
- msec: 1952
- hash: "73cdfe34edab93baea779896169b4195"
- }
- Key {
- type: 7
- key: 16777236
- modifiers: 0
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 1968
- hash: "53add51d9e11a1fc4d0f6e3d1c6a70bc"
- }
- Frame {
- msec: 1984
- hash: "90143346b171faf5bdb7d4d0c0556b24"
- }
- Frame {
- msec: 2000
- hash: "e4e642507d3a631f5813a11cb7673c91"
- }
- Frame {
- msec: 2016
- hash: "f5f1725edd19f1735139d178955533f8"
- }
- Frame {
- msec: 2032
- hash: "f5f1725edd19f1735139d178955533f8"
- }
- Frame {
- msec: 2048
- hash: "f5f1725edd19f1735139d178955533f8"
- }
- Frame {
- msec: 2064
- hash: "f5f1725edd19f1735139d178955533f8"
- }
- Frame {
- msec: 2080
- hash: "f5f1725edd19f1735139d178955533f8"
- }
- Frame {
- msec: 2096
- hash: "f5f1725edd19f1735139d178955533f8"
- }
- Frame {
- msec: 2112
- hash: "f5f1725edd19f1735139d178955533f8"
- }
- Frame {
- msec: 2128
- hash: "f5f1725edd19f1735139d178955533f8"
- }
- Frame {
- msec: 2144
- hash: "f5f1725edd19f1735139d178955533f8"
- }
- Frame {
- msec: 2160
- hash: "f5f1725edd19f1735139d178955533f8"
- }
- Frame {
- msec: 2176
- hash: "f5f1725edd19f1735139d178955533f8"
- }
- Frame {
- msec: 2192
- hash: "f5f1725edd19f1735139d178955533f8"
- }
- Frame {
- msec: 2208
- hash: "f5f1725edd19f1735139d178955533f8"
- }
- Frame {
- msec: 2224
- hash: "f5f1725edd19f1735139d178955533f8"
- }
- Frame {
- msec: 2240
- hash: "f5f1725edd19f1735139d178955533f8"
- }
- Frame {
- msec: 2256
- hash: "f5f1725edd19f1735139d178955533f8"
- }
- Frame {
- msec: 2272
- hash: "f5f1725edd19f1735139d178955533f8"
- }
- Frame {
- msec: 2288
- hash: "f5f1725edd19f1735139d178955533f8"
- }
- Frame {
- msec: 2304
- hash: "f5f1725edd19f1735139d178955533f8"
- }
- Frame {
- msec: 2320
- hash: "f5f1725edd19f1735139d178955533f8"
- }
- Frame {
- msec: 2336
- hash: "f5f1725edd19f1735139d178955533f8"
- }
- Frame {
- msec: 2352
- hash: "f5f1725edd19f1735139d178955533f8"
- }
- Frame {
- msec: 2368
- hash: "f5f1725edd19f1735139d178955533f8"
- }
- Frame {
- msec: 2384
- hash: "f5f1725edd19f1735139d178955533f8"
- }
- Frame {
- msec: 2400
- hash: "f5f1725edd19f1735139d178955533f8"
- }
- Frame {
- msec: 2416
- hash: "f5f1725edd19f1735139d178955533f8"
- }
- Frame {
- msec: 2432
- hash: "f5f1725edd19f1735139d178955533f8"
- }
- Frame {
- msec: 2448
- hash: "f5f1725edd19f1735139d178955533f8"
- }
- Frame {
- msec: 2464
- hash: "f5f1725edd19f1735139d178955533f8"
- }
- Key {
- type: 6
- key: 16777234
- modifiers: 0
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 2480
- hash: "512e992c6d621225735c37e2626714ad"
- }
- Frame {
- msec: 2496
- hash: "1a708d62af48302e93dda0ef0822aebb"
- }
- Frame {
- msec: 2512
- hash: "220660969092ba1b17addc6ba7148e06"
- }
- Frame {
- msec: 2528
- hash: "9dcdd42efc9beb957abdeaf2ee01fc43"
- }
- Frame {
- msec: 2544
- hash: "5995ac01ee680d6747dc78c36f70b577"
- }
- Key {
- type: 7
- key: 16777234
- modifiers: 0
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 2560
- hash: "c6eb964d8f4bf849df63eebdfbf6e286"
- }
- Frame {
- msec: 2576
- hash: "cff1925a172e278a36068886f0efbcbf"
- }
- Frame {
- msec: 2592
- hash: "4c725a05332806387713ab54302c559f"
- }
- Frame {
- msec: 2608
- hash: "b75bd8d4e4f3fb5067b05ebf37f92e9b"
- }
- Frame {
- msec: 2624
- hash: "b75bd8d4e4f3fb5067b05ebf37f92e9b"
- }
- Key {
- type: 6
- key: 16777234
- modifiers: 0
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 2640
- hash: "0cb7eeb24a6845d43ce0662c91b72bd3"
- }
- Frame {
- msec: 2656
- hash: "6dedbf7dc59b05dc57355141de0b660d"
- }
- Frame {
- msec: 2672
- hash: "5f82259afdabef688dd76729b5f847c7"
- }
- Frame {
- msec: 2688
- hash: "b67d418427db34726ddada60f76178a6"
- }
- Frame {
- msec: 2704
- hash: "780c9551f55fd46d294a1eef3b34aa34"
- }
- Key {
- type: 7
- key: 16777234
- modifiers: 0
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 2720
- hash: "521efe1778b2d2031071b55f30999de9"
- }
- Frame {
- msec: 2736
- hash: "49539356de68b7cd2cea52986ed2bb67"
- }
- Frame {
- msec: 2752
- hash: "55801794958126a1890bc0122084ee20"
- }
- Frame {
- msec: 2768
- hash: "55801794958126a1890bc0122084ee20"
- }
- Frame {
- msec: 2784
- hash: "55801794958126a1890bc0122084ee20"
- }
- Key {
- type: 6
- key: 16777234
- modifiers: 0
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 2800
- hash: "b08ee15bfd1916b9619a0a3eeeec90b6"
- }
- Frame {
- msec: 2816
- hash: "3b4e65a0d4ee764d418d82a055ba9c87"
- }
- Frame {
- msec: 2832
- hash: "269d37497b0cd292a5b03124d1687ff6"
- }
- Frame {
- msec: 2848
- hash: "59fecd7ec62bf8c89e2222744d36e194"
- }
- Frame {
- msec: 2864
- hash: "71deceeac8b42a70868bb3ff788543b5"
- }
- Key {
- type: 7
- key: 16777234
- modifiers: 0
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 2880
- image: "test3.2.png"
- }
- Frame {
- msec: 2896
- hash: "ad790d242e84fec0bd75e1d7771682d7"
- }
- Frame {
- msec: 2912
- hash: "c09f4fca4ae14e0e41d9b58c1b83096f"
- }
- Frame {
- msec: 2928
- hash: "68b528414ba662f14ea71511a01f8d33"
- }
- Frame {
- msec: 2944
- hash: "68b528414ba662f14ea71511a01f8d33"
- }
- Key {
- type: 6
- key: 16777234
- modifiers: 0
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 2960
- hash: "015bf8203d45e5d477242055a3f19bfb"
- }
- Frame {
- msec: 2976
- hash: "ba2fb1258a2f3a81882780d3c7d5320a"
- }
- Frame {
- msec: 2992
- hash: "3637ffd219d403ed433fd72cd68a9b23"
- }
- Frame {
- msec: 3008
- hash: "b0d858f1d51872969022f717c12480ed"
- }
- Frame {
- msec: 3024
- hash: "0504b13a8f7cd68a1d64a22e46ea8654"
- }
- Frame {
- msec: 3040
- hash: "d07cffa36609433e4a677e373ee7a3ff"
- }
- Key {
- type: 7
- key: 16777234
- modifiers: 0
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 3056
- hash: "c1fd98ebc22e512f7199e0f319e88728"
- }
- Frame {
- msec: 3072
- hash: "200dd4ac9c40c6eb32ad43570995f17d"
- }
- Frame {
- msec: 3088
- hash: "200dd4ac9c40c6eb32ad43570995f17d"
- }
- Frame {
- msec: 3104
- hash: "200dd4ac9c40c6eb32ad43570995f17d"
- }
- Frame {
- msec: 3120
- hash: "200dd4ac9c40c6eb32ad43570995f17d"
- }
- Frame {
- msec: 3136
- hash: "200dd4ac9c40c6eb32ad43570995f17d"
- }
- Key {
- type: 6
- key: 16777234
- modifiers: 0
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 3152
- hash: "5822b744b64944c515e8a01f52c7429f"
- }
- Frame {
- msec: 3168
- hash: "7d4ab5a17e7d6184f124299053cf94e3"
- }
- Frame {
- msec: 3184
- hash: "253cfd5001e4e4541d9cfd6370291cd2"
- }
- Key {
- type: 7
- key: 16777234
- modifiers: 0
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 3200
- hash: "1b1cab9d331c613dde896829027110f5"
- }
- Frame {
- msec: 3216
- hash: "8127f681a5c475133cfca95483fef2ce"
- }
- Frame {
- msec: 3232
- hash: "1a944877735fe3531d95b418dd75d576"
- }
- Frame {
- msec: 3248
- hash: "47ddcfaed130bf7dd539d965ebebedc1"
- }
- Frame {
- msec: 3264
- hash: "d0c37d1a7e97034d0f41ea6c2fff8f34"
- }
- Frame {
- msec: 3280
- hash: "ea2059d511fdab60e77e9261f81aadfb"
- }
- Key {
- type: 6
- key: 16777234
- modifiers: 0
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 3296
- hash: "11a907436350afa5ff592880303b4344"
- }
- Frame {
- msec: 3312
- hash: "39801aef92c2b1e0ca39bede36840911"
- }
- Frame {
- msec: 3328
- hash: "93463b61a00078f488f3941bc4729100"
- }
- Frame {
- msec: 3344
- hash: "f8d9cbe20b87017d81fbf627f3a3b2cd"
- }
- Key {
- type: 7
- key: 16777234
- modifiers: 0
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 3360
- hash: "2b8d37e7dcfb14394caf19aa8bc4b956"
- }
- Frame {
- msec: 3376
- hash: "bf91006930a3f22f12b62787c57bb91b"
- }
- Frame {
- msec: 3392
- hash: "7ce1d106e9d78a4a64f35f5982d32298"
- }
- Frame {
- msec: 3408
- hash: "e2f3bec9571b08b451309221b34ace5e"
- }
- Frame {
- msec: 3424
- hash: "e2f3bec9571b08b451309221b34ace5e"
- }
- Frame {
- msec: 3440
- hash: "e2f3bec9571b08b451309221b34ace5e"
- }
- Key {
- type: 6
- key: 16777234
- modifiers: 0
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 3456
- hash: "71cd749e039a54aaaa05e1d3ccc738b4"
- }
- Frame {
- msec: 3472
- hash: "39e7afb00d53e098c005a1d96a8cc727"
- }
- Key {
- type: 7
- key: 16777234
- modifiers: 0
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 3488
- hash: "a9d2fa99fc70919e55293c07427147a2"
- }
- Frame {
- msec: 3504
- hash: "96bb62cd9ebc2eba9797605190820349"
- }
- Frame {
- msec: 3520
- hash: "111b0d230c44d5d156e082a50c2a2a66"
- }
- Frame {
- msec: 3536
- hash: "1085cebcc8fdaefb2ec03392763c7657"
- }
- Frame {
- msec: 3552
- hash: "451d670f44ae42d8cbb6a12cc6469d61"
- }
- Frame {
- msec: 3568
- hash: "5c65a7b6ed7b4e85bb883c671aae5136"
- }
- Frame {
- msec: 3584
- hash: "2f532511a50d743aa1c7ebcc9b2b7350"
- }
- Key {
- type: 6
- key: 16777234
- modifiers: 0
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 3600
- hash: "41424200cb76a0d5d64f8919645f6afb"
- }
- Frame {
- msec: 3616
- hash: "7a910e4b17fb7f5d10308e07ea8ce0a3"
- }
- Frame {
- msec: 3632
- hash: "4d9cc5670105acf3bc080cba8e100376"
- }
- Frame {
- msec: 3648
- hash: "a09d3b45bef532ed86d737839592ffc8"
- }
- Key {
- type: 7
- key: 16777234
- modifiers: 0
- text: ""
- autorep: false
- count: 1
- }
- Frame {
- msec: 3664
- hash: "70179b7be24acd6d5d0d0de9d8fff74d"
- }
- Frame {
- msec: 3680
- hash: "95964eef01bfc86216a8e91261b867ed"
- }
- Frame {
- msec: 3696
- hash: "12b5e2bbfd573b2b8e33a745cd5af5a6"
- }
- Frame {
- msec: 3712
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 3728
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 3744
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 3760
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 3776
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 3792
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 3808
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 3824
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 3840
- image: "test3.3.png"
- }
- Frame {
- msec: 3856
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 3872
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 3888
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 3904
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 3920
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 3936
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 3952
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 3968
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 3984
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 4000
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 4016
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 4032
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 4048
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 4064
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 4080
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 4096
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 4112
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 4128
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 4144
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 4160
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 4176
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 4192
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 4208
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 4224
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 4240
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
- Frame {
- msec: 4256
- hash: "cb8a5743fd3c5093740bb2a4f57ade81"
- }
-}
diff --git a/tests/auto/declarative/qmlvisual/focusscope/data/test.0.png b/tests/auto/declarative/qmlvisual/focusscope/data/test.0.png
index 986a1646c1..fd28a93152 100644
--- a/tests/auto/declarative/qmlvisual/focusscope/data/test.0.png
+++ b/tests/auto/declarative/qmlvisual/focusscope/data/test.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/focusscope/data/test.2.png b/tests/auto/declarative/qmlvisual/focusscope/data/test.2.png
index fd28a93152..986a1646c1 100644
--- a/tests/auto/declarative/qmlvisual/focusscope/data/test.2.png
+++ b/tests/auto/declarative/qmlvisual/focusscope/data/test.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/focusscope/data/test.3.png b/tests/auto/declarative/qmlvisual/focusscope/data/test.3.png
new file mode 100644
index 0000000000..fd28a93152
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/focusscope/data/test.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/focusscope/data/test.qml b/tests/auto/declarative/qmlvisual/focusscope/data/test.qml
index da99cfda56..e2bf23fd60 100644
--- a/tests/auto/declarative/qmlvisual/focusscope/data/test.qml
+++ b/tests/auto/declarative/qmlvisual/focusscope/data/test.qml
@@ -6,7 +6,7 @@ VisualTest {
}
Frame {
msec: 16
- hash: "94675f9c9afb6834b91a69fd0ce35a22"
+ image: "test.0.png"
}
Frame {
msec: 32
@@ -290,11 +290,11 @@ VisualTest {
}
Frame {
msec: 960
- image: "test.0.png"
+ hash: "f369109744055d30eadf2832a028a104"
}
Frame {
msec: 976
- hash: "f369109744055d30eadf2832a028a104"
+ image: "test.1.png"
}
Frame {
msec: 992
@@ -594,11 +594,11 @@ VisualTest {
}
Frame {
msec: 1920
- image: "test.1.png"
+ hash: "f369109744055d30eadf2832a028a104"
}
Frame {
msec: 1936
- hash: "f369109744055d30eadf2832a028a104"
+ image: "test.2.png"
}
Frame {
msec: 1952
@@ -882,11 +882,11 @@ VisualTest {
}
Frame {
msec: 2880
- image: "test.2.png"
+ hash: "94675f9c9afb6834b91a69fd0ce35a22"
}
Frame {
msec: 2896
- hash: "94675f9c9afb6834b91a69fd0ce35a22"
+ image: "test.3.png"
}
Frame {
msec: 2912
diff --git a/tests/auto/declarative/qmlvisual/focusscope/data/test2.0.png b/tests/auto/declarative/qmlvisual/focusscope/data/test2.0.png
index 22d7496fb7..396bf2d1f1 100644
--- a/tests/auto/declarative/qmlvisual/focusscope/data/test2.0.png
+++ b/tests/auto/declarative/qmlvisual/focusscope/data/test2.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/focusscope/data/test2.1.png b/tests/auto/declarative/qmlvisual/focusscope/data/test2.1.png
new file mode 100644
index 0000000000..396bf2d1f1
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/focusscope/data/test2.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/focusscope/data/test2.qml b/tests/auto/declarative/qmlvisual/focusscope/data/test2.qml
index ff977acb7b..8669071ca9 100644
--- a/tests/auto/declarative/qmlvisual/focusscope/data/test2.qml
+++ b/tests/auto/declarative/qmlvisual/focusscope/data/test2.qml
@@ -6,318 +6,318 @@ VisualTest {
}
Frame {
msec: 16
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ image: "test2.0.png"
}
Frame {
msec: 32
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 48
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 64
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 80
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 96
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 112
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 128
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 144
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 160
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 176
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 192
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 208
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 224
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 240
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 256
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 272
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 288
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 304
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 320
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 336
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 352
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 368
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 384
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 400
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 416
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 432
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 448
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 464
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 480
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 496
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 512
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 528
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 544
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 560
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 576
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 592
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 608
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 624
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 640
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 656
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 672
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 688
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 704
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 720
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 736
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 752
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 768
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 784
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 800
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 816
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 832
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 848
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 864
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 880
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 896
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 912
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 928
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 944
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 960
- image: "test2.0.png"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 976
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ image: "test2.1.png"
}
Frame {
msec: 992
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 1008
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 1024
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 1040
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 1056
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 1072
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 1088
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 1104
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 1120
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 1136
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 1152
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 1168
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 1184
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 1200
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 1216
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 1232
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 1248
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
Frame {
msec: 1264
- hash: "4823f4520db0c1f64d887f172b3efa17"
+ hash: "f4041fcc91346361df95e344a0ee8e2d"
}
}
diff --git a/tests/auto/declarative/qmlvisual/focusscope/data/test3.0.png b/tests/auto/declarative/qmlvisual/focusscope/data/test3.0.png
index baac34617d..c092535211 100644
--- a/tests/auto/declarative/qmlvisual/focusscope/data/test3.0.png
+++ b/tests/auto/declarative/qmlvisual/focusscope/data/test3.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/focusscope/data/test3.1.png b/tests/auto/declarative/qmlvisual/focusscope/data/test3.1.png
index 25d3c66ade..861b4592e0 100644
--- a/tests/auto/declarative/qmlvisual/focusscope/data/test3.1.png
+++ b/tests/auto/declarative/qmlvisual/focusscope/data/test3.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/focusscope/data/test3.2.png b/tests/auto/declarative/qmlvisual/focusscope/data/test3.2.png
index fc90552b09..2ede7c904f 100644
--- a/tests/auto/declarative/qmlvisual/focusscope/data/test3.2.png
+++ b/tests/auto/declarative/qmlvisual/focusscope/data/test3.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/focusscope/data/test3.3.png b/tests/auto/declarative/qmlvisual/focusscope/data/test3.3.png
index 2f0519eb07..055f184649 100644
--- a/tests/auto/declarative/qmlvisual/focusscope/data/test3.3.png
+++ b/tests/auto/declarative/qmlvisual/focusscope/data/test3.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/focusscope/data/test3.4.png b/tests/auto/declarative/qmlvisual/focusscope/data/test3.4.png
new file mode 100644
index 0000000000..c092535211
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/focusscope/data/test3.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/focusscope/data/test3.qml b/tests/auto/declarative/qmlvisual/focusscope/data/test3.qml
index 686fc8dbb3..8ed9c7dd61 100644
--- a/tests/auto/declarative/qmlvisual/focusscope/data/test3.qml
+++ b/tests/auto/declarative/qmlvisual/focusscope/data/test3.qml
@@ -6,135 +6,135 @@ VisualTest {
}
Frame {
msec: 16
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ image: "test3.0.png"
}
Frame {
msec: 32
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 48
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 64
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 80
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 96
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 112
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 128
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 144
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 160
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 176
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 192
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 208
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 224
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 240
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 256
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 272
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 288
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 304
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 320
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 336
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 352
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 368
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 384
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 400
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 416
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 432
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 448
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 464
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 480
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 496
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 512
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 528
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Key {
type: 6
@@ -146,23 +146,23 @@ VisualTest {
}
Frame {
msec: 544
- hash: "60101929d88be9177f4988573c35dcdb"
+ hash: "e24319b7e562a668e86ac17f4914bcb7"
}
Frame {
msec: 560
- hash: "519bbcffcafe96253923994ce7cae971"
+ hash: "742f87f00d2d7e64b4a579823fa99df2"
}
Frame {
msec: 576
- hash: "e46fd44935f37eadee7520f17ad7cf01"
+ hash: "db6793df1b6d00f4b6286253173ee2b5"
}
Frame {
msec: 592
- hash: "2a0ed4cb9940ff82d4a56dc3dc94f333"
+ hash: "3da67f52ad1bc0ee55f8d6637286f420"
}
Frame {
msec: 608
- hash: "a97ff19bb6493b7a026c9c549aafff04"
+ hash: "89e8c8fd913cb229f5adc221090d789c"
}
Key {
type: 7
@@ -174,31 +174,31 @@ VisualTest {
}
Frame {
msec: 624
- hash: "52fe44fff5c72e1585e000e73086c2e9"
+ hash: "d47cc2fe207628f4deddd58c3697171a"
}
Frame {
msec: 640
- hash: "76f62e0619ed15894d7fb6fe9e1a7700"
+ hash: "9ab1f939324602533b14b20d6160ae57"
}
Frame {
msec: 656
- hash: "aceb3ae38213d097bd0f50d64779fbda"
+ hash: "798b200076ec6688cda78fd273a9fde1"
}
Frame {
msec: 672
- hash: "c62f8846e1076adcd7c9a8bc1164c0a8"
+ hash: "5c485ac62f637db9e3aa327dd1bee801"
}
Frame {
msec: 688
- hash: "c62f8846e1076adcd7c9a8bc1164c0a8"
+ hash: "5c485ac62f637db9e3aa327dd1bee801"
}
Frame {
msec: 704
- hash: "c62f8846e1076adcd7c9a8bc1164c0a8"
+ hash: "5c485ac62f637db9e3aa327dd1bee801"
}
Frame {
msec: 720
- hash: "c62f8846e1076adcd7c9a8bc1164c0a8"
+ hash: "5c485ac62f637db9e3aa327dd1bee801"
}
Key {
type: 6
@@ -210,19 +210,19 @@ VisualTest {
}
Frame {
msec: 736
- hash: "9f3ab4856c51ee635b8dbce4778053f0"
+ hash: "75bbe5082eebec814c726adc8fc076ec"
}
Frame {
msec: 752
- hash: "4fe79ffc2bb078c8cb8c3cdbb57d3c5e"
+ hash: "58d8051766872d54831bec4c8c7cbd63"
}
Frame {
msec: 768
- hash: "9caefb6edbfeadacd54a9f4e06e40ddc"
+ hash: "f474b747b4b7bb2a5b2c418f35aa1b09"
}
Frame {
msec: 784
- hash: "a8dc7e314b3bd2fb8d16bcf68bfbc7e8"
+ hash: "d561cf0dbded0b2bd85c7c88fb3afdd6"
}
Key {
type: 7
@@ -234,27 +234,27 @@ VisualTest {
}
Frame {
msec: 800
- hash: "342e75af68d345574c551ff65ac2f2de"
+ hash: "49c0616c4d5cedeb9fdb12fb7d7f504d"
}
Frame {
msec: 816
- hash: "a26927b8cdfa8813c5e0661d154bb36b"
+ hash: "9e5c66cfc3af51b7a10f6a969452dafe"
}
Frame {
msec: 832
- hash: "0214f5055daa4a761d2e791d06744ac5"
+ hash: "72d765f52ce8ab3748cd43d859285ca7"
}
Frame {
msec: 848
- hash: "d2d4296a49de27da45381fa250fb1f38"
+ hash: "732987bbdc421c4650d7503387acd4de"
}
Frame {
msec: 864
- hash: "a375e3df0b00754fa4208aecbf1b218d"
+ hash: "439456ecedad4674b6ecef415e53334b"
}
Frame {
msec: 880
- hash: "a375e3df0b00754fa4208aecbf1b218d"
+ hash: "439456ecedad4674b6ecef415e53334b"
}
Key {
type: 6
@@ -266,15 +266,15 @@ VisualTest {
}
Frame {
msec: 896
- hash: "0cd7a1cfb7fafdb406b5e3a612dd61b7"
+ hash: "5f2d5dc55b551713c4219bc55124f7db"
}
Frame {
msec: 912
- hash: "0315c0011c75f254337cb5e557dc6dad"
+ hash: "54e2150829c6201b3ba8eb61f4142de7"
}
Frame {
msec: 928
- hash: "2633ea851ec228dc1d5149ef65b1c910"
+ hash: "f916ac803817b7cd7e29c05ac23449fc"
}
Key {
type: 7
@@ -286,35 +286,35 @@ VisualTest {
}
Frame {
msec: 944
- hash: "cd8870a81860a9926f4d5580dabf3479"
+ hash: "590b45a3fb1571428c8da48f026fab3b"
}
Frame {
msec: 960
- image: "test3.0.png"
+ hash: "b5a811e6d1b956af67c6df4c9eabd0a3"
}
Frame {
msec: 976
- hash: "419ec77dceb052c41e072b9513124794"
+ image: "test3.1.png"
}
Frame {
msec: 992
- hash: "68fd88f83bf707fbc3ae29840bfb2110"
+ hash: "877ca6b70b6535f868d3a450045f70a0"
}
Frame {
msec: 1008
- hash: "bfb514b9a9c57d6b78149b81f4adb177"
+ hash: "559a5c06ed2d1030d21f56aaaded8869"
}
Frame {
msec: 1024
- hash: "bfb514b9a9c57d6b78149b81f4adb177"
+ hash: "559a5c06ed2d1030d21f56aaaded8869"
}
Frame {
msec: 1040
- hash: "bfb514b9a9c57d6b78149b81f4adb177"
+ hash: "559a5c06ed2d1030d21f56aaaded8869"
}
Frame {
msec: 1056
- hash: "bfb514b9a9c57d6b78149b81f4adb177"
+ hash: "559a5c06ed2d1030d21f56aaaded8869"
}
Key {
type: 6
@@ -326,11 +326,11 @@ VisualTest {
}
Frame {
msec: 1072
- hash: "e0707db3c9da95ab02be8dec08d1eea9"
+ hash: "f6d3d4fd5d9d1be96646891cbf0740e5"
}
Frame {
msec: 1088
- hash: "78d405f63a5ed781ce36ed4844621a26"
+ hash: "2ba5d4da68051a96fed2b54804854a8e"
}
Key {
type: 7
@@ -342,35 +342,35 @@ VisualTest {
}
Frame {
msec: 1104
- hash: "d7dc78c2a3cb4a059322b20622dfa0ed"
+ hash: "2b1b72dfac63903377b427ef4149dfd7"
}
Frame {
msec: 1120
- hash: "c7bfc322da4a3e112324bd024d271dda"
+ hash: "7ada77586dd0583a66c801b6faf78e2a"
}
Frame {
msec: 1136
- hash: "a94d4a6f15404f10cad31ad5337f0f10"
+ hash: "a5c527fa2095e2d8949d36351994624a"
}
Frame {
msec: 1152
- hash: "49f03ed7afac886a45268aef990cb176"
+ hash: "f89bf3f20d3f7284ba52338c1cfb91e1"
}
Frame {
msec: 1168
- hash: "9fbacc43c6a796f81af102e95d05c17e"
+ hash: "e7de3174a111f26f4d92a273e2c43b61"
}
Frame {
msec: 1184
- hash: "ec3231a8ba136d2edd5265c51cd82d4f"
+ hash: "d9ef1156a1f7bfe86f97717a600b31c9"
}
Frame {
msec: 1200
- hash: "070bec590f2379198933cf68db678821"
+ hash: "0b216b28513d00939531e409aac328e8"
}
Frame {
msec: 1216
- hash: "070bec590f2379198933cf68db678821"
+ hash: "0b216b28513d00939531e409aac328e8"
}
Key {
type: 6
@@ -382,11 +382,11 @@ VisualTest {
}
Frame {
msec: 1232
- hash: "b9bb4eee4ea2fe26178ece2be67111e3"
+ hash: "d92131f183e9d926a2718559f58f17cb"
}
Frame {
msec: 1248
- hash: "06fe10dc99a8f28a64942bd76bdd401b"
+ hash: "9e5985271ddec748803ea3c72d40ad97"
}
Key {
type: 7
@@ -398,63 +398,63 @@ VisualTest {
}
Frame {
msec: 1264
- hash: "63f4e972f1b8f3273170436c673120ca"
+ hash: "2462ddfcf93f96ad6a3164c7f21e2948"
}
Frame {
msec: 1280
- hash: "25a83b96f733add828557775d4aabe21"
+ hash: "4ce27e3e77d9c80982c5197c2a440dc4"
}
Frame {
msec: 1296
- hash: "73de2ed5df81559c7a24d9a5b73a2ce9"
+ hash: "e4afa6dc35ddd52876af514ec151900e"
}
Frame {
msec: 1312
- hash: "43bdf31d652394c4d2b881ca6ad326ed"
+ hash: "3e542da8a83e53c66fd96d2c003a8b67"
}
Frame {
msec: 1328
- hash: "f5f564fcb39a7e007c30150c1a54283c"
+ hash: "6b0afb12551ada7501346125ac29071c"
}
Frame {
msec: 1344
- hash: "270321ae5fe7a0e457d2897480e5bbbc"
+ hash: "202d4ca464f73e28a286ebed05e86d9d"
}
Frame {
msec: 1360
- hash: "270321ae5fe7a0e457d2897480e5bbbc"
+ hash: "202d4ca464f73e28a286ebed05e86d9d"
}
Frame {
msec: 1376
- hash: "270321ae5fe7a0e457d2897480e5bbbc"
+ hash: "202d4ca464f73e28a286ebed05e86d9d"
}
Frame {
msec: 1392
- hash: "270321ae5fe7a0e457d2897480e5bbbc"
+ hash: "202d4ca464f73e28a286ebed05e86d9d"
}
Frame {
msec: 1408
- hash: "270321ae5fe7a0e457d2897480e5bbbc"
+ hash: "202d4ca464f73e28a286ebed05e86d9d"
}
Frame {
msec: 1424
- hash: "270321ae5fe7a0e457d2897480e5bbbc"
+ hash: "202d4ca464f73e28a286ebed05e86d9d"
}
Frame {
msec: 1440
- hash: "270321ae5fe7a0e457d2897480e5bbbc"
+ hash: "202d4ca464f73e28a286ebed05e86d9d"
}
Frame {
msec: 1456
- hash: "270321ae5fe7a0e457d2897480e5bbbc"
+ hash: "202d4ca464f73e28a286ebed05e86d9d"
}
Frame {
msec: 1472
- hash: "270321ae5fe7a0e457d2897480e5bbbc"
+ hash: "202d4ca464f73e28a286ebed05e86d9d"
}
Frame {
msec: 1488
- hash: "270321ae5fe7a0e457d2897480e5bbbc"
+ hash: "202d4ca464f73e28a286ebed05e86d9d"
}
Key {
type: 6
@@ -466,15 +466,15 @@ VisualTest {
}
Frame {
msec: 1504
- hash: "a56bcb200f3ed037bfea052df2910902"
+ hash: "ca6c00b583f88efb6efe285a0903392b"
}
Frame {
msec: 1520
- hash: "2b3561807f9681f6b875e7f4fcd33223"
+ hash: "2a2fcb90a6a7ae6d3d08f49c7a7177c0"
}
Frame {
msec: 1536
- hash: "2cee5a4a22f72058a61cd9cb9d39e818"
+ hash: "3a7cd960ff367793e09d73302e57b6e4"
}
Key {
type: 7
@@ -486,39 +486,39 @@ VisualTest {
}
Frame {
msec: 1552
- hash: "cd1f3f9a2bcd0efd4ba252454c51e261"
+ hash: "581121ab5334a6122bf9ca4489c9b971"
}
Frame {
msec: 1568
- hash: "b2d8e52a59d1141cfaf6b22ba9aa74cf"
+ hash: "8690456fa25a12ef28f014b86cc94c81"
}
Frame {
msec: 1584
- hash: "f218a82081c0552d2caccaa840decfbb"
+ hash: "27a395e2e25eedba8f361a20f917590b"
}
Frame {
msec: 1600
- hash: "ae20ae49364bddbe3dcd9e09c36b7423"
+ hash: "5eae6bbdd6acd7f21eccf277f21f4893"
}
Frame {
msec: 1616
- hash: "63d8d2d948e3cab3a50ef4db61ca4c48"
+ hash: "f5ebab53b77dcea32e821c8e551077e4"
}
Frame {
msec: 1632
- hash: "f29a9aa2e469e3fb4bedfe11523212c9"
+ hash: "738278d39b73bfa15fc8b19b5720bbd7"
}
Frame {
msec: 1648
- hash: "f29a9aa2e469e3fb4bedfe11523212c9"
+ hash: "738278d39b73bfa15fc8b19b5720bbd7"
}
Frame {
msec: 1664
- hash: "f29a9aa2e469e3fb4bedfe11523212c9"
+ hash: "738278d39b73bfa15fc8b19b5720bbd7"
}
Frame {
msec: 1680
- hash: "f29a9aa2e469e3fb4bedfe11523212c9"
+ hash: "738278d39b73bfa15fc8b19b5720bbd7"
}
Key {
type: 6
@@ -530,19 +530,19 @@ VisualTest {
}
Frame {
msec: 1696
- hash: "c46539fd3ef1e01519b43855c0831213"
+ hash: "7c83c13e1d9e6456023ba7e2a1f3875c"
}
Frame {
msec: 1712
- hash: "40a4666320efaa62904d390add745bb3"
+ hash: "f12f6c5111de654e90d462a4d44f12ec"
}
Frame {
msec: 1728
- hash: "a490a1904e909f3e2ade5ee8a7e9dbf3"
+ hash: "dcb7712d8320bf4096a3af794facad4d"
}
Frame {
msec: 1744
- hash: "2e67ac8bbc37731e590156348563bb98"
+ hash: "84f7c046592d31f403b56ee1fd6fcbc4"
}
Key {
type: 7
@@ -554,35 +554,35 @@ VisualTest {
}
Frame {
msec: 1760
- hash: "daab7eba2dbf88b920b1cc61aa114435"
+ hash: "1b05381e85ec8bbf69edacbedce01fb8"
}
Frame {
msec: 1776
- hash: "5e6611b6024be9f48e6356bb46fe91db"
+ hash: "b2c148675ffe1ef5110602f7a4feab74"
}
Frame {
msec: 1792
- hash: "6329448571671f77102e14f3f05d3a66"
+ hash: "d082931d05d2b2dc24ccfa5d7a703291"
}
Frame {
msec: 1808
- hash: "2a40d32c1c81fb85dab745a05cca500b"
+ hash: "99783e2541d03a7ce9ee4e69a2b21993"
}
Frame {
msec: 1824
- hash: "6579f0cfe1fd762818d69ded26e47c77"
+ hash: "503ff7e940ac59006c1486e3d2027d35"
}
Frame {
msec: 1840
- hash: "6579f0cfe1fd762818d69ded26e47c77"
+ hash: "503ff7e940ac59006c1486e3d2027d35"
}
Frame {
msec: 1856
- hash: "6579f0cfe1fd762818d69ded26e47c77"
+ hash: "503ff7e940ac59006c1486e3d2027d35"
}
Frame {
msec: 1872
- hash: "6579f0cfe1fd762818d69ded26e47c77"
+ hash: "503ff7e940ac59006c1486e3d2027d35"
}
Key {
type: 6
@@ -594,23 +594,23 @@ VisualTest {
}
Frame {
msec: 1888
- hash: "899d92a8106e85ff1131c07af3971879"
+ hash: "06fbf3d840cbf170c94377d767d1d49f"
}
Frame {
msec: 1904
- hash: "8566d59024d7dcf410d4d87e234f477c"
+ hash: "34f538738046a1d6932ef1a6f59eb6be"
}
Frame {
msec: 1920
- image: "test3.1.png"
+ hash: "2553f91e5ea5a4da70eb3825a0cdfa10"
}
Frame {
msec: 1936
- hash: "ba9b93e9762667c4a7c123933720fb06"
+ image: "test3.2.png"
}
Frame {
msec: 1952
- hash: "cffb82799861d551cc208b7fe2922ea2"
+ hash: "115f1c37d6492bbc4848cc4be6ddd2b0"
}
Key {
type: 7
@@ -622,131 +622,131 @@ VisualTest {
}
Frame {
msec: 1968
- hash: "efe3ec54dfd82b06d6cb8d7813030894"
+ hash: "40d5255e7e5ca12b90f5cbede1e9b2cd"
}
Frame {
msec: 1984
- hash: "80934efe77a8e1d8460b55c0d5831a17"
+ hash: "3a6f6b4cee75f8b1b0b2b5674c3df0a8"
}
Frame {
msec: 2000
- hash: "5954c3e6ebe78c50776cfa48c152cf46"
+ hash: "2c24eab593d56a7554f9ba925f858d5b"
}
Frame {
msec: 2016
- hash: "588140c8a668842ec06e424692b57918"
+ hash: "bb10ef1703674147351968121ebe0154"
}
Frame {
msec: 2032
- hash: "588140c8a668842ec06e424692b57918"
+ hash: "bb10ef1703674147351968121ebe0154"
}
Frame {
msec: 2048
- hash: "588140c8a668842ec06e424692b57918"
+ hash: "bb10ef1703674147351968121ebe0154"
}
Frame {
msec: 2064
- hash: "588140c8a668842ec06e424692b57918"
+ hash: "bb10ef1703674147351968121ebe0154"
}
Frame {
msec: 2080
- hash: "588140c8a668842ec06e424692b57918"
+ hash: "bb10ef1703674147351968121ebe0154"
}
Frame {
msec: 2096
- hash: "588140c8a668842ec06e424692b57918"
+ hash: "bb10ef1703674147351968121ebe0154"
}
Frame {
msec: 2112
- hash: "588140c8a668842ec06e424692b57918"
+ hash: "bb10ef1703674147351968121ebe0154"
}
Frame {
msec: 2128
- hash: "588140c8a668842ec06e424692b57918"
+ hash: "bb10ef1703674147351968121ebe0154"
}
Frame {
msec: 2144
- hash: "588140c8a668842ec06e424692b57918"
+ hash: "bb10ef1703674147351968121ebe0154"
}
Frame {
msec: 2160
- hash: "588140c8a668842ec06e424692b57918"
+ hash: "bb10ef1703674147351968121ebe0154"
}
Frame {
msec: 2176
- hash: "588140c8a668842ec06e424692b57918"
+ hash: "bb10ef1703674147351968121ebe0154"
}
Frame {
msec: 2192
- hash: "588140c8a668842ec06e424692b57918"
+ hash: "bb10ef1703674147351968121ebe0154"
}
Frame {
msec: 2208
- hash: "588140c8a668842ec06e424692b57918"
+ hash: "bb10ef1703674147351968121ebe0154"
}
Frame {
msec: 2224
- hash: "588140c8a668842ec06e424692b57918"
+ hash: "bb10ef1703674147351968121ebe0154"
}
Frame {
msec: 2240
- hash: "588140c8a668842ec06e424692b57918"
+ hash: "bb10ef1703674147351968121ebe0154"
}
Frame {
msec: 2256
- hash: "588140c8a668842ec06e424692b57918"
+ hash: "bb10ef1703674147351968121ebe0154"
}
Frame {
msec: 2272
- hash: "588140c8a668842ec06e424692b57918"
+ hash: "bb10ef1703674147351968121ebe0154"
}
Frame {
msec: 2288
- hash: "588140c8a668842ec06e424692b57918"
+ hash: "bb10ef1703674147351968121ebe0154"
}
Frame {
msec: 2304
- hash: "588140c8a668842ec06e424692b57918"
+ hash: "bb10ef1703674147351968121ebe0154"
}
Frame {
msec: 2320
- hash: "588140c8a668842ec06e424692b57918"
+ hash: "bb10ef1703674147351968121ebe0154"
}
Frame {
msec: 2336
- hash: "588140c8a668842ec06e424692b57918"
+ hash: "bb10ef1703674147351968121ebe0154"
}
Frame {
msec: 2352
- hash: "588140c8a668842ec06e424692b57918"
+ hash: "bb10ef1703674147351968121ebe0154"
}
Frame {
msec: 2368
- hash: "588140c8a668842ec06e424692b57918"
+ hash: "bb10ef1703674147351968121ebe0154"
}
Frame {
msec: 2384
- hash: "588140c8a668842ec06e424692b57918"
+ hash: "bb10ef1703674147351968121ebe0154"
}
Frame {
msec: 2400
- hash: "588140c8a668842ec06e424692b57918"
+ hash: "bb10ef1703674147351968121ebe0154"
}
Frame {
msec: 2416
- hash: "588140c8a668842ec06e424692b57918"
+ hash: "bb10ef1703674147351968121ebe0154"
}
Frame {
msec: 2432
- hash: "588140c8a668842ec06e424692b57918"
+ hash: "bb10ef1703674147351968121ebe0154"
}
Frame {
msec: 2448
- hash: "588140c8a668842ec06e424692b57918"
+ hash: "bb10ef1703674147351968121ebe0154"
}
Frame {
msec: 2464
- hash: "588140c8a668842ec06e424692b57918"
+ hash: "bb10ef1703674147351968121ebe0154"
}
Key {
type: 6
@@ -758,23 +758,23 @@ VisualTest {
}
Frame {
msec: 2480
- hash: "4ba7e4ed21d496abc7ab4651afb5880b"
+ hash: "1e61fbb8c054c6b8fdb895d236514bfa"
}
Frame {
msec: 2496
- hash: "497188bf0ef98eb246399f025b9259bc"
+ hash: "3a1b093963a0cb898a68f87a3c2056a9"
}
Frame {
msec: 2512
- hash: "173049c273e4ea2f63428c0838f029ef"
+ hash: "9fe3eb5cbc621401be9ab7bc7d28bb24"
}
Frame {
msec: 2528
- hash: "c8199565d52abb5bdf64b31c2f965038"
+ hash: "1bb16e3d17506913e295d68e8d4ffa88"
}
Frame {
msec: 2544
- hash: "995ca28ee06c376a8527992b1396374a"
+ hash: "19389ae4da2ad3bc7076632366db55c7"
}
Key {
type: 7
@@ -786,23 +786,23 @@ VisualTest {
}
Frame {
msec: 2560
- hash: "62b4b4b4e35cb3594b827a3f0488e016"
+ hash: "5f1731dd62f61ddafb7cfe66167b7408"
}
Frame {
msec: 2576
- hash: "5cd79f2fff8e35c2ce6167d3a3999bc2"
+ hash: "e37b8399f9ea92a91b0d98b01a4ef72b"
}
Frame {
msec: 2592
- hash: "3c64ff196b49488d48214562849deec7"
+ hash: "e1282e3afc46fa8828a138e4722707b5"
}
Frame {
msec: 2608
- hash: "6579f0cfe1fd762818d69ded26e47c77"
+ hash: "503ff7e940ac59006c1486e3d2027d35"
}
Frame {
msec: 2624
- hash: "6579f0cfe1fd762818d69ded26e47c77"
+ hash: "503ff7e940ac59006c1486e3d2027d35"
}
Key {
type: 6
@@ -814,23 +814,23 @@ VisualTest {
}
Frame {
msec: 2640
- hash: "3ae9139845494acafc2212843271e80c"
+ hash: "925852b350354bb596d749fe31828147"
}
Frame {
msec: 2656
- hash: "9bd81bd575c63bbedbcb19452e52f9aa"
+ hash: "1e302775a002185b888b590cc6533b28"
}
Frame {
msec: 2672
- hash: "8a8fd3ec0ac02d3e8d37ade92e5b0b28"
+ hash: "b147169c3688148bda5b82afa1f5d2dc"
}
Frame {
msec: 2688
- hash: "3da79a037c7c8fca1a133c65766cd7a4"
+ hash: "34964e45ff808595845f4a868be3782e"
}
Frame {
msec: 2704
- hash: "31f24ec970184bf253ce0a80cca8c15d"
+ hash: "b86ef7d97f20c3894dc5a551f41ab9c4"
}
Key {
type: 7
@@ -842,23 +842,23 @@ VisualTest {
}
Frame {
msec: 2720
- hash: "8e41287dd7f3d17107336f79ea4a57b5"
+ hash: "dc9981cb1833b34fc4fc9b833281348e"
}
Frame {
msec: 2736
- hash: "0eced41494be06a4a2d11aee076c0eab"
+ hash: "b28644e06195849afd44143bd60aa27d"
}
Frame {
msec: 2752
- hash: "f29a9aa2e469e3fb4bedfe11523212c9"
+ hash: "738278d39b73bfa15fc8b19b5720bbd7"
}
Frame {
msec: 2768
- hash: "f29a9aa2e469e3fb4bedfe11523212c9"
+ hash: "738278d39b73bfa15fc8b19b5720bbd7"
}
Frame {
msec: 2784
- hash: "f29a9aa2e469e3fb4bedfe11523212c9"
+ hash: "738278d39b73bfa15fc8b19b5720bbd7"
}
Key {
type: 6
@@ -870,23 +870,23 @@ VisualTest {
}
Frame {
msec: 2800
- hash: "2161ebbc0b1a8326d778657ded7993a8"
+ hash: "745230d107911d033ebeb58dc8a94445"
}
Frame {
msec: 2816
- hash: "65bdbbcea1cf5629e1c04ff09bd2b867"
+ hash: "81cc4ac88a51518cf50cd6b46c3e0cb7"
}
Frame {
msec: 2832
- hash: "4cfe120b55285efb9484f696146fa297"
+ hash: "10b7cff34298222ee305c9895bcdef21"
}
Frame {
msec: 2848
- hash: "d50ded95cf2418ef2ab3c4d7dd32babe"
+ hash: "622a027091c1577a646ece0331016783"
}
Frame {
msec: 2864
- hash: "722e3342d833809e2e6c6ecb5774fb86"
+ hash: "ab527747f9918774c7a4cfb476cc31f4"
}
Key {
type: 7
@@ -898,23 +898,23 @@ VisualTest {
}
Frame {
msec: 2880
- image: "test3.2.png"
+ hash: "1bf8a37b5aeb9df37f97083ce19a0c1a"
}
Frame {
msec: 2896
- hash: "0193889d59dc40150eab584dd1665b5e"
+ image: "test3.3.png"
}
Frame {
msec: 2912
- hash: "cd39f2cee2cf7507203a340ceaa961f5"
+ hash: "19a2f59bfe96a0a33ff45ab72cc2a2fc"
}
Frame {
msec: 2928
- hash: "270321ae5fe7a0e457d2897480e5bbbc"
+ hash: "202d4ca464f73e28a286ebed05e86d9d"
}
Frame {
msec: 2944
- hash: "270321ae5fe7a0e457d2897480e5bbbc"
+ hash: "202d4ca464f73e28a286ebed05e86d9d"
}
Key {
type: 6
@@ -926,27 +926,27 @@ VisualTest {
}
Frame {
msec: 2960
- hash: "d19642853fc07a54711b6afbca4453fd"
+ hash: "6b172121f35f9667f40b0006d5875685"
}
Frame {
msec: 2976
- hash: "70db31594995fa6c05347ebc5aedd063"
+ hash: "6e65dfe717a69de65d58e059904bb00a"
}
Frame {
msec: 2992
- hash: "8d8ab3076baae893037a1b16880db6b6"
+ hash: "e660212f2d7d477213ef8b8262e8f2b1"
}
Frame {
msec: 3008
- hash: "32c05a581d854a828f2049c5aa588afd"
+ hash: "df1e770a7177b7871cf734c47e1227ba"
}
Frame {
msec: 3024
- hash: "7f8f111aa6e8e802beca3b7fd2a28007"
+ hash: "9d103d49ea30b04f3e97ecad3c13a816"
}
Frame {
msec: 3040
- hash: "c0ae8434516e2f77d78279c8e37a9f0a"
+ hash: "4602aaf8b65c4ff5b9c8d4ba8d5b89d5"
}
Key {
type: 7
@@ -958,27 +958,27 @@ VisualTest {
}
Frame {
msec: 3056
- hash: "7cc66b7432d2c73258e4c7910870d166"
+ hash: "bf029f1cb5ddf0dc3931b47895a2141d"
}
Frame {
msec: 3072
- hash: "070bec590f2379198933cf68db678821"
+ hash: "0b216b28513d00939531e409aac328e8"
}
Frame {
msec: 3088
- hash: "070bec590f2379198933cf68db678821"
+ hash: "0b216b28513d00939531e409aac328e8"
}
Frame {
msec: 3104
- hash: "070bec590f2379198933cf68db678821"
+ hash: "0b216b28513d00939531e409aac328e8"
}
Frame {
msec: 3120
- hash: "070bec590f2379198933cf68db678821"
+ hash: "0b216b28513d00939531e409aac328e8"
}
Frame {
msec: 3136
- hash: "070bec590f2379198933cf68db678821"
+ hash: "0b216b28513d00939531e409aac328e8"
}
Key {
type: 6
@@ -990,15 +990,15 @@ VisualTest {
}
Frame {
msec: 3152
- hash: "f45969e94df0c5ea7c153e6952479ec8"
+ hash: "807fe46158fdc72c45cd6c8024ce705d"
}
Frame {
msec: 3168
- hash: "55f4733f50b90d723c88ef74d66ee8a9"
+ hash: "58dc1ca8e39488479acdb79762000ad5"
}
Frame {
msec: 3184
- hash: "980ea06fe8405ce29514cbc752a581c2"
+ hash: "48dd97d986ee545f6727128b7a06529f"
}
Key {
type: 7
@@ -1010,27 +1010,27 @@ VisualTest {
}
Frame {
msec: 3200
- hash: "0a5a6d62d13876c9562253645381702a"
+ hash: "a7f0c00cb4bbbd65c02b3949c90564ad"
}
Frame {
msec: 3216
- hash: "0ade580a20e10d9887d6bc544025770e"
+ hash: "3f1c40e8d17b83ff3a251d9284bd4282"
}
Frame {
msec: 3232
- hash: "707524f7b0fad3879d41c8ff5d339b87"
+ hash: "d7527558128467c64cf0a07289158238"
}
Frame {
msec: 3248
- hash: "1786e49beb751b4b8cf4492f63b3db77"
+ hash: "3af9f7618d0c9ffedb942ae422d61dcb"
}
Frame {
msec: 3264
- hash: "a44ca7861ccd844eb284ab310751351a"
+ hash: "eb1703107106afc54d47d8600ea40f18"
}
Frame {
msec: 3280
- hash: "bfb514b9a9c57d6b78149b81f4adb177"
+ hash: "559a5c06ed2d1030d21f56aaaded8869"
}
Key {
type: 6
@@ -1042,19 +1042,19 @@ VisualTest {
}
Frame {
msec: 3296
- hash: "e36d2476c9954e6a4372ded19efd06a1"
+ hash: "c9a69d9ad499e6537ef047382dc01460"
}
Frame {
msec: 3312
- hash: "c324cc45624346f32a776a87ec5fcc7e"
+ hash: "594911681db91c825b93633b6aa3fe1f"
}
Frame {
msec: 3328
- hash: "fcf1629f58a73492f1afa74672013602"
+ hash: "f566d5e728e9a45c7d339282c0c6709c"
}
Frame {
msec: 3344
- hash: "853e27fd37b764a852a2c4fabbaae6bc"
+ hash: "49f1d0164a1ae3c361421635a2038697"
}
Key {
type: 7
@@ -1066,27 +1066,27 @@ VisualTest {
}
Frame {
msec: 3360
- hash: "a75d77b15211080e12b397c3cee93568"
+ hash: "a22b4ea9973c03042a3cfa5d23a79c86"
}
Frame {
msec: 3376
- hash: "936fb8c2c0909a77a9bdc654d91d13ad"
+ hash: "abab27079cd52caaaf421d1b4d8d8066"
}
Frame {
msec: 3392
- hash: "f11dde44c028dbd299bc6733218969f7"
+ hash: "e528a9ab6ae13518fa541d7f2c6e09a8"
}
Frame {
msec: 3408
- hash: "a375e3df0b00754fa4208aecbf1b218d"
+ hash: "439456ecedad4674b6ecef415e53334b"
}
Frame {
msec: 3424
- hash: "a375e3df0b00754fa4208aecbf1b218d"
+ hash: "439456ecedad4674b6ecef415e53334b"
}
Frame {
msec: 3440
- hash: "a375e3df0b00754fa4208aecbf1b218d"
+ hash: "439456ecedad4674b6ecef415e53334b"
}
Key {
type: 6
@@ -1098,11 +1098,11 @@ VisualTest {
}
Frame {
msec: 3456
- hash: "3ce1288d66836b6224f471903454be37"
+ hash: "57543f91e958840efcad1948a19aa8e1"
}
Frame {
msec: 3472
- hash: "9bff5f42f23b504ee013df4834ed884c"
+ hash: "534fc45fdace49ebf444e393b57c1315"
}
Key {
type: 7
@@ -1114,31 +1114,31 @@ VisualTest {
}
Frame {
msec: 3488
- hash: "523df7cc8d991695722b521282824627"
+ hash: "0eee986f096e3ebddf61d3b0a18f2eff"
}
Frame {
msec: 3504
- hash: "5c16f8efbab40bcf8016bd7334eb99fa"
+ hash: "74f702ca61d97d31f79d8ce3be53eee7"
}
Frame {
msec: 3520
- hash: "bee74f34ee101f0fef0967801498de75"
+ hash: "1f0b630548fe93f93550439b4945bdda"
}
Frame {
msec: 3536
- hash: "a08ee211d870bc3f97f1e698cd887908"
+ hash: "1eb442ca5e7e1f476d8297c3bdb7bbd1"
}
Frame {
msec: 3552
- hash: "89ac21176fd4ce1bbbd0b7dd6904c12c"
+ hash: "1689cba06c74a6204d80cc651b1d2150"
}
Frame {
msec: 3568
- hash: "95608d850a3c5cfbded1aafb33885bad"
+ hash: "8711b6647c4146dfa3e3c680fbd1bf08"
}
Frame {
msec: 3584
- hash: "c62f8846e1076adcd7c9a8bc1164c0a8"
+ hash: "5c485ac62f637db9e3aa327dd1bee801"
}
Key {
type: 6
@@ -1150,19 +1150,19 @@ VisualTest {
}
Frame {
msec: 3600
- hash: "54705722d344bfbe829211019f2865ba"
+ hash: "0ac2726d000ba2ef1097a49f37d5c209"
}
Frame {
msec: 3616
- hash: "d63b2ce9e16583671a5e6d266393b11c"
+ hash: "83d00571e499039b7f577e393eed881a"
}
Frame {
msec: 3632
- hash: "3979df5d0aa1c3610e1d3562e34385c6"
+ hash: "46724d427a8f6d7737abcacd76701259"
}
Frame {
msec: 3648
- hash: "782d14c3a1baf9a3017ec5b514492860"
+ hash: "a63554a4839e8874cbebe5204d43c6d5"
}
Key {
type: 7
@@ -1174,154 +1174,154 @@ VisualTest {
}
Frame {
msec: 3664
- hash: "0d219c97e1278474b74ed16f29fae1a1"
+ hash: "5946c98c4204d454a41575242db5fd45"
}
Frame {
msec: 3680
- hash: "3df0e87dd3d5f50b9c4bb3db8d73d421"
+ hash: "a3d0107e71a6b454f8fdc7557eb9ce18"
}
Frame {
msec: 3696
- hash: "1c5e5da874ae95548431677246c80734"
+ hash: "86d9ad1831acc4a73075e6792efb7db4"
}
Frame {
msec: 3712
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 3728
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 3744
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 3760
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 3776
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 3792
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 3808
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 3824
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 3840
- image: "test3.3.png"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 3856
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ image: "test3.4.png"
}
Frame {
msec: 3872
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 3888
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 3904
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 3920
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 3936
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 3952
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 3968
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 3984
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 4000
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 4016
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 4032
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 4048
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 4064
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 4080
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 4096
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 4112
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 4128
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 4144
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 4160
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 4176
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 4192
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 4208
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 4224
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 4240
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
Frame {
msec: 4256
- hash: "4a753a2b626eaf8336cd5e5d04d05d5b"
+ hash: "cb3a3cca07a49fadf8bb00834ea24f73"
}
}
diff --git a/tests/auto/declarative/qmlvisual/focusscope/test3.qml b/tests/auto/declarative/qmlvisual/focusscope/test3.qml
index 01fb58091f..90c23573df 100644
--- a/tests/auto/declarative/qmlvisual/focusscope/test3.qml
+++ b/tests/auto/declarative/qmlvisual/focusscope/test3.qml
@@ -12,15 +12,15 @@ Rectangle {
ListModel {
id: model
- ListElement { name: "1" }
- ListElement { name: "2" }
- ListElement { name: "3" }
- ListElement { name: "4" }
- ListElement { name: "5" }
- ListElement { name: "6" }
- ListElement { name: "7" }
- ListElement { name: "8" }
- ListElement { name: "9" }
+ ListElement { name: "red" }
+ ListElement { name: "orange" }
+ ListElement { name: "yellow" }
+ ListElement { name: "green" }
+ ListElement { name: "cyan" }
+ ListElement { name: "blue" }
+ ListElement { name: "indigo" }
+ ListElement { name: "violet" }
+ ListElement { name: "pink" }
}
Component {
@@ -33,8 +33,7 @@ Rectangle {
focus: true
Keys.onDigit9Pressed: console.log(name)
width: 50; height: 50;
- color: root.ListView.isCurrentItem?"red":"green"
- Text { text: name; anchors.centerIn: parent }
+ color: root.ListView.isCurrentItem?"black":name
}
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/animated-smooth.qml b/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/animated-smooth.qml
index 8c21cee2bb..33d8cb8566 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/animated-smooth.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/animated-smooth.qml
@@ -4,52 +4,63 @@ import "content"
Rectangle {
id: page
color: "white"
- width: 1030; height: 540
-
- MyBorderImage {
- x: 20; y: 20; minWidth: 120; maxWidth: 240
- minHeight: 120; maxHeight: 240
- source: "content/colors.png"; margin: 30; antialiased: true
- }
- MyBorderImage {
- x: 270; y: 20; minWidth: 120; maxWidth: 240
- minHeight: 120; maxHeight: 240; antialiased: true
- source: "content/colors.png"; margin: 30
- horizontalMode: BorderImage.Repeat; verticalMode: BorderImage.Repeat
- }
- MyBorderImage {
- x: 520; y: 20; minWidth: 120; maxWidth: 240
- minHeight: 120; maxHeight: 240; antialiased: true
- source: "content/colors.png"; margin: 30
- horizontalMode: BorderImage.Stretch; verticalMode: BorderImage.Repeat
- }
- MyBorderImage {
- x: 770; y: 20; minWidth: 120; maxWidth: 240
- minHeight: 120; maxHeight: 240; antialiased: true
- source: "content/colors.png"; margin: 30
- horizontalMode: BorderImage.Round; verticalMode: BorderImage.Round
- }
- MyBorderImage {
- x: 20; y: 280; minWidth: 60; maxWidth: 200
- minHeight: 40; maxHeight: 200; antialiased: true
- source: "content/bw.png"; margin: 10
- }
- MyBorderImage {
- x: 270; y: 280; minWidth: 60; maxWidth: 200
- minHeight: 40; maxHeight: 200; antialiased: true
- source: "content/bw.png"; margin: 10
- horizontalMode: BorderImage.Repeat; verticalMode: BorderImage.Repeat
- }
- MyBorderImage {
- x: 520; y: 280; minWidth: 60; maxWidth: 200
- minHeight: 40; maxHeight: 200; antialiased: true
- source: "content/bw.png"; margin: 10
- horizontalMode: BorderImage.Stretch; verticalMode: BorderImage.Repeat
- }
- MyBorderImage {
- x: 770; y: 280; minWidth: 60; maxWidth: 200
- minHeight: 40; maxHeight: 200; antialiased: true
- source: "content/bw.png"; margin: 10
- horizontalMode: BorderImage.Round; verticalMode: BorderImage.Round
+ width: 520; height: 260
+ Grid{
+ columns: 4
+ spacing: 4
+ MyBorderImage {
+ minWidth: 60; maxWidth: 120
+ minHeight: 60; maxHeight: 120
+ source: "content/colors.png"; margin: 15
+ antialiased: true
+ }
+ MyBorderImage {
+ minWidth: 60; maxWidth: 120
+ minHeight: 60; maxHeight: 120
+ source: "content/colors.png"; margin: 15
+ horizontalMode: BorderImage.Repeat; verticalMode: BorderImage.Repeat
+ antialiased: true
+ }
+ MyBorderImage {
+ minWidth: 60; maxWidth: 120
+ minHeight: 60; maxHeight: 120
+ source: "content/colors.png"; margin: 15
+ horizontalMode: BorderImage.Stretch; verticalMode: BorderImage.Repeat
+ antialiased: true
+ }
+ MyBorderImage {
+ minWidth: 60; maxWidth: 120
+ minHeight: 60; maxHeight: 120
+ source: "content/colors.png"; margin: 15
+ horizontalMode: BorderImage.Round; verticalMode: BorderImage.Round
+ antialiased: true
+ }
+ MyBorderImage {
+ minWidth: 60; maxWidth: 120
+ minHeight: 40; maxHeight: 120
+ source: "content/bw.png"; margin: 10
+ antialiased: true
+ }
+ MyBorderImage {
+ minWidth: 60; maxWidth: 120
+ minHeight: 40; maxHeight: 120
+ source: "content/bw.png"; margin: 10
+ horizontalMode: BorderImage.Repeat; verticalMode: BorderImage.Repeat
+ antialiased: true
+ }
+ MyBorderImage {
+ minWidth: 60; maxWidth: 120
+ minHeight: 40; maxHeight: 120
+ source: "content/bw.png"; margin: 10
+ horizontalMode: BorderImage.Stretch; verticalMode: BorderImage.Repeat
+ antialiased: true
+ }
+ MyBorderImage {
+ minWidth: 60; maxWidth: 120
+ minHeight: 40; maxHeight: 120
+ source: "content/bw.png"; margin: 10
+ horizontalMode: BorderImage.Round; verticalMode: BorderImage.Round
+ antialiased: true
+ }
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/animated.qml b/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/animated.qml
index fb5cac08cf..21f6b5f90b 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/animated.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/animated.qml
@@ -4,52 +4,55 @@ import "content"
Rectangle {
id: page
color: "white"
- width: 1030; height: 540
-
- MyBorderImage {
- x: 20; y: 20; minWidth: 120; maxWidth: 240
- minHeight: 120; maxHeight: 240
- source: "content/colors.png"; margin: 30
- }
- MyBorderImage {
- x: 270; y: 20; minWidth: 120; maxWidth: 240
- minHeight: 120; maxHeight: 240
- source: "content/colors.png"; margin: 30
- horizontalMode: BorderImage.Repeat; verticalMode: BorderImage.Repeat
- }
- MyBorderImage {
- x: 520; y: 20; minWidth: 120; maxWidth: 240
- minHeight: 120; maxHeight: 240
- source: "content/colors.png"; margin: 30
- horizontalMode: BorderImage.Stretch; verticalMode: BorderImage.Repeat
- }
- MyBorderImage {
- x: 770; y: 20; minWidth: 120; maxWidth: 240
- minHeight: 120; maxHeight: 240
- source: "content/colors.png"; margin: 30
- horizontalMode: BorderImage.Round; verticalMode: BorderImage.Round
- }
- MyBorderImage {
- x: 20; y: 280; minWidth: 60; maxWidth: 200
- minHeight: 40; maxHeight: 200
- source: "content/bw.png"; margin: 10
- }
- MyBorderImage {
- x: 270; y: 280; minWidth: 60; maxWidth: 200
- minHeight: 40; maxHeight: 200
- source: "content/bw.png"; margin: 10
- horizontalMode: BorderImage.Repeat; verticalMode: BorderImage.Repeat
- }
- MyBorderImage {
- x: 520; y: 280; minWidth: 60; maxWidth: 200
- minHeight: 40; maxHeight: 200
- source: "content/bw.png"; margin: 10
- horizontalMode: BorderImage.Stretch; verticalMode: BorderImage.Repeat
- }
- MyBorderImage {
- x: 770; y: 280; minWidth: 60; maxWidth: 200
- minHeight: 40; maxHeight: 200
- source: "content/bw.png"; margin: 10
- horizontalMode: BorderImage.Round; verticalMode: BorderImage.Round
+ width: 520; height: 260
+ Grid{
+ columns: 4
+ spacing: 4
+ MyBorderImage {
+ minWidth: 60; maxWidth: 120
+ minHeight: 60; maxHeight: 120
+ source: "content/colors.png"; margin: 15
+ }
+ MyBorderImage {
+ minWidth: 60; maxWidth: 120
+ minHeight: 60; maxHeight: 120
+ source: "content/colors.png"; margin: 15
+ horizontalMode: BorderImage.Repeat; verticalMode: BorderImage.Repeat
+ }
+ MyBorderImage {
+ minWidth: 60; maxWidth: 120
+ minHeight: 60; maxHeight: 120
+ source: "content/colors.png"; margin: 15
+ horizontalMode: BorderImage.Stretch; verticalMode: BorderImage.Repeat
+ }
+ MyBorderImage {
+ minWidth: 60; maxWidth: 120
+ minHeight: 60; maxHeight: 120
+ source: "content/colors.png"; margin: 15
+ horizontalMode: BorderImage.Round; verticalMode: BorderImage.Round
+ }
+ MyBorderImage {
+ minWidth: 60; maxWidth: 120
+ minHeight: 40; maxHeight: 120
+ source: "content/bw.png"; margin: 10
+ }
+ MyBorderImage {
+ minWidth: 60; maxWidth: 120
+ minHeight: 40; maxHeight: 120
+ source: "content/bw.png"; margin: 10
+ horizontalMode: BorderImage.Repeat; verticalMode: BorderImage.Repeat
+ }
+ MyBorderImage {
+ minWidth: 60; maxWidth: 120
+ minHeight: 40; maxHeight: 120
+ source: "content/bw.png"; margin: 10
+ horizontalMode: BorderImage.Stretch; verticalMode: BorderImage.Repeat
+ }
+ MyBorderImage {
+ minWidth: 60; maxWidth: 120
+ minHeight: 40; maxHeight: 120
+ source: "content/bw.png"; margin: 10
+ horizontalMode: BorderImage.Round; verticalMode: BorderImage.Round
+ }
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/content/MyBorderImage.qml b/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/content/MyBorderImage.qml
index 75a644ae37..923db47b4a 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/content/MyBorderImage.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/content/MyBorderImage.qml
@@ -13,21 +13,21 @@ Item {
property int margin
id: container
- width: 240; height: 240
+ width: maxWidth; height: maxHeight
BorderImage {
id: image; x: container.width / 2 - width / 2; y: container.height / 2 - height / 2
SequentialAnimation on width {
loops: Animation.Infinite
- NumberAnimation { from: container.minWidth; to: container.maxWidth; duration: 1000; easing.type: "InOutQuad"}
- NumberAnimation { from: container.maxWidth; to: container.minWidth; duration: 1000; easing.type: "InOutQuad" }
+ NumberAnimation { from: container.minWidth; to: container.maxWidth; duration: 600; easing.type: "InOutQuad"}
+ NumberAnimation { from: container.maxWidth; to: container.minWidth; duration: 600; easing.type: "InOutQuad" }
}
SequentialAnimation on height {
loops: Animation.Infinite
- NumberAnimation { from: container.minHeight; to: container.maxHeight; duration: 1000; easing.type: "InOutQuad"}
- NumberAnimation { from: container.maxHeight; to: container.minHeight; duration: 1000; easing.type: "InOutQuad" }
+ NumberAnimation { from: container.minHeight; to: container.maxHeight; duration: 600; easing.type: "InOutQuad"}
+ NumberAnimation { from: container.maxHeight; to: container.minHeight; duration: 600; easing.type: "InOutQuad" }
}
border.top: container.margin
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/content/colors-round.sci b/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/content/colors-round.sci
index 506f6f5f99..0d91764551 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/content/colors-round.sci
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/content/colors-round.sci
@@ -1,7 +1,7 @@
-border.left:30
-border.top:30
-border.right:30
-border.bottom:30
+border.left:15
+border.top:15
+border.right:15
+border.bottom:15
horizontalTileRule:Round
verticalTileRule:Round
source:colors.png
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/content/colors-stretch.sci b/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/content/colors-stretch.sci
index e4989a723c..16ac8ccd21 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/content/colors-stretch.sci
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/content/colors-stretch.sci
@@ -1,5 +1,5 @@
-border.left:30
-border.top:30
-border.right:30
-border.bottom:30
+border.left:15
+border.top:15
+border.right:15
+border.bottom:15
source:colors.png
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/content/colors.png b/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/content/colors.png
index dfb62f3d64..116907d2c5 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/content/colors.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/content/colors.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/content/qmldir b/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/content/qmldir
new file mode 100644
index 0000000000..0c732d2dcb
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/content/qmldir
@@ -0,0 +1 @@
+MyBorderImage 1.0 MyBorderImage.qml
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/animated-smooth.0.png b/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/animated-smooth.0.png
index b6ef0f56e1..b7d06e48d7 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/animated-smooth.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/animated-smooth.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/animated-smooth.1.png b/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/animated-smooth.1.png
index 11622a7dc8..d904aa0d13 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/animated-smooth.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/animated-smooth.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/animated-smooth.qml b/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/animated-smooth.qml
index 120009939b..6c7a940828 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/animated-smooth.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/animated-smooth.qml
@@ -6,538 +6,314 @@ VisualTest {
}
Frame {
msec: 16
- hash: "aec13bcab337e55832b0a02fb5c6b526"
+ image: "animated-smooth.0.png"
}
Frame {
msec: 32
- hash: "aec13bcab337e55832b0a02fb5c6b526"
+ hash: "a2467396d7318a93d35aa314896d3d05"
}
Frame {
msec: 48
- hash: "aec13bcab337e55832b0a02fb5c6b526"
+ hash: "a2467396d7318a93d35aa314896d3d05"
}
Frame {
msec: 64
- hash: "aec13bcab337e55832b0a02fb5c6b526"
+ hash: "8ba2cebd7b80bd58612ce46470e7763b"
}
Frame {
msec: 80
- hash: "9419c891e347fe6b25d30c05bae5d14c"
+ hash: "9ab9c8f788bbca58552bbb6009386d69"
}
Frame {
msec: 96
- hash: "62430dd693c4eaeb7afe9e85229406a4"
+ hash: "7f4b50df7848ad07fb75cb19f2c4b04a"
}
Frame {
msec: 112
- hash: "a9b6aeb509076bf17c2068ce280326fb"
+ hash: "425e48ae492190eb6b8028be11352d7e"
}
Frame {
msec: 128
- hash: "2570806925c3a61a7afaa09331c6eed8"
+ hash: "183e1f8321edb7b8d1cc2cc858039360"
}
Frame {
msec: 144
- hash: "98d48920293b11511e8bbf820dd49acc"
+ hash: "83d82bc27b0e3387dddb8e7e09380e02"
}
Frame {
msec: 160
- hash: "e4809aefa55620a86484f66582d4d1b6"
+ hash: "bca94a64a283e7e30ec8c1fe3249f981"
}
Frame {
msec: 176
- hash: "098b063b0e5eb3dd22adb3353342725e"
+ hash: "26cbcf6233c8fd222a857a8ae801749a"
}
Frame {
msec: 192
- hash: "30aadc837ec2e7d8a2495453348804bc"
+ hash: "ac1d21dba648ab729e1670ead441b173"
}
Frame {
msec: 208
- hash: "05013a538f2796c728b4d0ddad059851"
+ hash: "e42811f8029c6cd70041f8492a31ff27"
}
Frame {
msec: 224
- hash: "b221f14ea2c04078e23ac37ef817c50e"
+ hash: "f0b06b2ccf1be47ab7c5f6863ccdc495"
}
Frame {
msec: 240
- hash: "3ef9de605fff5d3156bccc99a93c5da6"
+ hash: "9b398166d385facb2d02c86cd92ab85f"
}
Frame {
msec: 256
- hash: "7722a4c025f1d2b560c7fec8ba8f7b6d"
+ hash: "a4414a5ae4e44320383d49441d7acb51"
}
Frame {
msec: 272
- hash: "e24ad2d67f10d2cc58dffcc469342005"
+ hash: "f09208fa210f3b0b271af9ef6f3741e8"
}
Frame {
msec: 288
- hash: "5153a42348885ce8de81f8086f73c163"
+ hash: "054f7aebcef583f9c8469aaa2e62f9ea"
}
Frame {
msec: 304
- hash: "7083d70df6cc476ec342abbe6f4409b4"
+ hash: "1331b1218fa6134922ab248bfde5d3f6"
}
Frame {
msec: 320
- hash: "befd4cd74f59291a9f9a01ad2a051029"
+ hash: "601b97220c77c185d9ed3ae3726815a5"
}
Frame {
msec: 336
- hash: "705cd5a0717b6a8de8871bf0bfb38129"
+ hash: "487c739f3849834e3d7fa2885bb28375"
}
Frame {
msec: 352
- hash: "a65d51747c0183a3a096e51326fdae78"
+ hash: "c41dc19ab7f3c80349ac52ab2c3b410d"
}
Frame {
msec: 368
- hash: "99ec9ca33a26afd9e34c1d3246502926"
+ hash: "c6e8b055e5919aecbf2ef4d88de6cabd"
}
Frame {
msec: 384
- hash: "3355ce4b409474e6dbd99d010471a0a4"
+ hash: "f9d99999cccd8a3a9d7cb74cadb08059"
}
Frame {
msec: 400
- hash: "bcfb117c5860306c016a05e828773777"
+ hash: "c466c57cda1c7666a46bab9478031c86"
}
Frame {
msec: 416
- hash: "4650216f60377bf7798877546c723d0a"
+ hash: "02f9c85d8cbd9041ed18d2fe0071c526"
}
Frame {
msec: 432
- hash: "3821707e1201c5eebb043f86887c6bc4"
+ hash: "355d2b1b30a721a26f80c414bd9164f6"
}
Frame {
msec: 448
- hash: "19c079bd61467706ff54f039f512dee6"
+ hash: "bfc8b1bdb53f4a4c44285a5c10819ae7"
}
Frame {
msec: 464
- hash: "9fdd3bb7d735a96df8538f2883d784fe"
+ hash: "c272ac121fe5392f12ef3180d4c694c8"
}
Frame {
msec: 480
- hash: "d8096b88c24221d7176472031de3dc14"
+ hash: "83324ab9209ac5246c39274ecec2dbcf"
}
Frame {
msec: 496
- hash: "be4abb3dd1ee3fc62b83d152a1a89576"
+ hash: "b128fd583f5fa460bcd1c062226274fb"
}
Frame {
msec: 512
- hash: "e3d2caf6eb0afd2e6efd5c08a580e158"
+ hash: "f46f1f1069806b1e17f340140e82bfd3"
}
Frame {
msec: 528
- hash: "40bdf75ac82c26a741939945dbf85924"
+ hash: "dff621d5da5f4d008a8f874914f90637"
}
Frame {
msec: 544
- hash: "e2e3bee6bf84bc82c50a68e442440f05"
+ hash: "c5920a84e215f4bbda3032bbfbca4070"
}
Frame {
msec: 560
- hash: "2cb89b7538d4dd398a9ff5a94e2d0020"
+ hash: "ecc23f198a4bf346bf6eee51f7adea69"
}
Frame {
msec: 576
- hash: "41dce41d337e7d24a5e70d831dbb448b"
+ hash: "dcc8f5b1b6aac31c3c5856560b37c501"
}
Frame {
msec: 592
- hash: "7812862b4c1d67a64792a94cb584a9ed"
+ hash: "203fa4bd23440aa88fc2a27b66ee091d"
}
Frame {
msec: 608
- hash: "a82a2af4b9cee89e03db363f979d1661"
+ hash: "a2662209c8f9aa7bd9c5b4066b289cde"
}
Frame {
msec: 624
- hash: "7071a72a55fab2d7b367eb113d38dc6d"
+ hash: "a2662209c8f9aa7bd9c5b4066b289cde"
}
Frame {
msec: 640
- hash: "835de3a883cb3a7c35cb533f51f9b32c"
+ hash: "203fa4bd23440aa88fc2a27b66ee091d"
}
Frame {
msec: 656
- hash: "498afb76e236561638532ba6cafd758a"
+ hash: "dcc8f5b1b6aac31c3c5856560b37c501"
}
Frame {
msec: 672
- hash: "38ebf5835263e6e80e75653971ad74b4"
+ hash: "ecc23f198a4bf346bf6eee51f7adea69"
}
Frame {
msec: 688
- hash: "b5e8c06b458b1afac627ed7f7e76c868"
+ hash: "c5920a84e215f4bbda3032bbfbca4070"
}
Frame {
msec: 704
- hash: "594e33c35006281b2df3a45c13c31c44"
+ hash: "dff621d5da5f4d008a8f874914f90637"
}
Frame {
msec: 720
- hash: "a49989ca004a6991b49d1978cfc0fed7"
+ hash: "f46f1f1069806b1e17f340140e82bfd3"
}
Frame {
msec: 736
- hash: "a743fc5cdcaadd42095e9e0d8441f7cc"
+ hash: "b128fd583f5fa460bcd1c062226274fb"
}
Frame {
msec: 752
- hash: "4ca1600674bad4b753007322945e25dd"
+ hash: "83324ab9209ac5246c39274ecec2dbcf"
}
Frame {
msec: 768
- hash: "d2921c6ae6a1aa9168a2fa93e8936ff2"
+ hash: "c272ac121fe5392f12ef3180d4c694c8"
}
Frame {
msec: 784
- hash: "55b9f82693d6ebde9ec23e3ed554bb9c"
+ hash: "bfc8b1bdb53f4a4c44285a5c10819ae7"
}
Frame {
msec: 800
- hash: "15e72f5cd1847f591b0c4f6ecb74ed4a"
+ hash: "355d2b1b30a721a26f80c414bd9164f6"
}
Frame {
msec: 816
- hash: "7aa94688f72d6ddade09a9d99f1c5563"
+ hash: "02f9c85d8cbd9041ed18d2fe0071c526"
}
Frame {
msec: 832
- hash: "b782f52c9cb50c72307bbd8fd15fffd2"
+ hash: "c466c57cda1c7666a46bab9478031c86"
}
Frame {
msec: 848
- hash: "8106f20a3c0c3e7ea0e502e963993330"
+ hash: "f9d99999cccd8a3a9d7cb74cadb08059"
}
Frame {
msec: 864
- hash: "670b05d25b72ed4c6affdcf873374947"
+ hash: "c6e8b055e5919aecbf2ef4d88de6cabd"
}
Frame {
msec: 880
- hash: "a34b08cb7e724c0563f86a5c8e209868"
+ hash: "c41dc19ab7f3c80349ac52ab2c3b410d"
}
Frame {
msec: 896
- hash: "f5281eba399a13f6fa024ae0fa6b01bd"
+ hash: "487c739f3849834e3d7fa2885bb28375"
}
Frame {
msec: 912
- hash: "db4dba10574839c3b3d8684aa1a2ad08"
+ hash: "601b97220c77c185d9ed3ae3726815a5"
}
Frame {
msec: 928
- hash: "b90f1f30d340d292c658145f62e2bb8a"
+ hash: "1331b1218fa6134922ab248bfde5d3f6"
}
Frame {
msec: 944
- hash: "452c45b5cc9be80abde7af04ba49731c"
+ hash: "054f7aebcef583f9c8469aaa2e62f9ea"
}
Frame {
msec: 960
- image: "animated-smooth.0.png"
+ hash: "f09208fa210f3b0b271af9ef6f3741e8"
}
Frame {
msec: 976
- hash: "8af61e4b09309e31394ae635d58fafd2"
+ image: "animated-smooth.1.png"
}
Frame {
msec: 992
- hash: "9ce60e38b7025c6fa72432de6a3c88b2"
+ hash: "9b398166d385facb2d02c86cd92ab85f"
}
Frame {
msec: 1008
- hash: "9e7f9d0e83a33f005d9ee579140c5562"
+ hash: "f0b06b2ccf1be47ab7c5f6863ccdc495"
}
Frame {
msec: 1024
- hash: "9e7f9d0e83a33f005d9ee579140c5562"
+ hash: "e42811f8029c6cd70041f8492a31ff27"
}
Frame {
msec: 1040
- hash: "9ce60e38b7025c6fa72432de6a3c88b2"
+ hash: "ac1d21dba648ab729e1670ead441b173"
}
Frame {
msec: 1056
- hash: "8af61e4b09309e31394ae635d58fafd2"
+ hash: "26cbcf6233c8fd222a857a8ae801749a"
}
Frame {
msec: 1072
- hash: "d9ab04d0a6a9373e5622e1124db17866"
+ hash: "bca94a64a283e7e30ec8c1fe3249f981"
}
Frame {
msec: 1088
- hash: "452c45b5cc9be80abde7af04ba49731c"
+ hash: "83d82bc27b0e3387dddb8e7e09380e02"
}
Frame {
msec: 1104
- hash: "b90f1f30d340d292c658145f62e2bb8a"
+ hash: "183e1f8321edb7b8d1cc2cc858039360"
}
Frame {
msec: 1120
- hash: "db4dba10574839c3b3d8684aa1a2ad08"
+ hash: "425e48ae492190eb6b8028be11352d7e"
}
Frame {
msec: 1136
- hash: "f5281eba399a13f6fa024ae0fa6b01bd"
+ hash: "7f4b50df7848ad07fb75cb19f2c4b04a"
}
Frame {
msec: 1152
- hash: "a34b08cb7e724c0563f86a5c8e209868"
+ hash: "9ab9c8f788bbca58552bbb6009386d69"
}
Frame {
msec: 1168
- hash: "670b05d25b72ed4c6affdcf873374947"
+ hash: "8ba2cebd7b80bd58612ce46470e7763b"
}
Frame {
msec: 1184
- hash: "8106f20a3c0c3e7ea0e502e963993330"
+ hash: "a2467396d7318a93d35aa314896d3d05"
}
Frame {
msec: 1200
- hash: "b782f52c9cb50c72307bbd8fd15fffd2"
+ hash: "a2467396d7318a93d35aa314896d3d05"
}
Frame {
msec: 1216
- hash: "7aa94688f72d6ddade09a9d99f1c5563"
+ hash: "a2467396d7318a93d35aa314896d3d05"
}
Frame {
msec: 1232
- hash: "15e72f5cd1847f591b0c4f6ecb74ed4a"
+ hash: "a2467396d7318a93d35aa314896d3d05"
}
Frame {
msec: 1248
- hash: "55b9f82693d6ebde9ec23e3ed554bb9c"
- }
- Frame {
- msec: 1264
- hash: "d2921c6ae6a1aa9168a2fa93e8936ff2"
- }
- Frame {
- msec: 1280
- hash: "4ca1600674bad4b753007322945e25dd"
- }
- Frame {
- msec: 1296
- hash: "a743fc5cdcaadd42095e9e0d8441f7cc"
- }
- Frame {
- msec: 1312
- hash: "a49989ca004a6991b49d1978cfc0fed7"
- }
- Frame {
- msec: 1328
- hash: "594e33c35006281b2df3a45c13c31c44"
- }
- Frame {
- msec: 1344
- hash: "b5e8c06b458b1afac627ed7f7e76c868"
- }
- Frame {
- msec: 1360
- hash: "38ebf5835263e6e80e75653971ad74b4"
- }
- Frame {
- msec: 1376
- hash: "498afb76e236561638532ba6cafd758a"
- }
- Frame {
- msec: 1392
- hash: "835de3a883cb3a7c35cb533f51f9b32c"
- }
- Frame {
- msec: 1408
- hash: "7071a72a55fab2d7b367eb113d38dc6d"
- }
- Frame {
- msec: 1424
- hash: "a82a2af4b9cee89e03db363f979d1661"
- }
- Frame {
- msec: 1440
- hash: "7812862b4c1d67a64792a94cb584a9ed"
- }
- Frame {
- msec: 1456
- hash: "41dce41d337e7d24a5e70d831dbb448b"
- }
- Frame {
- msec: 1472
- hash: "2cb89b7538d4dd398a9ff5a94e2d0020"
- }
- Frame {
- msec: 1488
- hash: "e2e3bee6bf84bc82c50a68e442440f05"
- }
- Frame {
- msec: 1504
- hash: "40bdf75ac82c26a741939945dbf85924"
- }
- Frame {
- msec: 1520
- hash: "e3d2caf6eb0afd2e6efd5c08a580e158"
- }
- Frame {
- msec: 1536
- hash: "be4abb3dd1ee3fc62b83d152a1a89576"
- }
- Frame {
- msec: 1552
- hash: "d8096b88c24221d7176472031de3dc14"
- }
- Frame {
- msec: 1568
- hash: "9fdd3bb7d735a96df8538f2883d784fe"
- }
- Frame {
- msec: 1584
- hash: "19c079bd61467706ff54f039f512dee6"
- }
- Frame {
- msec: 1600
- hash: "3821707e1201c5eebb043f86887c6bc4"
- }
- Frame {
- msec: 1616
- hash: "4650216f60377bf7798877546c723d0a"
- }
- Frame {
- msec: 1632
- hash: "bcfb117c5860306c016a05e828773777"
- }
- Frame {
- msec: 1648
- hash: "3355ce4b409474e6dbd99d010471a0a4"
- }
- Frame {
- msec: 1664
- hash: "99ec9ca33a26afd9e34c1d3246502926"
- }
- Frame {
- msec: 1680
- hash: "a65d51747c0183a3a096e51326fdae78"
- }
- Frame {
- msec: 1696
- hash: "705cd5a0717b6a8de8871bf0bfb38129"
- }
- Frame {
- msec: 1712
- hash: "befd4cd74f59291a9f9a01ad2a051029"
- }
- Frame {
- msec: 1728
- hash: "7083d70df6cc476ec342abbe6f4409b4"
- }
- Frame {
- msec: 1744
- hash: "5153a42348885ce8de81f8086f73c163"
- }
- Frame {
- msec: 1760
- hash: "e24ad2d67f10d2cc58dffcc469342005"
- }
- Frame {
- msec: 1776
- hash: "7722a4c025f1d2b560c7fec8ba8f7b6d"
- }
- Frame {
- msec: 1792
- hash: "3ef9de605fff5d3156bccc99a93c5da6"
- }
- Frame {
- msec: 1808
- hash: "b221f14ea2c04078e23ac37ef817c50e"
- }
- Frame {
- msec: 1824
- hash: "05013a538f2796c728b4d0ddad059851"
- }
- Frame {
- msec: 1840
- hash: "30aadc837ec2e7d8a2495453348804bc"
- }
- Frame {
- msec: 1856
- hash: "098b063b0e5eb3dd22adb3353342725e"
- }
- Frame {
- msec: 1872
- hash: "e4809aefa55620a86484f66582d4d1b6"
- }
- Frame {
- msec: 1888
- hash: "98d48920293b11511e8bbf820dd49acc"
- }
- Frame {
- msec: 1904
- hash: "2570806925c3a61a7afaa09331c6eed8"
- }
- Frame {
- msec: 1920
- image: "animated-smooth.1.png"
- }
- Frame {
- msec: 1936
- hash: "62430dd693c4eaeb7afe9e85229406a4"
- }
- Frame {
- msec: 1952
- hash: "9419c891e347fe6b25d30c05bae5d14c"
- }
- Frame {
- msec: 1968
- hash: "aec13bcab337e55832b0a02fb5c6b526"
- }
- Frame {
- msec: 1984
- hash: "aec13bcab337e55832b0a02fb5c6b526"
- }
- Frame {
- msec: 2000
- hash: "aec13bcab337e55832b0a02fb5c6b526"
- }
- Frame {
- msec: 2016
- hash: "aec13bcab337e55832b0a02fb5c6b526"
- }
- Frame {
- msec: 2032
- hash: "aec13bcab337e55832b0a02fb5c6b526"
- }
- Frame {
- msec: 2048
- hash: "aec13bcab337e55832b0a02fb5c6b526"
- }
- Frame {
- msec: 2064
- hash: "aec13bcab337e55832b0a02fb5c6b526"
- }
- Frame {
- msec: 2080
- hash: "9419c891e347fe6b25d30c05bae5d14c"
- }
- Frame {
- msec: 2096
- hash: "62430dd693c4eaeb7afe9e85229406a4"
- }
- Frame {
- msec: 2112
- hash: "a9b6aeb509076bf17c2068ce280326fb"
- }
- Frame {
- msec: 2128
- hash: "2570806925c3a61a7afaa09331c6eed8"
- }
- Frame {
- msec: 2144
- hash: "98d48920293b11511e8bbf820dd49acc"
+ hash: "a2467396d7318a93d35aa314896d3d05"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/animated.0.png b/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/animated.0.png
index 3efd596799..b7d06e48d7 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/animated.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/animated.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/animated.1.png b/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/animated.1.png
index 517fc06d84..a0081a95d7 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/animated.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/animated.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/animated.qml b/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/animated.qml
index 236003a0c7..87be9f069e 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/animated.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/animated.qml
@@ -6,550 +6,338 @@ VisualTest {
}
Frame {
msec: 16
- hash: "aec13bcab337e55832b0a02fb5c6b526"
+ image: "animated.0.png"
}
Frame {
msec: 32
- hash: "aec13bcab337e55832b0a02fb5c6b526"
+ hash: "a2467396d7318a93d35aa314896d3d05"
}
Frame {
msec: 48
- hash: "aec13bcab337e55832b0a02fb5c6b526"
+ hash: "a2467396d7318a93d35aa314896d3d05"
}
Frame {
msec: 64
- hash: "aec13bcab337e55832b0a02fb5c6b526"
+ hash: "ed19378ea8f51f5ecbd4c89ee5c905c2"
}
Frame {
msec: 80
- hash: "aacf9ae3c23d174a1c1cda493600e355"
+ hash: "3dc69d5d1b6c524a74e7cec619df5ee3"
}
Frame {
msec: 96
- hash: "465ec993948f7b75aeb5759976f4620d"
+ hash: "ab8d9aa7290be2134a6ef10ca1e1bfe7"
}
Frame {
msec: 112
- hash: "b63e4d1686057828fd8781f1c33585f5"
+ hash: "8091f4ff6f68e178b7a2a76ba2b38df3"
}
Frame {
msec: 128
- hash: "4d45d70f997c2c67166905c97a900d2e"
+ hash: "a94ad01eb63609b5e4a9e6570e1dc25c"
}
Frame {
msec: 144
- hash: "08b9be66e23c7b6f6f629c7470394601"
+ hash: "21692407cdfeeb20ff81d5d8a8ba3b7e"
}
Frame {
msec: 160
- hash: "406224b535b4425d2708df0083acdc8e"
+ hash: "b1d5e860ea311dce4a46fd6d46f9ed58"
}
Frame {
msec: 176
- hash: "8419f1d75b14130730bcfec4e3a9b058"
+ hash: "a2ef453b88ee01c70a4312ab6dd26685"
}
Frame {
msec: 192
- hash: "c1936628aec13e08e9581dcd2c6d5717"
+ hash: "6ce1f7da3994a51ad06afa0afb789752"
}
Frame {
msec: 208
- hash: "8c66a33d26eec2a1133f4362710a5fab"
+ hash: "dccf9c55dfe7ae652b0e659893465158"
}
Frame {
msec: 224
- hash: "01947e631c3db43f7c5b4427229bc0c8"
+ hash: "18b00b462711676fdf61ef1819f9f73a"
}
Frame {
msec: 240
- hash: "06d8d8a1a41893d4e27725948a75caf4"
+ hash: "981011b01c3dbde098b1a3d0de4026cd"
}
Frame {
msec: 256
- hash: "ac8f096e8c7cc23bfb01de69cf3e266e"
+ hash: "86389b057e84c4dd4cf75d4e33d5e282"
}
Frame {
msec: 272
- hash: "2a7bed775824968e318c3d40fbc5b1c2"
+ hash: "6802146ad90b2921856c103246f4bca9"
}
Frame {
msec: 288
- hash: "f1a7a4a67a21f5025294af4bea3f8998"
+ hash: "7ab7d71199e883192e28fc150646128c"
}
Frame {
msec: 304
- hash: "18c2f321a149e38b258ac264d40c2376"
+ hash: "3d2298cc655318029a2467813f8d75f4"
}
Frame {
msec: 320
- hash: "19d05a96f3ae7388e854bbf1075b51c1"
+ hash: "74a1ed7250f85e7ed4d811b5b697ecb3"
}
Frame {
msec: 336
- hash: "554e1d360463871e7c05cfe6f8abe1dd"
+ hash: "2cc6d5e8f4ebde059ffe31fffb2b359d"
}
Frame {
msec: 352
- hash: "60f158382f75103c78e2b9b408e0fe65"
+ hash: "b08aec6d9f82e0d530d57f592c25e91a"
}
Frame {
msec: 368
- hash: "6a521f952e05d91b86ad78fd6f5de4f9"
+ hash: "9f4272d24685a9fbe5c48186932cac07"
}
Frame {
msec: 384
- hash: "a6f17da2dd581bdc249ff62f833dc025"
+ hash: "4cde877841640aa89949c1369c3b6fd0"
}
Frame {
msec: 400
- hash: "1ea07ee309ce2c52cbc36370b75a872f"
+ hash: "bdbbd0b6a309b63d152b7f9b34b51d80"
}
Frame {
msec: 416
- hash: "c7eb7837dce71c914186326216214eeb"
+ hash: "531708677915c1e094ece6f1acac6d1f"
}
Frame {
msec: 432
- hash: "93cf31eabb454ec536c638a506be0648"
+ hash: "7213628b1f66f1dc47fa63eb2aad2d81"
}
Frame {
msec: 448
- hash: "1ac8c393f084aa1894c26610b7f40ea6"
+ hash: "0ff58a47d524fae956431efc21364ed2"
}
Frame {
msec: 464
- hash: "f04e84ad3579d6334077abe73101d206"
+ hash: "1e940cc44e00f05bad28bcf934b40b1c"
}
Frame {
msec: 480
- hash: "ff0928dfd16b2da9811a172c19817a97"
+ hash: "0f76be39637e8b6ac15c40ea95890189"
}
Frame {
msec: 496
- hash: "7383209c80b403b93da3264eadbc047f"
+ hash: "e23cf00dbd05677815e7e38f6f8e3a4a"
}
Frame {
msec: 512
- hash: "bc747167dfb3388ac63e9e68a86b9a03"
+ hash: "3d7e81620d169800f6a251fa3875f23d"
}
Frame {
msec: 528
- hash: "ae48da4a66f93c806725ce749700aac8"
+ hash: "9e04076e283a3a71407488e94d84861f"
}
Frame {
msec: 544
- hash: "956429472da133324c970774f77784f5"
+ hash: "f4fc58740d6b5cf392e117164d859c0b"
}
Frame {
msec: 560
- hash: "ec0aea8dc8c269d1f0aee5817347ac55"
+ hash: "8f041ba2a82618c1545aac6f50c95384"
}
Frame {
msec: 576
- hash: "81d2fc6727dc7449d1a87b4abea9b704"
+ hash: "759368622bc25c7ae1cb8d2c44affe6a"
}
Frame {
msec: 592
- hash: "80ebac4d923f67fb8dba3d133ce657ba"
+ hash: "90314671aab8165c7c1b35dcf5aaa6b9"
}
Frame {
msec: 608
- hash: "5359f5e45e5467c62c2d9521c8199c48"
+ hash: "ecd1d2fe087a36fc58290c0c249a7ea0"
}
Frame {
msec: 624
- hash: "08f55088cdce741c67539f73291e53ab"
+ hash: "ecd1d2fe087a36fc58290c0c249a7ea0"
}
Frame {
msec: 640
- hash: "97f7a2175dcf9ac2581a92d614d72f88"
+ hash: "90314671aab8165c7c1b35dcf5aaa6b9"
}
Frame {
msec: 656
- hash: "985868869ef2c332da379460a2f3a71b"
+ hash: "759368622bc25c7ae1cb8d2c44affe6a"
}
Frame {
msec: 672
- hash: "e91bb914c1eb63cd4269b30a220a128a"
+ hash: "8f041ba2a82618c1545aac6f50c95384"
}
Frame {
msec: 688
- hash: "84c94704c16e246df1048f958cc8cefb"
+ hash: "f4fc58740d6b5cf392e117164d859c0b"
}
Frame {
msec: 704
- hash: "99de44f74f8e1f79652ab46afb4bb59e"
+ hash: "9e04076e283a3a71407488e94d84861f"
}
Frame {
msec: 720
- hash: "a1bd4e995365e79389dba80f9e3b7af8"
+ hash: "3d7e81620d169800f6a251fa3875f23d"
}
Frame {
msec: 736
- hash: "3b95eb8cbfc831e1ebee2e456b026ab4"
+ hash: "e23cf00dbd05677815e7e38f6f8e3a4a"
}
Frame {
msec: 752
- hash: "11673a112566a64aca3c7010b9cc9c4d"
+ hash: "0f76be39637e8b6ac15c40ea95890189"
}
Frame {
msec: 768
- hash: "5b027815ea3c1ea54e1a02c798c468db"
+ hash: "1e940cc44e00f05bad28bcf934b40b1c"
}
Frame {
msec: 784
- hash: "73c5f23f51797a33f4d2898738e6356e"
+ hash: "0ff58a47d524fae956431efc21364ed2"
}
Frame {
msec: 800
- hash: "fb17df681d99d5de05f6329bba697ea5"
+ hash: "7213628b1f66f1dc47fa63eb2aad2d81"
}
Frame {
msec: 816
- hash: "0b1a741975e3d9ef8f5e78f371c89441"
+ hash: "531708677915c1e094ece6f1acac6d1f"
}
Frame {
msec: 832
- hash: "a790f0e884ab85f7802dd094e4ef550f"
+ hash: "bdbbd0b6a309b63d152b7f9b34b51d80"
}
Frame {
msec: 848
- hash: "b12faa76c07adc21634cd8f8cb8436ae"
+ hash: "4cde877841640aa89949c1369c3b6fd0"
}
Frame {
msec: 864
- hash: "f57727419bb51fb1e589b960ddeb20ae"
+ hash: "9f4272d24685a9fbe5c48186932cac07"
}
Frame {
msec: 880
- hash: "8172e076b05d95248d89e815fde820ef"
+ hash: "b08aec6d9f82e0d530d57f592c25e91a"
}
Frame {
msec: 896
- hash: "74c1e71378b502bc1b732a55806a10f1"
+ hash: "2cc6d5e8f4ebde059ffe31fffb2b359d"
}
Frame {
msec: 912
- hash: "a67e9a0f55512fb1c55f13c6b483923b"
+ hash: "74a1ed7250f85e7ed4d811b5b697ecb3"
}
Frame {
msec: 928
- hash: "13ca95adab171d9fad9ee8b75d0226bc"
+ hash: "3d2298cc655318029a2467813f8d75f4"
}
Frame {
msec: 944
- hash: "7aa0cbf73f7999be7cde4ec739efbc33"
+ hash: "7ab7d71199e883192e28fc150646128c"
}
Frame {
msec: 960
- image: "animated.0.png"
+ hash: "6802146ad90b2921856c103246f4bca9"
}
Frame {
msec: 976
- hash: "29245946cbd811fe6bf6b2b41cc13002"
+ image: "animated.1.png"
}
Frame {
msec: 992
- hash: "058c918e83bfdd665cd836566b53959b"
+ hash: "981011b01c3dbde098b1a3d0de4026cd"
}
Frame {
msec: 1008
- hash: "ed5d80c33dbf72624385b1cf43784626"
+ hash: "18b00b462711676fdf61ef1819f9f73a"
}
Frame {
msec: 1024
- hash: "ed5d80c33dbf72624385b1cf43784626"
+ hash: "dccf9c55dfe7ae652b0e659893465158"
}
Frame {
msec: 1040
- hash: "058c918e83bfdd665cd836566b53959b"
+ hash: "6ce1f7da3994a51ad06afa0afb789752"
}
Frame {
msec: 1056
- hash: "29245946cbd811fe6bf6b2b41cc13002"
+ hash: "a2ef453b88ee01c70a4312ab6dd26685"
}
Frame {
msec: 1072
- hash: "d1ed4916cb1ecff60277d74369ff311b"
+ hash: "b1d5e860ea311dce4a46fd6d46f9ed58"
}
Frame {
msec: 1088
- hash: "7aa0cbf73f7999be7cde4ec739efbc33"
+ hash: "21692407cdfeeb20ff81d5d8a8ba3b7e"
}
Frame {
msec: 1104
- hash: "13ca95adab171d9fad9ee8b75d0226bc"
+ hash: "a94ad01eb63609b5e4a9e6570e1dc25c"
}
Frame {
msec: 1120
- hash: "a67e9a0f55512fb1c55f13c6b483923b"
+ hash: "8091f4ff6f68e178b7a2a76ba2b38df3"
}
Frame {
msec: 1136
- hash: "74c1e71378b502bc1b732a55806a10f1"
+ hash: "ab8d9aa7290be2134a6ef10ca1e1bfe7"
}
Frame {
msec: 1152
- hash: "8172e076b05d95248d89e815fde820ef"
+ hash: "3dc69d5d1b6c524a74e7cec619df5ee3"
}
Frame {
msec: 1168
- hash: "f57727419bb51fb1e589b960ddeb20ae"
+ hash: "ed19378ea8f51f5ecbd4c89ee5c905c2"
}
Frame {
msec: 1184
- hash: "b12faa76c07adc21634cd8f8cb8436ae"
+ hash: "a2467396d7318a93d35aa314896d3d05"
}
Frame {
msec: 1200
- hash: "a790f0e884ab85f7802dd094e4ef550f"
+ hash: "a2467396d7318a93d35aa314896d3d05"
}
Frame {
msec: 1216
- hash: "0b1a741975e3d9ef8f5e78f371c89441"
+ hash: "a2467396d7318a93d35aa314896d3d05"
}
Frame {
msec: 1232
- hash: "fb17df681d99d5de05f6329bba697ea5"
+ hash: "a2467396d7318a93d35aa314896d3d05"
}
Frame {
msec: 1248
- hash: "73c5f23f51797a33f4d2898738e6356e"
+ hash: "a2467396d7318a93d35aa314896d3d05"
}
Frame {
msec: 1264
- hash: "5b027815ea3c1ea54e1a02c798c468db"
+ hash: "ed19378ea8f51f5ecbd4c89ee5c905c2"
}
Frame {
msec: 1280
- hash: "11673a112566a64aca3c7010b9cc9c4d"
+ hash: "3dc69d5d1b6c524a74e7cec619df5ee3"
}
Frame {
msec: 1296
- hash: "3b95eb8cbfc831e1ebee2e456b026ab4"
+ hash: "ab8d9aa7290be2134a6ef10ca1e1bfe7"
}
Frame {
msec: 1312
- hash: "a1bd4e995365e79389dba80f9e3b7af8"
+ hash: "8091f4ff6f68e178b7a2a76ba2b38df3"
}
Frame {
msec: 1328
- hash: "99de44f74f8e1f79652ab46afb4bb59e"
+ hash: "a94ad01eb63609b5e4a9e6570e1dc25c"
}
Frame {
msec: 1344
- hash: "84c94704c16e246df1048f958cc8cefb"
- }
- Frame {
- msec: 1360
- hash: "e91bb914c1eb63cd4269b30a220a128a"
- }
- Frame {
- msec: 1376
- hash: "985868869ef2c332da379460a2f3a71b"
- }
- Frame {
- msec: 1392
- hash: "97f7a2175dcf9ac2581a92d614d72f88"
- }
- Frame {
- msec: 1408
- hash: "08f55088cdce741c67539f73291e53ab"
- }
- Frame {
- msec: 1424
- hash: "5359f5e45e5467c62c2d9521c8199c48"
- }
- Frame {
- msec: 1440
- hash: "80ebac4d923f67fb8dba3d133ce657ba"
- }
- Frame {
- msec: 1456
- hash: "81d2fc6727dc7449d1a87b4abea9b704"
- }
- Frame {
- msec: 1472
- hash: "ec0aea8dc8c269d1f0aee5817347ac55"
- }
- Frame {
- msec: 1488
- hash: "956429472da133324c970774f77784f5"
- }
- Frame {
- msec: 1504
- hash: "ae48da4a66f93c806725ce749700aac8"
- }
- Frame {
- msec: 1520
- hash: "bc747167dfb3388ac63e9e68a86b9a03"
- }
- Frame {
- msec: 1536
- hash: "7383209c80b403b93da3264eadbc047f"
- }
- Frame {
- msec: 1552
- hash: "ff0928dfd16b2da9811a172c19817a97"
- }
- Frame {
- msec: 1568
- hash: "f04e84ad3579d6334077abe73101d206"
- }
- Frame {
- msec: 1584
- hash: "1ac8c393f084aa1894c26610b7f40ea6"
- }
- Frame {
- msec: 1600
- hash: "93cf31eabb454ec536c638a506be0648"
- }
- Frame {
- msec: 1616
- hash: "c7eb7837dce71c914186326216214eeb"
- }
- Frame {
- msec: 1632
- hash: "1ea07ee309ce2c52cbc36370b75a872f"
- }
- Frame {
- msec: 1648
- hash: "a6f17da2dd581bdc249ff62f833dc025"
- }
- Frame {
- msec: 1664
- hash: "6a521f952e05d91b86ad78fd6f5de4f9"
- }
- Frame {
- msec: 1680
- hash: "60f158382f75103c78e2b9b408e0fe65"
- }
- Frame {
- msec: 1696
- hash: "554e1d360463871e7c05cfe6f8abe1dd"
- }
- Frame {
- msec: 1712
- hash: "19d05a96f3ae7388e854bbf1075b51c1"
- }
- Frame {
- msec: 1728
- hash: "18c2f321a149e38b258ac264d40c2376"
- }
- Frame {
- msec: 1744
- hash: "f1a7a4a67a21f5025294af4bea3f8998"
- }
- Frame {
- msec: 1760
- hash: "2a7bed775824968e318c3d40fbc5b1c2"
- }
- Frame {
- msec: 1776
- hash: "ac8f096e8c7cc23bfb01de69cf3e266e"
- }
- Frame {
- msec: 1792
- hash: "06d8d8a1a41893d4e27725948a75caf4"
- }
- Frame {
- msec: 1808
- hash: "01947e631c3db43f7c5b4427229bc0c8"
- }
- Frame {
- msec: 1824
- hash: "8c66a33d26eec2a1133f4362710a5fab"
- }
- Frame {
- msec: 1840
- hash: "c1936628aec13e08e9581dcd2c6d5717"
- }
- Frame {
- msec: 1856
- hash: "8419f1d75b14130730bcfec4e3a9b058"
- }
- Frame {
- msec: 1872
- hash: "406224b535b4425d2708df0083acdc8e"
- }
- Frame {
- msec: 1888
- hash: "08b9be66e23c7b6f6f629c7470394601"
- }
- Frame {
- msec: 1904
- hash: "4d45d70f997c2c67166905c97a900d2e"
- }
- Frame {
- msec: 1920
- image: "animated.1.png"
- }
- Frame {
- msec: 1936
- hash: "465ec993948f7b75aeb5759976f4620d"
- }
- Frame {
- msec: 1952
- hash: "aacf9ae3c23d174a1c1cda493600e355"
- }
- Frame {
- msec: 1968
- hash: "aec13bcab337e55832b0a02fb5c6b526"
- }
- Frame {
- msec: 1984
- hash: "aec13bcab337e55832b0a02fb5c6b526"
- }
- Frame {
- msec: 2000
- hash: "aec13bcab337e55832b0a02fb5c6b526"
- }
- Frame {
- msec: 2016
- hash: "aec13bcab337e55832b0a02fb5c6b526"
- }
- Frame {
- msec: 2032
- hash: "aec13bcab337e55832b0a02fb5c6b526"
- }
- Frame {
- msec: 2048
- hash: "aec13bcab337e55832b0a02fb5c6b526"
- }
- Frame {
- msec: 2064
- hash: "aec13bcab337e55832b0a02fb5c6b526"
- }
- Frame {
- msec: 2080
- hash: "aacf9ae3c23d174a1c1cda493600e355"
- }
- Frame {
- msec: 2096
- hash: "465ec993948f7b75aeb5759976f4620d"
- }
- Frame {
- msec: 2112
- hash: "b63e4d1686057828fd8781f1c33585f5"
- }
- Frame {
- msec: 2128
- hash: "4d45d70f997c2c67166905c97a900d2e"
- }
- Frame {
- msec: 2144
- hash: "08b9be66e23c7b6f6f629c7470394601"
- }
- Frame {
- msec: 2160
- hash: "406224b535b4425d2708df0083acdc8e"
- }
- Frame {
- msec: 2176
- hash: "8419f1d75b14130730bcfec4e3a9b058"
- }
- Frame {
- msec: 2192
- hash: "c1936628aec13e08e9581dcd2c6d5717"
+ hash: "21692407cdfeeb20ff81d5d8a8ba3b7e"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/borders.0.png b/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/borders.0.png
index 03d7082729..8d4355410d 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/borders.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeborderimage/data/borders.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data-MAC/flickable-horizontal.0.png b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data-MAC/flickable-horizontal.0.png
new file mode 100644
index 0000000000..9a81b29aa4
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data-MAC/flickable-horizontal.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data-MAC/flickable-horizontal.1.png b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data-MAC/flickable-horizontal.1.png
new file mode 100644
index 0000000000..2d9c4fdfb4
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data-MAC/flickable-horizontal.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data-MAC/flickable-horizontal.2.png b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data-MAC/flickable-horizontal.2.png
new file mode 100644
index 0000000000..2bb0cb0fe5
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data-MAC/flickable-horizontal.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data-MAC/flickable-horizontal.3.png b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data-MAC/flickable-horizontal.3.png
new file mode 100644
index 0000000000..8260a65df3
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data-MAC/flickable-horizontal.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data-MAC/flickable-horizontal.4.png b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data-MAC/flickable-horizontal.4.png
new file mode 100644
index 0000000000..0abcbc2f4d
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data-MAC/flickable-horizontal.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data-MAC/flickable-horizontal.qml b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data-MAC/flickable-horizontal.qml
new file mode 100644
index 0000000000..f1bb428295
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data-MAC/flickable-horizontal.qml
@@ -0,0 +1,1575 @@
+import Qt.VisualTest 4.7
+
+VisualTest {
+ Frame {
+ msec: 0
+ }
+ Frame {
+ msec: 16
+ image: "flickable-horizontal.0.png"
+ }
+ Frame {
+ msec: 32
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 48
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 64
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 80
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 96
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 112
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 128
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 144
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 160
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 176
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 192
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 208
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 224
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 240
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 256
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 272
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 288
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 304
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 320
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 336
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 352
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 368
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 384
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 400
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 416
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 432
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 448
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 464
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 480
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 496
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 512
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 528
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 544
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 560
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 576
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 592
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 608
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 624
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 640
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 656
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 672
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 688
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 704
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 720
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 447; y: 145
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 736
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 752
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 768
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 446; y: 145
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 784
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 440; y: 146
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 800
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 425; y: 151
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 407; y: 157
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 816
+ hash: "c92e345e4ffdb30c28d9d5aa5400bd30"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 359; y: 169
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 832
+ hash: "90f94986ab44ab59618e9a5da17b8cc9"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 309; y: 181
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 848
+ hash: "0154a65f8693b98576101ac1c2fc8761"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 282; y: 187
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 282; y: 187
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 864
+ hash: "792c1b5267f14c891dae2348a8188a92"
+ }
+ Frame {
+ msec: 880
+ hash: "15ce9e88d4ad2e698bf167d1432c0b8a"
+ }
+ Frame {
+ msec: 896
+ hash: "8f4109ef4c24d286d73f689565a0d056"
+ }
+ Frame {
+ msec: 912
+ hash: "f5728190bf5c94742686f063b4a4b09b"
+ }
+ Frame {
+ msec: 928
+ hash: "a38c7527a9a818b7bc25466b0e4939f9"
+ }
+ Frame {
+ msec: 944
+ hash: "ed3902455fc31a4e3232308b815a4daa"
+ }
+ Frame {
+ msec: 960
+ hash: "a2093589363ac2d50491412e99e0193a"
+ }
+ Frame {
+ msec: 976
+ image: "flickable-horizontal.1.png"
+ }
+ Frame {
+ msec: 992
+ hash: "c32349580e3a9586cc1133c935607cf0"
+ }
+ Frame {
+ msec: 1008
+ hash: "cd2068492e346eb20d50aee69e3a3559"
+ }
+ Frame {
+ msec: 1024
+ hash: "f43a1a38894b8ffad009ba995d84b0ee"
+ }
+ Frame {
+ msec: 1040
+ hash: "2d5c4a73df2a054801571f1ce119e31f"
+ }
+ Frame {
+ msec: 1056
+ hash: "b8825cc6bdca8102a655d797ea41b5b1"
+ }
+ Frame {
+ msec: 1072
+ hash: "3f0be15b85220743d004f2d54b6e137c"
+ }
+ Frame {
+ msec: 1088
+ hash: "4b0952d33149b44ffa0a06723a4116c7"
+ }
+ Frame {
+ msec: 1104
+ hash: "9056bda43259e92cfe56fdf394e2ca54"
+ }
+ Frame {
+ msec: 1120
+ hash: "82ec9f09d2303e5b0b9c05b9a10a84db"
+ }
+ Frame {
+ msec: 1136
+ hash: "751a9b3054c09d900364d7c9cac8bc2b"
+ }
+ Frame {
+ msec: 1152
+ hash: "17dfdfef20f9da7e8b6f16df974baea9"
+ }
+ Frame {
+ msec: 1168
+ hash: "108e6d9a5a81df32823bfd7a90a000a7"
+ }
+ Frame {
+ msec: 1184
+ hash: "71dd0d55a3e837d3a8e4b4e318579ade"
+ }
+ Frame {
+ msec: 1200
+ hash: "8013cdb2615bca89134ea040409af509"
+ }
+ Frame {
+ msec: 1216
+ hash: "4b2826ad4c755690bd837994133f5fac"
+ }
+ Frame {
+ msec: 1232
+ hash: "52d0da7f138bd37ac587a448d6402aca"
+ }
+ Frame {
+ msec: 1248
+ hash: "e634724c5bb294d338210845bf64d2cf"
+ }
+ Frame {
+ msec: 1264
+ hash: "59bc5f0d057ee431f289806377f19213"
+ }
+ Frame {
+ msec: 1280
+ hash: "6ef2c5f7766c2cc77b30d636bfaa4422"
+ }
+ Frame {
+ msec: 1296
+ hash: "578d056c3db094420dbaa51bd08ced20"
+ }
+ Frame {
+ msec: 1312
+ hash: "14c6f7a04a52caffefa07af556ccb262"
+ }
+ Frame {
+ msec: 1328
+ hash: "7cb63d56fec144d0509ce219fc6fe459"
+ }
+ Frame {
+ msec: 1344
+ hash: "462dafa7f6427aecf6c28a5dcf5a10cc"
+ }
+ Frame {
+ msec: 1360
+ hash: "45360814f985ed780a443568a91fc170"
+ }
+ Frame {
+ msec: 1376
+ hash: "0d18ceb2436e4f7eb56a3443fab706e6"
+ }
+ Frame {
+ msec: 1392
+ hash: "1d83f367ba9f7f1d4496208271e925ed"
+ }
+ Frame {
+ msec: 1408
+ hash: "fdbd00ee4c122aef779df42ea53f403a"
+ }
+ Frame {
+ msec: 1424
+ hash: "bedd1cb304efd4851813b39a746198a4"
+ }
+ Frame {
+ msec: 1440
+ hash: "9aa7bed86efa9634466736f20ee0ab5b"
+ }
+ Frame {
+ msec: 1456
+ hash: "00fc8186a7ae44e10195a7b13defa0d2"
+ }
+ Frame {
+ msec: 1472
+ hash: "42d6e8e0bbed879ed63644c83e61e7bd"
+ }
+ Frame {
+ msec: 1488
+ hash: "df074f8c210249e5ef652349479b6325"
+ }
+ Frame {
+ msec: 1504
+ hash: "4f94020437e35cf44dd3576997990ab7"
+ }
+ Frame {
+ msec: 1520
+ hash: "8ca6c3b4fa3be73ac35073356b680a35"
+ }
+ Frame {
+ msec: 1536
+ hash: "c25eee1c5791383ebc59974e7754eacb"
+ }
+ Frame {
+ msec: 1552
+ hash: "f4917ada78942428cc6b9aa5e56c013d"
+ }
+ Frame {
+ msec: 1568
+ hash: "23e1e607101fc7260a4ac841344f5fe0"
+ }
+ Frame {
+ msec: 1584
+ hash: "2dcc7d187d8e0493e5766efbf09ef37c"
+ }
+ Frame {
+ msec: 1600
+ hash: "c1e5602753e80cf44d7b330140c6912e"
+ }
+ Frame {
+ msec: 1616
+ hash: "febaf72d01a3763461b4b7d2ddd7a23e"
+ }
+ Frame {
+ msec: 1632
+ hash: "071262b911b61576f451be25691a57cf"
+ }
+ Frame {
+ msec: 1648
+ hash: "44705db9289fd8753b9d63e8bc963b38"
+ }
+ Frame {
+ msec: 1664
+ hash: "0c41d7b7d36bd083abfc0b83b862cad9"
+ }
+ Frame {
+ msec: 1680
+ hash: "0c41d7b7d36bd083abfc0b83b862cad9"
+ }
+ Frame {
+ msec: 1696
+ hash: "071262b911b61576f451be25691a57cf"
+ }
+ Frame {
+ msec: 1712
+ hash: "a00aa90e894b48203b0446ca287ee712"
+ }
+ Frame {
+ msec: 1728
+ hash: "26c9ca53ee4b084c6595ad65bf4880df"
+ }
+ Frame {
+ msec: 1744
+ hash: "f4917ada78942428cc6b9aa5e56c013d"
+ }
+ Frame {
+ msec: 1760
+ hash: "ffedee7bf2d8099e361b8b1706b03f88"
+ }
+ Frame {
+ msec: 1776
+ hash: "1778ef1629ce977015b641448b46634f"
+ }
+ Frame {
+ msec: 1792
+ hash: "42d6e8e0bbed879ed63644c83e61e7bd"
+ }
+ Frame {
+ msec: 1808
+ hash: "99e843ec69b79b79b0792e0a2f28cd1b"
+ }
+ Frame {
+ msec: 1824
+ hash: "8b3ebca70b50a6a93823e015ea80f0f9"
+ }
+ Frame {
+ msec: 1840
+ hash: "8eaa7f076064ce55051237b04861e408"
+ }
+ Frame {
+ msec: 1856
+ hash: "6acc0ca5e5808d911287edfa78c8ac02"
+ }
+ Frame {
+ msec: 1872
+ hash: "e9f05899e0b53c21f6efe834095a3ea4"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 91; y: 208
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 93; y: 209
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1888
+ hash: "e9f05899e0b53c21f6efe834095a3ea4"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 99; y: 210
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 108; y: 210
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1904
+ hash: "d2dece405f5f6ed1de2acb6615a931de"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 142; y: 214
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1920
+ hash: "21e0f21edc77424e8327c9a3350ecc1d"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 198; y: 216
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1936
+ image: "flickable-horizontal.2.png"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 229; y: 218
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 266; y: 220
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1952
+ hash: "c10c8b0c94f899414d8b3ef0b7c97646"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 322; y: 223
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 322; y: 223
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1968
+ hash: "807aff4e6c96a9d0de7fa55e233446b1"
+ }
+ Frame {
+ msec: 1984
+ hash: "dbd02848cefacbb26f4bcb7d8f073d6c"
+ }
+ Frame {
+ msec: 2000
+ hash: "9a60608d8ea1b39fa2d3851873f2f08e"
+ }
+ Frame {
+ msec: 2016
+ hash: "e7b3e3a40281f63889808211d6746374"
+ }
+ Frame {
+ msec: 2032
+ hash: "188c225c46ec00105df230bfeea09974"
+ }
+ Frame {
+ msec: 2048
+ hash: "e2e977b42e91d8c5dee57fd8245692eb"
+ }
+ Frame {
+ msec: 2064
+ hash: "ca2f12fb173c405f95e608858ab982ad"
+ }
+ Frame {
+ msec: 2080
+ hash: "fa86ee5f25fa425cf2569c8ef570b9d8"
+ }
+ Frame {
+ msec: 2096
+ hash: "9b74656866fb8c7394bbbecec6414aca"
+ }
+ Frame {
+ msec: 2112
+ hash: "87147326d1baab174c0f9a5ccdc2cb84"
+ }
+ Frame {
+ msec: 2128
+ hash: "c0d00f98c71bf3f8e5954b45fbab95a8"
+ }
+ Frame {
+ msec: 2144
+ hash: "c087d1d62e56e573b55c1d8599bba8a6"
+ }
+ Frame {
+ msec: 2160
+ hash: "dd5a94c6febdee58e8f115cb75131aaa"
+ }
+ Frame {
+ msec: 2176
+ hash: "a7465d6137f865f512ce65ceb29533b4"
+ }
+ Frame {
+ msec: 2192
+ hash: "409086f6bb661aab8b548fea56d7e6b1"
+ }
+ Frame {
+ msec: 2208
+ hash: "6a22911e0fb58df31271baa463ff599d"
+ }
+ Frame {
+ msec: 2224
+ hash: "c4f6dd30d5fdfcf91a8b29cf5c622423"
+ }
+ Frame {
+ msec: 2240
+ hash: "5a95b83f237c7243a198a43e9a587179"
+ }
+ Frame {
+ msec: 2256
+ hash: "d79ed290efc6dbd976d574bf0b14a6a3"
+ }
+ Frame {
+ msec: 2272
+ hash: "a7bcb436e96d7c981852239462573495"
+ }
+ Frame {
+ msec: 2288
+ hash: "f63cc82e351daab503e316f8b516990f"
+ }
+ Frame {
+ msec: 2304
+ hash: "4ea63cd25a1424042ffc60549a78563c"
+ }
+ Frame {
+ msec: 2320
+ hash: "ef0fb776012575b3b0dbf6e5f4dee571"
+ }
+ Frame {
+ msec: 2336
+ hash: "e2508faec7737be2666d87ad715b5f74"
+ }
+ Frame {
+ msec: 2352
+ hash: "9fe4e897c6b853f774d11817a0eb53bf"
+ }
+ Frame {
+ msec: 2368
+ hash: "c122ce2e73cbfedcc99d649c21d91f9d"
+ }
+ Frame {
+ msec: 2384
+ hash: "883b8b180853f1f432ae98ddfe1b6ce3"
+ }
+ Frame {
+ msec: 2400
+ hash: "d0808284e431da60f61d571c257a3011"
+ }
+ Frame {
+ msec: 2416
+ hash: "df90f19450bf4d9496aab987a89e3a02"
+ }
+ Frame {
+ msec: 2432
+ hash: "5640c1e64556b90e7fbd4448fa9db462"
+ }
+ Frame {
+ msec: 2448
+ hash: "6d9b5c2f7d0dedbbc444e69bb39fed08"
+ }
+ Frame {
+ msec: 2464
+ hash: "485c4a8049068cf73bf22db5fd3618be"
+ }
+ Frame {
+ msec: 2480
+ hash: "9e25da59c9e7e4cf7796902e8e2ff92a"
+ }
+ Frame {
+ msec: 2496
+ hash: "bd45e8f2442d7c1a1b16a762bc29e7cf"
+ }
+ Frame {
+ msec: 2512
+ hash: "ec1013d23e581dbb39b1549d2e1b3b32"
+ }
+ Frame {
+ msec: 2528
+ hash: "1ea3c2fde8ee3a14406e027f2124d793"
+ }
+ Frame {
+ msec: 2544
+ hash: "3c3f31a05fb2f32538872c9fa158aaab"
+ }
+ Frame {
+ msec: 2560
+ hash: "05a84d9c55e634ec01edd2a63e13613b"
+ }
+ Frame {
+ msec: 2576
+ hash: "0f7ccd2da58e2e73b0ab18bb681dafd5"
+ }
+ Frame {
+ msec: 2592
+ hash: "e481ff78029f8bc4bf7c697db6824f6a"
+ }
+ Frame {
+ msec: 2608
+ hash: "efb92b8b7a90acabeb4a8d5cae52fe3c"
+ }
+ Frame {
+ msec: 2624
+ hash: "4728dd0fac4edf40cfd5ef5a422b4ed9"
+ }
+ Frame {
+ msec: 2640
+ hash: "27641dcd772c979ae22d12bfbadbb67f"
+ }
+ Frame {
+ msec: 2656
+ hash: "26268714105bc4832d336a38a859fc50"
+ }
+ Frame {
+ msec: 2672
+ hash: "caf0d351d3b6914ca52853a30643ea48"
+ }
+ Frame {
+ msec: 2688
+ hash: "319824b1143925162f04aaddcfaa65d9"
+ }
+ Frame {
+ msec: 2704
+ hash: "73aa36815f34bf5e005000e7da38555e"
+ }
+ Frame {
+ msec: 2720
+ hash: "73aa36815f34bf5e005000e7da38555e"
+ }
+ Frame {
+ msec: 2736
+ hash: "319824b1143925162f04aaddcfaa65d9"
+ }
+ Frame {
+ msec: 2752
+ hash: "caf0d351d3b6914ca52853a30643ea48"
+ }
+ Frame {
+ msec: 2768
+ hash: "6608412ee80d14e13a1a05fb4716e719"
+ }
+ Frame {
+ msec: 2784
+ hash: "f4f6f002fb76407a5120329972285dc4"
+ }
+ Frame {
+ msec: 2800
+ hash: "474d8b566b9e4ef7dc125a8df30ccbb1"
+ }
+ Frame {
+ msec: 2816
+ hash: "0133138f30be4ffc7f3af3d9f477c4b4"
+ }
+ Frame {
+ msec: 2832
+ hash: "e9ee9d7d0ab9dcea3f28ae71ee19270f"
+ }
+ Frame {
+ msec: 2848
+ hash: "9fd9eb665a42b48583bc28c6c0118799"
+ }
+ Frame {
+ msec: 2864
+ hash: "94231107bc4a7e900fe5f4eb823bd9bf"
+ }
+ Frame {
+ msec: 2880
+ hash: "6011b10728fb1c83f10d3c27366ea3a5"
+ }
+ Frame {
+ msec: 2896
+ image: "flickable-horizontal.3.png"
+ }
+ Frame {
+ msec: 2912
+ hash: "e456c5fddb5fbcb02662716f19755622"
+ }
+ Frame {
+ msec: 2928
+ hash: "88cef15940302e2b8b43e73234fd7b9c"
+ }
+ Frame {
+ msec: 2944
+ hash: "041aecec2b0b0d59a56e1dd26b45cab1"
+ }
+ Frame {
+ msec: 2960
+ hash: "0d519463c713f3da46ecacd155e1a0f3"
+ }
+ Frame {
+ msec: 2976
+ hash: "5dd0c855b97d298244fb599c9f781651"
+ }
+ Frame {
+ msec: 2992
+ hash: "8677cec5e559e51095d89abfeda8e542"
+ }
+ Frame {
+ msec: 3008
+ hash: "b05fb6e798ab3fed940b5ac4d88ca378"
+ }
+ Frame {
+ msec: 3024
+ hash: "6bc9cc0d3b11ea91856296b0ec934a8b"
+ }
+ Frame {
+ msec: 3040
+ hash: "f4e63f3af69dacbf2d1d719d4d03a266"
+ }
+ Frame {
+ msec: 3056
+ hash: "31ab08997eb86fab062a3128aecbccb5"
+ }
+ Frame {
+ msec: 3072
+ hash: "90736b240ba1e634bd0ea86423908e16"
+ }
+ Frame {
+ msec: 3088
+ hash: "90736b240ba1e634bd0ea86423908e16"
+ }
+ Frame {
+ msec: 3104
+ hash: "e74982557dc06aac572078840c7e889a"
+ }
+ Frame {
+ msec: 3120
+ hash: "e74982557dc06aac572078840c7e889a"
+ }
+ Frame {
+ msec: 3136
+ hash: "ca30c14c7344d1711a35c707f8804f6e"
+ }
+ Frame {
+ msec: 3152
+ hash: "e616110d39009f0d636b816828cc0ccb"
+ }
+ Frame {
+ msec: 3168
+ hash: "e616110d39009f0d636b816828cc0ccb"
+ }
+ Frame {
+ msec: 3184
+ hash: "e616110d39009f0d636b816828cc0ccb"
+ }
+ Frame {
+ msec: 3200
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 412; y: 214
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3216
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 3232
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 3248
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 408; y: 214
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 407; y: 214
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3264
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 403; y: 214
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3280
+ hash: "1991cbb0fb053937f922731d5716032c"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 398; y: 214
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3296
+ hash: "df447575a4734bb5bd9badc6e27d98e4"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 391; y: 214
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3312
+ hash: "0fbfe1e0d7fb54450188398aa40690cd"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 383; y: 214
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3328
+ hash: "cb62e60296046c73d301d7186e14faed"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 369; y: 213
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3344
+ hash: "909cbd1292476584554e22232cb43639"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 352; y: 211
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3360
+ hash: "e63b7e502dfb2834c06a969b683b9bd3"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 331; y: 210
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3376
+ hash: "4ea63cd25a1424042ffc60549a78563c"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 314; y: 210
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3392
+ hash: "77e39d2d4bfcacecdae4f014e4506d71"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 300; y: 210
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3408
+ hash: "db576eca8bad67cb8b994f12fc448969"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 288; y: 210
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3424
+ hash: "efeb3f616da9d78505c3c82fc34ee31c"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 278; y: 210
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3440
+ hash: "e4f8bb02f8ac6bc40e1801cc8f360078"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 266; y: 210
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3456
+ hash: "82118ef71809e3867717232c4d9c5518"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 252; y: 208
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3472
+ hash: "5363451c696f6c6eb792b23d086243d7"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 238; y: 208
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3488
+ hash: "fe6afe8ae8a7c216a1cffc5515f273d5"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 227; y: 206
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3504
+ hash: "9b165741d86c70380c15e15cff3fabb6"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 224; y: 206
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3520
+ hash: "f5e176355468f4fa224d4dfcdd7525a3"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 222; y: 206
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3536
+ hash: "8c5a14a76e052cc6503a3e78245d1da3"
+ }
+ Frame {
+ msec: 3552
+ hash: "8c5a14a76e052cc6503a3e78245d1da3"
+ }
+ Frame {
+ msec: 3568
+ hash: "8c5a14a76e052cc6503a3e78245d1da3"
+ }
+ Frame {
+ msec: 3584
+ hash: "8c5a14a76e052cc6503a3e78245d1da3"
+ }
+ Frame {
+ msec: 3600
+ hash: "8c5a14a76e052cc6503a3e78245d1da3"
+ }
+ Frame {
+ msec: 3616
+ hash: "8c5a14a76e052cc6503a3e78245d1da3"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 224; y: 206
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3632
+ hash: "f5e176355468f4fa224d4dfcdd7525a3"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 232; y: 204
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3648
+ hash: "acf538fce5f1b90b83474d9898b7cdd7"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 246; y: 203
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3664
+ hash: "5a0ee016b8732fbc36064e8a35d91215"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 265; y: 203
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3680
+ hash: "8fd06a14c1de175813845ce8f07db6ec"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 292; y: 201
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3696
+ hash: "26b0ff6ffda0725e0800f7ea3af510ef"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 310; y: 201
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3712
+ hash: "80443f134511be0356a687c9b542b3e7"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 321; y: 199
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3728
+ hash: "3eeb98a829d29b3dc52f3d145ac49d58"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 323; y: 199
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3744
+ hash: "f4d43069b16f41a30e5549aae911d4cd"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 324; y: 199
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3760
+ hash: "661c89fa832f0abdcf4ae0c9e8e2d18f"
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 324; y: 199
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3776
+ hash: "661c89fa832f0abdcf4ae0c9e8e2d18f"
+ }
+ Frame {
+ msec: 3792
+ hash: "1520f54b6c8606b9e8372c5c06180453"
+ }
+ Frame {
+ msec: 3808
+ hash: "0fcf5e2ce47348cbb5bb485f101fe5ac"
+ }
+ Frame {
+ msec: 3824
+ hash: "2eb070e69de07c89830543e0475fc110"
+ }
+ Frame {
+ msec: 3840
+ hash: "d73c1059219c0655968af268d22e2c18"
+ }
+ Frame {
+ msec: 3856
+ image: "flickable-horizontal.4.png"
+ }
+ Frame {
+ msec: 3872
+ hash: "cc969b2c64839ca6d3b5069c0ed938d0"
+ }
+ Frame {
+ msec: 3888
+ hash: "1f819e18d1297a1c7eeebb7b040bdef8"
+ }
+ Frame {
+ msec: 3904
+ hash: "3643b99afbd8af0953cb39b2c8c04b9f"
+ }
+ Frame {
+ msec: 3920
+ hash: "713fd2e2fa38ab27604cb9cae59f1777"
+ }
+ Frame {
+ msec: 3936
+ hash: "e2508faec7737be2666d87ad715b5f74"
+ }
+ Frame {
+ msec: 3952
+ hash: "fc33b1c7479caeff676ffd885a18d618"
+ }
+ Frame {
+ msec: 3968
+ hash: "aca01143db4f870a56bb7546e84cbc5e"
+ }
+ Frame {
+ msec: 3984
+ hash: "442b58c39fd3745c61a1eb5043fcbb53"
+ }
+ Frame {
+ msec: 4000
+ hash: "7983d7183cc11d6819fa0a006c2d67b4"
+ }
+ Frame {
+ msec: 4016
+ hash: "9fe4e897c6b853f774d11817a0eb53bf"
+ }
+ Frame {
+ msec: 4032
+ hash: "43f528c81ccfa5b9921dfa3564a24c68"
+ }
+ Frame {
+ msec: 4048
+ hash: "dfe04ff0b3ccf205bb38beeab58a4411"
+ }
+ Frame {
+ msec: 4064
+ hash: "32ff30b50b500e9feb51e8eef205783c"
+ }
+ Frame {
+ msec: 4080
+ hash: "7d83ab4c336b05bcf2cde4e7d8031f6c"
+ }
+ Frame {
+ msec: 4096
+ hash: "c92e345e4ffdb30c28d9d5aa5400bd30"
+ }
+ Frame {
+ msec: 4112
+ hash: "02eec604d0c00965aae4ac61b91bdc22"
+ }
+ Frame {
+ msec: 4128
+ hash: "df447575a4734bb5bd9badc6e27d98e4"
+ }
+ Frame {
+ msec: 4144
+ hash: "bac10d8f94a39573313b3b8b2f871c49"
+ }
+ Frame {
+ msec: 4160
+ hash: "e5944c5dc6dec8f0c28b7ec3cd58723d"
+ }
+ Frame {
+ msec: 4176
+ hash: "1991cbb0fb053937f922731d5716032c"
+ }
+ Frame {
+ msec: 4192
+ hash: "50d6538bcaffc343f6626635a3e5899c"
+ }
+ Frame {
+ msec: 4208
+ hash: "f3613f57cdb9ed38d8e3fa636962aa99"
+ }
+ Frame {
+ msec: 4224
+ hash: "10a89da9887cb4bbd812c090a8a56797"
+ }
+ Frame {
+ msec: 4240
+ hash: "89ba74d46970ad2edff701475c059ec8"
+ }
+ Frame {
+ msec: 4256
+ hash: "6e8b84c70e81578a2216e9e975b35434"
+ }
+ Frame {
+ msec: 4272
+ hash: "6e8b84c70e81578a2216e9e975b35434"
+ }
+ Frame {
+ msec: 4288
+ hash: "883b8b180853f1f432ae98ddfe1b6ce3"
+ }
+ Frame {
+ msec: 4304
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 4320
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 4336
+ hash: "e616110d39009f0d636b816828cc0ccb"
+ }
+ Frame {
+ msec: 4352
+ hash: "e616110d39009f0d636b816828cc0ccb"
+ }
+ Frame {
+ msec: 4368
+ hash: "e616110d39009f0d636b816828cc0ccb"
+ }
+ Frame {
+ msec: 4384
+ hash: "e616110d39009f0d636b816828cc0ccb"
+ }
+ Frame {
+ msec: 4400
+ hash: "e616110d39009f0d636b816828cc0ccb"
+ }
+ Frame {
+ msec: 4416
+ hash: "e616110d39009f0d636b816828cc0ccb"
+ }
+ Frame {
+ msec: 4432
+ hash: "e616110d39009f0d636b816828cc0ccb"
+ }
+ Frame {
+ msec: 4448
+ hash: "e616110d39009f0d636b816828cc0ccb"
+ }
+ Frame {
+ msec: 4464
+ hash: "e616110d39009f0d636b816828cc0ccb"
+ }
+ Frame {
+ msec: 4480
+ hash: "e616110d39009f0d636b816828cc0ccb"
+ }
+ Frame {
+ msec: 4496
+ hash: "e616110d39009f0d636b816828cc0ccb"
+ }
+ Frame {
+ msec: 4512
+ hash: "e616110d39009f0d636b816828cc0ccb"
+ }
+ Frame {
+ msec: 4528
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 4544
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 4560
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 4576
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 4592
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 4608
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 4624
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 4640
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 4656
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 4672
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 4688
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+ Frame {
+ msec: 4704
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ }
+}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-horizontal.0.png b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-horizontal.0.png
index f8b73392c5..e1b0967d11 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-horizontal.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-horizontal.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-horizontal.1.png b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-horizontal.1.png
index 2d29f359f6..c7d4e1d4cb 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-horizontal.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-horizontal.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-horizontal.2.png b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-horizontal.2.png
index 507d9ca7d9..9373fae463 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-horizontal.2.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-horizontal.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-horizontal.3.png b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-horizontal.3.png
index 16225229f8..7a30196c14 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-horizontal.3.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-horizontal.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-horizontal.4.png b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-horizontal.4.png
new file mode 100644
index 0000000000..4c4d17c9e3
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-horizontal.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-horizontal.qml b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-horizontal.qml
index 92f108c27d..a94aca8c71 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-horizontal.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-horizontal.qml
@@ -6,7 +6,7 @@ VisualTest {
}
Frame {
msec: 16
- hash: "244c12e82ee0b2528a0dbb02a8b8134a"
+ image: "flickable-horizontal.0.png"
}
Frame {
msec: 32
@@ -314,11 +314,11 @@ VisualTest {
}
Frame {
msec: 960
- image: "flickable-horizontal.0.png"
+ hash: "a2093589363ac2d50491412e99e0193a"
}
Frame {
msec: 976
- hash: "de5647af86a322921dcc68e81979a3cc"
+ image: "flickable-horizontal.1.png"
}
Frame {
msec: 992
@@ -594,7 +594,7 @@ VisualTest {
}
Frame {
msec: 1920
- image: "flickable-horizontal.1.png"
+ hash: "21e0f21edc77424e8327c9a3350ecc1d"
}
Mouse {
type: 5
@@ -606,7 +606,7 @@ VisualTest {
}
Frame {
msec: 1936
- hash: "45ea16bca2c9ae07cb7dead1e24f6ed0"
+ image: "flickable-horizontal.2.png"
}
Mouse {
type: 5
@@ -874,11 +874,11 @@ VisualTest {
}
Frame {
msec: 2880
- image: "flickable-horizontal.2.png"
+ hash: "43fa578250e214ed9ad6894329a27c54"
}
Frame {
msec: 2896
- hash: "e2166fe87d04be70a9b1d4c8d1002b49"
+ image: "flickable-horizontal.3.png"
}
Frame {
msec: 2912
@@ -994,7 +994,7 @@ VisualTest {
}
Frame {
msec: 3264
- hash: "10a89da9887cb4bbd812c090a8a56797"
+ hash: "244c12e82ee0b2528a0dbb02a8b8134a"
}
Mouse {
type: 5
@@ -1354,11 +1354,11 @@ VisualTest {
}
Frame {
msec: 3840
- image: "flickable-horizontal.3.png"
+ hash: "d73c1059219c0655968af268d22e2c18"
}
Frame {
msec: 3856
- hash: "90f94986ab44ab59618e9a5da17b8cc9"
+ image: "flickable-horizontal.4.png"
}
Frame {
msec: 3872
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.0.png b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.0.png
index 67f2de8bce..2af1a3ec78 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.1.png b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.1.png
index 6ab0a15433..8334a3f0e8 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.10.png b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.10.png
deleted file mode 100644
index d5258582cf..0000000000
--- a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.10.png
+++ /dev/null
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.11.png b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.11.png
deleted file mode 100644
index d5258582cf..0000000000
--- a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.11.png
+++ /dev/null
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.12.png b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.12.png
deleted file mode 100644
index d5258582cf..0000000000
--- a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.12.png
+++ /dev/null
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.13.png b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.13.png
deleted file mode 100644
index 167703b9cc..0000000000
--- a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.13.png
+++ /dev/null
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.2.png b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.2.png
index 9dd9ae84cc..c7058490bb 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.2.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.3.png b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.3.png
index d5258582cf..c7058490bb 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.3.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.4.png b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.4.png
index d5258582cf..349dca2f91 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.4.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.5.png b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.5.png
index c066392fca..a0e84e3ead 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.5.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.6.png b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.6.png
index e7accc7edd..e5c15833a6 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.6.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.6.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.7.png b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.7.png
index f282709ab3..2af1a3ec78 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.7.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.7.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.8.png b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.8.png
index f282709ab3..06468e40d9 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.8.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.8.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.9.png b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.9.png
deleted file mode 100644
index 593cf12c62..0000000000
--- a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.9.png
+++ /dev/null
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.qml b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.qml
index 86fd3ca432..920a48fc15 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/data/flickable-vertical.qml
@@ -6,201 +6,369 @@ VisualTest {
}
Frame {
msec: 16
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ image: "flickable-vertical.0.png"
}
Frame {
msec: 32
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
msec: 48
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
msec: 64
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
msec: 80
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
msec: 96
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
msec: 112
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
msec: 128
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
msec: 144
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
msec: 160
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
msec: 176
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
msec: 192
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
msec: 208
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
msec: 224
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
msec: 240
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
msec: 256
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
msec: 272
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
msec: 288
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 159; y: 207
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 304
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "3d1b648229210ae5b57a0be51cc02f67"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 159; y: 206
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 320
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "3d1b648229210ae5b57a0be51cc02f67"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 159; y: 205
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 159; y: 203
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 336
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "3d1b648229210ae5b57a0be51cc02f67"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 159; y: 199
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 157; y: 190
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 352
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 155; y: 176
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 153; y: 158
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 368
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "57fa1d842d37df12004b493c1c5761f3"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 151; y: 141
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 148; y: 118
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 384
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "521a8188877551a97cd3ea82d209e8ae"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 146; y: 94
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 141; y: 70
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 400
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "ce126aaade1532e22a35416fd7203dde"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 136; y: 46
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 136; y: 46
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 416
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "aa9c4301332240ccc00ec99a05b7f9c9"
}
Frame {
msec: 432
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "db0a670d61133a3420a3581ecb532773"
}
Frame {
msec: 448
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "b34de164d5ec0294ca27281e1e5e3cd6"
}
Frame {
msec: 464
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "8636af4591c61c4b4a548f3a38749413"
}
Frame {
msec: 480
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "eee4fa336149528dfb16565b856ca692"
}
Frame {
msec: 496
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "85eeaeaf359ed87417be68dc18c06d0c"
}
Frame {
msec: 512
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "d5db4af6cf35c61146bd24646d82ab83"
}
Frame {
msec: 528
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "2189fc03c337fe41f3d9f51929c9860f"
}
Frame {
msec: 544
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "4e3e283fb402dc4ec79f65878a513747"
}
Frame {
msec: 560
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "62f4281d8e049bc12b636b7ebe3862df"
}
Frame {
msec: 576
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "cf9a0a968459a1283fff91102eb29ba3"
}
Frame {
msec: 592
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "c432221928096cff3b76c8034db26b43"
}
Frame {
msec: 608
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "3df59808e56955c3c161609b72d93c7f"
}
Frame {
msec: 624
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "c497bcbe500905b8a69fd310fd7c7e1a"
}
Frame {
msec: 640
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "7dceef52fab6dc38d140e3097e39a271"
}
Frame {
msec: 656
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "c7bbd81b452db98fb8fd892762a23df6"
+ }
+ Frame {
+ msec: 672
+ hash: "17efc9793ef2966722544d561312b17a"
+ }
+ Frame {
+ msec: 688
+ hash: "1bf05b272ad6b8e5d134c94d9ba62030"
+ }
+ Frame {
+ msec: 704
+ hash: "cad61ba68fdfb26cfb136f22a2f8cc0c"
+ }
+ Frame {
+ msec: 720
+ hash: "0ce5ff1a1d9a6193ef763affa39cb790"
+ }
+ Frame {
+ msec: 736
+ hash: "880bce9130454aaf1261842b8f9b9a57"
+ }
+ Frame {
+ msec: 752
+ hash: "ab78cadac88156d9755d8b70d26384e8"
+ }
+ Frame {
+ msec: 768
+ hash: "4a22e502c105a7df0845ca75cbdfb0ec"
+ }
+ Frame {
+ msec: 784
+ hash: "d6209a0b9b9e0f2072179a4623c70fbd"
+ }
+ Frame {
+ msec: 800
+ hash: "85e85567831cf57df1f013f5bf3beb86"
+ }
+ Frame {
+ msec: 816
+ hash: "602d2e02029178faeb99748e2f70827e"
+ }
+ Frame {
+ msec: 832
+ hash: "fd4dbb6f47f6681af98eb6781ae7de58"
+ }
+ Frame {
+ msec: 848
+ hash: "faf3be40e402768724703f5d0051249f"
+ }
+ Frame {
+ msec: 864
+ hash: "bc650ca5b7a3bdc1f0f051b9481faf29"
}
Mouse {
type: 2
button: 1
buttons: 1
- x: 143; y: 471
+ x: 109; y: 69
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 672
- hash: "c246bde0eb2b3e1797dfb770a9db78bb"
+ msec: 880
+ hash: "bc650ca5b7a3bdc1f0f051b9481faf29"
}
- Frame {
- msec: 688
- hash: "c246bde0eb2b3e1797dfb770a9db78bb"
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 110; y: 70
+ modifiers: 0
+ sendToViewport: true
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 143; y: 470
+ x: 110; y: 71
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 704
- hash: "c246bde0eb2b3e1797dfb770a9db78bb"
+ msec: 896
+ hash: "bc650ca5b7a3bdc1f0f051b9481faf29"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 144; y: 469
+ x: 110; y: 74
modifiers: 0
sendToViewport: true
}
@@ -208,19 +376,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 144; y: 467
+ x: 111; y: 79
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 720
- hash: "c246bde0eb2b3e1797dfb770a9db78bb"
+ msec: 912
+ hash: "f2a679f2b7585245d4f1896fed4e0d1e"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 144; y: 463
+ x: 111; y: 89
modifiers: 0
sendToViewport: true
}
@@ -228,19 +396,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 146; y: 453
+ x: 113; y: 104
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 736
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 928
+ hash: "721b5fa42f583c1e1e1a751fc8aad270"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 148; y: 433
+ x: 115; y: 119
modifiers: 0
sendToViewport: true
}
@@ -248,51 +416,47 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 148; y: 410
+ x: 115; y: 135
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 752
- hash: "26a71f2ecae39fb2f61ab13ad4fe2796"
+ msec: 944
+ hash: "7e3ddefca9a99d6b9103ffd4524bc593"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 148; y: 365
+ x: 118; y: 160
modifiers: 0
sendToViewport: true
}
- Frame {
- msec: 768
- hash: "5aedca385a68ed5f6281c48a57bb94e5"
- }
Mouse {
type: 5
button: 0
buttons: 1
- x: 148; y: 340
+ x: 120; y: 183
modifiers: 0
sendToViewport: true
}
+ Frame {
+ msec: 960
+ hash: "7858d23cb4c206676eca51c1c09802b5"
+ }
Mouse {
type: 5
button: 0
buttons: 1
- x: 146; y: 319
+ x: 122; y: 205
modifiers: 0
sendToViewport: true
}
- Frame {
- msec: 784
- hash: "4ee9f528fecf850db3be24a26241c2c5"
- }
Mouse {
type: 5
button: 0
buttons: 1
- x: 144; y: 300
+ x: 124; y: 230
modifiers: 0
sendToViewport: true
}
@@ -300,627 +464,331 @@ VisualTest {
type: 3
button: 1
buttons: 0
- x: 144; y: 300
+ x: 124; y: 230
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 800
- hash: "bc83cb2708fba7bae035bc5da984fc71"
- }
- Frame {
- msec: 816
- hash: "1d0ca08757375ac51024b83c0d224474"
- }
- Frame {
- msec: 832
- hash: "ee09f63ce3b3ead641ba4a4853772d41"
- }
- Frame {
- msec: 848
- hash: "5e944bc5723d75fa859f7cb8d2b106e1"
- }
- Frame {
- msec: 864
- hash: "55ab5752ac0f4c93f5db6c92c519e5fb"
- }
- Frame {
- msec: 880
- hash: "026bd0f5e380d54b8688172e44ff9f08"
- }
- Frame {
- msec: 896
- hash: "5812a751d877896801a4bc6d2dd3ecc8"
- }
- Frame {
- msec: 912
- hash: "2e6fd08a00480c4a018311d7ef3d0f50"
- }
- Frame {
- msec: 928
- hash: "981ea7420d7ab189bb17fbfdde889471"
- }
- Frame {
- msec: 944
- hash: "b3b737cb536205f6d0faef4f8b1f2e77"
- }
- Frame {
- msec: 960
- image: "flickable-vertical.0.png"
- }
- Frame {
msec: 976
- hash: "4dafcfd5f5c5de1e83b9b7514ba5bde0"
+ image: "flickable-vertical.1.png"
}
Frame {
msec: 992
- hash: "97104a677cb208783522af82f4690003"
+ hash: "e723da5ecaffe31f03b1d5ca6765229b"
}
Frame {
msec: 1008
- hash: "4b1f38c9fdd8f79f2c43273913438ddc"
+ hash: "73d169bf6bdfce801b824b7b560c3fad"
}
Frame {
msec: 1024
- hash: "7f76a7579174d7f8ea0e0819f70aebf6"
+ hash: "4e3e283fb402dc4ec79f65878a513747"
}
Frame {
msec: 1040
- hash: "97dd3be905cb37a7f178f27018ffe0f8"
+ hash: "38c2e2835c20dbee55c69d0211a0be2d"
}
Frame {
msec: 1056
- hash: "19fa6136cba216000b3ce56f0b7c02e6"
+ hash: "84e668ba374ff0004dd7222933a635cf"
}
Frame {
msec: 1072
- hash: "e311e2cb0c6c6a844f092dcbf2b89a70"
+ hash: "349c7a84ff8f9b52d39dba1282353167"
}
Frame {
msec: 1088
- hash: "a954794d643718ca538ce1347ee93899"
+ hash: "b63218110c65b6d7b4bc2d63155204cd"
}
Frame {
msec: 1104
- hash: "1b97f96d6615d2455ab49262347d3ae7"
+ hash: "aad65a7070aa668dd8ce4a3cc0f0f117"
}
Frame {
msec: 1120
- hash: "4ce55b03ac0ab7d6301b8185e139667d"
+ hash: "c4ae97e1d1f2efbc998f9b57c2373201"
}
Frame {
msec: 1136
- hash: "c0c37b06ccca61524ee3530a3e9707c6"
+ hash: "94701ffaa4f45924ad89f92a30157c7d"
}
Frame {
msec: 1152
- hash: "9cddaaaa52819cbb2dd740c31ebed5e2"
+ hash: "eee4fa336149528dfb16565b856ca692"
}
Frame {
msec: 1168
- hash: "5c82f9c2c59d3b844c7eb1bef77c2722"
+ hash: "ff1a053c0af99c51353503002515843d"
}
Frame {
msec: 1184
- hash: "27b8e460849e8a06ad35e147f725d6df"
+ hash: "118494c60034b0e265e28b34e3128d00"
}
Frame {
msec: 1200
- hash: "381c0e45f68daf697f80fb0cb87f028e"
- }
- Mouse {
- type: 2
- button: 1
- buttons: 1
- x: 121; y: 138
- modifiers: 0
- sendToViewport: true
+ hash: "bf693bffb37d7554a437eca21bdec7c1"
}
Frame {
msec: 1216
- hash: "f4b378fcf727ba85bcbf90c938dc9806"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 121; y: 141
- modifiers: 0
- sendToViewport: true
+ hash: "880f60263cd79fb6a1bff7252d2373bb"
}
Frame {
msec: 1232
- hash: "f4b378fcf727ba85bcbf90c938dc9806"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 121; y: 144
- modifiers: 0
- sendToViewport: true
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 121; y: 155
- modifiers: 0
- sendToViewport: true
+ hash: "b34de164d5ec0294ca27281e1e5e3cd6"
}
Frame {
msec: 1248
- hash: "852a7007d816d4cbec894f42549311f0"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 119; y: 185
- modifiers: 0
- sendToViewport: true
+ hash: "e1609c4e40fb9e043a9fff683b94c6c4"
}
Frame {
msec: 1264
- hash: "1ecc94e9c4aec0fa099816a7276f484a"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 122; y: 206
- modifiers: 0
- sendToViewport: true
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 124; y: 228
- modifiers: 0
- sendToViewport: true
+ hash: "2450b61b84c24727232c779114e6a474"
}
Frame {
msec: 1280
- hash: "8d74af236c5b0023b0577235f74aad7a"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 128; y: 270
- modifiers: 0
- sendToViewport: true
- }
- Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 128; y: 270
- modifiers: 0
- sendToViewport: true
+ hash: "cf5ac4a5e3d42b3d4e171ed3227cfa85"
}
Frame {
msec: 1296
- hash: "5485c7dd5e79c3823c0c9258470f8ca7"
+ hash: "5cb5576ab347647ca881d4d450732df3"
}
Frame {
msec: 1312
- hash: "a5fe758873729aeaf0a0c45fbdcc9b8f"
+ hash: "34dc672ebfd75ec017d0c2f0bd435cd8"
}
Frame {
msec: 1328
- hash: "7b134402e3268b66e3fc7e16624463ee"
+ hash: "aa9c4301332240ccc00ec99a05b7f9c9"
}
Frame {
msec: 1344
- hash: "146f339b009287872f22d27892c0e2e5"
+ hash: "3f98121997a1613bd49d22003d1a1887"
}
Frame {
msec: 1360
- hash: "1436a3a4cd29690da39ead7d08f0c927"
+ hash: "86732d3e900877ae7a8615b7448afaaa"
}
Frame {
msec: 1376
- hash: "1cdabb8da157c35c1bcc5d5965d60e59"
+ hash: "7e2f2786d3c0540a0b6559fffe06ad3c"
}
Frame {
msec: 1392
- hash: "b05878876db2fbfde1cf4069f2dae3db"
+ hash: "79e00bbe77f0a178e8db30023a881c3f"
}
Frame {
msec: 1408
- hash: "6f8089424b163d79c7bcfe1715eca6ee"
+ hash: "5f611226b3aa38f9aa3cd6a2dbd01f12"
}
Frame {
msec: 1424
- hash: "91ffc70bd8a4e0f917d534131de849cf"
+ hash: "4f4cd776b76272cfe79b86a108bd6b6e"
}
Frame {
msec: 1440
- hash: "5c03d99e1bf12f55de8fc36742d7a962"
+ hash: "a746404a1a26e2a25b8d364dbef46eef"
}
Frame {
msec: 1456
- hash: "bc22d18311f322713a046763262b65f8"
+ hash: "9124d97d120de1806d86c8f437ec4ed2"
}
Frame {
msec: 1472
- hash: "59557c6874603decba5d383d3429005a"
+ hash: "4fda328eafe6ec2d02d939517d6d82e3"
}
Frame {
msec: 1488
- hash: "e2df3b279fffcd89c90afbfdbf14b5b3"
+ hash: "6afb6abe291c9e9628fd0b8c3da5d9db"
}
Frame {
msec: 1504
- hash: "a0aab7c147a30bb1765dec0f461b0ac1"
+ hash: "cb5962fe94c5d3ef754ff45f905a5c88"
}
Frame {
msec: 1520
- hash: "f58d85bd7b3b772032bdb4e2ee8867d8"
+ hash: "57b5fc47ed700831b3dc3f2afbb1c3ed"
}
Frame {
msec: 1536
- hash: "05e6f6753a40075653b8b757ea626b2f"
+ hash: "38793fb8a19c9566c8dd9d23c9a15b5d"
}
Frame {
msec: 1552
- hash: "6bfe88cb1d1a2264cc3fbf5143640507"
+ hash: "2e311a5dc484e9f4bc7bd85d32a693b1"
}
Frame {
msec: 1568
- hash: "d54065930af312621115cc08d73fa541"
+ hash: "69d1eed68fba918e831899c8b84374a1"
}
Frame {
msec: 1584
- hash: "c3666377c19e3b4034a90a36651020de"
+ hash: "c872391012e6ab2a6d1eb98c7f47f9e8"
}
Frame {
msec: 1600
- hash: "92610ffcd541d943841bfea8bfcc2815"
+ hash: "cf12f90835d823550cd83d472b4f022f"
}
Frame {
msec: 1616
- hash: "87d1472f48148a1cc8ae16700227ed1e"
+ hash: "fbb2f03ddbd87ed419386eb2942bccac"
}
Frame {
msec: 1632
- hash: "4bb790042573e5de09938f1beb3d8e73"
+ hash: "0788a0fdb51cedba0f8b597a4cc38ebe"
}
Frame {
msec: 1648
- hash: "f0a748b20f8b0d7a9a5ef0c26e5d29d1"
+ hash: "b6595edf06fba22f3258c9b433af6ab8"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 44; y: 282
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 1664
- hash: "66b7697170705d246dbb9c33e2edd85a"
+ hash: "521a8188877551a97cd3ea82d209e8ae"
}
Frame {
msec: 1680
- hash: "22bc677976f53937c80f908d17a6b994"
+ hash: "4d923cd520c00f5cd985283d62cf17ec"
}
Frame {
msec: 1696
- hash: "8d35befcc7c03d9c7ff04d3aca966057"
+ hash: "7ccff14d344c7090fa634f6defd6511e"
}
Frame {
msec: 1712
- hash: "c27b4404612c57b2f360bc958acf8487"
+ hash: "998cb23307a61afefb59c8b9e361a89f"
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 44; y: 282
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 1728
- hash: "79aaa8cd6081e771ceab5f6d638df7ad"
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
msec: 1744
- hash: "8959c740dfc85a79c056dd5057474161"
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
msec: 1760
- hash: "4ba9cdf84e1d16d80bb57c670bdb85a9"
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
msec: 1776
- hash: "f4f2b1847a8e3233e0e283853c942b60"
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
msec: 1792
- hash: "da3f760fdd2f45d66f3ef410101afbab"
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
msec: 1808
- hash: "17e5c56c3909da0da882bc0c8cf5c6d4"
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
msec: 1824
- hash: "4e931b797bdbe7d397125a4f80f3d865"
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
msec: 1840
- hash: "0fc21dde21d8c11e39f1f740dddf9439"
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
msec: 1856
- hash: "3be4aa6c6f014b79a25bd04b1e44e6fd"
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
msec: 1872
- hash: "9049c7636d06a2885a910440a5cb829d"
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
msec: 1888
- hash: "9049c7636d06a2885a910440a5cb829d"
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
msec: 1904
- hash: "9049c7636d06a2885a910440a5cb829d"
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
msec: 1920
- image: "flickable-vertical.1.png"
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
msec: 1936
- hash: "222242141fadd2c27435ce93aa1c460d"
+ image: "flickable-vertical.2.png"
}
Frame {
msec: 1952
- hash: "17e5c56c3909da0da882bc0c8cf5c6d4"
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
msec: 1968
- hash: "2e7cc1dd1c62de751ff6734853fbadd7"
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
msec: 1984
- hash: "5d234f4d69167a436ed6c95e909ae6e8"
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
msec: 2000
- hash: "dee8be671b7d430a3bf044ea67841f15"
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
msec: 2016
- hash: "f75438b7deb18e36c2ce397291401f4d"
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
msec: 2032
- hash: "84d6efd807d94fb345ea640782dbfdcf"
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
msec: 2048
- hash: "9dea3319774b70cb45eab5a71207c6bc"
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
msec: 2064
- hash: "706c98bffe5118d5f49a3eb371b121f6"
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
msec: 2080
- hash: "4ca3b88d0af1ea0fae4a08ee2a8b7413"
- }
- Frame {
- msec: 2096
- hash: "2959676d888680c3288f9226d8ad1059"
- }
- Frame {
- msec: 2112
- hash: "92a7dddbdf86f7fcd4f1d7631b7a3210"
- }
- Frame {
- msec: 2128
- hash: "2de45cf2660f9ea4b54b3dfe3a2d6b8f"
- }
- Frame {
- msec: 2144
- hash: "aa17f9e53e23f3de7addd126bbe2b866"
- }
- Frame {
- msec: 2160
- hash: "36eb0221391fb7257c6eff73a1f491f3"
- }
- Frame {
- msec: 2176
- hash: "a4b644bf91108dbc9b21a1646dab0b37"
- }
- Frame {
- msec: 2192
- hash: "f16544e0ad09c14dc8980203aec29591"
- }
- Frame {
- msec: 2208
- hash: "1a93e2ed871ae094aff5eeaa07385a94"
- }
- Frame {
- msec: 2224
- hash: "977a2efa43d3be0340975ccbe6b0e8a9"
- }
- Frame {
- msec: 2240
- hash: "0a8c81335816c747d320b3a147ee0350"
- }
- Frame {
- msec: 2256
- hash: "0a8c81335816c747d320b3a147ee0350"
- }
- Frame {
- msec: 2272
- hash: "0ab48b86c21be99f7caa3dda6d3a3e4d"
- }
- Frame {
- msec: 2288
- hash: "46e69596c809d4c7563d5d44ca62eb02"
- }
- Frame {
- msec: 2304
- hash: "46e69596c809d4c7563d5d44ca62eb02"
- }
- Frame {
- msec: 2320
- hash: "46e69596c809d4c7563d5d44ca62eb02"
- }
- Frame {
- msec: 2336
- hash: "46e69596c809d4c7563d5d44ca62eb02"
- }
- Frame {
- msec: 2352
- hash: "573a18633748447b94bb67fd8e1726a4"
- }
- Frame {
- msec: 2368
- hash: "573a18633748447b94bb67fd8e1726a4"
- }
- Frame {
- msec: 2384
- hash: "573a18633748447b94bb67fd8e1726a4"
- }
- Frame {
- msec: 2400
- hash: "573a18633748447b94bb67fd8e1726a4"
- }
- Mouse {
- type: 2
- button: 1
- buttons: 1
- x: 32; y: 574
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 2416
- hash: "573a18633748447b94bb67fd8e1726a4"
- }
- Frame {
- msec: 2432
- hash: "573a18633748447b94bb67fd8e1726a4"
- }
- Frame {
- msec: 2448
- hash: "573a18633748447b94bb67fd8e1726a4"
- }
- Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 32; y: 574
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 2464
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 2480
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 2496
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 2512
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 2528
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 2544
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 2560
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 2576
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 2592
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 2608
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 2624
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 2640
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 2656
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 2672
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 2688
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 2704
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 2720
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 2736
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 2752
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 2768
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Mouse {
type: 2
button: 1
buttons: 1
- x: 123; y: 264
+ x: 95; y: 222
modifiers: 0
sendToViewport: true
}
- Frame {
- msec: 2784
- hash: "96fb3652bfcf0aac1e35a2e50532816f"
- }
- Frame {
- msec: 2800
- hash: "96fb3652bfcf0aac1e35a2e50532816f"
- }
Mouse {
type: 5
button: 0
buttons: 1
- x: 123; y: 265
+ x: 95; y: 221
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 2816
- hash: "96fb3652bfcf0aac1e35a2e50532816f"
+ msec: 2096
+ hash: "888c68103c4eef2f65ef32a93be8286a"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 123; y: 266
+ x: 95; y: 220
modifiers: 0
sendToViewport: true
}
@@ -928,19 +796,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 124; y: 269
+ x: 95; y: 218
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 2832
- hash: "96fb3652bfcf0aac1e35a2e50532816f"
+ msec: 2112
+ hash: "888c68103c4eef2f65ef32a93be8286a"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 124; y: 275
+ x: 95; y: 216
modifiers: 0
sendToViewport: true
}
@@ -948,19 +816,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 125; y: 284
+ x: 95; y: 212
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 2848
- hash: "96fb3652bfcf0aac1e35a2e50532816f"
+ msec: 2128
+ hash: "888c68103c4eef2f65ef32a93be8286a"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 125; y: 293
+ x: 96; y: 205
modifiers: 0
sendToViewport: true
}
@@ -968,19 +836,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 127; y: 304
+ x: 96; y: 195
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 2864
- hash: "96fb3652bfcf0aac1e35a2e50532816f"
+ msec: 2144
+ hash: "888c68103c4eef2f65ef32a93be8286a"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 129; y: 320
+ x: 97; y: 184
modifiers: 0
sendToViewport: true
}
@@ -988,19 +856,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 131; y: 337
+ x: 97; y: 168
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 2880
- image: "flickable-vertical.2.png"
+ msec: 2160
+ hash: "888c68103c4eef2f65ef32a93be8286a"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 136; y: 354
+ x: 99; y: 153
modifiers: 0
sendToViewport: true
}
@@ -1008,19 +876,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 142; y: 375
+ x: 99; y: 139
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 2896
- hash: "96fb3652bfcf0aac1e35a2e50532816f"
+ msec: 2176
+ hash: "888c68103c4eef2f65ef32a93be8286a"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 144; y: 392
+ x: 101; y: 125
modifiers: 0
sendToViewport: true
}
@@ -1028,71 +896,67 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 149; y: 411
+ x: 101; y: 112
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 2912
- hash: "96fb3652bfcf0aac1e35a2e50532816f"
+ msec: 2192
+ hash: "888c68103c4eef2f65ef32a93be8286a"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 156; y: 451
+ x: 101; y: 99
modifiers: 0
sendToViewport: true
}
- Frame {
- msec: 2928
- hash: "96fb3652bfcf0aac1e35a2e50532816f"
- }
Mouse {
type: 5
button: 0
buttons: 1
- x: 159; y: 466
+ x: 101; y: 85
modifiers: 0
sendToViewport: true
}
+ Frame {
+ msec: 2208
+ hash: "888c68103c4eef2f65ef32a93be8286a"
+ }
Mouse {
type: 5
button: 0
buttons: 1
- x: 159; y: 479
+ x: 103; y: 75
modifiers: 0
sendToViewport: true
}
- Frame {
- msec: 2944
- hash: "96fb3652bfcf0aac1e35a2e50532816f"
- }
Mouse {
type: 5
button: 0
buttons: 1
- x: 161; y: 488
+ x: 103; y: 62
modifiers: 0
sendToViewport: true
}
+ Frame {
+ msec: 2224
+ hash: "888c68103c4eef2f65ef32a93be8286a"
+ }
Mouse {
type: 5
button: 0
buttons: 1
- x: 161; y: 493
+ x: 103; y: 53
modifiers: 0
sendToViewport: true
}
- Frame {
- msec: 2960
- hash: "96fb3652bfcf0aac1e35a2e50532816f"
- }
Mouse {
type: 5
button: 0
buttons: 1
- x: 161; y: 494
+ x: 103; y: 45
modifiers: 0
sendToViewport: true
}
@@ -1100,103 +964,135 @@ VisualTest {
type: 3
button: 1
buttons: 0
- x: 161; y: 494
+ x: 103; y: 45
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 2976
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 2240
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 2992
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 2256
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 3008
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 2272
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 3024
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 2288
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 3040
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 2304
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 3056
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 2320
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 3072
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 2336
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 3088
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 2352
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 3104
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 2368
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 3120
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 2384
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 3136
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 2400
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 3152
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 2416
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 3168
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 2432
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 3184
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 2448
+ hash: "998cb23307a61afefb59c8b9e361a89f"
+ }
+ Frame {
+ msec: 2464
+ hash: "998cb23307a61afefb59c8b9e361a89f"
+ }
+ Frame {
+ msec: 2480
+ hash: "998cb23307a61afefb59c8b9e361a89f"
+ }
+ Frame {
+ msec: 2496
+ hash: "998cb23307a61afefb59c8b9e361a89f"
+ }
+ Frame {
+ msec: 2512
+ hash: "998cb23307a61afefb59c8b9e361a89f"
+ }
+ Frame {
+ msec: 2528
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Mouse {
type: 2
button: 1
buttons: 1
- x: 162; y: 474
+ x: 90; y: 38
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 3200
- hash: "c246bde0eb2b3e1797dfb770a9db78bb"
+ msec: 2544
+ hash: "0d3bac7463b5fe7f585997e35f179122"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 162; y: 472
+ x: 90; y: 39
modifiers: 0
sendToViewport: true
}
+ Frame {
+ msec: 2560
+ hash: "0d3bac7463b5fe7f585997e35f179122"
+ }
Mouse {
type: 5
button: 0
buttons: 1
- x: 164; y: 468
+ x: 90; y: 40
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 90; y: 41
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 3216
- hash: "c246bde0eb2b3e1797dfb770a9db78bb"
+ msec: 2576
+ hash: "0d3bac7463b5fe7f585997e35f179122"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 165; y: 464
+ x: 91; y: 43
modifiers: 0
sendToViewport: true
}
@@ -1204,19 +1100,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 166; y: 460
+ x: 91; y: 46
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 3232
- hash: "c246bde0eb2b3e1797dfb770a9db78bb"
+ msec: 2592
+ hash: "0d3bac7463b5fe7f585997e35f179122"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 167; y: 450
+ x: 92; y: 50
modifiers: 0
sendToViewport: true
}
@@ -1224,19 +1120,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 170; y: 438
+ x: 92; y: 55
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 3248
- hash: "c246bde0eb2b3e1797dfb770a9db78bb"
+ msec: 2608
+ hash: "0d3bac7463b5fe7f585997e35f179122"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 172; y: 426
+ x: 94; y: 65
modifiers: 0
sendToViewport: true
}
@@ -1244,19 +1140,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 174; y: 409
+ x: 96; y: 79
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 3264
- hash: "c246bde0eb2b3e1797dfb770a9db78bb"
+ msec: 2624
+ hash: "0d3bac7463b5fe7f585997e35f179122"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 174; y: 397
+ x: 97; y: 95
modifiers: 0
sendToViewport: true
}
@@ -1264,19 +1160,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 176; y: 383
+ x: 99; y: 112
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 3280
- hash: "c246bde0eb2b3e1797dfb770a9db78bb"
+ msec: 2640
+ hash: "0d3bac7463b5fe7f585997e35f179122"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 176; y: 367
+ x: 101; y: 129
modifiers: 0
sendToViewport: true
}
@@ -1284,19 +1180,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 176; y: 350
+ x: 103; y: 148
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 3296
- hash: "c246bde0eb2b3e1797dfb770a9db78bb"
+ msec: 2656
+ hash: "0d3bac7463b5fe7f585997e35f179122"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 174; y: 335
+ x: 105; y: 165
modifiers: 0
sendToViewport: true
}
@@ -1304,19 +1200,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 172; y: 316
+ x: 105; y: 180
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 3312
- hash: "c246bde0eb2b3e1797dfb770a9db78bb"
+ msec: 2672
+ hash: "0d3bac7463b5fe7f585997e35f179122"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 170; y: 296
+ x: 107; y: 192
modifiers: 0
sendToViewport: true
}
@@ -1324,19 +1220,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 168; y: 279
+ x: 109; y: 205
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 3328
- hash: "c246bde0eb2b3e1797dfb770a9db78bb"
+ msec: 2688
+ hash: "0d3bac7463b5fe7f585997e35f179122"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 166; y: 262
+ x: 109; y: 219
modifiers: 0
sendToViewport: true
}
@@ -1344,19 +1240,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 166; y: 244
+ x: 109; y: 230
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 3344
- hash: "c246bde0eb2b3e1797dfb770a9db78bb"
+ msec: 2704
+ hash: "0d3bac7463b5fe7f585997e35f179122"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 164; y: 231
+ x: 111; y: 235
modifiers: 0
sendToViewport: true
}
@@ -1364,7 +1260,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 164; y: 222
+ x: 111; y: 238
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2720
+ hash: "0d3bac7463b5fe7f585997e35f179122"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 111; y: 240
modifiers: 0
sendToViewport: true
}
@@ -1372,575 +1280,335 @@ VisualTest {
type: 3
button: 1
buttons: 0
- x: 164; y: 222
+ x: 111; y: 240
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 3360
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 3376
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 3392
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 3408
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 3424
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 3440
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 3456
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 3472
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 3488
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 3504
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 3520
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 3536
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 3552
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 3568
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 3584
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 3600
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 3616
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 3632
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 3648
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 3664
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 3680
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 2736
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 3696
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 2752
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 3712
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 2768
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 3728
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 2784
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 3744
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 2800
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 3760
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 2816
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 3776
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 2832
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 3792
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 2848
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 3808
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 2864
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 3824
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 2880
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 3840
+ msec: 2896
image: "flickable-vertical.3.png"
}
Frame {
- msec: 3856
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 3872
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 3888
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 3904
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 3920
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 3936
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 3952
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 3968
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 3984
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 4000
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 4016
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 4032
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 4048
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 2912
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4064
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 2928
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4080
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 2944
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4096
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 2960
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4112
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 2976
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4128
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 2992
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4144
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3008
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4160
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3024
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4176
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3040
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4192
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3056
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4208
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3072
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4224
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3088
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4240
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3104
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4256
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3120
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4272
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3136
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Mouse {
type: 2
button: 1
buttons: 1
- x: 38; y: 583
+ x: 43; y: 269
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 4288
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3152
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4304
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3168
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4320
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3184
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4336
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3200
+ hash: "998cb23307a61afefb59c8b9e361a89f"
+ }
+ Frame {
+ msec: 3216
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Mouse {
type: 3
button: 1
buttons: 0
- x: 38; y: 583
+ x: 43; y: 269
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 4352
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 4368
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 4384
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 4400
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 4416
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 4432
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 4448
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 4464
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 4480
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 4496
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 4512
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 4528
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 4544
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3232
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4560
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3248
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4576
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3264
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4592
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3280
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4608
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3296
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4624
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3312
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4640
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3328
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4656
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3344
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4672
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3360
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4688
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3376
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4704
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3392
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4720
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3408
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4736
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3424
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4752
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3440
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4768
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3456
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4784
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3472
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Mouse {
type: 2
button: 1
buttons: 1
- x: 110; y: 578
+ x: 75; y: 279
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 4800
- image: "flickable-vertical.4.png"
+ msec: 3488
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4816
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3504
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4832
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3520
+ hash: "998cb23307a61afefb59c8b9e361a89f"
+ }
+ Frame {
+ msec: 3536
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Mouse {
type: 3
button: 1
buttons: 0
- x: 110; y: 578
+ x: 75; y: 279
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 4848
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 4864
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 4880
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 4896
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 4912
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 4928
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 4944
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 4960
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3552
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4976
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3568
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 4992
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3584
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 5008
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3600
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 5024
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3616
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 5040
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3632
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 5056
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3648
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 5072
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3664
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 5088
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3680
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 5104
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3696
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 5120
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3712
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 5136
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3728
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Frame {
- msec: 5152
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 3744
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Mouse {
type: 2
button: 1
buttons: 1
- x: 123; y: 218
+ x: 116; y: 200
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 5168
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 123; y: 219
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 5184
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 124; y: 223
- modifiers: 0
- sendToViewport: true
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 124; y: 230
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 5200
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 126; y: 241
- modifiers: 0
- sendToViewport: true
+ msec: 3760
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 126; y: 257
+ x: 116; y: 199
modifiers: 0
sendToViewport: true
}
- Frame {
- msec: 5216
- hash: "43865bf07d3b0818bd0fd3388451f055"
- }
Mouse {
type: 5
button: 0
buttons: 1
- x: 130; y: 300
+ x: 117; y: 198
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 5232
- hash: "d7e49dfc8f9faef7d405451ae52691e0"
+ msec: 3776
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 132; y: 325
+ x: 117; y: 195
modifiers: 0
sendToViewport: true
}
@@ -1948,19 +1616,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 134; y: 349
+ x: 117; y: 190
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 5248
- hash: "427d51731dac5e356c5ab82d272c0d5a"
+ msec: 3792
+ hash: "998cb23307a61afefb59c8b9e361a89f"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 136; y: 372
+ x: 118; y: 183
modifiers: 0
sendToViewport: true
}
@@ -1968,167 +1636,39 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 138; y: 395
+ x: 120; y: 166
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 5264
- hash: "9370cc84e32afc59c81c4d2dbf5fa690"
+ msec: 3808
+ hash: "2e311a5dc484e9f4bc7bd85d32a693b1"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 142; y: 433
+ x: 122; y: 146
modifiers: 0
sendToViewport: true
}
- Frame {
- msec: 5280
- hash: "984bd78f9f503e8a3ffac5bbe69fe3a9"
- }
Mouse {
type: 5
button: 0
buttons: 1
- x: 144; y: 470
- modifiers: 0
- sendToViewport: true
- }
- Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 144; y: 470
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 5296
- hash: "022106d1ecd8195923b6d79fb95d1135"
- }
- Frame {
- msec: 5312
- hash: "5b6bd34ae7e59923bb4b4c2e4e7a0bf3"
- }
- Frame {
- msec: 5328
- hash: "2f8a121667195d85cd05417a350dd35b"
- }
- Frame {
- msec: 5344
- hash: "d0f7fcb01dc6abc0ae29ca1ee45edf24"
- }
- Frame {
- msec: 5360
- hash: "9f3e5d23ea33bff4f05900d6faf7dbae"
- }
- Frame {
- msec: 5376
- hash: "535f40614a02fa3f627748a5c24b3a39"
- }
- Frame {
- msec: 5392
- hash: "138bc0c4dd08ffec0c79c4c7474ed318"
- }
- Frame {
- msec: 5408
- hash: "838f07195d00b19104bbbd93c7670dab"
- }
- Frame {
- msec: 5424
- hash: "b7fb0944bf53ccc62effe159333449ff"
- }
- Frame {
- msec: 5440
- hash: "56a21c9210074ef8a044019fa9375b14"
- }
- Frame {
- msec: 5456
- hash: "4ef80a5d73981ce1f1081fc578ea088a"
- }
- Frame {
- msec: 5472
- hash: "f3f9cf99ab436c1a2805c0859df9589e"
- }
- Frame {
- msec: 5488
- hash: "0d88023fe7af39e409f7a12348d4e3d6"
- }
- Frame {
- msec: 5504
- hash: "b4abf98d58fe490ceb7a62621292f8d9"
- }
- Frame {
- msec: 5520
- hash: "5c3247324b214b961ed40da985fb50a4"
- }
- Frame {
- msec: 5536
- hash: "41195a5c39ac1ecbd175e5663d23cdaa"
- }
- Frame {
- msec: 5552
- hash: "028460cd5eecd50a12261e541f1776bf"
- }
- Frame {
- msec: 5568
- hash: "56763e343221db0a111bb91e72640911"
- }
- Frame {
- msec: 5584
- hash: "a4b644bf91108dbc9b21a1646dab0b37"
- }
- Frame {
- msec: 5600
- hash: "c2d2d51f0147e78550f762ec84f7f338"
- }
- Frame {
- msec: 5616
- hash: "1a93e2ed871ae094aff5eeaa07385a94"
- }
- Frame {
- msec: 5632
- hash: "977a2efa43d3be0340975ccbe6b0e8a9"
- }
- Frame {
- msec: 5648
- hash: "977a2efa43d3be0340975ccbe6b0e8a9"
- }
- Frame {
- msec: 5664
- hash: "0a8c81335816c747d320b3a147ee0350"
- }
- Frame {
- msec: 5680
- hash: "0a8c81335816c747d320b3a147ee0350"
- }
- Frame {
- msec: 5696
- hash: "46e69596c809d4c7563d5d44ca62eb02"
- }
- Frame {
- msec: 5712
- hash: "46e69596c809d4c7563d5d44ca62eb02"
- }
- Mouse {
- type: 2
- button: 1
- buttons: 1
- x: 176; y: 412
+ x: 124; y: 123
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 5728
- hash: "aebff194f1c84190623ebfc358503b5f"
+ msec: 3824
+ hash: "cbfcb7b986b0c51828473d98ca9fee03"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 177; y: 406
+ x: 126; y: 94
modifiers: 0
sendToViewport: true
}
@@ -2136,75 +1676,59 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 177; y: 395
+ x: 128; y: 67
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 5744
- hash: "39f1cee1ad7ab2ab6601e2b67f5d83c7"
+ msec: 3840
+ hash: "389b514c4cd4a4d65388608643d08c04"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 181; y: 367
+ x: 130; y: 41
modifiers: 0
sendToViewport: true
}
- Frame {
- msec: 5760
- image: "flickable-vertical.5.png"
- }
Mouse {
type: 5
button: 0
buttons: 1
- x: 183; y: 326
+ x: 133; y: 15
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 5776
- hash: "02d9d0829c64b92e98b8093b38e6f848"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 183; y: 299
- modifiers: 0
- sendToViewport: true
+ msec: 3856
+ image: "flickable-vertical.4.png"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 180; y: 276
+ x: 135; y: -6
modifiers: 0
sendToViewport: true
}
- Frame {
- msec: 5792
- hash: "46f76f341787a80b9f9c16a5bc9f83c5"
- }
Mouse {
type: 5
button: 0
buttons: 1
- x: 175; y: 214
+ x: 138; y: -27
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 5808
- hash: "67c3225460673038d190169115622f02"
+ msec: 3872
+ hash: "cf9a0a968459a1283fff91102eb29ba3"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 167; y: 147
+ x: 140; y: -48
modifiers: 0
sendToViewport: true
}
@@ -2212,795 +1736,179 @@ VisualTest {
type: 3
button: 1
buttons: 0
- x: 167; y: 147
+ x: 140; y: -48
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 5824
- hash: "2cb9abc32225ea9d39deb09da6119a94"
- }
- Frame {
- msec: 5840
- hash: "bf69fa4cd3f73e15f07394d290b801e6"
- }
- Frame {
- msec: 5856
- hash: "cf5f2524171ca121f4478c3c6d7dfd35"
- }
- Frame {
- msec: 5872
- hash: "d498a494fa489150bd324e18a1c14fe5"
- }
- Frame {
- msec: 5888
- hash: "459c2e8110f1c21b3f8d590e7c0355de"
- }
- Frame {
- msec: 5904
- hash: "1bde4841026fd6117b49d94d697b03fa"
- }
- Frame {
- msec: 5920
- hash: "84b025039284f616d69465ec8cc245b8"
- }
- Frame {
- msec: 5936
- hash: "3652c4664895a0b6fbe06521a79c8bb9"
- }
- Frame {
- msec: 5952
- hash: "f817f6059b8cb3fc4a85c9c91df6c7a3"
- }
- Frame {
- msec: 5968
- hash: "cb671ab3c3a9de0c17df2896e45beca9"
- }
- Frame {
- msec: 5984
- hash: "d9102b25f63ca9274057dad0ab2b6102"
- }
- Frame {
- msec: 6000
- hash: "b9df17ad73b7a5b018ab30c5c57afd02"
- }
- Frame {
- msec: 6016
- hash: "664494b87407881a11b4732f0713f587"
- }
- Frame {
- msec: 6032
- hash: "cac62fc442c064286b7e4a71a13b929c"
- }
- Frame {
- msec: 6048
- hash: "989b4649dca89e227f552979af1c68f0"
- }
- Frame {
- msec: 6064
- hash: "80b4b11b3cbc684d920fa89c3345d8bc"
- }
- Frame {
- msec: 6080
- hash: "dcbd4e93e7ac0ef0e78c6a19cf3295f1"
- }
- Frame {
- msec: 6096
- hash: "33f3ddd9d7fa5a472465029d7a7263ae"
- }
- Frame {
- msec: 6112
- hash: "fb5675d4870528b9c0591c5a80530b17"
- }
- Frame {
- msec: 6128
- hash: "e57dbe962c1ef45893e41559cee19d16"
- }
- Frame {
- msec: 6144
- hash: "a9081993871e0171e25159a078a5cdbc"
- }
- Frame {
- msec: 6160
- hash: "cadc7f53518ba3f4cbe8e686b90fa5ab"
- }
- Frame {
- msec: 6176
- hash: "e9208a44f95ccc181bfc64e8785bd633"
- }
- Frame {
- msec: 6192
- hash: "a69f2969122a547b1af195f581c272b8"
- }
- Frame {
- msec: 6208
- hash: "eee0b7c2f01bcc57f141d9aa27f73da6"
- }
- Frame {
- msec: 6224
- hash: "f58ac16d11909563cf214b6c2baef0dc"
- }
- Frame {
- msec: 6240
- hash: "e373def5a0bcd30ea7f4acb539785e3c"
- }
- Frame {
- msec: 6256
- hash: "0dce9f4bab793ea1d6e368cd6fb37047"
- }
- Frame {
- msec: 6272
- hash: "4a4725f2546b08faffa3a543de578e59"
- }
- Frame {
- msec: 6288
- hash: "ea36b5869634115182c365990518b993"
- }
- Frame {
- msec: 6304
- hash: "45b102bd0c5ab42783b9e428cea202a4"
- }
- Frame {
- msec: 6320
- hash: "0154e6010f3a8621a8f992bb7dcfd5b8"
- }
- Frame {
- msec: 6336
- hash: "035a8c7e9eece0f9ea4f5ad62658d7f9"
- }
- Frame {
- msec: 6352
- hash: "fc1050cf971296a9200c548feee08d0a"
- }
- Frame {
- msec: 6368
- hash: "ef9c7f1228ac6825cce8ce0e9e7aaac5"
- }
- Frame {
- msec: 6384
- hash: "70ef278074b1527aba16eca8c3811af5"
- }
- Frame {
- msec: 6400
- hash: "08012939aca6381dedd838a7fd0be1a3"
- }
- Frame {
- msec: 6416
- hash: "2c702b17a0ec2aac2928ad8bcc2e080b"
- }
- Frame {
- msec: 6432
- hash: "e70e243e8ecc8e8f50ea4f0f4559c8c6"
- }
- Frame {
- msec: 6448
- hash: "73013ff1a7f0c3040f3520f0581e4ce0"
- }
- Frame {
- msec: 6464
- hash: "14cdd689ae9e5b15e212d9dab63ec946"
- }
- Frame {
- msec: 6480
- hash: "354d822bf252559211513e49e417a413"
- }
- Frame {
- msec: 6496
- hash: "77eb798efd1447eca75de12dc2c7a215"
- }
- Frame {
- msec: 6512
- hash: "08dc9068d21db7ff87d4d88eb1443aed"
- }
- Frame {
- msec: 6528
- hash: "baab3b98e70ca51d1cbd27d4a998380f"
- }
- Frame {
- msec: 6544
- hash: "baab3b98e70ca51d1cbd27d4a998380f"
- }
- Frame {
- msec: 6560
- hash: "baab3b98e70ca51d1cbd27d4a998380f"
- }
- Frame {
- msec: 6576
- hash: "84519c415186e5abd122a1f39e26265b"
- }
- Frame {
- msec: 6592
- hash: "df63754934af656e08e93ce4fa69c19e"
- }
- Frame {
- msec: 6608
- hash: "34439eb26069feabee5ba97bfd1c2cb3"
- }
- Frame {
- msec: 6624
- hash: "46534a7da31ac76c52036e51c63db72e"
- }
- Frame {
- msec: 6640
- hash: "cf8e86112be37fc94687aa8bd437e1a2"
- }
- Frame {
- msec: 6656
- hash: "f93ba6420ab0ef719aa10c6aae71c878"
- }
- Frame {
- msec: 6672
- hash: "22f991814552e7e3e2db8fea0abe9d6c"
- }
- Frame {
- msec: 6688
- hash: "7d2773bec8310d92166ab7184741ace4"
- }
- Frame {
- msec: 6704
- hash: "f18aace5e0d4ca8a385a57682d82e43f"
- }
- Frame {
- msec: 6720
- image: "flickable-vertical.6.png"
- }
- Frame {
- msec: 6736
- hash: "7f445e22f19808ca71416cadd497f305"
- }
- Frame {
- msec: 6752
- hash: "d6ef83bec490d2fb0f4d640f8c43f694"
- }
- Frame {
- msec: 6768
- hash: "fbd19c34e68a21c8924f83c4d0cbcb79"
- }
- Frame {
- msec: 6784
- hash: "179abedb6eef26a2e78c3a7884cb2178"
- }
- Frame {
- msec: 6800
- hash: "292af687e9001eb7cf8434094202b4a0"
- }
- Frame {
- msec: 6816
- hash: "1de0a8aa08194151e2b72d8b16cdba5f"
- }
- Frame {
- msec: 6832
- hash: "ee607cf6f558e3ed7b08dad80a17dd05"
- }
- Frame {
- msec: 6848
- hash: "2024a393baa1fa1c2d38ccc6756c4a44"
- }
- Frame {
- msec: 6864
- hash: "898ac470a5b1619564496132c0150df2"
- }
- Frame {
- msec: 6880
- hash: "b447e3917b7353e97409755159a614bc"
- }
- Frame {
- msec: 6896
- hash: "d03610c18a2c21785e59b4de7b92f20e"
- }
- Frame {
- msec: 6912
- hash: "014dfa76c222aea838483840befff092"
- }
- Frame {
- msec: 6928
- hash: "014dfa76c222aea838483840befff092"
- }
- Frame {
- msec: 6944
- hash: "7830f79e5a37242fd97dd6ff9f89e9d0"
- }
- Frame {
- msec: 6960
- hash: "331a6b6ebaa7e9f7b970bacafe070b2f"
- }
- Frame {
- msec: 6976
- hash: "331a6b6ebaa7e9f7b970bacafe070b2f"
- }
- Frame {
- msec: 6992
- hash: "331a6b6ebaa7e9f7b970bacafe070b2f"
- }
- Frame {
- msec: 7008
- hash: "331a6b6ebaa7e9f7b970bacafe070b2f"
- }
- Frame {
- msec: 7024
- hash: "eb0b45fac8756d32586cac82f25c5a51"
- }
- Frame {
- msec: 7040
- hash: "eb0b45fac8756d32586cac82f25c5a51"
- }
- Frame {
- msec: 7056
- hash: "eb0b45fac8756d32586cac82f25c5a51"
- }
- Frame {
- msec: 7072
- hash: "eb0b45fac8756d32586cac82f25c5a51"
- }
- Frame {
- msec: 7088
- hash: "eb0b45fac8756d32586cac82f25c5a51"
- }
- Frame {
- msec: 7104
- hash: "eb0b45fac8756d32586cac82f25c5a51"
- }
- Frame {
- msec: 7120
- hash: "eb0b45fac8756d32586cac82f25c5a51"
- }
- Frame {
- msec: 7136
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7152
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7168
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7184
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7200
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7216
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7232
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7248
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7264
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7280
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7296
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7312
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7328
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7344
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7360
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7376
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7392
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7408
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7424
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7440
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7456
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7472
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7488
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7504
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7520
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7536
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Mouse {
- type: 2
- button: 1
- buttons: 1
- x: 94; y: 581
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 7552
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7568
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7584
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7600
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 94; y: 581
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 7616
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7632
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7648
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7664
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7680
- image: "flickable-vertical.7.png"
- }
- Frame {
- msec: 7696
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7712
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7728
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7744
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7760
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7776
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 7792
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 3888
+ hash: "77c86fb26126825cfd5b6ba21b903808"
}
Frame {
- msec: 7808
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 3904
+ hash: "c497bcbe500905b8a69fd310fd7c7e1a"
}
Frame {
- msec: 7824
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 3920
+ hash: "95bffb4d4aff1603e96af55cbc2dc3f2"
}
Frame {
- msec: 7840
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 3936
+ hash: "6fa87a7136528b688069fe1c4bd94043"
}
Frame {
- msec: 7856
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 3952
+ hash: "602c16e1382d810f853d647e531b4e8a"
}
Frame {
- msec: 7872
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 3968
+ hash: "01d1227e4f5b95f8b0c6a57a4b2314c4"
}
Frame {
- msec: 7888
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 3984
+ hash: "1db6401af45574b7453ad57766e60e6f"
}
Frame {
- msec: 7904
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4000
+ hash: "067a1bef3df5d1c40842f28885d60250"
}
Frame {
- msec: 7920
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4016
+ hash: "5fba31051e05ec00c0d68b8e8af94132"
}
Frame {
- msec: 7936
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Mouse {
- type: 2
- button: 1
- buttons: 1
- x: 146; y: 574
- modifiers: 0
- sendToViewport: true
+ msec: 4032
+ hash: "d6209a0b9b9e0f2072179a4623c70fbd"
}
Frame {
- msec: 7952
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4048
+ hash: "ec30f07ab0056a45954c07ecdfa1401a"
}
Frame {
- msec: 7968
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4064
+ hash: "fef6c7767970a283bb3b13826f71bdac"
}
Frame {
- msec: 7984
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4080
+ hash: "29621938e96be0d11c95fd1e4ca37631"
}
Frame {
- msec: 8000
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4096
+ hash: "8103c96ac90ddf52056d7e8b32e4ae9e"
}
Frame {
- msec: 8016
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 146; y: 574
- modifiers: 0
- sendToViewport: true
+ msec: 4112
+ hash: "d72bf8b88efe603050ad038380173969"
}
Frame {
- msec: 8032
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4128
+ hash: "4438b56eb6aa800602634db6016caa50"
}
Frame {
- msec: 8048
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4144
+ hash: "44674f7a874023c3932d698344ccda0e"
}
Frame {
- msec: 8064
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4160
+ hash: "155a834ddaa7128b6f5a2a406b340315"
}
Frame {
- msec: 8080
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4176
+ hash: "3886efa510581ee5b6c4a2ed76aeb42d"
}
Frame {
- msec: 8096
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4192
+ hash: "094954e8d10b85d3941626dec4fb36af"
}
Frame {
- msec: 8112
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4208
+ hash: "b597aeb20a8630e4b1dfd0a7be383e4d"
}
Frame {
- msec: 8128
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4224
+ hash: "abc58e74ab197a2d7c243ddd67442e53"
}
Frame {
- msec: 8144
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4240
+ hash: "b6ec106d39af13492c3d43bf006b7b15"
}
Frame {
- msec: 8160
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4256
+ hash: "d80211f898473a01e0c0641b96bc92f4"
}
Frame {
- msec: 8176
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4272
+ hash: "5010579fcd925e65c778c2e9cf0317de"
}
Frame {
- msec: 8192
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4288
+ hash: "5010579fcd925e65c778c2e9cf0317de"
}
Frame {
- msec: 8208
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4304
+ hash: "d80211f898473a01e0c0641b96bc92f4"
}
Frame {
- msec: 8224
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4320
+ hash: "27cfc811f62029df48ea7f371ff5654b"
}
Frame {
- msec: 8240
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4336
+ hash: "b6ec106d39af13492c3d43bf006b7b15"
}
Frame {
- msec: 8256
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4352
+ hash: "28c8e3f08f46bf13cc52a7d6a31a7cf1"
}
Frame {
- msec: 8272
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4368
+ hash: "b597aeb20a8630e4b1dfd0a7be383e4d"
}
Frame {
- msec: 8288
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4384
+ hash: "a3a3682ce0d2a2d57457458b13645afa"
}
Frame {
- msec: 8304
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4400
+ hash: "98bf25cbb8202fe1576ac15bac7b9e65"
}
Frame {
- msec: 8320
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4416
+ hash: "16b99c9cf5297a5251869a3935084cf7"
}
Mouse {
type: 2
button: 1
buttons: 1
- x: 161; y: 422
- modifiers: 0
- sendToViewport: true
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 162; y: 420
+ x: 136; y: 176
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 8336
- hash: "bd1667fe88a71bc2f52ba5a6c9dc098c"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 162; y: 415
- modifiers: 0
- sendToViewport: true
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 163; y: 411
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 8352
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 163; y: 406
- modifiers: 0
- sendToViewport: true
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 165; y: 397
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 8368
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 166; y: 386
- modifiers: 0
- sendToViewport: true
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 166; y: 375
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 8384
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 166; y: 364
- modifiers: 0
- sendToViewport: true
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 166; y: 352
- modifiers: 0
- sendToViewport: true
+ msec: 4432
+ hash: "16b99c9cf5297a5251869a3935084cf7"
}
Frame {
- msec: 8400
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 166; y: 342
- modifiers: 0
- sendToViewport: true
+ msec: 4448
+ hash: "16b99c9cf5297a5251869a3935084cf7"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 165; y: 331
+ x: 136; y: 175
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 8416
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4464
+ hash: "16b99c9cf5297a5251869a3935084cf7"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 163; y: 319
+ x: 136; y: 173
modifiers: 0
sendToViewport: true
}
@@ -3008,19 +1916,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 163; y: 308
+ x: 136; y: 168
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 8432
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4480
+ hash: "16b99c9cf5297a5251869a3935084cf7"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 163; y: 297
+ x: 134; y: 159
modifiers: 0
sendToViewport: true
}
@@ -3028,19 +1936,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 163; y: 284
+ x: 133; y: 142
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 8448
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4496
+ hash: "abc58e74ab197a2d7c243ddd67442e53"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 161; y: 272
+ x: 130; y: 119
modifiers: 0
sendToViewport: true
}
@@ -3048,19 +1956,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 161; y: 261
+ x: 128; y: 98
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 8464
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4512
+ hash: "e5c5b741da7c028ec77f52016675c1ca"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 159; y: 250
+ x: 126; y: 78
modifiers: 0
sendToViewport: true
}
@@ -3068,19 +1976,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 157; y: 235
+ x: 124; y: 59
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 8480
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4528
+ hash: "12481bcccb524a478851a57d4db6cf8d"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 157; y: 224
+ x: 122; y: 44
modifiers: 0
sendToViewport: true
}
@@ -3088,19 +1996,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 155; y: 211
+ x: 120; y: 30
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 8496
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4544
+ hash: "a49985bd332cd3376986d379c474a3de"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 153; y: 198
+ x: 120; y: 21
modifiers: 0
sendToViewport: true
}
@@ -3108,7 +2016,7 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 153; y: 187
+ x: 118; y: 12
modifiers: 0
sendToViewport: true
}
@@ -3116,335 +2024,203 @@ VisualTest {
type: 3
button: 1
buttons: 0
- x: 153; y: 187
+ x: 118; y: 12
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 8512
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 8528
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 8544
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 8560
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 8576
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 8592
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 8608
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 8624
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 8640
- image: "flickable-vertical.8.png"
- }
- Frame {
- msec: 8656
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 8672
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 8688
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 8704
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 8720
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 8736
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 8752
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
- }
- Frame {
- msec: 8768
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4560
+ hash: "cd4e55b15e9df7fee1862180fddec0ca"
}
Frame {
- msec: 8784
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4576
+ hash: "64ff54775d198b616597f4539de90bd8"
}
Frame {
- msec: 8800
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4592
+ hash: "2b188745bfff51f9d3af90b7ad9c8d77"
}
Frame {
- msec: 8816
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4608
+ hash: "2dde7d565f92f22c6524448f97107e35"
}
Frame {
- msec: 8832
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4624
+ hash: "897a454ac464008d6dd7864eb608ae65"
}
Frame {
- msec: 8848
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4640
+ hash: "269df4f1aca4f0cdbd5c86c2e115bd3c"
}
Frame {
- msec: 8864
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4656
+ hash: "ec0ebdbd3f4665fba7f6a523a82a5071"
}
Frame {
- msec: 8880
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4672
+ hash: "c1ac6a385f580f23b3486c643d276e33"
}
Frame {
- msec: 8896
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4688
+ hash: "3de0d147a6a3c1382ec64a80996bb4f4"
}
Frame {
- msec: 8912
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4704
+ hash: "8db942b5909f63d4369ad5b29938ef49"
}
Frame {
- msec: 8928
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4720
+ hash: "f7840636f2d01c25be8e9c77230cca53"
}
Frame {
- msec: 8944
- hash: "1889f1f0e319b90b6a68d76df6eebe96"
+ msec: 4736
+ hash: "d315f82e175361fed83193ce550cb6e9"
}
Mouse {
type: 2
button: 1
buttons: 1
- x: 127; y: 125
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 8960
- hash: "c1d084f6e9361c6c0c70f064ae863051"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 127; y: 128
- modifiers: 0
- sendToViewport: true
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 127; y: 131
+ x: 111; y: 67
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 8976
- hash: "c1d084f6e9361c6c0c70f064ae863051"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 128; y: 135
- modifiers: 0
- sendToViewport: true
+ msec: 4752
+ hash: "d315f82e175361fed83193ce550cb6e9"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 128; y: 139
+ x: 111; y: 70
modifiers: 0
sendToViewport: true
}
- Frame {
- msec: 8992
- hash: "a84a07f9d3006718d55de7d6ed60795e"
- }
Mouse {
type: 5
button: 0
buttons: 1
- x: 130; y: 152
+ x: 111; y: 74
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 9008
- hash: "deaa0f57eff99ca88f7204e8d8b159b5"
+ msec: 4768
+ hash: "d315f82e175361fed83193ce550cb6e9"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 134; y: 176
+ x: 111; y: 79
modifiers: 0
sendToViewport: true
}
- Frame {
- msec: 9024
- hash: "4366ee113f7c987a2d8e5978b667e3d0"
- }
Mouse {
type: 5
button: 0
buttons: 1
- x: 138; y: 207
+ x: 112; y: 86
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 9040
- hash: "9dbad53daf3a7988498c561dda4c00a6"
+ msec: 4784
+ hash: "00b072a0adbfcd520d495ef6540f5680"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 145; y: 238
+ x: 112; y: 95
modifiers: 0
sendToViewport: true
}
- Frame {
- msec: 9056
- hash: "e70aeae6d78628c16a7c8c354cf91c98"
- }
Mouse {
type: 5
button: 0
buttons: 1
- x: 152; y: 266
+ x: 114; y: 105
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 9072
- hash: "38aa5fd0540648edce34103704d8b861"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 156; y: 288
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 9088
- hash: "ff08c650e24f63fe7eae1984bb190e02"
+ msec: 4800
+ hash: "fb605e95988a6110384671e7f3f18ad8"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 158; y: 308
+ x: 114; y: 115
modifiers: 0
sendToViewport: true
}
- Frame {
- msec: 9104
- hash: "0d0f2377991d15416bf76619d2f71218"
- }
Mouse {
type: 5
button: 0
buttons: 1
- x: 160; y: 327
+ x: 115; y: 126
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 9120
- hash: "b7681257ec2ad1d532aa522147dd7549"
+ msec: 4816
+ image: "flickable-vertical.5.png"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 160; y: 343
+ x: 115; y: 142
modifiers: 0
sendToViewport: true
}
- Frame {
- msec: 9136
- hash: "baaf75edb3c17bbc754e26fe15f1d295"
- }
Mouse {
type: 5
button: 0
buttons: 1
- x: 160; y: 353
+ x: 117; y: 159
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 9152
- hash: "b68aab52cbcaf524ebb80f2a3af014b4"
+ msec: 4832
+ hash: "4d1eb644b592a693b13fe14377aeed97"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 158; y: 363
+ x: 120; y: 180
modifiers: 0
sendToViewport: true
}
- Frame {
- msec: 9168
- hash: "c69d2b45d92950f7246976bcc247c687"
- }
Mouse {
type: 5
button: 0
buttons: 1
- x: 158; y: 373
+ x: 122; y: 202
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 9184
- hash: "68cd8f467ac225f6e2c5a2914f92edc1"
+ msec: 4848
+ hash: "00eb1d3b016eb0220461074ce81b1aef"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 157; y: 383
+ x: 127; y: 224
modifiers: 0
sendToViewport: true
}
- Frame {
- msec: 9200
- hash: "90cfbee19fd7c03bcfc9a57d94c7fd8d"
- }
Mouse {
type: 5
button: 0
buttons: 1
- x: 155; y: 387
+ x: 129; y: 243
modifiers: 0
sendToViewport: true
}
@@ -3452,683 +2228,447 @@ VisualTest {
type: 3
button: 1
buttons: 0
- x: 155; y: 387
+ x: 129; y: 243
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 9216
- hash: "8216a9f0024507e4cb8406575760947f"
+ msec: 4864
+ hash: "77c86fb26126825cfd5b6ba21b903808"
}
Frame {
- msec: 9232
- hash: "47f76e736f13c6f2318e8c8a8ab69d0e"
+ msec: 4880
+ hash: "e80f024bbdce0ceeae137e347abc95a4"
}
Frame {
- msec: 9248
- hash: "75fc24bcf9d4b8d00f8a493b0095f445"
+ msec: 4896
+ hash: "bb189f39a836b9a2aa68f4535ed1d6fb"
}
Frame {
- msec: 9264
- hash: "d8e9b69514f411a6672b7057c33bcc41"
+ msec: 4912
+ hash: "cf9a0a968459a1283fff91102eb29ba3"
}
Frame {
- msec: 9280
- hash: "9743d8ab32903d7fac7a4101ad24bcfd"
- }
- Mouse {
- type: 2
- button: 1
- buttons: 1
- x: 150; y: 438
- modifiers: 0
- sendToViewport: true
+ msec: 4928
+ hash: "27130e7f6b853a287a7bdd8608628a4f"
}
Frame {
- msec: 9296
- hash: "6bfcd36f945af8cc7b2aa2cca1cde750"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 150; y: 442
- modifiers: 0
- sendToViewport: true
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 150; y: 446
- modifiers: 0
- sendToViewport: true
+ msec: 4944
+ hash: "231c7b7078af00a36cfee3d5e43a4021"
}
Frame {
- msec: 9312
- hash: "8e821eb27a5fd0933805d3e88d1f5f1e"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 152; y: 451
- modifiers: 0
- sendToViewport: true
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 152; y: 457
- modifiers: 0
- sendToViewport: true
+ msec: 4960
+ hash: "d8ffc8cc9cecc25cb9b4e7990fb7b8e7"
}
Frame {
- msec: 9328
- hash: "84191607b7ba11b1204bba0ab5b4f98c"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 152; y: 467
- modifiers: 0
- sendToViewport: true
+ msec: 4976
+ hash: "fb5db5dafdb375132f1f1a461193bc60"
}
Frame {
- msec: 9344
- hash: "e154e8cdbc4f9a1d4cbe926306bf76c1"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 152; y: 474
- modifiers: 0
- sendToViewport: true
+ msec: 4992
+ hash: "64100f9f102ffc9415e306c087547709"
}
Frame {
- msec: 9360
- hash: "2510607dadaf22d60838934cd460bde4"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 152; y: 492
- modifiers: 0
- sendToViewport: true
+ msec: 5008
+ hash: "6960e5c4feb55043ff91934fc934734e"
}
Frame {
- msec: 9376
- hash: "38087462c92bae32df01a27520183c5f"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 154; y: 499
- modifiers: 0
- sendToViewport: true
+ msec: 5024
+ hash: "349c7a84ff8f9b52d39dba1282353167"
}
Frame {
- msec: 9392
- hash: "0e5231ff13dd8b3205acb2c451fcf208"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 154; y: 515
- modifiers: 0
- sendToViewport: true
+ msec: 5040
+ hash: "bb41010df844312fc15bb5b42712619a"
}
Frame {
- msec: 9408
- hash: "12dfb280b1cb828b75d04f62b5261f78"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 157; y: 545
- modifiers: 0
- sendToViewport: true
+ msec: 5056
+ hash: "63a3e18670bb2a5e7edfe3b752c0a1b5"
}
Frame {
- msec: 9424
- hash: "fc89205b7a0bae9c2726b775aabf7a6a"
+ msec: 5072
+ hash: "92b1d0fbadbefe9f122b14903a5e0ee9"
}
Frame {
- msec: 9440
- hash: "40807414ec0f879ae666f27360d2b91d"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 159; y: 567
- modifiers: 0
- sendToViewport: true
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 160; y: 581
- modifiers: 0
- sendToViewport: true
+ msec: 5088
+ hash: "6b979e1a4bc7226a89ffb97be2f08147"
}
Frame {
- msec: 9456
- hash: "01c759fad050fa6cecefdf7e2d528bd3"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 160; y: 594
- modifiers: 0
- sendToViewport: true
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 162; y: 608
- modifiers: 0
- sendToViewport: true
+ msec: 5104
+ hash: "7b783908e0b10d329a7d3172f2302a85"
}
Frame {
- msec: 9472
- hash: "81887d4c0718d74f51d03c9efcd7d265"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 162; y: 620
- modifiers: 0
- sendToViewport: true
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 162; y: 639
- modifiers: 0
- sendToViewport: true
+ msec: 5120
+ hash: "41d5ef3390cfc0d806825fc0cd033be6"
}
Frame {
- msec: 9488
- hash: "d0e6f2146daffb910be0be23a2b77a5c"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 160; y: 682
- modifiers: 0
- sendToViewport: true
+ msec: 5136
+ hash: "ff1a053c0af99c51353503002515843d"
}
Frame {
- msec: 9504
- hash: "ffcf5113009c86c8b2df2e9276f2e8c0"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 157; y: 704
- modifiers: 0
- sendToViewport: true
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 155; y: 729
- modifiers: 0
- sendToViewport: true
+ msec: 5152
+ hash: "63b26ecde2a2a9ce36884191304352ed"
}
Frame {
- msec: 9520
- hash: "45d262f0b3bec61a2a235ab613db664c"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 150; y: 775
- modifiers: 0
- sendToViewport: true
+ msec: 5168
+ hash: "bdcff2f9f2c376974211ea6ad5c4961f"
}
Frame {
- msec: 9536
- hash: "1bb9a85fc290e30b841648bd9573ac84"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 146; y: 823
- modifiers: 0
- sendToViewport: true
+ msec: 5184
+ hash: "00ffef1a1d4341ac1c7f43d493a9e826"
}
Frame {
- msec: 9552
- hash: "46ff9bb9662543c711fcd84f44fc6af6"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 141; y: 869
- modifiers: 0
- sendToViewport: true
+ msec: 5200
+ hash: "65dcbb543656f65267c7d32dcd644e56"
}
Frame {
- msec: 9568
- hash: "84fe171380d203a80fedaf4b10412e1a"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 139; y: 907
- modifiers: 0
- sendToViewport: true
+ msec: 5216
+ hash: "38b49419b7103d76da2b6d7101d63d88"
}
Frame {
- msec: 9584
- hash: "496f7ba4a3d45861d93e2cb95e3d5dea"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 135; y: 947
- modifiers: 0
- sendToViewport: true
+ msec: 5232
+ hash: "de39f6bf64745054cbee30ddf306f641"
}
Frame {
- msec: 9600
- image: "flickable-vertical.9.png"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 133; y: 962
- modifiers: 0
- sendToViewport: true
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 133; y: 977
- modifiers: 0
- sendToViewport: true
+ msec: 5248
+ hash: "d6b5ceca4aa48a7d4fd901d44c151b53"
}
Frame {
- msec: 9616
- hash: "e3c4f8d056d2c3b5aef3184fda19a92d"
+ msec: 5264
+ hash: "876e6eee8a35c34e2dd5269f86a9ab3a"
}
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 131; y: 993
- modifiers: 0
- sendToViewport: true
+ Frame {
+ msec: 5280
+ hash: "f94219306eac2e678881d0b607d15a1e"
}
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 129; y: 1006
- modifiers: 0
- sendToViewport: true
+ Frame {
+ msec: 5296
+ hash: "c9184196ef45c985f08f80435492641d"
}
Frame {
- msec: 9632
- hash: "90be1cd9716907fc46309f9f043a6f84"
+ msec: 5312
+ hash: "34dc672ebfd75ec017d0c2f0bd435cd8"
}
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 122; y: 1029
- modifiers: 0
- sendToViewport: true
+ Frame {
+ msec: 5328
+ hash: "4daf1c730fdf13e0a87b28208f2b6dd1"
}
Frame {
- msec: 9648
- hash: "b6e868b2d23004f75d0bdb1519e8487d"
+ msec: 5344
+ hash: "c28d5d7d9d3a86e5bbf6ad48331f9c61"
}
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 118; y: 1043
- modifiers: 0
- sendToViewport: true
+ Frame {
+ msec: 5360
+ hash: "3f98121997a1613bd49d22003d1a1887"
}
- Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 118; y: 1043
- modifiers: 0
- sendToViewport: true
+ Frame {
+ msec: 5376
+ hash: "86732d3e900877ae7a8615b7448afaaa"
}
Frame {
- msec: 9664
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5392
+ hash: "9f3da7ebaeb319c9fec0abdd6bd76ee2"
}
Frame {
- msec: 9680
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5408
+ hash: "326563c2c812a74c7f1fa5e9da0c2369"
}
Frame {
- msec: 9696
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5424
+ hash: "79e00bbe77f0a178e8db30023a881c3f"
}
Frame {
- msec: 9712
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5440
+ hash: "e624204566550e928ab2a2c54113d217"
}
Frame {
- msec: 9728
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5456
+ hash: "b95bf705b81544b05f560c54dec56ff1"
}
Frame {
- msec: 9744
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5472
+ hash: "4f4cd776b76272cfe79b86a108bd6b6e"
}
Frame {
- msec: 9760
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5488
+ hash: "ec2eb1b39a252bd9b37d12ede3d231ce"
}
Frame {
- msec: 9776
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5504
+ hash: "a746404a1a26e2a25b8d364dbef46eef"
}
Frame {
- msec: 9792
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5520
+ hash: "17d190465ee0d348d9b67a748626d99e"
}
Frame {
- msec: 9808
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5536
+ hash: "9124d97d120de1806d86c8f437ec4ed2"
}
Frame {
- msec: 9824
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5552
+ hash: "ea746de2380835d299c56bb01f0aa83c"
}
Frame {
- msec: 9840
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5568
+ hash: "4fda328eafe6ec2d02d939517d6d82e3"
}
Frame {
- msec: 9856
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5584
+ hash: "9c6f671def0b1f5d780024a9dad439e6"
}
Frame {
- msec: 9872
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5600
+ hash: "b7d441d0bb27ed6d1984f324b6e02548"
}
Frame {
- msec: 9888
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5616
+ hash: "3042a62a1125171d9530b696f4b36e19"
}
Frame {
- msec: 9904
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5632
+ hash: "4534f40cf6bb7f402d7252c474629664"
}
Frame {
- msec: 9920
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5648
+ hash: "cb5962fe94c5d3ef754ff45f905a5c88"
}
Frame {
- msec: 9936
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5664
+ hash: "b5a5f9f3aa0948f0bd8d9b4a3fceae50"
}
Frame {
- msec: 9952
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5680
+ hash: "2e0605899abb5725cf22561ec9293879"
}
Frame {
- msec: 9968
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5696
+ hash: "1f260f1d931326be7e398f7c87e44735"
}
Frame {
- msec: 9984
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5712
+ hash: "57b5fc47ed700831b3dc3f2afbb1c3ed"
}
Frame {
- msec: 10000
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5728
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
Frame {
- msec: 10016
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5744
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
Frame {
- msec: 10032
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5760
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
Frame {
- msec: 10048
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5776
+ image: "flickable-vertical.6.png"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 102; y: 279
+ modifiers: 0
+ sendToViewport: true
}
Frame {
- msec: 10064
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5792
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
Frame {
- msec: 10080
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5808
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
Frame {
- msec: 10096
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5824
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
Frame {
- msec: 10112
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5840
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 102; y: 279
+ modifiers: 0
+ sendToViewport: true
}
Frame {
- msec: 10128
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5856
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
Frame {
- msec: 10144
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5872
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
Frame {
- msec: 10160
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5888
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
Frame {
- msec: 10176
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5904
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
Frame {
- msec: 10192
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5920
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
Frame {
- msec: 10208
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5936
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
Frame {
- msec: 10224
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5952
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
Frame {
- msec: 10240
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5968
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
Frame {
- msec: 10256
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 5984
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
Frame {
- msec: 10272
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6000
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
Frame {
- msec: 10288
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6016
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
Frame {
- msec: 10304
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6032
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
Frame {
- msec: 10320
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6048
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
Frame {
- msec: 10336
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6064
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
Mouse {
type: 2
button: 1
buttons: 1
- x: 158; y: 415
+ x: 148; y: 276
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 10352
- hash: "c246bde0eb2b3e1797dfb770a9db78bb"
+ msec: 6080
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
Frame {
- msec: 10368
- hash: "c246bde0eb2b3e1797dfb770a9db78bb"
+ msec: 6096
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 159; y: 416
- modifiers: 0
- sendToViewport: true
+ Frame {
+ msec: 6112
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
Frame {
- msec: 10384
- hash: "c246bde0eb2b3e1797dfb770a9db78bb"
+ msec: 6128
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 160; y: 417
- modifiers: 0
- sendToViewport: true
+ Frame {
+ msec: 6144
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 161; y: 422
+ type: 3
+ button: 1
+ buttons: 0
+ x: 148; y: 276
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 10400
- hash: "c246bde0eb2b3e1797dfb770a9db78bb"
+ msec: 6160
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 162; y: 429
- modifiers: 0
- sendToViewport: true
+ Frame {
+ msec: 6176
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 166; y: 444
- modifiers: 0
- sendToViewport: true
+ Frame {
+ msec: 6192
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
Frame {
- msec: 10416
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6208
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 168; y: 459
- modifiers: 0
- sendToViewport: true
+ Frame {
+ msec: 6224
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 173; y: 473
- modifiers: 0
- sendToViewport: true
+ Frame {
+ msec: 6240
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
Frame {
- msec: 10432
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6256
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 175; y: 486
- modifiers: 0
- sendToViewport: true
+ Frame {
+ msec: 6272
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 178; y: 499
- modifiers: 0
- sendToViewport: true
+ Frame {
+ msec: 6288
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
Frame {
- msec: 10448
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6304
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 180; y: 512
- modifiers: 0
- sendToViewport: true
+ Frame {
+ msec: 6320
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
+ }
+ Frame {
+ msec: 6336
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
+ }
+ Frame {
+ msec: 6352
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
+ }
+ Frame {
+ msec: 6368
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
+ }
+ Frame {
+ msec: 6384
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
Mouse {
- type: 5
- button: 0
+ type: 2
+ button: 1
buttons: 1
- x: 183; y: 524
+ x: 129; y: 101
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 10464
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6400
+ hash: "c18aeb6fb3914a0be2d34ff76249ed8e"
+ }
+ Frame {
+ msec: 6416
+ hash: "c18aeb6fb3914a0be2d34ff76249ed8e"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 185; y: 535
+ x: 129; y: 103
modifiers: 0
sendToViewport: true
}
@@ -4136,19 +2676,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 187; y: 548
+ x: 129; y: 105
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 10480
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6432
+ hash: "c18aeb6fb3914a0be2d34ff76249ed8e"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 189; y: 562
+ x: 130; y: 110
modifiers: 0
sendToViewport: true
}
@@ -4156,19 +2696,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 189; y: 577
+ x: 132; y: 123
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 10496
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6448
+ hash: "8b9167c04a8acc7f8ade258a3e58893b"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 191; y: 593
+ x: 132; y: 133
modifiers: 0
sendToViewport: true
}
@@ -4176,19 +2716,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 193; y: 609
+ x: 134; y: 145
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 10512
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6464
+ hash: "a5daa2f6c932fa38038639bdc8231c5d"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 195; y: 626
+ x: 136; y: 159
modifiers: 0
sendToViewport: true
}
@@ -4196,19 +2736,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 197; y: 641
+ x: 138; y: 172
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 10528
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6480
+ hash: "f342612efcd5e0820b44bd788ec52d7a"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 197; y: 655
+ x: 138; y: 187
modifiers: 0
sendToViewport: true
}
@@ -4216,19 +2756,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 199; y: 670
+ x: 140; y: 203
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 10544
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6496
+ hash: "9a66e65c69ec833a36cce5cbd7d8257f"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 201; y: 681
+ x: 140; y: 214
modifiers: 0
sendToViewport: true
}
@@ -4236,19 +2776,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 201; y: 690
+ x: 141; y: 224
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 10560
- image: "flickable-vertical.10.png"
+ msec: 6512
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 201; y: 698
+ x: 143; y: 235
modifiers: 0
sendToViewport: true
}
@@ -4256,19 +2796,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 203; y: 706
+ x: 143; y: 246
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 10576
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6528
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 203; y: 712
+ x: 143; y: 257
modifiers: 0
sendToViewport: true
}
@@ -4276,19 +2816,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 203; y: 718
+ x: 145; y: 269
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 10592
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6544
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 205; y: 722
+ x: 145; y: 278
modifiers: 0
sendToViewport: true
}
@@ -4296,19 +2836,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 205; y: 725
+ x: 145; y: 289
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 10608
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6560
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 205; y: 727
+ x: 147; y: 299
modifiers: 0
sendToViewport: true
}
@@ -4316,19 +2856,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 205; y: 731
+ x: 147; y: 308
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 10624
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6576
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 205; y: 735
+ x: 149; y: 316
modifiers: 0
sendToViewport: true
}
@@ -4336,19 +2876,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 205; y: 737
+ x: 149; y: 318
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 10640
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6592
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 205; y: 739
+ x: 149; y: 320
modifiers: 0
sendToViewport: true
}
@@ -4356,439 +2896,175 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 205; y: 740
+ x: 149; y: 321
modifiers: 0
sendToViewport: true
}
- Frame {
- msec: 10656
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 205; y: 741
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 10672
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 10688
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 10704
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
Mouse {
type: 3
button: 1
buttons: 0
- x: 205; y: 741
+ x: 149; y: 321
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 10720
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 10736
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 10752
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 10768
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 10784
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 10800
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 10816
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 10832
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 10848
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 10864
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 10880
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 10896
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 10912
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 10928
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 10944
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 10960
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 10976
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 10992
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 11008
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 11024
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 11040
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 11056
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 11072
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 11088
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 11104
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 11120
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6608
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
- msec: 11136
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6624
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
- msec: 11152
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6640
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
- msec: 11168
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6656
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
- msec: 11184
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6672
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
- msec: 11200
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6688
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
- msec: 11216
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6704
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
- msec: 11232
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6720
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
- msec: 11248
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6736
+ image: "flickable-vertical.7.png"
}
Frame {
- msec: 11264
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6752
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
- msec: 11280
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6768
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
- msec: 11296
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6784
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
- msec: 11312
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6800
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
- msec: 11328
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6816
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
- msec: 11344
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6832
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
- msec: 11360
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6848
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
- msec: 11376
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6864
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
- msec: 11392
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6880
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
- msec: 11408
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6896
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
- msec: 11424
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6912
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
- msec: 11440
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6928
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
- msec: 11456
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6944
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
- msec: 11472
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6960
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
- msec: 11488
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6976
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Frame {
- msec: 11504
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 6992
+ hash: "bca482a77823f03e8fb4170ee329fc0e"
}
Mouse {
type: 2
button: 1
buttons: 1
- x: 115; y: 578
+ x: 166; y: 191
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 11520
- image: "flickable-vertical.11.png"
- }
- Frame {
- msec: 11536
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 11552
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 11568
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 11584
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 115; y: 578
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 11600
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 11616
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 11632
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 11648
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 11664
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 11680
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 11696
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 11712
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 11728
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 11744
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 11760
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 11776
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 11792
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 11808
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 11824
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 11840
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 11856
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 11872
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 7008
+ hash: "9ed65a21e4aaedf9c48a38324b3f5480"
}
Mouse {
- type: 2
- button: 1
+ type: 5
+ button: 0
buttons: 1
- x: 130; y: 410
+ x: 167; y: 190
modifiers: 0
sendToViewport: true
}
- Frame {
- msec: 11888
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 11904
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 11920
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 11936
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 11952
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 11968
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 130; y: 410
+ type: 5
+ button: 0
+ buttons: 1
+ x: 167; y: 189
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 11984
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 12000
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 12016
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 12032
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 7024
+ hash: "9ed65a21e4aaedf9c48a38324b3f5480"
}
Mouse {
- type: 4
- button: 1
+ type: 5
+ button: 0
buttons: 1
- x: 130; y: 410
+ x: 167; y: 188
modifiers: 0
sendToViewport: true
}
- Frame {
- msec: 12048
- hash: "c246bde0eb2b3e1797dfb770a9db78bb"
- }
- Frame {
- msec: 12064
- hash: "c246bde0eb2b3e1797dfb770a9db78bb"
- }
Mouse {
type: 5
button: 0
buttons: 1
- x: 131; y: 410
+ x: 168; y: 185
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 12080
- hash: "c246bde0eb2b3e1797dfb770a9db78bb"
+ msec: 7040
+ hash: "9ed65a21e4aaedf9c48a38324b3f5480"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 133; y: 408
+ x: 169; y: 183
modifiers: 0
sendToViewport: true
}
@@ -4796,51 +3072,39 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 134; y: 405
+ x: 169; y: 179
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 12096
- hash: "c246bde0eb2b3e1797dfb770a9db78bb"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 136; y: 403
- modifiers: 0
- sendToViewport: true
+ msec: 7056
+ hash: "c4925926f64b852ff6c8d07e1c70ead5"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 140; y: 396
+ x: 170; y: 172
modifiers: 0
sendToViewport: true
}
- Frame {
- msec: 12112
- hash: "c246bde0eb2b3e1797dfb770a9db78bb"
- }
Mouse {
type: 5
button: 0
buttons: 1
- x: 150; y: 380
+ x: 170; y: 162
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 12128
- hash: "c246bde0eb2b3e1797dfb770a9db78bb"
+ msec: 7072
+ hash: "da771cedad067b8f25c100613b6a14f2"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 154; y: 370
+ x: 168; y: 150
modifiers: 0
sendToViewport: true
}
@@ -4848,19 +3112,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 158; y: 361
+ x: 167; y: 139
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 12144
- hash: "c246bde0eb2b3e1797dfb770a9db78bb"
+ msec: 7088
+ hash: "c8862bf76a431edc1cf04f4114fa859f"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 161; y: 353
+ x: 165; y: 125
modifiers: 0
sendToViewport: true
}
@@ -4868,19 +3132,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 163; y: 343
+ x: 163; y: 113
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 12160
- hash: "c246bde0eb2b3e1797dfb770a9db78bb"
+ msec: 7104
+ hash: "4d923cd520c00f5cd985283d62cf17ec"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 166; y: 332
+ x: 161; y: 103
modifiers: 0
sendToViewport: true
}
@@ -4888,19 +3152,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 166; y: 324
+ x: 160; y: 92
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 12176
- hash: "c246bde0eb2b3e1797dfb770a9db78bb"
+ msec: 7120
+ hash: "76b0d1c77ba29bad836673b1b79de911"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 168; y: 315
+ x: 158; y: 80
modifiers: 0
sendToViewport: true
}
@@ -4908,19 +3172,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 168; y: 309
+ x: 156; y: 66
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 12192
- hash: "c246bde0eb2b3e1797dfb770a9db78bb"
+ msec: 7136
+ hash: "3f9c5686f0a9ef5ecf2b8338ef2e7933"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 168; y: 303
+ x: 154; y: 52
modifiers: 0
sendToViewport: true
}
@@ -4928,19 +3192,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 168; y: 297
+ x: 154; y: 38
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 12208
- hash: "c246bde0eb2b3e1797dfb770a9db78bb"
+ msec: 7152
+ hash: "799d83eedefa0a56f37a83404c59ad4f"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 168; y: 293
+ x: 152; y: 27
modifiers: 0
sendToViewport: true
}
@@ -4948,19 +3212,7 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 168; y: 291
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 12224
- hash: "c246bde0eb2b3e1797dfb770a9db78bb"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 168; y: 290
+ x: 150; y: 18
modifiers: 0
sendToViewport: true
}
@@ -4968,267 +3220,127 @@ VisualTest {
type: 3
button: 1
buttons: 0
- x: 168; y: 290
+ x: 150; y: 18
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 12240
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 7168
+ hash: "d6b5ceca4aa48a7d4fd901d44c151b53"
}
Frame {
- msec: 12256
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 7184
+ hash: "e1609c4e40fb9e043a9fff683b94c6c4"
}
Frame {
- msec: 12272
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 7200
+ hash: "ea457fc4d4065d2ed0e9f6efc47a06ee"
}
Frame {
- msec: 12288
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 7216
+ hash: "b7f4319aa9c21640a697ee89f162bb49"
}
Frame {
- msec: 12304
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 7232
+ hash: "880f60263cd79fb6a1bff7252d2373bb"
}
Frame {
- msec: 12320
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 7248
+ hash: "00ffef1a1d4341ac1c7f43d493a9e826"
}
Frame {
- msec: 12336
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 7264
+ hash: "c949fe87ba91e08f26a1c4d90028513f"
}
Frame {
- msec: 12352
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 7280
+ hash: "8636af4591c61c4b4a548f3a38749413"
}
Frame {
- msec: 12368
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 7296
+ hash: "63b26ecde2a2a9ce36884191304352ed"
}
Frame {
- msec: 12384
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Mouse {
- type: 2
- button: 1
- buttons: 1
- x: 167; y: 295
- modifiers: 0
- sendToViewport: true
+ msec: 7312
+ hash: "843f7263f63442f0041bf2c1a6fae400"
}
Frame {
- msec: 12400
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 167; y: 300
- modifiers: 0
- sendToViewport: true
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 165; y: 308
- modifiers: 0
- sendToViewport: true
+ msec: 7328
+ hash: "ff1a053c0af99c51353503002515843d"
}
Frame {
- msec: 12416
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 165; y: 316
- modifiers: 0
- sendToViewport: true
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 165; y: 326
- modifiers: 0
- sendToViewport: true
+ msec: 7344
+ hash: "47aea3ac4ea935d43f731a258287c2e8"
}
Frame {
- msec: 12432
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 163; y: 336
- modifiers: 0
- sendToViewport: true
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 163; y: 346
- modifiers: 0
- sendToViewport: true
+ msec: 7360
+ hash: "eee4fa336149528dfb16565b856ca692"
}
Frame {
- msec: 12448
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 165; y: 356
- modifiers: 0
- sendToViewport: true
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 165; y: 369
- modifiers: 0
- sendToViewport: true
+ msec: 7376
+ hash: "bb94493c25c56c41e81ef1e390adf63d"
}
Frame {
- msec: 12464
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 7392
+ hash: "2915f455a5e1e8c6b8cc78309c5e84d9"
}
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 165; y: 382
- modifiers: 0
- sendToViewport: true
+ Frame {
+ msec: 7408
+ hash: "94701ffaa4f45924ad89f92a30157c7d"
}
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 167; y: 393
- modifiers: 0
- sendToViewport: true
+ Frame {
+ msec: 7424
+ hash: "92fae8cf4b8d8404b26a31f995860b95"
}
Frame {
- msec: 12480
- image: "flickable-vertical.12.png"
+ msec: 7440
+ hash: "6b979e1a4bc7226a89ffb97be2f08147"
}
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 167; y: 405
- modifiers: 0
- sendToViewport: true
+ Frame {
+ msec: 7456
+ hash: "dd94beeb0b4933a9ac2236a9abe630ff"
}
Mouse {
- type: 5
- button: 0
+ type: 2
+ button: 1
buttons: 1
- x: 167; y: 415
+ x: 109; y: 172
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 12496
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 7472
+ hash: "dd94beeb0b4933a9ac2236a9abe630ff"
}
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 167; y: 420
- modifiers: 0
- sendToViewport: true
+ Frame {
+ msec: 7488
+ hash: "dd94beeb0b4933a9ac2236a9abe630ff"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 167; y: 429
+ x: 109; y: 170
modifiers: 0
sendToViewport: true
}
- Frame {
- msec: 12512
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
Mouse {
type: 5
button: 0
buttons: 1
- x: 167; y: 433
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 12528
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 167; y: 433
+ x: 109; y: 168
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 12544
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 12560
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 12576
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 12592
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 12608
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 12624
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Frame {
- msec: 12640
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
- }
- Mouse {
- type: 2
- button: 1
- buttons: 1
- x: 145; y: 357
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 12656
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 7504
+ hash: "dd94beeb0b4933a9ac2236a9abe630ff"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 145; y: 350
+ x: 109; y: 165
modifiers: 0
sendToViewport: true
}
@@ -5236,19 +3348,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 145; y: 342
+ x: 109; y: 152
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 12672
- hash: "b0e76c5cfeb797888e8c032b3f2781bd"
+ msec: 7520
+ hash: "34c7ed1c072d84626a8a64f7db02f71d"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 145; y: 333
+ x: 109; y: 135
modifiers: 0
sendToViewport: true
}
@@ -5256,43 +3368,39 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 145; y: 323
+ x: 109; y: 116
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 12688
- hash: "7eda3c99a4c066ed00c717e33a66682c"
+ msec: 7536
+ hash: "e723da5ecaffe31f03b1d5ca6765229b"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 147; y: 305
+ x: 106; y: 91
modifiers: 0
sendToViewport: true
}
- Frame {
- msec: 12704
- hash: "85402c05dd1bd85316422aec2b774e4f"
- }
Mouse {
type: 5
button: 0
buttons: 1
- x: 147; y: 285
+ x: 104; y: 66
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 12720
- hash: "f8ebaae72eb98b880aaf5bb8cf517840"
+ msec: 7552
+ hash: "a85128cae494abeb5d45ab8df0d127a6"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 147; y: 275
+ x: 102; y: 42
modifiers: 0
sendToViewport: true
}
@@ -5300,19 +3408,19 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 147; y: 264
+ x: 100; y: 17
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 12736
- hash: "83ebbcd20af8178175ea72698b9bfd08"
+ msec: 7568
+ hash: "3599a92966c27321e9f702f3428b9b00"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 145; y: 253
+ x: 100; y: -2
modifiers: 0
sendToViewport: true
}
@@ -5320,268 +3428,220 @@ VisualTest {
type: 3
button: 1
buttons: 0
- x: 145; y: 253
+ x: 100; y: -2
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 12752
- hash: "a154f7125f88c25484aea9f268a10e22"
- }
- Frame {
- msec: 12768
- hash: "4a1fdbc170f98e3c438cf47526fd16a1"
- }
- Frame {
- msec: 12784
- hash: "99228a13ebf2516199d339cc73e1358f"
- }
- Frame {
- msec: 12800
- hash: "724687b54e474e4dc53b105ed9ca2def"
- }
- Frame {
- msec: 12816
- hash: "4db074b34af9472a5d853928953901dc"
- }
- Frame {
- msec: 12832
- hash: "ab1acd2ba148a7830f75cbf2e09e426c"
- }
- Frame {
- msec: 12848
- hash: "04a22e2278823d9e49e524ef2d8d45c5"
- }
- Frame {
- msec: 12864
- hash: "f5a658c7c2b185e250dc1b245457094b"
- }
- Frame {
- msec: 12880
- hash: "bb611d6a086b0eedb37111d7575847df"
- }
- Frame {
- msec: 12896
- hash: "04e9e40c43a51b704378871710ad9f8b"
- }
- Frame {
- msec: 12912
- hash: "7ff5ba1e30f93de2dd3cad953d3d60fb"
- }
- Frame {
- msec: 12928
- hash: "f85e46ed733dbbec83509d6a3b4c72a0"
- }
- Frame {
- msec: 12944
- hash: "2f08cc1d92102138d6a4945116727be5"
+ msec: 7584
+ hash: "067a1bef3df5d1c40842f28885d60250"
}
Frame {
- msec: 12960
- hash: "864a68a8519e58081205d74b4184498b"
+ msec: 7600
+ hash: "82f818ed44a191fb51e637b8068786dc"
}
Frame {
- msec: 12976
- hash: "1fb6a1ecbde71566486a1310a5ab9c17"
+ msec: 7616
+ hash: "f408f59707195549ba61f030a3f020cd"
}
Frame {
- msec: 12992
- hash: "5ab977d88d850d94340bfc0c15137486"
+ msec: 7632
+ hash: "66e79c8b2f8e3a57c3bc14935c5df7d1"
}
Frame {
- msec: 13008
- hash: "79bafb9b957d88f938c977b37e1d8b9c"
+ msec: 7648
+ hash: "4341c6b7b0d2e8021b51cb1abab85e10"
}
Frame {
- msec: 13024
- hash: "fa5b1cf343b45407f6cee7ce38ca9eb0"
+ msec: 7664
+ hash: "5ec8ee5ccecac1787b2f5e99268e810d"
}
Frame {
- msec: 13040
- hash: "1147ff69795a65878ffea7bed4b9a93f"
+ msec: 7680
+ hash: "1fae7b735ff6e88abfb1423f8960da4f"
}
Frame {
- msec: 13056
- hash: "08ad4cd6fbdba8c98dfbc096ab91ebd2"
+ msec: 7696
+ image: "flickable-vertical.8.png"
}
Frame {
- msec: 13072
- hash: "3ee0c33a1a80b8cad7ec525b8b16cb70"
+ msec: 7712
+ hash: "dce74ff07eb37c82a38b3e515f9a43f2"
}
Frame {
- msec: 13088
- hash: "cabd708943ce14892bb69aa22dc4a2b5"
+ msec: 7728
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13104
- hash: "86a7afcbbd67b50b7bf3ef85f1843e3d"
+ msec: 7744
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13120
- hash: "111f0161479cf82c08dd918b6ece8e45"
+ msec: 7760
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13136
- hash: "33da9e73f1521297c3d250f00cda20cd"
+ msec: 7776
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13152
- hash: "72f166ddddac3962b39cf4283b4554f3"
+ msec: 7792
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13168
- hash: "1ee57340798998f95114d929d2702ce6"
+ msec: 7808
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13184
- hash: "eb036d3246a2361aa1b11c8408f9eb1a"
+ msec: 7824
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13200
- hash: "af73e799d7cb536d0ba6db985396c597"
+ msec: 7840
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13216
- hash: "5d84accad1fa5d421bc3effb148d81a6"
+ msec: 7856
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13232
- hash: "d752289e96eb2398096297234b6b88f6"
+ msec: 7872
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13248
- hash: "53970a50451c182f672d0ddcd572279d"
+ msec: 7888
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13264
- hash: "6323f61cc6966e75be10a49aeaab9a3e"
+ msec: 7904
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13280
- hash: "fb679e5ad89681f482d94b4dab80e3bb"
+ msec: 7920
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13296
- hash: "1788a7f680bbcbcedb2583cead6ced57"
+ msec: 7936
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13312
- hash: "b325580b9f88dd5490d914f580b9d341"
+ msec: 7952
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13328
- hash: "8fa25fff546b060a92b60e6fbb3b2fa8"
+ msec: 7968
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13344
- hash: "2fb5ee5e86745910b46d98943af4c9d5"
+ msec: 7984
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13360
- hash: "7fcdce21e2e1b14501e79d9c716b0011"
+ msec: 8000
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13376
- hash: "bf79452e478bfe3374d4c275fc3b42fb"
+ msec: 8016
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13392
- hash: "1069c4aff64ab8193798965af7a6988e"
+ msec: 8032
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13408
- hash: "3031ea711d0880a2fafd557f23c38cc0"
+ msec: 8048
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13424
- hash: "5955c49ae05578f6a9b023a1f6c8301b"
+ msec: 8064
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13440
- image: "flickable-vertical.13.png"
+ msec: 8080
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13456
- hash: "af2fc9780356c01d44e7e918643e334b"
+ msec: 8096
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13472
- hash: "b28600a5433e08299bf5ab3c789a4d5a"
+ msec: 8112
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13488
- hash: "159dab2806a6fbac4f090c4ca029433e"
+ msec: 8128
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13504
- hash: "b1937894776d083eb38f105901344d55"
+ msec: 8144
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13520
- hash: "2420c1280e6520e35f30879fe139ed77"
+ msec: 8160
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13536
- hash: "ba0018197140b398caa05eada958e2ce"
+ msec: 8176
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13552
- hash: "b04094c2734f71e17a2d0091b3c85565"
+ msec: 8192
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13568
- hash: "2ff995d15a49fcbd0adfcb970135ebae"
+ msec: 8208
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13584
- hash: "9b10dc438e944a8711aef1f45c912538"
+ msec: 8224
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13600
- hash: "c397307c99d125789e03b0239c6d7130"
+ msec: 8240
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13616
- hash: "aa6fe1c4d968bbf381f38c09e9c26eea"
+ msec: 8256
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13632
- hash: "8d586f001d41ccde450a4ce88a8ef89a"
+ msec: 8272
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13648
- hash: "80f98a4935097ec76bd863ffe4e3a441"
+ msec: 8288
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13664
- hash: "620b4eddf956d85701387a114ec228fc"
+ msec: 8304
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13680
- hash: "dc56a6cafe22e56d6d5efee62c324784"
+ msec: 8320
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13696
- hash: "8fcf5f5b350ffc80cde03b044dc81e57"
+ msec: 8336
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13712
- hash: "5bc02d5bfcc6f4a9349623139663e664"
+ msec: 8352
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13728
- hash: "6a71734b1a38cdbacf8447a41481d67c"
+ msec: 8368
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13744
- hash: "34b069ef8080e15db86f66983f18c58d"
+ msec: 8384
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13760
- hash: "0131b30e21796e0ea9ad1484ac7ac6e4"
+ msec: 8400
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
Frame {
- msec: 13776
- hash: "0131b30e21796e0ea9ad1484ac7ac6e4"
+ msec: 8416
+ hash: "ba2c06129f17fde474427859d66ecd23"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/flickable-vertical.qml b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/flickable-vertical.qml
index 5c8ff52405..1fd65d17de 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeflickable/flickable-vertical.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeflickable/flickable-vertical.qml
@@ -2,7 +2,7 @@ import QtQuick 1.0
Rectangle {
color: "lightSteelBlue"
- width: 300; height: 600
+ width: 200; height: 300
ListModel {
id: list
@@ -24,7 +24,7 @@ Rectangle {
id: column
Repeater {
model: list
- Rectangle { width: 300; height: 200; color: mr.pressed ? "black" : dayColor
+ Rectangle { width: 200; height: 100; color: mr.pressed ? "black" : dayColor
MouseArea {
id: mr
anchors.fill: parent
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.0.png b/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.0.png
index 53a8b42a00..b3ae1bcca7 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.1.png b/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.1.png
index b7efe8c3e2..0458d82dd9 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.2.png b/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.2.png
index aa6d14771a..0e01afc3ca 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.2.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.3.png b/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.3.png
index 9d3971335e..b256bc2301 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.3.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.4.png b/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.4.png
index 98e8817699..8454ed241f 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.4.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.5.png b/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.5.png
index a3f9d8f45b..177a0fe9a0 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.5.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.6.png b/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.6.png
new file mode 100644
index 0000000000..a51cffeb5f
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.6.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.qml b/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.qml
index d2d46e45e9..2d362a42e2 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test-flipable.qml
@@ -6,7 +6,7 @@ VisualTest {
}
Frame {
msec: 16
- hash: "7e16e6360fc2e9db67dbf11d58042745"
+ image: "test-flipable.0.png"
}
Frame {
msec: 32
@@ -242,11 +242,11 @@ VisualTest {
}
Frame {
msec: 960
- image: "test-flipable.0.png"
+ hash: "c03406106847c03c73f5897e65690925"
}
Frame {
msec: 976
- hash: "7d1a0ff0eceb80ff64d828c34792a2d5"
+ image: "test-flipable.1.png"
}
Frame {
msec: 992
@@ -482,11 +482,11 @@ VisualTest {
}
Frame {
msec: 1920
- image: "test-flipable.1.png"
+ hash: "1e8348fbb51871dffe9543fca19bb452"
}
Frame {
msec: 1936
- hash: "ae4e35413e462221b8cb48dd0350f873"
+ image: "test-flipable.2.png"
}
Frame {
msec: 1952
@@ -722,11 +722,11 @@ VisualTest {
}
Frame {
msec: 2880
- image: "test-flipable.2.png"
+ hash: "373141f99bc88c40ead161502c9750e9"
}
Frame {
msec: 2896
- hash: "ae76d183491834e2b1d0371420d51ce5"
+ image: "test-flipable.3.png"
}
Frame {
msec: 2912
@@ -962,11 +962,11 @@ VisualTest {
}
Frame {
msec: 3840
- image: "test-flipable.3.png"
+ hash: "464a78e75e10b62773ab64af4fc4c7aa"
}
Frame {
msec: 3856
- hash: "e18635d7c6c5de361e7406c2db357aca"
+ image: "test-flipable.4.png"
}
Frame {
msec: 3872
@@ -1202,11 +1202,11 @@ VisualTest {
}
Frame {
msec: 4800
- image: "test-flipable.4.png"
+ hash: "03f17b2cd781f2ee0ae5664a0491166c"
}
Frame {
msec: 4816
- hash: "6e48e605ea1aed4028e02476328f182b"
+ image: "test-flipable.5.png"
}
Frame {
msec: 4832
@@ -1442,11 +1442,11 @@ VisualTest {
}
Frame {
msec: 5760
- image: "test-flipable.5.png"
+ hash: "73c06997014af4e008b546b53fe349fb"
}
Frame {
msec: 5776
- hash: "90fb4e4ba04ac32b52c10b3258431c04"
+ image: "test-flipable.6.png"
}
Frame {
msec: 5792
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test_flipable_resize.0.png b/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test_flipable_resize.0.png
new file mode 100644
index 0000000000..814cc89210
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test_flipable_resize.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test_flipable_resize.qml b/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test_flipable_resize.qml
index d1a5ade01f..d211832b0f 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test_flipable_resize.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeflipable/data/test_flipable_resize.qml
@@ -6,7 +6,7 @@ VisualTest {
}
Frame {
msec: 16
- hash: "04382a80a203e1fe3d0d4944c9195e0b"
+ image: "test_flipable_resize.0.png"
}
Frame {
msec: 32
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.0.png b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.0.png
index c675be7235..b053048fe7 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.1.png b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.1.png
index 9f605c3598..c675be7235 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.10.png b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.10.png
new file mode 100644
index 0000000000..c675be7235
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.10.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.2.png b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.2.png
index 35572c539f..9f605c3598 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.2.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.3.png b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.3.png
index 20146c932f..767d7a9f79 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.3.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.4.png b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.4.png
index 85fac8913a..20146c932f 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.4.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.5.png b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.5.png
index e522baee9a..85fac8913a 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.5.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.6.png b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.6.png
index ec0ba86cae..e522baee9a 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.6.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.6.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.7.png b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.7.png
index 20cacc8193..f9192e46fd 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.7.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.7.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.8.png b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.8.png
index b2b187db01..ad187bdd3d 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.8.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.8.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.9.png b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.9.png
index c675be7235..96c6325724 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.9.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.9.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.qml b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.qml
index a3e5ea0f02..6f0352d82b 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview.qml
@@ -6,7 +6,7 @@ VisualTest {
}
Frame {
msec: 16
- hash: "c33447c78ea64452ec3cd1696fb502eb"
+ image: "gridview.0.png"
}
Frame {
msec: 32
@@ -274,11 +274,11 @@ VisualTest {
}
Frame {
msec: 960
- image: "gridview.0.png"
+ hash: "02c632713d0dc64bff9d8e58f745df95"
}
Frame {
msec: 976
- hash: "02c632713d0dc64bff9d8e58f745df95"
+ image: "gridview.1.png"
}
Frame {
msec: 992
@@ -546,11 +546,11 @@ VisualTest {
}
Frame {
msec: 1920
- image: "gridview.1.png"
+ hash: "8304d2432168a2ea8a887d9a135b40b4"
}
Frame {
msec: 1936
- hash: "8304d2432168a2ea8a887d9a135b40b4"
+ image: "gridview.2.png"
}
Frame {
msec: 1952
@@ -826,11 +826,11 @@ VisualTest {
}
Frame {
msec: 2880
- image: "gridview.2.png"
+ hash: "e9112eea445585b17d58b6f9ba039c39"
}
Frame {
msec: 2896
- hash: "534973232974b7ee999172269d16c499"
+ image: "gridview.3.png"
}
Key {
type: 7
@@ -1106,11 +1106,11 @@ VisualTest {
}
Frame {
msec: 3840
- image: "gridview.3.png"
+ hash: "e63d987ba303a42046827f14941b444a"
}
Frame {
msec: 3856
- hash: "e63d987ba303a42046827f14941b444a"
+ image: "gridview.4.png"
}
Frame {
msec: 3872
@@ -1394,11 +1394,11 @@ VisualTest {
}
Frame {
msec: 4800
- image: "gridview.4.png"
+ hash: "11150995098af8516513230360d40108"
}
Frame {
msec: 4816
- hash: "11150995098af8516513230360d40108"
+ image: "gridview.5.png"
}
Frame {
msec: 4832
@@ -1666,11 +1666,11 @@ VisualTest {
}
Frame {
msec: 5760
- image: "gridview.5.png"
+ hash: "3de570332e8a1e01f409d892feb7930e"
}
Frame {
msec: 5776
- hash: "3de570332e8a1e01f409d892feb7930e"
+ image: "gridview.6.png"
}
Frame {
msec: 5792
@@ -1946,11 +1946,11 @@ VisualTest {
}
Frame {
msec: 6720
- image: "gridview.6.png"
+ hash: "dcf8c3078973ad99fbbcc763e433de11"
}
Frame {
msec: 6736
- hash: "b6c7ad2c8e305ea5478a2307aa71b16b"
+ image: "gridview.7.png"
}
Frame {
msec: 6752
@@ -2218,11 +2218,11 @@ VisualTest {
}
Frame {
msec: 7680
- image: "gridview.7.png"
+ hash: "2a5a7dfcd64200864abfa9267e802f4e"
}
Frame {
msec: 7696
- hash: "e8b6316baae781ca5390bc86528194c0"
+ image: "gridview.8.png"
}
Key {
type: 7
@@ -2506,7 +2506,7 @@ VisualTest {
}
Frame {
msec: 8640
- image: "gridview.8.png"
+ hash: "fb8acbfc93b64d960abb17f097fe36fe"
}
Key {
type: 7
@@ -2518,7 +2518,7 @@ VisualTest {
}
Frame {
msec: 8656
- hash: "4724d0bfd63f248914f18117ba0c6119"
+ image: "gridview.9.png"
}
Frame {
msec: 8672
@@ -2786,11 +2786,11 @@ VisualTest {
}
Frame {
msec: 9600
- image: "gridview.9.png"
+ hash: "02c632713d0dc64bff9d8e58f745df95"
}
Frame {
msec: 9616
- hash: "02c632713d0dc64bff9d8e58f745df95"
+ image: "gridview.10.png"
}
Frame {
msec: 9632
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.0.png b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.0.png
index 3021d5831d..27e0783497 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.1.png b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.1.png
index baeb1a60b4..27e0783497 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.2.png b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.2.png
index 2d0c7314f2..b0348ab430 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.2.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.3.png b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.3.png
index af9ed05a63..c3113e9731 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.3.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.4.png b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.4.png
index 0b0945d88d..725d4e9bda 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.4.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.5.png b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.5.png
index 618ae0c8c9..cc6d8d6377 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.5.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.6.png b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.6.png
index fc31262bbd..ccf9f5ffd4 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.6.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.6.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.7.png b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.7.png
index 22291ac94a..2f7f475844 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.7.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.7.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.8.png b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.8.png
index 3021d5831d..fff1b40cf6 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.8.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.8.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.9.png b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.9.png
index 2f2f5b9b6f..27e0783497 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.9.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.9.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.qml b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.qml
index 1c90af9750..2c43f7d3df 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativegridview/data/gridview2.qml
@@ -6,7 +6,7 @@ VisualTest {
}
Frame {
msec: 16
- hash: "dba2f6f1c773bd4cd9523108fca861c4"
+ image: "gridview2.0.png"
}
Frame {
msec: 32
@@ -242,11 +242,11 @@ VisualTest {
}
Frame {
msec: 960
- image: "gridview2.0.png"
+ hash: "33d81c39d16c6a326012499796e50e03"
}
Frame {
msec: 976
- hash: "33d81c39d16c6a326012499796e50e03"
+ image: "gridview2.1.png"
}
Frame {
msec: 992
@@ -330,27 +330,27 @@ VisualTest {
}
Frame {
msec: 1280
- hash: "aaec7184a27e6700d96ffff376b8fa53"
+ hash: "4ffd56d59c14ba676393686d753951d7"
}
Frame {
msec: 1296
- hash: "3fa3a890a4ff4a59336a9a2d478d0dde"
+ hash: "e2f7702ed749330b2f027aa73967a4cf"
}
Frame {
msec: 1312
- hash: "3711c6c2f4f9aba7f2c72bd1f1d85016"
+ hash: "3f4dcee547e925db9b3da1fa08bab3c9"
}
Frame {
msec: 1328
- hash: "23da2f9a800b805ce7b77ff08218907d"
+ hash: "12b0bf8abbb9b6a0597eccebe5322551"
}
Frame {
msec: 1344
- hash: "12e4bc953b06cdaad0720f87fb96a37e"
+ hash: "23da2f9a800b805ce7b77ff08218907d"
}
Frame {
msec: 1360
- hash: "46e69658bda69bab202a2790a76ba1cd"
+ hash: "9c039c94a4202b99bf913891bdcb3698"
}
Key {
type: 7
@@ -362,27 +362,27 @@ VisualTest {
}
Frame {
msec: 1376
- hash: "44608e67c69b92ccbb45e119e1158fe3"
+ hash: "dd7c95ca98c4f37837c2ff7f03243fc3"
}
Frame {
msec: 1392
- hash: "97a309b47017d38294644a486a7ce68e"
+ hash: "6f31f7af4e68ab0eab101e7ae840b4b6"
}
Frame {
msec: 1408
- hash: "41f42b50b22e0496c8aca5019b24b9cb"
+ hash: "29943a44b9830bb64b3e5a3b6abd8c42"
}
Frame {
msec: 1424
- hash: "8603ea1cb60c804563f50bc41c0180fe"
+ hash: "93d37221e8e022c84e35c7bd44b0644e"
}
Frame {
msec: 1440
- hash: "e29777fa70daafe9640c6e9bb7bd63d6"
+ hash: "9ce3cd471dba7fe94de4e9ad321803b2"
}
Frame {
msec: 1456
- hash: "2c4c360320f527e99fee799e68c2c0aa"
+ hash: "0d30916c7e05ff8609af5894f47a89bb"
}
Frame {
msec: 1472
@@ -430,23 +430,23 @@ VisualTest {
}
Frame {
msec: 1616
- hash: "17027b7c099b11cb5382f30dbbd1e647"
+ hash: "6775c78beca0f078c5f2c57370de1946"
}
Frame {
msec: 1632
- hash: "0e17461a4ca843f9903b7f03e99a0b00"
+ hash: "898709f3871e13825baf48861930f26c"
}
Frame {
msec: 1648
- hash: "a5e61901920553e59892fa405beea15a"
+ hash: "c1a568599592a3f455ad550c2e4878a8"
}
Frame {
msec: 1664
- hash: "310eaf71fe8d3807606e58a666c65ccd"
+ hash: "a80d8cbf0c6fe8383badbb2badb361ad"
}
Frame {
msec: 1680
- hash: "76f556d05fb77082f33eb1836c10587a"
+ hash: "310eaf71fe8d3807606e58a666c65ccd"
}
Key {
type: 7
@@ -458,31 +458,31 @@ VisualTest {
}
Frame {
msec: 1696
- hash: "4e7e4b7790a96396e7ea3533b5c32ed9"
+ hash: "0f317f50b0d2a4c5daf819431527416e"
}
Frame {
msec: 1712
- hash: "b065287b6490f58ca6f0e9eb2027cf20"
+ hash: "d251b64b794902fe2c5da3cee43ff82d"
}
Frame {
msec: 1728
- hash: "907cd9dbdffa1d395caaabd466dc8e86"
+ hash: "757adc256e1b5d739c29ee82bdacfa16"
}
Frame {
msec: 1744
- hash: "3b144e5b4867328beafa3020ce931480"
+ hash: "1c20e69e033a5fa4825fd46f51d1e348"
}
Frame {
msec: 1760
- hash: "b59b2b60b7d55424b61b1b0ed3e227b8"
+ hash: "03cbcd361ec24925222802c8ece99793"
}
Frame {
msec: 1776
- hash: "4032e934871b315b68c7c2abea42efee"
+ hash: "dffaa2dd4d6dd89a1b26d5db38906059"
}
Frame {
msec: 1792
- hash: "8f80127b2f8d6fc10aa84062544cc381"
+ hash: "77d5193bc5f53fe5cb98a236c55f841e"
}
Frame {
msec: 1808
@@ -514,11 +514,11 @@ VisualTest {
}
Frame {
msec: 1920
- image: "gridview2.1.png"
+ hash: "77d5193bc5f53fe5cb98a236c55f841e"
}
Frame {
msec: 1936
- hash: "77d5193bc5f53fe5cb98a236c55f841e"
+ image: "gridview2.2.png"
}
Frame {
msec: 1952
@@ -554,23 +554,23 @@ VisualTest {
}
Frame {
msec: 2048
- hash: "a45d2630872a14541f39b862e15ff461"
+ hash: "1f046afe50ee5e1fc07e89a40528351c"
}
Frame {
msec: 2064
- hash: "714711d7382ef8bba5fb39e2e44bd59c"
+ hash: "132fbaa8fc2890d48f1916a25cb09887"
}
Frame {
msec: 2080
- hash: "63deed0356e761f94f88be18a7d10053"
+ hash: "e904c892dc27ff1700009470f234ce0d"
}
Frame {
msec: 2096
- hash: "d5b4fc1b568a4a1b63a91b422272c704"
+ hash: "0968397c7a209059cd466c61ac891081"
}
Frame {
msec: 2112
- hash: "b6d2c80925cc6b4b7b297bd6ee903c7c"
+ hash: "d5b4fc1b568a4a1b63a91b422272c704"
}
Key {
type: 7
@@ -582,31 +582,31 @@ VisualTest {
}
Frame {
msec: 2128
- hash: "38117482196360353586cb7ace593894"
+ hash: "a980a2e7bd10328fbd4400e799aa7c24"
}
Frame {
msec: 2144
- hash: "2301f3a148bf4e311cc8ce011ddf65f8"
+ hash: "b74be5349822d52ced201d7f34a96122"
}
Frame {
msec: 2160
- hash: "2a4982a0961f89a15618f8d4c2081f5a"
+ hash: "f7c6dbcd7d55b3230af463098f346bd8"
}
Frame {
msec: 2176
- hash: "acf8666d6a8a29925f3895aa8e93f713"
+ hash: "393358a0ee7636a535f14f0dc9c3d609"
}
Frame {
msec: 2192
- hash: "967ed026bc92a6d2747c5227105543a6"
+ hash: "cad337b87b629b1eee78407aacfd279e"
}
Frame {
msec: 2208
- hash: "ff72f3fb95f25990c99c1c14cfef57da"
+ hash: "d90b762e62867e3ff928160bed85d2ff"
}
Frame {
msec: 2224
- hash: "0874a4f863596c3860dcf5b1f7f6ceb2"
+ hash: "520445d8619ad9bdde0db0e61f17567c"
}
Frame {
msec: 2240
@@ -658,31 +658,31 @@ VisualTest {
}
Frame {
msec: 2400
- hash: "7c4bbf0423d63d7642d218cac56a6215"
+ hash: "5c9801ffdb07be53524cf0a4f8709ee4"
}
Frame {
msec: 2416
- hash: "e8c77dbc89721b51549f8d46453fe09d"
+ hash: "adef25d77f816e40ec02886187f456bf"
}
Frame {
msec: 2432
- hash: "7953503590b639872ac12215695e8cea"
+ hash: "56290066fa32054bb7e1669bbda3f3bb"
}
Frame {
msec: 2448
- hash: "edaee946a2e25fed6de9acfda0d44a14"
+ hash: "101b94bcf3f536bd64f0ac50f21cd5de"
}
Frame {
msec: 2464
- hash: "4996ef39bb0122c10d65f8dd8674b386"
+ hash: "edaee946a2e25fed6de9acfda0d44a14"
}
Frame {
msec: 2480
- hash: "ede7c6ca9d6deb7819c3715e98755d6e"
+ hash: "b170b60632b17595713dd911afc46fcc"
}
Frame {
msec: 2496
- hash: "e703fad2fcf9244ec9865200c7d17ce3"
+ hash: "57550914cd214025c6b1f3dfa446417f"
}
Key {
type: 7
@@ -694,23 +694,23 @@ VisualTest {
}
Frame {
msec: 2512
- hash: "e2bfc16fd893bb3eb0e5df89a0169af3"
+ hash: "3fd7252f5e61e3c348219a54fd5b95d9"
}
Frame {
msec: 2528
- hash: "cfd0eb2bc378bd46644f3f7820150685"
+ hash: "c6c27dd386e40bc0a02ad8104301d391"
}
Frame {
msec: 2544
- hash: "442b05b04762c2bcda291aaa0341398e"
+ hash: "dd476c04d3612f940e1959030ee8e264"
}
Frame {
msec: 2560
- hash: "55842a6503057eea98e2075ef160873e"
+ hash: "f2f8d9bb8a1865237398421f6a6d89dc"
}
Frame {
msec: 2576
- hash: "730f80233dacf1119660a76d2a34c5fc"
+ hash: "d4a48ee79a18cc5c0bc123fbb40c3efd"
}
Frame {
msec: 2592
@@ -766,23 +766,23 @@ VisualTest {
}
Frame {
msec: 2768
- hash: "4d04c12bc7fab0b22df3135bf3a87a22"
+ hash: "f13bc957329adad9dcb1ce0c408eeaaf"
}
Frame {
msec: 2784
- hash: "fdca5a3f8312452feba7f37b1caa6419"
+ hash: "9a676805f3474f924cbe7ea21ee9dcab"
}
Frame {
msec: 2800
- hash: "97b955e0f8cde30299b238d9ac0eb308"
+ hash: "f0161b0d27757137bcb7fd3e6db2280c"
}
Frame {
msec: 2816
- hash: "19664de1a738458810896959ba4087ad"
+ hash: "c7034a0e8956c9f483c128a934d68fa7"
}
Frame {
msec: 2832
- hash: "4f9a4b6de6a2969e4639076a8f7c258e"
+ hash: "19664de1a738458810896959ba4087ad"
}
Key {
type: 7
@@ -794,31 +794,31 @@ VisualTest {
}
Frame {
msec: 2848
- hash: "a10f18aa686be2681a48082ec9f01df7"
+ hash: "c5d5ff1884dd0ede23097530c249678c"
}
Frame {
msec: 2864
- hash: "b8f39a6cca377dd573429d879286dd63"
+ hash: "131ae4a26ad06bbef105668d30e154aa"
}
Frame {
msec: 2880
- image: "gridview2.2.png"
+ hash: "5d6ba09a5038e00007af0fa3f89b67b8"
}
Frame {
msec: 2896
- hash: "3301e52a46efbc49882401c77853ffde"
+ image: "gridview2.3.png"
}
Frame {
msec: 2912
- hash: "0c614597f17496ebc701efe7b0c1fbb6"
+ hash: "9d5ee2458abc5dfd56abfd42c906270f"
}
Frame {
msec: 2928
- hash: "6dda2d6b034c932e279cf216c9b3e6ad"
+ hash: "823b5d63768f5a18e795d5ed61f4dec8"
}
Frame {
msec: 2944
- hash: "7bf08cd5fe3ad3f83bbef28f452e0545"
+ hash: "1b7ebcf0e3d68e429cb04966120985e5"
}
Frame {
msec: 2960
@@ -854,35 +854,35 @@ VisualTest {
}
Frame {
msec: 3056
- hash: "0fe7d46e7c18ce7bb5a098c5c662d557"
+ hash: "1a8a32127c1b699bc282b0c209117a00"
}
Frame {
msec: 3072
- hash: "cd5df541cc1ed545bc27da9e4a937261"
+ hash: "2f5f2ab12410c070a7c05a1674e273fe"
}
Frame {
msec: 3088
- hash: "35762467b83fee1870cff9b0436994d3"
+ hash: "afe7c2cd74cc90d67e8c068eaf5988eb"
}
Frame {
msec: 3104
- hash: "75a620b42caabf5b1576041dbd4c2808"
+ hash: "e063d9eb45dc42b3f8b66937b7b4c19a"
}
Frame {
msec: 3120
- hash: "f1b06290a6cbd48b8d3d4ce1e42ed754"
+ hash: "75a620b42caabf5b1576041dbd4c2808"
}
Frame {
msec: 3136
- hash: "8e1a50dc082828587a4656117760a852"
+ hash: "2e2b9db4d2f19035c7c29489332b2550"
}
Frame {
msec: 3152
- hash: "aae8e5f166e736040138d8e222a844dd"
+ hash: "32370cba80db8eaf1f5cd9b73d3472ed"
}
Frame {
msec: 3168
- hash: "f69e5cf2bcb26fe49126776695b0b7e0"
+ hash: "3a79c47a8eb8bb79316e61a7eed58e57"
}
Key {
type: 7
@@ -894,19 +894,19 @@ VisualTest {
}
Frame {
msec: 3184
- hash: "7b482fece0255ea07496ef0545b008a2"
+ hash: "c84e47182ef6ebec61163f9b42d03c64"
}
Frame {
msec: 3200
- hash: "3f96eaebfebe8d4eeb347b201b59ab11"
+ hash: "6a0a83a39e6ab82b5437d46468e4776d"
}
Frame {
msec: 3216
- hash: "9943626d2226c3be711c8213906133f0"
+ hash: "945929656c1d27bcba51ce908e72a770"
}
Frame {
msec: 3232
- hash: "fd5fd8177b3957c27f1de0d95621351a"
+ hash: "506283ccfe9670633ce0bf60b437b37b"
}
Frame {
msec: 3248
@@ -958,31 +958,31 @@ VisualTest {
}
Frame {
msec: 3408
- hash: "fb437f6c23561092a124e498f1604ff2"
+ hash: "7d12bcac0fcaaff7467c444ab89f1e06"
}
Frame {
msec: 3424
- hash: "402ba144bbb7260eec4553e68eb35cda"
+ hash: "2f4538eec0c704af25b0a73d5a8dded4"
}
Frame {
msec: 3440
- hash: "76a983de9e85e0c81dfb8908252bd6c9"
+ hash: "4722cbfba5de7e4f7b3cee10bd0f75b5"
}
Frame {
msec: 3456
- hash: "09219f55fae47a0afed887ebf68a36bc"
+ hash: "3a6df7e6d771c6edc5218ad9a4bf6ab0"
}
Frame {
msec: 3472
- hash: "344e81cc262093facef2f6a235a734dc"
+ hash: "09219f55fae47a0afed887ebf68a36bc"
}
Frame {
msec: 3488
- hash: "8f1c5544eb537555b1c59a377b15e31d"
+ hash: "c04c0010761f572c5b16963699c70135"
}
Frame {
msec: 3504
- hash: "606b9bb549fe2e4bbd09d67b7dea0d1a"
+ hash: "52d59ffff0f2109f9a584f3582158798"
}
Key {
type: 7
@@ -994,23 +994,23 @@ VisualTest {
}
Frame {
msec: 3520
- hash: "63e239c97bd01a61cb31ef2869e7f47c"
+ hash: "9b1d58189c56205ba8963671bfb86742"
}
Frame {
msec: 3536
- hash: "f7c176550c39f8a1ad64590cf33a60a4"
+ hash: "7de84895e12919ffe935b23372db95db"
}
Frame {
msec: 3552
- hash: "8581cb14ed81efdf9abb638b5e542cc3"
+ hash: "d9c5b4c2a7831c216fe2266fe26306b0"
}
Frame {
msec: 3568
- hash: "7a1e9354ecc49d8bc27d303c7bdc81f9"
+ hash: "1c2bc039c48e7e9da07165f405a6f207"
}
Frame {
msec: 3584
- hash: "610288b97276ee03702ed8a814ef333d"
+ hash: "8d36bc2f3ab614d19f3ec8821f3e81ed"
}
Frame {
msec: 3600
@@ -1074,19 +1074,19 @@ VisualTest {
}
Frame {
msec: 3808
- hash: "9713c6b9aff051dd0cc45c545d34b688"
+ hash: "abf9f5ef21fb62e5ad89ae2640a5a7e1"
}
Frame {
msec: 3824
- hash: "1f8fd4d759e343720a8681b6ad126b72"
+ hash: "58103d91498617585163e0508bdb724d"
}
Frame {
msec: 3840
- image: "gridview2.3.png"
+ hash: "c46ea52b070681155466b30096379c4f"
}
Frame {
msec: 3856
- hash: "8550d916d91a40b0c3a886b962e07ffc"
+ image: "gridview2.4.png"
}
Key {
type: 7
@@ -1098,143 +1098,143 @@ VisualTest {
}
Frame {
msec: 3872
- hash: "df0c2e474139e79429bfc19c79a65ef8"
+ hash: "523667a6f3213fb67de1744636780831"
}
Frame {
msec: 3888
- hash: "acfb99d081d754276e5ed59bd590aeab"
+ hash: "f0b7d38f695a29f6787dc3683a05a7c8"
}
Frame {
msec: 3904
- hash: "2b34cd101b442f7a3de2893fd5514c16"
+ hash: "1e5cf55e27217e67a5deb89e2d46349a"
}
Frame {
msec: 3920
- hash: "df92ced66faa1d59354d8010278438ec"
+ hash: "c49869491f484d07da838a21564e5e19"
}
Frame {
msec: 3936
- hash: "dd39a8e6fa3784453461193a6da416cd"
+ hash: "1acce2b796476d2d7d130749b06f334f"
}
Frame {
msec: 3952
- hash: "5670e8f91ea2df451f0974a51cd77d7d"
+ hash: "19ee6550b52517345859f9feb0b0d5a4"
}
Frame {
msec: 3968
- hash: "74b97a09bfe7400872a2c6214e04a5ac"
+ hash: "d2f360af319c740ad095ee0a463fa6fa"
}
Frame {
msec: 3984
- hash: "cfd55b963506ab54cf09a7311e84bcc9"
+ hash: "032326c6cf2a9da09c2388626ce942ef"
}
Frame {
msec: 4000
- hash: "59657ee9293c03f064d62de826931435"
+ hash: "ba2a7178b7c68001ecfdfea053507d0e"
}
Frame {
msec: 4016
- hash: "31f6a4adf31be5ed0af0ea4097e3acee"
+ hash: "9afddf683c810e288ed0da2fa44c5182"
}
Frame {
msec: 4032
- hash: "8f5bfc40c8cdb2f8ce69adb72e7efe76"
+ hash: "93a7145e4bafa1e40a1db013b1c4337c"
}
Frame {
msec: 4048
- hash: "9dc38985113124130e2ca7950e0bd144"
+ hash: "3d48687ecb20a8670dd656c5705a0797"
}
Frame {
msec: 4064
- hash: "786e6e8b9e74876a6f393d61a78b8fc7"
+ hash: "7578264d5ea215f7fde90478ba5e6d32"
}
Frame {
msec: 4080
- hash: "1f4d59a4e4684aab309363a711b30006"
+ hash: "fb84bbce52e9c4dc4efc1eed7e863007"
}
Frame {
msec: 4096
- hash: "a11e332de151b43051796e16dbcf75c3"
+ hash: "df5d88d8421af767057fc4b3d0de23b1"
}
Frame {
msec: 4112
- hash: "1a0e82029ae107cb2a018786752433ff"
+ hash: "dae3e3e10fe7e0ddcf10a7bb4ecc3f1a"
}
Frame {
msec: 4128
- hash: "b14c51977c7fbf51f9cf6fec309bff6a"
+ hash: "eb15ba34411afd416dea5bc2b18cfb27"
}
Frame {
msec: 4144
- hash: "2b418f811992399c3f87c268db745632"
+ hash: "5f51ade6a1400093e9dd2b80d6f7a6ca"
}
Frame {
msec: 4160
- hash: "0e9a056207053ca98c4e9f42de244c62"
+ hash: "5e240752b752ca2ed4e6087f4deb0fbf"
}
Frame {
msec: 4176
- hash: "1945c3f9e3a1337e7d111e15adea345f"
+ hash: "ae1931b9f168211c44c7269a245635fd"
}
Frame {
msec: 4192
- hash: "d8cf36b6cc15a01ead815d814ae81cb4"
+ hash: "83588693715deadea8b875d6c6547371"
}
Frame {
msec: 4208
- hash: "d8cf36b6cc15a01ead815d814ae81cb4"
+ hash: "83588693715deadea8b875d6c6547371"
}
Frame {
msec: 4224
- hash: "d8cf36b6cc15a01ead815d814ae81cb4"
+ hash: "83588693715deadea8b875d6c6547371"
}
Frame {
msec: 4240
- hash: "d8cf36b6cc15a01ead815d814ae81cb4"
+ hash: "83588693715deadea8b875d6c6547371"
}
Frame {
msec: 4256
- hash: "d8cf36b6cc15a01ead815d814ae81cb4"
+ hash: "83588693715deadea8b875d6c6547371"
}
Frame {
msec: 4272
- hash: "d8cf36b6cc15a01ead815d814ae81cb4"
+ hash: "83588693715deadea8b875d6c6547371"
}
Frame {
msec: 4288
- hash: "d8cf36b6cc15a01ead815d814ae81cb4"
+ hash: "83588693715deadea8b875d6c6547371"
}
Frame {
msec: 4304
- hash: "d8cf36b6cc15a01ead815d814ae81cb4"
+ hash: "83588693715deadea8b875d6c6547371"
}
Frame {
msec: 4320
- hash: "d8cf36b6cc15a01ead815d814ae81cb4"
+ hash: "83588693715deadea8b875d6c6547371"
}
Frame {
msec: 4336
- hash: "d8cf36b6cc15a01ead815d814ae81cb4"
+ hash: "83588693715deadea8b875d6c6547371"
}
Frame {
msec: 4352
- hash: "d8cf36b6cc15a01ead815d814ae81cb4"
+ hash: "83588693715deadea8b875d6c6547371"
}
Frame {
msec: 4368
- hash: "d8cf36b6cc15a01ead815d814ae81cb4"
+ hash: "83588693715deadea8b875d6c6547371"
}
Frame {
msec: 4384
- hash: "d8cf36b6cc15a01ead815d814ae81cb4"
+ hash: "83588693715deadea8b875d6c6547371"
}
Frame {
msec: 4400
- hash: "d8cf36b6cc15a01ead815d814ae81cb4"
+ hash: "83588693715deadea8b875d6c6547371"
}
Frame {
msec: 4416
- hash: "d8cf36b6cc15a01ead815d814ae81cb4"
+ hash: "83588693715deadea8b875d6c6547371"
}
Key {
type: 6
@@ -1246,31 +1246,31 @@ VisualTest {
}
Frame {
msec: 4432
- hash: "d8cf36b6cc15a01ead815d814ae81cb4"
+ hash: "83588693715deadea8b875d6c6547371"
}
Frame {
msec: 4448
- hash: "1945c3f9e3a1337e7d111e15adea345f"
+ hash: "ae1931b9f168211c44c7269a245635fd"
}
Frame {
msec: 4464
- hash: "0e9a056207053ca98c4e9f42de244c62"
+ hash: "a8e4b69162a6298929c12a91e60f20c1"
}
Frame {
msec: 4480
- hash: "2b418f811992399c3f87c268db745632"
+ hash: "ca4694bbbdc206c46600c894ed853390"
}
Frame {
msec: 4496
- hash: "b14c51977c7fbf51f9cf6fec309bff6a"
+ hash: "21b2f2ee716d6b28066d44bfdc57babf"
}
Frame {
msec: 4512
- hash: "1a0e82029ae107cb2a018786752433ff"
+ hash: "d37df25a59f3ba88b78f548521a6e5b2"
}
Frame {
msec: 4528
- hash: "a11e332de151b43051796e16dbcf75c3"
+ hash: "b554cb62b97bbbb671d9b34389d4187a"
}
Key {
type: 7
@@ -1282,75 +1282,75 @@ VisualTest {
}
Frame {
msec: 4544
- hash: "1f4d59a4e4684aab309363a711b30006"
+ hash: "d28889303f98c47665247009bcfd68e7"
}
Frame {
msec: 4560
- hash: "786e6e8b9e74876a6f393d61a78b8fc7"
+ hash: "80e7808641fc79c893a02842f641249b"
}
Frame {
msec: 4576
- hash: "9dc38985113124130e2ca7950e0bd144"
+ hash: "4f3a39e8c61ad9197e7f24058671e510"
}
Frame {
msec: 4592
- hash: "8f5bfc40c8cdb2f8ce69adb72e7efe76"
+ hash: "ba2a7178b7c68001ecfdfea053507d0e"
}
Frame {
msec: 4608
- hash: "31f6a4adf31be5ed0af0ea4097e3acee"
+ hash: "ca1c72729c41845151820d362721a1e7"
}
Frame {
msec: 4624
- hash: "59657ee9293c03f064d62de826931435"
+ hash: "ac37c4abbbc11b8e2bf8e0e8dae6180f"
}
Frame {
msec: 4640
- hash: "23aa652a0de7fced4a780d72f0940a1b"
+ hash: "ac37c4abbbc11b8e2bf8e0e8dae6180f"
}
Frame {
msec: 4656
- hash: "23aa652a0de7fced4a780d72f0940a1b"
+ hash: "ac37c4abbbc11b8e2bf8e0e8dae6180f"
}
Frame {
msec: 4672
- hash: "23aa652a0de7fced4a780d72f0940a1b"
+ hash: "ac37c4abbbc11b8e2bf8e0e8dae6180f"
}
Frame {
msec: 4688
- hash: "23aa652a0de7fced4a780d72f0940a1b"
+ hash: "ac37c4abbbc11b8e2bf8e0e8dae6180f"
}
Frame {
msec: 4704
- hash: "23aa652a0de7fced4a780d72f0940a1b"
+ hash: "ac37c4abbbc11b8e2bf8e0e8dae6180f"
}
Frame {
msec: 4720
- hash: "23aa652a0de7fced4a780d72f0940a1b"
+ hash: "ac37c4abbbc11b8e2bf8e0e8dae6180f"
}
Frame {
msec: 4736
- hash: "23aa652a0de7fced4a780d72f0940a1b"
+ hash: "ac37c4abbbc11b8e2bf8e0e8dae6180f"
}
Frame {
msec: 4752
- hash: "23aa652a0de7fced4a780d72f0940a1b"
+ hash: "ac37c4abbbc11b8e2bf8e0e8dae6180f"
}
Frame {
msec: 4768
- hash: "23aa652a0de7fced4a780d72f0940a1b"
+ hash: "ac37c4abbbc11b8e2bf8e0e8dae6180f"
}
Frame {
msec: 4784
- hash: "23aa652a0de7fced4a780d72f0940a1b"
+ hash: "ac37c4abbbc11b8e2bf8e0e8dae6180f"
}
Frame {
msec: 4800
- image: "gridview2.4.png"
+ hash: "ac37c4abbbc11b8e2bf8e0e8dae6180f"
}
Frame {
msec: 4816
- hash: "23aa652a0de7fced4a780d72f0940a1b"
+ image: "gridview2.5.png"
}
Key {
type: 6
@@ -1362,27 +1362,27 @@ VisualTest {
}
Frame {
msec: 4832
- hash: "23aa652a0de7fced4a780d72f0940a1b"
+ hash: "ac37c4abbbc11b8e2bf8e0e8dae6180f"
}
Frame {
msec: 4848
- hash: "d46eea049d6156a5e85d9c6811d9d367"
+ hash: "1176eed6f023a843a646517e60f848b5"
}
Frame {
msec: 4864
- hash: "d5796ae85247cb8502f92f0d044e4e1f"
+ hash: "26eca367a7fe38ac123fa63cfbb20421"
}
Frame {
msec: 4880
- hash: "90987ac49c1a4e6b668436e3ff631e6c"
+ hash: "d471f06d345e5a09bf4ea540b80fe1e3"
}
Frame {
msec: 4896
- hash: "c38d69759ad80242b1fe83ba191cd421"
+ hash: "e3694d271e363df1b212d975a464df62"
}
Frame {
msec: 4912
- hash: "09d08aed76a04e492d8a39cc4dd2b8f5"
+ hash: "3dc24a10bbf6a6a0ba85f50de8646305"
}
Key {
type: 7
@@ -1394,175 +1394,175 @@ VisualTest {
}
Frame {
msec: 4928
- hash: "9671d2ff9a2ef46ce3c750a1965404a4"
+ hash: "08e7979e36a9a8a500193020ab68c616"
}
Frame {
msec: 4944
- hash: "f55857816d666ece4a7987a70883b3d1"
+ hash: "bd91601e455c2c37c786f907bd20b447"
}
Frame {
msec: 4960
- hash: "a2d80527b30316d9120b057bbfcfa666"
+ hash: "e4b676fc9752f3bff5353a2bf528b3ac"
}
Frame {
msec: 4976
- hash: "87ca69287c1469cbc7e65d1673016de7"
+ hash: "c772188a68cc0958c247145005d580ef"
}
Frame {
msec: 4992
- hash: "51588c7ebbe2dcd87a3c9bebf028aee3"
+ hash: "eded946d9e7c6418e3933624fe2f1dbf"
}
Frame {
msec: 5008
- hash: "917a9a171273fe9fd4c450eeed6f58ed"
+ hash: "46a2dd2bfa66a3781a00fe466e05eeb0"
}
Frame {
msec: 5024
- hash: "6e7ade250a9a9692caee2a220dd2ac53"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5040
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5056
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5072
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5088
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5104
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5120
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5136
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5152
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5168
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5184
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5200
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5216
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5232
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5248
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5264
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5280
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5296
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5312
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5328
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5344
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5360
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5376
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5392
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5408
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5424
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5440
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5456
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5472
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5488
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5504
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5520
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5536
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5552
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5568
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5584
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5600
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Key {
type: 6
@@ -1574,31 +1574,31 @@ VisualTest {
}
Frame {
msec: 5616
- hash: "ca2dcb16d553889a3a57b48700c2a595"
+ hash: "4e11a072f1136c2c6298e6cfb25700dd"
}
Frame {
msec: 5632
- hash: "c5c9aab9bea757f1c451e89df72bd836"
+ hash: "e44ee0f83cbd176620d5c91851402b5b"
}
Frame {
msec: 5648
- hash: "a8cf3085f8c3b743f3f15db1ad7b8801"
+ hash: "c18bc8109b350673faf64b4722e86f3d"
}
Frame {
msec: 5664
- hash: "c25a92050eced1c304506572723273a3"
+ hash: "1b552ed8555c61e1fa664e6c88aee64d"
}
Frame {
msec: 5680
- hash: "cff981039c1a3eb6c3c1a20f142fbae2"
+ hash: "11284c77b23ba4b4b0c664b387dc9d48"
}
Frame {
msec: 5696
- hash: "930765587fe3355873bbdff66b812b74"
+ hash: "fbd015d60a8ada6a671301d01846b4c8"
}
Frame {
msec: 5712
- hash: "6a60f97c7b39add465e1bd366e9c644b"
+ hash: "1456fca256ab6fdf930dd079ee8b77a7"
}
Key {
type: 7
@@ -1610,99 +1610,99 @@ VisualTest {
}
Frame {
msec: 5728
- hash: "7a1fd3c488d1064a75dc598c9a773291"
+ hash: "bf7f688319a89ade564734d7fc658167"
}
Frame {
msec: 5744
- hash: "e2ecd7e68e27eb3d2dcb5e368d3ee5a0"
+ hash: "68819e722d6032881824448ed63248b2"
}
Frame {
msec: 5760
- image: "gridview2.5.png"
+ hash: "510589f35813c6c1d6484f614da92ae3"
}
Frame {
msec: 5776
- hash: "20f3aaca2efc3066076e73d1d95e5363"
+ image: "gridview2.6.png"
}
Frame {
msec: 5792
- hash: "b18d476cadc36e22dddc3185f595c123"
+ hash: "37f9e630ac66e999046d686078cf5a68"
}
Frame {
msec: 5808
- hash: "8cbc47555178c8ee355774eab17b4b19"
+ hash: "b534ccea1f69ececc54d943e73b7e9f4"
}
Frame {
msec: 5824
- hash: "e488fb76fb550fba51b95bee3fee80d5"
+ hash: "b534ccea1f69ececc54d943e73b7e9f4"
}
Frame {
msec: 5840
- hash: "e488fb76fb550fba51b95bee3fee80d5"
+ hash: "b534ccea1f69ececc54d943e73b7e9f4"
}
Frame {
msec: 5856
- hash: "e488fb76fb550fba51b95bee3fee80d5"
+ hash: "b534ccea1f69ececc54d943e73b7e9f4"
}
Frame {
msec: 5872
- hash: "e488fb76fb550fba51b95bee3fee80d5"
+ hash: "b534ccea1f69ececc54d943e73b7e9f4"
}
Frame {
msec: 5888
- hash: "e488fb76fb550fba51b95bee3fee80d5"
+ hash: "b534ccea1f69ececc54d943e73b7e9f4"
}
Frame {
msec: 5904
- hash: "e488fb76fb550fba51b95bee3fee80d5"
+ hash: "b534ccea1f69ececc54d943e73b7e9f4"
}
Frame {
msec: 5920
- hash: "e488fb76fb550fba51b95bee3fee80d5"
+ hash: "b534ccea1f69ececc54d943e73b7e9f4"
}
Frame {
msec: 5936
- hash: "e488fb76fb550fba51b95bee3fee80d5"
+ hash: "b534ccea1f69ececc54d943e73b7e9f4"
}
Frame {
msec: 5952
- hash: "e488fb76fb550fba51b95bee3fee80d5"
+ hash: "b534ccea1f69ececc54d943e73b7e9f4"
}
Frame {
msec: 5968
- hash: "e488fb76fb550fba51b95bee3fee80d5"
+ hash: "b534ccea1f69ececc54d943e73b7e9f4"
}
Frame {
msec: 5984
- hash: "e488fb76fb550fba51b95bee3fee80d5"
+ hash: "b534ccea1f69ececc54d943e73b7e9f4"
}
Frame {
msec: 6000
- hash: "e488fb76fb550fba51b95bee3fee80d5"
+ hash: "b534ccea1f69ececc54d943e73b7e9f4"
}
Frame {
msec: 6016
- hash: "e488fb76fb550fba51b95bee3fee80d5"
+ hash: "b534ccea1f69ececc54d943e73b7e9f4"
}
Frame {
msec: 6032
- hash: "e488fb76fb550fba51b95bee3fee80d5"
+ hash: "b534ccea1f69ececc54d943e73b7e9f4"
}
Frame {
msec: 6048
- hash: "e488fb76fb550fba51b95bee3fee80d5"
+ hash: "b534ccea1f69ececc54d943e73b7e9f4"
}
Frame {
msec: 6064
- hash: "e488fb76fb550fba51b95bee3fee80d5"
+ hash: "b534ccea1f69ececc54d943e73b7e9f4"
}
Frame {
msec: 6080
- hash: "e488fb76fb550fba51b95bee3fee80d5"
+ hash: "b534ccea1f69ececc54d943e73b7e9f4"
}
Frame {
msec: 6096
- hash: "e488fb76fb550fba51b95bee3fee80d5"
+ hash: "b534ccea1f69ececc54d943e73b7e9f4"
}
Key {
type: 6
@@ -1714,39 +1714,39 @@ VisualTest {
}
Frame {
msec: 6112
- hash: "e488fb76fb550fba51b95bee3fee80d5"
+ hash: "b534ccea1f69ececc54d943e73b7e9f4"
}
Frame {
msec: 6128
- hash: "8c2fab0c73d1cfbeeb0ec937085d6b3b"
+ hash: "f45eb6005981864d7e4d1379a4390b02"
}
Frame {
msec: 6144
- hash: "5d9353517177ef7c6314d8a65cb009ec"
+ hash: "a644905acb7cf6e4d9351f1140985a98"
}
Frame {
msec: 6160
- hash: "ed8de504f7e2028cd369c1555314fd81"
+ hash: "011be55b909843b2506c5a97e7571e51"
}
Frame {
msec: 6176
- hash: "8fe84d8badbe5bd08d097ba6bda10611"
+ hash: "35b224d84ae3a4bdba0ace487471f0a6"
}
Frame {
msec: 6192
- hash: "d77419a55a3cf933505e793bb258e6af"
+ hash: "dcfd5536e6065a19650fe67914211223"
}
Frame {
msec: 6208
- hash: "457ac82be02e2f5e08e51ccc78c94781"
+ hash: "8ad99c352901c54ecc601ca2ac8c1f08"
}
Frame {
msec: 6224
- hash: "e57e2852f065afff9c24c5bc9f29edee"
+ hash: "e4774d15b45865b9f445f679cd0414ea"
}
Frame {
msec: 6240
- hash: "f72cd6ad3324936c3a18c264e23e05a9"
+ hash: "a5b78dfb09b9031f0aabfa7439cbc433"
}
Key {
type: 7
@@ -1758,127 +1758,127 @@ VisualTest {
}
Frame {
msec: 6256
- hash: "a4bf7eae6fc7a05239d09421ae95304a"
+ hash: "20b87dc26080f8e8e070b2fa299f496a"
}
Frame {
msec: 6272
- hash: "423f3bd07df8bee25818644c07201a3c"
+ hash: "0e6d05d1df8328ca17d953476d19ae14"
}
Frame {
msec: 6288
- hash: "225e9c698424f287b9458b7839b4479b"
+ hash: "e2b1ec6b985bbc57f0384a49f3af545c"
}
Frame {
msec: 6304
- hash: "0f463db7e4acc184a4efb7b5e5c0d397"
+ hash: "8d36bc2f3ab614d19f3ec8821f3e81ed"
}
Frame {
msec: 6320
- hash: "b92ad1c3be35c46c0d12bf7701c56f23"
+ hash: "8d36bc2f3ab614d19f3ec8821f3e81ed"
}
Frame {
msec: 6336
- hash: "b92ad1c3be35c46c0d12bf7701c56f23"
+ hash: "8d36bc2f3ab614d19f3ec8821f3e81ed"
}
Frame {
msec: 6352
- hash: "b92ad1c3be35c46c0d12bf7701c56f23"
+ hash: "8d36bc2f3ab614d19f3ec8821f3e81ed"
}
Frame {
msec: 6368
- hash: "b92ad1c3be35c46c0d12bf7701c56f23"
+ hash: "8d36bc2f3ab614d19f3ec8821f3e81ed"
}
Frame {
msec: 6384
- hash: "b92ad1c3be35c46c0d12bf7701c56f23"
+ hash: "8d36bc2f3ab614d19f3ec8821f3e81ed"
}
Frame {
msec: 6400
- hash: "b92ad1c3be35c46c0d12bf7701c56f23"
+ hash: "8d36bc2f3ab614d19f3ec8821f3e81ed"
}
Frame {
msec: 6416
- hash: "b92ad1c3be35c46c0d12bf7701c56f23"
+ hash: "8d36bc2f3ab614d19f3ec8821f3e81ed"
}
Frame {
msec: 6432
- hash: "b92ad1c3be35c46c0d12bf7701c56f23"
+ hash: "8d36bc2f3ab614d19f3ec8821f3e81ed"
}
Frame {
msec: 6448
- hash: "b92ad1c3be35c46c0d12bf7701c56f23"
+ hash: "8d36bc2f3ab614d19f3ec8821f3e81ed"
}
Frame {
msec: 6464
- hash: "b92ad1c3be35c46c0d12bf7701c56f23"
+ hash: "8d36bc2f3ab614d19f3ec8821f3e81ed"
}
Frame {
msec: 6480
- hash: "b92ad1c3be35c46c0d12bf7701c56f23"
+ hash: "8d36bc2f3ab614d19f3ec8821f3e81ed"
}
Frame {
msec: 6496
- hash: "b92ad1c3be35c46c0d12bf7701c56f23"
+ hash: "8d36bc2f3ab614d19f3ec8821f3e81ed"
}
Frame {
msec: 6512
- hash: "b92ad1c3be35c46c0d12bf7701c56f23"
+ hash: "8d36bc2f3ab614d19f3ec8821f3e81ed"
}
Frame {
msec: 6528
- hash: "b92ad1c3be35c46c0d12bf7701c56f23"
+ hash: "8d36bc2f3ab614d19f3ec8821f3e81ed"
}
Frame {
msec: 6544
- hash: "b92ad1c3be35c46c0d12bf7701c56f23"
+ hash: "8d36bc2f3ab614d19f3ec8821f3e81ed"
}
Frame {
msec: 6560
- hash: "b92ad1c3be35c46c0d12bf7701c56f23"
+ hash: "8d36bc2f3ab614d19f3ec8821f3e81ed"
}
Frame {
msec: 6576
- hash: "b92ad1c3be35c46c0d12bf7701c56f23"
+ hash: "8d36bc2f3ab614d19f3ec8821f3e81ed"
}
Frame {
msec: 6592
- hash: "b92ad1c3be35c46c0d12bf7701c56f23"
+ hash: "8d36bc2f3ab614d19f3ec8821f3e81ed"
}
Frame {
msec: 6608
- hash: "b92ad1c3be35c46c0d12bf7701c56f23"
+ hash: "8d36bc2f3ab614d19f3ec8821f3e81ed"
}
Frame {
msec: 6624
- hash: "b92ad1c3be35c46c0d12bf7701c56f23"
+ hash: "8d36bc2f3ab614d19f3ec8821f3e81ed"
}
Frame {
msec: 6640
- hash: "b92ad1c3be35c46c0d12bf7701c56f23"
+ hash: "8d36bc2f3ab614d19f3ec8821f3e81ed"
}
Frame {
msec: 6656
- hash: "b92ad1c3be35c46c0d12bf7701c56f23"
+ hash: "8d36bc2f3ab614d19f3ec8821f3e81ed"
}
Frame {
msec: 6672
- hash: "b92ad1c3be35c46c0d12bf7701c56f23"
+ hash: "8d36bc2f3ab614d19f3ec8821f3e81ed"
}
Frame {
msec: 6688
- hash: "b92ad1c3be35c46c0d12bf7701c56f23"
+ hash: "8d36bc2f3ab614d19f3ec8821f3e81ed"
}
Frame {
msec: 6704
- hash: "b92ad1c3be35c46c0d12bf7701c56f23"
+ hash: "8d36bc2f3ab614d19f3ec8821f3e81ed"
}
Frame {
msec: 6720
- image: "gridview2.6.png"
+ hash: "8d36bc2f3ab614d19f3ec8821f3e81ed"
}
Frame {
msec: 6736
- hash: "b92ad1c3be35c46c0d12bf7701c56f23"
+ image: "gridview2.7.png"
}
Key {
type: 6
@@ -1890,27 +1890,27 @@ VisualTest {
}
Frame {
msec: 6752
- hash: "b92ad1c3be35c46c0d12bf7701c56f23"
+ hash: "8d36bc2f3ab614d19f3ec8821f3e81ed"
}
Frame {
msec: 6768
- hash: "738f6bcc043d221488285c7e529b1d1c"
+ hash: "6cbeb42ae5aa75638fedcaf38d25370a"
}
Frame {
msec: 6784
- hash: "cb0a4e8e79372dd67e8ecfea2143a47c"
+ hash: "fe3b287b14cbfbca4e19a2de979e9e16"
}
Frame {
msec: 6800
- hash: "544d1825b36f4e7950c1a62b26c1fd9b"
+ hash: "69650da29b84b8009c30de516fb9b623"
}
Frame {
msec: 6816
- hash: "df99396622342b4f092b0db34a224c3d"
+ hash: "5cbcaf1e6916aa635e31ac4219e387f7"
}
Frame {
msec: 6832
- hash: "47391f51e5df2249a6ca1f1f6e8e80e0"
+ hash: "acb7f98da26b70bebe20336c51449318"
}
Key {
type: 7
@@ -1922,19 +1922,19 @@ VisualTest {
}
Frame {
msec: 6848
- hash: "d8079a874ca18d00aeeb611effcbeb8b"
+ hash: "8588b82fadca8ea18d4cc268508119e0"
}
Frame {
msec: 6864
- hash: "4cfd9264af6935aca425da75ebb2d7cc"
+ hash: "e2cf9055220b1c8126423df30e3607ed"
}
Frame {
msec: 6880
- hash: "aee6547cb653cd2d56d07285d836149d"
+ hash: "d06e77ff2044ba3f6fc1664af5720a0a"
}
Frame {
msec: 6896
- hash: "969720f17eae51258e2e143e14bfa737"
+ hash: "b931ef84ecc38676d602638081b1f126"
}
Frame {
msec: 6912
@@ -1998,203 +1998,203 @@ VisualTest {
}
Frame {
msec: 7152
- hash: "beeaec4b983c970ae448e33047dfdfea"
+ hash: "b6a0ee0b24737bc0045ff3fb68cfe3ad"
}
Frame {
msec: 7168
- hash: "7c415ab1b7d8e25b71af75d3eec8ee4a"
+ hash: "b6a0ee0b24737bc0045ff3fb68cfe3ad"
}
Frame {
msec: 7184
- hash: "8913037e57b9a6a58b68f2d6e69b1bd1"
+ hash: "b6a0ee0b24737bc0045ff3fb68cfe3ad"
}
Frame {
msec: 7200
- hash: "19e59e9409fdaf90ccf75606b58688b7"
+ hash: "b6a0ee0b24737bc0045ff3fb68cfe3ad"
}
Frame {
msec: 7216
- hash: "1ae71ef5b1006f637bd8df0769af65a6"
+ hash: "b6a0ee0b24737bc0045ff3fb68cfe3ad"
}
Frame {
msec: 7232
- hash: "1f0aa8b368b2dbccafd54b923d8cce95"
+ hash: "b6a0ee0b24737bc0045ff3fb68cfe3ad"
}
Frame {
msec: 7248
- hash: "c5079fb25a8c80a995d7aa5fbbd91428"
+ hash: "d30ed063d99d02f6d8302847e83d60a1"
}
Frame {
msec: 7264
- hash: "59f41220fa5d23db298c9e94f115c17b"
+ hash: "30b128c6248cb35ee4c55e1c2129a19c"
}
Frame {
msec: 7280
- hash: "48259dfe8b266d9e7f50b187be98c3cb"
+ hash: "1ae71ef5b1006f637bd8df0769af65a6"
}
Frame {
msec: 7296
- hash: "f7554552598351c3b8dfcbe3ebc32b3b"
+ hash: "6bd6f0c35aeede01d1a8e42c81cd6fb8"
}
Frame {
msec: 7312
- hash: "219e9cd84d7e5c5c0e6cb80100aa3ab5"
+ hash: "ca90dcb70d416616dcae2df84956cff1"
}
Frame {
msec: 7328
- hash: "5578e870ee8ce00bce5a59bb25e3d0a9"
+ hash: "a33bc4f7c40fa3eb36803c20222d75f6"
}
Frame {
msec: 7344
- hash: "4d9cebbf750c03380694245e0e22ab94"
+ hash: "12430a710362b47fef8dfc022b789e07"
}
Frame {
msec: 7360
- hash: "a60a8032e97ed0a3caa05012c1283de5"
+ hash: "a18abef207f5f6bbd260ca98cce91380"
}
Frame {
msec: 7376
- hash: "3bee20b349a7e9d67f7770ede6da8673"
+ hash: "e853ea2eba5e3baeba0f43e57d2415ba"
}
Frame {
msec: 7392
- hash: "d8c34576c25fb8b5e4fa12680ac32e99"
+ hash: "294cff3e6d3a1101f76d2ecce14e11a1"
}
Frame {
msec: 7408
- hash: "cd1360aa7db7c3b2f2012dfc44de2198"
+ hash: "c38ee992a1b435c12a66e4d49d78c2ed"
}
Frame {
msec: 7424
- hash: "cd82782f63c9a7d21d51b3440c2f038b"
+ hash: "54775aed3a6283c1fa330d65de5bc70c"
}
Frame {
msec: 7440
- hash: "e59061967a841aa45607c0828b687527"
+ hash: "eba9a696d9ab1e8da7c6c59787d3f311"
}
Frame {
msec: 7456
- hash: "01962406c9aaf1aa8bf3ab49e30ddf5f"
+ hash: "2048cd8abb56be34f9e475d7f92b6153"
}
Frame {
msec: 7472
- hash: "5a5732a568189e598c7985ee806bc67e"
+ hash: "d56b4a04f1d2835a0852ea20e8e2f451"
}
Frame {
msec: 7488
- hash: "54775aed3a6283c1fa330d65de5bc70c"
+ hash: "f5afb489b7aee20b45c9f5eb5a9eb8d7"
}
Frame {
msec: 7504
- hash: "66640b4a5c1e68924b25de24e3c3f008"
+ hash: "26f25129f9d2c73a7a5168c73e299919"
}
Frame {
msec: 7520
- hash: "76999d3125f20ba47dbdff38ee722a8a"
+ hash: "6f23e3c4ec738903b5011cbee1141b00"
}
Frame {
msec: 7536
- hash: "5159c81533bee8825cff11910bcb90dc"
+ hash: "e10d4bf08980ea7d079a2f359ee62b95"
}
Frame {
msec: 7552
- hash: "ac0295495345987d1e000f6bb2436927"
+ hash: "eb0a656e8feabcb131e59c66b64f7d09"
}
Frame {
msec: 7568
- hash: "d56b4a04f1d2835a0852ea20e8e2f451"
+ hash: "94cfa3f71326f6e188fee32c0970de30"
}
Frame {
msec: 7584
- hash: "ae41fe23e2ab508d7642973c0d9d35b0"
+ hash: "8bc4274a3f0498d600405409f69c1d16"
}
Frame {
msec: 7600
- hash: "730ca01fbee6ec4928715ec52773c06c"
+ hash: "995cb12e1d07488ae4139d2c67552dc6"
}
Frame {
msec: 7616
- hash: "ad1fa52c617a2b119d61eb9fb7d58a82"
+ hash: "2d9d9f3fb43e2280b0dea054dc8d7dd4"
}
Frame {
msec: 7632
- hash: "c74321a822b515a393e8e218bd45e8e3"
+ hash: "dd68eb502e1fe114a24d902b50a5dff9"
}
Frame {
msec: 7648
- hash: "a9e2f3bee1d47166204c74bdf90cd8c8"
+ hash: "b2738b11e34c5d7840e9aacc443cc1f0"
}
Frame {
msec: 7664
- hash: "e10d4bf08980ea7d079a2f359ee62b95"
+ hash: "de148713c156476ca7c4021633596782"
}
Frame {
msec: 7680
- image: "gridview2.7.png"
+ hash: "0e273dbaaab76058b6e04a830bbd80d3"
}
Frame {
msec: 7696
- hash: "9f0ba6051e684e54ff4e36d980a7e600"
+ image: "gridview2.8.png"
}
Frame {
msec: 7712
- hash: "aa6268d8d7fb3d2b91db3e225e8c818a"
+ hash: "5dcad019a1c0eaaab381a7602e1914ff"
}
Frame {
msec: 7728
- hash: "8e547e55279b1929f42bf51e753f142e"
+ hash: "e046dc0869cc629de5037214af1d58f8"
}
Frame {
msec: 7744
- hash: "5386c71f8d6701379e177f161d714da2"
+ hash: "affc71688994d6b6763e78305ba1d6b3"
}
Frame {
msec: 7760
- hash: "a184e9e6012c72fc1aeaed9f98b0fb1e"
+ hash: "d5ec397fdf17bf864e4575543c535dad"
}
Frame {
msec: 7776
- hash: "777a6b70ca77c45e2e5e3914cc328dcb"
+ hash: "b37cb5816c2077b8018f78985b91fdeb"
}
Frame {
msec: 7792
- hash: "424f73f25a1e91126f951838d45adc3b"
+ hash: "a3060fa79b1f7f0d9e61ad8c69be19ed"
}
Frame {
msec: 7808
- hash: "3f7f2eb6b9a5d19fbfcd700baf566dfb"
+ hash: "236dcbaf20e11335efc64b2ce87b551d"
}
Frame {
msec: 7824
- hash: "c3c4c72b25c2295b82a5fd7454942f77"
+ hash: "09af1c488b56dc3c7c3893b024f6d53f"
}
Frame {
msec: 7840
- hash: "3b35e93d3eb9d28c5c03d6d353f805d2"
+ hash: "ef2bf66ac68002102476d3cfe4501cb7"
}
Frame {
msec: 7856
- hash: "5dcad019a1c0eaaab381a7602e1914ff"
+ hash: "165c02de63604aa118d9f8995e6b45af"
}
Frame {
msec: 7872
- hash: "602a5c569555767413bf445af44c744f"
+ hash: "fb790a0e4bc20afe24639dadf50a03c0"
}
Frame {
msec: 7888
- hash: "3e9facab95dae772f695b6f7c5175063"
+ hash: "881298b629aeaeb23fa9e9eb446912d2"
}
Frame {
msec: 7904
- hash: "0921220ec36ca7b25eaae699872a2006"
+ hash: "2175ff436c42616147b2e71b91e34060"
}
Frame {
msec: 7920
- hash: "1d5fa7fd630af62bcc805bdc6686df37"
+ hash: "85bc0cd40ddc08814a2c3677e7e43bcf"
}
Frame {
msec: 7936
- hash: "165c02de63604aa118d9f8995e6b45af"
+ hash: "33d81c39d16c6a326012499796e50e03"
}
Frame {
msec: 7952
@@ -2370,11 +2370,11 @@ VisualTest {
}
Frame {
msec: 8640
- image: "gridview2.8.png"
+ hash: "33d81c39d16c6a326012499796e50e03"
}
Frame {
msec: 8656
- hash: "33d81c39d16c6a326012499796e50e03"
+ image: "gridview2.9.png"
}
Frame {
msec: 8672
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.0.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.0.png
index 5b7b426369..dd992cc635 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.1.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.1.png
index 7c27310af8..dd992cc635 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.2.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.2.png
index cbfdb2312f..887d395dac 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.2.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.3.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.3.png
index 5b7b426369..055258def9 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.3.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.4.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.4.png
index 5af705ea05..dd992cc635 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.4.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.5.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.5.png
index af4395e3d2..d3d35afa1a 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.5.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.6.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.6.png
index cd12bc9ae8..2028c960ee 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.6.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.6.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.7.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.7.png
index 471c86b791..a667cf94b1 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.7.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.7.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.8.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.8.png
index 653905e2bb..2f0967dcb9 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.8.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.8.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.qml b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.qml
index b88bd8341e..001861d533 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/drag.qml
@@ -6,7 +6,7 @@ VisualTest {
}
Frame {
msec: 16
- hash: "668cc6d9d699b947a7c0f3ff4b26853f"
+ image: "drag.0.png"
}
Frame {
msec: 32
@@ -242,11 +242,11 @@ VisualTest {
}
Frame {
msec: 960
- image: "drag.0.png"
+ hash: "668cc6d9d699b947a7c0f3ff4b26853f"
}
Frame {
msec: 976
- hash: "668cc6d9d699b947a7c0f3ff4b26853f"
+ image: "drag.1.png"
}
Frame {
msec: 992
@@ -554,7 +554,7 @@ VisualTest {
}
Frame {
msec: 1920
- image: "drag.1.png"
+ hash: "a611a57ed2bdf4eaa5e13612346ecce7"
}
Mouse {
type: 5
@@ -566,7 +566,7 @@ VisualTest {
}
Frame {
msec: 1936
- hash: "978543d8f9688605625f40b960d79c28"
+ image: "drag.2.png"
}
Mouse {
type: 5
@@ -1426,7 +1426,7 @@ VisualTest {
}
Frame {
msec: 2880
- image: "drag.2.png"
+ hash: "9356ce797d12ae076af947cd0e658551"
}
Mouse {
type: 5
@@ -1446,7 +1446,7 @@ VisualTest {
}
Frame {
msec: 2896
- hash: "9356ce797d12ae076af947cd0e658551"
+ image: "drag.3.png"
}
Mouse {
type: 5
@@ -2290,7 +2290,7 @@ VisualTest {
}
Frame {
msec: 3840
- image: "drag.3.png"
+ hash: "668cc6d9d699b947a7c0f3ff4b26853f"
}
Mouse {
type: 5
@@ -2302,7 +2302,7 @@ VisualTest {
}
Frame {
msec: 3856
- hash: "668cc6d9d699b947a7c0f3ff4b26853f"
+ image: "drag.4.png"
}
Mouse {
type: 5
@@ -2962,7 +2962,7 @@ VisualTest {
}
Frame {
msec: 4800
- image: "drag.4.png"
+ hash: "c6d398d42d968763c7597728e86304f2"
}
Mouse {
type: 5
@@ -2974,7 +2974,7 @@ VisualTest {
}
Frame {
msec: 4816
- hash: "c0cadb7730838d553b146804c37506b0"
+ image: "drag.5.png"
}
Mouse {
type: 5
@@ -3850,7 +3850,7 @@ VisualTest {
}
Frame {
msec: 5760
- image: "drag.5.png"
+ hash: "f0454d80a51c5f2226bd45aba58dc1e9"
}
Mouse {
type: 5
@@ -3870,7 +3870,7 @@ VisualTest {
}
Frame {
msec: 5776
- hash: "7af87eb80fa9d87fe8d8b5e4a2fff5e1"
+ image: "drag.6.png"
}
Mouse {
type: 5
@@ -4730,7 +4730,7 @@ VisualTest {
}
Frame {
msec: 6720
- image: "drag.6.png"
+ hash: "bf4b18a73b53c0a554f9bb0ac32a465d"
}
Mouse {
type: 5
@@ -4742,7 +4742,7 @@ VisualTest {
}
Frame {
msec: 6736
- hash: "5e951eb6017a060287e398fcaf4aeba9"
+ image: "drag.7.png"
}
Mouse {
type: 5
@@ -5122,11 +5122,11 @@ VisualTest {
}
Frame {
msec: 7680
- image: "drag.7.png"
+ hash: "2c1ce07ab6ce0072f6cb205f1e5297e0"
}
Frame {
msec: 7696
- hash: "2c1ce07ab6ce0072f6cb205f1e5297e0"
+ image: "drag.8.png"
}
Frame {
msec: 7712
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.0.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.0.png
index c9536dc5bf..87305b348a 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.1.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.1.png
index c9536dc5bf..87305b348a 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.10.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.10.png
index 1d9a39cc63..87305b348a 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.10.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.10.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.11.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.11.png
index 8fd0a97391..b268c5cc79 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.11.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.11.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.12.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.12.png
index 2cc486c2ed..3926b9bea1 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.12.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.12.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.13.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.13.png
index c9536dc5bf..69561957eb 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.13.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.13.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.14.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.14.png
new file mode 100644
index 0000000000..87305b348a
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.14.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.2.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.2.png
index 903312b4e7..87305b348a 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.2.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.3.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.3.png
index 903312b4e7..1d126919ee 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.3.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.4.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.4.png
index 64d760a177..1d126919ee 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.4.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.5.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.5.png
index a45da4f120..7f76076f0a 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.5.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.6.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.6.png
index 6cb4d6f2c7..02c6af0635 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.6.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.6.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.7.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.7.png
index 6cb4d6f2c7..15f0ec5c73 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.7.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.7.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.8.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.8.png
index 97cb1753ac..15f0ec5c73 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.8.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.8.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.9.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.9.png
index c9536dc5bf..71bf9cd84b 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.9.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.9.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.qml b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.qml
index 50ef6e8e40..c862678292 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-flickable.qml
@@ -6,7 +6,7 @@ VisualTest {
}
Frame {
msec: 16
- hash: "cc1fd2f4c3be318052254a9b6be7a57b"
+ image: "mousearea-flickable.0.png"
}
Frame {
msec: 32
@@ -242,11 +242,11 @@ VisualTest {
}
Frame {
msec: 960
- image: "mousearea-flickable.0.png"
+ hash: "cc1fd2f4c3be318052254a9b6be7a57b"
}
Frame {
msec: 976
- hash: "cc1fd2f4c3be318052254a9b6be7a57b"
+ image: "mousearea-flickable.1.png"
}
Frame {
msec: 992
@@ -482,11 +482,11 @@ VisualTest {
}
Frame {
msec: 1920
- image: "mousearea-flickable.1.png"
+ hash: "cc1fd2f4c3be318052254a9b6be7a57b"
}
Frame {
msec: 1936
- hash: "cc1fd2f4c3be318052254a9b6be7a57b"
+ image: "mousearea-flickable.2.png"
}
Frame {
msec: 1952
@@ -730,11 +730,11 @@ VisualTest {
}
Frame {
msec: 2880
- image: "mousearea-flickable.2.png"
+ hash: "4a60ab820ca66548384b2257b21de8ec"
}
Frame {
msec: 2896
- hash: "4a60ab820ca66548384b2257b21de8ec"
+ image: "mousearea-flickable.3.png"
}
Frame {
msec: 2912
@@ -970,11 +970,11 @@ VisualTest {
}
Frame {
msec: 3840
- image: "mousearea-flickable.3.png"
+ hash: "4a60ab820ca66548384b2257b21de8ec"
}
Frame {
msec: 3856
- hash: "4a60ab820ca66548384b2257b21de8ec"
+ image: "mousearea-flickable.4.png"
}
Frame {
msec: 3872
@@ -1474,7 +1474,7 @@ VisualTest {
}
Frame {
msec: 4800
- image: "mousearea-flickable.4.png"
+ hash: "b66571ae47bf129be88dc66785a81a7d"
}
Mouse {
type: 5
@@ -1486,7 +1486,7 @@ VisualTest {
}
Frame {
msec: 4816
- hash: "7fb0ed99b7d751d1f335afd7c0de2f2c"
+ image: "mousearea-flickable.5.png"
}
Mouse {
type: 5
@@ -2090,11 +2090,11 @@ VisualTest {
}
Frame {
msec: 5760
- image: "mousearea-flickable.5.png"
+ hash: "d75a43305e2884759ca41d7b1cbadf52"
}
Frame {
msec: 5776
- hash: "d75a43305e2884759ca41d7b1cbadf52"
+ image: "mousearea-flickable.6.png"
}
Frame {
msec: 5792
@@ -2338,11 +2338,11 @@ VisualTest {
}
Frame {
msec: 6720
- image: "mousearea-flickable.6.png"
+ hash: "037386eb30a5e8d53a20a11258ee0f60"
}
Frame {
msec: 6736
- hash: "037386eb30a5e8d53a20a11258ee0f60"
+ image: "mousearea-flickable.7.png"
}
Frame {
msec: 6752
@@ -2578,11 +2578,11 @@ VisualTest {
}
Frame {
msec: 7680
- image: "mousearea-flickable.7.png"
+ hash: "037386eb30a5e8d53a20a11258ee0f60"
}
Frame {
msec: 7696
- hash: "037386eb30a5e8d53a20a11258ee0f60"
+ image: "mousearea-flickable.8.png"
}
Frame {
msec: 7712
@@ -3178,7 +3178,7 @@ VisualTest {
}
Frame {
msec: 8640
- image: "mousearea-flickable.8.png"
+ hash: "524db6ce45674c777d72f9206415be2f"
}
Mouse {
type: 5
@@ -3190,7 +3190,7 @@ VisualTest {
}
Frame {
msec: 8656
- hash: "da5c33ee9e9e1d9aaa7d5efa83b8bf69"
+ image: "mousearea-flickable.9.png"
}
Mouse {
type: 5
@@ -3546,11 +3546,11 @@ VisualTest {
}
Frame {
msec: 9600
- image: "mousearea-flickable.9.png"
+ hash: "cc1fd2f4c3be318052254a9b6be7a57b"
}
Frame {
msec: 9616
- hash: "cc1fd2f4c3be318052254a9b6be7a57b"
+ image: "mousearea-flickable.10.png"
}
Frame {
msec: 9632
@@ -3794,11 +3794,11 @@ VisualTest {
}
Frame {
msec: 10560
- image: "mousearea-flickable.10.png"
+ hash: "90cdfe8920f115fd55cde6fdbd95e867"
}
Frame {
msec: 10576
- hash: "90cdfe8920f115fd55cde6fdbd95e867"
+ image: "mousearea-flickable.11.png"
}
Frame {
msec: 10592
@@ -4346,7 +4346,7 @@ VisualTest {
}
Frame {
msec: 11520
- image: "mousearea-flickable.11.png"
+ hash: "72e75cfa62993593303b25cbff4af0e6"
}
Mouse {
type: 5
@@ -4366,7 +4366,7 @@ VisualTest {
}
Frame {
msec: 11536
- hash: "05b3013c9e42ed9ced7009d2e2999357"
+ image: "mousearea-flickable.12.png"
}
Mouse {
type: 5
@@ -4858,11 +4858,11 @@ VisualTest {
}
Frame {
msec: 12480
- image: "mousearea-flickable.12.png"
+ hash: "86b32befe0dada5bdce82a7dd14777ce"
}
Frame {
msec: 12496
- hash: "a569789b082296415321ba11c859abe5"
+ image: "mousearea-flickable.13.png"
}
Frame {
msec: 12512
@@ -5106,11 +5106,11 @@ VisualTest {
}
Frame {
msec: 13440
- image: "mousearea-flickable.13.png"
+ hash: "cc1fd2f4c3be318052254a9b6be7a57b"
}
Frame {
msec: 13456
- hash: "cc1fd2f4c3be318052254a9b6be7a57b"
+ image: "mousearea-flickable.14.png"
}
Frame {
msec: 13472
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.0.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.0.png
new file mode 100644
index 0000000000..e2e90d2b85
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.1.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.1.png
new file mode 100644
index 0000000000..e2e90d2b85
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.10.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.10.png
new file mode 100644
index 0000000000..93cf54c7bf
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.10.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.11.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.11.png
new file mode 100644
index 0000000000..93cf54c7bf
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.11.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.12.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.12.png
new file mode 100644
index 0000000000..93cf54c7bf
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.12.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.13.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.13.png
new file mode 100644
index 0000000000..93cf54c7bf
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.13.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.14.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.14.png
new file mode 100644
index 0000000000..93cf54c7bf
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.14.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.15.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.15.png
new file mode 100644
index 0000000000..93cf54c7bf
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.15.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.2.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.2.png
new file mode 100644
index 0000000000..25facec9df
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.3.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.3.png
new file mode 100644
index 0000000000..25facec9df
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.4.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.4.png
new file mode 100644
index 0000000000..25facec9df
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.5.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.5.png
new file mode 100644
index 0000000000..630b14aa24
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.6.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.6.png
new file mode 100644
index 0000000000..630b14aa24
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.6.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.7.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.7.png
new file mode 100644
index 0000000000..630b14aa24
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.7.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.8.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.8.png
new file mode 100644
index 0000000000..630b14aa24
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.8.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.9.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.9.png
new file mode 100644
index 0000000000..93cf54c7bf
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.9.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.qml b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.qml
index 433fd82242..2daeebcc5f 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/mousearea-visual.qml
@@ -6,7 +6,7 @@ VisualTest {
}
Frame {
msec: 16
- hash: "1121bb51fc2d4c5c7ef3ae2c44794b49"
+ image: "mousearea-visual.0.png"
}
Frame {
msec: 32
@@ -242,11 +242,11 @@ VisualTest {
}
Frame {
msec: 960
- image: "mouseregion.0.png"
+ hash: "1121bb51fc2d4c5c7ef3ae2c44794b49"
}
Frame {
msec: 976
- hash: "1121bb51fc2d4c5c7ef3ae2c44794b49"
+ image: "mousearea-visual.1.png"
}
Frame {
msec: 992
@@ -634,7 +634,7 @@ VisualTest {
}
Frame {
msec: 1920
- image: "mouseregion.1.png"
+ hash: "73f1639b9e2164c7b974042934c0d151"
}
Mouse {
type: 5
@@ -654,7 +654,7 @@ VisualTest {
}
Frame {
msec: 1936
- hash: "73f1639b9e2164c7b974042934c0d151"
+ image: "mousearea-visual.2.png"
}
Mouse {
type: 5
@@ -1002,11 +1002,11 @@ VisualTest {
}
Frame {
msec: 2880
- image: "mouseregion.2.png"
+ hash: "73f1639b9e2164c7b974042934c0d151"
}
Frame {
msec: 2896
- hash: "73f1639b9e2164c7b974042934c0d151"
+ image: "mousearea-visual.3.png"
}
Mouse {
type: 5
@@ -1386,11 +1386,11 @@ VisualTest {
}
Frame {
msec: 3840
- image: "mouseregion.3.png"
+ hash: "73f1639b9e2164c7b974042934c0d151"
}
Frame {
msec: 3856
- hash: "73f1639b9e2164c7b974042934c0d151"
+ image: "mousearea-visual.4.png"
}
Frame {
msec: 3872
@@ -1698,7 +1698,7 @@ VisualTest {
}
Frame {
msec: 4800
- image: "mouseregion.4.png"
+ hash: "12edb0902e4d480c9052b00edc1a0a42"
}
Mouse {
type: 5
@@ -1718,7 +1718,7 @@ VisualTest {
}
Frame {
msec: 4816
- hash: "12edb0902e4d480c9052b00edc1a0a42"
+ image: "mousearea-visual.5.png"
}
Mouse {
type: 5
@@ -2202,11 +2202,11 @@ VisualTest {
}
Frame {
msec: 5760
- image: "mouseregion.5.png"
+ hash: "12edb0902e4d480c9052b00edc1a0a42"
}
Frame {
msec: 5776
- hash: "12edb0902e4d480c9052b00edc1a0a42"
+ image: "mousearea-visual.6.png"
}
Frame {
msec: 5792
@@ -2474,11 +2474,11 @@ VisualTest {
}
Frame {
msec: 6720
- image: "mouseregion.6.png"
+ hash: "12edb0902e4d480c9052b00edc1a0a42"
}
Frame {
msec: 6736
- hash: "12edb0902e4d480c9052b00edc1a0a42"
+ image: "mousearea-visual.7.png"
}
Mouse {
type: 4
@@ -2738,11 +2738,11 @@ VisualTest {
}
Frame {
msec: 7680
- image: "mouseregion.7.png"
+ hash: "12edb0902e4d480c9052b00edc1a0a42"
}
Frame {
msec: 7696
- hash: "12edb0902e4d480c9052b00edc1a0a42"
+ image: "mousearea-visual.8.png"
}
Frame {
msec: 7712
@@ -3082,7 +3082,7 @@ VisualTest {
}
Frame {
msec: 8640
- image: "mouseregion.8.png"
+ hash: "194ebac4ae7d95bf427f8161885a13e1"
}
Mouse {
type: 5
@@ -3102,7 +3102,7 @@ VisualTest {
}
Frame {
msec: 8656
- hash: "194ebac4ae7d95bf427f8161885a13e1"
+ image: "mousearea-visual.9.png"
}
Mouse {
type: 5
@@ -3538,7 +3538,7 @@ VisualTest {
}
Frame {
msec: 9600
- image: "mouseregion.9.png"
+ hash: "194ebac4ae7d95bf427f8161885a13e1"
}
Mouse {
type: 5
@@ -3550,7 +3550,7 @@ VisualTest {
}
Frame {
msec: 9616
- hash: "194ebac4ae7d95bf427f8161885a13e1"
+ image: "mousearea-visual.10.png"
}
Mouse {
type: 5
@@ -4418,7 +4418,7 @@ VisualTest {
}
Frame {
msec: 10560
- image: "mouseregion.10.png"
+ hash: "194ebac4ae7d95bf427f8161885a13e1"
}
Mouse {
type: 5
@@ -4438,7 +4438,7 @@ VisualTest {
}
Frame {
msec: 10576
- hash: "194ebac4ae7d95bf427f8161885a13e1"
+ image: "mousearea-visual.11.png"
}
Frame {
msec: 10592
@@ -4690,11 +4690,11 @@ VisualTest {
}
Frame {
msec: 11520
- image: "mouseregion.11.png"
+ hash: "194ebac4ae7d95bf427f8161885a13e1"
}
Frame {
msec: 11536
- hash: "194ebac4ae7d95bf427f8161885a13e1"
+ image: "mousearea-visual.12.png"
}
Frame {
msec: 11552
@@ -4978,11 +4978,11 @@ VisualTest {
}
Frame {
msec: 12480
- image: "mouseregion.12.png"
+ hash: "194ebac4ae7d95bf427f8161885a13e1"
}
Frame {
msec: 12496
- hash: "194ebac4ae7d95bf427f8161885a13e1"
+ image: "mousearea-visual.13.png"
}
Frame {
msec: 12512
@@ -5314,11 +5314,11 @@ VisualTest {
}
Frame {
msec: 13440
- image: "mouseregion.13.png"
+ hash: "194ebac4ae7d95bf427f8161885a13e1"
}
Frame {
msec: 13456
- hash: "194ebac4ae7d95bf427f8161885a13e1"
+ image: "mousearea-visual.14.png"
}
Frame {
msec: 13472
@@ -5730,11 +5730,11 @@ VisualTest {
}
Frame {
msec: 14400
- image: "mouseregion.14.png"
+ hash: "194ebac4ae7d95bf427f8161885a13e1"
}
Frame {
msec: 14416
- hash: "194ebac4ae7d95bf427f8161885a13e1"
+ image: "mousearea-visual.15.png"
}
Frame {
msec: 14432
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.0.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.0.png
new file mode 100644
index 0000000000..793fb0f974
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.1.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.1.png
new file mode 100644
index 0000000000..5935b4539a
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.2.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.2.png
new file mode 100644
index 0000000000..a20526640d
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.3.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.3.png
new file mode 100644
index 0000000000..3d81ff25ee
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.4.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.4.png
new file mode 100644
index 0000000000..ee2076e137
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.5.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.5.png
new file mode 100644
index 0000000000..9017124d7f
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.6.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.6.png
new file mode 100644
index 0000000000..216dd7e93c
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.6.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.7.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.7.png
new file mode 100644
index 0000000000..27e8480bd9
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.7.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.8.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.8.png
new file mode 100644
index 0000000000..6b911c5973
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.8.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.9.png b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.9.png
new file mode 100644
index 0000000000..01858a5578
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.9.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.qml b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.qml
new file mode 100644
index 0000000000..cec1558abd
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/data/nested.qml
@@ -0,0 +1,5039 @@
+import Qt.VisualTest 4.7
+
+VisualTest {
+ Frame {
+ msec: 0
+ }
+ Frame {
+ msec: 16
+ image: "nested.0.png"
+ }
+ Frame {
+ msec: 32
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 48
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 64
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 80
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 96
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 112
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 128
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 144
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 160
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 176
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 192
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 208
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 224
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 240
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 256
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 272
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 288
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 304
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 320
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 336
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 352
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 368
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 384
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 400
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 416
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 432
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 448
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 464
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 480
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 496
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 512
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 528
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 544
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 560
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 576
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 592
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 608
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 624
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 640
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 656
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 672
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 688
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 704
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 720
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 736
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 752
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 768
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 784
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 800
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 816
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 832
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 848
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Frame {
+ msec: 864
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 25; y: 62
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 880
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 26; y: 62
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 896
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 27; y: 62
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 912
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 28; y: 62
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 29; y: 62
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 928
+ hash: "2400cadaaa467cbfb0c7d2ace8137179"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 30; y: 62
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 33; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 944
+ hash: "f5aa6257fd80c1e383bc2db84e41c354"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 35; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 40; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 960
+ hash: "e96076794d3efc62a8fe2d2e543e97c7"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 42; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 48; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 976
+ image: "nested.1.png"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 51; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 58; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 992
+ hash: "ab955f6c6b210b66b27e244dc2150860"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 66; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 70; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1008
+ hash: "b655247e73b0b8357dc9d355ba6f49a0"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 79; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 83; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1024
+ hash: "08b67b7e28990cac8c9bd354b7d87698"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 91; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 95; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1040
+ hash: "69cecfb41899e13c0bc5acb6f9bc666d"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 104; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 107; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1056
+ hash: "8d1f0cd85fd3f2654f7c30a6d9ec2b99"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 115; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 122; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1072
+ hash: "f8ddda87cfcf5dc9d8c6e940fbd295f3"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 126; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 133; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1088
+ hash: "ab9d942c47a2cca5531f7b67df034161"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 136; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 143; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1104
+ hash: "7ca5a03fdfac44c389315c3928631a2a"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 146; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 151; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1120
+ hash: "ade955ed9d85fbbe72cf18bbc541c8bf"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 153; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 158; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1136
+ hash: "6ad4afa3e3fcb578946fccbf4896761c"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 162; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 163; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1152
+ hash: "3ebe78e37c1c66d0b8fc86c8191e39de"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 165; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 166; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1168
+ hash: "6450917cc89a553cf509265eaf318efb"
+ }
+ Frame {
+ msec: 1184
+ hash: "6450917cc89a553cf509265eaf318efb"
+ }
+ Frame {
+ msec: 1200
+ hash: "6450917cc89a553cf509265eaf318efb"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 166; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1216
+ hash: "6450917cc89a553cf509265eaf318efb"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 164; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 161; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1232
+ hash: "adfe54d5d28f7caf9ace117fd3573444"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 159; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 156; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1248
+ hash: "f4963636cc4fbd8bfe6baf10540ed7e7"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 154; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 149; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1264
+ hash: "1c2d2edb9214cc3857aa221330ee28ba"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 143; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 139; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1280
+ hash: "750226c90e6c6cd0b3bdd3c3dc8da18f"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 131; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 126; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1296
+ hash: "b6b5d177ab531460dc125afa82489a1d"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 115; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 111; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1312
+ hash: "62d411a7b6c404393e4bfafab9c638a3"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 100; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 91; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1328
+ hash: "e355997b3decd4deb686fece59c33c7c"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 86; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 76; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1344
+ hash: "2ab73c8aac6a0e321686e97c9bb28f28"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 71; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 61; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1360
+ hash: "55a887f9f45f71beb6b723191eb60a2f"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 56; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 50; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1376
+ hash: "b2d49e34362994739d14fb8231ff82d6"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 47; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 43; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1392
+ hash: "3964796876870035794b41501991b527"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 41; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 40; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1408
+ hash: "e96076794d3efc62a8fe2d2e543e97c7"
+ }
+ Frame {
+ msec: 1424
+ hash: "e96076794d3efc62a8fe2d2e543e97c7"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 41; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1440
+ hash: "7e524b3c43a987503ef102bdb9f11701"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 42; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1456
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Frame {
+ msec: 1472
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Frame {
+ msec: 1488
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Frame {
+ msec: 1504
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Frame {
+ msec: 1520
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Frame {
+ msec: 1536
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Frame {
+ msec: 1552
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 42; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1568
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Frame {
+ msec: 1584
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Frame {
+ msec: 1600
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Frame {
+ msec: 1616
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Frame {
+ msec: 1632
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Frame {
+ msec: 1648
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Frame {
+ msec: 1664
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Frame {
+ msec: 1680
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Frame {
+ msec: 1696
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Frame {
+ msec: 1712
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Frame {
+ msec: 1728
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Frame {
+ msec: 1744
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Frame {
+ msec: 1760
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Frame {
+ msec: 1776
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Frame {
+ msec: 1792
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Frame {
+ msec: 1808
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Frame {
+ msec: 1824
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Frame {
+ msec: 1840
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Frame {
+ msec: 1856
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Frame {
+ msec: 1872
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Frame {
+ msec: 1888
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Frame {
+ msec: 1904
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Frame {
+ msec: 1920
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Frame {
+ msec: 1936
+ image: "nested.2.png"
+ }
+ Frame {
+ msec: 1952
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 38; y: 56
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1968
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 39; y: 57
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1984
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 39; y: 59
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 39; y: 60
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2000
+ hash: "2a7c13e97c21e298541bb5ab8169ff13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 40; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 40; y: 65
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2016
+ hash: "9178754b825d60b2174ed9431ea80586"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 41; y: 68
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 41; y: 70
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 45; y: 79
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2032
+ hash: "89eff8fa9f8710d7cbc50b8d4b751148"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 47; y: 84
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 48; y: 86
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2048
+ hash: "cdae8b46ecfc2b0c90264c120156cc46"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 50; y: 91
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 51; y: 93
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2064
+ hash: "cf35919630eab647a28eb91d8a441704"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 53; y: 99
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 53; y: 102
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2080
+ hash: "283256d50da8c855c50d5f8813d37afd"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 54; y: 107
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 54; y: 109
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2096
+ hash: "2560cd67d507bc24c1000187f645531c"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 54; y: 113
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 54; y: 117
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2112
+ hash: "6f6f7c299c4516c5231f5bfcd39b6db3"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 54; y: 119
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 54; y: 122
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2128
+ hash: "e7989524238996cf59f420f4edf8f982"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 54; y: 124
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 54; y: 126
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2144
+ hash: "34d8d456848807e854bcb25ffbde37d4"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 54; y: 127
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 54; y: 130
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2160
+ hash: "433bd3983804b07484d38af2723f519e"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 53; y: 132
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 53; y: 134
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2176
+ hash: "510e534a8a7b88041f7544e7e4992b8f"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 53; y: 137
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 52; y: 139
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2192
+ hash: "25f43c457a5bf2b70a66ce91685ad4dc"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 51; y: 141
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 51; y: 142
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2208
+ hash: "4119ab90627359420e25220618b76a69"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 51; y: 145
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 50; y: 146
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2224
+ hash: "8a3cc888e96cf3e26e369723b442baf1"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 49; y: 147
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 49; y: 150
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2240
+ hash: "980552e8ff9d87ccb40127b06b0f846f"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 48; y: 151
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 48; y: 153
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2256
+ hash: "9ee23fc7cbca4467f984073d2af7cdf6"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 48; y: 154
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 48; y: 155
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2272
+ hash: "032d65792ac867c9b9acef05bd993c54"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 48; y: 156
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2288
+ hash: "be2f8d5a64034e75e23527c486e33029"
+ }
+ Frame {
+ msec: 2304
+ hash: "be2f8d5a64034e75e23527c486e33029"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 49; y: 155
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2320
+ hash: "3f65505e4d1f8534c9123b3dea15d43e"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 49; y: 154
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 49; y: 152
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2336
+ hash: "e8b1799cf1926cb3b6cbf3adee80cffe"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 49; y: 149
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 49; y: 147
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2352
+ hash: "31155b14cc0d3d47bbef4e199fdfcb46"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 51; y: 140
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 52; y: 132
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2368
+ hash: "b89745a9a60a7ebeb1de0a7f96ad2ac3"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 53; y: 128
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 57; y: 118
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2384
+ hash: "7e99fa1eba369d45f10778fe02356f09"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 59; y: 114
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 64; y: 103
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2400
+ hash: "cd123f6b332f38f43abbf01469a41301"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 67; y: 98
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 71; y: 90
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2416
+ hash: "353c0602dd2b670e19988117172855fc"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 76; y: 81
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 78; y: 78
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2432
+ hash: "20df9d19fd2113fa8f8023d5b4328dc5"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 81; y: 70
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 82; y: 67
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2448
+ hash: "10b34a758d5b3790dd36c9d95c47b157"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 84; y: 62
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 85; y: 60
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2464
+ hash: "98a483e1eaa9145fd277fd85a9b0cf03"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 87; y: 57
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 88; y: 55
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2480
+ hash: "e92edd52ff1ee78456fa1947a46e6570"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 89; y: 53
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 91; y: 52
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2496
+ hash: "877384496d967f5f0ab1c817a2b316d6"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 92; y: 51
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 93; y: 51
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2512
+ hash: "15673570ffe9a391f9214601ac9dc86c"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 94; y: 50
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 95; y: 50
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2528
+ hash: "4b7f0094b19a4495bf913d2994889497"
+ }
+ Frame {
+ msec: 2544
+ hash: "4b7f0094b19a4495bf913d2994889497"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 95; y: 49
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2560
+ hash: "4b7f0094b19a4495bf913d2994889497"
+ }
+ Frame {
+ msec: 2576
+ hash: "4b7f0094b19a4495bf913d2994889497"
+ }
+ Frame {
+ msec: 2592
+ hash: "4b7f0094b19a4495bf913d2994889497"
+ }
+ Frame {
+ msec: 2608
+ hash: "4b7f0094b19a4495bf913d2994889497"
+ }
+ Frame {
+ msec: 2624
+ hash: "4b7f0094b19a4495bf913d2994889497"
+ }
+ Frame {
+ msec: 2640
+ hash: "4b7f0094b19a4495bf913d2994889497"
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 95; y: 49
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2656
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 2672
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 2688
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 2704
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 2720
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 2736
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 2752
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 2768
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 2784
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 2800
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 2816
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 2832
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 2848
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 2864
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 2880
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 2896
+ image: "nested.3.png"
+ }
+ Frame {
+ msec: 2912
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 2928
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 2944
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 2960
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 2976
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 2992
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 3008
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 3024
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 3040
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 3056
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 3072
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 3088
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 3104
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 3120
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 3136
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 3152
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 3168
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 3184
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 3200
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 3216
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 3232
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 156; y: 74
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3248
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Frame {
+ msec: 3264
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 156; y: 73
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 157; y: 73
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3280
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 158; y: 73
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 160; y: 73
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3296
+ hash: "2994e98b8ea9a6883a7324e7e848345c"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 161; y: 73
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 163; y: 73
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3312
+ hash: "df6cf21e99177a436e356f818996070c"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 166; y: 73
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 171; y: 74
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3328
+ hash: "86f5e3fee147f47edd4a6d042aff0301"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 178; y: 75
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 181; y: 75
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3344
+ hash: "589c1418a9179c868d904b1a5169a11b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 189; y: 75
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 193; y: 75
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3360
+ hash: "3141ad77d193e145b749759070e1e6ef"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 200; y: 75
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 204; y: 75
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3376
+ hash: "5e34d4deeb6d80b336cacea39797e0ca"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 211; y: 75
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 217; y: 75
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3392
+ hash: "b8795d844982bcf60a6713f91717648f"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 220; y: 75
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 224; y: 75
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3408
+ hash: "857c63b24057ee0186c5136eddb71cb1"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 226; y: 75
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 227; y: 76
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3424
+ hash: "49222ed0d1ebc8759d0a1dc65c3beec6"
+ }
+ Frame {
+ msec: 3440
+ hash: "49222ed0d1ebc8759d0a1dc65c3beec6"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 227; y: 77
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 226; y: 77
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3456
+ hash: "751847708a468f4f3e64e7cb5ebd1351"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 225; y: 78
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 224; y: 78
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3472
+ hash: "4016f80a5219fcba6480645f71998d71"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 221; y: 80
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 220; y: 80
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3488
+ hash: "beef05cd2a3d20bc66978fa4f0ac1d12"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 216; y: 82
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 214; y: 84
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3504
+ hash: "e50a2661e93d34b55c8d2d39abc77e5a"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 209; y: 86
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 206; y: 86
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3520
+ hash: "7beccbc2f091350bb5d9de1e2443021d"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 200; y: 88
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 192; y: 89
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3536
+ hash: "1d39570bf07392f56b6dd24b0bf9e7bc"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 188; y: 90
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 180; y: 91
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3552
+ hash: "62565b3e5aad3979b408207bbf36e615"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 176; y: 92
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 167; y: 92
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3568
+ hash: "d9c6004921847fef16bb8c2f5d6b3b7d"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 162; y: 92
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 152; y: 92
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3584
+ hash: "53da27301ad97ae52c65928615ec0cd7"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 142; y: 92
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 137; y: 90
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3600
+ hash: "9772a776e84515984b4eec70dbd1c5a7"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 125; y: 88
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 119; y: 88
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3616
+ hash: "9caa6583a716443c13e8fef3f2923d6e"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 109; y: 86
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 104; y: 85
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3632
+ hash: "f162a18b2d3f0d5f6f01fc373c016f68"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 98; y: 84
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 96; y: 84
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3648
+ hash: "58976e8e31beddf881c7cfa3ede54c09"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 94; y: 84
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 92; y: 83
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3664
+ hash: "6625f7adb097bc170024083c42d74b4b"
+ }
+ Frame {
+ msec: 3680
+ hash: "6625f7adb097bc170024083c42d74b4b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 92; y: 82
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3696
+ hash: "1d63f09ca27e9d70c3c0ea923a6cfba4"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 93; y: 82
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3712
+ hash: "1d63f09ca27e9d70c3c0ea923a6cfba4"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 94; y: 81
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 96; y: 81
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3728
+ hash: "a23c75fcaa0a28adb944bf192af65bff"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 98; y: 81
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 100; y: 81
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3744
+ hash: "2b90fe8937dcc39d1d6add305cf36043"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 107; y: 81
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 111; y: 81
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3760
+ hash: "7da82cfaf0f826ca9a41128278b6b09c"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 118; y: 81
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 122; y: 81
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3776
+ hash: "a3f69d13d38b336fda33a86899564996"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 129; y: 80
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 135; y: 79
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3792
+ hash: "dc562319e1d332ba34ac94bfc0c39c5e"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 138; y: 79
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 140; y: 78
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3808
+ hash: "756482bee292668f56d813847b0ccd53"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 141; y: 77
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 142; y: 76
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3824
+ hash: "06d250c4d18a70f8f7b1c10e22a1bc4c"
+ }
+ Frame {
+ msec: 3840
+ hash: "06d250c4d18a70f8f7b1c10e22a1bc4c"
+ }
+ Frame {
+ msec: 3856
+ image: "nested.4.png"
+ }
+ Frame {
+ msec: 3872
+ hash: "06d250c4d18a70f8f7b1c10e22a1bc4c"
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 142; y: 76
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3888
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 3904
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 3920
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 3936
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 3952
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 3968
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 3984
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4000
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4016
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4032
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4048
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4064
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4080
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4096
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4112
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4128
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4144
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4160
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4176
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4192
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4208
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4224
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4240
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4256
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4272
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4288
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4304
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4320
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4336
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4352
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4368
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4384
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4400
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4416
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4432
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4448
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4464
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4480
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4496
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4512
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4528
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4544
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 16; y: 46
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4560
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 4576
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 16; y: 47
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 16; y: 48
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4592
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 16; y: 49
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 17; y: 50
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4608
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 17; y: 55
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 18; y: 56
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4624
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 20; y: 61
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 20; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4640
+ hash: "ff1f86b47e0d1db5db7d939df8349931"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 22; y: 70
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 23; y: 73
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4656
+ hash: "f13393a4556e9e73c33f2bb74d8f7794"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 26; y: 80
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 28; y: 84
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4672
+ hash: "8c9aa01516437184eb17d89348cca004"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 33; y: 91
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 40; y: 99
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4688
+ hash: "8b6848cb722ff5ec02d957da1ee687e5"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 44; y: 102
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 53; y: 109
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4704
+ hash: "552fde584d128f511788670031d79dd2"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 58; y: 112
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 64; y: 117
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4720
+ hash: "55dc3a4242b46e602f823c0305e67ad2"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 68; y: 118
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 71; y: 120
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4736
+ hash: "603b9b2ed6ff4273c3ab1cbe32afb19e"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 73; y: 120
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 73; y: 120
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4752
+ hash: "157eda24ea8452a208aa7a6a22639c73"
+ }
+ Frame {
+ msec: 4768
+ hash: "157eda24ea8452a208aa7a6a22639c73"
+ }
+ Frame {
+ msec: 4784
+ hash: "c5005b83816c18b67448dfbccd0ab0b2"
+ }
+ Frame {
+ msec: 4800
+ hash: "878512df863e5d60437b85fbd2a32eb1"
+ }
+ Frame {
+ msec: 4816
+ image: "nested.5.png"
+ }
+ Frame {
+ msec: 4832
+ hash: "02ab69b67b746ec0021295992a03ada1"
+ }
+ Frame {
+ msec: 4848
+ hash: "c621382766d7bacab87055a73623a8ce"
+ }
+ Frame {
+ msec: 4864
+ hash: "a8d1be78741d9afd88363bd19f1cbc6b"
+ }
+ Frame {
+ msec: 4880
+ hash: "5a70275ff656766d73638d4dd4db4492"
+ }
+ Frame {
+ msec: 4896
+ hash: "892ea0a00553524b79889d437eac9b6f"
+ }
+ Frame {
+ msec: 4912
+ hash: "d818258bffc065430902ffa8f5668f86"
+ }
+ Frame {
+ msec: 4928
+ hash: "6b844523522ace7545705ffb8ffe1da3"
+ }
+ Frame {
+ msec: 4944
+ hash: "3906097bc49bad199b52c99dbf87f98f"
+ }
+ Frame {
+ msec: 4960
+ hash: "a2bd859b5ca7f4fac8d62b1c9ab76aad"
+ }
+ Frame {
+ msec: 4976
+ hash: "f374673e3511b1df8b50ff7ef6002b3a"
+ }
+ Frame {
+ msec: 4992
+ hash: "c2eecfadd19418f469b1ab53a3ecae70"
+ }
+ Frame {
+ msec: 5008
+ hash: "2b481965ece0f2e1795ef56aa5d6a752"
+ }
+ Frame {
+ msec: 5024
+ hash: "c294f28000348365a2c37265132efdb5"
+ }
+ Frame {
+ msec: 5040
+ hash: "c294f28000348365a2c37265132efdb5"
+ }
+ Frame {
+ msec: 5056
+ hash: "4e9c18eab469b2da0cb92526d3d54501"
+ }
+ Frame {
+ msec: 5072
+ hash: "4e9c18eab469b2da0cb92526d3d54501"
+ }
+ Frame {
+ msec: 5088
+ hash: "4e9c18eab469b2da0cb92526d3d54501"
+ }
+ Frame {
+ msec: 5104
+ hash: "4e9c18eab469b2da0cb92526d3d54501"
+ }
+ Frame {
+ msec: 5120
+ hash: "3836449b99d88e2dea9a0eb9417faca5"
+ }
+ Frame {
+ msec: 5136
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 5152
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 5168
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 5184
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 5200
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 5216
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 5232
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 5248
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 5264
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 5280
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 5296
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 5312
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 5328
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 5344
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 5360
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 5376
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 5392
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 5408
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 5424
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 5440
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 5456
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 5472
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 5488
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 5504
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 5520
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 5536
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 5552
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 5568
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 5584
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 5600
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 5616
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Frame {
+ msec: 5632
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 20; y: 238
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 21; y: 238
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5648
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 22; y: 239
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 23; y: 239
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5664
+ hash: "42dc501eb5a34843ef0a8977ff029054"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 27; y: 240
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 29; y: 240
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5680
+ hash: "b56d132ac881e27d308009fb9a9d2d50"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 33; y: 241
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 36; y: 241
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5696
+ hash: "6c65fca03ea127d554f15c80da76f21f"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 42; y: 242
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 45; y: 243
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5712
+ hash: "e5d8939135d0e964609a09a437af58bc"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 53; y: 243
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 61; y: 243
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5728
+ hash: "ab60a45ac475ef8d1177d831a6572d1f"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 66; y: 243
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 75; y: 243
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5744
+ hash: "78b2e0c7dd8b8bcbd573dac79ff815e4"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 79; y: 243
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 89; y: 243
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5760
+ hash: "ef9e89650d8e3d572285e2a2e2b09166"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 95; y: 243
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 106; y: 243
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5776
+ image: "nested.6.png"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 118; y: 243
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 126; y: 243
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5792
+ hash: "b83136fa3769e30ea47097b489e8f1dc"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 137; y: 241
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 143; y: 240
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5808
+ hash: "fb892905b790a061ce5985c927db3cf5"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 154; y: 238
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 159; y: 237
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5824
+ hash: "bc4358e21d2d31942e776adfd32ef1c6"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 170; y: 235
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 184; y: 234
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5840
+ hash: "b42380a7fcf5e2fbfe4dddbe86ad7287"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 191; y: 232
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 201; y: 231
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5856
+ hash: "4b3c12beb43a77ebaf458804b03c7b52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 205; y: 231
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 208; y: 230
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5872
+ hash: "a18be4d4ab28c0fd0c16696c4ecc03ef"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 209; y: 230
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 209; y: 229
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5888
+ hash: "c5f100bc4b14e958c7d9bbff84e0a934"
+ }
+ Frame {
+ msec: 5904
+ hash: "c5f100bc4b14e958c7d9bbff84e0a934"
+ }
+ Frame {
+ msec: 5920
+ hash: "c5f100bc4b14e958c7d9bbff84e0a934"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 208; y: 229
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5936
+ hash: "a18be4d4ab28c0fd0c16696c4ecc03ef"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 207; y: 229
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 207; y: 230
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5952
+ hash: "a8b23e7dad1bdbaa3452335be0f07658"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 206; y: 230
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 204; y: 231
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5968
+ hash: "4c1feb559a11912b06ed521bebba43d0"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 200; y: 232
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 194; y: 232
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5984
+ hash: "ffb97bcedf72e02616272c1cad5c38d7"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 190; y: 232
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 181; y: 231
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6000
+ hash: "99498ed9b4d519a2f842d407abdef90a"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 175; y: 230
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 163; y: 229
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6016
+ hash: "1ca3f012adab899eba1dcb63d048345f"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 158; y: 228
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 145; y: 227
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6032
+ hash: "8a81d49de887f314f67976a65f469169"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 132; y: 227
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 126; y: 227
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6048
+ hash: "b83136fa3769e30ea47097b489e8f1dc"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 116; y: 227
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 112; y: 227
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6064
+ hash: "12cdd297407257ae4bb13c87e24537fb"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 103; y: 227
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 99; y: 227
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6080
+ hash: "a51ac0a1e9432671c88f7649c38d265d"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 90; y: 227
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 86; y: 227
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6096
+ hash: "4ba4f854659161c765395cdee35594f2"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 77; y: 226
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 70; y: 225
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6112
+ hash: "9907add9e28b4a8976f3727f99a4b6d4"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 66; y: 224
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 60; y: 223
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6128
+ hash: "c2cb865c4a766b9c08328b374e940f29"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 59; y: 223
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 56; y: 223
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6144
+ hash: "c97981263572ded23b328da45cf88012"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 55; y: 223
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 53; y: 223
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6160
+ hash: "f4bae51c866ba1158f44529208514d6f"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 52; y: 222
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 50; y: 222
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6176
+ hash: "35b4f1f9bb343f2b22bd7cdad6f28249"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 49; y: 223
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 48; y: 223
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6192
+ hash: "84eba4cb400e5622463f5a1fa79be72b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 47; y: 223
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 46; y: 223
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6208
+ hash: "d38e882728c7efc906befe69b416082a"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 45; y: 223
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6224
+ hash: "e5d8939135d0e964609a09a437af58bc"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 44; y: 223
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 43; y: 223
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6240
+ hash: "6b6e06e8473d5703e217accd824b08d5"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 42; y: 223
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 40; y: 223
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6256
+ hash: "8e38bc5b00e33e24f931b181dc77d3c1"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 39; y: 223
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 38; y: 223
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6272
+ hash: "a173708b5380f42a2bdbf6ae69cdca20"
+ }
+ Frame {
+ msec: 6288
+ hash: "a173708b5380f42a2bdbf6ae69cdca20"
+ }
+ Frame {
+ msec: 6304
+ hash: "a173708b5380f42a2bdbf6ae69cdca20"
+ }
+ Frame {
+ msec: 6320
+ hash: "a173708b5380f42a2bdbf6ae69cdca20"
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 38; y: 223
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6336
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6352
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6368
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6384
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6400
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6416
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6432
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6448
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6464
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6480
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6496
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6512
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6528
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6544
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6560
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6576
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6592
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6608
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6624
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6640
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6656
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6672
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6688
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6704
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6720
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6736
+ image: "nested.7.png"
+ }
+ Frame {
+ msec: 6752
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6768
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6784
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6800
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6816
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6832
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6848
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6864
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6880
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6896
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6912
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6928
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6944
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6960
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6976
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 6992
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 7008
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 7024
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 7040
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 7056
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 7072
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 46; y: 225
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7088
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 7104
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 46; y: 226
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 46; y: 227
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7120
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 46; y: 228
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 46; y: 231
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7136
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 46; y: 233
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 46; y: 238
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7152
+ hash: "35dd0f784c356be0050936ff75b0cdf7"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 47; y: 240
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 48; y: 245
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7168
+ hash: "9ac066a700eae45edf9b2f1ba12f0324"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 48; y: 248
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 49; y: 255
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7184
+ hash: "22a2a8bf257918820b0ab55ecb14b479"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 50; y: 259
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 51; y: 266
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7200
+ hash: "eb98237e06cde8ed2f18040ce9197d16"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 52; y: 272
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 52; y: 276
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7216
+ hash: "f0c7afe1bd25b9b573cbc69154c25862"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 53; y: 282
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 54; y: 285
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7232
+ hash: "d6a681b6de867db47f889e6f1ec03dcf"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 54; y: 291
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 54; y: 293
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7248
+ hash: "0ee281281c7654567a1debae7a13abe0"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 54; y: 299
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 54; y: 304
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7264
+ hash: "9d5f1c8cb0953c14bdd49aa88d2b225f"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 54; y: 306
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 54; y: 310
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7280
+ hash: "ae1c2a3ed67c5c10fc9d19de4de7b7eb"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 54; y: 312
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 53; y: 315
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7296
+ hash: "8505f9d060fc17fef2e91eb2add206bb"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 53; y: 316
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 53; y: 318
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7312
+ hash: "c32a6d546a3e4f2ee5349a7dad4b30af"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 53; y: 319
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 52; y: 320
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7328
+ hash: "222f6e8e8deab567f1e7d0aaf7035b60"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 51; y: 321
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 51; y: 322
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7344
+ hash: "f7011629f44015187849daad6a53cebf"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 51; y: 323
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 51; y: 324
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7360
+ hash: "56b00d9116a51c041483dd00db0aca90"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 50; y: 325
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 50; y: 326
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7376
+ hash: "93232fbcafe8e279b37781f51dfb923a"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 49; y: 328
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 48; y: 329
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7392
+ hash: "9fcf62eaacfc3477a4550c31f03c4782"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 48; y: 330
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 48; y: 331
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7408
+ hash: "dd669865fd36e42eec1d69860b29e7ce"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 47; y: 331
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7424
+ hash: "9247af334483b219ca9bbe98d8fc362e"
+ }
+ Frame {
+ msec: 7440
+ hash: "9247af334483b219ca9bbe98d8fc362e"
+ }
+ Frame {
+ msec: 7456
+ hash: "9247af334483b219ca9bbe98d8fc362e"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 47; y: 330
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7472
+ hash: "9247af334483b219ca9bbe98d8fc362e"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 47; y: 329
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 47; y: 328
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7488
+ hash: "69ef9255a29d65f26e5441594ea1bad9"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 48; y: 325
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 48; y: 323
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7504
+ hash: "055f73dd085d2f65a055ba4d9a8a7539"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 49; y: 318
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 49; y: 316
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7520
+ hash: "384da5b6a948a52d0519935a8e33f014"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 51; y: 309
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 54; y: 303
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7536
+ hash: "1caa0049be4033db45f0d2debb25268f"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 55; y: 299
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 55; y: 299
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7552
+ hash: "76b8d00b3a2a68fec277050a442c18ca"
+ }
+ Frame {
+ msec: 7568
+ hash: "0ee281281c7654567a1debae7a13abe0"
+ }
+ Frame {
+ msec: 7584
+ hash: "df1dbb027a8542aa6120cce7b69724a7"
+ }
+ Frame {
+ msec: 7600
+ hash: "06a4d9b1d73362b3e29c6cf52fdb515c"
+ }
+ Frame {
+ msec: 7616
+ hash: "876c0dc8a68a4c1253b7aed6316cb892"
+ }
+ Frame {
+ msec: 7632
+ hash: "b46c74b1a2535099f0cdb8093bd49a4e"
+ }
+ Frame {
+ msec: 7648
+ hash: "0ad09a7638aa6f2affe47db2a810196f"
+ }
+ Frame {
+ msec: 7664
+ hash: "3710dde54d7e4a10a2c3ca2f891da7f5"
+ }
+ Frame {
+ msec: 7680
+ hash: "8426a607c92fbfa508e81c620d90e919"
+ }
+ Frame {
+ msec: 7696
+ image: "nested.8.png"
+ }
+ Frame {
+ msec: 7712
+ hash: "1f38e34787c909d93d567f983a425257"
+ }
+ Frame {
+ msec: 7728
+ hash: "7b09913793d4c79d948fdff1b72c7124"
+ }
+ Frame {
+ msec: 7744
+ hash: "8a0d1484c073d8107b4bf9949edcdb18"
+ }
+ Frame {
+ msec: 7760
+ hash: "4bad25465dfdcc41995216b0f6a5191b"
+ }
+ Frame {
+ msec: 7776
+ hash: "6d39bbeb5f74273c1ed0231ac34fe094"
+ }
+ Frame {
+ msec: 7792
+ hash: "8ccc2e33b8d6c67162326d229e9c17ab"
+ }
+ Frame {
+ msec: 7808
+ hash: "3561eaa9124b96b2a0afa022bc0fe581"
+ }
+ Frame {
+ msec: 7824
+ hash: "b87d739e49f0427d9da577ac5147fd21"
+ }
+ Frame {
+ msec: 7840
+ hash: "7d0efbfceec35e591f9fae650288809b"
+ }
+ Frame {
+ msec: 7856
+ hash: "7d0efbfceec35e591f9fae650288809b"
+ }
+ Frame {
+ msec: 7872
+ hash: "ff5d2037d3cc7bb6930cabc3d53f0196"
+ }
+ Frame {
+ msec: 7888
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 7904
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 7920
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 7936
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 7952
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 7968
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 7984
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8000
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8016
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8032
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8048
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8064
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8080
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8096
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8112
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8128
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8144
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8160
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8176
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8192
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8208
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8224
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8240
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8256
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8272
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8288
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8304
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8320
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8336
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8352
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8368
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8384
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8400
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8416
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8432
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8448
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8464
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8480
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8496
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8512
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8528
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8544
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8560
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8576
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8592
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8608
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8624
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8640
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8656
+ image: "nested.9.png"
+ }
+ Frame {
+ msec: 8672
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8688
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8704
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8720
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8736
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8752
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8768
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8784
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8800
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8816
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8832
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8848
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8864
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8880
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8896
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8912
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8928
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8944
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8960
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8976
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 8992
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 9008
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+ Frame {
+ msec: 9024
+ hash: "76624c57195c25b8abd4297e11c55980"
+ }
+}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativemousearea/nested.qml b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/nested.qml
new file mode 100644
index 0000000000..b2d88d2ca9
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativemousearea/nested.qml
@@ -0,0 +1,62 @@
+import QtQuick 1.0
+
+/*
+ Test nested MouseArea with different drag axes.
+*/
+
+Rectangle{
+ width:400
+ height:360
+ color: "white"
+ Flickable {
+ anchors.fill: parent
+ contentWidth: 600
+ contentHeight: 600
+ Rectangle{
+ id: draggable
+ width:200; height:200; color: "lightsteelblue"
+ opacity: ma1.drag.active ? 0.5 : 1.0
+ y:20
+ MouseArea{
+ id: ma1
+ objectName: "one"
+ anchors.fill: parent
+ drag.target: draggable
+ drag.axis: "XandYAxis"
+ drag.filterChildren: true
+ drag.minimumX: 0
+ drag.maximumX: 200
+ drag.minimumY: 20
+ drag.maximumY: 220
+ Rectangle{
+ id: draggable_inner
+ width:40; height:40; color: "red"
+ y:20
+ MouseArea{
+ objectName: "two"
+ anchors.fill: parent
+ drag.target: draggable_inner
+ drag.axis: "XAxis"
+ drag.minimumX: 0
+ drag.maximumX: 360
+ }
+ }
+ }
+ }
+ Rectangle{
+ id: draggable3
+ width:40; height:40; color: "green"
+ opacity: ma3.drag.active ? 0.5 : 1.0
+ y:210
+ MouseArea{
+ id: ma3
+ objectName: "three"
+ anchors.fill: parent
+ drag.target: draggable3
+ drag.axis: "XAxis"
+ drag.minimumX: 0
+ drag.maximumX: 360
+ }
+ }
+ }
+}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeparticles/data/particles.0.png b/tests/auto/declarative/qmlvisual/qdeclarativeparticles/data/particles.0.png
index da77af9249..88924b1f4f 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeparticles/data/particles.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeparticles/data/particles.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeparticles/data/particles.1.png b/tests/auto/declarative/qmlvisual/qdeclarativeparticles/data/particles.1.png
index 578c9e9cc3..024a17cd03 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeparticles/data/particles.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeparticles/data/particles.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeparticles/data/particles.2.png b/tests/auto/declarative/qmlvisual/qdeclarativeparticles/data/particles.2.png
index 24c61264fa..8860fc21aa 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeparticles/data/particles.2.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeparticles/data/particles.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeparticles/data/particles.3.png b/tests/auto/declarative/qmlvisual/qdeclarativeparticles/data/particles.3.png
new file mode 100644
index 0000000000..2ab8ee322f
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeparticles/data/particles.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeparticles/data/particles.qml b/tests/auto/declarative/qmlvisual/qdeclarativeparticles/data/particles.qml
index 3fec1effcc..2930e2869e 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeparticles/data/particles.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeparticles/data/particles.qml
@@ -6,7 +6,7 @@ VisualTest {
}
Frame {
msec: 16
- hash: "b4df49cbd7cf972af9879399808f6c53"
+ image: "particles.0.png"
}
Frame {
msec: 32
@@ -242,11 +242,11 @@ VisualTest {
}
Frame {
msec: 960
- image: "particles.0.png"
+ hash: "d52c30bc201afd3d1caf34efcddafdee"
}
Frame {
msec: 976
- hash: "2b33354b9e53eae7ebd5996ae0350773"
+ image: "particles.1.png"
}
Frame {
msec: 992
@@ -482,11 +482,11 @@ VisualTest {
}
Frame {
msec: 1920
- image: "particles.1.png"
+ hash: "57976a66963718e90c62535a936d9251"
}
Frame {
msec: 1936
- hash: "00743f1dceb5d0351a67a237bcf1985b"
+ image: "particles.2.png"
}
Frame {
msec: 1952
@@ -722,11 +722,11 @@ VisualTest {
}
Frame {
msec: 2880
- image: "particles.2.png"
+ hash: "ac6878edac61916bf424dcee2d7790e8"
}
Frame {
msec: 2896
- hash: "449168c60d6c9f04c94b3c48f27de7ff"
+ image: "particles.3.png"
}
Frame {
msec: 2912
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativeparticles/particles.qml b/tests/auto/declarative/qmlvisual/qdeclarativeparticles/particles.qml
index 78ba061055..38506a0c63 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativeparticles/particles.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativeparticles/particles.qml
@@ -2,6 +2,7 @@ import QtQuick 1.0
import Qt.labs.particles 1.0
Rectangle {
+ property string skip: "May contain random numbers"
width: 640; height: 480; color: "black"
Particles { id:particlesAneverEmitting
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.0.png b/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.0.png
index 3e1a92dc6b..699f83e981 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.1.png b/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.1.png
index 8658d7d2ba..a742a6a56a 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.2.png b/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.2.png
index f1a56d7a60..71abae2a9f 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.2.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.3.png b/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.3.png
index e1eaebf3cc..a6e6b3e398 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.3.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.4.png b/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.4.png
index e1eaebf3cc..9f125c4d5e 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.4.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.5.png b/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.5.png
index 06e7d18b91..41d0cd584e 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.5.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.6.png b/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.6.png
deleted file mode 100644
index 2c6c5f999a..0000000000
--- a/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.6.png
+++ /dev/null
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.qml b/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.qml
index e3baa4d863..b75d140e0c 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview-2.qml
@@ -6,713 +6,1033 @@ VisualTest {
}
Frame {
msec: 16
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ image: "test-pathview-2.0.png"
}
Frame {
msec: 32
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 48
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 64
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 80
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 96
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 112
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 128
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 144
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 160
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 176
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 192
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 208
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 224
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 240
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 256
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 272
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 288
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 304
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 320
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 336
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 352
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 368
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 384
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 400
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 416
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 432
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 448
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 464
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 480
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 496
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 512
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 528
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 544
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 560
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 576
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 592
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 608
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 624
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 640
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 656
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 672
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 688
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 260; y: 189
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 704
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
}
Frame {
msec: 720
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 261; y: 188
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 736
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "fe6d7d28dbeef3cfbac3ac3c3e909216"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 262; y: 188
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 266; y: 186
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 752
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "e21cac055208e47e267ac906c7c2ca9c"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 283; y: 183
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 768
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "131e094a79edbeea9a1b981592e55abf"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 302; y: 181
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 331; y: 181
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 784
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "73faabf52bd2af8d8b9d28ce21e5e77b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 384; y: 179
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 800
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "359554a95362db1734f606cf677001fc"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 432; y: 175
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 432; y: 175
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 816
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "8ef4ecc5c5ba578f0279dc57a6c17ccd"
}
Frame {
msec: 832
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "69c3d9d2700dd395b656b0b09fa63511"
}
Frame {
msec: 848
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "2bbcc36d72c3e9a4b672a46f2aae5076"
}
Frame {
msec: 864
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "125a5f0c8efdf97676edbe379660dcce"
}
Frame {
msec: 880
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "4347a02227207fbf870b6aed76131619"
}
Frame {
msec: 896
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "e08b494c818669bfc48273598574d22e"
}
Frame {
msec: 912
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "186cb5465f45c0df8082ec8cad6ee8b1"
}
Frame {
msec: 928
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "91d04d4469492c3bb2a1ed415dcd904c"
}
Frame {
msec: 944
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "8cc8ef251d68af926a8f300b8666ecfd"
}
Frame {
msec: 960
- image: "test-pathview-2.0.png"
+ hash: "42f64722245f8519386e75ce7e3c0cd9"
}
Frame {
msec: 976
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ image: "test-pathview-2.1.png"
}
Frame {
msec: 992
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "058311da9dcf73a4b4928038334b04b5"
}
Frame {
msec: 1008
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "ea662934ee0c3c8d4dbde3ad49448922"
}
Frame {
msec: 1024
- hash: "cffe9de189a5c9bed3d98f8803b47212"
+ hash: "01991a871819e7bdbf817580f720ead6"
}
Frame {
msec: 1040
- hash: "cffe9de189a5c9bed3d98f8803b47212"
- }
- Mouse {
- type: 2
- button: 1
- buttons: 1
- x: 562; y: 250
- modifiers: 0
- sendToViewport: true
+ hash: "69a7fe47ae589bcc2607cc42fcea7451"
}
Frame {
msec: 1056
- hash: "cffe9de189a5c9bed3d98f8803b47212"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 557; y: 251
- modifiers: 0
- sendToViewport: true
+ hash: "8240d087b767311e00b7dd4b8726246c"
}
Frame {
msec: 1072
- hash: "cffe9de189a5c9bed3d98f8803b47212"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 544; y: 254
- modifiers: 0
- sendToViewport: true
+ hash: "cc70c8e79d68f09e6db0dd43b99906b7"
}
Frame {
msec: 1088
- hash: "e8c46deb6b5f5739e4b95d53619e9314"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 534; y: 258
- modifiers: 0
- sendToViewport: true
+ hash: "2bfabef74bc6e1dbf72111838a0e7557"
}
Frame {
msec: 1104
- hash: "11d19a126669227211f399d262bfd8bd"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 511; y: 267
- modifiers: 0
- sendToViewport: true
+ hash: "66616f01553364c5bd589b781e22163a"
}
Frame {
msec: 1120
- hash: "46d81424418241d7dd98c581491c08c7"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 499; y: 272
- modifiers: 0
- sendToViewport: true
+ hash: "58b9de84ebdaabee3917608f2af3bbdb"
}
Frame {
msec: 1136
- hash: "8674dba6282cd9dd6ca31442f7f996e2"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 473; y: 281
- modifiers: 0
- sendToViewport: true
+ hash: "964d96b9b783efb1053501f8a6931248"
}
Frame {
msec: 1152
- hash: "efc9e337337267c43b865f33c8912c4c"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 459; y: 285
- modifiers: 0
- sendToViewport: true
+ hash: "055b77b921a2bac71b6780ab3179f19f"
}
Frame {
msec: 1168
- hash: "b3fd11ff8cf16bad9fd7e1329add6029"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 446; y: 288
- modifiers: 0
- sendToViewport: true
+ hash: "074904f31b4f7cf0679f0bf7bba30af2"
}
Frame {
msec: 1184
- hash: "3be61bd51ca152965c0e789a7587fe98"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 433; y: 290
- modifiers: 0
- sendToViewport: true
- }
- Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 433; y: 290
- modifiers: 0
- sendToViewport: true
+ hash: "f020a490b6800d5b4402ecb9a8bcd436"
}
Frame {
msec: 1200
- hash: "9b02fac96198b587d59b10ddc021dfca"
+ hash: "1615bdedf92f91f089e494d893840c4b"
}
Frame {
msec: 1216
- hash: "505b19e66a416012cc10125381b3e012"
+ hash: "b6892f6a5db6d211f0d1bb2bbe5045bf"
}
Frame {
msec: 1232
- hash: "eff92d7a9b0962067d5ef97e86a23c07"
+ hash: "5f0d903ba682923ac69454026a359ed9"
}
Frame {
msec: 1248
- hash: "74f48d40be0dd93988d01aa18f26ae96"
+ hash: "da5bae496a9ad28585151f4c75ee0c9f"
}
Frame {
msec: 1264
- hash: "1f8608199813f9c54c426f59290089fa"
+ hash: "68f553248f7ca116671782d1c357b552"
}
Frame {
msec: 1280
- hash: "8b4e68ab41bf4e0e23d86c7f99ff11a5"
+ hash: "5503df04dd7f4c88314f9d309a5b36b4"
}
Frame {
msec: 1296
- hash: "00180bb46496f5b10350071a7f0e1f85"
+ hash: "cc48c1f58b553adcb27d60f176e2b910"
}
Frame {
msec: 1312
- hash: "d966232acbb1ecf2339a1df02642dd9e"
+ hash: "661f546199d8753a7b6f6ccea5928c12"
}
Frame {
msec: 1328
- hash: "0235a7aa18d390099e6934971354f878"
+ hash: "0fd70052c100f77bddbad177d9e5573d"
}
Frame {
msec: 1344
- hash: "136159dc7d4775e108c4738b7c1bcc86"
+ hash: "488e0652c0ed82a014de63a64145c34c"
}
Frame {
msec: 1360
- hash: "e976f2c7ef3d61c2e200fcc849e9f4cd"
+ hash: "8b6bf2519080a6e4a61fe216f72dfa09"
}
Frame {
msec: 1376
- hash: "09181b465a9d228006e827b56ec83c1d"
+ hash: "4dab1827f6ce9561297fce8e067df1bd"
}
Frame {
msec: 1392
- hash: "8b3f884ac343f1272e3d3af6b2b4d875"
+ hash: "b3f4c5cd728eaf2b791612a7fea64e7b"
}
Frame {
msec: 1408
- hash: "419ffc2f8685ea8d1e5232c4440b2d96"
+ hash: "3d01abd0b8a5a62d58a4c09546f212d8"
}
Frame {
msec: 1424
- hash: "105b3cc7c5b8f07e90a3c3aaa9d78ce7"
+ hash: "e76796498cf595c60d4b60cc0e320601"
}
Frame {
msec: 1440
- hash: "6005de2db98dfd9cb8e3cb42a668a6bd"
+ hash: "1b31e96f2823e78a0c4029e7bc45b9f2"
}
Frame {
msec: 1456
- hash: "2bae12b6d577965a3cd24bb05c4f5e44"
+ hash: "f75c182dc24f4fabe1034ee494dba2ad"
}
Frame {
msec: 1472
- hash: "e74db37aedd78bf1765d0a3b4ed89023"
+ hash: "646c12edadf350405709860381cfced6"
}
Frame {
msec: 1488
- hash: "49511dcf43ce2dbbe4fbafb461189e72"
+ hash: "b6719406da9f2484fe55e3c69184f86c"
}
Frame {
msec: 1504
- hash: "21183bde6a5cb1d9769e01630e1b593a"
+ hash: "5456857d6d48d064df1cb3f35d8447b5"
}
Frame {
msec: 1520
- hash: "15bef0512513a0bdef002a4af5e1b3d3"
+ hash: "8d1809b568345e1532fb6d9428fc9729"
}
Frame {
msec: 1536
- hash: "d46944a859d8be8c3371bf719ffe6251"
+ hash: "5cffa76fe09a771a9f62a9f0392f0431"
}
Frame {
msec: 1552
- hash: "2a5249bc1e0eba408654d6500fe22e6f"
+ hash: "8de59915e874ce829c691a19ac930f28"
}
Frame {
msec: 1568
- hash: "df860d60c47ea0eae7ed917ce1cd0578"
+ hash: "9027bbf8121f70d26530f70423ec05b7"
}
Frame {
msec: 1584
- hash: "90bfd7e58c63e7e2ad647d37a597c084"
+ hash: "d3d1d8b9f7b4eb74a8b7ae5cf19a8e20"
}
Frame {
msec: 1600
- hash: "a400250799ca74b0de5fa0b00ea54223"
+ hash: "81ffcc0147e3124a3015deb7c0dbfd90"
}
Frame {
msec: 1616
- hash: "1943506235c641ee444394b2bf48f2ea"
+ hash: "ca0c96e908f05c4ee1af1f80d7b432aa"
}
Frame {
msec: 1632
- hash: "ac9dd2d323a513f6cf729890b5b6dccc"
+ hash: "2bdb6fbf942623856a6963c335794dd2"
}
Frame {
msec: 1648
- hash: "029cbaec81f7e1251d8de63b8011f06e"
+ hash: "18ac264d9ea9b592b0738f1cf732f678"
}
Frame {
msec: 1664
- hash: "c0cf823c09a96cf8b6ac063a87f1e5ed"
+ hash: "1ee9adbbae7b97dc050c82b8ed7b0aad"
}
Frame {
msec: 1680
- hash: "9ed0e1fef6937f5e05b6647b0fb9d534"
+ hash: "b502390c452883ade550d2761bb09d3d"
}
Frame {
msec: 1696
- hash: "61b878c5c6db407032c6abb76e49e1b2"
+ hash: "31a6f573fbb3f545ee051e2290938004"
}
Frame {
msec: 1712
- hash: "b842458ea2b17501f089c9b5cdd15cc4"
+ hash: "3be9788228d9e540313e75671319c5b7"
}
Frame {
msec: 1728
- hash: "8a308f9048be4323eb82229b2bcdfbe2"
+ hash: "23cbd718154f939d8270674e8f7607f0"
}
Frame {
msec: 1744
- hash: "5a4e29c2d768a3d0ca319ae7406920dd"
+ hash: "5f7f49b894b80ddd7cdc544a49ec24a2"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 275; y: 170
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 278; y: 171
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 1760
- hash: "b96f98a169e700ccf5c77b42e1143d50"
+ hash: "2a1ddee3d3a0c2a4fffab3988e35e274"
}
Frame {
msec: 1776
- hash: "570b2182f63d4eebc2c9d136636c5c7a"
+ hash: "2a1ddee3d3a0c2a4fffab3988e35e274"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 279; y: 171
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 282; y: 171
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 1792
- hash: "df2bb468c032ce62cc23ac3600123649"
+ hash: "5594b9139480ba1c814509a049f9b6c5"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 290; y: 172
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 1808
- hash: "f6579e334ba34bae43c6fa9bae465e32"
+ hash: "d8729deb404f5b821264743943adb288"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 292; y: 172
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 1824
- hash: "b6bba71527e894c0520eb840db66fc8a"
+ hash: "6de642baf7698ec65d48ccf0a1e8e7db"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 294; y: 171
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 297; y: 171
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 1840
- hash: "510afb9fd3812786cfdfb82b7131a158"
+ hash: "f6732999861d1f638484a5aaa9cf0550"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 302; y: 170
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 1856
- hash: "13da41ed3e0e071c1645e71a003a8a1d"
+ hash: "7cd7c1679838f35556bd4ee4565b7a86"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 305; y: 170
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 308; y: 169
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 1872
- hash: "c09aabd8c11c6124d97793563b274c7a"
+ hash: "4276a4d9350503603b0c9c98552697b3"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 313; y: 169
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 1888
- hash: "34101fd20242b0b48d056f24f21c8939"
+ hash: "954a47627aee0a1128a78191bf32d984"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 331; y: 165
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 1904
- hash: "34f064cb167b85e79a2f113eb430a675"
+ hash: "360a47795f7f9389f82f2f55fa1fe83f"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 340; y: 164
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 1920
- image: "test-pathview-2.1.png"
+ hash: "19d4284791d0031342ba995bd17a7833"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 354; y: 163
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 1936
- hash: "d50eb3d7eaad3d2a825876dcf1f59d91"
+ image: "test-pathview-2.2.png"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 361; y: 161
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 367; y: 160
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 1952
- hash: "c0c308b9eb3af4c1af3bc7e197696475"
+ hash: "e9cd8fb810ecf39a90af039ead97aaf1"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 371; y: 160
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 376; y: 158
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 1968
- hash: "67e630b9f050a64645e276695f3d4932"
+ hash: "42df1a0fbbe7cce5f2359d9e02696299"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 383; y: 157
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 1984
- hash: "5bb212885448a7506ee6de766ea80a8a"
+ hash: "cc71434d6bd162386b80cb3b7e387116"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 387; y: 157
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 391; y: 157
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 2000
- hash: "f9ec9b4de5244e58fbba2f6871e4a61b"
+ hash: "a130b471b3903f3f1d77f2306da2b92e"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 394; y: 156
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 2016
- hash: "f9ec9b4de5244e58fbba2f6871e4a61b"
+ hash: "5bdb7472e325651e891c115953afdb39"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 395; y: 156
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 2032
- hash: "f9ec9b4de5244e58fbba2f6871e4a61b"
+ hash: "ab3a64b41c67a0b8a6c0830c0e0cb797"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 396; y: 156
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 2048
- hash: "f9ec9b4de5244e58fbba2f6871e4a61b"
+ hash: "8eb1f2c8c02c2acf4262e05000045649"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 398; y: 156
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 2064
- hash: "f9ec9b4de5244e58fbba2f6871e4a61b"
+ hash: "514220d357c4a26e4aaf9ed20d3f4f33"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 401; y: 155
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 2080
- hash: "f9ec9b4de5244e58fbba2f6871e4a61b"
+ hash: "e44526ef273048028d5989fc662eb7e6"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 403; y: 155
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 406; y: 155
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 2096
- hash: "f9ec9b4de5244e58fbba2f6871e4a61b"
+ hash: "29ac091428a89cfcb4c52c08e0e10327"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 408; y: 154
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 409; y: 154
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 2112
- hash: "f9ec9b4de5244e58fbba2f6871e4a61b"
+ hash: "82beb845af88fc9432dc104ff805a146"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 411; y: 153
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 2128
- hash: "f9ec9b4de5244e58fbba2f6871e4a61b"
+ hash: "371392f267b2c1f4e29963506180e246"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 413; y: 153
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 2144
- hash: "f9ec9b4de5244e58fbba2f6871e4a61b"
+ hash: "1da06d036cc0a2d2de34eee37b6981c0"
}
Frame {
msec: 2160
- hash: "f9ec9b4de5244e58fbba2f6871e4a61b"
+ hash: "1da06d036cc0a2d2de34eee37b6981c0"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 414; y: 153
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 2176
- hash: "f9ec9b4de5244e58fbba2f6871e4a61b"
+ hash: "4980de22342d1085e205401090777d24"
}
Frame {
msec: 2192
- hash: "f9ec9b4de5244e58fbba2f6871e4a61b"
+ hash: "4980de22342d1085e205401090777d24"
}
Frame {
msec: 2208
- hash: "f9ec9b4de5244e58fbba2f6871e4a61b"
+ hash: "4980de22342d1085e205401090777d24"
}
Frame {
msec: 2224
- hash: "f9ec9b4de5244e58fbba2f6871e4a61b"
+ hash: "4980de22342d1085e205401090777d24"
}
Frame {
msec: 2240
- hash: "f9ec9b4de5244e58fbba2f6871e4a61b"
+ hash: "4980de22342d1085e205401090777d24"
}
Frame {
msec: 2256
- hash: "f9ec9b4de5244e58fbba2f6871e4a61b"
+ hash: "4980de22342d1085e205401090777d24"
}
Frame {
msec: 2272
- hash: "f9ec9b4de5244e58fbba2f6871e4a61b"
+ hash: "4980de22342d1085e205401090777d24"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 412; y: 153
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 2288
- hash: "f9ec9b4de5244e58fbba2f6871e4a61b"
+ hash: "e0a52543b976dc998615704c63b1f3e9"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 409; y: 154
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 2304
- hash: "f9ec9b4de5244e58fbba2f6871e4a61b"
+ hash: "82beb845af88fc9432dc104ff805a146"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 401; y: 155
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 2320
- hash: "f9ec9b4de5244e58fbba2f6871e4a61b"
+ hash: "e44526ef273048028d5989fc662eb7e6"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 399; y: 155
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 396; y: 156
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 2336
- hash: "f9ec9b4de5244e58fbba2f6871e4a61b"
+ hash: "8eb1f2c8c02c2acf4262e05000045649"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 393; y: 158
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 2352
- hash: "f9ec9b4de5244e58fbba2f6871e4a61b"
+ hash: "442958c3a705745204db96ff9902b7fc"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 392; y: 158
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 2368
- hash: "f9ec9b4de5244e58fbba2f6871e4a61b"
+ hash: "a130b471b3903f3f1d77f2306da2b92e"
}
Frame {
msec: 2384
- hash: "f9ec9b4de5244e58fbba2f6871e4a61b"
+ hash: "a130b471b3903f3f1d77f2306da2b92e"
}
Frame {
msec: 2400
- hash: "f9ec9b4de5244e58fbba2f6871e4a61b"
+ hash: "a130b471b3903f3f1d77f2306da2b92e"
}
Frame {
msec: 2416
- hash: "f9ec9b4de5244e58fbba2f6871e4a61b"
+ hash: "a130b471b3903f3f1d77f2306da2b92e"
}
Frame {
msec: 2432
- hash: "f9ec9b4de5244e58fbba2f6871e4a61b"
+ hash: "a130b471b3903f3f1d77f2306da2b92e"
}
Frame {
msec: 2448
- hash: "f9ec9b4de5244e58fbba2f6871e4a61b"
+ hash: "a130b471b3903f3f1d77f2306da2b92e"
}
Frame {
msec: 2464
- hash: "f9ec9b4de5244e58fbba2f6871e4a61b"
+ hash: "a130b471b3903f3f1d77f2306da2b92e"
}
Mouse {
- type: 2
- button: 1
+ type: 5
+ button: 0
buttons: 1
- x: 591; y: 245
+ x: 391; y: 159
modifiers: 0
sendToViewport: true
}
@@ -720,43 +1040,43 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 588; y: 245
+ x: 390; y: 159
modifiers: 0
sendToViewport: true
}
Frame {
msec: 2480
- hash: "f9ec9b4de5244e58fbba2f6871e4a61b"
+ hash: "374dc7c3ea0c93ac93a857a4620bc031"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 585; y: 245
+ x: 377; y: 159
modifiers: 0
sendToViewport: true
}
Frame {
msec: 2496
- hash: "f9ec9b4de5244e58fbba2f6871e4a61b"
+ hash: "0b943f48b39053bfc906a4a47a37d68a"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 582; y: 245
+ x: 331; y: 156
modifiers: 0
sendToViewport: true
}
Frame {
msec: 2512
- hash: "a123e6b06abaa4dda4645bc174edc6ad"
+ hash: "099fbdf1560dd79b700914863406c904"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 574; y: 245
+ x: 294; y: 154
modifiers: 0
sendToViewport: true
}
@@ -764,483 +1084,463 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 565; y: 246
+ x: 249; y: 151
modifiers: 0
sendToViewport: true
}
Frame {
msec: 2528
- hash: "a706a48bce5eec7a1d55fec0df8c4d81"
+ hash: "3aa1614cc49504d19e979ebf190f2970"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 553; y: 246
+ x: 129; y: 141
modifiers: 0
sendToViewport: true
}
Frame {
msec: 2544
- hash: "297edbcda96e508dc9d0d977951c015a"
+ hash: "837420c71a5010f25cccd05e5e9b3eec"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 538; y: 246
+ x: 9; y: 133
modifiers: 0
sendToViewport: true
}
Frame {
msec: 2560
- hash: "7d334b1b7bfe3893473b02b49e2e1bda"
+ hash: "871349fc09f418717231b8f8e20a7fff"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 523; y: 247
+ x: -48; y: 128
modifiers: 0
sendToViewport: true
}
Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 523; y: 247
+ type: 5
+ button: 0
+ buttons: 1
+ x: -99; y: 126
modifiers: 0
sendToViewport: true
}
Frame {
msec: 2576
- hash: "45ba14d15a8fcac259a06dc85a935f18"
+ hash: "9b6022024aae22ec1f522fd00ed29e9b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: -173; y: 129
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: -173; y: 129
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 2592
- hash: "0119f472e718a8e6bc59a998c18beb7f"
+ hash: "8d9410909ae259388fa94b3a60342608"
}
Frame {
msec: 2608
- hash: "fb08ca9960ec17a26dcf27de6474392f"
+ hash: "0ceb355351ac99458ba75776c11b3039"
}
Frame {
msec: 2624
- hash: "b209bd311ce16fa9daf612786b7c5f53"
+ hash: "61ca917ecc8ad4c35b7f2a3b828542bf"
}
Frame {
msec: 2640
- hash: "d47eb1544d2c417e5b452df6715efe0e"
+ hash: "fd5db933d1d8684b15eb5239d19d8919"
}
Frame {
msec: 2656
- hash: "caf3eeb521fbd0b5f97e99111d4a2416"
+ hash: "13f466a82ee22cabf5cbd2463f55b46a"
}
Frame {
msec: 2672
- hash: "5726e2e19aca222de3ce0125cf1def6c"
+ hash: "3b7f7880f5b568a0e45cd0e268822f3a"
}
Frame {
msec: 2688
- hash: "7f2ca733f50390284d90e757788c6c64"
+ hash: "cca22501c3b5a2ed4264ba060eeb1a6e"
}
Frame {
msec: 2704
- hash: "72eb5d86be5e9b477abbfbfae78261fc"
+ hash: "efe5258ac5962d1d2bfa4286c1621830"
}
Frame {
msec: 2720
- hash: "f0a1dda33df6856a02e5668c6bb45aa2"
+ hash: "141998cff765a4e90836b871f229a1ca"
}
Frame {
msec: 2736
- hash: "55863490cefc48da96a368b95055ac2b"
+ hash: "9d684675fa883d5488194effcb1d8d0a"
}
Frame {
msec: 2752
- hash: "e01c23ac71fd3906a47b4a969ee592d9"
+ hash: "fa87f781048f264ddf447441a714ee50"
}
Frame {
msec: 2768
- hash: "b45eb0154d405b49c9f7ea1452601b4e"
+ hash: "61b4992b9c52222345c9ada3148d50f9"
}
Frame {
msec: 2784
- hash: "b5bf040d5dbf4f7cf8c5a0dc3d6aaea1"
+ hash: "3e255a634d215746cb95f5d765335ea2"
}
Frame {
msec: 2800
- hash: "c171c81a12d4971f33154e52f789967a"
+ hash: "d64a755e47a502244e7f14f2091f0ca6"
}
Frame {
msec: 2816
- hash: "fac8265a6d744a11120a0d434821d8b4"
+ hash: "582562992b0652f995b439897182e0f8"
}
Frame {
msec: 2832
- hash: "2b6b1f9aa8aa32c9e48579d215e31268"
+ hash: "2d69b1a274c262faf5ce9ed3191c7d22"
}
Frame {
msec: 2848
- hash: "8455997dc106cd5d386eb3cf3703828c"
+ hash: "36c04a2bd58124877a332bb6a262a7e5"
}
Frame {
msec: 2864
- hash: "c6525e8ee9c7ac6fa4d0c8d6dd4e1745"
+ hash: "798711925da8f5034039dad86cc1fad1"
}
Frame {
msec: 2880
- image: "test-pathview-2.2.png"
+ hash: "31495157a10c3bb4dd70cfd857fd07e6"
}
Frame {
msec: 2896
- hash: "bc501c449f5d8b7de40b27204c5344a4"
+ image: "test-pathview-2.3.png"
}
Frame {
msec: 2912
- hash: "fe850b5232c819a9171d0b93aaf5e811"
+ hash: "b81330eb50dbd39f1abcdb8ff1553d08"
}
Frame {
msec: 2928
- hash: "a54d819719aeb80392e5b6ffbc25dea0"
+ hash: "ececcb86b76e9cd2f57585bd87e16bef"
}
Frame {
msec: 2944
- hash: "8479d90984fd9f619b86529231b840fd"
+ hash: "2c37e2c24cf22a334cfcc6f2691ad9fb"
}
Frame {
msec: 2960
- hash: "6bfa9782e64bfc0041175073aa2bbb80"
+ hash: "ad0572020d273dbca046357aa0f8bf3b"
}
Frame {
msec: 2976
- hash: "8df19b6bd14c7e1f014dfdb4cc887263"
+ hash: "51a469e059a5e1a3675db731f55209d3"
}
Frame {
msec: 2992
- hash: "02dd88bf2766c756b840bea3e6f7dd80"
+ hash: "dca7d50a3faab1f049bece34bd16b8c4"
}
Frame {
msec: 3008
- hash: "edf9f3ca4b85ffba5ca051d96b1b3b64"
+ hash: "86dc86bafb01fa086caa3b22f9d393d9"
}
Frame {
msec: 3024
- hash: "7da796da178c888018981d7dd39b3784"
+ hash: "05754bd86070a6f01bf90ca2b964f695"
}
Frame {
msec: 3040
- hash: "d4b850c173169ec184634bb2001e3f3d"
+ hash: "911ec290ba303f0cac258cbb893bbf78"
}
Frame {
msec: 3056
- hash: "37afe96e32df2ac6031d70fe9ded7d56"
+ hash: "f27f29249426f46b8fb508372bcbb32d"
}
Frame {
msec: 3072
- hash: "7a0f09bc5d91c4295000d39c97b31d76"
+ hash: "2f452e2d519f33ee03db67ebd7f69e3b"
}
Frame {
msec: 3088
- hash: "afbbb94bc89ef4f9e321dd2c391d0af1"
+ hash: "35cf7747a75ea3f727c2fe1dae6136c5"
}
Frame {
msec: 3104
- hash: "93c4ff33449244b76103f0d35cc7a9e1"
+ hash: "6773187693f52a8f2c0e358e379b4d21"
}
Frame {
msec: 3120
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "abca1f00f7ec60c8c80ba5345898e54b"
}
Frame {
msec: 3136
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "9bee1da64534da97de349e1ee973cc9c"
}
Frame {
msec: 3152
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "087df06ca720918482f2e29653c7fbac"
}
Frame {
msec: 3168
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "5b08911bf0975bd6615bf29294e4b1f5"
}
Frame {
msec: 3184
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "dead4bb3768b65418f68bae7dd0bf004"
}
Frame {
msec: 3200
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "6bfe4c866936d8ae509650419ae12455"
}
Frame {
msec: 3216
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "7428bdd9609a2594be08fdeac6ff1e17"
}
Frame {
msec: 3232
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "d02f9f693e0ae8c7034bf727064ec28a"
}
Frame {
msec: 3248
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "b6284efd849547bbfefc22ec77d61062"
}
Frame {
msec: 3264
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "4b78b647be8e918e85edab0c23b6f882"
}
Frame {
msec: 3280
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "c4a02c18ce3574d057e6a54b30efadb3"
}
Frame {
msec: 3296
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "d1d190010239d0b02a697d1c63c748ab"
}
Frame {
msec: 3312
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "b198689d11aa59d937297e6fcf675c93"
}
Frame {
msec: 3328
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "218f3371beea895aefd28aa874012dcc"
}
Frame {
msec: 3344
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "1135de1b9a4ebf1d2829546d3c3f3903"
}
Frame {
msec: 3360
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "773a64cc7bb8e99a25078f348986e28f"
}
Frame {
msec: 3376
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "e8ce58aeb18b3f56ebd3d6f61ac94657"
}
Frame {
msec: 3392
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "6de92679c32c7f3e9d9b6ba3a47e65eb"
}
Frame {
msec: 3408
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "339b37207af10ad986269e21ab37ff6d"
}
Frame {
msec: 3424
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "ac01f0708800fdfdacec67ac9e80602f"
}
Frame {
msec: 3440
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "9de89a748b1e18eb6ed94875af6f26de"
}
Frame {
msec: 3456
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "d091e4a93c2beafb0ce4b6dff6d5b05f"
}
Frame {
msec: 3472
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "9532271085864d2fde3aa6e572599588"
}
Frame {
msec: 3488
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "d00804b42ab1c1f082a9f394ff4d666e"
}
Frame {
msec: 3504
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "2c745f007353e6f8a7195470ba9492c2"
}
Frame {
msec: 3520
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "b4e952acb734ab1a608297fcb44fbe46"
}
Frame {
msec: 3536
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "75ceed3c2ddd557866145393fa50a12f"
}
Frame {
msec: 3552
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "8b83b80554dd4a1266184092d380554c"
}
Frame {
msec: 3568
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "973bddb1b2f9dbadd40c0de3ca7c3510"
}
Frame {
msec: 3584
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "5691b5bf54b50d4ff0a717873e001c00"
}
Frame {
msec: 3600
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "8b26b0aa8b06da031354c59d7fb41bf0"
}
Frame {
msec: 3616
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "45786c39a10b8e1cf399df98f3fb7ffb"
}
Frame {
msec: 3632
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "c6d0be03e167c16566372cc992604dfb"
}
Frame {
msec: 3648
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "8d6e057550632d143faf996a62bbd1cd"
}
Frame {
msec: 3664
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "7e3a321b95d5f62f0da2b10324b485b6"
}
Frame {
msec: 3680
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "e842f18dfd36947b2fa086a4d0bb2ec5"
}
Frame {
msec: 3696
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "a9359e143dae4113437a43cc00493479"
}
Frame {
msec: 3712
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "2eca61c837cca9beb6d1834eafe8c538"
}
Frame {
msec: 3728
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "bf2de49dc940043a955a075dcda1b52b"
}
Frame {
msec: 3744
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "bf2de49dc940043a955a075dcda1b52b"
}
Frame {
msec: 3760
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "bf2de49dc940043a955a075dcda1b52b"
}
Frame {
msec: 3776
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "bf2de49dc940043a955a075dcda1b52b"
}
Frame {
msec: 3792
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "bf2de49dc940043a955a075dcda1b52b"
}
Frame {
msec: 3808
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "bf2de49dc940043a955a075dcda1b52b"
}
Frame {
msec: 3824
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "bf2de49dc940043a955a075dcda1b52b"
}
Frame {
msec: 3840
- image: "test-pathview-2.3.png"
+ hash: "bf2de49dc940043a955a075dcda1b52b"
}
Frame {
msec: 3856
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ image: "test-pathview-2.4.png"
}
Frame {
msec: 3872
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Frame {
- msec: 3888
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Frame {
- msec: 3904
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Frame {
- msec: 3920
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Frame {
- msec: 3936
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Frame {
- msec: 3952
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Frame {
- msec: 3968
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Frame {
- msec: 3984
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Frame {
- msec: 4000
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Frame {
- msec: 4016
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "bf2de49dc940043a955a075dcda1b52b"
}
Mouse {
type: 2
button: 1
buttons: 1
- x: 305; y: 280
+ x: 363; y: 156
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 4032
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ msec: 3888
+ hash: "cf72e9ae81dcf833f7a48ffa348b8966"
+ }
+ Frame {
+ msec: 3904
+ hash: "cf72e9ae81dcf833f7a48ffa348b8966"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 305; y: 281
+ x: 363; y: 157
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 4048
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ msec: 3920
+ hash: "cf72e9ae81dcf833f7a48ffa348b8966"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 306; y: 281
+ x: 361; y: 158
modifiers: 0
sendToViewport: true
}
- Frame {
- msec: 4064
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
Mouse {
type: 5
button: 0
buttons: 1
- x: 308; y: 281
+ x: 358; y: 158
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 4080
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ msec: 3936
+ hash: "1cea11ee435caa8515797ee5c4fb79cb"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 310; y: 282
+ x: 352; y: 159
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 4096
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ msec: 3952
+ hash: "0da1743b066a73dd19aff6b60ef76830"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 313; y: 283
+ x: 349; y: 160
modifiers: 0
sendToViewport: true
}
@@ -1248,1056 +1548,308 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 317; y: 283
+ x: 342; y: 162
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 4112
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ msec: 3968
+ hash: "ddace1df123421675bc9153c4017cdd0"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 321; y: 283
+ x: 327; y: 166
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 4128
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ msec: 3984
+ hash: "0c57fe8eef4e41e326dbc82f7b6ae87b"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 328; y: 283
+ x: 320; y: 168
modifiers: 0
sendToViewport: true
}
- Frame {
- msec: 4144
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 341; y: 283
+ type: 3
+ button: 1
+ buttons: 0
+ x: 320; y: 168
modifiers: 0
sendToViewport: true
}
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 347; y: 282
- modifiers: 0
- sendToViewport: true
+ Frame {
+ msec: 4000
+ hash: "53968b4b57c09fe0b47e720031c1eed7"
}
Frame {
- msec: 4160
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ msec: 4016
+ hash: "2ab593b498892bf8bacef875e524284f"
}
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 360; y: 281
- modifiers: 0
- sendToViewport: true
+ Frame {
+ msec: 4032
+ hash: "da77708f525ab9d1d3f760595a1f9efa"
}
Frame {
- msec: 4176
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ msec: 4048
+ hash: "ce73ecb012139dda8e21cb0dce95582a"
}
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 385; y: 282
- modifiers: 0
- sendToViewport: true
+ Frame {
+ msec: 4064
+ hash: "086754b023addbbecf3b361382133279"
}
Frame {
- msec: 4192
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ msec: 4080
+ hash: "adcb9881f246993ff35af24f8750ea2f"
}
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 433; y: 292
- modifiers: 0
- sendToViewport: true
+ Frame {
+ msec: 4096
+ hash: "974b423c99316c9a5b2e097bb3a42fcc"
}
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 486; y: 307
- modifiers: 0
- sendToViewport: true
+ Frame {
+ msec: 4112
+ hash: "e37263abe79b203cfc4306aa7e5c4853"
}
Frame {
- msec: 4208
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ msec: 4128
+ hash: "0136eaf2704a5af80f8ba26bbb7f51da"
}
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 538; y: 322
- modifiers: 0
- sendToViewport: true
+ Frame {
+ msec: 4144
+ hash: "55fe0338e24aa91790f2cd466464acae"
}
Frame {
- msec: 4224
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ msec: 4160
+ hash: "9fa5eaebd34e2af136a2894f360301a5"
}
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 588; y: 336
- modifiers: 0
- sendToViewport: true
+ Frame {
+ msec: 4176
+ hash: "c48822e620b788947d8a5ec850d6313b"
}
Frame {
- msec: 4240
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ msec: 4192
+ hash: "ec763070f81e115a5e471923aa539683"
}
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 620; y: 343
- modifiers: 0
- sendToViewport: true
+ Frame {
+ msec: 4208
+ hash: "2aa84ad9ef88313a4c63e91bba959920"
}
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 677; y: 354
- modifiers: 0
- sendToViewport: true
+ Frame {
+ msec: 4224
+ hash: "14cf7ba825d704c4acc72670fd868d6c"
}
Frame {
- msec: 4256
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ msec: 4240
+ hash: "987bf945cd9c1cfe5bbb17442daa4f26"
}
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 733; y: 362
- modifiers: 0
- sendToViewport: true
+ Frame {
+ msec: 4256
+ hash: "5d4d80565bf4f522c79044d0df55a1fd"
}
Frame {
msec: 4272
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 785; y: 365
- modifiers: 0
- sendToViewport: true
+ hash: "d0a5ec7ff2c5b64c6691888412d0cc6d"
}
Frame {
msec: 4288
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 830; y: 365
- modifiers: 0
- sendToViewport: true
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 861; y: 357
- modifiers: 0
- sendToViewport: true
+ hash: "93750528b6f27df22423eb957a07b55f"
}
Frame {
msec: 4304
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 879; y: 346
- modifiers: 0
- sendToViewport: true
+ hash: "65fd0474f918bac61b46fde8ed8e3b59"
}
Frame {
msec: 4320
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 888; y: 335
- modifiers: 0
- sendToViewport: true
+ hash: "cd15f6499863ef84f0ad3b2ff48d6406"
}
Frame {
msec: 4336
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 893; y: 326
- modifiers: 0
- sendToViewport: true
- }
- Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 893; y: 326
- modifiers: 0
- sendToViewport: true
+ hash: "65101124208b062de9718b34fb43425b"
}
Frame {
msec: 4352
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "cb42d683dc5e4020891601afb0a77947"
}
Frame {
msec: 4368
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "88fdddbf2f766ffff7e77c7612d9cfee"
}
Frame {
msec: 4384
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "776c63f1bbc40624d7fedd6141fbdd97"
}
Frame {
msec: 4400
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "24f11b5abb33d8f180a56fca6f15ef45"
}
Frame {
msec: 4416
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "71d9ab083d15b57336ee278793815713"
}
Frame {
msec: 4432
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "b48e64cb1b8b39e7001af4e7c7d22098"
}
Frame {
msec: 4448
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "587ef2440cd021038cc902a3b1839ff4"
}
Frame {
msec: 4464
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "99e0485247c907c5b6e0f8d5dc7b8977"
}
Frame {
msec: 4480
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "3b2496d61eefaa413f0688afed150749"
}
Frame {
msec: 4496
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "0144d27095182c58e50ae1ccdbfaa05e"
}
Frame {
msec: 4512
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "06237be375826d2434dc564dd2eaf165"
}
Frame {
msec: 4528
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "7235d512503b134ac267b7128163eea2"
}
Frame {
msec: 4544
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "5d5f7ff9bd0a4aa316b764bec8524fe0"
}
Frame {
msec: 4560
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "9be01e649140f950cd882af2e8e1e27c"
}
Frame {
msec: 4576
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "0773e5d219d6fc4f2d385fd1bcd17f93"
}
Frame {
msec: 4592
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "32979d6f14c1aeca1f7ac0c5a330bbdc"
}
Frame {
msec: 4608
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "6f87571a59aa358755d80e94894fe7a9"
}
Frame {
msec: 4624
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "0e31c55386e8838f52024c49d4929710"
}
Frame {
msec: 4640
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "7d6c89f5fae7990643687512f2294449"
}
Frame {
msec: 4656
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "f8542ff33dbad93ed51a0801bd8af778"
}
Frame {
msec: 4672
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "8bed907fe5b04eec118ac4e7759386ae"
}
Frame {
msec: 4688
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "d84facac927215d8d83bd9e375fbace1"
}
Frame {
msec: 4704
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "f1c8b7dc9897713487fcc62c697f41ff"
}
Frame {
msec: 4720
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "611c45384b2abd883a4e3ec3bb30ebd3"
}
Frame {
msec: 4736
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "63e075c2cac3770e657217989cc7d80f"
}
Frame {
msec: 4752
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "63e075c2cac3770e657217989cc7d80f"
}
Frame {
msec: 4768
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "63e075c2cac3770e657217989cc7d80f"
}
Frame {
msec: 4784
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "63e075c2cac3770e657217989cc7d80f"
}
Frame {
msec: 4800
- image: "test-pathview-2.4.png"
+ hash: "63e075c2cac3770e657217989cc7d80f"
}
Frame {
msec: 4816
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ image: "test-pathview-2.5.png"
}
Frame {
msec: 4832
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "63e075c2cac3770e657217989cc7d80f"
}
Frame {
msec: 4848
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "63e075c2cac3770e657217989cc7d80f"
}
Frame {
msec: 4864
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "63e075c2cac3770e657217989cc7d80f"
}
Frame {
msec: 4880
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "63e075c2cac3770e657217989cc7d80f"
}
Frame {
msec: 4896
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "63e075c2cac3770e657217989cc7d80f"
}
Frame {
msec: 4912
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "63e075c2cac3770e657217989cc7d80f"
}
Frame {
msec: 4928
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "63e075c2cac3770e657217989cc7d80f"
}
Frame {
msec: 4944
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "63e075c2cac3770e657217989cc7d80f"
}
Frame {
msec: 4960
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "63e075c2cac3770e657217989cc7d80f"
}
Frame {
msec: 4976
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "63e075c2cac3770e657217989cc7d80f"
}
Frame {
msec: 4992
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "63e075c2cac3770e657217989cc7d80f"
}
Frame {
msec: 5008
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "63e075c2cac3770e657217989cc7d80f"
}
Frame {
msec: 5024
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "63e075c2cac3770e657217989cc7d80f"
}
Frame {
msec: 5040
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
+ hash: "63e075c2cac3770e657217989cc7d80f"
}
Frame {
msec: 5056
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Frame {
- msec: 5072
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Frame {
- msec: 5088
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Frame {
- msec: 5104
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Frame {
- msec: 5120
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Frame {
- msec: 5136
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Frame {
- msec: 5152
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Frame {
- msec: 5168
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Frame {
- msec: 5184
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Frame {
- msec: 5200
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Frame {
- msec: 5216
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Frame {
- msec: 5232
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Frame {
- msec: 5248
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Frame {
- msec: 5264
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Frame {
- msec: 5280
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Frame {
- msec: 5296
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Frame {
- msec: 5312
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Frame {
- msec: 5328
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Frame {
- msec: 5344
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Frame {
- msec: 5360
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Frame {
- msec: 5376
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Mouse {
- type: 2
- button: 1
- buttons: 1
- x: 242; y: 280
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 5392
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 244; y: 280
- modifiers: 0
- sendToViewport: true
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 246; y: 281
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 5408
- hash: "5e21e09fa0ec2b1e9f29be60100c40f2"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 251; y: 282
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 5424
- hash: "d269b601f6c58e4349a5bc41ed8040cb"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 261; y: 282
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 5440
- hash: "b5fb0c0e78b48380e5d9dd82be64554c"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 300; y: 279
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 5456
- hash: "86699ae4ad4491a39272704aa8d2be0a"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 350; y: 282
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 5472
- hash: "f7ad9df8715594e9012d9e6ba61784ae"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 417; y: 290
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 5488
- hash: "5d50347997afcdd437e8f5b1afd5fdb6"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 500; y: 300
- modifiers: 0
- sendToViewport: true
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 585; y: 309
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 5504
- hash: "40290cb6417848caf299aac419e78b3e"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 669; y: 315
- modifiers: 0
- sendToViewport: true
- }
- Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 669; y: 315
- modifiers: 0
- sendToViewport: true
- }
- Frame {
- msec: 5520
- hash: "cdd32a53cd968afc378069fa7fc08fc1"
- }
- Frame {
- msec: 5536
- hash: "2f0e8c2f895506b3d484da3024c0e823"
- }
- Frame {
- msec: 5552
- hash: "e97ab47515d55760919b4319f7aa2f4a"
- }
- Frame {
- msec: 5568
- hash: "e8698483768d3cf121985ffce93c89e0"
- }
- Frame {
- msec: 5584
- hash: "75f23e628458b6abce65873777ec2226"
- }
- Frame {
- msec: 5600
- hash: "5477a54c2c2fd9de2b76a82fb8c9c371"
- }
- Frame {
- msec: 5616
- hash: "c20f1a85cf8166664b1dc44986fc7f1a"
- }
- Frame {
- msec: 5632
- hash: "44f4b02055397a06c628564d9f2180f3"
- }
- Frame {
- msec: 5648
- hash: "09d79da372ded40a24d1fdc0d5d97fa6"
- }
- Frame {
- msec: 5664
- hash: "7fec934dac44b7365ef110fc9fa2ff0b"
- }
- Frame {
- msec: 5680
- hash: "d9f6e4e21629626f9f3fbdf879173147"
- }
- Frame {
- msec: 5696
- hash: "674967f6494a5aa45f4344142f54145f"
- }
- Frame {
- msec: 5712
- hash: "59090ec0960776ae02deb8f2365848a8"
- }
- Frame {
- msec: 5728
- hash: "6ced1eb439584cd55d7ea83b4c6ad89d"
- }
- Frame {
- msec: 5744
- hash: "2f93341754e279408ebe9389987d6354"
- }
- Frame {
- msec: 5760
- image: "test-pathview-2.5.png"
- }
- Frame {
- msec: 5776
- hash: "6ecfb56d8e685d6e251938ecc740a0d3"
- }
- Frame {
- msec: 5792
- hash: "eb3254187a72afde5091eb240f1ce043"
- }
- Frame {
- msec: 5808
- hash: "cc367bfa5264fa7539d26ca7f2b81300"
- }
- Frame {
- msec: 5824
- hash: "6a869340f179e768d271b28fd8983c1b"
- }
- Frame {
- msec: 5840
- hash: "e22f23a5d5e55eed1e74414dfd4da00f"
- }
- Frame {
- msec: 5856
- hash: "c6b0c88158ff5052bb3e8ff4c46fa0f3"
- }
- Frame {
- msec: 5872
- hash: "8cebf630fa954c5a3be2b26b29597379"
- }
- Frame {
- msec: 5888
- hash: "60bc980648f99ca37a80bff2e462f2f6"
- }
- Frame {
- msec: 5904
- hash: "8c3db2a7a7314931a5553408f41551af"
- }
- Frame {
- msec: 5920
- hash: "97323491971e95f6d09c83afbcadcbdc"
- }
- Frame {
- msec: 5936
- hash: "9abecb040056c3d07614c1d0253d08c6"
- }
- Frame {
- msec: 5952
- hash: "b3efc154d193cb69f074c511918f4976"
- }
- Frame {
- msec: 5968
- hash: "e8fd8d8ebfb33d0f7c7717f89dec87b8"
- }
- Frame {
- msec: 5984
- hash: "fe9eb2c5b292db6fedbdacb4e31b8d9c"
- }
- Frame {
- msec: 6000
- hash: "6e86cbefdb523a7153019aa6c3bdee40"
- }
- Frame {
- msec: 6016
- hash: "142b81c3de5c7140680f6c0ed77e7a55"
- }
- Frame {
- msec: 6032
- hash: "cfef661007ee19ef6c39cc784f3e8369"
- }
- Frame {
- msec: 6048
- hash: "1305eafc2ffd60605274e043829bce0c"
- }
- Frame {
- msec: 6064
- hash: "3c6d2fc8364dd9e5e0409cc6f3d16e78"
- }
- Frame {
- msec: 6080
- hash: "e1eb0c51700d3b5c56cf8555d9eb8cf6"
- }
- Frame {
- msec: 6096
- hash: "9778e7a92f9223f4a8b01edab2627c94"
- }
- Frame {
- msec: 6112
- hash: "7616da76832eace7846df67ff29524bd"
- }
- Frame {
- msec: 6128
- hash: "f7bf509b2764a44227e1b6ebbb6bcabe"
- }
- Frame {
- msec: 6144
- hash: "a2efece1011c7f90872154242db70d46"
- }
- Frame {
- msec: 6160
- hash: "f77dbceb3f26533f2f795ea16116a880"
- }
- Frame {
- msec: 6176
- hash: "8874effc7fa1455c658490f42aad0046"
- }
- Frame {
- msec: 6192
- hash: "6d8e2a8c79eed4edbc7a1005fd7e85fd"
- }
- Frame {
- msec: 6208
- hash: "7d0f33ce8f934f0d4bfd6ac5b50bc0a6"
- }
- Frame {
- msec: 6224
- hash: "1aefde7dbbd6ca7f57637147bfd7a664"
- }
- Frame {
- msec: 6240
- hash: "524fa1fc729a033983817fd9591dff09"
- }
- Frame {
- msec: 6256
- hash: "c5559eb1e5bb5d2ab20888831a3924a0"
- }
- Frame {
- msec: 6272
- hash: "e5e78ff025bfa205f6ad243484122ec1"
- }
- Frame {
- msec: 6288
- hash: "b3a4e501838e7c44f9b0e21b263922a3"
- }
- Frame {
- msec: 6304
- hash: "c35ddb641840b7d7a100e074aab82bb8"
- }
- Frame {
- msec: 6320
- hash: "1121ff859d3a120efd8d3f6b307d2f5c"
- }
- Frame {
- msec: 6336
- hash: "2be325c442cfc17ae7b722add60170e1"
- }
- Frame {
- msec: 6352
- hash: "c3e86d4a73c739c159e71255ca08457e"
- }
- Frame {
- msec: 6368
- hash: "fc56984eb2c3c9db61a54edcfe67f36b"
- }
- Frame {
- msec: 6384
- hash: "477421a20f47af33b4272fd8f63718bb"
- }
- Frame {
- msec: 6400
- hash: "dee4659125ff750159c5b5ec0acd6a99"
- }
- Frame {
- msec: 6416
- hash: "31dce66ad26dbcee6f1515dd43a94354"
- }
- Frame {
- msec: 6432
- hash: "25c4478c27d808b85746cd65fbb1f93f"
- }
- Frame {
- msec: 6448
- hash: "f9094ea959b54b92a6d39db6cd9b5f10"
- }
- Frame {
- msec: 6464
- hash: "47f1d0f234073353ca233206c2872093"
- }
- Frame {
- msec: 6480
- hash: "3a6cf2c77f1ae99977f2ed0b4683aecf"
- }
- Frame {
- msec: 6496
- hash: "df203035dbd68ffe2c9dc532061e7927"
- }
- Frame {
- msec: 6512
- hash: "20f69f8e32fd217967feb9a955e27717"
- }
- Frame {
- msec: 6528
- hash: "0bd932d1953ee28c38a359ddfb0c2075"
- }
- Frame {
- msec: 6544
- hash: "0c6c75cca96a1d04c9b60d9bd1543318"
- }
- Frame {
- msec: 6560
- hash: "9b4c8f6cf066800c1f2bb07357fc2e0d"
- }
- Frame {
- msec: 6576
- hash: "eb861eb18ddb237cd11d24e101be83d1"
- }
- Frame {
- msec: 6592
- hash: "086db75c06bf1fb1f527f5c8e6255d02"
- }
- Frame {
- msec: 6608
- hash: "e807b1166ca3f658c780b1fef8400b8d"
- }
- Frame {
- msec: 6624
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 6640
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 6656
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 6672
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 6688
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 6704
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 6720
- image: "test-pathview-2.6.png"
- }
- Frame {
- msec: 6736
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 6752
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 6768
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 6784
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 6800
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 6816
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 6832
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 6848
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 6864
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 6880
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 6896
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 6912
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 6928
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 6944
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 6960
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 6976
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 6992
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 7008
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 7024
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 7040
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 7056
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 7072
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 7088
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 7104
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 7120
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 7136
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 7152
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 7168
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 7184
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 7200
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 7216
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 7232
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 7248
- hash: "a9c65a178a4b4598705bf736c0b1b595"
- }
- Frame {
- msec: 7264
- hash: "a9c65a178a4b4598705bf736c0b1b595"
+ hash: "34967fb7248c860643bdc01e0135309f"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.0.png b/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.0.png
index d94ea1961e..af0e7817b8 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.1.png b/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.1.png
index df940dfe4a..6f1878f221 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.2.png b/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.2.png
index d10afe117d..97f09f7656 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.2.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.3.png b/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.3.png
index 8f99617efd..878875ada4 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.3.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.4.png b/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.4.png
index 18b1c09679..cdbe606b10 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.4.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.5.png b/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.5.png
index e15d688f62..7b78f7af50 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.5.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.6.png b/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.6.png
new file mode 100644
index 0000000000..d7b5943f34
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.6.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.qml b/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.qml
index 949807d96d..bc900c69af 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativepathview/data/test-pathview.qml
@@ -6,381 +6,477 @@ VisualTest {
}
Frame {
msec: 16
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ image: "test-pathview.0.png"
}
Frame {
msec: 32
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
}
Frame {
msec: 48
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
}
Frame {
msec: 64
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
}
Frame {
msec: 80
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
}
Frame {
msec: 96
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
}
Frame {
msec: 112
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
}
Frame {
msec: 128
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
}
Frame {
msec: 144
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
}
Frame {
msec: 160
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
}
Frame {
msec: 176
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
}
Frame {
msec: 192
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
}
Frame {
msec: 208
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
}
Frame {
msec: 224
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
}
Frame {
msec: 240
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
}
Frame {
msec: 256
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
}
Frame {
msec: 272
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
}
Frame {
msec: 288
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
}
Frame {
msec: 304
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
}
Frame {
msec: 320
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
}
Frame {
msec: 336
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
}
Frame {
msec: 352
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
}
Frame {
msec: 368
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
}
Frame {
msec: 384
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
}
Frame {
msec: 400
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
}
Frame {
msec: 416
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
}
Frame {
msec: 432
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
}
Frame {
msec: 448
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
}
Frame {
msec: 464
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
}
Frame {
msec: 480
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
}
Frame {
msec: 496
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
}
Frame {
msec: 512
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
}
Frame {
msec: 528
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
}
Frame {
msec: 544
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 363; y: 161
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 560
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 362; y: 160
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 576
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b9fed927475786f6f7aefc554cfc1afe"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 361; y: 159
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 357; y: 159
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 592
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "731c8547a72c64ac86aec87c0a9a12cb"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 348; y: 157
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 330; y: 157
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 608
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "d9d7dd7ea05499f028964fdd11af0fe6"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 286; y: 161
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 624
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "361879f350c448a484b71a9e7a42b87f"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 254; y: 163
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 640
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "998da4b3e36ee3e17deb2b5a097661da"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 240; y: 165
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 225; y: 167
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 656
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "1b3f9758bd9842cc9545b494499f87c4"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 191; y: 171
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 672
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "7e87f7c233dad50549e4bdafe10bb48e"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 174; y: 171
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 153; y: 171
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 153; y: 171
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 688
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "01ceb2fea81f2192ab11d7d6e1df879a"
}
Frame {
msec: 704
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "9afa862248bd527e07374a5c2f2036a1"
}
Frame {
msec: 720
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "e06439495148bfbf059cfe2b5df22840"
}
Frame {
msec: 736
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b206a28d6f3be8cba9595849328b27b8"
}
Frame {
msec: 752
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "646e4529bf554dceee0140ec56a02d1c"
}
Frame {
msec: 768
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "31bdcf1f178d65e033e23dfbdcb9dc5f"
}
Frame {
msec: 784
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b4e897356814ca2dddbc3644b1782f36"
}
Frame {
msec: 800
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "669e5d682aae8727640e0e0f4e855a60"
}
Frame {
msec: 816
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "892007b1a379c617412502499df92d01"
}
Frame {
msec: 832
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "f4d66daa2d428aa712a73ded2de7a361"
}
Frame {
msec: 848
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "0c21e69bed6dc2d6b7c23c20714aca67"
}
Frame {
msec: 864
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "189909bdbfeb1f02ad527fbc438d567d"
}
Frame {
msec: 880
- hash: "01b9c877f51b878ed262943aedcf89b4"
+ hash: "b2fcbc0657474e1b6d27e1f2f93be35b"
}
Frame {
msec: 896
- hash: "01b9c877f51b878ed262943aedcf89b4"
- }
- Mouse {
- type: 2
- button: 1
- buttons: 1
- x: 623; y: 222
- modifiers: 0
- sendToViewport: true
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 621; y: 222
- modifiers: 0
- sendToViewport: true
+ hash: "4407d7ad1b6a40b2355145aee136ff15"
}
Frame {
msec: 912
- hash: "01b9c877f51b878ed262943aedcf89b4"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 609; y: 230
- modifiers: 0
- sendToViewport: true
+ hash: "347ada687af0a97f0a862a1f3a1132be"
}
Frame {
msec: 928
- hash: "d69c0678ce2025a8921b089311d219ea"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 583; y: 248
- modifiers: 0
- sendToViewport: true
+ hash: "db6217ff0194c5a3f9ca9ea7e3b3dfd8"
}
Frame {
msec: 944
- hash: "55a852b268151d660e4945da88b04022"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 559; y: 258
- modifiers: 0
- sendToViewport: true
+ hash: "8a94ca0ee93daaa1bdcdbfc8a80713c1"
}
Frame {
msec: 960
- image: "test-pathview.0.png"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 547; y: 264
- modifiers: 0
- sendToViewport: true
- }
- Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 547; y: 264
- modifiers: 0
- sendToViewport: true
+ hash: "ab24d0c8545518cbaff876976247be2c"
}
Frame {
msec: 976
- hash: "55ab61911405e762b39b38d1371ef845"
+ image: "test-pathview.1.png"
}
Frame {
msec: 992
- hash: "be3de45165f2f0916f734fecf3f48c47"
+ hash: "1535dea92038cf87395a616841fd9bf6"
}
Frame {
msec: 1008
- hash: "0a523daec6b591a2b5030c6c0b95cb24"
+ hash: "1535dea92038cf87395a616841fd9bf6"
}
Frame {
msec: 1024
- hash: "22da168e523fa385cce1f2e6a05e1332"
+ hash: "1535dea92038cf87395a616841fd9bf6"
}
Frame {
msec: 1040
- hash: "464cb37780cf126df6dad4169445c7bc"
+ hash: "1535dea92038cf87395a616841fd9bf6"
}
Frame {
msec: 1056
- hash: "666b06a0fbe2d10fbf3e15883a166c60"
+ hash: "1535dea92038cf87395a616841fd9bf6"
}
Frame {
msec: 1072
- hash: "223732cd526e09155ca99c80780bc3fa"
+ hash: "1535dea92038cf87395a616841fd9bf6"
}
Frame {
msec: 1088
- hash: "c74cc48188b05c5426a6b955ed9f09a3"
+ hash: "1535dea92038cf87395a616841fd9bf6"
}
Frame {
msec: 1104
- hash: "8d09a95ab09f87277fcc727e9c5da0fb"
+ hash: "1535dea92038cf87395a616841fd9bf6"
}
Frame {
msec: 1120
- hash: "71b7d4ec45270158ba4ca96817d8f231"
+ hash: "1535dea92038cf87395a616841fd9bf6"
}
Frame {
msec: 1136
- hash: "4847a1e7d792ed58e3476112b02c6fab"
+ hash: "1535dea92038cf87395a616841fd9bf6"
}
Frame {
msec: 1152
- hash: "ef444a3a960bdc176e004b949e5c89ce"
+ hash: "1535dea92038cf87395a616841fd9bf6"
}
Frame {
msec: 1168
- hash: "1ebf4badb7f4ef3938868a74740fcbce"
+ hash: "1535dea92038cf87395a616841fd9bf6"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 378; y: 161
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 1184
- hash: "022918cd4b54750b0ad28bcb00108f51"
+ hash: "1535dea92038cf87395a616841fd9bf6"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 376; y: 161
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 1200
- hash: "1ea398b2b7c52b35981c98b60d5d7a02"
+ hash: "1535dea92038cf87395a616841fd9bf6"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 374; y: 161
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 373; y: 161
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 1216
- hash: "05d7619ed0154fa414686522a7ca86c4"
+ hash: "c612bb9906f18786ef7cc6f4e56de218"
}
- Frame {
- msec: 1232
- hash: "03274e26ea57d1264f21d306533476ef"
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 367; y: 160
+ modifiers: 0
+ sendToViewport: true
}
- Frame {
- msec: 1248
- hash: "5109372d6c62225aaf971aa53c708bee"
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 353; y: 160
+ modifiers: 0
+ sendToViewport: true
}
Frame {
- msec: 1264
- hash: "71f10446437963eccb87dd40c172118f"
+ msec: 1232
+ hash: "ffec210dd863ed32a780506f61b06056"
}
Mouse {
- type: 2
- button: 1
+ type: 5
+ button: 0
buttons: 1
- x: 708; y: 240
+ x: 328; y: 157
modifiers: 0
sendToViewport: true
}
@@ -388,55 +484,59 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 707; y: 240
+ x: 303; y: 155
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 1280
- hash: "e47426491548162622f9a281c3d062ec"
+ msec: 1248
+ hash: "9613c658f267d19b84d6e7ef2a676fed"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 685; y: 252
+ x: 280; y: 153
modifiers: 0
sendToViewport: true
}
- Frame {
- msec: 1296
- hash: "e889fba64d9f94fe18c3750dd6ad9d00"
- }
Mouse {
type: 5
button: 0
buttons: 1
- x: 635; y: 264
+ x: 253; y: 151
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 1312
- hash: "7fe200757a6bf752906d195fe341be14"
+ msec: 1264
+ hash: "8c5dd8d0f9f434530b20e14a84af9f46"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 569; y: 280
+ x: 230; y: 151
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 211; y: 151
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 1328
- hash: "aa1f4147dc3fd66f6d9e2605d0759951"
+ msec: 1280
+ hash: "a956e8e9ca8958c387f8f5ce374cdec9"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 533; y: 294
+ x: 193; y: 153
modifiers: 0
sendToViewport: true
}
@@ -444,75 +544,99 @@ VisualTest {
type: 3
button: 1
buttons: 0
- x: 533; y: 294
+ x: 193; y: 153
modifiers: 0
sendToViewport: true
}
Frame {
+ msec: 1296
+ hash: "712e865d894f179cfd9d86b08e60811a"
+ }
+ Frame {
+ msec: 1312
+ hash: "db5c1f2af2e72ff4edce83cb342b5263"
+ }
+ Frame {
+ msec: 1328
+ hash: "834f0aa26c66234491468c1b27a2d329"
+ }
+ Frame {
msec: 1344
- hash: "2b7163ea45860cf81f208c2b68c418b5"
+ hash: "78a2a4b60db730a7367bc77e1dfc1a1b"
}
Frame {
msec: 1360
- hash: "a89bd1204fb17d9d8ce7b7f4279e9b1f"
+ hash: "a8ff2277b5f7d515bc5a9af1f0e77197"
}
Frame {
msec: 1376
- hash: "683e52637fd5d96ded35f5ade9679822"
+ hash: "e05d730624025000b831860f5b99e8ac"
}
Frame {
msec: 1392
- hash: "2aa16f06e8bed201746558b1003f7d63"
+ hash: "54aa124492ea742e4327f1d2b45ab620"
}
Frame {
msec: 1408
- hash: "f2e40e75ddb8004917ae5b8cf144a322"
+ hash: "bc700bee41ac384a2555723b010e9041"
}
Frame {
msec: 1424
- hash: "0f7f64373b065a454c02c32c52a5ef79"
+ hash: "26f66098c505cea4715a89b6a2232759"
}
Frame {
msec: 1440
- hash: "fb4fbd2b3696bfb6135797b1f0158b5c"
+ hash: "00f3255a3ead315410d8c0d338779689"
}
Frame {
msec: 1456
- hash: "7a8eafad65ff191a97dcf910393ba4e4"
+ hash: "154e7d86d7602ebba38a0d63b211894d"
}
Frame {
msec: 1472
- hash: "3362deae62ba96853d85827f21cec589"
+ hash: "87cf2bff69ebd75af69d0a7c7f668b07"
}
Frame {
msec: 1488
- hash: "0653838fa3fb5b32e561adc20becc9d2"
+ hash: "f221b870ecccb1669b6223e5431c31d1"
}
Frame {
msec: 1504
- hash: "482e78e6b54cabe007f7e7f4f27a07ee"
+ hash: "40a9d4c522d9fd831be2ca698ac10670"
}
Frame {
msec: 1520
- hash: "b51f60864896808c6e41d8a0a990676d"
+ hash: "7ad47479d99fd4d9fde96fef242bdc20"
}
Frame {
msec: 1536
- hash: "d77e59d69b7c21c82bce9a25d548358c"
+ hash: "b91912801c790d849399306c693a4d33"
}
Frame {
msec: 1552
- hash: "b3dddbb1eee0e2f222434511073c4620"
+ hash: "e5c8d361abcbc15df0b0b82728cb5b84"
}
Frame {
msec: 1568
- hash: "d5e0d191582291b269b9e93241d9ac03"
+ hash: "3f2f82c925e93d4593581cdba16f361f"
+ }
+ Frame {
+ msec: 1584
+ hash: "7007fd0595c188a9a5b3ff31b0514aa5"
+ }
+ Frame {
+ msec: 1600
+ hash: "118661091df765ae35c152c7fe818029"
+ }
+ Frame {
+ msec: 1616
+ hash: "0a8edd2a35f7921ced6e3aa7e571bc4b"
}
Mouse {
type: 2
button: 1
buttons: 1
- x: 637; y: 218
+ x: 339; y: 152
modifiers: 0
sendToViewport: true
}
@@ -520,27 +644,39 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 621; y: 240
+ x: 334; y: 152
modifiers: 0
sendToViewport: true
}
+ Frame {
+ msec: 1632
+ hash: "ef734ce4d7e1aee19a78b743c9923f90"
+ }
Mouse {
type: 5
button: 0
buttons: 1
- x: 613; y: 248
+ x: 245; y: 152
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 161; y: 148
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 1584
- hash: "8c12000da88abb70cbc370d2a2ca21d7"
+ msec: 1648
+ hash: "09a9925d5ec2fd03cfbf469bc22bf201"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 551; y: 288
+ x: 139; y: 150
modifiers: 0
sendToViewport: true
}
@@ -548,379 +684,335 @@ VisualTest {
type: 3
button: 1
buttons: 0
- x: 551; y: 288
+ x: 139; y: 150
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 1600
- hash: "2854533fd50f5ebb8fc43cf0041883e4"
- }
- Frame {
- msec: 1616
- hash: "64c0ba48b59addcbd9dc2a36c24b3070"
- }
- Frame {
- msec: 1632
- hash: "5ce463d514a776055897052defbae117"
- }
- Frame {
- msec: 1648
- hash: "16b25853ec30feee97c3f11a0ea5767e"
- }
- Frame {
msec: 1664
- hash: "55cfc9179923c935a44de0fee69d74ce"
+ hash: "6babcbf5582d5ed8f0cf52e233867055"
}
Frame {
msec: 1680
- hash: "47641fd7ec919b3c041c5acc04b0d083"
+ hash: "94dae9d52f3523e17f3f0e59ca24a069"
}
Frame {
msec: 1696
- hash: "466eedb320beed99d7eba5a71095438a"
+ hash: "0d417d25893a0454a729f5c23a2a6c28"
}
Frame {
msec: 1712
- hash: "a7520215940ca21acd148ca88c0fec62"
+ hash: "afd1bbca1dcfea8d1f0a340d86b07fa8"
}
Frame {
msec: 1728
- hash: "f5c8bff5c3305064dbaa777707994de3"
+ hash: "97e98982742b94dba8b6cb59397bcb66"
}
Frame {
msec: 1744
- hash: "95b37e22bb68634029e18bcef7e9502c"
+ hash: "a0ad8cbbd0daa0afd3831e8a071b9a0e"
}
Frame {
msec: 1760
- hash: "f60cccf793bd6d356d69b1394638a201"
+ hash: "f71826bcd6ea91d2f64d627a390c379d"
}
Frame {
msec: 1776
- hash: "d77a5c2553e9391c14a49dba951ae236"
+ hash: "7699da01cf1ee9a7f404ab053241b530"
}
Frame {
msec: 1792
- hash: "0bfa2f6e5fa25a9847c2515de8ad53bd"
+ hash: "6aba727ecc562d7b5555eae427e6978b"
}
Frame {
msec: 1808
- hash: "202c077b20213814545ab594987b3c46"
+ hash: "ef9c6daa5b04b0be9159594e04524fba"
}
Frame {
msec: 1824
- hash: "32c5d1644c4f6a3386b4300b1dadae2e"
+ hash: "6293ede5de83f3b01a3b4d8d87648089"
}
Frame {
msec: 1840
- hash: "c914c500507b9c7180dcf25e985135e9"
+ hash: "c3b34d8592f88622cad0f9353d08e739"
}
Frame {
msec: 1856
- hash: "62095b2214425007cb19a6218819ed21"
+ hash: "880f3cb9d5dbe06cdf17e3a953d4562d"
}
Frame {
msec: 1872
- hash: "06d25e03eca85906c93d60b7c80b353c"
+ hash: "ed381ce920863a5a6627f383a88ea2fe"
}
Frame {
msec: 1888
- hash: "605992eb3f636b705b4b6dd7dfbe1a5f"
+ hash: "b5bc40b8c4abb6458aeb67eda73507b6"
}
Frame {
msec: 1904
- hash: "3241ccb6da86acc69bb07c044ba5bade"
+ hash: "482cb61b7fac4b1654483f846b8b6717"
}
Frame {
msec: 1920
- image: "test-pathview.1.png"
+ hash: "e1a4a16d2cf5132a9fbb0869ed6082d9"
}
Frame {
msec: 1936
- hash: "f09fe53cd6698a94d1626df1a1e4079b"
+ image: "test-pathview.2.png"
}
Frame {
msec: 1952
- hash: "aff96cfa2f88f1f2ce6af5e6a838fb79"
+ hash: "f8874aaab1e65cf9b86d6b5174c3d2c8"
}
Frame {
msec: 1968
- hash: "dddc255c053608f6b199cebb40e164bc"
- }
- Mouse {
- type: 2
- button: 1
- buttons: 1
- x: 595; y: 236
- modifiers: 0
- sendToViewport: true
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 565; y: 256
- modifiers: 0
- sendToViewport: true
+ hash: "d8490adeaa793352b812e832f4cb079a"
}
Frame {
msec: 1984
- hash: "345864eccf0b48f94097c9e0f037d71d"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 507; y: 286
- modifiers: 0
- sendToViewport: true
+ hash: "85fdb99926ba34a25fa964df11af9a5a"
}
Frame {
msec: 2000
- hash: "05e9776009f78d5466473c67a900e74d"
- }
- Mouse {
- type: 5
- button: 0
- buttons: 1
- x: 461; y: 288
- modifiers: 0
- sendToViewport: true
- }
- Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 461; y: 288
- modifiers: 0
- sendToViewport: true
+ hash: "ad137a75981c181838d97cbe313063ac"
}
Frame {
msec: 2016
- hash: "3a2bca372b5e492d71c73c945851a616"
+ hash: "bfa5cecfc0058b56ca66aa816ea098dc"
}
Frame {
msec: 2032
- hash: "f7957d18f0fc7421f7109dfc5debba3a"
+ hash: "53fe3960c2f332eb099fedd8421fcc94"
}
Frame {
msec: 2048
- hash: "cdd2a73b65b60991f1a3671cc668fa0e"
+ hash: "61b99ff526560c1589d2fc8737af2af2"
}
Frame {
msec: 2064
- hash: "d1646d66d0726f163cd32d4e985da46b"
+ hash: "f9dd63709bed985f5d691d27c0d32484"
}
Frame {
msec: 2080
- hash: "1d2ea750a691ba78943c8e6e1a950017"
+ hash: "964c20ada9ad9e83edd9b429bf681b83"
}
Frame {
msec: 2096
- hash: "c372a639a59e7cb1f5573de540dd0dcf"
+ hash: "997bc44a319c8ce8212387f7564c4005"
}
Frame {
msec: 2112
- hash: "964fc74c67a84cb84516389c57468ada"
+ hash: "892eda6e7446321483ffb1dbf44a0432"
}
Frame {
msec: 2128
- hash: "7310eb82821b9c209dd9e54d7b8d2e61"
+ hash: "62068dca6da7227882b6c3bc147c6f24"
}
Frame {
msec: 2144
- hash: "55b62e5afa61e8acb4faf97f7c2b1aa5"
+ hash: "2cd0c351c53234d4bbf4d2c74d313f59"
}
Frame {
msec: 2160
- hash: "4a9994d898380369eb705efb52839402"
+ hash: "cf812f971bb4f8ab3116cf2b14c325df"
}
Frame {
msec: 2176
- hash: "340811fac74949d8561c825547801ab0"
+ hash: "be296bd9ab4c38d95e6d7d445d8c7f68"
}
Frame {
msec: 2192
- hash: "4ab688cb3f157dff07a652a84d1ed1da"
+ hash: "536d0214c8c3f69ce8d4e1585128b2b8"
}
Frame {
msec: 2208
- hash: "a249bd338776e1f0d11ad70aebcb91b3"
+ hash: "f71452a0a6ef80758800d67e601a162b"
}
Frame {
msec: 2224
- hash: "6db4a1fd4f2597a180705b7d927ef512"
+ hash: "e57c099beb70d0a4ca2cbc94a2c3887e"
}
Frame {
msec: 2240
- hash: "7a47ac68a2a433d6edce92b772c3c608"
+ hash: "84cea22f64ff8b8838a7db0b19af1a4e"
}
Frame {
msec: 2256
- hash: "10f23e9e7729a6525549b71143ae539c"
+ hash: "04aa0d5d089779977f569d0f849b97dd"
}
Frame {
msec: 2272
- hash: "c977e2525e1fb7406414862fbd23fcf8"
+ hash: "85b52e125142d52d531132939930dd93"
}
Frame {
msec: 2288
- hash: "66251028e13fbd8f4f4d6836eb9615f9"
+ hash: "19bc7b318c21a6ce2be8ebde2e624fc3"
}
Frame {
msec: 2304
- hash: "925b50a4f9fe33d83463914c2221be82"
+ hash: "9cc744249cb031f0400e87893c1642af"
}
Frame {
msec: 2320
- hash: "7169f87de9a332bb94108661e9783a54"
+ hash: "a834706bbf573f37cf9f59c6c6cbbfa5"
}
Frame {
msec: 2336
- hash: "3ff3c0d2db8d1d65cfc7b14520cf41aa"
+ hash: "8db3eea9d47a162d8b0ee9cd18e194f3"
}
Frame {
msec: 2352
- hash: "0757ee68ff9923a2dbeb2129f3d4409c"
+ hash: "29da9b8da8f572ace93250abb8626a90"
}
Frame {
msec: 2368
- hash: "223dd69204949b494cda0762ef9965fd"
+ hash: "179b74316d885f9ee41066b9c475b57f"
}
Frame {
msec: 2384
- hash: "e97c6ba010857de43baeccbe85e2b262"
+ hash: "35464509ef5a9919af46a30d40c3edc7"
}
Frame {
msec: 2400
- hash: "9f170350da8b3785d5db9c24ce8cacf8"
+ hash: "aadec42355d38d149421ef6c93783e69"
}
Frame {
msec: 2416
- hash: "512f3a1ef9d5c263ab22559490dc3022"
+ hash: "cb8609791270e8e3c13da4579f85595f"
}
Frame {
msec: 2432
- hash: "0f3df7f366bc918c55172df45c22056e"
+ hash: "93e81e036a1bc30cc63ce703f8f43a34"
}
Frame {
msec: 2448
- hash: "71f8f04423b9a3356aa08235a91ddde7"
+ hash: "d08d18adf9ca92cd6597c2f51ae90383"
}
Frame {
msec: 2464
- hash: "0c48c98562318f7bac502c49fd09fd5e"
+ hash: "f54ec103787023647beaa4b992340385"
}
Frame {
msec: 2480
- hash: "17defd865ec00da3a74360044a906ea9"
+ hash: "61c9f72d78fce0b966a278abacc97ce6"
}
Frame {
msec: 2496
- hash: "07ef0b634016b52023174a6a593cb2aa"
+ hash: "5b0500ed0562b11280c3424412f74188"
}
Frame {
msec: 2512
- hash: "56d06c41e9ad55852654bcc6ce77504d"
+ hash: "b8ee7bc1e94ce35bf946ee71fa03d72c"
}
Frame {
msec: 2528
- hash: "05848d818a1531a649f9c23947e67855"
+ hash: "60ec6aceeaf82fc730c3df55b5c06f90"
}
Frame {
msec: 2544
- hash: "11c8397fb9d7b993761b08ba8c9958e5"
+ hash: "01cc732bad8b28483e79115c117ee26d"
}
Frame {
msec: 2560
- hash: "82255275db096d4150bd6cbd07805b3f"
+ hash: "b39c8d373524ba679c8567d16e6c5fe0"
}
Frame {
msec: 2576
- hash: "8dd3572656f6feb16d55d9318b6b6317"
+ hash: "2474476dfd021ff485c3a127bd22367e"
}
Frame {
msec: 2592
- hash: "8096e99b41c38a777df2010057119afb"
+ hash: "1342a1a0f6bc02159de1be058cf2411b"
}
Frame {
msec: 2608
- hash: "4187c358b8319dffdef36c67b02a4921"
+ hash: "a9721b64b9a5526335937245302249ae"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 72; y: 121
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 2624
- hash: "f891ef9a694bc6513f04e38d34c78e24"
+ hash: "109dc503ee86e731f52d25908daf5d36"
}
Frame {
msec: 2640
- hash: "77db9416fb003a5bb793b6573ca3a3cd"
+ hash: "94998dbab6792c518ca1f37f060f1d4b"
}
Frame {
msec: 2656
- hash: "152cf831ca83212fc026b1146c49a386"
+ hash: "3146ba4e63fa74279939b8de935f067c"
}
- Frame {
- msec: 2672
- hash: "a596b17515b471d5e67edda3baf8938b"
- }
- Frame {
- msec: 2688
- hash: "307db3e3c929da9783b12d7a2efdbda5"
- }
- Frame {
- msec: 2704
- hash: "1baff6641852daabdc639a35a4821189"
- }
- Frame {
- msec: 2720
- hash: "1f7df5b9c29773c7ae3d08005e7dd903"
- }
- Frame {
- msec: 2736
- hash: "7eb1937ccb2727c27e57b7d7960678d2"
- }
- Frame {
- msec: 2752
- hash: "8294b7a9105083887634973a1c64b70a"
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 73; y: 121
+ modifiers: 0
+ sendToViewport: true
}
- Frame {
- msec: 2768
- hash: "89ea9be6ebb280ff43d7b037d989aa53"
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 74; y: 122
+ modifiers: 0
+ sendToViewport: true
}
Frame {
- msec: 2784
- hash: "4cbeaef4f796eebf114c5e470389d30a"
+ msec: 2672
+ hash: "1aaea4143076bf8ba8190d94fcc89e64"
}
- Frame {
- msec: 2800
- hash: "0ce8c069bf3fb31d759d62e429c67a15"
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 79; y: 123
+ modifiers: 0
+ sendToViewport: true
}
- Frame {
- msec: 2816
- hash: "201f1b39884249f60a53a201f783ce9b"
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 95; y: 129
+ modifiers: 0
+ sendToViewport: true
}
Frame {
- msec: 2832
- hash: "bcafa2c76a9747a64565a3d3484c1c91"
+ msec: 2688
+ hash: "a0d8bb20189c3c65e5e72671788d9493"
}
- Frame {
- msec: 2848
- hash: "94c7ff74b5a37b6e03a47afc40fde107"
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 126; y: 138
+ modifiers: 0
+ sendToViewport: true
}
- Frame {
- msec: 2864
- hash: "08127dfa54da0616ce6cb19c646487ed"
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 161; y: 148
+ modifiers: 0
+ sendToViewport: true
}
Frame {
- msec: 2880
- image: "test-pathview.2.png"
+ msec: 2704
+ hash: "a0d8bb20189c3c65e5e72671788d9493"
}
Mouse {
- type: 2
- button: 1
+ type: 5
+ button: 0
buttons: 1
- x: 310; y: 277
+ x: 194; y: 158
modifiers: 0
sendToViewport: true
}
@@ -928,43 +1020,39 @@ VisualTest {
type: 5
button: 0
buttons: 1
- x: 324; y: 279
+ x: 239; y: 169
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 2896
- hash: "b76ce9c50fcbe38a29c1930302dd61da"
+ msec: 2720
+ hash: "a0d8bb20189c3c65e5e72671788d9493"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 330; y: 281
+ x: 280; y: 178
modifiers: 0
sendToViewport: true
}
- Frame {
- msec: 2912
- hash: "d30704b159562c21cd2f42f2370acdfa"
- }
Mouse {
type: 5
button: 0
buttons: 1
- x: 346; y: 283
+ x: 313; y: 185
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 2928
- hash: "db0916ebf147ee738aaf7492bd38c262"
+ msec: 2736
+ hash: "a0d8bb20189c3c65e5e72671788d9493"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 358; y: 285
+ x: 344; y: 191
modifiers: 0
sendToViewport: true
}
@@ -972,864 +1060,1508 @@ VisualTest {
type: 3
button: 1
buttons: 0
- x: 358; y: 285
+ x: 344; y: 191
modifiers: 0
sendToViewport: true
}
Frame {
+ msec: 2752
+ hash: "a0d8bb20189c3c65e5e72671788d9493"
+ }
+ Frame {
+ msec: 2768
+ hash: "a0d8bb20189c3c65e5e72671788d9493"
+ }
+ Frame {
+ msec: 2784
+ hash: "a0d8bb20189c3c65e5e72671788d9493"
+ }
+ Frame {
+ msec: 2800
+ hash: "a0d8bb20189c3c65e5e72671788d9493"
+ }
+ Frame {
+ msec: 2816
+ hash: "a0d8bb20189c3c65e5e72671788d9493"
+ }
+ Frame {
+ msec: 2832
+ hash: "a0d8bb20189c3c65e5e72671788d9493"
+ }
+ Frame {
+ msec: 2848
+ hash: "a0d8bb20189c3c65e5e72671788d9493"
+ }
+ Frame {
+ msec: 2864
+ hash: "a0d8bb20189c3c65e5e72671788d9493"
+ }
+ Frame {
+ msec: 2880
+ hash: "a0d8bb20189c3c65e5e72671788d9493"
+ }
+ Frame {
+ msec: 2896
+ image: "test-pathview.3.png"
+ }
+ Frame {
+ msec: 2912
+ hash: "a0d8bb20189c3c65e5e72671788d9493"
+ }
+ Frame {
+ msec: 2928
+ hash: "a0d8bb20189c3c65e5e72671788d9493"
+ }
+ Frame {
msec: 2944
- hash: "128058d78c8ceabf4867c8c2d23c8007"
+ hash: "a0d8bb20189c3c65e5e72671788d9493"
}
Frame {
msec: 2960
- hash: "9a59b6d1576b70796abcd58167e5135e"
+ hash: "a0d8bb20189c3c65e5e72671788d9493"
}
Frame {
msec: 2976
- hash: "2d5f030aa7ae5f7b5df1894f0250a391"
+ hash: "a0d8bb20189c3c65e5e72671788d9493"
}
Frame {
msec: 2992
- hash: "fb45fe68abab13f5eb4e8022f1e4e2f1"
+ hash: "1236a317e60f7ae3d3fb2fb521bad2a2"
}
Frame {
msec: 3008
- hash: "ad090853500b3720c1bb4d750731e25c"
+ hash: "1236a317e60f7ae3d3fb2fb521bad2a2"
}
Frame {
msec: 3024
- hash: "f8f560f26cc0b63f51858c5119b7a1ef"
+ hash: "1236a317e60f7ae3d3fb2fb521bad2a2"
}
Frame {
msec: 3040
- hash: "87e9d53c0ffcf7231693d9d6619ad37e"
+ hash: "1236a317e60f7ae3d3fb2fb521bad2a2"
}
Frame {
msec: 3056
- hash: "73000f490569eb178d47a00b96d39a17"
+ hash: "1236a317e60f7ae3d3fb2fb521bad2a2"
}
Frame {
msec: 3072
- hash: "b8a196eca9c3bd95659931115bec319f"
+ hash: "1236a317e60f7ae3d3fb2fb521bad2a2"
}
Frame {
msec: 3088
- hash: "5f9265d0818701ce08066b55a8bbd904"
+ hash: "1236a317e60f7ae3d3fb2fb521bad2a2"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 152; y: 143
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 3104
- hash: "9a62f2e25e8d32872e43fbdcdb838756"
+ hash: "1236a317e60f7ae3d3fb2fb521bad2a2"
}
Frame {
msec: 3120
- hash: "1c7b238074d274e4f105b5c2b7fd6dac"
+ hash: "1236a317e60f7ae3d3fb2fb521bad2a2"
}
Frame {
msec: 3136
- hash: "f6fbd5658a122ced7257852b4d38605d"
+ hash: "1236a317e60f7ae3d3fb2fb521bad2a2"
}
Frame {
msec: 3152
- hash: "24a0cc1d69213b12f9420fa9ffee7319"
+ hash: "1236a317e60f7ae3d3fb2fb521bad2a2"
}
Frame {
msec: 3168
- hash: "8811594c57e514da3afeb04460569e5d"
+ hash: "1236a317e60f7ae3d3fb2fb521bad2a2"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 151; y: 144
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 3184
- hash: "760d4afdc958184b5b68bc3bcc2f1d3b"
+ hash: "1236a317e60f7ae3d3fb2fb521bad2a2"
}
Frame {
msec: 3200
- hash: "b3b2ca99af9aa022dfebf71bfa1cd491"
+ hash: "1236a317e60f7ae3d3fb2fb521bad2a2"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 152; y: 145
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 153; y: 145
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 3216
- hash: "293dbff5edf4dde1f57ca3af1c4bce5e"
+ hash: "1236a317e60f7ae3d3fb2fb521bad2a2"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 155; y: 146
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 157; y: 146
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 3232
- hash: "0c48c98562318f7bac502c49fd09fd5e"
+ hash: "1b604ea70459a768fb37a6333000174b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 161; y: 147
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 164; y: 148
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 3248
- hash: "1cac8d792f55f3e47549d628bd729a7d"
+ hash: "25e0aabe364085a61b4572ef015dac2c"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 166; y: 148
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 168; y: 149
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 3264
- hash: "d63664b4a6c42c67a3c700e3a000fc07"
+ hash: "ee6fc5c1de08e6f13f23b26829d2cba2"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 170; y: 150
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 171; y: 150
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 3280
- hash: "be41201056bd58d4793c9c7b5cc63f3f"
+ hash: "b077c59359d047738d9ba739f591393b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 175; y: 150
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 177; y: 151
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 3296
- hash: "0ea52d61c7b8803d76340874b846783d"
+ hash: "2cc0b8d7bd088f2277f5e939c234114c"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 180; y: 152
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 183; y: 152
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 3312
- hash: "260c743db91b8802e2c27f8c92d620e5"
+ hash: "64703db84cd5bda3109546293783804d"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 187; y: 153
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 191; y: 154
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 3328
- hash: "33d3dbe981874cd04edd35a4e5bf4e68"
+ hash: "137cd88932ad1fdbfdbf1a80cccf7b3f"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 193; y: 154
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 195; y: 154
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 3344
- hash: "27d183bfe7a7775ba47578de7a5b2dcb"
+ hash: "ff9011d861c64bcad214b52cb4245583"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 197; y: 154
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 199; y: 155
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 3360
- hash: "a6c0bd87922ca8d40fe413ab8624dd24"
+ hash: "c3f0132e472d29ddee95c7349243d33e"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 202; y: 155
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 202; y: 155
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 3376
- hash: "218d68463d34cc31dc81756be9effd02"
+ hash: "42ae9c21dce6a7cd59de228dac775dd5"
}
Frame {
msec: 3392
- hash: "29e9148ab8c0aa66988a6bcda12b06ea"
+ hash: "3f8631caf6a98d83356b188d6f94e9a6"
}
Frame {
msec: 3408
- hash: "8cc09fb7e94b1bd0d3482e0bf5d0abec"
+ hash: "b2788cd1939a6dd42f12d8fd1282a122"
}
Frame {
msec: 3424
- hash: "39a595b99ed012a1e54b516b75f8652d"
+ hash: "0d1ab6e9f2780be0c392d20f4b3b9619"
}
Frame {
msec: 3440
- hash: "30754f5e10dc0d148f10a5eced16258a"
+ hash: "03fdd91b352798b1ff958c23c0bc5f35"
}
Frame {
msec: 3456
- hash: "85de32bfdfaea28e4c534dca69b1255e"
+ hash: "028fee3630fdb3cf862213c0466a56fe"
}
Frame {
msec: 3472
- hash: "459bda74f223c6cfbee12524939b09ef"
+ hash: "3ab76009ca029723e5cf0bf9bc154102"
}
Frame {
msec: 3488
- hash: "db2ae2401ff1a65911339e2292f075dd"
+ hash: "866c59b7dd545364b70ddbf21a8ee874"
}
Frame {
msec: 3504
- hash: "0cc18d7cbf42cb68baedd73cf59d8c08"
+ hash: "9b4ff972b1055db38900fc0c5007e7b0"
}
Frame {
msec: 3520
- hash: "36c72c3d608fc5126f4b62d4416ad54e"
+ hash: "cbe0073c84617e23f0679a08c1a78492"
}
Frame {
msec: 3536
- hash: "7f4db14f493a300ba37dae79a9d60084"
+ hash: "374a5e6070dd628ed031e80d44be1f3f"
}
Frame {
msec: 3552
- hash: "efe0031b95195bebfd887ef63c2ce441"
+ hash: "4d16c81f877585a82549cfc4f68c574d"
}
Frame {
msec: 3568
- hash: "ade092ef64fc3b1e4d4afc86dca3cf71"
+ hash: "64b2b4c374a730b138b3573095f45d2c"
}
Frame {
msec: 3584
- hash: "e57a7cf2f90b87fed0fd438599fabae3"
+ hash: "26c59f4131fdb01ac4771231341c75c3"
}
Frame {
msec: 3600
- hash: "1be372fe7de83c4d019e3856c03b39b6"
+ hash: "bf6a3fdb7c516ca9cfc09f1059cc8cdf"
}
Frame {
msec: 3616
- hash: "4cb14166395004b6f0f04c6d95879583"
+ hash: "1bfb86796087cd293c68205cce6ac294"
}
Frame {
msec: 3632
- hash: "a5ec71ba41f5fc0eeebf907749f26266"
+ hash: "e0f76f8fc7bd7756a4e004655f97f782"
}
Frame {
msec: 3648
- hash: "257ef3bb651dbd43635576563c0f97c7"
+ hash: "61d3aa5f827452482d8a4a903fe64acc"
}
Frame {
msec: 3664
- hash: "aa95d440ff9c75215bd2483befe18f78"
+ hash: "c8e42d3a5df195eaa091e50fc9dcd51e"
}
Frame {
msec: 3680
- hash: "670815d144a7838b02bf24cf586c8df4"
+ hash: "bb684dccf4c0a74dc091fb78c1be4f2b"
}
Frame {
msec: 3696
- hash: "5f58ff1dd96ee21710ce2aeee81c232b"
+ hash: "54341e5a76fb4657021c41e6e3f3d496"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 117; y: 142
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 118; y: 142
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 3712
- hash: "0c5a6c2dfbac5b97481b8e505fd4c4eb"
+ hash: "435ee710e108df42f659250ad7dbdb5e"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 118; y: 143
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 3728
- hash: "b269e9fe4d14537c8bef0b66effe7319"
+ hash: "0c7078ec0d4a1dea84e0fba06323c533"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 119; y: 143
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 120; y: 143
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 3744
- hash: "b269e9fe4d14537c8bef0b66effe7319"
+ hash: "854103790c02ca86fa011ef1b0f2be0a"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 121; y: 144
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 122; y: 144
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 3760
- hash: "b269e9fe4d14537c8bef0b66effe7319"
+ hash: "1a5995196e5bb4d1464ca76191af72d5"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 123; y: 144
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 124; y: 144
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 3776
- hash: "b269e9fe4d14537c8bef0b66effe7319"
+ hash: "397bbd080cae99790621642fab6ded91"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 126; y: 144
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 129; y: 145
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 3792
- hash: "b269e9fe4d14537c8bef0b66effe7319"
+ hash: "66ecad306911060329dcf7695c358e87"
}
Mouse {
- type: 2
- button: 1
+ type: 5
+ button: 0
buttons: 1
- x: 174; y: 234
+ x: 132; y: 145
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 135; y: 146
modifiers: 0
sendToViewport: true
}
Frame {
msec: 3808
- hash: "9480eb8761d4ce90971903fcfab1e09e"
+ hash: "c06da5f40f3f59f576a1d540d0b3244f"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 176; y: 236
+ x: 139; y: 147
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 143; y: 149
modifiers: 0
sendToViewport: true
}
Frame {
msec: 3824
- hash: "30a6ac631e1a3433f252f56ee4337cdc"
+ hash: "a88d97691539dce19af4c14baf610275"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 179; y: 238
+ x: 147; y: 150
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 152; y: 151
modifiers: 0
sendToViewport: true
}
Frame {
msec: 3840
- image: "test-pathview.3.png"
+ hash: "a07dca2c0014609ca5241612550992f5"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 156; y: 152
+ modifiers: 0
+ sendToViewport: true
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 184; y: 243
+ x: 161; y: 153
modifiers: 0
sendToViewport: true
}
Frame {
msec: 3856
- hash: "ed07f9eea6cd2cd78a3e2479137f843d"
+ image: "test-pathview.4.png"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 185; y: 244
+ x: 168; y: 155
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 175; y: 155
modifiers: 0
sendToViewport: true
}
Frame {
msec: 3872
- hash: "7a5b201cc8725dbf15d89907fffd4ee3"
+ hash: "e5a4e76dd607ba1bae97aaf184ee009a"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 197; y: 250
+ x: 184; y: 157
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 194; y: 158
modifiers: 0
sendToViewport: true
}
Frame {
msec: 3888
- hash: "bc2433b9e5f03cdbd35922d145a4ce59"
+ hash: "bb1d2614e590562479fc8d301bc7402f"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 213; y: 256
+ x: 203; y: 160
modifiers: 0
sendToViewport: true
}
Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 213; y: 256
+ type: 5
+ button: 0
+ buttons: 1
+ x: 211; y: 160
modifiers: 0
sendToViewport: true
}
Frame {
msec: 3904
- hash: "d443f23aa5449d5f2b11c47feab5a0ae"
+ hash: "5d9fd2238666d3ae04613f1bba0fab05"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 221; y: 162
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 231; y: 162
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 3920
- hash: "c43f00d3ae4c8abbd20fc7157363b19d"
+ hash: "b12a944cb5e593afbb21a10453879b52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 241; y: 162
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 251; y: 164
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 3936
- hash: "22d6f5e9fdfe44e73020e6f504002b7c"
+ hash: "2f04c990978627b86fb2ad04579db0db"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 276; y: 167
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 3952
- hash: "4a9a285834aad5795adbefbe167028e2"
+ hash: "e7ddf142fc36174fcaaa70b9340ef7a8"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 288; y: 167
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 301; y: 169
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 3968
- hash: "561a6c005950830acf2a45ab9a207346"
+ hash: "4fce53c6f5347fe03ecf17b07fabe3ac"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 312; y: 169
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 324; y: 171
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 324; y: 171
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 3984
- hash: "b0387e3cfd455e1144d0bce9b51d6767"
+ hash: "75a0ec2c0158c55a90147c3f4afaa19c"
}
Frame {
msec: 4000
- hash: "610237f67aa7e5f8d5b363b1612b4966"
+ hash: "e89e98b7c1f36b74c664c77e121dedcb"
}
Frame {
msec: 4016
- hash: "8034a5a7e0558d73051ea6c5bc750866"
+ hash: "f4c1e52a7b97a25fba640be2a1430d2d"
}
Frame {
msec: 4032
- hash: "0e4dc8a9c124b51c5f1225f4c6a9ec63"
+ hash: "be58ca8f63dac8373825231512f483ca"
}
Frame {
msec: 4048
- hash: "dc4e94522e8c64e9f2dbbf12a1f1aa3e"
+ hash: "755b16d4be00cb52595d42775d6227ac"
}
Frame {
msec: 4064
- hash: "7466c076a95f2f6bbc2b6ce306773337"
+ hash: "c62f1ebbb1e4ae4ca22c060078d6240b"
}
Frame {
msec: 4080
- hash: "787e2749905b97159fd0922c6cb388e2"
+ hash: "5f1187e9530584f9eb81ce1ce8267da0"
}
Frame {
msec: 4096
- hash: "1e510d01afad190ec21de253bd8b4821"
+ hash: "5dc9921e9ddf15ee0457fcdc834544c5"
}
Frame {
msec: 4112
- hash: "d740f40eb21be71ec70c00411d2ee76b"
+ hash: "efacedc2782435ef4e269e6956fb3547"
}
Frame {
msec: 4128
- hash: "887a6f445af8fccf4932eed575a09cbb"
+ hash: "5b356dd3082f6b0920bb41d332595ce1"
}
Frame {
msec: 4144
- hash: "fbb7e1d8cb9dd9016df0c33c69b1451a"
+ hash: "5d8afcc1abd890beb2badf85bcf02897"
}
Frame {
msec: 4160
- hash: "5025e5f04a0807cb298037d6dda8c3af"
+ hash: "03c56ab4fea11cce19fcbb62dccb7683"
}
Frame {
msec: 4176
- hash: "b9924f24f60c24087be165e8e385ebb0"
+ hash: "236254ce32a8e06dc42f2fd3c9ac6c7c"
}
Frame {
msec: 4192
- hash: "2bab970787ac8b056401c8a73cb1a3c5"
+ hash: "4beb33da77bc2b41eb882a2a5cdeb539"
}
Frame {
msec: 4208
- hash: "bda954bfafaa2915d760cf7a602b326f"
- }
- Mouse {
- type: 2
- button: 1
- buttons: 1
- x: 187; y: 242
- modifiers: 0
- sendToViewport: true
+ hash: "b345470adead1ffb3af4d1091ffbd95c"
}
Frame {
msec: 4224
- hash: "9b109bb9e786a45a78849436ea32a484"
+ hash: "c2677f1653b08952338a5c26a724ebe7"
}
Frame {
msec: 4240
- hash: "9b109bb9e786a45a78849436ea32a484"
+ hash: "45b6633acf0ac28c5b5462920cf61282"
}
Frame {
msec: 4256
- hash: "9b109bb9e786a45a78849436ea32a484"
+ hash: "26a9a6609ce8eee1f744c2bd43494f22"
+ }
+ Frame {
+ msec: 4272
+ hash: "9373a8010a05d05cb5b3c2ec75359493"
+ }
+ Frame {
+ msec: 4288
+ hash: "d0c561761825512a02a9e3640139cadc"
+ }
+ Frame {
+ msec: 4304
+ hash: "d0c561761825512a02a9e3640139cadc"
+ }
+ Frame {
+ msec: 4320
+ hash: "d0c561761825512a02a9e3640139cadc"
+ }
+ Frame {
+ msec: 4336
+ hash: "d0c561761825512a02a9e3640139cadc"
+ }
+ Frame {
+ msec: 4352
+ hash: "d0c561761825512a02a9e3640139cadc"
+ }
+ Frame {
+ msec: 4368
+ hash: "d0c561761825512a02a9e3640139cadc"
+ }
+ Frame {
+ msec: 4384
+ hash: "d0c561761825512a02a9e3640139cadc"
+ }
+ Frame {
+ msec: 4400
+ hash: "d0c561761825512a02a9e3640139cadc"
}
Mouse {
- type: 5
- button: 0
+ type: 2
+ button: 1
buttons: 1
- x: 187; y: 243
+ x: 112; y: 126
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 4272
- hash: "9b109bb9e786a45a78849436ea32a484"
+ msec: 4416
+ hash: "d0c561761825512a02a9e3640139cadc"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 199; y: 252
+ x: 112; y: 128
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 4288
- hash: "cc3c61f49a7b3c395670b86c8078a337"
+ msec: 4432
+ hash: "d0c561761825512a02a9e3640139cadc"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 223; y: 262
+ x: 114; y: 128
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 115; y: 130
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 4304
- hash: "464d09b53b78fe5474d9c1d022bee9fd"
+ msec: 4448
+ hash: "d0c561761825512a02a9e3640139cadc"
}
Mouse {
type: 5
button: 0
buttons: 1
- x: 251; y: 272
+ x: 116; y: 130
modifiers: 0
sendToViewport: true
}
Mouse {
- type: 3
- button: 1
- buttons: 0
- x: 251; y: 272
+ type: 5
+ button: 0
+ buttons: 1
+ x: 119; y: 132
modifiers: 0
sendToViewport: true
}
Frame {
- msec: 4320
- hash: "aab17f48ff506cda84543cbe0d8a1ce4"
- }
- Frame {
- msec: 4336
- hash: "b7ba6c107f4085822a738120a913ba0c"
- }
- Frame {
- msec: 4352
- hash: "751b79e202a70dcc9a86c3a1450172b8"
- }
- Frame {
- msec: 4368
- hash: "bb03f969fd6987255ff113ef98ed2bb1"
+ msec: 4464
+ hash: "0e7554f077e2d6d8c6cf9496b20ab009"
}
- Frame {
- msec: 4384
- hash: "c33302b366441fa2d8753d5ce314cd37"
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 122; y: 134
+ modifiers: 0
+ sendToViewport: true
}
- Frame {
- msec: 4400
- hash: "4cdf32004382bcaca5a68cb92761caa2"
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 131; y: 138
+ modifiers: 0
+ sendToViewport: true
}
Frame {
- msec: 4416
- hash: "d3fe18ea7dcbee0709a2041e50b87154"
+ msec: 4480
+ hash: "d6e78f43c971abcc1d2aadb96e8b80b0"
}
- Frame {
- msec: 4432
- hash: "ac58a7adb0e7a354a058d7e9a7010c06"
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 147; y: 144
+ modifiers: 0
+ sendToViewport: true
}
- Frame {
- msec: 4448
- hash: "bdf8a8934a372ab49f4b6e9c95c7f591"
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 168; y: 151
+ modifiers: 0
+ sendToViewport: true
}
Frame {
- msec: 4464
- hash: "d2e8b417b74ec5f6e23f0935a4d0aa98"
+ msec: 4496
+ hash: "10d8e0ee5bd432c639963c9cedd25b85"
}
- Frame {
- msec: 4480
- hash: "0f94c6ca3ffbd730c2d813a991d21ca3"
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 190; y: 157
+ modifiers: 0
+ sendToViewport: true
}
- Frame {
- msec: 4496
- hash: "fb7728eebb2fa8f5255dc7435d20bbb6"
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 219; y: 164
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 4512
- hash: "c8211e8adcef525c296531a3d369f717"
+ hash: "53e142d6b0112644d75df29f7865fbb4"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 269; y: 171
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 4528
- hash: "f24de36c85b87953977fa8b6456209dc"
+ hash: "9609807e6c2a27a8b9f1d5c878c3dadf"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 319; y: 176
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 4544
- hash: "9ce7cf389af08cb1ba2534418f51857b"
+ hash: "a0a1e5fd37e9d8033f182f4f2b20fd26"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 361; y: 180
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 4560
- hash: "17d1f3ae0dba0bde222bb2483a403fbd"
+ hash: "b40e553dc373e4018488d5421b9a8914"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 406; y: 185
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 4576
- hash: "1748d75e229945012ece689b3784a02c"
+ hash: "22e36512a0af86fac12c09f735dcb1f7"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 428; y: 187
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 428; y: 187
+ modifiers: 0
+ sendToViewport: true
}
Frame {
msec: 4592
- hash: "6786fa9e31d6f0a71a285c790aa5b008"
+ hash: "70e9ad0f56e4c37f8684e38f614b889d"
}
Frame {
msec: 4608
- hash: "f2a2ba33b41d8d522e8aab34c7da8f7b"
+ hash: "0754126f5738e3dcec35fc1ef65fdec3"
}
Frame {
msec: 4624
- hash: "aa53142d1b433ae9f748aef5cb7bef46"
+ hash: "b3d84ceeecc294d21bc09a3197195c20"
}
Frame {
msec: 4640
- hash: "9c6802b2b0a419a4aaf9909c0f88c66e"
+ hash: "ce00501e194b1056edf1ebd43b954a70"
}
Frame {
msec: 4656
- hash: "206b11f2acd742d55ddd8acf7415bbeb"
+ hash: "793f41ac2568530e6d630446216833dc"
}
Frame {
msec: 4672
- hash: "36876cf600cbf9c3b15f243617c9474e"
+ hash: "e8573de724b653439bde85c15e9555ab"
}
Frame {
msec: 4688
- hash: "1f5daf97294b490546657c5d9e12022e"
+ hash: "bfb3f3645c7b2425b686ac23bcef82b8"
}
Frame {
msec: 4704
- hash: "637fc34fc2cf6139ba8809be54a2a0fc"
+ hash: "faa78596e208c2cf4593ea25e31fabde"
}
Frame {
msec: 4720
- hash: "9f824bd9e156980873619b1978f226bb"
+ hash: "f1b0931bffce37abfe5a6d635f1f8454"
}
Frame {
msec: 4736
- hash: "7002444129a5077ce5be44a5e2530328"
+ hash: "0975630a55bfd56eb3e39426c1c3f1e5"
}
Frame {
msec: 4752
- hash: "42b7a44030ad4fc50ceb6a60bc97991e"
+ hash: "98f1d79153a8009123abc94141375779"
}
Frame {
msec: 4768
- hash: "ae986cac541033398076fb918136212e"
+ hash: "d864817f877a9eeb44c665518ea19687"
}
Frame {
msec: 4784
- hash: "6bdd9f764b1675e5b0feced8c2d831a6"
+ hash: "79745c267d14e7790e1bb3a7e76f20b4"
}
Frame {
msec: 4800
- image: "test-pathview.4.png"
+ hash: "ec038d4cec64b847711fa221f808bead"
}
Frame {
msec: 4816
- hash: "07dfffe85adc4b52565e9ed156fa3ed6"
+ image: "test-pathview.5.png"
}
Frame {
msec: 4832
- hash: "c987bbe9fbf74bb6cf2686a5ee97c59a"
+ hash: "ef7b3f93abbf210f8f0d38a58380dc8f"
}
Frame {
msec: 4848
- hash: "19568159ec2282d5f150583baa0a8a94"
+ hash: "f0eea63127df25f7f818596fc034fef8"
}
Frame {
msec: 4864
- hash: "5b176ef6bf70ff1a9805ca85b1b0c1a2"
+ hash: "8000dee3ea54522a8193a7f9f2e86023"
}
Frame {
msec: 4880
- hash: "de716a8c15a46bf1621878794e968c53"
+ hash: "111485ebaf93aae4f5e0a83da898bbac"
}
Frame {
msec: 4896
- hash: "241af9ab77c86cdb75f73339548604ad"
+ hash: "4b2dee1fd88dcaeabc8235f6a0e5c090"
}
Frame {
msec: 4912
- hash: "afc7168ecb7fa7e3310ca818b75f7a1c"
+ hash: "5e560c777d0294dfa8f249232bfcf3a2"
}
Frame {
msec: 4928
- hash: "83bff911b502a34d139a724f686bb1f9"
+ hash: "d8b490092ca5ce3ef9b078f4768c382a"
}
Frame {
msec: 4944
- hash: "f4d3fb54ae5be2b13065cd4316b06837"
+ hash: "28b2bbc3fd19786dd9c0ab718141c525"
}
Frame {
msec: 4960
- hash: "d29c7dfedf9dd355d60e394528b3b938"
+ hash: "d1a61000ebc5a475c0223dde649c8054"
}
Frame {
msec: 4976
- hash: "ddf23d860ea71ab4b407de1a5f913f74"
+ hash: "d3e8aae08a2518c039d6bda80fc520a4"
}
Frame {
msec: 4992
- hash: "a0dbb6ecbfd08f9ebdd641fea5dae16c"
+ hash: "9f3bd8654adb9af0457dd50ff71fcd43"
}
Frame {
msec: 5008
- hash: "7ed3170e55e3c3c9561959ad4c56d326"
+ hash: "befe00fef613b7616e2dc668a5ed59c7"
}
Frame {
msec: 5024
- hash: "dbde5f508aabc2d1f2ccfaf135efeca9"
+ hash: "24e84e6998389aa119d7d9e0ac2206ac"
}
Frame {
msec: 5040
- hash: "72039739be41bf63b3959bdc90ce25bb"
+ hash: "2d3d2b66bf016c8e499f527dbf8923db"
}
Frame {
msec: 5056
- hash: "417789daefe6bc01320db7803ae31d61"
+ hash: "52d24673729dbd53d3227675b7001b24"
}
Frame {
msec: 5072
- hash: "7e57dbddaf379f4316182048fa9e2d6f"
+ hash: "4e5c807682d7b6b7839c047a7fb4ad93"
}
Frame {
msec: 5088
- hash: "aeca9a4df94d2b9ac2a713531a7d98f1"
+ hash: "319affea47c4a0b0e2c3db51b85430bc"
}
Frame {
msec: 5104
- hash: "98ad6694f23678819020d6ac0161651c"
+ hash: "344962f0b88c7e8a33df71b4708fd1c0"
}
Frame {
msec: 5120
- hash: "b6eba3872da19ec677eee419ae9cccbc"
+ hash: "ac099ba8a5639b9c83b6f58f2b5bcf93"
}
Frame {
msec: 5136
- hash: "e824909bfe7b6d54773bb218ba93e884"
+ hash: "2f8e57c93289dcdc758281531300e949"
}
Frame {
msec: 5152
- hash: "3be04f3ff6d948538f4472bc6bfadb0f"
+ hash: "e4cc3bdf6068064bcfdd0014cc301e65"
}
Frame {
msec: 5168
- hash: "e05ff21dda1d978a2ac2eedd3826b6f7"
+ hash: "598c8a33e2bbf47b21df8b0636e0f0bc"
}
Frame {
msec: 5184
- hash: "8ee970b2b197c8d879a7b1703cbd4dcd"
+ hash: "6aea67c85370eee8447a22e2b9e8c44c"
}
Frame {
msec: 5200
- hash: "e583845e7719d2776c6362c34f77937c"
+ hash: "39e27a3376f4aba8510f7b0d90ca0e33"
}
Frame {
msec: 5216
- hash: "593fd590531ccfb59d890b8043eaab9c"
+ hash: "0ff93a16a07af43bd5e22a2b00fd2588"
}
Frame {
msec: 5232
- hash: "593fd590531ccfb59d890b8043eaab9c"
+ hash: "8b6004368b9b0a766f6b519820fe1ff6"
}
Frame {
msec: 5248
- hash: "593fd590531ccfb59d890b8043eaab9c"
+ hash: "5d92c0a12ff138d1b2c75bd042be4ea2"
}
Frame {
msec: 5264
- hash: "593fd590531ccfb59d890b8043eaab9c"
+ hash: "4386b0abe49106a0174154c726c301f6"
}
Frame {
msec: 5280
- hash: "593fd590531ccfb59d890b8043eaab9c"
+ hash: "832da8d2a86caa3ca96f33d2cd49178e"
}
Frame {
msec: 5296
- hash: "593fd590531ccfb59d890b8043eaab9c"
+ hash: "efee6ab1ba4a1112f2129aad12825667"
}
Frame {
msec: 5312
- hash: "593fd590531ccfb59d890b8043eaab9c"
+ hash: "f20a7e67a4789c559b0b0a7656bd89b1"
}
Frame {
msec: 5328
- hash: "593fd590531ccfb59d890b8043eaab9c"
+ hash: "350cc8c0085a8f79c9ea8880737a0b75"
}
Frame {
msec: 5344
- hash: "593fd590531ccfb59d890b8043eaab9c"
+ hash: "b19715b4029ea489debf7c5a269aca98"
}
Frame {
msec: 5360
- hash: "593fd590531ccfb59d890b8043eaab9c"
+ hash: "f383fcaf603af41650c5622bfaf136b3"
}
Frame {
msec: 5376
- hash: "593fd590531ccfb59d890b8043eaab9c"
+ hash: "0c62a442367fc0bac5117da1327ed39a"
}
Frame {
msec: 5392
- hash: "593fd590531ccfb59d890b8043eaab9c"
+ hash: "323ba45d158d983f359211f1a87b7ebd"
}
Frame {
msec: 5408
- hash: "593fd590531ccfb59d890b8043eaab9c"
+ hash: "aeed1a31b8b77dac2c2858969ff2d86c"
}
Frame {
msec: 5424
- hash: "593fd590531ccfb59d890b8043eaab9c"
+ hash: "27a9357730a97846ffeddd18492df04d"
}
Frame {
msec: 5440
- hash: "593fd590531ccfb59d890b8043eaab9c"
+ hash: "42f78593e64585b33c8854e8ea92710e"
}
Frame {
msec: 5456
- hash: "593fd590531ccfb59d890b8043eaab9c"
+ hash: "064f5cec99b9a351bebe2088019f46d1"
}
Frame {
msec: 5472
- hash: "593fd590531ccfb59d890b8043eaab9c"
+ hash: "d3669826f94aa2afc1069ab967f677a3"
}
Frame {
msec: 5488
- hash: "593fd590531ccfb59d890b8043eaab9c"
+ hash: "a118cf8892d29e6b70b4e65e42380c15"
}
Frame {
msec: 5504
- hash: "593fd590531ccfb59d890b8043eaab9c"
+ hash: "f254260f01ff4697e9e3146cc106140d"
}
Frame {
msec: 5520
- hash: "c0d0f62d9078f6be493d5545a2ae78ad"
+ hash: "ec062b2bb87444115c2e8744b7f80bde"
}
Frame {
msec: 5536
- hash: "c0d0f62d9078f6be493d5545a2ae78ad"
+ hash: "4d45522a4e4253c810cac9cbf24c9b76"
}
Frame {
msec: 5552
- hash: "c0d0f62d9078f6be493d5545a2ae78ad"
+ hash: "532c3d3ead73836948a1036e8e69cadf"
}
Frame {
msec: 5568
- hash: "c0d0f62d9078f6be493d5545a2ae78ad"
+ hash: "4debea14aeac85ff4e64387938d8b010"
}
Frame {
msec: 5584
- hash: "c0d0f62d9078f6be493d5545a2ae78ad"
+ hash: "d8940cf6e39a1bd5e7216a83ce87a676"
}
Frame {
msec: 5600
- hash: "c0d0f62d9078f6be493d5545a2ae78ad"
+ hash: "fba6485f8a60a38ce2f3110137b1f2df"
}
Frame {
msec: 5616
- hash: "c0d0f62d9078f6be493d5545a2ae78ad"
+ hash: "8a8909b114332dd932b784a2640e9ff4"
}
Frame {
msec: 5632
- hash: "c0d0f62d9078f6be493d5545a2ae78ad"
+ hash: "fd901422400333c137240ef5f91928a3"
}
Frame {
msec: 5648
- hash: "c0d0f62d9078f6be493d5545a2ae78ad"
+ hash: "97b84a957515d5823e381fdd86d31fb8"
}
Frame {
msec: 5664
- hash: "c0d0f62d9078f6be493d5545a2ae78ad"
+ hash: "f3547ea694b88dd7d2fb8b04d6bf76a9"
}
Frame {
msec: 5680
- hash: "c0d0f62d9078f6be493d5545a2ae78ad"
+ hash: "9eb0da29d0c323b45e62d31bee97ce8c"
}
Frame {
msec: 5696
- hash: "c0d0f62d9078f6be493d5545a2ae78ad"
+ hash: "9d814096d27e9fbcffdf7e29866e0059"
}
Frame {
msec: 5712
- hash: "c0d0f62d9078f6be493d5545a2ae78ad"
+ hash: "6087185e1e8bf17545a7372be2990ab2"
}
Frame {
msec: 5728
- hash: "c0d0f62d9078f6be493d5545a2ae78ad"
+ hash: "82e534c416dfe884e5abc2f91d902484"
}
Frame {
msec: 5744
- hash: "c0d0f62d9078f6be493d5545a2ae78ad"
+ hash: "82e534c416dfe884e5abc2f91d902484"
}
Frame {
msec: 5760
- image: "test-pathview.5.png"
+ hash: "82e534c416dfe884e5abc2f91d902484"
}
Frame {
msec: 5776
- hash: "c0d0f62d9078f6be493d5545a2ae78ad"
+ image: "test-pathview.6.png"
}
Frame {
msec: 5792
- hash: "c0d0f62d9078f6be493d5545a2ae78ad"
+ hash: "82e534c416dfe884e5abc2f91d902484"
}
Frame {
msec: 5808
- hash: "c0d0f62d9078f6be493d5545a2ae78ad"
+ hash: "82e534c416dfe884e5abc2f91d902484"
}
Frame {
msec: 5824
- hash: "c0d0f62d9078f6be493d5545a2ae78ad"
+ hash: "82e534c416dfe884e5abc2f91d902484"
}
Frame {
msec: 5840
- hash: "c0d0f62d9078f6be493d5545a2ae78ad"
+ hash: "82e534c416dfe884e5abc2f91d902484"
}
Frame {
msec: 5856
- hash: "c0d0f62d9078f6be493d5545a2ae78ad"
+ hash: "82e534c416dfe884e5abc2f91d902484"
}
Frame {
msec: 5872
- hash: "c0d0f62d9078f6be493d5545a2ae78ad"
+ hash: "82e534c416dfe884e5abc2f91d902484"
}
Frame {
msec: 5888
- hash: "c0d0f62d9078f6be493d5545a2ae78ad"
+ hash: "82e534c416dfe884e5abc2f91d902484"
}
Frame {
msec: 5904
- hash: "c0d0f62d9078f6be493d5545a2ae78ad"
+ hash: "82e534c416dfe884e5abc2f91d902484"
+ }
+ Frame {
+ msec: 5920
+ hash: "82e534c416dfe884e5abc2f91d902484"
+ }
+ Frame {
+ msec: 5936
+ hash: "82e534c416dfe884e5abc2f91d902484"
+ }
+ Frame {
+ msec: 5952
+ hash: "82e534c416dfe884e5abc2f91d902484"
+ }
+ Frame {
+ msec: 5968
+ hash: "82e534c416dfe884e5abc2f91d902484"
+ }
+ Frame {
+ msec: 5984
+ hash: "82e534c416dfe884e5abc2f91d902484"
+ }
+ Frame {
+ msec: 6000
+ hash: "82e534c416dfe884e5abc2f91d902484"
+ }
+ Frame {
+ msec: 6016
+ hash: "82e534c416dfe884e5abc2f91d902484"
+ }
+ Frame {
+ msec: 6032
+ hash: "6839b467f32eaa79d4c1ce4905145350"
+ }
+ Frame {
+ msec: 6048
+ hash: "6839b467f32eaa79d4c1ce4905145350"
+ }
+ Frame {
+ msec: 6064
+ hash: "6839b467f32eaa79d4c1ce4905145350"
+ }
+ Frame {
+ msec: 6080
+ hash: "6839b467f32eaa79d4c1ce4905145350"
+ }
+ Frame {
+ msec: 6096
+ hash: "6839b467f32eaa79d4c1ce4905145350"
+ }
+ Frame {
+ msec: 6112
+ hash: "6839b467f32eaa79d4c1ce4905145350"
+ }
+ Frame {
+ msec: 6128
+ hash: "6839b467f32eaa79d4c1ce4905145350"
+ }
+ Frame {
+ msec: 6144
+ hash: "6839b467f32eaa79d4c1ce4905145350"
+ }
+ Frame {
+ msec: 6160
+ hash: "6839b467f32eaa79d4c1ce4905145350"
+ }
+ Frame {
+ msec: 6176
+ hash: "6839b467f32eaa79d4c1ce4905145350"
+ }
+ Frame {
+ msec: 6192
+ hash: "6839b467f32eaa79d4c1ce4905145350"
+ }
+ Frame {
+ msec: 6208
+ hash: "6839b467f32eaa79d4c1ce4905145350"
+ }
+ Frame {
+ msec: 6224
+ hash: "6839b467f32eaa79d4c1ce4905145350"
+ }
+ Frame {
+ msec: 6240
+ hash: "6839b467f32eaa79d4c1ce4905145350"
+ }
+ Frame {
+ msec: 6256
+ hash: "6839b467f32eaa79d4c1ce4905145350"
+ }
+ Frame {
+ msec: 6272
+ hash: "6839b467f32eaa79d4c1ce4905145350"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativepathview/test-pathview-2.qml b/tests/auto/declarative/qmlvisual/qdeclarativepathview/test-pathview-2.qml
index 38368d4e24..3171203424 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativepathview/test-pathview-2.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativepathview/test-pathview-2.qml
@@ -1,7 +1,7 @@
import QtQuick 1.0
Rectangle {
- width: 800; height: 450
+ width: 580; height: 220
//Same as test-pathview, but with pathItemCount < model.count
ListModel {
@@ -20,8 +20,10 @@ Rectangle {
id: photoDelegate
Rectangle {
id: wrapper
- width: 85; height: 85; color: lColor
+ width: 65; height: 65; color: lColor
scale: wrapper.PathView.scale
+
+ MouseArea { anchors.fill: parent }
transform: Rotation {
id: itemRotation; origin.x: wrapper.width/2; origin.y: wrapper.height/2
@@ -31,9 +33,10 @@ Rectangle {
}
PathView {
- id: pathView; model: rssModel; delegate: photoDelegate
- y: 100; width: 800; height: 330; pathItemCount: 6; z: 1
- focus: true
+ id: photoPathView; model: rssModel; delegate: photoDelegate
+ anchors.fill: parent; z: 1
+ anchors.topMargin:40
+ pathItemCount: 6
path: Path {
startX: -50; startY: 40;
@@ -41,22 +44,27 @@ Rectangle {
PathAttribute { name: "angle"; value: -45 }
PathCubic {
- x: 400; y: 220
- control1X: 140; control1Y: 40
- control2X: 210; control2Y: 220
+ x: 300; y: 140
+ control1X: 90; control1Y: 30
+ control2X: 140; control2Y: 150
}
PathAttribute { name: "scale"; value: 1.2 }
PathAttribute { name: "angle"; value: 0 }
PathCubic {
- x: 850; y: 40
- control2X: 660; control2Y: 40
- control1X: 590; control1Y: 220
+ x: 600; y: 30
+ control2X: 440; control2Y: 30
+ control1X: 420; control1Y: 150
}
PathAttribute { name: "scale"; value: 0.5 }
PathAttribute { name: "angle"; value: 45 }
}
}
+
+ Column {
+ Rectangle { width: 20; height: 20; color: "red"; opacity: photoPathView.moving ? 1 : 0 }
+ Rectangle { width: 20; height: 20; color: "blue"; opacity: photoPathView.flicking ? 1 : 0 }
+ }
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativepathview/test-pathview.qml b/tests/auto/declarative/qmlvisual/qdeclarativepathview/test-pathview.qml
index c89bd68501..4374b846da 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativepathview/test-pathview.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativepathview/test-pathview.qml
@@ -1,7 +1,7 @@
import QtQuick 1.0
Rectangle {
- width: 800; height: 450
+ width: 580; height: 220
ListModel {
id: rssModel
@@ -19,7 +19,7 @@ Rectangle {
id: photoDelegate
Rectangle {
id: wrapper
- width: 85; height: 85; color: lColor
+ width: 65; height: 65; color: lColor
scale: wrapper.PathView.scale
MouseArea { anchors.fill: parent }
@@ -33,7 +33,8 @@ Rectangle {
PathView {
id: photoPathView; model: rssModel; delegate: photoDelegate
- y: 100; width: 800; height: 330; z: 1
+ anchors.fill: parent; z: 1
+ anchors.topMargin:40
path: Path {
startX: -50; startY: 40;
@@ -41,18 +42,18 @@ Rectangle {
PathAttribute { name: "angle"; value: -45 }
PathCubic {
- x: 400; y: 220
- control1X: 140; control1Y: 40
- control2X: 210; control2Y: 220
+ x: 300; y: 140
+ control1X: 90; control1Y: 30
+ control2X: 140; control2Y: 150
}
PathAttribute { name: "scale"; value: 1.2 }
PathAttribute { name: "angle"; value: 0 }
PathCubic {
- x: 850; y: 40
- control2X: 660; control2Y: 40
- control1X: 590; control1Y: 220
+ x: 600; y: 30
+ control2X: 440; control2Y: 30
+ control1X: 420; control1Y: 150
}
PathAttribute { name: "scale"; value: 0.5 }
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.0.png b/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.0.png
index f474afecdc..a02a00dd78 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.1.png b/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.1.png
index 8b7ae74b13..be18b8dc2d 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.2.png b/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.2.png
index 9088bb4f48..e4db4bca2e 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.2.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.3.png b/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.3.png
index 18cd4298f9..d464e79d00 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.3.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.4.png b/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.4.png
index 739afc17ca..b0b93863e1 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.4.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.5.png b/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.5.png
index 93f0682397..4ea4b24e16 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.5.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.6.png b/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.6.png
new file mode 100644
index 0000000000..a115867d2a
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.6.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.qml b/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.qml
index 4b36e166ab..5f1e8be157 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/dynamic.qml
@@ -6,1598 +6,1598 @@ VisualTest {
}
Frame {
msec: 16
- hash: "ee42cfa8cbbd67becb7d50998d26fe73"
+ image: "dynamic.0.png"
}
Frame {
msec: 32
- hash: "ee42cfa8cbbd67becb7d50998d26fe73"
+ hash: "d203c2cb69cb0841827e14bddc206d1f"
}
Frame {
msec: 48
- hash: "ee42cfa8cbbd67becb7d50998d26fe73"
+ hash: "d203c2cb69cb0841827e14bddc206d1f"
}
Frame {
msec: 64
- hash: "ee42cfa8cbbd67becb7d50998d26fe73"
+ hash: "d203c2cb69cb0841827e14bddc206d1f"
}
Frame {
msec: 80
- hash: "ee42cfa8cbbd67becb7d50998d26fe73"
+ hash: "d203c2cb69cb0841827e14bddc206d1f"
}
Frame {
msec: 96
- hash: "ee42cfa8cbbd67becb7d50998d26fe73"
+ hash: "d203c2cb69cb0841827e14bddc206d1f"
}
Frame {
msec: 112
- hash: "ee42cfa8cbbd67becb7d50998d26fe73"
+ hash: "d203c2cb69cb0841827e14bddc206d1f"
}
Frame {
msec: 128
- hash: "ee42cfa8cbbd67becb7d50998d26fe73"
+ hash: "d203c2cb69cb0841827e14bddc206d1f"
}
Frame {
msec: 144
- hash: "ee42cfa8cbbd67becb7d50998d26fe73"
+ hash: "d203c2cb69cb0841827e14bddc206d1f"
}
Frame {
msec: 160
- hash: "ee42cfa8cbbd67becb7d50998d26fe73"
+ hash: "d203c2cb69cb0841827e14bddc206d1f"
}
Frame {
msec: 176
- hash: "ee42cfa8cbbd67becb7d50998d26fe73"
+ hash: "d203c2cb69cb0841827e14bddc206d1f"
}
Frame {
msec: 192
- hash: "ee42cfa8cbbd67becb7d50998d26fe73"
+ hash: "d203c2cb69cb0841827e14bddc206d1f"
}
Frame {
msec: 208
- hash: "ee42cfa8cbbd67becb7d50998d26fe73"
+ hash: "d203c2cb69cb0841827e14bddc206d1f"
}
Frame {
msec: 224
- hash: "ee42cfa8cbbd67becb7d50998d26fe73"
+ hash: "d203c2cb69cb0841827e14bddc206d1f"
}
Frame {
msec: 240
- hash: "ee42cfa8cbbd67becb7d50998d26fe73"
+ hash: "d203c2cb69cb0841827e14bddc206d1f"
}
Frame {
msec: 256
- hash: "ee42cfa8cbbd67becb7d50998d26fe73"
+ hash: "d203c2cb69cb0841827e14bddc206d1f"
}
Frame {
msec: 272
- hash: "ee42cfa8cbbd67becb7d50998d26fe73"
+ hash: "d203c2cb69cb0841827e14bddc206d1f"
}
Frame {
msec: 288
- hash: "ee42cfa8cbbd67becb7d50998d26fe73"
+ hash: "d203c2cb69cb0841827e14bddc206d1f"
}
Frame {
msec: 304
- hash: "ee42cfa8cbbd67becb7d50998d26fe73"
+ hash: "d203c2cb69cb0841827e14bddc206d1f"
}
Frame {
msec: 320
- hash: "ee42cfa8cbbd67becb7d50998d26fe73"
+ hash: "d203c2cb69cb0841827e14bddc206d1f"
}
Frame {
msec: 336
- hash: "ee42cfa8cbbd67becb7d50998d26fe73"
+ hash: "d203c2cb69cb0841827e14bddc206d1f"
}
Frame {
msec: 352
- hash: "ee42cfa8cbbd67becb7d50998d26fe73"
+ hash: "d203c2cb69cb0841827e14bddc206d1f"
}
Frame {
msec: 368
- hash: "ee42cfa8cbbd67becb7d50998d26fe73"
+ hash: "d203c2cb69cb0841827e14bddc206d1f"
}
Frame {
msec: 384
- hash: "ee42cfa8cbbd67becb7d50998d26fe73"
+ hash: "d203c2cb69cb0841827e14bddc206d1f"
}
Frame {
msec: 400
- hash: "ee42cfa8cbbd67becb7d50998d26fe73"
+ hash: "d203c2cb69cb0841827e14bddc206d1f"
}
Frame {
msec: 416
- hash: "ee42cfa8cbbd67becb7d50998d26fe73"
+ hash: "d203c2cb69cb0841827e14bddc206d1f"
}
Frame {
msec: 432
- hash: "ee42cfa8cbbd67becb7d50998d26fe73"
+ hash: "d203c2cb69cb0841827e14bddc206d1f"
}
Frame {
msec: 448
- hash: "ee42cfa8cbbd67becb7d50998d26fe73"
+ hash: "d203c2cb69cb0841827e14bddc206d1f"
}
Frame {
msec: 464
- hash: "ee42cfa8cbbd67becb7d50998d26fe73"
+ hash: "d203c2cb69cb0841827e14bddc206d1f"
}
Frame {
msec: 480
- hash: "ee42cfa8cbbd67becb7d50998d26fe73"
+ hash: "d203c2cb69cb0841827e14bddc206d1f"
}
Frame {
msec: 496
- hash: "ee42cfa8cbbd67becb7d50998d26fe73"
+ hash: "d203c2cb69cb0841827e14bddc206d1f"
}
Frame {
msec: 512
- hash: "ee42cfa8cbbd67becb7d50998d26fe73"
+ hash: "d203c2cb69cb0841827e14bddc206d1f"
}
Frame {
msec: 528
- hash: "62727b1025930e19bb03c8f533a12ced"
+ hash: "453d5fb9d38f37bb8c23e376de76db06"
}
Frame {
msec: 544
- hash: "62727b1025930e19bb03c8f533a12ced"
+ hash: "c4a103de3b7207b3c6277e8ecf79f7dc"
}
Frame {
msec: 560
- hash: "62727b1025930e19bb03c8f533a12ced"
+ hash: "f58b0eb42d9b6ace87379f205da57550"
}
Frame {
msec: 576
- hash: "62727b1025930e19bb03c8f533a12ced"
+ hash: "3384c5b5939d8297e0834c7cd347d579"
}
Frame {
msec: 592
- hash: "62727b1025930e19bb03c8f533a12ced"
+ hash: "420b55371c69c6e1a17ef85a600c75d1"
}
Frame {
msec: 608
- hash: "62727b1025930e19bb03c8f533a12ced"
+ hash: "55cc6fb3424ef69d316ef29f6563a025"
}
Frame {
msec: 624
- hash: "62727b1025930e19bb03c8f533a12ced"
+ hash: "045b5ac545e69777b814423f77575990"
}
Frame {
msec: 640
- hash: "62727b1025930e19bb03c8f533a12ced"
+ hash: "45b05241e8e83180a8d92a37dc859ce0"
}
Frame {
msec: 656
- hash: "62727b1025930e19bb03c8f533a12ced"
+ hash: "97915dfbe4943e1f583ee134bc7a0117"
}
Frame {
msec: 672
- hash: "62727b1025930e19bb03c8f533a12ced"
+ hash: "9b4ce5ed20dd81698b4dd8e48f799c5c"
}
Frame {
msec: 688
- hash: "62727b1025930e19bb03c8f533a12ced"
+ hash: "24bdcea108cdbb3898a4d9216e9f9510"
}
Frame {
msec: 704
- hash: "62727b1025930e19bb03c8f533a12ced"
+ hash: "d1427093b1a375e86a69c6f65cb1f8e5"
}
Frame {
msec: 720
- hash: "62727b1025930e19bb03c8f533a12ced"
+ hash: "43dd666b15697ae18eb2410017256e4c"
}
Frame {
msec: 736
- hash: "62727b1025930e19bb03c8f533a12ced"
+ hash: "8043755f5a8a528353f1e7c310a46a97"
}
Frame {
msec: 752
- hash: "62727b1025930e19bb03c8f533a12ced"
+ hash: "d6b2ef0cb81395cd7454392aed4571f0"
}
Frame {
msec: 768
- hash: "62727b1025930e19bb03c8f533a12ced"
+ hash: "c249fd272e02cbdde972e85fc6dac695"
}
Frame {
msec: 784
- hash: "62727b1025930e19bb03c8f533a12ced"
+ hash: "1df5f8fce7b0c102e9902912600054e7"
}
Frame {
msec: 800
- hash: "62727b1025930e19bb03c8f533a12ced"
+ hash: "a9d16b180634620e3fe6caacb730885b"
}
Frame {
msec: 816
- hash: "62727b1025930e19bb03c8f533a12ced"
+ hash: "7228ce597720520bc12911fdef70ca86"
}
Frame {
msec: 832
- hash: "62727b1025930e19bb03c8f533a12ced"
+ hash: "1faa5c3e72740941234ff4a93388edc9"
}
Frame {
msec: 848
- hash: "62727b1025930e19bb03c8f533a12ced"
+ hash: "997ee1c6d5838153182473a3724df4ad"
}
Frame {
msec: 864
- hash: "62727b1025930e19bb03c8f533a12ced"
+ hash: "6ebbc0a0427825ea701f5bb4758f11a2"
}
Frame {
msec: 880
- hash: "62727b1025930e19bb03c8f533a12ced"
+ hash: "a2ac19360d631fd6d58f8a5ee85e40b4"
}
Frame {
msec: 896
- hash: "62727b1025930e19bb03c8f533a12ced"
+ hash: "17a5842b47a220bb8bd74a368cea6c1f"
}
Frame {
msec: 912
- hash: "62727b1025930e19bb03c8f533a12ced"
+ hash: "b37bae9c3384c068a7dd4f1135d3bfaa"
}
Frame {
msec: 928
- hash: "62727b1025930e19bb03c8f533a12ced"
+ hash: "65ffb0b6629364ebc687da7785601abd"
}
Frame {
msec: 944
- hash: "62727b1025930e19bb03c8f533a12ced"
+ hash: "27c7a43515fb2d8cddde42263f6ac9df"
}
Frame {
msec: 960
- image: "dynamic.0.png"
+ hash: "cc292df8a090c08d135dedf5e2a0af7c"
}
Frame {
msec: 976
- hash: "62727b1025930e19bb03c8f533a12ced"
+ image: "dynamic.1.png"
}
Frame {
msec: 992
- hash: "62727b1025930e19bb03c8f533a12ced"
+ hash: "59735c8372774b50052d15232d2f6d01"
}
Frame {
msec: 1008
- hash: "62727b1025930e19bb03c8f533a12ced"
+ hash: "9c239c4439009465dd91606ac84a3bf0"
}
Frame {
msec: 1024
- hash: "3e52e7d7d428cf1b850cb9c60dbb3c21"
+ hash: "8b9715d6468c8501895545bd84bf7f57"
}
Frame {
msec: 1040
- hash: "64f75ab14c979d33d6e0c0d86b76cd35"
+ hash: "0f7a123bfff1dbe059b6ceb3a3f44180"
}
Frame {
msec: 1056
- hash: "c198a48f4050f176465649d203d6e09a"
+ hash: "c1bc31a379d15ca67d0ffc7139800b3f"
}
Frame {
msec: 1072
- hash: "6dd8cee5a585a96e78f2cf7478c4da62"
+ hash: "ebf470cd7cff4a836da9e721acfd327d"
}
Frame {
msec: 1088
- hash: "09edfbce2ea4b8a547f769ce709dcb6b"
+ hash: "e2b89846459f8ae48117ab4393d493bf"
}
Frame {
msec: 1104
- hash: "e93d01aa6e4f5d3fc82cf5a008e3ea17"
+ hash: "5b980dcc070faf4ab4099cd5f711259c"
}
Frame {
msec: 1120
- hash: "0e2e7b5eec0e62853972b0139b8c17c6"
+ hash: "4640ed55c1608d76109407279a1f02db"
}
Frame {
msec: 1136
- hash: "26d4f54628ce20f5665bdc6ddc7f3b6a"
+ hash: "d839b597a3afef61de7b14ffb7ae518e"
}
Frame {
msec: 1152
- hash: "59836aa6eff85b0152be352b97076d89"
+ hash: "2810e01355c32d3f7a9352676e6b5eef"
}
Frame {
msec: 1168
- hash: "47cc9894096731a52ca342ab04df9aad"
+ hash: "f1ac8b222e0068320827564e759e87ba"
}
Frame {
msec: 1184
- hash: "ec95dd3b34a0f17f6fb9b5bedab73653"
+ hash: "7da89563319dd4045e7f9c40a712d722"
}
Frame {
msec: 1200
- hash: "e32c2b70882828b5082ca3ec889a0dde"
+ hash: "09c55dba364e484eec1a1badb4319003"
}
Frame {
msec: 1216
- hash: "68d3f8e9c9d5388a6f8360368c8f4d2f"
+ hash: "defd5c9a8003c58a7bef1930efdd6f29"
}
Frame {
msec: 1232
- hash: "17378b2bd8bde7f357fa5463f457c7b2"
+ hash: "0f84e515b41b5c064ece9002e5edff0d"
}
Frame {
msec: 1248
- hash: "03db786cd54ec34ce8db15953a5fc847"
+ hash: "d1a0405a18fe5b54e79ca0cadf46743b"
}
Frame {
msec: 1264
- hash: "9e22a82a622ed0287c44cc629059d5bd"
+ hash: "6046feb2fad386ae25ddd0d0e8ecb673"
}
Frame {
msec: 1280
- hash: "42955cd23747f7c37d0f0229c0955e90"
+ hash: "b4374b0d9d709b0d7a9f8949616a16bf"
}
Frame {
msec: 1296
- hash: "42955cd23747f7c37d0f0229c0955e90"
+ hash: "4d9d7d28f32ce2acd14c8dca0bc11fa0"
}
Frame {
msec: 1312
- hash: "42955cd23747f7c37d0f0229c0955e90"
+ hash: "384afb63bdf34729132ac57080fa2988"
}
Frame {
msec: 1328
- hash: "42955cd23747f7c37d0f0229c0955e90"
+ hash: "44ac2a9783c450a8c39b09387f0439e2"
}
Frame {
msec: 1344
- hash: "42955cd23747f7c37d0f0229c0955e90"
+ hash: "26e1dfc2b54370f94881c2341b6e0618"
}
Frame {
msec: 1360
- hash: "42955cd23747f7c37d0f0229c0955e90"
+ hash: "be47d72ae7c57e255706a8a5afe1fd3f"
}
Frame {
msec: 1376
- hash: "42955cd23747f7c37d0f0229c0955e90"
+ hash: "92cb490b081bccedf0bbdee86dbc50ed"
}
Frame {
msec: 1392
- hash: "42955cd23747f7c37d0f0229c0955e90"
+ hash: "1f0a09601474246e94c5ec3763cfa83e"
}
Frame {
msec: 1408
- hash: "42955cd23747f7c37d0f0229c0955e90"
+ hash: "73f1a5c57a2c96e18ba894a7adb9a014"
}
Frame {
msec: 1424
- hash: "42955cd23747f7c37d0f0229c0955e90"
+ hash: "8aa130cf4b2706afc8d582ee4c5f510d"
}
Frame {
msec: 1440
- hash: "42955cd23747f7c37d0f0229c0955e90"
+ hash: "1c0de0f1f4aa5f44bdf774169296487d"
}
Frame {
msec: 1456
- hash: "42955cd23747f7c37d0f0229c0955e90"
+ hash: "1e9b701ee63effb760e733ac623d75d7"
}
Frame {
msec: 1472
- hash: "42955cd23747f7c37d0f0229c0955e90"
+ hash: "c30620b6d5d41937217fa9d3e0bf367d"
}
Frame {
msec: 1488
- hash: "42955cd23747f7c37d0f0229c0955e90"
+ hash: "1f96e1da113d4a6cdb7179771ef7967d"
}
Frame {
msec: 1504
- hash: "42955cd23747f7c37d0f0229c0955e90"
+ hash: "aa31458e44ba42a633421e8688a3af7e"
}
Frame {
msec: 1520
- hash: "981fb1ee75e307b548a32df08a86f4cd"
+ hash: "a7a560c05566d0bbea3f2bf397a0063a"
}
Frame {
msec: 1536
- hash: "f77568307e93d8cd9f0ae417cc19d6e3"
+ hash: "fdd290bc46b86a11afdffb95570d9a67"
}
Frame {
msec: 1552
- hash: "3bdd4468e26aceee0dad6b3b97b1c1ea"
+ hash: "46574d7bfc15bc5b9124eb0e12741724"
}
Frame {
msec: 1568
- hash: "252c9ebc2c32755b2289ee1b03877fe3"
+ hash: "aed2015031da6c7e5064fe5fcd1e86e3"
}
Frame {
msec: 1584
- hash: "64169b7eb7b7ae8573556c5f80230965"
+ hash: "dea39f30e686771ca516ac32e3dc4cb0"
}
Frame {
msec: 1600
- hash: "4965dfa709a9ac7d8f7dfb4bf8303c65"
+ hash: "4a9839f52a7ee6732c5e18c0d67534be"
}
Frame {
msec: 1616
- hash: "8c53cf92510154087341ac65a93aae5a"
+ hash: "df21723df1031542483684ff92aaf40a"
}
Frame {
msec: 1632
- hash: "4dd7502e3e238743d2f3cf038270491e"
+ hash: "53683b7b52d0940aac744f0ef03a4527"
}
Frame {
msec: 1648
- hash: "cd9a58316837eb92f4ac92dbd86bdba3"
+ hash: "e6177b60c5586e79ca82e1bc7af41737"
}
Frame {
msec: 1664
- hash: "5de043e3ac8696b59293a2fa60ed7e65"
+ hash: "592a60e226aa6967a8a41bc0e4288583"
}
Frame {
msec: 1680
- hash: "1bf42a6f6be5a3468d2f47cccfac761e"
+ hash: "534512915d800d00350803c3fdcccaf3"
}
Frame {
msec: 1696
- hash: "ca05510c1ad25e5d3b002603f4379a09"
+ hash: "a01ffd7ab177f850f3d8320da19a03ce"
}
Frame {
msec: 1712
- hash: "f6904a918a6475f1965d74372e52a4b1"
+ hash: "15bd47f2c5c8cefe7565790b429aa6a4"
}
Frame {
msec: 1728
- hash: "9e2312ddfc1648b615288107a06c9f9c"
+ hash: "b90692eafe68c2b04057af887617667c"
}
Frame {
msec: 1744
- hash: "95c470273b1cb08d4d602efcce339554"
+ hash: "edb22bd93a83de0cd3a046ed5a513ece"
}
Frame {
msec: 1760
- hash: "dade96f707d4a21885480e13b258b7e9"
+ hash: "f08fa88d05f48c42dd1eba538dc464d4"
}
Frame {
msec: 1776
- hash: "0bfbd46f1d4cf562253fb383776cb601"
+ hash: "ec46803523ee0516ed2c89923ff2ded7"
}
Frame {
msec: 1792
- hash: "0bfbd46f1d4cf562253fb383776cb601"
+ hash: "ec46803523ee0516ed2c89923ff2ded7"
}
Frame {
msec: 1808
- hash: "0bfbd46f1d4cf562253fb383776cb601"
+ hash: "ec46803523ee0516ed2c89923ff2ded7"
}
Frame {
msec: 1824
- hash: "0bfbd46f1d4cf562253fb383776cb601"
+ hash: "ec46803523ee0516ed2c89923ff2ded7"
}
Frame {
msec: 1840
- hash: "0bfbd46f1d4cf562253fb383776cb601"
+ hash: "ec46803523ee0516ed2c89923ff2ded7"
}
Frame {
msec: 1856
- hash: "0bfbd46f1d4cf562253fb383776cb601"
+ hash: "ec46803523ee0516ed2c89923ff2ded7"
}
Frame {
msec: 1872
- hash: "0bfbd46f1d4cf562253fb383776cb601"
+ hash: "ec46803523ee0516ed2c89923ff2ded7"
}
Frame {
msec: 1888
- hash: "0bfbd46f1d4cf562253fb383776cb601"
+ hash: "ec46803523ee0516ed2c89923ff2ded7"
}
Frame {
msec: 1904
- hash: "0bfbd46f1d4cf562253fb383776cb601"
+ hash: "ec46803523ee0516ed2c89923ff2ded7"
}
Frame {
msec: 1920
- image: "dynamic.1.png"
+ hash: "ec46803523ee0516ed2c89923ff2ded7"
}
Frame {
msec: 1936
- hash: "0bfbd46f1d4cf562253fb383776cb601"
+ image: "dynamic.2.png"
}
Frame {
msec: 1952
- hash: "0bfbd46f1d4cf562253fb383776cb601"
+ hash: "ec46803523ee0516ed2c89923ff2ded7"
}
Frame {
msec: 1968
- hash: "0bfbd46f1d4cf562253fb383776cb601"
+ hash: "ec46803523ee0516ed2c89923ff2ded7"
}
Frame {
msec: 1984
- hash: "0bfbd46f1d4cf562253fb383776cb601"
+ hash: "ec46803523ee0516ed2c89923ff2ded7"
}
Frame {
msec: 2000
- hash: "0bfbd46f1d4cf562253fb383776cb601"
+ hash: "ec46803523ee0516ed2c89923ff2ded7"
}
Frame {
msec: 2016
- hash: "6fc83e8d4ac99b34062c122a8f7f1850"
+ hash: "ec46803523ee0516ed2c89923ff2ded7"
}
Frame {
msec: 2032
- hash: "6fc83e8d4ac99b34062c122a8f7f1850"
+ hash: "ec46803523ee0516ed2c89923ff2ded7"
}
Frame {
msec: 2048
- hash: "6fc83e8d4ac99b34062c122a8f7f1850"
+ hash: "ec46803523ee0516ed2c89923ff2ded7"
}
Frame {
msec: 2064
- hash: "6fc83e8d4ac99b34062c122a8f7f1850"
+ hash: "ec46803523ee0516ed2c89923ff2ded7"
}
Frame {
msec: 2080
- hash: "6fc83e8d4ac99b34062c122a8f7f1850"
+ hash: "ec46803523ee0516ed2c89923ff2ded7"
}
Frame {
msec: 2096
- hash: "6fc83e8d4ac99b34062c122a8f7f1850"
+ hash: "ec46803523ee0516ed2c89923ff2ded7"
}
Frame {
msec: 2112
- hash: "6fc83e8d4ac99b34062c122a8f7f1850"
+ hash: "ec46803523ee0516ed2c89923ff2ded7"
}
Frame {
msec: 2128
- hash: "6fc83e8d4ac99b34062c122a8f7f1850"
+ hash: "ec46803523ee0516ed2c89923ff2ded7"
}
Frame {
msec: 2144
- hash: "6fc83e8d4ac99b34062c122a8f7f1850"
+ hash: "ec46803523ee0516ed2c89923ff2ded7"
}
Frame {
msec: 2160
- hash: "6fc83e8d4ac99b34062c122a8f7f1850"
+ hash: "ec46803523ee0516ed2c89923ff2ded7"
}
Frame {
msec: 2176
- hash: "6fc83e8d4ac99b34062c122a8f7f1850"
+ hash: "ec46803523ee0516ed2c89923ff2ded7"
}
Frame {
msec: 2192
- hash: "6fc83e8d4ac99b34062c122a8f7f1850"
+ hash: "ec46803523ee0516ed2c89923ff2ded7"
}
Frame {
msec: 2208
- hash: "6fc83e8d4ac99b34062c122a8f7f1850"
+ hash: "ec46803523ee0516ed2c89923ff2ded7"
}
Frame {
msec: 2224
- hash: "6fc83e8d4ac99b34062c122a8f7f1850"
+ hash: "ec46803523ee0516ed2c89923ff2ded7"
}
Frame {
msec: 2240
- hash: "6fc83e8d4ac99b34062c122a8f7f1850"
+ hash: "ec46803523ee0516ed2c89923ff2ded7"
}
Frame {
msec: 2256
- hash: "6fc83e8d4ac99b34062c122a8f7f1850"
+ hash: "ec46803523ee0516ed2c89923ff2ded7"
}
Frame {
msec: 2272
- hash: "6fc83e8d4ac99b34062c122a8f7f1850"
+ hash: "6b8b68e359f532729bf25a6851563ad7"
}
Frame {
msec: 2288
- hash: "6fc83e8d4ac99b34062c122a8f7f1850"
+ hash: "1ee3cf0c3c738a909f1b40b4ef49ac50"
}
Frame {
msec: 2304
- hash: "6fc83e8d4ac99b34062c122a8f7f1850"
+ hash: "71889e0f81eeb252dd91a46af5ce24e7"
}
Frame {
msec: 2320
- hash: "6fc83e8d4ac99b34062c122a8f7f1850"
+ hash: "99390a696ac524d752672df6f2136fa3"
}
Frame {
msec: 2336
- hash: "6fc83e8d4ac99b34062c122a8f7f1850"
+ hash: "00919914f1623bb260e0f99b471aa182"
}
Frame {
msec: 2352
- hash: "6fc83e8d4ac99b34062c122a8f7f1850"
+ hash: "64bd7ff1518a3e84c4b40511c5c0ff2d"
}
Frame {
msec: 2368
- hash: "6fc83e8d4ac99b34062c122a8f7f1850"
+ hash: "b68da721bf79592e49408b098f72e884"
}
Frame {
msec: 2384
- hash: "6fc83e8d4ac99b34062c122a8f7f1850"
+ hash: "6a8ca937b7c961c403ab1662d170c1a5"
}
Frame {
msec: 2400
- hash: "6fc83e8d4ac99b34062c122a8f7f1850"
+ hash: "3f4034da4cd71738d1130c3baa38cf9b"
}
Frame {
msec: 2416
- hash: "6fc83e8d4ac99b34062c122a8f7f1850"
+ hash: "97a86d3c04d07508604b46732b121edd"
}
Frame {
msec: 2432
- hash: "6fc83e8d4ac99b34062c122a8f7f1850"
+ hash: "42e9ab3ed744d1a9a7eb5b7a206f29b3"
}
Frame {
msec: 2448
- hash: "6fc83e8d4ac99b34062c122a8f7f1850"
+ hash: "ff86192c1b9c0faabb5563260cb1bff2"
}
Frame {
msec: 2464
- hash: "6fc83e8d4ac99b34062c122a8f7f1850"
+ hash: "e1de0e431b971deb546935b6b2fc78e7"
}
Frame {
msec: 2480
- hash: "6fc83e8d4ac99b34062c122a8f7f1850"
+ hash: "b7817a7f15d8e727e25719de8cc7d50a"
}
Frame {
msec: 2496
- hash: "6fc83e8d4ac99b34062c122a8f7f1850"
+ hash: "66772971897fc00d01d067e5fc38f848"
}
Frame {
msec: 2512
- hash: "6fc83e8d4ac99b34062c122a8f7f1850"
+ hash: "175db8c0324af4c206f9673f0a8d0477"
}
Frame {
msec: 2528
- hash: "fabf4e535bc4cc17497939d2eeae4a2d"
+ hash: "f3dea687e0ca335b987b6b3c7d736469"
}
Frame {
msec: 2544
- hash: "a7981035f46869f5ae824d0c58b263b2"
+ hash: "44d035dd8e302b75c5a7f98a2005fe75"
}
Frame {
msec: 2560
- hash: "86d8e369bdceb499b244f84ed9e80ba3"
+ hash: "140cf53cb6873b14e6263537f84b0aa0"
}
Frame {
msec: 2576
- hash: "e28a7dc7ea8690da75670b5a6e93a26b"
+ hash: "6c9090d4488289e69562747271459d7d"
}
Frame {
msec: 2592
- hash: "bf4e815360a67bd80732bd8812269b21"
+ hash: "49e92db256f5be8c4e35566eea8fca70"
}
Frame {
msec: 2608
- hash: "a6f8c56cb93da8acc0c90e35596a60d4"
+ hash: "80f41d2eb743ee13fcc486651e310fe2"
}
Frame {
msec: 2624
- hash: "1e60656f0758605169e51b57bd03af36"
+ hash: "f581fdcaf30c0efd4518e538e88c2ebf"
}
Frame {
msec: 2640
- hash: "c069b26b9fae47e0104070d702ba9562"
+ hash: "c028db6753cf60bf587e6c46080a31ea"
}
Frame {
msec: 2656
- hash: "457eb2ca1adff6cbb158afa140b2f20b"
+ hash: "231b69aa9bdadbaf47cbfbc44a322a51"
}
Frame {
msec: 2672
- hash: "4e5e750b0d94b6777aebff85d38225d9"
+ hash: "f0bcc02aaab3fad2ff53fc2d7541d4aa"
}
Frame {
msec: 2688
- hash: "96d9840c2354a8786a8470309be97544"
+ hash: "80e34154585ba3480e37eaac6bfa396c"
}
Frame {
msec: 2704
- hash: "ac7570cc7eeff1acd8c47f2d9328f8be"
+ hash: "e1ebf3ba98b2df53ac9f72744034ba6d"
}
Frame {
msec: 2720
- hash: "887f937bb263c54f29659f27f2b7a3e3"
+ hash: "b8f749a58888f90ed5cabe7aa2eee1ee"
}
Frame {
msec: 2736
- hash: "616371183c82b97f69a4c6e2367b8066"
+ hash: "3a78458aa124a331f5b1616be5eea914"
}
Frame {
msec: 2752
- hash: "36de8ffa9abe850fb681b37aea45ef8b"
+ hash: "c442c02859bc35a8e5493200e68b1730"
}
Frame {
msec: 2768
- hash: "0505101f0edaaf7ff17deeaaddc6bbf9"
+ hash: "0cc4d24a1e1fa75a339a5b3dd07f18f3"
}
Frame {
msec: 2784
- hash: "e8c53dd8343d7d4c384c2f8507ff0631"
+ hash: "0d124bc578058db99e32d58f4b412758"
}
Frame {
msec: 2800
- hash: "e8c53dd8343d7d4c384c2f8507ff0631"
+ hash: "fc174a039606c5457532c9ac27c6faec"
}
Frame {
msec: 2816
- hash: "e8c53dd8343d7d4c384c2f8507ff0631"
+ hash: "db5d25d7c01605ec81cdab3e239a1f0f"
}
Frame {
msec: 2832
- hash: "e8c53dd8343d7d4c384c2f8507ff0631"
+ hash: "7dcffdbf9ac992aac0751bed5c38a0eb"
}
Frame {
msec: 2848
- hash: "e8c53dd8343d7d4c384c2f8507ff0631"
+ hash: "b59dc4f39b3e032d5cd34ffca098889f"
}
Frame {
msec: 2864
- hash: "e8c53dd8343d7d4c384c2f8507ff0631"
+ hash: "925d232189a3eee4bae08a8fe86a488b"
}
Frame {
msec: 2880
- image: "dynamic.2.png"
+ hash: "4ab3a889e27de8f45670c240f6d452a6"
}
Frame {
msec: 2896
- hash: "e8c53dd8343d7d4c384c2f8507ff0631"
+ image: "dynamic.3.png"
}
Frame {
msec: 2912
- hash: "e8c53dd8343d7d4c384c2f8507ff0631"
+ hash: "9b8629b588dcb840fcd32f73f66016ee"
}
Frame {
msec: 2928
- hash: "e8c53dd8343d7d4c384c2f8507ff0631"
+ hash: "dca8e45e930314a860f36343f4577738"
}
Frame {
msec: 2944
- hash: "e8c53dd8343d7d4c384c2f8507ff0631"
+ hash: "b68f3b38e154b65225211c6a1ca8ddb8"
}
Frame {
msec: 2960
- hash: "e8c53dd8343d7d4c384c2f8507ff0631"
+ hash: "d8168aea7962cad60132da9baf66f95c"
}
Frame {
msec: 2976
- hash: "e8c53dd8343d7d4c384c2f8507ff0631"
+ hash: "6f83cd7be71666e08172a2c59e715f2e"
}
Frame {
msec: 2992
- hash: "e8c53dd8343d7d4c384c2f8507ff0631"
+ hash: "f98c68954ed98f340e86c159fcf4f013"
}
Frame {
msec: 3008
- hash: "e8c53dd8343d7d4c384c2f8507ff0631"
+ hash: "e4692a0e6d82864e9027bcf893e0cf90"
}
Frame {
msec: 3024
- hash: "99e4d853d64a381e8db27707b5ff2b25"
+ hash: "ed02ff4d37ad03c0d0d53cf8163ed1c5"
}
Frame {
msec: 3040
- hash: "ab0e62aeffc0d57a5e1d63e6cf49b809"
+ hash: "fb116353a2ceabae2d93c9aac48727d8"
}
Frame {
msec: 3056
- hash: "4ab11bbf1fb6adb0eec8895f78a24a41"
+ hash: "7b8c99b86838c46db4e756cc039ba045"
}
Frame {
msec: 3072
- hash: "634ff2ceb39a3f263a3362238a4ae252"
+ hash: "c8d8e194bc957402fe2236b1a472faa6"
}
Frame {
msec: 3088
- hash: "7f4856873dc23a02297b2497101de9b9"
+ hash: "f0f3d8c8ac3604cd11b7492fe5ee023e"
}
Frame {
msec: 3104
- hash: "bca3919e9d8e6dc5badd8090401dc934"
+ hash: "b41cf314e4684423b4708ccd55904d60"
}
Frame {
msec: 3120
- hash: "824bfe40c3657cfe1368563640e4cfce"
+ hash: "4f578969386627b6e620e83bad5a6a6c"
}
Frame {
msec: 3136
- hash: "f831c1600f68bda139697c406ca70c5e"
+ hash: "bd9fcfaa4e79f969548af12d072c1ec2"
}
Frame {
msec: 3152
- hash: "f8102ca251a9ff46a8fe5a24cff0d2d6"
+ hash: "a418dc92f8b04fddf95f38bd24825ee6"
}
Frame {
msec: 3168
- hash: "f33407ad684aa16efc6615d1cf6fa4b9"
+ hash: "4684b3e318a08f0f2331a13143592d18"
}
Frame {
msec: 3184
- hash: "a73d27f776a6ebfc90309b34421700e5"
+ hash: "1e135a4fd2e7336d8a59ca3497374a3d"
}
Frame {
msec: 3200
- hash: "ff2a4e2663fc50dfec35152f0e79f935"
+ hash: "d1be76e2c56422b469a9d09e22f62df5"
}
Frame {
msec: 3216
- hash: "4935f5f58f2672e9d240625151044bda"
+ hash: "8827523a7f8fa89a56d932102dff7b52"
}
Frame {
msec: 3232
- hash: "f3ad5c203f621fe4d5d321c3c1880743"
+ hash: "e12e6b907af5e6feffed0b9e68c71895"
}
Frame {
msec: 3248
- hash: "d4fb7cd2e1f6a533dae65ddbb50da8ac"
+ hash: "7bc3605f5f241170732aba19ca649896"
}
Frame {
msec: 3264
- hash: "91705e9234c4f02d0a730f6270f9e95f"
+ hash: "d7da9274f30cacd419f0b0b7c8c8a728"
}
Frame {
msec: 3280
- hash: "41e177bec783497b996d6d5f6dac1a15"
+ hash: "154775464235d2a2fb338c27f1490f27"
}
Frame {
msec: 3296
- hash: "41e177bec783497b996d6d5f6dac1a15"
+ hash: "1657f65e8759eec3c026262bb271dd1c"
}
Frame {
msec: 3312
- hash: "41e177bec783497b996d6d5f6dac1a15"
+ hash: "29b4c68846aab3c1dcf4e58861915c33"
}
Frame {
msec: 3328
- hash: "41e177bec783497b996d6d5f6dac1a15"
+ hash: "fe22b3b991a80b34d6fe12515bfa2fd0"
}
Frame {
msec: 3344
- hash: "41e177bec783497b996d6d5f6dac1a15"
+ hash: "961343bb9dcc1fbe81b4c20392c28cb9"
}
Frame {
msec: 3360
- hash: "41e177bec783497b996d6d5f6dac1a15"
+ hash: "a2adb3179465e34b517bf906491a1b60"
}
Frame {
msec: 3376
- hash: "41e177bec783497b996d6d5f6dac1a15"
+ hash: "067fb8a2f5043dd4616fb1539e3e9c4a"
}
Frame {
msec: 3392
- hash: "41e177bec783497b996d6d5f6dac1a15"
+ hash: "009329915e9027d77218fd83334960ed"
}
Frame {
msec: 3408
- hash: "41e177bec783497b996d6d5f6dac1a15"
+ hash: "81b05d8aef8152830c6f199d6dd94fd5"
}
Frame {
msec: 3424
- hash: "41e177bec783497b996d6d5f6dac1a15"
+ hash: "b23fa537f88a97490e48fb3a8cd4b507"
}
Frame {
msec: 3440
- hash: "41e177bec783497b996d6d5f6dac1a15"
+ hash: "182464f620768efe0253c97cda75d839"
}
Frame {
msec: 3456
- hash: "41e177bec783497b996d6d5f6dac1a15"
+ hash: "f1ddbec396cead5d4acf9b65822becb6"
}
Frame {
msec: 3472
- hash: "41e177bec783497b996d6d5f6dac1a15"
+ hash: "a73085722d33638517b3f60a16ce9fcd"
}
Frame {
msec: 3488
- hash: "41e177bec783497b996d6d5f6dac1a15"
+ hash: "ecce53b0c525834341ee4b3c546e670c"
}
Frame {
msec: 3504
- hash: "41e177bec783497b996d6d5f6dac1a15"
+ hash: "86f1da737164290a90c1aef9355e2375"
}
Frame {
msec: 3520
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "722ec874122ad8dcc73820a3a2fb7dca"
}
Frame {
msec: 3536
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "35eb086b11482b752e2c02f1dc4d9099"
}
Frame {
msec: 3552
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "83cf9c0b5d0afd5d3cee4c446274f5c4"
}
Frame {
msec: 3568
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "e1bbef11fe02adb0756113e1106fe7f1"
}
Frame {
msec: 3584
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "774c8bb4585954274852d6bb07e64916"
}
Frame {
msec: 3600
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "b0264bcddf313d4e819a608143a86ac9"
}
Frame {
msec: 3616
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "5e3859fd56e5022cbc7831e22447f05d"
}
Frame {
msec: 3632
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "8c2a8b7321d2598b08d483914d4f319c"
}
Frame {
msec: 3648
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "f13913dbc015836e35d5a2ebc94bbeef"
}
Frame {
msec: 3664
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "1309af996f2d7a686f1d9177bc5c9be6"
}
Frame {
msec: 3680
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "460b3500b41624486fe8dcfde087d2b5"
}
Frame {
msec: 3696
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "de0837d19497021528dc782db4da084a"
}
Frame {
msec: 3712
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "18afb8f8e9aa6d4a5db376e26cd9a56d"
}
Frame {
msec: 3728
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "4fc1a8173824c2725160798b7d70aec2"
}
Frame {
msec: 3744
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "87a593f74c946d6af6e31c5a25898766"
}
Frame {
msec: 3760
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "57e68ec2aa5a21b11d21f388399713e5"
}
Frame {
msec: 3776
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "4cb9ee1d12b99fb98bedcbcc048867e4"
}
Frame {
msec: 3792
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "3eebd1f4f58210f6b546715997a984c2"
}
Frame {
msec: 3808
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "39eabc07bfcefb2ecd369abf94d706cd"
}
Frame {
msec: 3824
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "a0c46402b4700cc2099bdf42c47faf9b"
}
Frame {
msec: 3840
- image: "dynamic.3.png"
+ hash: "3c8b4831583922c7c1c85f227ef2b3dc"
}
Frame {
msec: 3856
- hash: "496dc6261695bcf04a8e574146544e98"
+ image: "dynamic.4.png"
}
Frame {
msec: 3872
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "e1b0d4cae609f3074fb1ac46c172bf4a"
}
Frame {
msec: 3888
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "09b76db3e4a95666ba9c37dd89996fa3"
}
Frame {
msec: 3904
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "b692386f34972d80aded2347e64ad2b6"
}
Frame {
msec: 3920
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "dc65b0a791002efffec05884aa948842"
}
Frame {
msec: 3936
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "069bab78e29d322894647f81d315184a"
}
Frame {
msec: 3952
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "39c8d804b3caf53845baba4ce98e007d"
}
Frame {
msec: 3968
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "3b477dfd05f07bdf0ba562d6068cafdb"
}
Frame {
msec: 3984
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "eb84ee75bdbf25dcc32587007f5dc9bd"
}
Frame {
msec: 4000
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "441d34bff2755e3c30bed80e2bdde69c"
}
Frame {
msec: 4016
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "4cb9ee1d12b99fb98bedcbcc048867e4"
}
Frame {
msec: 4032
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "3eebd1f4f58210f6b546715997a984c2"
}
Frame {
msec: 4048
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "39eabc07bfcefb2ecd369abf94d706cd"
}
Frame {
msec: 4064
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "a0c46402b4700cc2099bdf42c47faf9b"
}
Frame {
msec: 4080
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "3c8b4831583922c7c1c85f227ef2b3dc"
}
Frame {
msec: 4096
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "c92cba3c2825db4293153588c4b7b229"
}
Frame {
msec: 4112
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "e1b0d4cae609f3074fb1ac46c172bf4a"
}
Frame {
msec: 4128
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "09b76db3e4a95666ba9c37dd89996fa3"
}
Frame {
msec: 4144
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "b692386f34972d80aded2347e64ad2b6"
}
Frame {
msec: 4160
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "dc65b0a791002efffec05884aa948842"
}
Frame {
msec: 4176
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "069bab78e29d322894647f81d315184a"
}
Frame {
msec: 4192
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "39c8d804b3caf53845baba4ce98e007d"
}
Frame {
msec: 4208
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "3b477dfd05f07bdf0ba562d6068cafdb"
}
Frame {
msec: 4224
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "eb84ee75bdbf25dcc32587007f5dc9bd"
}
Frame {
msec: 4240
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "441d34bff2755e3c30bed80e2bdde69c"
}
Frame {
msec: 4256
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "57e68ec2aa5a21b11d21f388399713e5"
}
Frame {
msec: 4272
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "4cb9ee1d12b99fb98bedcbcc048867e4"
}
Frame {
msec: 4288
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "3eebd1f4f58210f6b546715997a984c2"
}
Frame {
msec: 4304
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "39eabc07bfcefb2ecd369abf94d706cd"
}
Frame {
msec: 4320
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "a0c46402b4700cc2099bdf42c47faf9b"
}
Frame {
msec: 4336
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "3c8b4831583922c7c1c85f227ef2b3dc"
}
Frame {
msec: 4352
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "c92cba3c2825db4293153588c4b7b229"
}
Frame {
msec: 4368
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "e1b0d4cae609f3074fb1ac46c172bf4a"
}
Frame {
msec: 4384
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "09b76db3e4a95666ba9c37dd89996fa3"
}
Frame {
msec: 4400
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "b692386f34972d80aded2347e64ad2b6"
}
Frame {
msec: 4416
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "dc65b0a791002efffec05884aa948842"
}
Frame {
msec: 4432
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "069bab78e29d322894647f81d315184a"
}
Frame {
msec: 4448
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "39c8d804b3caf53845baba4ce98e007d"
}
Frame {
msec: 4464
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "3b477dfd05f07bdf0ba562d6068cafdb"
}
Frame {
msec: 4480
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "eb84ee75bdbf25dcc32587007f5dc9bd"
}
Frame {
msec: 4496
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "441d34bff2755e3c30bed80e2bdde69c"
}
Frame {
msec: 4512
- hash: "496dc6261695bcf04a8e574146544e98"
+ hash: "57e68ec2aa5a21b11d21f388399713e5"
}
Frame {
msec: 4528
- hash: "9681be99003f8a14cc5654d06d2c8255"
+ hash: "4cb9ee1d12b99fb98bedcbcc048867e4"
}
Frame {
msec: 4544
- hash: "bcb592a2335aa2e35956881fd028f4e6"
+ hash: "3eebd1f4f58210f6b546715997a984c2"
}
Frame {
msec: 4560
- hash: "f914b25fdcb02a02b71220d82b7b2a75"
+ hash: "39eabc07bfcefb2ecd369abf94d706cd"
}
Frame {
msec: 4576
- hash: "63c82c08eb7f2bd50b54b94c952df3f2"
+ hash: "a0c46402b4700cc2099bdf42c47faf9b"
}
Frame {
msec: 4592
- hash: "8a8dc82be81fa55605c6c2e749895120"
+ hash: "3c8b4831583922c7c1c85f227ef2b3dc"
}
Frame {
msec: 4608
- hash: "271f8d79b8052dfcd840ffa9ba9ffeec"
+ hash: "c92cba3c2825db4293153588c4b7b229"
}
Frame {
msec: 4624
- hash: "8f77bbd0585b57e69ac1919bd81ee3b1"
+ hash: "e1b0d4cae609f3074fb1ac46c172bf4a"
}
Frame {
msec: 4640
- hash: "b974260a2f90e141ebc33ced98fbca88"
+ hash: "09b76db3e4a95666ba9c37dd89996fa3"
}
Frame {
msec: 4656
- hash: "77ada180f8a45652a6fa636d7ece4d9d"
+ hash: "b692386f34972d80aded2347e64ad2b6"
}
Frame {
msec: 4672
- hash: "4c8dc2e33cd989cb3b0938c6c75b5f95"
+ hash: "dc65b0a791002efffec05884aa948842"
}
Frame {
msec: 4688
- hash: "a145954989508b925a444e14f0c27a20"
+ hash: "069bab78e29d322894647f81d315184a"
}
Frame {
msec: 4704
- hash: "8d27ff203819174747ae4a5cee8d0ae8"
+ hash: "39c8d804b3caf53845baba4ce98e007d"
}
Frame {
msec: 4720
- hash: "830f34b0dab780c6efe2294872ba8508"
+ hash: "3b477dfd05f07bdf0ba562d6068cafdb"
}
Frame {
msec: 4736
- hash: "5d70a4bbd815569cfe5735b596bad080"
+ hash: "eb84ee75bdbf25dcc32587007f5dc9bd"
}
Frame {
msec: 4752
- hash: "964527bb82ea006e03b030c787a8597c"
+ hash: "441d34bff2755e3c30bed80e2bdde69c"
}
Frame {
msec: 4768
- hash: "1ad54954b818fa9e6032ac4b6114e7db"
+ hash: "4cb9ee1d12b99fb98bedcbcc048867e4"
}
Frame {
msec: 4784
- hash: "47865243cc252aef67774001af70c54c"
+ hash: "3eebd1f4f58210f6b546715997a984c2"
}
Frame {
msec: 4800
- image: "dynamic.4.png"
+ hash: "39eabc07bfcefb2ecd369abf94d706cd"
}
Frame {
msec: 4816
- hash: "47865243cc252aef67774001af70c54c"
+ image: "dynamic.5.png"
}
Frame {
msec: 4832
- hash: "47865243cc252aef67774001af70c54c"
+ hash: "3c8b4831583922c7c1c85f227ef2b3dc"
}
Frame {
msec: 4848
- hash: "47865243cc252aef67774001af70c54c"
+ hash: "c92cba3c2825db4293153588c4b7b229"
}
Frame {
msec: 4864
- hash: "47865243cc252aef67774001af70c54c"
+ hash: "e1b0d4cae609f3074fb1ac46c172bf4a"
}
Frame {
msec: 4880
- hash: "47865243cc252aef67774001af70c54c"
+ hash: "09b76db3e4a95666ba9c37dd89996fa3"
}
Frame {
msec: 4896
- hash: "47865243cc252aef67774001af70c54c"
+ hash: "b692386f34972d80aded2347e64ad2b6"
}
Frame {
msec: 4912
- hash: "47865243cc252aef67774001af70c54c"
+ hash: "dc65b0a791002efffec05884aa948842"
}
Frame {
msec: 4928
- hash: "47865243cc252aef67774001af70c54c"
+ hash: "069bab78e29d322894647f81d315184a"
}
Frame {
msec: 4944
- hash: "47865243cc252aef67774001af70c54c"
+ hash: "39c8d804b3caf53845baba4ce98e007d"
}
Frame {
msec: 4960
- hash: "47865243cc252aef67774001af70c54c"
+ hash: "3b477dfd05f07bdf0ba562d6068cafdb"
}
Frame {
msec: 4976
- hash: "47865243cc252aef67774001af70c54c"
+ hash: "eb84ee75bdbf25dcc32587007f5dc9bd"
}
Frame {
msec: 4992
- hash: "47865243cc252aef67774001af70c54c"
+ hash: "441d34bff2755e3c30bed80e2bdde69c"
}
Frame {
msec: 5008
- hash: "47865243cc252aef67774001af70c54c"
+ hash: "57e68ec2aa5a21b11d21f388399713e5"
}
Frame {
msec: 5024
- hash: "47865243cc252aef67774001af70c54c"
+ hash: "4cb9ee1d12b99fb98bedcbcc048867e4"
}
Frame {
msec: 5040
- hash: "baeb8adffc13e230e797e0437f2ad5fa"
+ hash: "3eebd1f4f58210f6b546715997a984c2"
}
Frame {
msec: 5056
- hash: "d2e440fcad0ee2b7b35d7e5c4e581f73"
+ hash: "39eabc07bfcefb2ecd369abf94d706cd"
}
Frame {
msec: 5072
- hash: "fb8acb2f69234d3ee089281d0297ad7c"
+ hash: "a0c46402b4700cc2099bdf42c47faf9b"
}
Frame {
msec: 5088
- hash: "7fda29a83dc535ed8d6b35e999400311"
+ hash: "3c8b4831583922c7c1c85f227ef2b3dc"
}
Frame {
msec: 5104
- hash: "6482e3eb10cfdbdeb57dd38ba3e3d67e"
+ hash: "c92cba3c2825db4293153588c4b7b229"
}
Frame {
msec: 5120
- hash: "4d222549bc2565c1598a532460aae4e6"
+ hash: "e1b0d4cae609f3074fb1ac46c172bf4a"
}
Frame {
msec: 5136
- hash: "776d1b0f9945c0e1ceda0cf117264919"
+ hash: "09b76db3e4a95666ba9c37dd89996fa3"
}
Frame {
msec: 5152
- hash: "f2c362b34a0982ee1a11dea6b063945e"
+ hash: "b692386f34972d80aded2347e64ad2b6"
}
Frame {
msec: 5168
- hash: "115f02b8893972b5b1d63525ce70762e"
+ hash: "dc65b0a791002efffec05884aa948842"
}
Frame {
msec: 5184
- hash: "7f2d53581fe2c6c45a628fa4cd9b5742"
+ hash: "069bab78e29d322894647f81d315184a"
}
Frame {
msec: 5200
- hash: "b5ed1120c4edf842b15d5144adbd93b0"
+ hash: "39c8d804b3caf53845baba4ce98e007d"
}
Frame {
msec: 5216
- hash: "3511938df57c4cdce316692de204b057"
+ hash: "3b477dfd05f07bdf0ba562d6068cafdb"
}
Frame {
msec: 5232
- hash: "99583918d068ab5d132fe7a699c2a7a6"
+ hash: "eb84ee75bdbf25dcc32587007f5dc9bd"
}
Frame {
msec: 5248
- hash: "c0ce9df18479dbb57fb1dbc777f4f0e5"
+ hash: "441d34bff2755e3c30bed80e2bdde69c"
}
Frame {
msec: 5264
- hash: "b24db7b5c406328380fcf9927fb26c5c"
+ hash: "57e68ec2aa5a21b11d21f388399713e5"
}
Frame {
msec: 5280
- hash: "b24db7b5c406328380fcf9927fb26c5c"
+ hash: "4cb9ee1d12b99fb98bedcbcc048867e4"
}
Frame {
msec: 5296
- hash: "b24db7b5c406328380fcf9927fb26c5c"
+ hash: "3eebd1f4f58210f6b546715997a984c2"
}
Frame {
msec: 5312
- hash: "b24db7b5c406328380fcf9927fb26c5c"
+ hash: "39eabc07bfcefb2ecd369abf94d706cd"
}
Frame {
msec: 5328
- hash: "b24db7b5c406328380fcf9927fb26c5c"
+ hash: "a0c46402b4700cc2099bdf42c47faf9b"
}
Frame {
msec: 5344
- hash: "b24db7b5c406328380fcf9927fb26c5c"
+ hash: "3c8b4831583922c7c1c85f227ef2b3dc"
}
Frame {
msec: 5360
- hash: "b24db7b5c406328380fcf9927fb26c5c"
+ hash: "c92cba3c2825db4293153588c4b7b229"
}
Frame {
msec: 5376
- hash: "b24db7b5c406328380fcf9927fb26c5c"
+ hash: "e1b0d4cae609f3074fb1ac46c172bf4a"
}
Frame {
msec: 5392
- hash: "b24db7b5c406328380fcf9927fb26c5c"
+ hash: "09b76db3e4a95666ba9c37dd89996fa3"
}
Frame {
msec: 5408
- hash: "b24db7b5c406328380fcf9927fb26c5c"
+ hash: "b692386f34972d80aded2347e64ad2b6"
}
Frame {
msec: 5424
- hash: "b24db7b5c406328380fcf9927fb26c5c"
+ hash: "dc65b0a791002efffec05884aa948842"
}
Frame {
msec: 5440
- hash: "b24db7b5c406328380fcf9927fb26c5c"
+ hash: "069bab78e29d322894647f81d315184a"
}
Frame {
msec: 5456
- hash: "b24db7b5c406328380fcf9927fb26c5c"
+ hash: "39c8d804b3caf53845baba4ce98e007d"
}
Frame {
msec: 5472
- hash: "b24db7b5c406328380fcf9927fb26c5c"
+ hash: "3b477dfd05f07bdf0ba562d6068cafdb"
}
Frame {
msec: 5488
- hash: "b24db7b5c406328380fcf9927fb26c5c"
+ hash: "eb84ee75bdbf25dcc32587007f5dc9bd"
}
Frame {
msec: 5504
- hash: "b24db7b5c406328380fcf9927fb26c5c"
+ hash: "441d34bff2755e3c30bed80e2bdde69c"
}
Frame {
msec: 5520
- hash: "b24db7b5c406328380fcf9927fb26c5c"
+ hash: "4cb9ee1d12b99fb98bedcbcc048867e4"
}
Frame {
msec: 5536
- hash: "98cc64411264d8a635a6afe6b11cee6e"
+ hash: "3eebd1f4f58210f6b546715997a984c2"
}
Frame {
msec: 5552
- hash: "b86434b7af8ad1db946c43a2791d69ab"
+ hash: "39eabc07bfcefb2ecd369abf94d706cd"
}
Frame {
msec: 5568
- hash: "f45616f9e33658d1dddb537e842c8768"
+ hash: "a0c46402b4700cc2099bdf42c47faf9b"
}
Frame {
msec: 5584
- hash: "e49d8955e27cdc19a37c331e56c81af1"
+ hash: "3c8b4831583922c7c1c85f227ef2b3dc"
}
Frame {
msec: 5600
- hash: "b2dbe764906b50195f65dc11a5842515"
+ hash: "c92cba3c2825db4293153588c4b7b229"
}
Frame {
msec: 5616
- hash: "71ce7c63d65c29cdffd83f5ae07f0b93"
+ hash: "e1b0d4cae609f3074fb1ac46c172bf4a"
}
Frame {
msec: 5632
- hash: "901d01e1fc777ec185cd023ad0ace4c1"
+ hash: "09b76db3e4a95666ba9c37dd89996fa3"
}
Frame {
msec: 5648
- hash: "a3f31de30fc2e92bae1f735504216216"
+ hash: "b692386f34972d80aded2347e64ad2b6"
}
Frame {
msec: 5664
- hash: "0fc52dd8102506e3e7671fa548551b23"
+ hash: "dc65b0a791002efffec05884aa948842"
}
Frame {
msec: 5680
- hash: "fb92809e728416035dbb91116ad8fe0e"
+ hash: "069bab78e29d322894647f81d315184a"
}
Frame {
msec: 5696
- hash: "9003dc8ca4f781909035cb03dc45864f"
+ hash: "39c8d804b3caf53845baba4ce98e007d"
}
Frame {
msec: 5712
- hash: "2bff1de793ad8521fd54413849c3cf29"
+ hash: "3b477dfd05f07bdf0ba562d6068cafdb"
}
Frame {
msec: 5728
- hash: "8362e4db7c4446282d844a4fc6632d19"
+ hash: "eb84ee75bdbf25dcc32587007f5dc9bd"
}
Frame {
msec: 5744
- hash: "b874fa274c6ec77c106ff4a0288f9169"
+ hash: "441d34bff2755e3c30bed80e2bdde69c"
}
Frame {
msec: 5760
- image: "dynamic.5.png"
+ hash: "57e68ec2aa5a21b11d21f388399713e5"
}
Frame {
msec: 5776
- hash: "e64ac8e11e36cafb25c947c5802d54b9"
+ image: "dynamic.6.png"
}
Frame {
msec: 5792
- hash: "e64ac8e11e36cafb25c947c5802d54b9"
+ hash: "3eebd1f4f58210f6b546715997a984c2"
}
Frame {
msec: 5808
- hash: "e64ac8e11e36cafb25c947c5802d54b9"
+ hash: "39eabc07bfcefb2ecd369abf94d706cd"
}
Frame {
msec: 5824
- hash: "e64ac8e11e36cafb25c947c5802d54b9"
+ hash: "a0c46402b4700cc2099bdf42c47faf9b"
}
Frame {
msec: 5840
- hash: "e64ac8e11e36cafb25c947c5802d54b9"
+ hash: "3c8b4831583922c7c1c85f227ef2b3dc"
}
Frame {
msec: 5856
- hash: "e64ac8e11e36cafb25c947c5802d54b9"
+ hash: "c92cba3c2825db4293153588c4b7b229"
}
Frame {
msec: 5872
- hash: "e64ac8e11e36cafb25c947c5802d54b9"
+ hash: "e1b0d4cae609f3074fb1ac46c172bf4a"
}
Frame {
msec: 5888
- hash: "e64ac8e11e36cafb25c947c5802d54b9"
+ hash: "09b76db3e4a95666ba9c37dd89996fa3"
}
Frame {
msec: 5904
- hash: "e64ac8e11e36cafb25c947c5802d54b9"
+ hash: "b692386f34972d80aded2347e64ad2b6"
}
Frame {
msec: 5920
- hash: "e64ac8e11e36cafb25c947c5802d54b9"
+ hash: "dc65b0a791002efffec05884aa948842"
}
Frame {
msec: 5936
- hash: "e64ac8e11e36cafb25c947c5802d54b9"
+ hash: "069bab78e29d322894647f81d315184a"
}
Frame {
msec: 5952
- hash: "e64ac8e11e36cafb25c947c5802d54b9"
+ hash: "39c8d804b3caf53845baba4ce98e007d"
}
Frame {
msec: 5968
- hash: "e64ac8e11e36cafb25c947c5802d54b9"
+ hash: "3b477dfd05f07bdf0ba562d6068cafdb"
}
Frame {
msec: 5984
- hash: "e64ac8e11e36cafb25c947c5802d54b9"
+ hash: "eb84ee75bdbf25dcc32587007f5dc9bd"
}
Frame {
msec: 6000
- hash: "e64ac8e11e36cafb25c947c5802d54b9"
+ hash: "441d34bff2755e3c30bed80e2bdde69c"
}
Frame {
msec: 6016
- hash: "e64ac8e11e36cafb25c947c5802d54b9"
+ hash: "4cb9ee1d12b99fb98bedcbcc048867e4"
}
Frame {
msec: 6032
- hash: "7621e64568058b82bcb6f6b46cee3ebc"
+ hash: "3eebd1f4f58210f6b546715997a984c2"
}
Frame {
msec: 6048
- hash: "f77f6de6fc88813f49427b4888a59dbf"
+ hash: "39eabc07bfcefb2ecd369abf94d706cd"
}
Frame {
msec: 6064
- hash: "d3a48f596219372ac25941e4c5ec5b2b"
+ hash: "a0c46402b4700cc2099bdf42c47faf9b"
}
Frame {
msec: 6080
- hash: "d572d932b613f9ca1e0acf144f127dd1"
+ hash: "3c8b4831583922c7c1c85f227ef2b3dc"
}
Frame {
msec: 6096
- hash: "edf317eaf51d933bcd0f57f214921a81"
+ hash: "c92cba3c2825db4293153588c4b7b229"
}
Frame {
msec: 6112
- hash: "e0cee7959a5a8a08ad03d75e7b5c6ca1"
+ hash: "e1b0d4cae609f3074fb1ac46c172bf4a"
}
Frame {
msec: 6128
- hash: "96877a15f44d4a2c8d9974cb28b9e1b6"
+ hash: "09b76db3e4a95666ba9c37dd89996fa3"
}
Frame {
msec: 6144
- hash: "c0ffb0ef6dd9d007d201feebd2f68e44"
+ hash: "b692386f34972d80aded2347e64ad2b6"
}
Frame {
msec: 6160
- hash: "209fb930223243fa19c5dde9e85ec518"
+ hash: "dc65b0a791002efffec05884aa948842"
}
Frame {
msec: 6176
- hash: "ae98ac4dba0e78eb8fb7f7dbe29b2832"
+ hash: "069bab78e29d322894647f81d315184a"
}
Frame {
msec: 6192
- hash: "c94a7d68ce007d83df77a595a5815a96"
+ hash: "39c8d804b3caf53845baba4ce98e007d"
}
Frame {
msec: 6208
- hash: "4c28e409bf5a6c1289bcab8cd59a9e42"
+ hash: "3b477dfd05f07bdf0ba562d6068cafdb"
}
Frame {
msec: 6224
- hash: "ea1009f1a3446dd5ce937e6949794794"
+ hash: "eb84ee75bdbf25dcc32587007f5dc9bd"
}
Frame {
msec: 6240
- hash: "940c16766c2f87feef48e1187672ca9b"
+ hash: "441d34bff2755e3c30bed80e2bdde69c"
}
Frame {
msec: 6256
- hash: "93664c87c8dcfadc0345f646b2508625"
+ hash: "57e68ec2aa5a21b11d21f388399713e5"
}
Frame {
msec: 6272
- hash: "93664c87c8dcfadc0345f646b2508625"
+ hash: "4cb9ee1d12b99fb98bedcbcc048867e4"
}
Frame {
msec: 6288
- hash: "93664c87c8dcfadc0345f646b2508625"
+ hash: "3eebd1f4f58210f6b546715997a984c2"
}
Frame {
msec: 6304
- hash: "93664c87c8dcfadc0345f646b2508625"
+ hash: "39eabc07bfcefb2ecd369abf94d706cd"
}
Frame {
msec: 6320
- hash: "93664c87c8dcfadc0345f646b2508625"
+ hash: "a0c46402b4700cc2099bdf42c47faf9b"
}
Frame {
msec: 6336
- hash: "93664c87c8dcfadc0345f646b2508625"
+ hash: "3c8b4831583922c7c1c85f227ef2b3dc"
}
Frame {
msec: 6352
- hash: "93664c87c8dcfadc0345f646b2508625"
+ hash: "c92cba3c2825db4293153588c4b7b229"
}
Frame {
msec: 6368
- hash: "93664c87c8dcfadc0345f646b2508625"
+ hash: "e1b0d4cae609f3074fb1ac46c172bf4a"
}
Frame {
msec: 6384
- hash: "93664c87c8dcfadc0345f646b2508625"
+ hash: "09b76db3e4a95666ba9c37dd89996fa3"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/usingRepeater.0.png b/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/usingRepeater.0.png
new file mode 100644
index 0000000000..0efb20af0e
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/usingRepeater.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/usingRepeater.qml b/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/usingRepeater.qml
index 5d88df7d3e..365c25f0ea 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/usingRepeater.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativepositioners/data/usingRepeater.qml
@@ -6,130 +6,130 @@ VisualTest {
}
Frame {
msec: 16
- hash: "1a396cf01a6c31155609532654653599"
+ image: "usingRepeater.0.png"
}
Frame {
msec: 32
- hash: "1a396cf01a6c31155609532654653599"
+ hash: "e76f50af76d6ee5925b183f9e2316b78"
}
Frame {
msec: 48
- hash: "1a396cf01a6c31155609532654653599"
+ hash: "e76f50af76d6ee5925b183f9e2316b78"
}
Frame {
msec: 64
- hash: "1a396cf01a6c31155609532654653599"
+ hash: "e76f50af76d6ee5925b183f9e2316b78"
}
Frame {
msec: 80
- hash: "1a396cf01a6c31155609532654653599"
+ hash: "e76f50af76d6ee5925b183f9e2316b78"
}
Frame {
msec: 96
- hash: "1a396cf01a6c31155609532654653599"
+ hash: "e76f50af76d6ee5925b183f9e2316b78"
}
Frame {
msec: 112
- hash: "1a396cf01a6c31155609532654653599"
+ hash: "e76f50af76d6ee5925b183f9e2316b78"
}
Frame {
msec: 128
- hash: "1a396cf01a6c31155609532654653599"
+ hash: "e76f50af76d6ee5925b183f9e2316b78"
}
Frame {
msec: 144
- hash: "1a396cf01a6c31155609532654653599"
+ hash: "e76f50af76d6ee5925b183f9e2316b78"
}
Frame {
msec: 160
- hash: "1a396cf01a6c31155609532654653599"
+ hash: "e76f50af76d6ee5925b183f9e2316b78"
}
Frame {
msec: 176
- hash: "1a396cf01a6c31155609532654653599"
+ hash: "e76f50af76d6ee5925b183f9e2316b78"
}
Frame {
msec: 192
- hash: "1a396cf01a6c31155609532654653599"
+ hash: "e76f50af76d6ee5925b183f9e2316b78"
}
Frame {
msec: 208
- hash: "1a396cf01a6c31155609532654653599"
+ hash: "e76f50af76d6ee5925b183f9e2316b78"
}
Frame {
msec: 224
- hash: "1a396cf01a6c31155609532654653599"
+ hash: "e76f50af76d6ee5925b183f9e2316b78"
}
Frame {
msec: 240
- hash: "1a396cf01a6c31155609532654653599"
+ hash: "e76f50af76d6ee5925b183f9e2316b78"
}
Frame {
msec: 256
- hash: "1a396cf01a6c31155609532654653599"
+ hash: "e76f50af76d6ee5925b183f9e2316b78"
}
Frame {
msec: 272
- hash: "8a4565aee33d40840bda26b65b6a0d90"
+ hash: "c98a904eb5da750f4cabf787e253b2ec"
}
Frame {
msec: 288
- hash: "8a4565aee33d40840bda26b65b6a0d90"
+ hash: "c98a904eb5da750f4cabf787e253b2ec"
}
Frame {
msec: 304
- hash: "8a4565aee33d40840bda26b65b6a0d90"
+ hash: "c98a904eb5da750f4cabf787e253b2ec"
}
Frame {
msec: 320
- hash: "8a4565aee33d40840bda26b65b6a0d90"
+ hash: "c98a904eb5da750f4cabf787e253b2ec"
}
Frame {
msec: 336
- hash: "8a4565aee33d40840bda26b65b6a0d90"
+ hash: "c98a904eb5da750f4cabf787e253b2ec"
}
Frame {
msec: 352
- hash: "8a4565aee33d40840bda26b65b6a0d90"
+ hash: "c98a904eb5da750f4cabf787e253b2ec"
}
Frame {
msec: 368
- hash: "8a4565aee33d40840bda26b65b6a0d90"
+ hash: "c98a904eb5da750f4cabf787e253b2ec"
}
Frame {
msec: 384
- hash: "8a4565aee33d40840bda26b65b6a0d90"
+ hash: "c98a904eb5da750f4cabf787e253b2ec"
}
Frame {
msec: 400
- hash: "8a4565aee33d40840bda26b65b6a0d90"
+ hash: "c98a904eb5da750f4cabf787e253b2ec"
}
Frame {
msec: 416
- hash: "8a4565aee33d40840bda26b65b6a0d90"
+ hash: "c98a904eb5da750f4cabf787e253b2ec"
}
Frame {
msec: 432
- hash: "8a4565aee33d40840bda26b65b6a0d90"
+ hash: "c98a904eb5da750f4cabf787e253b2ec"
}
Frame {
msec: 448
- hash: "8a4565aee33d40840bda26b65b6a0d90"
+ hash: "c98a904eb5da750f4cabf787e253b2ec"
}
Frame {
msec: 464
- hash: "8a4565aee33d40840bda26b65b6a0d90"
+ hash: "c98a904eb5da750f4cabf787e253b2ec"
}
Frame {
msec: 480
- hash: "8a4565aee33d40840bda26b65b6a0d90"
+ hash: "c98a904eb5da750f4cabf787e253b2ec"
}
Frame {
msec: 496
- hash: "8a4565aee33d40840bda26b65b6a0d90"
+ hash: "c98a904eb5da750f4cabf787e253b2ec"
}
Frame {
msec: 512
- hash: "8a4565aee33d40840bda26b65b6a0d90"
+ hash: "c98a904eb5da750f4cabf787e253b2ec"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativesmoothedanimation/data/smoothedfollow.0.png b/tests/auto/declarative/qmlvisual/qdeclarativesmoothedanimation/data/smoothedfollow.0.png
index bf02e1a121..dd380195af 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativesmoothedanimation/data/smoothedfollow.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativesmoothedanimation/data/smoothedfollow.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativesmoothedanimation/data/smoothedfollow.1.png b/tests/auto/declarative/qmlvisual/qdeclarativesmoothedanimation/data/smoothedfollow.1.png
index ae71dc808d..d749080904 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativesmoothedanimation/data/smoothedfollow.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativesmoothedanimation/data/smoothedfollow.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativesmoothedanimation/data/smoothedfollow.2.png b/tests/auto/declarative/qmlvisual/qdeclarativesmoothedanimation/data/smoothedfollow.2.png
index 6f631b0782..57a3ae0e92 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativesmoothedanimation/data/smoothedfollow.2.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativesmoothedanimation/data/smoothedfollow.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativesmoothedanimation/data/smoothedfollow.3.png b/tests/auto/declarative/qmlvisual/qdeclarativesmoothedanimation/data/smoothedfollow.3.png
new file mode 100644
index 0000000000..3a75ec4ac6
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativesmoothedanimation/data/smoothedfollow.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativesmoothedanimation/data/smoothedfollow.qml b/tests/auto/declarative/qmlvisual/qdeclarativesmoothedanimation/data/smoothedfollow.qml
index 31249736c9..14280a08c9 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativesmoothedanimation/data/smoothedfollow.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativesmoothedanimation/data/smoothedfollow.qml
@@ -6,790 +6,790 @@ VisualTest {
}
Frame {
msec: 16
- hash: "2c6600b50a18c415032fa95fe5089da6"
+ image: "smoothedfollow.0.png"
}
Frame {
msec: 32
- hash: "aefd5a2570cc0252be102644ec1e49e3"
+ hash: "1d0005639ad631a4f88fb2372b955741"
}
Frame {
msec: 48
- hash: "6183d0554a8b812bee02719dc4df21d1"
+ hash: "b303c2fb08eb8158c322719d072deb06"
}
Frame {
msec: 64
- hash: "e1b3a94d033626338de0e04dba7b6df9"
+ hash: "4b3d7a5b9b5f1a335e81e3aafce2a244"
}
Frame {
msec: 80
- hash: "7d1a5a265fb20ac4d741d76ab7b3a41f"
+ hash: "33d144e82787ac28f9012105645f5eb8"
}
Frame {
msec: 96
- hash: "0ce7d2acda3e5ccb7b2364e2a7b409a4"
+ hash: "b6e16400c1364241da2fc12810780b9b"
}
Frame {
msec: 112
- hash: "21f3a66ee80fcb2dd4dce0d1666aa4dd"
+ hash: "e32e552a0ac9e517df2826d82ed3e483"
}
Frame {
msec: 128
- hash: "ea5b81ff2805210111cb388ab9be0d8f"
+ hash: "855e317677189a8aa97909ac5c7a831c"
}
Frame {
msec: 144
- hash: "a8a54a3c524dcf6777b71d99ae2d50bd"
+ hash: "cddb47ce0a793dc74c6cbc2b3fb138d0"
}
Frame {
msec: 160
- hash: "6b658c468af8a88e4a282d57fdcbc3b0"
+ hash: "21932fa377c6c9652eb22bbae4bf7d23"
}
Frame {
msec: 176
- hash: "986121c9d928cc9ceb912a975f75760a"
+ hash: "95adc0bfe18070001d531a36785af2a2"
}
Frame {
msec: 192
- hash: "4bf3593d0edc4347cf77670a48ba4440"
+ hash: "b3c39dc57a658b1ff7c24194a4214696"
}
Frame {
msec: 208
- hash: "ea00f25295fb019f949930fb7109ceb4"
+ hash: "d145d38d45f824f3dd2f43eddf38d310"
}
Frame {
msec: 224
- hash: "ad6cc7563e2720c405842317d0ce731a"
+ hash: "dee8ad57b625965d3045089d5f6e80aa"
}
Frame {
msec: 240
- hash: "8a03a1207cdb5bd92f5227b25a7b638e"
+ hash: "94263216e2b0ab77980b3cc0b42350a6"
}
Frame {
msec: 256
- hash: "f355321aa47d18e8b6dde503565d0e97"
+ hash: "a9ea122b9b67428f9d28368ffb862c37"
}
Frame {
msec: 272
- hash: "e18f671cac8e68948f32a468bf2630cf"
+ hash: "d1101c25521fd2308ccbe5ec318d9922"
}
Frame {
msec: 288
- hash: "264bca92fba53f25439d240afef62880"
+ hash: "e854bb4accb78052ec3df32a80d29a94"
}
Frame {
msec: 304
- hash: "a1a226c73fb97d5302ce683f901ee5c4"
+ hash: "10898f94cc74a888fc57f76897a56b2a"
}
Frame {
msec: 320
- hash: "05578552476372fc58e463e84a147ddd"
+ hash: "65668c114d62e3e901953c9aca9fe276"
}
Frame {
msec: 336
- hash: "0a3e0a651f9eb3e6a44a55a6786e60ff"
+ hash: "a67cd21b3c451134961d5890b05cff49"
}
Frame {
msec: 352
- hash: "4ca362f079f96a01360ee8062fbb8238"
+ hash: "40fbf54e37f46dce2aeda74ed6815e42"
}
Frame {
msec: 368
- hash: "ba512c117d97ce16ff92d03ce2b08056"
+ hash: "dc86af89de1edce0986c6e1a56bd0e21"
}
Frame {
msec: 384
- hash: "8688355f0f97afe000d02f71c841d5dc"
+ hash: "b9700d510fe9b936d60a0ef22b1a4d23"
}
Frame {
msec: 400
- hash: "a2ea6ad008da95a67d3bc70e11e3811d"
+ hash: "620edf9a854b1f32911b4af69be95076"
}
Frame {
msec: 416
- hash: "83bc9c444ab8618438dc2b8b14716f7b"
+ hash: "28d9670eb3dea66506affaf8b8672c52"
}
Frame {
msec: 432
- hash: "fafbba34fc8f9d33b559e6fcd0c5f1c6"
+ hash: "9deaf655b9e71dc835377526c5ae7d96"
}
Frame {
msec: 448
- hash: "92d245951b759f74182602a7a337cb0f"
+ hash: "a19709d7bf37fd126f15da386527d0f8"
}
Frame {
msec: 464
- hash: "e0634d25088a6855df8d86d84fe37cd7"
+ hash: "32dbd7c98038abf3775a2c788a687b27"
}
Frame {
msec: 480
- hash: "7f4d05f4c3b1a365732e448f2c751740"
+ hash: "d1a22b8e8cbd429dc0e8bc22bfce5d4b"
}
Frame {
msec: 496
- hash: "fcd6f55929f753f77b1617c0984b8690"
+ hash: "04a48f9f304a614535821f1278950789"
}
Frame {
msec: 512
- hash: "7e88f100a7012d739cd3c97c4e7f4b45"
+ hash: "ba26b58e109d5b63e972e4acd7229162"
}
Frame {
msec: 528
- hash: "8f9d029b3850ee2f11cdf6630d100682"
+ hash: "b92d3329f744c7de158a472b8b542437"
}
Frame {
msec: 544
- hash: "b915f712b24f187ee759b3337fb0df7a"
+ hash: "c44139265be3def1cc73ea7198a64537"
}
Frame {
msec: 560
- hash: "eae400a0c72d38156f7ae0f16ab9ee66"
+ hash: "6f211c82a64c7e0ef2e7700359ac226e"
}
Frame {
msec: 576
- hash: "e913a1e317cca355b06a393f44cc0243"
+ hash: "1690781b90e6e4ad264db76943d3b6d2"
}
Frame {
msec: 592
- hash: "abf075ea63a6f5cce43c38e20dbcdbb2"
+ hash: "2ab7e97b7426843f2488121fdda87b48"
}
Frame {
msec: 608
- hash: "a6e85caa1eb933343a4605bc434e2841"
+ hash: "91fe6ed4d44d69e9ce79aa3636faf0cb"
}
Frame {
msec: 624
- hash: "8e33e2582dd127d3f04017bf493b0ac6"
+ hash: "9b4638d2eb6ecc0b50c30e74dc4b098e"
}
Frame {
msec: 640
- hash: "959e4062262bcc759abfc7b0bf3e10b6"
+ hash: "0e18542d1b5b887eaf22f936adb38bd0"
}
Frame {
msec: 656
- hash: "9529e2241df0d90ea640fdb3752b0837"
+ hash: "f4a123a8811654d033c3613a80a8f3f7"
}
Frame {
msec: 672
- hash: "5595b64495996ce66b5f6892e9457456"
+ hash: "14edd1cf660429e95c55ae81ce57d05d"
}
Frame {
msec: 688
- hash: "532259c3577553622093eba907ae82d3"
+ hash: "1114235b75e814b80b70ce4109a0b6f3"
}
Frame {
msec: 704
- hash: "85c4332100b6f5256702b594c83f4eff"
+ hash: "8ed2a94fab38d951325bbf79597134c6"
}
Frame {
msec: 720
- hash: "b96292d85b12fa8e68c5de3deb29b980"
+ hash: "315a34cfe26778d86cadceea78fd15f6"
}
Frame {
msec: 736
- hash: "64febec9c8b58e2b93249f19c57b7aba"
+ hash: "4a95ae04f498f93bf19ab2bc45c0be21"
}
Frame {
msec: 752
- hash: "88e588af29131cf942e02b1080e564e5"
+ hash: "d241f7cfdfd241facb0b7f7a3d328d01"
}
Frame {
msec: 768
- hash: "07f911478be2f36d0c1b9cb878f4fe47"
+ hash: "fae3040a9e0b2f9c76cc26bda47e04e9"
}
Frame {
msec: 784
- hash: "8ffbf2381efefcbca413f6e3455018fb"
+ hash: "a444297639db23413810b2df5c47ed9c"
}
Frame {
msec: 800
- hash: "6e456af680e40799d3f38bdde29a85f9"
+ hash: "8084ee95169c3176af563fc4cc033332"
}
Frame {
msec: 816
- hash: "48a8dbc64d7823164c992f55b270115d"
+ hash: "8f6ac972fb537f496a69f7bde0e8bc22"
}
Frame {
msec: 832
- hash: "a6d28eb1d0aafd387e35ca7b362bec53"
+ hash: "b7e632bc5c8a0a0c5d2b752e581ff5db"
}
Frame {
msec: 848
- hash: "2e9f2b2ebf1b24f01fc986ded320d7c9"
+ hash: "341c29c41dc1d938dcf5d94d20ff9160"
}
Frame {
msec: 864
- hash: "d0cafd9be3263193c207c39eeb051bb8"
+ hash: "2c7eb6f2974c6520bc2fbbb65c118124"
}
Frame {
msec: 880
- hash: "8dee1a5365fa3ccd7036c8afa6a805cc"
+ hash: "8dd08316d3d4b17bd3d656dff2b69019"
}
Frame {
msec: 896
- hash: "42f893afb80633f0ffb82f1725bb097f"
+ hash: "5c2a7456afbb094671e693df0a5fa37d"
}
Frame {
msec: 912
- hash: "f466a404940abcd4c8f3180696da1a29"
+ hash: "d169ce70699b020f62bc33160b74887b"
}
Frame {
msec: 928
- hash: "e5746e33b3eb155a354bc5900b7593ee"
+ hash: "e67ef3cd8dbcef11cf156b32eb0aae67"
}
Frame {
msec: 944
- hash: "a1c2eb7048356f4ebc803d9d5439db24"
+ hash: "16d0d8676f754f0e85a3b425a4401c26"
}
Frame {
msec: 960
- image: "smoothedfollow.0.png"
+ hash: "7681c0a07803c3eadedf05b60acca9be"
}
Frame {
msec: 976
- hash: "338aec0e679a8f2e79f6a5503dfbd6c3"
+ image: "smoothedfollow.1.png"
}
Frame {
msec: 992
- hash: "59321f1eb26c379e9e2a37b6890d922d"
+ hash: "5f87209dc76264d5c259092ccfd0663a"
}
Frame {
msec: 1008
- hash: "f37a821b9cf9f67fd011c6790a2757f0"
+ hash: "c647b4725e7f1ce05b5b7bd067d54bff"
}
Frame {
msec: 1024
- hash: "c3f1b8722c616ecd55d8496e76a9bf06"
+ hash: "d43d241fa85cadc042ae510fa441d01d"
}
Frame {
msec: 1040
- hash: "ca6aff9addda2e3ac51e5e2013393365"
+ hash: "87a4b4fb8981b1ddb765236cd74a9084"
}
Frame {
msec: 1056
- hash: "17d1aa7821ce8169a3100a3cd3a0df2b"
+ hash: "607fb5055cc0d5b6e8a1a37134a9686c"
}
Frame {
msec: 1072
- hash: "d85dd272f35868d6832316e862db4ec1"
+ hash: "9ed861affdaf4de535ff65b26e1fa8ee"
}
Frame {
msec: 1088
- hash: "8bce5bdadfa974655dc7e020ad43edeb"
+ hash: "cdfbf1d934a46b85c9d7a07e25eb3fee"
}
Frame {
msec: 1104
- hash: "b97f71587a5187d5175e5d9f1409c00a"
+ hash: "94cc78c6be827b3f3b3d74d72af5a4db"
}
Frame {
msec: 1120
- hash: "53d438e601c25aebfd2ecb0064cdf5cc"
+ hash: "50cd154de9141528f0417c0e0f0090a9"
}
Frame {
msec: 1136
- hash: "18c43dd35b3e0d8f9ab5c8de3e48886a"
+ hash: "86e4a163ad5d7d9bee8f513a814fcac2"
}
Frame {
msec: 1152
- hash: "e4ab585684d083de118b7862ef5cbd63"
+ hash: "61b927a9a58264b827ab00c30cddb4c1"
}
Frame {
msec: 1168
- hash: "48ab046a2e2ca1a1225574b94925482e"
+ hash: "e50d30e42cb035e52cf88664182b7ac1"
}
Frame {
msec: 1184
- hash: "c4bd06a5c329ef6975a60453f588bce7"
+ hash: "33a45c3ab72e3e582ef0e4a759064050"
}
Frame {
msec: 1200
- hash: "864393a984dce3e9dd2daec56ddb3fe7"
+ hash: "323be0228c50a87f380c9b4e5af0c6c0"
}
Frame {
msec: 1216
- hash: "fcdf4cfcd8a6d8667868ba9633475fe0"
+ hash: "d82e3de64104096e0cce7bc23d1f3f96"
}
Frame {
msec: 1232
- hash: "5ac2b96158045c9b9eb35f1cbabe5b1f"
+ hash: "e8872b9d98dff227cb3eb8765cbfa5f5"
}
Frame {
msec: 1248
- hash: "83c409e5d3e6fe9e953d9ce14d731b3b"
+ hash: "23ee9e4d9d5388c900072df7fb063164"
}
Frame {
msec: 1264
- hash: "01805526b04e17b89238e7b929be48dd"
+ hash: "e23cb4cdcc53a364004a55144ea1af8a"
}
Frame {
msec: 1280
- hash: "4708345219b3732f9aaf8b40645f65d2"
+ hash: "816ee1ba2a5fe2db4ee09cecb8d56c34"
}
Frame {
msec: 1296
- hash: "12716f84b6f648df2cbe08cfea58764c"
+ hash: "d0f01509412d1e4aa192db8aa6dbc50d"
}
Frame {
msec: 1312
- hash: "6cce1e6354bd338f364bcca84a5fd081"
+ hash: "ba37ba506ce63c6cda06f23a73c928d9"
}
Frame {
msec: 1328
- hash: "c5da6f6b00402e0de00490792b963cdf"
+ hash: "194a5a791ee5008f585cf215e5cabc26"
}
Frame {
msec: 1344
- hash: "0eacadf69c0818e818abaf3aaf823aff"
+ hash: "09c9466b27e57cf936653fdd91e885a8"
}
Frame {
msec: 1360
- hash: "c68cd79bf0d329a3c672896b9ce2044d"
+ hash: "ee8ef68a1d5cde45431ac233d1cbe191"
}
Frame {
msec: 1376
- hash: "26786f921ddddd9d2f975e1193943d2d"
+ hash: "45f3bede3b5ae8cde9d385746740760e"
}
Frame {
msec: 1392
- hash: "68c7c1779bb19ee5cd9370b5c06f4ce7"
+ hash: "10ae672c18a84fec45513850797220b5"
}
Frame {
msec: 1408
- hash: "5e87c3e00ef7fab01c17d9e89c661aab"
+ hash: "6d72fb8d4d1f7499b38e4969ae26409b"
}
Frame {
msec: 1424
- hash: "0b459122be303c38d3564dd7fea53fc1"
+ hash: "7c6bf427b0f7aac8c869a0dd83277ca0"
}
Frame {
msec: 1440
- hash: "3b13101a45b470fd04fa02f34548984b"
+ hash: "1289b04711ef38d4e37161f1385bf4d2"
}
Frame {
msec: 1456
- hash: "6308fa1ed015bb698251af0d1b9be084"
+ hash: "2414780f52880801eea13dc9efba1cb2"
}
Frame {
msec: 1472
- hash: "f219427d8fdf826f33351ba64db55d33"
+ hash: "37efbf23005659b4f2b29f224c929502"
}
Frame {
msec: 1488
- hash: "0c9ad8c5224d3cdefb8ac793cac3ca79"
+ hash: "e70091696edf26a8dc8dc51d4932fd86"
}
Frame {
msec: 1504
- hash: "38438307162bceef76afb043c82b6a82"
+ hash: "21e8d0b6eee7bc71ae7ccd05d9bb9280"
}
Frame {
msec: 1520
- hash: "78b367e6bab0463fe08f5e634cfbced2"
+ hash: "321553e3e415cf7695d46a90050f8265"
}
Frame {
msec: 1536
- hash: "81e56f9d3bb9b360a07dc85697a59340"
+ hash: "235f975c8b382caee2004a8bf9533385"
}
Frame {
msec: 1552
- hash: "cef4fdb8c12485d3590e598090312297"
+ hash: "abeeb9ff4c51f2b4ba5c9fee98e72926"
}
Frame {
msec: 1568
- hash: "8ea0c90a100c583558f92843030543cc"
+ hash: "d2de1c552fdf4675baccab402100aabb"
}
Frame {
msec: 1584
- hash: "0037f0f17a50bdfe3bf0de810ff837f1"
+ hash: "26d2ac9f31c9181222edda09a4452b5f"
}
Frame {
msec: 1600
- hash: "2b060ac0dfa045b916d3fd5ff6f84bfb"
+ hash: "8c1ac1872a6720185ec670150e344683"
}
Frame {
msec: 1616
- hash: "b20705dcc6176efd83cff6927991ff0a"
+ hash: "3b792cf960fc8dd6b424ce4c9f2aa0a1"
}
Frame {
msec: 1632
- hash: "0af69e490bdc54f27d3e50c1fdfd12a8"
+ hash: "4f0e2dad54e5be44c0345732deae067d"
}
Frame {
msec: 1648
- hash: "8e4cceadc01de5b51082889efabcbb7e"
+ hash: "17f21faa9293cfd4ef63fcee9d07f264"
}
Frame {
msec: 1664
- hash: "b64958786a7007686fb1734783d553f5"
+ hash: "0ea885db3c4c5facb96306f1fbf6bc43"
}
Frame {
msec: 1680
- hash: "e0b9d98bb3a596fd235d58b6a761a0e0"
+ hash: "a68e7bb730b29b4c3b5468fd7b3d1d4f"
}
Frame {
msec: 1696
- hash: "1a5d7dc4dfd3ee86a36978d4effd299c"
+ hash: "719de171d8413f691e4ece4bcb00896c"
}
Frame {
msec: 1712
- hash: "4946561f008635599651bf24b9aa0594"
+ hash: "ee9f5c2bfda6718a23fdd6c8f3f2e765"
}
Frame {
msec: 1728
- hash: "8427d33046af64c6e63939238c101e86"
+ hash: "0f01834bbcfe690e5ee2d5897e5ea225"
}
Frame {
msec: 1744
- hash: "cdcfab5cea86c33f276c3613d76067c4"
+ hash: "68af59f35ff14d9ff12a2a05f22cca69"
}
Frame {
msec: 1760
- hash: "966005d62bd69b53d77459e5ab65116c"
+ hash: "50c9141aae689a8f09acf4d914075299"
}
Frame {
msec: 1776
- hash: "8a3c4ff083a973325c4ab09e09027ef6"
+ hash: "beb9e30c9b4f0d351c1387c69ea99208"
}
Frame {
msec: 1792
- hash: "737ffd6f52fa3d812ecaf835a30495af"
+ hash: "2079cd433d9d29ad330e0782853712c7"
}
Frame {
msec: 1808
- hash: "6731007c97ba3ba60e73ab50803868e5"
+ hash: "de18d8be8fc1414cc19d446c659d1bcd"
}
Frame {
msec: 1824
- hash: "caa4ea08c5c330e77a7445cc1adf1666"
+ hash: "031807325492a899da9a91a9512487dd"
}
Frame {
msec: 1840
- hash: "73778bfbae55a81557a128acb4a197c8"
+ hash: "4fdd8f3b01b4b61d269001604144bb7c"
}
Frame {
msec: 1856
- hash: "7d8609f1336ddf4e25b505e54142114e"
+ hash: "1172ec8a63f431f457b9a398b3d03571"
}
Frame {
msec: 1872
- hash: "d8b4514d2bd77dbe67e27d400dc1a2f3"
+ hash: "4741a14556e9d32c2b180cca9009c63a"
}
Frame {
msec: 1888
- hash: "ac3e7040f1e9fc680f52f46d25eb3faa"
+ hash: "ec2c6d187a97037b5c1edea65d4b17cc"
}
Frame {
msec: 1904
- hash: "509c21774f0fca9dde0657133a1cc363"
+ hash: "ea7d445310c28aa3e07735f1c7db4a28"
}
Frame {
msec: 1920
- image: "smoothedfollow.1.png"
+ hash: "3424b2d983a8962d9abb232c3d7c7814"
}
Frame {
msec: 1936
- hash: "545bcb0c362a083ee698a5c8cd225014"
+ image: "smoothedfollow.2.png"
}
Frame {
msec: 1952
- hash: "77370c9b2880c55fecf07457dd0d455b"
+ hash: "c362edcbe4e4460aa18599c05e993312"
}
Frame {
msec: 1968
- hash: "6c44209f31f5f010f1b3e05490468821"
+ hash: "1a1291338c205ef2d315a43cca1caae2"
}
Frame {
msec: 1984
- hash: "2dffac0c44e52f2984525d3d3700e6ed"
+ hash: "ff6f0f47955d069a65cf9d19b7a061ff"
}
Frame {
msec: 2000
- hash: "d70f2db1b166b2de3bef74bc4bf94a80"
+ hash: "3a6b787bbfe0510fdc8693a4827043e5"
}
Frame {
msec: 2016
- hash: "50e4f6a82f498066fc9b6588762f59f9"
+ hash: "8198a6eec71a6da13b77397f3ead05a3"
}
Frame {
msec: 2032
- hash: "956a7d7db9aef1b7abefac1a69622f02"
+ hash: "4c0fcb8d2105f104f6e1db0d58077c01"
}
Frame {
msec: 2048
- hash: "13f19d5baefb6c8c9f71c16163663a27"
+ hash: "d9146739fa248ddcb6b4308d125825e7"
}
Frame {
msec: 2064
- hash: "076ff84405ddb29a12ed30d27cee558b"
+ hash: "5bda4f61879d0e9c714f2c138a91f4fd"
}
Frame {
msec: 2080
- hash: "6af0261639f809da8f7e4831559596d3"
+ hash: "30c0f8016506edb6875fd4cfa16cfa0f"
}
Frame {
msec: 2096
- hash: "a0500b18e99bfe3a48d52cc62b4a946b"
+ hash: "bc04c5ae627073fcc467b86bea097630"
}
Frame {
msec: 2112
- hash: "bb0ea576c9136fb70720d4540731d2ca"
+ hash: "7fcc2f6a7c620202a55618e66ed3c5f9"
}
Frame {
msec: 2128
- hash: "d9b12ad9bf54d7db0ef1b36297a6dd6c"
+ hash: "36f0855b78bbbf08ddf28f7a5775aea8"
}
Frame {
msec: 2144
- hash: "2de77e082872f072a849ba9ea93e3aec"
+ hash: "4acd7d6bceab6c8ba4508f9edddab6e7"
}
Frame {
msec: 2160
- hash: "69e186c3e8e6b2c75da2ca87043129da"
+ hash: "2074776f5bd921148a50fad1004c00ea"
}
Frame {
msec: 2176
- hash: "0c2f23b0cbedb45a68f0cbe6132b4820"
+ hash: "0d79e1f38609320586831d93d87532a9"
}
Frame {
msec: 2192
- hash: "533bad00e5624611ea8a15d5fa98f0f2"
+ hash: "0402d99770dd23cbfc051eb576a29b57"
}
Frame {
msec: 2208
- hash: "d9c60bc821205aa4ea38d846e5b00f3a"
+ hash: "456ba4fbe1ff68e1c9e22c9182c98ac6"
}
Frame {
msec: 2224
- hash: "d4de041edf15c6b6806d7f5992146711"
+ hash: "de41559e07d9e58a68e26cf4daab879f"
}
Frame {
msec: 2240
- hash: "100145df5271efaaee1d619bd50b69fc"
+ hash: "ad5087eae86c1b2afe5dbbcf8d098b18"
}
Frame {
msec: 2256
- hash: "22905b794fee24f3a25e4944d5505e96"
+ hash: "117dc7b2e560a6959ef82dc461580620"
}
Frame {
msec: 2272
- hash: "aeed7adea08fe6e8b60310082cf87b6c"
+ hash: "4ce30665d1e63f728018cddfda1e3249"
}
Frame {
msec: 2288
- hash: "82bf8d40b6ed8aae9d6172eae76d1859"
+ hash: "c1e66d2c554b81631aff66e695e05ee0"
}
Frame {
msec: 2304
- hash: "b1881778936744db3df0898638e4b0df"
+ hash: "293b4c3a8ba18d9000f1a0c35ba3dbed"
}
Frame {
msec: 2320
- hash: "87195016996f8786a8a2430c54f13494"
+ hash: "eefcc0eb3e4847dbf7edc52979c19cfb"
}
Frame {
msec: 2336
- hash: "56f99b14320662b90eb10e77845bba30"
+ hash: "1e25f0a629cffa99c3c962c5ce72cba3"
}
Frame {
msec: 2352
- hash: "69a84022d8d2b3cdb1d7eae6ce5ccef2"
+ hash: "e86a378941f876143cf13ef8c161d155"
}
Frame {
msec: 2368
- hash: "578ca8c66da6aa64392b253ab6cccbc0"
+ hash: "7063d2895353e4e2659e0911f8959a92"
}
Frame {
msec: 2384
- hash: "4c2058e4708001f82f3bcb8110d6a54f"
+ hash: "d26161aad10ec6d446dbae65bcc73926"
}
Frame {
msec: 2400
- hash: "a838be752168bc6feb3151327147bb23"
+ hash: "3322df938aa5d2ffa32e445ad1f8b1a2"
}
Frame {
msec: 2416
- hash: "bf6cde06f0ee814cd4a23f3d43e7d270"
+ hash: "4ce384ace0527cb637865426a42d382f"
}
Frame {
msec: 2432
- hash: "9162ec43bc84261c0eb9ea2425da0b8a"
+ hash: "5f49f970488f457681a9a59e82a1650e"
}
Frame {
msec: 2448
- hash: "7be19df0ee54f9bb31ebee2d786addc8"
+ hash: "d5494958d0c8f4307506c0b27f4a350c"
}
Frame {
msec: 2464
- hash: "542a4c004f5b1b8efa7588b27cc2ba43"
+ hash: "cebee9854c54f2badef1cfa6b12adc88"
}
Frame {
msec: 2480
- hash: "f9e2edd343be212a9679f1e2ad0e73b3"
+ hash: "9824242313879d9494b561a0a3a7fdc2"
}
Frame {
msec: 2496
- hash: "b6d4e9169fc4446cdbd3a36f485b943b"
+ hash: "a14019028da0d3bf08782bf8285a188c"
}
Frame {
msec: 2512
- hash: "0d3b7a652a94162b71e88ed213559af4"
+ hash: "f241eb27a0460182d08c6e4e1ebbc25b"
}
Frame {
msec: 2528
- hash: "9d4a2383a4d43ac94ff0a344f217b22d"
+ hash: "3b243c79d097f89e5a3f8ece97321026"
}
Frame {
msec: 2544
- hash: "719d402379c40de5cd6d4c8fa92f5472"
+ hash: "95755ce577ab0b8ede949851ce842d9d"
}
Frame {
msec: 2560
- hash: "78fb55f5b9c2033a91e41100229e4465"
+ hash: "0cd40a2a4b9d0b7dbba8dff247db178f"
}
Frame {
msec: 2576
- hash: "0a9ec91eee6c7c770ce2e414fa881229"
+ hash: "b964995f06ab287a98569baab365c475"
}
Frame {
msec: 2592
- hash: "5d9f81f1becf486a09f086e15a64d1f0"
+ hash: "a28aca3ba953c52ac00fea0c84a6aba9"
}
Frame {
msec: 2608
- hash: "0f5e18af1eac31e6993ea2df51a143f0"
+ hash: "d45d2eaeab472eaa1bd9460f4464c62b"
}
Frame {
msec: 2624
- hash: "08a292373756b06c3a624b8f3bf06236"
+ hash: "0872615e2d8d2ec1192ec6e60aff01c7"
}
Frame {
msec: 2640
- hash: "f3c8101429753ce8f0ee094fe0db98ac"
+ hash: "8724c4128b869be51053deafd68e4e47"
}
Frame {
msec: 2656
- hash: "1603ad220d68ae0a2f613687533c2ebc"
+ hash: "8c8e0a8fed148120b2b79d3c6b886651"
}
Frame {
msec: 2672
- hash: "e2b8049d18fd36fff0180bd4bc199732"
+ hash: "35357a5689398f6f594ae45743555107"
}
Frame {
msec: 2688
- hash: "d1bfeadaa9046ec5013734938a8f4af1"
+ hash: "848a069b9e8334482e118ba0df14dc1c"
}
Frame {
msec: 2704
- hash: "3cb3a0e9dc73e76101288395ffeb2b7b"
+ hash: "26cb86bd54616c69966d949424d4d41f"
}
Frame {
msec: 2720
- hash: "104a10e6bd48dacfedf5c98cf641ae93"
+ hash: "437669b1efa8b33ee469547527ccb4d9"
}
Frame {
msec: 2736
- hash: "f04a2985e7c203dd6fce46b60fcb23fc"
+ hash: "ff040bafe5c484d7b516008f17411ad2"
}
Frame {
msec: 2752
- hash: "30cb747f4604c208d7dc697d5fe2af6b"
+ hash: "fdab8b8cf64a2b15ab07691ca2ad115f"
}
Frame {
msec: 2768
- hash: "b9eca6ee8fe29351cadeb9a2caf36fa6"
+ hash: "e3867ffaf98270f6efe77d816a8254cb"
}
Frame {
msec: 2784
- hash: "7bc56e712d713a00a684e07cf3d09907"
+ hash: "cbad5ba7c09567166f063955b45aa647"
}
Frame {
msec: 2800
- hash: "0d7a5e2ff588b71e77abb72723c763b2"
+ hash: "336049bb4ff2e945483648feabe997c2"
}
Frame {
msec: 2816
- hash: "0d961843e54cbe5ba76c11bcd634bc39"
+ hash: "45e65f29cc932090a3bfc2292c4e5e72"
}
Frame {
msec: 2832
- hash: "6328b52965a002944c501d9888928caa"
+ hash: "d617d33fe22196f88844a7adc5305413"
}
Frame {
msec: 2848
- hash: "63e668a7688167b604b641929843d0cf"
+ hash: "fb32358f314d9cd6ac6646888f402b46"
}
Frame {
msec: 2864
- hash: "7f5e71332268be68de9dcb25f173d2e0"
+ hash: "2897322c869a0bd7a851ff779c8591bf"
}
Frame {
msec: 2880
- image: "smoothedfollow.2.png"
+ hash: "c41d71d62727f0fc26dc790f09c67168"
}
Frame {
msec: 2896
- hash: "dc6e83fcc5a403913a94c498f1571098"
+ image: "smoothedfollow.3.png"
}
Frame {
msec: 2912
- hash: "8deb275bd08df9b3abdcf3e2796a0601"
+ hash: "b5c2182ce797d91175d9f7493a77aae8"
}
Frame {
msec: 2928
- hash: "6c08a25a442b97a8cb359792b6a01641"
+ hash: "4436d56d8dba299619be367cf57dc41d"
}
Frame {
msec: 2944
- hash: "5f7ccd5706c77f0b0ddced41ed6352d8"
+ hash: "fe2d68f672a78568da1a281be13eda36"
}
Frame {
msec: 2960
- hash: "6668d1936524f0fdc490720a962a3698"
+ hash: "90731590c28f254a213f83f83b988608"
}
Frame {
msec: 2976
- hash: "e36f901fb4b8ad754592642a7575e4ee"
+ hash: "e276149e000e768a5b2704fde77bff2b"
}
Frame {
msec: 2992
- hash: "7453182980e458d827f3ff83aa3f2c88"
+ hash: "616b2d32f6b0f047a252f0b698408d87"
}
Frame {
msec: 3008
- hash: "0e15d75b2a7f2e4a39906093b930d6a8"
+ hash: "ebd003e7712060ec45d7be9bebb9ab8f"
}
Frame {
msec: 3024
- hash: "822ccc6c629eabf38fd5ac56abb638f5"
+ hash: "d97b14eb1fe9556b283b5d7b35f30fcc"
}
Frame {
msec: 3040
- hash: "331ef5b3e3dd5642f8532d337fd22def"
+ hash: "a926b60b28442c4318fb3c2c5474540c"
}
Frame {
msec: 3056
- hash: "3c29aae83f28239f31125ef02f523d02"
+ hash: "7908c0356da3bc27d2513c843a0d4feb"
}
Frame {
msec: 3072
- hash: "56ed674bf2d345861eb235a4239078e2"
+ hash: "48644d6fb0dbd280b806c991b3b72417"
}
Frame {
msec: 3088
- hash: "5412b9ad01a6780b67bc59b80a274cd5"
+ hash: "4efbb4954b2d2c26f3e32f9f1bba6b41"
}
Frame {
msec: 3104
- hash: "a6f9ae09a7386f06a84c251083660dd6"
+ hash: "d9c5e5ca5d6c1189740706673abab943"
}
Frame {
msec: 3120
- hash: "83f07277c9bec7419dd6a4d40d8accf7"
+ hash: "d0acc9b7ee97220e551df16e0c3d1f53"
}
Frame {
msec: 3136
- hash: "e6cb74961dfef68a32f255176e0ebff3"
+ hash: "2610d1de5d32e74ab8fd238cd721ef2e"
}
Frame {
msec: 3152
- hash: "9e6c3ac0190beaf30754155a5d64b81c"
+ hash: "b8d1e724d5cb172ab5d7475d2f7a6ee6"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativesmoothedanimation/smoothedfollow.qml b/tests/auto/declarative/qmlvisual/qdeclarativesmoothedanimation/smoothedfollow.qml
index 720d2e64fc..c154aa06e2 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativesmoothedanimation/smoothedfollow.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativesmoothedanimation/smoothedfollow.qml
@@ -1,40 +1,40 @@
import QtQuick 1.0
Rectangle {
- width: 800; height: 720; color: "gray"
+ width: 400; height: 360; color: "gray"
Rectangle {
id: rect
- width: 50; height: 20; y: 30; color: "black"
+ width: 25; height: 10; y: 15; color: "black"
SequentialAnimation on x {
loops: Animation.Infinite
- NumberAnimation { from: 50; to: 700; duration: 1000 }
- NumberAnimation { from: 700; to: 50; duration: 1000 }
+ NumberAnimation { from: 25; to: 350; duration: 1000 }
+ NumberAnimation { from: 350; to: 25; duration: 1000 }
}
}
Rectangle {
- width: 50; height: 20; x: rect.x; y: 60; color: "red"
- Behavior on x { SmoothedAnimation { velocity: 400 } }
+ width: 25; height: 10; x: rect.x; y: 30; color: "red"
+ Behavior on x { SmoothedAnimation { velocity: 200 } }
}
Rectangle {
- width: 50; height: 20; x: rect.x; y: 90; color: "yellow"
- Behavior on x { SmoothedAnimation { velocity: 300; reversingMode: SmoothedAnimation.Immediate } }
+ width: 25; height: 10; x: rect.x; y: 45; color: "yellow"
+ Behavior on x { SmoothedAnimation { velocity: 150; reversingMode: SmoothedAnimation.Immediate } }
}
Rectangle {
- width: 50; height: 20; x: rect.x; y: 120; color: "green"
- Behavior on x { SmoothedAnimation { velocity: 200; reversingMode: SmoothedAnimation.Sync } }
+ width: 25; height: 10; x: rect.x; y: 60; color: "green"
+ Behavior on x { SmoothedAnimation { velocity: 100; reversingMode: SmoothedAnimation.Sync } }
}
Rectangle {
- width: 50; height: 20; x: rect.x; y: 150; color: "purple"
- Behavior on x { SmoothedAnimation { velocity: 200; maximumEasingTime: 100 } }
+ width: 25; height: 10; x: rect.x; y: 75; color: "purple"
+ Behavior on x { SmoothedAnimation { velocity: 100; maximumEasingTime: 100 } }
}
Rectangle {
- width: 50; height: 20; x: rect.x; y: 180; color: "blue"
+ width: 25; height: 10; x: rect.x; y: 90; color: "blue"
Behavior on x { SmoothedAnimation { velocity: -1; duration: 300 } }
}
@@ -42,13 +42,13 @@ Rectangle {
Rectangle {
id: rect2
property int dir: 1
- width: 50; height: 20; x:50; y: 240; color: "black"
+ width: 25; height: 10; x:25; y: 120; color: "black"
function advance(){
- if(x >= 700)
+ if(x >= 350)
dir = -1;
- if(x <= 50)
+ if(x <= 25)
dir = 1;
- x += 130.0 * dir;
+ x += 65.0 * dir;
}
}
Timer{
@@ -59,39 +59,39 @@ Rectangle {
}
Rectangle {
- width: 50; height: 20; x: rect2.x; y: 270; color: "red"
- Behavior on x { SmoothedAnimation { velocity: 400 } }
+ width: 25; height: 10; x: rect2.x; y: 135; color: "red"
+ Behavior on x { SmoothedAnimation { velocity: 200 } }
}
Rectangle {
- width: 50; height: 20; x: rect2.x; y: 300; color: "yellow"
- Behavior on x { SmoothedAnimation { velocity: 300; reversingMode: SmoothedAnimation.Immediate } }
+ width: 25; height: 10; x: rect2.x; y: 150; color: "yellow"
+ Behavior on x { SmoothedAnimation { velocity: 150; reversingMode: SmoothedAnimation.Immediate } }
}
Rectangle {
- width: 50; height: 20; x: rect2.x; y: 330; color: "green"
- Behavior on x { SmoothedAnimation { velocity: 200; reversingMode: SmoothedAnimation.Sync } }
+ width: 25; height: 10; x: rect2.x; y: 165; color: "green"
+ Behavior on x { SmoothedAnimation { velocity: 100; reversingMode: SmoothedAnimation.Sync } }
}
Rectangle {
- width: 50; height: 20; x: rect2.x; y: 360; color: "purple"
- Behavior on x { SmoothedAnimation { velocity: 200; maximumEasingTime: 100 } }
+ width: 25; height: 10; x: rect2.x; y: 180; color: "purple"
+ Behavior on x { SmoothedAnimation { velocity: 100; maximumEasingTime: 100 } }
}
Rectangle {
- width: 50; height: 20; x: rect2.x; y: 390; color: "blue"
+ width: 25; height: 10; x: rect2.x; y: 195; color: "blue"
Behavior on x { SmoothedAnimation { velocity: -1; duration: 300 } }
}
//rect3 just jumps , but the rects following it should be smooth
Rectangle {
id: rect3
- width: 50; height: 20; x:50; y: 480; color: "black"
+ width: 25; height: 10; x:25; y: 240; color: "black"
function advance(){
- if(x == 50)
- x = 700;
+ if(x == 25)
+ x = 350;
else
- x = 50;
+ x = 25;
}
}
Timer{
@@ -102,27 +102,27 @@ Rectangle {
}
Rectangle {
- width: 50; height: 20; x: rect3.x; y: 510; color: "red"
- Behavior on x { SmoothedAnimation { velocity: 400 } }
+ width: 25; height: 10; x: rect3.x; y: 255; color: "red"
+ Behavior on x { SmoothedAnimation { velocity: 200 } }
}
Rectangle {
- width: 50; height: 20; x: rect3.x; y: 540; color: "yellow"
- Behavior on x { SmoothedAnimation { velocity: 300; reversingMode: SmoothedAnimation.Immediate } }
+ width: 25; height: 10; x: rect3.x; y: 270; color: "yellow"
+ Behavior on x { SmoothedAnimation { velocity: 150; reversingMode: SmoothedAnimation.Immediate } }
}
Rectangle {
- width: 50; height: 20; x: rect3.x; y: 570; color: "green"
- Behavior on x { SmoothedAnimation { velocity: 200; reversingMode: SmoothedAnimation.Sync } }
+ width: 25; height: 10; x: rect3.x; y: 285; color: "green"
+ Behavior on x { SmoothedAnimation { velocity: 100; reversingMode: SmoothedAnimation.Sync } }
}
Rectangle {
- width: 50; height: 20; x: rect3.x; y: 600; color: "purple"
- Behavior on x { SmoothedAnimation { velocity: 200; maximumEasingTime: 100 } }
+ width: 25; height: 10; x: rect3.x; y: 300; color: "purple"
+ Behavior on x { SmoothedAnimation { velocity: 100; maximumEasingTime: 100 } }
}
Rectangle {
- width: 50; height: 20; x: rect3.x; y: 630; color: "blue"
+ width: 25; height: 10; x: rect3.x; y: 315; color: "blue"
Behavior on x { SmoothedAnimation { velocity: -1; duration: 300 } }
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.0.png b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.0.png
new file mode 100644
index 0000000000..8714f580f5
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.1.png b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.1.png
new file mode 100644
index 0000000000..05e4a98561
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.2.png b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.2.png
new file mode 100644
index 0000000000..29df073c2b
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.3.png b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.3.png
new file mode 100644
index 0000000000..b38486ee11
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.4.png b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.4.png
new file mode 100644
index 0000000000..4de915b78d
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.5.png b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.5.png
new file mode 100644
index 0000000000..61a4684fa8
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.6.png b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.6.png
new file mode 100644
index 0000000000..4ce5e3047d
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.6.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.7.png b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.7.png
new file mode 100644
index 0000000000..2376b13971
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.7.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.qml b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.qml
new file mode 100644
index 0000000000..893355b656
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data-MAC/follow.qml
@@ -0,0 +1,1763 @@
+import Qt.VisualTest 4.7
+
+VisualTest {
+ Frame {
+ msec: 0
+ }
+ Frame {
+ msec: 16
+ image: "follow.0.png"
+ }
+ Frame {
+ msec: 32
+ hash: "e94ba580322887dbbbf9cb6309e39c23"
+ }
+ Frame {
+ msec: 48
+ hash: "787a59cda2c0b27d8959026e6d1b9427"
+ }
+ Frame {
+ msec: 64
+ hash: "9ca724d4b31aa16015b5cbb50eea0c3a"
+ }
+ Frame {
+ msec: 80
+ hash: "8a2c62a0190da1b7c1bade243baea6b8"
+ }
+ Frame {
+ msec: 96
+ hash: "e129bebca7ad348c3134569d8eee4efc"
+ }
+ Frame {
+ msec: 112
+ hash: "fd6387415e1c02fe6d17d9c3aa1d1ed8"
+ }
+ Frame {
+ msec: 128
+ hash: "a82a4042fdca7c30facd2c4740c455f7"
+ }
+ Frame {
+ msec: 144
+ hash: "62195722eb3acbfbad137ec71fd50bfe"
+ }
+ Frame {
+ msec: 160
+ hash: "449819cdc880d59650732b5447ec6237"
+ }
+ Frame {
+ msec: 176
+ hash: "552a838ebcacc0e08fa93b64a2433831"
+ }
+ Frame {
+ msec: 192
+ hash: "3984992606d54f05eb31dd0974af2183"
+ }
+ Frame {
+ msec: 208
+ hash: "3fd7225bbb0215ca8b6397580f2352a5"
+ }
+ Frame {
+ msec: 224
+ hash: "0fd8f26f40a9049de1cf2a9493d579d1"
+ }
+ Frame {
+ msec: 240
+ hash: "d08f0c57f071dc42e79fc5e0e3c32eeb"
+ }
+ Frame {
+ msec: 256
+ hash: "084c2db330ee82cd032df248ecc9629d"
+ }
+ Frame {
+ msec: 272
+ hash: "98da0d7f280d7fc4579c970c9a173b51"
+ }
+ Frame {
+ msec: 288
+ hash: "4c819c54ced1b6ef0574417a7e11f2e7"
+ }
+ Frame {
+ msec: 304
+ hash: "3dc5f7b412cb176c3b23d37cda3ef87c"
+ }
+ Frame {
+ msec: 320
+ hash: "c368a01b43d94205c03f9c750c37f330"
+ }
+ Frame {
+ msec: 336
+ hash: "8842bd0c8b17cac4fc9df84835999174"
+ }
+ Frame {
+ msec: 352
+ hash: "26829e9c7ca44dfcb0c03852f4158a18"
+ }
+ Frame {
+ msec: 368
+ hash: "ecffdb0888f1721e27b163e1f29a1950"
+ }
+ Frame {
+ msec: 384
+ hash: "eaead96f2683c464a12df8aadba20691"
+ }
+ Frame {
+ msec: 400
+ hash: "1e931963925bd208dce1ec9011372a3b"
+ }
+ Frame {
+ msec: 416
+ hash: "1c3fd049001c1e883f21d0d1e0e32cba"
+ }
+ Frame {
+ msec: 432
+ hash: "e8c3422ca637750ac52565594737d092"
+ }
+ Frame {
+ msec: 448
+ hash: "b1c36322cf89e15a80af7c43f2aebca1"
+ }
+ Frame {
+ msec: 464
+ hash: "f676c3171495f7bb2cb1812cfebaa17a"
+ }
+ Frame {
+ msec: 480
+ hash: "255119e2efa99c8e31fee611aaaa5137"
+ }
+ Frame {
+ msec: 496
+ hash: "e0bd32e3d44cfc2351db105f4595f18a"
+ }
+ Frame {
+ msec: 512
+ hash: "b7f23b8f3769f929b42491efda7ebe19"
+ }
+ Frame {
+ msec: 528
+ hash: "718cee11d869a8a8c5191cc0c09f2d30"
+ }
+ Frame {
+ msec: 544
+ hash: "fbdbf92f8c5f507605ff50abc594682b"
+ }
+ Frame {
+ msec: 560
+ hash: "c07fdc69c72b40d3c8dd1cc499008888"
+ }
+ Frame {
+ msec: 576
+ hash: "38e17ecd537dc0f51211ad672a2ebb21"
+ }
+ Frame {
+ msec: 592
+ hash: "2cbdc8728ef779c62f9938672986658a"
+ }
+ Frame {
+ msec: 608
+ hash: "7fb66509d5d1df34861e9c70f9a579f0"
+ }
+ Frame {
+ msec: 624
+ hash: "410b89392e859058718a08b79ec3d8fa"
+ }
+ Frame {
+ msec: 640
+ hash: "9bd90f80700217d08dafed93b81ee9cf"
+ }
+ Frame {
+ msec: 656
+ hash: "6d83671504a4274887b4e0d9bd2b24e7"
+ }
+ Frame {
+ msec: 672
+ hash: "51ff7bd3fd4a776af33fce7b935b145c"
+ }
+ Frame {
+ msec: 688
+ hash: "20f27392368b63b248bcd455cf3c9106"
+ }
+ Frame {
+ msec: 704
+ hash: "1a5ab296bd55aa215c9b04a7ff6c73a1"
+ }
+ Frame {
+ msec: 720
+ hash: "020fd7b14e8662fc006b0c39adca7c6a"
+ }
+ Frame {
+ msec: 736
+ hash: "2619120bdb25a153963bdf05c4a16d44"
+ }
+ Frame {
+ msec: 752
+ hash: "fd321314031efeb9ce71146764289d9f"
+ }
+ Frame {
+ msec: 768
+ hash: "378a71f09445dfff284db919787cbf87"
+ }
+ Frame {
+ msec: 784
+ hash: "d59eefe82ab8a00c903141dd9ea767ef"
+ }
+ Frame {
+ msec: 800
+ hash: "0a65004d69a4567f2a5c7e84dab3a905"
+ }
+ Frame {
+ msec: 816
+ hash: "92a4631716a51ff484ca14d9cfe05b2e"
+ }
+ Frame {
+ msec: 832
+ hash: "87203f627cf410cad56d6ba38a140efa"
+ }
+ Frame {
+ msec: 848
+ hash: "054cc085998cc059a6b7b4a7300dd36b"
+ }
+ Frame {
+ msec: 864
+ hash: "af3fefeb908a0485c723d36f61eff0a4"
+ }
+ Frame {
+ msec: 880
+ hash: "3f905d1e1ea79858b5a9bbfeab4eb255"
+ }
+ Frame {
+ msec: 896
+ hash: "f935f1fc5f26a201098d894fca9a4d1f"
+ }
+ Frame {
+ msec: 912
+ hash: "42b003dbb531da514716b9c32bdd3614"
+ }
+ Frame {
+ msec: 928
+ hash: "a82fed83ee4efee7896b639c7691b13a"
+ }
+ Frame {
+ msec: 944
+ hash: "31ad8cbf875233ea495330b0d3d4d2dd"
+ }
+ Frame {
+ msec: 960
+ hash: "00586f2f1d49fa81f90f7b06614311b4"
+ }
+ Frame {
+ msec: 976
+ image: "follow.1.png"
+ }
+ Frame {
+ msec: 992
+ hash: "5d71ff48b865ad4266eb8292f981b04e"
+ }
+ Frame {
+ msec: 1008
+ hash: "df599d934d131c92b209284277009efb"
+ }
+ Frame {
+ msec: 1024
+ hash: "5aaf33d11eb70ffdfe89246c637caed7"
+ }
+ Frame {
+ msec: 1040
+ hash: "9648cf623a66ded145c4fd23a42917b3"
+ }
+ Frame {
+ msec: 1056
+ hash: "9d33c2cc44ceac5a527ddcf809a51df6"
+ }
+ Frame {
+ msec: 1072
+ hash: "6d0ad2e0d012e53a03e246e6d5e49e13"
+ }
+ Frame {
+ msec: 1088
+ hash: "d33fa68796e38b19f44571d11c1bcd33"
+ }
+ Frame {
+ msec: 1104
+ hash: "636680f49bbf30b0fac31a6c581f18dd"
+ }
+ Frame {
+ msec: 1120
+ hash: "66801dbc39301e6b46b244fe502e0340"
+ }
+ Frame {
+ msec: 1136
+ hash: "f8fa6a033483279e78636f26493b10ac"
+ }
+ Frame {
+ msec: 1152
+ hash: "11b46611550173df42986dee4339d907"
+ }
+ Frame {
+ msec: 1168
+ hash: "5c9afdb519006079ee8d28b2b60d0b76"
+ }
+ Frame {
+ msec: 1184
+ hash: "9a55c38b2cd8abf25fbe448c7ef80971"
+ }
+ Frame {
+ msec: 1200
+ hash: "27ebdf1424e892b35c93ec009d942407"
+ }
+ Frame {
+ msec: 1216
+ hash: "2d9e3f0ae56f7337012b51c4dd173108"
+ }
+ Frame {
+ msec: 1232
+ hash: "e6f89ca892131d68ff1f4ca95c95d807"
+ }
+ Frame {
+ msec: 1248
+ hash: "f75791f1b12a217d37acb09bdb114cc5"
+ }
+ Frame {
+ msec: 1264
+ hash: "94c5ab1460fb1b0f957a9718b45bca36"
+ }
+ Frame {
+ msec: 1280
+ hash: "e246c8a0ec3d01ea20258b24a5673fe1"
+ }
+ Frame {
+ msec: 1296
+ hash: "529de7735e73409dff266d8c1275215c"
+ }
+ Frame {
+ msec: 1312
+ hash: "330400763a670580570cb62241ebec62"
+ }
+ Frame {
+ msec: 1328
+ hash: "ae444d1de9c509fc6f74136ca90f927a"
+ }
+ Frame {
+ msec: 1344
+ hash: "c43631ca8ee90ea5dc7664be5bc45429"
+ }
+ Frame {
+ msec: 1360
+ hash: "b366ac4a5b66c331a7667e9df0fc4eda"
+ }
+ Frame {
+ msec: 1376
+ hash: "1c7f4c47a9c57a34787cc9703e99bff1"
+ }
+ Frame {
+ msec: 1392
+ hash: "5555535609d512e8d34549b6624f74b8"
+ }
+ Frame {
+ msec: 1408
+ hash: "be59df714541923494b59f31f57e310e"
+ }
+ Frame {
+ msec: 1424
+ hash: "63e434f053032e54298f6e61c8d4da7d"
+ }
+ Frame {
+ msec: 1440
+ hash: "b0bb838637eceb6f8993ebc5b887afed"
+ }
+ Frame {
+ msec: 1456
+ hash: "fc39f33add4ebcaf578558ecd4aea281"
+ }
+ Frame {
+ msec: 1472
+ hash: "3f36faa7cc1e5898d4d5890c47633ff3"
+ }
+ Frame {
+ msec: 1488
+ hash: "4b328002b4461869b1f7de48e7291902"
+ }
+ Frame {
+ msec: 1504
+ hash: "26252c63924d2abcaebea2c7caf1d7aa"
+ }
+ Frame {
+ msec: 1520
+ hash: "a9a6023484ae439be86b2c2ff59dc40b"
+ }
+ Frame {
+ msec: 1536
+ hash: "620dab11bd4aab84cc0d949c48dd9a5d"
+ }
+ Frame {
+ msec: 1552
+ hash: "3b45ef80ee3e6fbbd3533bfa0d666e2f"
+ }
+ Frame {
+ msec: 1568
+ hash: "b33306abcb6a8402e491b7216495c778"
+ }
+ Frame {
+ msec: 1584
+ hash: "3cc52e8649a02e87785f1dc63f5c1efd"
+ }
+ Frame {
+ msec: 1600
+ hash: "fe21141f48da685213ed9d7641b2e7a0"
+ }
+ Frame {
+ msec: 1616
+ hash: "205aac4e822e20bd32f637256250f3c8"
+ }
+ Frame {
+ msec: 1632
+ hash: "124df0948f36aaf6151556d301f4b930"
+ }
+ Frame {
+ msec: 1648
+ hash: "c1701edd5eaf143fd1dbdc4a5324b48a"
+ }
+ Frame {
+ msec: 1664
+ hash: "117402df55367c918a3835958f4ab1d6"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 195; y: 95
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1680
+ hash: "73e3b86a1da28490cae4b03fdceefe19"
+ }
+ Frame {
+ msec: 1696
+ hash: "172e329fb47d6db0180242990a84fe3b"
+ }
+ Frame {
+ msec: 1712
+ hash: "82cf704cdfd406bab22689bc888ddc8d"
+ }
+ Frame {
+ msec: 1728
+ hash: "4c288f198a06d1b2815d34c3c8f97051"
+ }
+ Frame {
+ msec: 1744
+ hash: "6404d81456bb95a6b1c1ae55a181e40e"
+ }
+ Frame {
+ msec: 1760
+ hash: "6c11b9f079936ea08d11aa1172bfd954"
+ }
+ Frame {
+ msec: 1776
+ hash: "95388037c1f79a9dab951031f1d7c307"
+ }
+ Frame {
+ msec: 1792
+ hash: "c4ee57d9bffbb5f0ff173db48eadf2e3"
+ }
+ Frame {
+ msec: 1808
+ hash: "703ac9672a9c55cf08e6381ef76ac13c"
+ }
+ Frame {
+ msec: 1824
+ hash: "ea7726d2a2923290398262c8f70d511e"
+ }
+ Frame {
+ msec: 1840
+ hash: "9897c12603326a30c62381015c9adae3"
+ }
+ Frame {
+ msec: 1856
+ hash: "a52aa37b10a05382f1b136896b7e00e8"
+ }
+ Frame {
+ msec: 1872
+ hash: "a5acc1a45c95a67725e5e15084b7be18"
+ }
+ Frame {
+ msec: 1888
+ hash: "c9fac8b5a4110493958d49b073ea96ed"
+ }
+ Frame {
+ msec: 1904
+ hash: "6fca3a5c6d1cfbf1b905aca25b7785c5"
+ }
+ Frame {
+ msec: 1920
+ hash: "a40e5e2744d1d84c8b9a45525801a745"
+ }
+ Frame {
+ msec: 1936
+ image: "follow.2.png"
+ }
+ Frame {
+ msec: 1952
+ hash: "b2f980ab19d44ee98ab3e82a19adfe2d"
+ }
+ Frame {
+ msec: 1968
+ hash: "e01732623930aebefd76ab62c81dc722"
+ }
+ Frame {
+ msec: 1984
+ hash: "3a59c6851bc89eb31100092b1ceddbd9"
+ }
+ Frame {
+ msec: 2000
+ hash: "2949de19eacb9f35816aa7ba69614f2c"
+ }
+ Frame {
+ msec: 2016
+ hash: "f2c4c1f4429cbb6bd10f2318b2cb6904"
+ }
+ Frame {
+ msec: 2032
+ hash: "2c48af64162e7e028cd536dba03eab71"
+ }
+ Frame {
+ msec: 2048
+ hash: "7fe13b8f9253f720b6591b396cfba2d1"
+ }
+ Frame {
+ msec: 2064
+ hash: "559947a03e650575a764801366cc504b"
+ }
+ Frame {
+ msec: 2080
+ hash: "a8d09f6c862fd5ec2dcf34f06d1ef744"
+ }
+ Frame {
+ msec: 2096
+ hash: "e3bb4b62209631ff84134f2243bfdb42"
+ }
+ Frame {
+ msec: 2112
+ hash: "a1956a9d1939bc154ea0c88d596948cc"
+ }
+ Frame {
+ msec: 2128
+ hash: "c98a375727860da1e827d4dd74af8f63"
+ }
+ Frame {
+ msec: 2144
+ hash: "df4edcbb2ef5348341ff55c808609b6c"
+ }
+ Frame {
+ msec: 2160
+ hash: "6287564be85b7cbadc6bb6f0232bc837"
+ }
+ Frame {
+ msec: 2176
+ hash: "9826fdb48f7ea770fa5f198ec49d7cb7"
+ }
+ Frame {
+ msec: 2192
+ hash: "56f82641a5591df9bb929cc0d32eb95d"
+ }
+ Frame {
+ msec: 2208
+ hash: "526c55e555fb2e58796561efa3568c50"
+ }
+ Frame {
+ msec: 2224
+ hash: "6b4b74613421c1841a17c369cb316754"
+ }
+ Frame {
+ msec: 2240
+ hash: "37f785c30947d5eec113dcf6af649abf"
+ }
+ Frame {
+ msec: 2256
+ hash: "5ff2c975dd9e261c764537c836627c4d"
+ }
+ Frame {
+ msec: 2272
+ hash: "efe554981583749c3d09988bce7fed02"
+ }
+ Frame {
+ msec: 2288
+ hash: "0f7204b4afb0ea5d58e49650e8027c0c"
+ }
+ Frame {
+ msec: 2304
+ hash: "817291f91f4b309710ad3aed53a7d47a"
+ }
+ Frame {
+ msec: 2320
+ hash: "c15c9cd03089090cf8a777c1f0d88de7"
+ }
+ Frame {
+ msec: 2336
+ hash: "05f45cb8d0856dcc81091351615e35d6"
+ }
+ Frame {
+ msec: 2352
+ hash: "99785a16fed6d6409b4b47ec55afb56b"
+ }
+ Frame {
+ msec: 2368
+ hash: "39032cb4432ee9536af500673fccf526"
+ }
+ Frame {
+ msec: 2384
+ hash: "9057653e3cd6042831037d3590e7595b"
+ }
+ Frame {
+ msec: 2400
+ hash: "76c772eb2ab8f117c260c9c96bc99e1d"
+ }
+ Frame {
+ msec: 2416
+ hash: "b6474665b8f8bcdd76d1a38efecad889"
+ }
+ Frame {
+ msec: 2432
+ hash: "106c2d2efafad0181e3ded3a6805f2c6"
+ }
+ Frame {
+ msec: 2448
+ hash: "5275fa4ffef6c1909f9d03bb1e7b9cae"
+ }
+ Frame {
+ msec: 2464
+ hash: "0c1043c0087d60000dc7259d4ac03618"
+ }
+ Frame {
+ msec: 2480
+ hash: "645748569b4f5cb9b206b0808bb7d23d"
+ }
+ Frame {
+ msec: 2496
+ hash: "dd95dfa80e1b3ff511e7c75efd0d87ce"
+ }
+ Frame {
+ msec: 2512
+ hash: "86b3dd03b04d7610837cdc67cad07e0a"
+ }
+ Frame {
+ msec: 2528
+ hash: "8264f67ac92e4ebcfe4cc8e954f8c5d2"
+ }
+ Frame {
+ msec: 2544
+ hash: "6bf52377d822b09eb28a1ec36d3a36a9"
+ }
+ Frame {
+ msec: 2560
+ hash: "7ae1d65cdaf7fa71eb4ec318b37bb0aa"
+ }
+ Frame {
+ msec: 2576
+ hash: "860f5ce9844c90cf9e6a6d383ff0972f"
+ }
+ Frame {
+ msec: 2592
+ hash: "5502229c038dfc59d966f69ae6ed8957"
+ }
+ Frame {
+ msec: 2608
+ hash: "21843c027bc1434ae60b3bb0fced2c54"
+ }
+ Frame {
+ msec: 2624
+ hash: "962df45680949c3eb6c968f98cd76b20"
+ }
+ Frame {
+ msec: 2640
+ hash: "f313c26fa76a0edce61244bdf92528e4"
+ }
+ Frame {
+ msec: 2656
+ hash: "b7bbde239e98cbd66b1e51b54b747f51"
+ }
+ Frame {
+ msec: 2672
+ hash: "62340707fbc832fcb805c8f80ab353d1"
+ }
+ Frame {
+ msec: 2688
+ hash: "d008a3f7af1810ff70b68b38a4cd0f0d"
+ }
+ Frame {
+ msec: 2704
+ hash: "e651dd628af24faf34d716beb392b052"
+ }
+ Frame {
+ msec: 2720
+ hash: "a97733963c7a7616b25741545b07ffba"
+ }
+ Frame {
+ msec: 2736
+ hash: "3e017cc1db720cf16521bd17308e4f44"
+ }
+ Frame {
+ msec: 2752
+ hash: "13652ebaa610cca71486517e2eed21a5"
+ }
+ Frame {
+ msec: 2768
+ hash: "09f0f500c6f7d11be39c31f9e589b38a"
+ }
+ Frame {
+ msec: 2784
+ hash: "b87968cbc60ddc6a5f5699e830410eab"
+ }
+ Frame {
+ msec: 2800
+ hash: "50e65b043d1f07a321a08ee4c25204f6"
+ }
+ Frame {
+ msec: 2816
+ hash: "122d1ffa1510468e8c4067e0f511588f"
+ }
+ Frame {
+ msec: 2832
+ hash: "585f6c25caaafb99a22a23d8a998d202"
+ }
+ Frame {
+ msec: 2848
+ hash: "9b245a00ad576666c10f509d8a80a61e"
+ }
+ Frame {
+ msec: 2864
+ hash: "9b245a00ad576666c10f509d8a80a61e"
+ }
+ Frame {
+ msec: 2880
+ hash: "3c5d3d10bacc093afc6a9c0b5aa4cddc"
+ }
+ Frame {
+ msec: 2896
+ image: "follow.3.png"
+ }
+ Frame {
+ msec: 2912
+ hash: "31926d69c2309fdf13fbd7f0e9868c3d"
+ }
+ Frame {
+ msec: 2928
+ hash: "eb3acacce5dd31b0e94b59b9e546ccae"
+ }
+ Frame {
+ msec: 2944
+ hash: "9a51cff3276d75803a0a6e480f7ecb70"
+ }
+ Frame {
+ msec: 2960
+ hash: "fbbd8b9d519993a699815d935bcd2b9f"
+ }
+ Frame {
+ msec: 2976
+ hash: "0314190c6de73f9f374a4eaed0709645"
+ }
+ Frame {
+ msec: 2992
+ hash: "8ca1a203bdb5446094eb948aeb0a333e"
+ }
+ Frame {
+ msec: 3008
+ hash: "301e1b86ce38e11ad9d0d7aba0909985"
+ }
+ Frame {
+ msec: 3024
+ hash: "922095867d0a91b73ab7a63df2041279"
+ }
+ Frame {
+ msec: 3040
+ hash: "ba8275f3ba4633bf64a1f81f630c90f1"
+ }
+ Frame {
+ msec: 3056
+ hash: "efe39545279a7bd015d2de75d2b9d8b1"
+ }
+ Frame {
+ msec: 3072
+ hash: "78926c3c0c6fcf89b9291f9902710964"
+ }
+ Frame {
+ msec: 3088
+ hash: "ea63dcb7f00d3ddede0d8be59ad9d6bc"
+ }
+ Frame {
+ msec: 3104
+ hash: "286ad493301b713a49e378f123482a53"
+ }
+ Frame {
+ msec: 3120
+ hash: "a4bbbb8bb88188d3e99996502e3eebd1"
+ }
+ Frame {
+ msec: 3136
+ hash: "a6100e79f3dc5af594e86ab6cd8dfb76"
+ }
+ Frame {
+ msec: 3152
+ hash: "d9e3f777dc89bcf1b7f712206db768e2"
+ }
+ Frame {
+ msec: 3168
+ hash: "768045c600c0aa0b1e9e6f012733c600"
+ }
+ Frame {
+ msec: 3184
+ hash: "d8b4caa641ddee786f7898359efe9d07"
+ }
+ Frame {
+ msec: 3200
+ hash: "f7c3b76d5bb7c263ac9447eaad685158"
+ }
+ Frame {
+ msec: 3216
+ hash: "f7f97db815d653ec29fa31b87f72af2a"
+ }
+ Frame {
+ msec: 3232
+ hash: "18524623762487b60943312cd8bd4388"
+ }
+ Frame {
+ msec: 3248
+ hash: "5823dee5dd56e9f7515601f9629ccbae"
+ }
+ Frame {
+ msec: 3264
+ hash: "5823dee5dd56e9f7515601f9629ccbae"
+ }
+ Frame {
+ msec: 3280
+ hash: "5823dee5dd56e9f7515601f9629ccbae"
+ }
+ Frame {
+ msec: 3296
+ hash: "5823dee5dd56e9f7515601f9629ccbae"
+ }
+ Frame {
+ msec: 3312
+ hash: "18524623762487b60943312cd8bd4388"
+ }
+ Frame {
+ msec: 3328
+ hash: "430995770b655054aaeda383df8e27f7"
+ }
+ Frame {
+ msec: 3344
+ hash: "16a3a00f2b89aed676f80d63c4933ec3"
+ }
+ Frame {
+ msec: 3360
+ hash: "6c55aa62079ec546522edbf69c37b270"
+ }
+ Frame {
+ msec: 3376
+ hash: "0d68ca3ccecdd831013950cc7405e46e"
+ }
+ Frame {
+ msec: 3392
+ hash: "9da2511bc8b434218695fa74ed543439"
+ }
+ Frame {
+ msec: 3408
+ hash: "05afdd0b99dab81a500cdc2b2f0786fe"
+ }
+ Frame {
+ msec: 3424
+ hash: "e6f8882d146ae60bcc6ea47ff41a637b"
+ }
+ Frame {
+ msec: 3440
+ hash: "154542ed0e88321294f382501819aefc"
+ }
+ Frame {
+ msec: 3456
+ hash: "8f47b6980c387c5020145bf04645fd2d"
+ }
+ Frame {
+ msec: 3472
+ hash: "b34b055c7602f1f4e1cde875b258120c"
+ }
+ Frame {
+ msec: 3488
+ hash: "5a697f675575f05e297d4877604b9a47"
+ }
+ Frame {
+ msec: 3504
+ hash: "729dff1d1b357d19fc81804ec8940d0e"
+ }
+ Frame {
+ msec: 3520
+ hash: "c6f3fee46baa94a6139d2ee40254b160"
+ }
+ Frame {
+ msec: 3536
+ hash: "af0e700bb8ae34834510830f8b44afdb"
+ }
+ Frame {
+ msec: 3552
+ hash: "9c87bb54c2dfe58c2da9194dae6f7502"
+ }
+ Frame {
+ msec: 3568
+ hash: "2132356a92c75d725f9feafb8201b142"
+ }
+ Frame {
+ msec: 3584
+ hash: "50d855d2595eeae2bfd6aaa8c2fa0454"
+ }
+ Frame {
+ msec: 3600
+ hash: "5fde3c62d6e53a9056e3586f9dcda59e"
+ }
+ Frame {
+ msec: 3616
+ hash: "8f04460254a1e9fb949d5165894cd92a"
+ }
+ Frame {
+ msec: 3632
+ hash: "2b514c5e3b20d30f9c7e71092c69f081"
+ }
+ Frame {
+ msec: 3648
+ hash: "2c1ba6224037790e15f5c0f2864ace4d"
+ }
+ Frame {
+ msec: 3664
+ hash: "0d5b8e7bd5f560888aacaf2b3c6827a8"
+ }
+ Frame {
+ msec: 3680
+ hash: "ae25004530e7df134414018e4a34780e"
+ }
+ Frame {
+ msec: 3696
+ hash: "1a8fd9eaf9a91f1b42924f8986fbed9a"
+ }
+ Frame {
+ msec: 3712
+ hash: "2ea6de2025d40ed5beeff12a5b70ccc9"
+ }
+ Frame {
+ msec: 3728
+ hash: "624e417718d3cac1e4b7e4ce258ce6ea"
+ }
+ Frame {
+ msec: 3744
+ hash: "8b56d29391257c7be8966af6be26ea9f"
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 195; y: 95
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3760
+ hash: "5c0d977d8b446d9191bde57335cf1062"
+ }
+ Frame {
+ msec: 3776
+ hash: "100be2b21d069e3a5dbb694a90da4d4f"
+ }
+ Frame {
+ msec: 3792
+ hash: "caab03f6c81080dd8fdbedb4e94ae4a5"
+ }
+ Frame {
+ msec: 3808
+ hash: "3328a4d06f2f80a7e9ccf2ff21522fca"
+ }
+ Frame {
+ msec: 3824
+ hash: "a534e6cc28daf3eff6a9cf8379bd6375"
+ }
+ Frame {
+ msec: 3840
+ hash: "6686f9c1a814c6a6b785b70f94937b68"
+ }
+ Frame {
+ msec: 3856
+ image: "follow.4.png"
+ }
+ Frame {
+ msec: 3872
+ hash: "d3f1c3593375ca5c022a1361a7ec70bd"
+ }
+ Frame {
+ msec: 3888
+ hash: "67843e6192e2ecaa3820c37dc2f93106"
+ }
+ Frame {
+ msec: 3904
+ hash: "19a022f678e5b8f4ebdff936162323dc"
+ }
+ Frame {
+ msec: 3920
+ hash: "34e55ae70c9e156db339ae15642359c3"
+ }
+ Frame {
+ msec: 3936
+ hash: "3784778c817f9d9bb73d990cfe12685a"
+ }
+ Frame {
+ msec: 3952
+ hash: "0403fdf79e3ba339c7e3786db0c9c0f0"
+ }
+ Frame {
+ msec: 3968
+ hash: "93e4a0d5645d1cfc916f1e8422655555"
+ }
+ Frame {
+ msec: 3984
+ hash: "29080bfabb87160b7c51385fb36b474b"
+ }
+ Frame {
+ msec: 4000
+ hash: "9da2d83edc9d35f00fb8a159e79de4d9"
+ }
+ Frame {
+ msec: 4016
+ hash: "5505a42d4788f00cfc7499fbfda851ce"
+ }
+ Frame {
+ msec: 4032
+ hash: "bdd3040ab16fa9ffdd2fbc66b06699f8"
+ }
+ Frame {
+ msec: 4048
+ hash: "2a347e30a20c693a9440caa60ade0a0f"
+ }
+ Frame {
+ msec: 4064
+ hash: "0307f1857c091a639d47f112ce1a2f5a"
+ }
+ Frame {
+ msec: 4080
+ hash: "778d18e539bbd562ebe39283a6315df1"
+ }
+ Frame {
+ msec: 4096
+ hash: "0369cf6c3d1f5db2e92ee1f7c5d3b8ed"
+ }
+ Frame {
+ msec: 4112
+ hash: "9f7413587ab50f1abf776bf180ec2d6f"
+ }
+ Frame {
+ msec: 4128
+ hash: "7d04a27236485808e571e8a39f23ea17"
+ }
+ Frame {
+ msec: 4144
+ hash: "a1dff63b723473d5a4c9c59975a2fb81"
+ }
+ Frame {
+ msec: 4160
+ hash: "9795ea70a3b9d3b7805221a58c19e5da"
+ }
+ Frame {
+ msec: 4176
+ hash: "f1392c489e21107136eb8e0d1e8b427e"
+ }
+ Frame {
+ msec: 4192
+ hash: "95c225ef07171a96335e99078195b06a"
+ }
+ Frame {
+ msec: 4208
+ hash: "d46ef3e7f9cec06e8c18afc0d07be4f3"
+ }
+ Frame {
+ msec: 4224
+ hash: "b017f5b51d423bb0fca0d6df3aaded8b"
+ }
+ Frame {
+ msec: 4240
+ hash: "60584d085b0cd6fbc436773be678597e"
+ }
+ Frame {
+ msec: 4256
+ hash: "117951465dfd5c386826b295560d2dec"
+ }
+ Frame {
+ msec: 4272
+ hash: "1b70137da5f4e024593999e93121fe8b"
+ }
+ Frame {
+ msec: 4288
+ hash: "bd50dffd41941fef127f39b55c4748e0"
+ }
+ Frame {
+ msec: 4304
+ hash: "8eec34d8e1d2e22d11b85a671cd4d3aa"
+ }
+ Frame {
+ msec: 4320
+ hash: "9e3c97cfad5002ef5f3fcc365aeb7bd0"
+ }
+ Frame {
+ msec: 4336
+ hash: "28e1cf1ee033915ea2ee39c9ab00a73d"
+ }
+ Frame {
+ msec: 4352
+ hash: "99101a156a553f441f00221f6facbf1f"
+ }
+ Frame {
+ msec: 4368
+ hash: "419023e5d59d16c26b35bee7d3cea559"
+ }
+ Frame {
+ msec: 4384
+ hash: "485d23519293975b04031fe4baa5c276"
+ }
+ Frame {
+ msec: 4400
+ hash: "c8bc60735e0ede26dbaf228294853f9a"
+ }
+ Frame {
+ msec: 4416
+ hash: "ada3680b807d59843e3adf6640704066"
+ }
+ Frame {
+ msec: 4432
+ hash: "3e28f3adf9241512cd0d6918d81ffffb"
+ }
+ Frame {
+ msec: 4448
+ hash: "8f339acc33cbc89ae1c62391ce021bb3"
+ }
+ Frame {
+ msec: 4464
+ hash: "d303960c0853a90557d64a04b8283c94"
+ }
+ Frame {
+ msec: 4480
+ hash: "f907dbdacf2cfa9fdf8f9c8dead5b4c4"
+ }
+ Frame {
+ msec: 4496
+ hash: "30c6e6f283f4a3f538cdda9c2e92de8c"
+ }
+ Frame {
+ msec: 4512
+ hash: "04d2ac55774b43107a43a7d33764199b"
+ }
+ Frame {
+ msec: 4528
+ hash: "cddf3e111cbc59e721725daa1d8a0c31"
+ }
+ Frame {
+ msec: 4544
+ hash: "15b1b63cd1695207ebf9f04387be0739"
+ }
+ Frame {
+ msec: 4560
+ hash: "690769b9bbe86a3c5b1fbdee39615fbd"
+ }
+ Frame {
+ msec: 4576
+ hash: "2bd640d8ddbf878d808f22656fef1ed9"
+ }
+ Frame {
+ msec: 4592
+ hash: "a654f1e4519bf883d554276ebbe96323"
+ }
+ Frame {
+ msec: 4608
+ hash: "68f0313cfc3f51a0bb9b47c5407c19b6"
+ }
+ Frame {
+ msec: 4624
+ hash: "77f29806b084de4cabf7ab9bf1a93d5e"
+ }
+ Frame {
+ msec: 4640
+ hash: "f9991189e3282d107b98fb0ae5f5ef00"
+ }
+ Frame {
+ msec: 4656
+ hash: "0cd1f2f6e347d48feea1b26a4968dec7"
+ }
+ Frame {
+ msec: 4672
+ hash: "e75a6f6a088e2289042572a161ffb0e9"
+ }
+ Frame {
+ msec: 4688
+ hash: "5a541081444c0a71128223a4c4c3144c"
+ }
+ Frame {
+ msec: 4704
+ hash: "6813d442cc610f346a5441ed0cd723e5"
+ }
+ Frame {
+ msec: 4720
+ hash: "24ec539bc57899819915f833f26deacd"
+ }
+ Frame {
+ msec: 4736
+ hash: "3a7ed1b4b533b817674aa141c420cd61"
+ }
+ Frame {
+ msec: 4752
+ hash: "d0a643fae97bb152e97ca60e96299003"
+ }
+ Frame {
+ msec: 4768
+ hash: "c84093931520f4661eff6645091a294b"
+ }
+ Frame {
+ msec: 4784
+ hash: "81e7ceaece82505a4a16ead195a66162"
+ }
+ Frame {
+ msec: 4800
+ hash: "315764d20b647f6ab1ba30239a69bf72"
+ }
+ Frame {
+ msec: 4816
+ image: "follow.5.png"
+ }
+ Frame {
+ msec: 4832
+ hash: "d1824ced8af34ad9edb36a58ae9aa7f5"
+ }
+ Frame {
+ msec: 4848
+ hash: "167b9a49fbb94908e09e7e9c9147cd8b"
+ }
+ Frame {
+ msec: 4864
+ hash: "442d5f0906840de526d59a80ada322c0"
+ }
+ Frame {
+ msec: 4880
+ hash: "78206c4d4d23c7c1ba888b9062b09432"
+ }
+ Frame {
+ msec: 4896
+ hash: "e898202cfebbff1952efc6e01254d855"
+ }
+ Frame {
+ msec: 4912
+ hash: "ab31dc7bbad2b0552359866bb8d92f0c"
+ }
+ Frame {
+ msec: 4928
+ hash: "f093304e88964376baf9721d53d4fb49"
+ }
+ Frame {
+ msec: 4944
+ hash: "3ef76f3e1c44d13c3a469bd192ff7b5d"
+ }
+ Frame {
+ msec: 4960
+ hash: "5d3b6d0d91f8cc5b89e39407bc3b5a15"
+ }
+ Frame {
+ msec: 4976
+ hash: "3c73573f12f49b34e1d990a55ad913fa"
+ }
+ Frame {
+ msec: 4992
+ hash: "d1bac071b01a1c6fddab90cdc435fad4"
+ }
+ Frame {
+ msec: 5008
+ hash: "36a219aadec910f1dbef616c641e1d2b"
+ }
+ Frame {
+ msec: 5024
+ hash: "5871fc67d361cc988551592ee21dfb23"
+ }
+ Frame {
+ msec: 5040
+ hash: "6e65ee6c814b9a9da205c36925e663bf"
+ }
+ Frame {
+ msec: 5056
+ hash: "290b20fa8e91d34000d7c2d81745f6d2"
+ }
+ Frame {
+ msec: 5072
+ hash: "19e7405a9083a8143f7bb040f8837b29"
+ }
+ Frame {
+ msec: 5088
+ hash: "c0a0fa2b4c1ceb6c70594994a1ac8713"
+ }
+ Frame {
+ msec: 5104
+ hash: "c236224c16743fb606deb78bcb8afc8d"
+ }
+ Frame {
+ msec: 5120
+ hash: "7d44db15eb300b4338ffc26e9bcfce20"
+ }
+ Frame {
+ msec: 5136
+ hash: "067a79148a194c45c6f32d85316a1e11"
+ }
+ Frame {
+ msec: 5152
+ hash: "9075c379044476994a87f0fdcce8e332"
+ }
+ Frame {
+ msec: 5168
+ hash: "b2316988fbd51096a4f512e71fe7d0a2"
+ }
+ Frame {
+ msec: 5184
+ hash: "280f70877d93af5f84e178aad6a102d8"
+ }
+ Frame {
+ msec: 5200
+ hash: "3eef4ae7e43a8cf1cd9dd562237296f8"
+ }
+ Frame {
+ msec: 5216
+ hash: "e3184f77ce3a47ca4dca6386f42d7fec"
+ }
+ Frame {
+ msec: 5232
+ hash: "a2a5df66fe4808ea8d466cac84ba910c"
+ }
+ Frame {
+ msec: 5248
+ hash: "9f8a0e54788112d6c30482e840504f35"
+ }
+ Frame {
+ msec: 5264
+ hash: "ae69cf84798844f9f360c86790feaecd"
+ }
+ Frame {
+ msec: 5280
+ hash: "0244526572acb6266db5b7eb9d29c6fc"
+ }
+ Frame {
+ msec: 5296
+ hash: "8fb53d60b95ddb5aef27442934ea9983"
+ }
+ Frame {
+ msec: 5312
+ hash: "930fcfde491b4f5681e3861764003895"
+ }
+ Frame {
+ msec: 5328
+ hash: "bcdcd0a637112d113ebe11dc18823237"
+ }
+ Frame {
+ msec: 5344
+ hash: "65a564d5a5afbc14c0cdad4d52753507"
+ }
+ Frame {
+ msec: 5360
+ hash: "0c5056d438d2d54938f31ef5f996673a"
+ }
+ Frame {
+ msec: 5376
+ hash: "11c157ad2236fc390ffbdf339366cbc1"
+ }
+ Frame {
+ msec: 5392
+ hash: "6cb341b1f281a97a35c2e41bfd4c4d9d"
+ }
+ Frame {
+ msec: 5408
+ hash: "553a945f7f19f70ddae4ebe88e52a79b"
+ }
+ Frame {
+ msec: 5424
+ hash: "d10b42b4095a2474e66a5a322f72e936"
+ }
+ Frame {
+ msec: 5440
+ hash: "0f943d61e8072d70eddee8aa1ba0de5a"
+ }
+ Frame {
+ msec: 5456
+ hash: "3df18e237b666e78d57857739b759e6d"
+ }
+ Frame {
+ msec: 5472
+ hash: "1ddc0bfdb2ca7b6dee63f1024e62f26e"
+ }
+ Frame {
+ msec: 5488
+ hash: "aaa397714528f41238059e3a88833abc"
+ }
+ Frame {
+ msec: 5504
+ hash: "c94bd69f925c782656afc5f9618180a6"
+ }
+ Frame {
+ msec: 5520
+ hash: "824ff8c0e1ab43e3c0eaa79b7cc19b9c"
+ }
+ Frame {
+ msec: 5536
+ hash: "6c440a0b2293811335bdbf2c4f25f47d"
+ }
+ Frame {
+ msec: 5552
+ hash: "bfc7936cdf833d5b720ec9baca740112"
+ }
+ Frame {
+ msec: 5568
+ hash: "375fa305dbae2872dc9b20e59381cc0c"
+ }
+ Frame {
+ msec: 5584
+ hash: "fffd6173aa49e74164dc17a238bcd830"
+ }
+ Frame {
+ msec: 5600
+ hash: "44d9007e00fab161fd393b653255d7f4"
+ }
+ Frame {
+ msec: 5616
+ hash: "f669ee25c58b4fa20a01705d334f0065"
+ }
+ Frame {
+ msec: 5632
+ hash: "2dbb7d57711b67d5d9e1b81f70e22d34"
+ }
+ Frame {
+ msec: 5648
+ hash: "19351b91448265cb95c1670ee283c611"
+ }
+ Frame {
+ msec: 5664
+ hash: "19351b91448265cb95c1670ee283c611"
+ }
+ Frame {
+ msec: 5680
+ hash: "3a24b99d048348a21f4e4bd69393de89"
+ }
+ Frame {
+ msec: 5696
+ hash: "35a6fe955a52950bbfa954a453e4008e"
+ }
+ Frame {
+ msec: 5712
+ hash: "896f4ec28c976237b34fb2725a44460e"
+ }
+ Frame {
+ msec: 5728
+ hash: "ed3008ea950ec84c57518e573ea36d15"
+ }
+ Frame {
+ msec: 5744
+ hash: "3447c7be992759f772c1db2033eead99"
+ }
+ Frame {
+ msec: 5760
+ hash: "b7133225daa03563d3f5b1dac5f56a23"
+ }
+ Frame {
+ msec: 5776
+ image: "follow.6.png"
+ }
+ Frame {
+ msec: 5792
+ hash: "adc55f2fcf312a90b025a75fa80aa079"
+ }
+ Frame {
+ msec: 5808
+ hash: "3ac85cad400d2b8e4f33798f4f6b7b42"
+ }
+ Frame {
+ msec: 5824
+ hash: "1c115efd84ccbe489d24c3c521c4a61c"
+ }
+ Frame {
+ msec: 5840
+ hash: "39518f1bbc0c4aba6ff517bc3dc7c279"
+ }
+ Frame {
+ msec: 5856
+ hash: "7bd28d32996f4de61c415d3217da16d0"
+ }
+ Frame {
+ msec: 5872
+ hash: "f5d06e25d775bf8db07e95625a712733"
+ }
+ Frame {
+ msec: 5888
+ hash: "4820ea6ea3be88af2f86111c547a19d7"
+ }
+ Frame {
+ msec: 5904
+ hash: "fa6e681c368118b7f135a47ae8fc12ff"
+ }
+ Frame {
+ msec: 5920
+ hash: "f6b30e618aeeb837d2b3eca270b0a060"
+ }
+ Frame {
+ msec: 5936
+ hash: "ac8504bde8d3063a8bf02b9d4b69d755"
+ }
+ Frame {
+ msec: 5952
+ hash: "9670537bb77caa8e23fda7bbfa96ca60"
+ }
+ Frame {
+ msec: 5968
+ hash: "8cd292865ce5c1d240e9ddc93881a0ed"
+ }
+ Frame {
+ msec: 5984
+ hash: "de112013e526203d151c46e6cfba9f92"
+ }
+ Frame {
+ msec: 6000
+ hash: "cd61066e697de8c055aaa168791c2d8c"
+ }
+ Frame {
+ msec: 6016
+ hash: "cd61066e697de8c055aaa168791c2d8c"
+ }
+ Frame {
+ msec: 6032
+ hash: "e68b27ff14aac03c827fd43ac488d23e"
+ }
+ Frame {
+ msec: 6048
+ hash: "e68b27ff14aac03c827fd43ac488d23e"
+ }
+ Frame {
+ msec: 6064
+ hash: "1f61d857a8c26587fbda5895c603441a"
+ }
+ Frame {
+ msec: 6080
+ hash: "1e0dffdd02e05ade1ae444427d4aa345"
+ }
+ Frame {
+ msec: 6096
+ hash: "9a416ee7a1de9ac45ab2d609233c9520"
+ }
+ Frame {
+ msec: 6112
+ hash: "dfa35bf1cd908011c3214a506bcbdcb8"
+ }
+ Frame {
+ msec: 6128
+ hash: "bd502dc72dce4af3036f7af9ed7cf9e9"
+ }
+ Frame {
+ msec: 6144
+ hash: "c77280527612408daa3037aab45da59d"
+ }
+ Frame {
+ msec: 6160
+ hash: "a38ed1532a40210ad7da4c0d4d1a7195"
+ }
+ Frame {
+ msec: 6176
+ hash: "8ac8a8df937da526bbffb9a3590d89ac"
+ }
+ Frame {
+ msec: 6192
+ hash: "07527cb9a4494e11f4c9f99eb72598b9"
+ }
+ Frame {
+ msec: 6208
+ hash: "655b0327ef0f8711810714ba50f2f8cc"
+ }
+ Frame {
+ msec: 6224
+ hash: "549fd25292012a2be1f78118998ca892"
+ }
+ Frame {
+ msec: 6240
+ hash: "7a382ae4e6a48826eaa2c83ee7a73fb2"
+ }
+ Frame {
+ msec: 6256
+ hash: "5acd5f250c5b32d9006ed68dfecbfa1c"
+ }
+ Frame {
+ msec: 6272
+ hash: "3189e5a89d7b2ba1e6a06f6e3070e8c1"
+ }
+ Frame {
+ msec: 6288
+ hash: "3189e5a89d7b2ba1e6a06f6e3070e8c1"
+ }
+ Frame {
+ msec: 6304
+ hash: "07e5f1277558bfe7638b00cf9d967baf"
+ }
+ Frame {
+ msec: 6320
+ hash: "07e5f1277558bfe7638b00cf9d967baf"
+ }
+ Frame {
+ msec: 6336
+ hash: "07e5f1277558bfe7638b00cf9d967baf"
+ }
+ Frame {
+ msec: 6352
+ hash: "07e5f1277558bfe7638b00cf9d967baf"
+ }
+ Frame {
+ msec: 6368
+ hash: "07e5f1277558bfe7638b00cf9d967baf"
+ }
+ Frame {
+ msec: 6384
+ hash: "877aca1c64e588845329ca8a38222604"
+ }
+ Frame {
+ msec: 6400
+ hash: "877aca1c64e588845329ca8a38222604"
+ }
+ Frame {
+ msec: 6416
+ hash: "877aca1c64e588845329ca8a38222604"
+ }
+ Frame {
+ msec: 6432
+ hash: "877aca1c64e588845329ca8a38222604"
+ }
+ Frame {
+ msec: 6448
+ hash: "877aca1c64e588845329ca8a38222604"
+ }
+ Frame {
+ msec: 6464
+ hash: "b0f28e923f93dcdcea8460ca9d8cd674"
+ }
+ Frame {
+ msec: 6480
+ hash: "b0f28e923f93dcdcea8460ca9d8cd674"
+ }
+ Frame {
+ msec: 6496
+ hash: "b0f28e923f93dcdcea8460ca9d8cd674"
+ }
+ Frame {
+ msec: 6512
+ hash: "b0f28e923f93dcdcea8460ca9d8cd674"
+ }
+ Frame {
+ msec: 6528
+ hash: "b0f28e923f93dcdcea8460ca9d8cd674"
+ }
+ Frame {
+ msec: 6544
+ hash: "b0f28e923f93dcdcea8460ca9d8cd674"
+ }
+ Frame {
+ msec: 6560
+ hash: "b0f28e923f93dcdcea8460ca9d8cd674"
+ }
+ Frame {
+ msec: 6576
+ hash: "b0f28e923f93dcdcea8460ca9d8cd674"
+ }
+ Frame {
+ msec: 6592
+ hash: "b0f28e923f93dcdcea8460ca9d8cd674"
+ }
+ Frame {
+ msec: 6608
+ hash: "b0f28e923f93dcdcea8460ca9d8cd674"
+ }
+ Frame {
+ msec: 6624
+ hash: "b0f28e923f93dcdcea8460ca9d8cd674"
+ }
+ Frame {
+ msec: 6640
+ hash: "b0f28e923f93dcdcea8460ca9d8cd674"
+ }
+ Frame {
+ msec: 6656
+ hash: "b0f28e923f93dcdcea8460ca9d8cd674"
+ }
+ Frame {
+ msec: 6672
+ hash: "b0f28e923f93dcdcea8460ca9d8cd674"
+ }
+ Frame {
+ msec: 6688
+ hash: "b0f28e923f93dcdcea8460ca9d8cd674"
+ }
+ Frame {
+ msec: 6704
+ hash: "228920e994ebf71d542c71ce8263614e"
+ }
+ Frame {
+ msec: 6720
+ hash: "228920e994ebf71d542c71ce8263614e"
+ }
+ Frame {
+ msec: 6736
+ image: "follow.7.png"
+ }
+ Frame {
+ msec: 6752
+ hash: "228920e994ebf71d542c71ce8263614e"
+ }
+ Frame {
+ msec: 6768
+ hash: "228920e994ebf71d542c71ce8263614e"
+ }
+ Frame {
+ msec: 6784
+ hash: "228920e994ebf71d542c71ce8263614e"
+ }
+ Frame {
+ msec: 6800
+ hash: "228920e994ebf71d542c71ce8263614e"
+ }
+ Frame {
+ msec: 6816
+ hash: "228920e994ebf71d542c71ce8263614e"
+ }
+ Frame {
+ msec: 6832
+ hash: "07e5f1277558bfe7638b00cf9d967baf"
+ }
+ Key {
+ type: 6
+ key: 16777249
+ modifiers: 0
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 6848
+ hash: "3189e5a89d7b2ba1e6a06f6e3070e8c1"
+ }
+ Frame {
+ msec: 6864
+ hash: "3189e5a89d7b2ba1e6a06f6e3070e8c1"
+ }
+ Frame {
+ msec: 6880
+ hash: "3189e5a89d7b2ba1e6a06f6e3070e8c1"
+ }
+ Frame {
+ msec: 6896
+ hash: "3189e5a89d7b2ba1e6a06f6e3070e8c1"
+ }
+ Frame {
+ msec: 6912
+ hash: "3189e5a89d7b2ba1e6a06f6e3070e8c1"
+ }
+ Frame {
+ msec: 6928
+ hash: "3189e5a89d7b2ba1e6a06f6e3070e8c1"
+ }
+}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/clock.0.png b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/clock.0.png
index f159b6b2a3..a3bb3ac1bf 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/clock.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/clock.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/clock.1.png b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/clock.1.png
index d24af1aab2..f159b6b2a3 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/clock.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/clock.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/clock.2.png b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/clock.2.png
new file mode 100644
index 0000000000..d24af1aab2
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/clock.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/clock.qml b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/clock.qml
index a3cd66b3ca..2e8337ec99 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/clock.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/clock.qml
@@ -6,7 +6,7 @@ VisualTest {
}
Frame {
msec: 16
- hash: "cb33c89e5108c85e43b53489d1255862"
+ image: "clock.0.png"
}
Frame {
msec: 32
@@ -242,11 +242,11 @@ VisualTest {
}
Frame {
msec: 960
- image: "clock.0.png"
+ hash: "2ff4e8f394a62892adb348271435205c"
}
Frame {
msec: 976
- hash: "2ff4e8f394a62892adb348271435205c"
+ image: "clock.1.png"
}
Frame {
msec: 992
@@ -482,11 +482,11 @@ VisualTest {
}
Frame {
msec: 1920
- image: "clock.1.png"
+ hash: "a3e6173e6d82d2cb52149588b32851e4"
}
Frame {
msec: 1936
- hash: "a3e6173e6d82d2cb52149588b32851e4"
+ image: "clock.2.png"
}
Frame {
msec: 1952
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.0.png b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.0.png
index c79ac9c7ec..6525dbb867 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.1.png b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.1.png
index d00d78d6be..5b8d209f8e 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.2.png b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.2.png
index c01c980450..cf012baff4 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.2.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.3.png b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.3.png
index 6bca85fad4..57e77a41ea 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.3.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.4.png b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.4.png
index 5f024d2a7c..24d26bdeff 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.4.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.5.png b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.5.png
index b244fbe551..a540734804 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.5.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.6.png b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.6.png
index 141753cd91..17da64369c 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.6.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.6.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.7.png b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.7.png
new file mode 100644
index 0000000000..e03cfe4be9
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.7.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.qml b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.qml
index a688563ee8..2cbd27817f 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativespringanimation/data/follow.qml
@@ -6,419 +6,419 @@ VisualTest {
}
Frame {
msec: 16
- hash: "e94ba580322887dbbbf9cb6309e39c23"
+ image: "follow.0.png"
}
Frame {
msec: 32
- hash: "e94ba580322887dbbbf9cb6309e39c23"
+ hash: "2ddcb50f5d285eb80a8136f0cf4cf85a"
}
Frame {
msec: 48
- hash: "787a59cda2c0b27d8959026e6d1b9427"
+ hash: "519d93a844e05f8215139d91c9aef58b"
}
Frame {
msec: 64
- hash: "9ca724d4b31aa16015b5cbb50eea0c3a"
+ hash: "9f075a5547e4dc67cbe2ace2766395bb"
}
Frame {
msec: 80
- hash: "8a2c62a0190da1b7c1bade243baea6b8"
+ hash: "8fc48f74a51d45b4ea1fb7bd1d48002f"
}
Frame {
msec: 96
- hash: "e129bebca7ad348c3134569d8eee4efc"
+ hash: "a28fc4be5a5bb9ff36f796d9b071f02c"
}
Frame {
msec: 112
- hash: "fd6387415e1c02fe6d17d9c3aa1d1ed8"
+ hash: "ebc14c2905f3596ec451dd96409e6001"
}
Frame {
msec: 128
- hash: "a82a4042fdca7c30facd2c4740c455f7"
+ hash: "4f270bdcff44006a56055edb1cda522a"
}
Frame {
msec: 144
- hash: "62195722eb3acbfbad137ec71fd50bfe"
+ hash: "571f347e764bf38985768c85c2a13ba1"
}
Frame {
msec: 160
- hash: "449819cdc880d59650732b5447ec6237"
+ hash: "b1aa23268167b7e2a1190288926f52c0"
}
Frame {
msec: 176
- hash: "552a838ebcacc0e08fa93b64a2433831"
+ hash: "06d548aef9a678edbf3ab4d3ce62a647"
}
Frame {
msec: 192
- hash: "3984992606d54f05eb31dd0974af2183"
+ hash: "daf6af0ae78f39566913c656450a66e5"
}
Frame {
msec: 208
- hash: "3fd7225bbb0215ca8b6397580f2352a5"
+ hash: "f101cd0c026ee0ed6ccef7a4aed302a0"
}
Frame {
msec: 224
- hash: "0fd8f26f40a9049de1cf2a9493d579d1"
+ hash: "b3caa673f072c53d31d71109c9b33357"
}
Frame {
msec: 240
- hash: "d08f0c57f071dc42e79fc5e0e3c32eeb"
+ hash: "8596f1d305d6b8f97b9feda9e69bdefe"
}
Frame {
msec: 256
- hash: "084c2db330ee82cd032df248ecc9629d"
+ hash: "23c23df2c130aafb2092fe47a958a4cd"
}
Frame {
msec: 272
- hash: "98da0d7f280d7fc4579c970c9a173b51"
+ hash: "66a4f2d8213264437a5f4d6cf10cd442"
}
Frame {
msec: 288
- hash: "4c819c54ced1b6ef0574417a7e11f2e7"
+ hash: "6392490111813bad0a9467cc0c1746ed"
}
Frame {
msec: 304
- hash: "3dc5f7b412cb176c3b23d37cda3ef87c"
+ hash: "c115a47e0ecab63b881e2ec492d24e68"
}
Frame {
msec: 320
- hash: "c368a01b43d94205c03f9c750c37f330"
+ hash: "c2a2b57e6f9ea2975c0846124d2dbc66"
}
Frame {
msec: 336
- hash: "8842bd0c8b17cac4fc9df84835999174"
+ hash: "8286c315dfda4241607b2de1154f869d"
}
Frame {
msec: 352
- hash: "26829e9c7ca44dfcb0c03852f4158a18"
+ hash: "3f0f7cae80357176892ff7628ec3153a"
}
Frame {
msec: 368
- hash: "ecffdb0888f1721e27b163e1f29a1950"
+ hash: "d13bde4a5b5ed8202f92ae33913166c9"
}
Frame {
msec: 384
- hash: "eaead96f2683c464a12df8aadba20691"
+ hash: "b70cc32134b1b0d31a5e7f145af09495"
}
Frame {
msec: 400
- hash: "1e931963925bd208dce1ec9011372a3b"
+ hash: "03ebc2ff317ac840f4508e8701d66955"
}
Frame {
msec: 416
- hash: "1c3fd049001c1e883f21d0d1e0e32cba"
+ hash: "8dff08e72365e8e2fee8088c386dedca"
}
Frame {
msec: 432
- hash: "e8c3422ca637750ac52565594737d092"
+ hash: "720f3bbaf3fa3e3a064747d5689e47a0"
}
Frame {
msec: 448
- hash: "b1c36322cf89e15a80af7c43f2aebca1"
+ hash: "350e3ebfcfef96969ef5b8d5944f7e62"
}
Frame {
msec: 464
- hash: "f676c3171495f7bb2cb1812cfebaa17a"
+ hash: "1e4e6e68b3a8eac0c5cd039164eec166"
}
Frame {
msec: 480
- hash: "255119e2efa99c8e31fee611aaaa5137"
+ hash: "62a10c4250ad025139a3f9e72109e8e1"
}
Frame {
msec: 496
- hash: "e0bd32e3d44cfc2351db105f4595f18a"
+ hash: "23cfd643adfc98f6a06c7e7b15dac954"
}
Frame {
msec: 512
- hash: "b7f23b8f3769f929b42491efda7ebe19"
+ hash: "3a78930d5b86b886723fad85e77dd075"
}
Frame {
msec: 528
- hash: "718cee11d869a8a8c5191cc0c09f2d30"
+ hash: "64dc878e2f527e80403c766e61fe14a6"
}
Frame {
msec: 544
- hash: "fbdbf92f8c5f507605ff50abc594682b"
+ hash: "d79160989d2584044042271e79a88e69"
}
Frame {
msec: 560
- hash: "c07fdc69c72b40d3c8dd1cc499008888"
+ hash: "22cbaea4affc88433834c7d0dc1f1644"
}
Frame {
msec: 576
- hash: "38e17ecd537dc0f51211ad672a2ebb21"
+ hash: "77cb616902257e1f239a0e6bfaabb33c"
}
Frame {
msec: 592
- hash: "2cbdc8728ef779c62f9938672986658a"
+ hash: "a2fe73dced03b23c4acb9aae9b774b41"
}
Frame {
msec: 608
- hash: "7fb66509d5d1df34861e9c70f9a579f0"
+ hash: "230e21d3a9ed0e185593677233af1275"
}
Frame {
msec: 624
- hash: "410b89392e859058718a08b79ec3d8fa"
+ hash: "4e10ecffac4e06d624855d3f8917f76c"
}
Frame {
msec: 640
- hash: "9bd90f80700217d08dafed93b81ee9cf"
+ hash: "84f49d56baace4a02e50d3eafaea04ec"
}
Frame {
msec: 656
- hash: "6d83671504a4274887b4e0d9bd2b24e7"
+ hash: "e3cd0b334551a9f91723eb2c876d335a"
}
Frame {
msec: 672
- hash: "51ff7bd3fd4a776af33fce7b935b145c"
+ hash: "259330f3ec390c9926d9c2ddc2d77319"
}
Frame {
msec: 688
- hash: "20f27392368b63b248bcd455cf3c9106"
+ hash: "cc659623bfa385d282d608684d7cdc2b"
}
Frame {
msec: 704
- hash: "1a5ab296bd55aa215c9b04a7ff6c73a1"
+ hash: "47ed75d077143a6bfa0e10158550c542"
}
Frame {
msec: 720
- hash: "020fd7b14e8662fc006b0c39adca7c6a"
+ hash: "0de93bbd9f9ee63e97968089321003e1"
}
Frame {
msec: 736
- hash: "2619120bdb25a153963bdf05c4a16d44"
+ hash: "b33d867d4399879256a01344ce0b81f2"
}
Frame {
msec: 752
- hash: "fd321314031efeb9ce71146764289d9f"
+ hash: "97c31fce937d11f62bebc6169b464a42"
}
Frame {
msec: 768
- hash: "378a71f09445dfff284db919787cbf87"
+ hash: "ea4166b8a4001bca3f27af30f251267f"
}
Frame {
msec: 784
- hash: "d59eefe82ab8a00c903141dd9ea767ef"
+ hash: "b56d270b7893565f8d7ed2a0bfe10d60"
}
Frame {
msec: 800
- hash: "0a65004d69a4567f2a5c7e84dab3a905"
+ hash: "88a42559fe22b45cff379258dd40ced9"
}
Frame {
msec: 816
- hash: "92a4631716a51ff484ca14d9cfe05b2e"
+ hash: "4ee1a711cb8d26087e1b75a3166ca5f0"
}
Frame {
msec: 832
- hash: "87203f627cf410cad56d6ba38a140efa"
+ hash: "9b88a00d041092e79b4a08bccbaca0e1"
}
Frame {
msec: 848
- hash: "054cc085998cc059a6b7b4a7300dd36b"
+ hash: "afea397b3d740dc42f0313624fc10efd"
}
Frame {
msec: 864
- hash: "af3fefeb908a0485c723d36f61eff0a4"
+ hash: "39fd8e4cefbd9fed283d62a7aecded22"
}
Frame {
msec: 880
- hash: "3f905d1e1ea79858b5a9bbfeab4eb255"
+ hash: "916b783d2379ac054c749e7b6eae7ddf"
}
Frame {
msec: 896
- hash: "f935f1fc5f26a201098d894fca9a4d1f"
+ hash: "fccd44740ff7ffb0f2adccf00a7588bd"
}
Frame {
msec: 912
- hash: "42b003dbb531da514716b9c32bdd3614"
+ hash: "c064f20703a13543e8273d251fd645fe"
}
Frame {
msec: 928
- hash: "a82fed83ee4efee7896b639c7691b13a"
+ hash: "1b9b0755101841e3d1cbe208d81575d5"
}
Frame {
msec: 944
- hash: "31ad8cbf875233ea495330b0d3d4d2dd"
+ hash: "1eb5e4a301b565012bc8f6af8e879eb9"
}
Frame {
msec: 960
- image: "follow.0.png"
+ hash: "032db65eb5c405e433f88df3975c322b"
}
Frame {
msec: 976
- hash: "78422e0e8d323dea6aa655a2980b7562"
+ image: "follow.1.png"
}
Frame {
msec: 992
- hash: "5d71ff48b865ad4266eb8292f981b04e"
+ hash: "fdb67e11d7cc767b2389a8bbef752c7e"
}
Frame {
msec: 1008
- hash: "df599d934d131c92b209284277009efb"
+ hash: "ed89cb161336c61b13e3514fdf816023"
}
Frame {
msec: 1024
- hash: "5aaf33d11eb70ffdfe89246c637caed7"
+ hash: "331b873c5367e0aaa62af85cb54a6a96"
}
Frame {
msec: 1040
- hash: "9648cf623a66ded145c4fd23a42917b3"
+ hash: "cde4503f02f0c3732e310a7d0418cd1e"
}
Frame {
msec: 1056
- hash: "9d33c2cc44ceac5a527ddcf809a51df6"
+ hash: "f8c028c591fc1495d5bec8763da6f011"
}
Frame {
msec: 1072
- hash: "6d0ad2e0d012e53a03e246e6d5e49e13"
+ hash: "9dc68483218335afe41aa3cd052a98b5"
}
Frame {
msec: 1088
- hash: "d33fa68796e38b19f44571d11c1bcd33"
+ hash: "31105c455418a3284700cf9c88571507"
}
Frame {
msec: 1104
- hash: "636680f49bbf30b0fac31a6c581f18dd"
+ hash: "72724947167a1ac600aaa1d7f331f7ec"
}
Frame {
msec: 1120
- hash: "66801dbc39301e6b46b244fe502e0340"
+ hash: "a4a1243326de6b9e93948fcb22fecac4"
}
Frame {
msec: 1136
- hash: "f8fa6a033483279e78636f26493b10ac"
+ hash: "c3e26e62f12dd658f21a0330fefb0533"
}
Frame {
msec: 1152
- hash: "11b46611550173df42986dee4339d907"
+ hash: "15d85b4a9ad761a911bbaa3e0c4b2b61"
}
Frame {
msec: 1168
- hash: "5c9afdb519006079ee8d28b2b60d0b76"
+ hash: "bce1400b437cc43b8ff57b1a5fbc9551"
}
Frame {
msec: 1184
- hash: "9a55c38b2cd8abf25fbe448c7ef80971"
+ hash: "5d05848afcd8f697c1b3762f00a759f6"
}
Frame {
msec: 1200
- hash: "27ebdf1424e892b35c93ec009d942407"
+ hash: "6c83f68ea72cd54793149f4c9e759d44"
}
Frame {
msec: 1216
- hash: "2d9e3f0ae56f7337012b51c4dd173108"
+ hash: "5206b93666e51cee3e25a7a85e27b5b8"
}
Frame {
msec: 1232
- hash: "e6f89ca892131d68ff1f4ca95c95d807"
+ hash: "a3ef5c76efece4455e5ad12bcc8bd8f5"
}
Frame {
msec: 1248
- hash: "f75791f1b12a217d37acb09bdb114cc5"
+ hash: "c36c6ee7b6c8074f5dc1af7446fad1ad"
}
Frame {
msec: 1264
- hash: "94c5ab1460fb1b0f957a9718b45bca36"
+ hash: "bb0887f1f10548bb53f0dc1ffeec25ee"
}
Frame {
msec: 1280
- hash: "e246c8a0ec3d01ea20258b24a5673fe1"
+ hash: "ebffe547a7c3528e5deddc590510506d"
}
Frame {
msec: 1296
- hash: "529de7735e73409dff266d8c1275215c"
+ hash: "18962faef1a1a1207a3c6783116154a2"
}
Frame {
msec: 1312
- hash: "330400763a670580570cb62241ebec62"
+ hash: "8aaa876e4a6c4de04e557f35ddd4fb61"
}
Frame {
msec: 1328
- hash: "ae444d1de9c509fc6f74136ca90f927a"
+ hash: "c66123bb4e01ce267629f5b50d147db1"
}
Frame {
msec: 1344
- hash: "c43631ca8ee90ea5dc7664be5bc45429"
+ hash: "334e5acf84d90e70ca3085b9d5e057a7"
}
Frame {
msec: 1360
- hash: "b366ac4a5b66c331a7667e9df0fc4eda"
+ hash: "9bb49ddcc775307c3c1159908323e010"
}
Frame {
msec: 1376
- hash: "1c7f4c47a9c57a34787cc9703e99bff1"
+ hash: "1b3cfb8b6b6c39a34ea86a66ea1cc6b1"
}
Frame {
msec: 1392
- hash: "5555535609d512e8d34549b6624f74b8"
+ hash: "d2a68c6eb2b05390ab1049137f96f227"
}
Frame {
msec: 1408
- hash: "be59df714541923494b59f31f57e310e"
+ hash: "91e254fd2376ba35a283b18b947ca1a8"
}
Frame {
msec: 1424
- hash: "63e434f053032e54298f6e61c8d4da7d"
+ hash: "fe94e2e8b4978390e9e8cbfe77dfc241"
}
Frame {
msec: 1440
- hash: "b0bb838637eceb6f8993ebc5b887afed"
+ hash: "e3d32b73c5c50e7aa59f4e4725de170e"
}
Frame {
msec: 1456
- hash: "fc39f33add4ebcaf578558ecd4aea281"
+ hash: "a73b90254d7da5557cc3941db0017a65"
}
Frame {
msec: 1472
- hash: "3f36faa7cc1e5898d4d5890c47633ff3"
+ hash: "9aa49cce5d63f8dd6409995ac6d91d63"
}
Frame {
msec: 1488
- hash: "4b328002b4461869b1f7de48e7291902"
+ hash: "0ba674df46accec28a3c1b81e656adc7"
}
Frame {
msec: 1504
- hash: "26252c63924d2abcaebea2c7caf1d7aa"
+ hash: "025a45417b8c75d47b5dac6c5ef913e9"
}
Frame {
msec: 1520
- hash: "a9a6023484ae439be86b2c2ff59dc40b"
+ hash: "742527b97c7f580b0b7ff9d6aa105d31"
}
Frame {
msec: 1536
- hash: "620dab11bd4aab84cc0d949c48dd9a5d"
+ hash: "965ec8315d45894e704fcc5a3efc8c55"
}
Frame {
msec: 1552
- hash: "3b45ef80ee3e6fbbd3533bfa0d666e2f"
+ hash: "6abdd59e6bd2c31124eab254418a5322"
}
Frame {
msec: 1568
- hash: "b33306abcb6a8402e491b7216495c778"
+ hash: "9f6d06b176c55fa292e7f0ef4b5cd1cb"
}
Frame {
msec: 1584
- hash: "3cc52e8649a02e87785f1dc63f5c1efd"
+ hash: "05eba8c6e02c0d4af49e59b3346c9e68"
}
Frame {
msec: 1600
- hash: "fe21141f48da685213ed9d7641b2e7a0"
+ hash: "3c4215f6253aba836516cd51368bc471"
}
Frame {
msec: 1616
- hash: "205aac4e822e20bd32f637256250f3c8"
+ hash: "c6339a290007c0106cb18ecef5b7392b"
}
Frame {
msec: 1632
- hash: "124df0948f36aaf6151556d301f4b930"
+ hash: "39a4bcd2ce84035f9db70f196ca00971"
}
Frame {
msec: 1648
- hash: "c1701edd5eaf143fd1dbdc4a5324b48a"
+ hash: "b75a4be472583c3b893fc894ebe7d4d8"
}
Frame {
msec: 1664
- hash: "117402df55367c918a3835958f4ab1d6"
+ hash: "d1efebbe748c43b3c1241753612e100d"
}
Mouse {
type: 2
@@ -430,523 +430,523 @@ VisualTest {
}
Frame {
msec: 1680
- hash: "73e3b86a1da28490cae4b03fdceefe19"
+ hash: "f6f3ad64fb71ffb68a5ea0375cc94bae"
}
Frame {
msec: 1696
- hash: "172e329fb47d6db0180242990a84fe3b"
+ hash: "778ecbafb5d235edde1683cabe3c3cfe"
}
Frame {
msec: 1712
- hash: "82cf704cdfd406bab22689bc888ddc8d"
+ hash: "5a41b9196fe4a97e6ba2400806299bd8"
}
Frame {
msec: 1728
- hash: "4c288f198a06d1b2815d34c3c8f97051"
+ hash: "1c8ddbc5910e35be389a1cb34fab9dec"
}
Frame {
msec: 1744
- hash: "6404d81456bb95a6b1c1ae55a181e40e"
+ hash: "5e8b236c00087a067d366afde67184f3"
}
Frame {
msec: 1760
- hash: "b2b4b3de77e2b7fd58d3da1ad52355a9"
+ hash: "72fe42361833054cd9388bb98ac9b150"
}
Frame {
msec: 1776
- hash: "95388037c1f79a9dab951031f1d7c307"
+ hash: "bbe9f0b030efa716f34a05f0af929c66"
}
Frame {
msec: 1792
- hash: "c4ee57d9bffbb5f0ff173db48eadf2e3"
+ hash: "cd393fc19a30d896bfe62aa0000308f8"
}
Frame {
msec: 1808
- hash: "703ac9672a9c55cf08e6381ef76ac13c"
+ hash: "c390f5b1bcff54de203490d8f2616fcd"
}
Frame {
msec: 1824
- hash: "ea7726d2a2923290398262c8f70d511e"
+ hash: "b5da2ea467c334dd13c75b811b94efb1"
}
Frame {
msec: 1840
- hash: "5d1af6cbdb4ee5b00045751204408632"
+ hash: "49887c9312c3a4dfc2d9719f47c83a15"
}
Frame {
msec: 1856
- hash: "a52aa37b10a05382f1b136896b7e00e8"
+ hash: "7f077703e49f154d01c12a44f53469c5"
}
Frame {
msec: 1872
- hash: "a5acc1a45c95a67725e5e15084b7be18"
+ hash: "7be4130ed767f0e0bf41c3bebf050cac"
}
Frame {
msec: 1888
- hash: "c9fac8b5a4110493958d49b073ea96ed"
+ hash: "cc1590486c172000557b76c6eadb51e0"
}
Frame {
msec: 1904
- hash: "6fca3a5c6d1cfbf1b905aca25b7785c5"
+ hash: "7ccd05236d9c1f8af0e9645404326122"
}
Frame {
msec: 1920
- image: "follow.1.png"
+ hash: "2da165bf7e868b53b85bb630649ddc3e"
}
Frame {
msec: 1936
- hash: "379d5c4ced414f856e476095fbedfb7d"
+ image: "follow.2.png"
}
Frame {
msec: 1952
- hash: "b2f980ab19d44ee98ab3e82a19adfe2d"
+ hash: "2b6a24b6ceeaa956527c872af70fb5f9"
}
Frame {
msec: 1968
- hash: "e01732623930aebefd76ab62c81dc722"
+ hash: "8c882de21f4ed0fb68433c19b114c3f8"
}
Frame {
msec: 1984
- hash: "3a59c6851bc89eb31100092b1ceddbd9"
+ hash: "f75226c58726a687079d0d24e865ee6f"
}
Frame {
msec: 2000
- hash: "2949de19eacb9f35816aa7ba69614f2c"
+ hash: "2fa9b69fe85b4e1361ba260545c10e06"
}
Frame {
msec: 2016
- hash: "f2c4c1f4429cbb6bd10f2318b2cb6904"
+ hash: "6d513bc03f2798fbce1a0790969da6b5"
}
Frame {
msec: 2032
- hash: "2c48af64162e7e028cd536dba03eab71"
+ hash: "7e359e605483493e9a865f6eb912c394"
}
Frame {
msec: 2048
- hash: "7fe13b8f9253f720b6591b396cfba2d1"
+ hash: "497c7c82c24408dcaff5ec981d3d4f35"
}
Frame {
msec: 2064
- hash: "559947a03e650575a764801366cc504b"
+ hash: "8738b024cf75ef970ffe20166e85141c"
}
Frame {
msec: 2080
- hash: "a8d09f6c862fd5ec2dcf34f06d1ef744"
+ hash: "014b805eb1ecf2ea1cd61727bfd1ca08"
}
Frame {
msec: 2096
- hash: "e3bb4b62209631ff84134f2243bfdb42"
+ hash: "a81cde60979300f397054ea017382114"
}
Frame {
msec: 2112
- hash: "a1956a9d1939bc154ea0c88d596948cc"
+ hash: "c46183b5224e762335eea98d9da65465"
}
Frame {
msec: 2128
- hash: "c98a375727860da1e827d4dd74af8f63"
+ hash: "11afbb88994f298a1fed6575fae3d7fd"
}
Frame {
msec: 2144
- hash: "df4edcbb2ef5348341ff55c808609b6c"
+ hash: "0195fa503143561d9ae3ffe68739ca3f"
}
Frame {
msec: 2160
- hash: "6287564be85b7cbadc6bb6f0232bc837"
+ hash: "6d298df37d2116eb9a62b58853cb3344"
}
Frame {
msec: 2176
- hash: "9826fdb48f7ea770fa5f198ec49d7cb7"
+ hash: "1660865f00ea9adf94c8e56c7a8a73b2"
}
Frame {
msec: 2192
- hash: "56f82641a5591df9bb929cc0d32eb95d"
+ hash: "9835b5527b84e8e8a8fea2bdf9653a99"
}
Frame {
msec: 2208
- hash: "526c55e555fb2e58796561efa3568c50"
+ hash: "ec1158b83daa9e98437abc9ce90b70f0"
}
Frame {
msec: 2224
- hash: "6b4b74613421c1841a17c369cb316754"
+ hash: "11ce5e37747e05ff5f5071b13324ce9e"
}
Frame {
msec: 2240
- hash: "37f785c30947d5eec113dcf6af649abf"
+ hash: "6d7d427d5a15a31fd395f26c94ea455e"
}
Frame {
msec: 2256
- hash: "5ff2c975dd9e261c764537c836627c4d"
+ hash: "828949e0fbdb7c79719fb533febb5b35"
}
Frame {
msec: 2272
- hash: "efe554981583749c3d09988bce7fed02"
+ hash: "7ef7f73ef6a59c9210cfa37df3894cb1"
}
Frame {
msec: 2288
- hash: "0f7204b4afb0ea5d58e49650e8027c0c"
+ hash: "e74bec397b32ba2934ffdde23a3d60c6"
}
Frame {
msec: 2304
- hash: "817291f91f4b309710ad3aed53a7d47a"
+ hash: "09c2ca9c22e9b77bc166b4567b29bca7"
}
Frame {
msec: 2320
- hash: "c15c9cd03089090cf8a777c1f0d88de7"
+ hash: "44d87983f33c4e03f4be70b406bb9bd9"
}
Frame {
msec: 2336
- hash: "05f45cb8d0856dcc81091351615e35d6"
+ hash: "92844b36c2f30e618f04bfbc5cfbcad6"
}
Frame {
msec: 2352
- hash: "99785a16fed6d6409b4b47ec55afb56b"
+ hash: "0245f39a8966c4addb3f8dbcee93cd3f"
}
Frame {
msec: 2368
- hash: "39032cb4432ee9536af500673fccf526"
+ hash: "eb1e81cfa29295d4b1522c69d4501f51"
}
Frame {
msec: 2384
- hash: "9057653e3cd6042831037d3590e7595b"
+ hash: "2af9c3bea11b25c0f6c2b780d533a968"
}
Frame {
msec: 2400
- hash: "76c772eb2ab8f117c260c9c96bc99e1d"
+ hash: "5062e9ab29c4a7a9657a4d29249ca822"
}
Frame {
msec: 2416
- hash: "b6474665b8f8bcdd76d1a38efecad889"
+ hash: "d7652ddc85d3be3bb3a2fc268ae9bc29"
}
Frame {
msec: 2432
- hash: "106c2d2efafad0181e3ded3a6805f2c6"
+ hash: "7c924bf2ad6167db439723679b373a3a"
}
Frame {
msec: 2448
- hash: "5275fa4ffef6c1909f9d03bb1e7b9cae"
+ hash: "a93b61dd26a2ca72100b747ac3ed81b6"
}
Frame {
msec: 2464
- hash: "0c1043c0087d60000dc7259d4ac03618"
+ hash: "5fedc849d3d21e0acf0ab4a4815a1285"
}
Frame {
msec: 2480
- hash: "645748569b4f5cb9b206b0808bb7d23d"
+ hash: "4313d2458f4bede8d3b02ac60135e728"
}
Frame {
msec: 2496
- hash: "dd95dfa80e1b3ff511e7c75efd0d87ce"
+ hash: "0f09e81d89262b569c56a9c876f3898d"
}
Frame {
msec: 2512
- hash: "86b3dd03b04d7610837cdc67cad07e0a"
+ hash: "ea932789ded14fc5c8bae565b67d004c"
}
Frame {
msec: 2528
- hash: "8264f67ac92e4ebcfe4cc8e954f8c5d2"
+ hash: "fd1f7b9b51f1284fee4d777ef83bba3f"
}
Frame {
msec: 2544
- hash: "6bf52377d822b09eb28a1ec36d3a36a9"
+ hash: "e98b884a1ec8ce4b4dc20749b85b571e"
}
Frame {
msec: 2560
- hash: "7ae1d65cdaf7fa71eb4ec318b37bb0aa"
+ hash: "d144072bb87bb88750b9df9cd92f7a4b"
}
Frame {
msec: 2576
- hash: "860f5ce9844c90cf9e6a6d383ff0972f"
+ hash: "9d8ad80d3367292d7e89d67cf49862b8"
}
Frame {
msec: 2592
- hash: "5502229c038dfc59d966f69ae6ed8957"
+ hash: "c09b89e71e862da15d2b9edb0e00aa7b"
}
Frame {
msec: 2608
- hash: "21843c027bc1434ae60b3bb0fced2c54"
+ hash: "551277add3f8f09951d9c8f55ccd40f7"
}
Frame {
msec: 2624
- hash: "962df45680949c3eb6c968f98cd76b20"
+ hash: "1d0be0e7108516869374a9b985fd7543"
}
Frame {
msec: 2640
- hash: "f313c26fa76a0edce61244bdf92528e4"
+ hash: "12e7cfb6c4a26af54c4b35182294a7b7"
}
Frame {
msec: 2656
- hash: "b7bbde239e98cbd66b1e51b54b747f51"
+ hash: "a666a5a59d5854973668798eb8d508ba"
}
Frame {
msec: 2672
- hash: "62340707fbc832fcb805c8f80ab353d1"
+ hash: "420d2e21461dc45f134b7dfa11d04d25"
}
Frame {
msec: 2688
- hash: "d008a3f7af1810ff70b68b38a4cd0f0d"
+ hash: "95f848874899fb58a81c62b5921cf857"
}
Frame {
msec: 2704
- hash: "e651dd628af24faf34d716beb392b052"
+ hash: "fa3ea7a0f90ca549cc9a857f0647b061"
}
Frame {
msec: 2720
- hash: "a97733963c7a7616b25741545b07ffba"
+ hash: "cbc5338de6157cd5dad511b246f5093b"
}
Frame {
msec: 2736
- hash: "3e017cc1db720cf16521bd17308e4f44"
+ hash: "e26b43c83197abab3746830bbfacc0f4"
}
Frame {
msec: 2752
- hash: "13652ebaa610cca71486517e2eed21a5"
+ hash: "5225e854ff2763e562dee2810331d560"
}
Frame {
msec: 2768
- hash: "09f0f500c6f7d11be39c31f9e589b38a"
+ hash: "a1d114ea67233ac4c6351e18e3afa64e"
}
Frame {
msec: 2784
- hash: "b87968cbc60ddc6a5f5699e830410eab"
+ hash: "bc9f12af2d0816bb84fd5040ed29bdad"
}
Frame {
msec: 2800
- hash: "50e65b043d1f07a321a08ee4c25204f6"
+ hash: "d9337da38caa4ad3385249602a830df3"
}
Frame {
msec: 2816
- hash: "122d1ffa1510468e8c4067e0f511588f"
+ hash: "6ce20e0c89181b0f11e609b248da71d7"
}
Frame {
msec: 2832
- hash: "585f6c25caaafb99a22a23d8a998d202"
+ hash: "bbc8337950a78c7bfa48aab2635120a8"
}
Frame {
msec: 2848
- hash: "9b245a00ad576666c10f509d8a80a61e"
+ hash: "0e28ade7f52f3c27e1dbdd6e98be8c7d"
}
Frame {
msec: 2864
- hash: "9b245a00ad576666c10f509d8a80a61e"
+ hash: "0e28ade7f52f3c27e1dbdd6e98be8c7d"
}
Frame {
msec: 2880
- image: "follow.2.png"
+ hash: "b496af17513d60d4028bd7402fbfba93"
}
Frame {
msec: 2896
- hash: "3c5d3d10bacc093afc6a9c0b5aa4cddc"
+ image: "follow.3.png"
}
Frame {
msec: 2912
- hash: "31926d69c2309fdf13fbd7f0e9868c3d"
+ hash: "29aa7ce0fb1aa350753d3ec6da05bdf9"
}
Frame {
msec: 2928
- hash: "eb3acacce5dd31b0e94b59b9e546ccae"
+ hash: "fde474797d8105d9d004a7020e010fa4"
}
Frame {
msec: 2944
- hash: "9a51cff3276d75803a0a6e480f7ecb70"
+ hash: "5a553d9a4bd2ef5d86f5eb37a863d28f"
}
Frame {
msec: 2960
- hash: "fbbd8b9d519993a699815d935bcd2b9f"
+ hash: "2dcbf6c84abd49529f0b5d85bfb74808"
}
Frame {
msec: 2976
- hash: "0314190c6de73f9f374a4eaed0709645"
+ hash: "e96ec3b7d37bbf4c9ca297ad5afde31c"
}
Frame {
msec: 2992
- hash: "8ca1a203bdb5446094eb948aeb0a333e"
+ hash: "9d824068affe32c143226b0b530206fc"
}
Frame {
msec: 3008
- hash: "301e1b86ce38e11ad9d0d7aba0909985"
+ hash: "3e85f0ace68cffed47f4c9b00145f0f0"
}
Frame {
msec: 3024
- hash: "922095867d0a91b73ab7a63df2041279"
+ hash: "540b8e1e2bee7d2ba5e29fd3b1086cd1"
}
Frame {
msec: 3040
- hash: "ba8275f3ba4633bf64a1f81f630c90f1"
+ hash: "0786585d11934c5e4a7e965eaac9a152"
}
Frame {
msec: 3056
- hash: "efe39545279a7bd015d2de75d2b9d8b1"
+ hash: "8271705df2ca697f4343007a7810d4ac"
}
Frame {
msec: 3072
- hash: "78926c3c0c6fcf89b9291f9902710964"
+ hash: "b98e1cd20ab2e4239f35d04df5e5175a"
}
Frame {
msec: 3088
- hash: "ea63dcb7f00d3ddede0d8be59ad9d6bc"
+ hash: "ab1a7eaa5c5d919ee76cba405d0dd4cd"
}
Frame {
msec: 3104
- hash: "286ad493301b713a49e378f123482a53"
+ hash: "52682386448379a395dc6c541224b7d4"
}
Frame {
msec: 3120
- hash: "a4bbbb8bb88188d3e99996502e3eebd1"
+ hash: "31dffcb9da94dfc085ab8c561404c248"
}
Frame {
msec: 3136
- hash: "a6100e79f3dc5af594e86ab6cd8dfb76"
+ hash: "f3703eed8ebf9ece776ebe51e4c60ae6"
}
Frame {
msec: 3152
- hash: "d9e3f777dc89bcf1b7f712206db768e2"
+ hash: "1126b90345bb42691cd17f37ecec6bdb"
}
Frame {
msec: 3168
- hash: "768045c600c0aa0b1e9e6f012733c600"
+ hash: "7a63ab96d1c8d4992c03a6f59bba4e7e"
}
Frame {
msec: 3184
- hash: "d8b4caa641ddee786f7898359efe9d07"
+ hash: "91f4a00c9a7ea6164b334aa4b90da862"
}
Frame {
msec: 3200
- hash: "f7c3b76d5bb7c263ac9447eaad685158"
+ hash: "485471140f6a5336837377612e7a85bf"
}
Frame {
msec: 3216
- hash: "f7f97db815d653ec29fa31b87f72af2a"
+ hash: "96881b4021aff05020e0a9342fbae75d"
}
Frame {
msec: 3232
- hash: "18524623762487b60943312cd8bd4388"
+ hash: "9891326646c3da4ff250aab69c862f96"
}
Frame {
msec: 3248
- hash: "5823dee5dd56e9f7515601f9629ccbae"
+ hash: "f00f36bbb5a828824c596ee6f85bec2f"
}
Frame {
msec: 3264
- hash: "5823dee5dd56e9f7515601f9629ccbae"
+ hash: "f00f36bbb5a828824c596ee6f85bec2f"
}
Frame {
msec: 3280
- hash: "5823dee5dd56e9f7515601f9629ccbae"
+ hash: "f00f36bbb5a828824c596ee6f85bec2f"
}
Frame {
msec: 3296
- hash: "5823dee5dd56e9f7515601f9629ccbae"
+ hash: "f00f36bbb5a828824c596ee6f85bec2f"
}
Frame {
msec: 3312
- hash: "18524623762487b60943312cd8bd4388"
+ hash: "9891326646c3da4ff250aab69c862f96"
}
Frame {
msec: 3328
- hash: "430995770b655054aaeda383df8e27f7"
+ hash: "c766238db55f4704c2f29a6be6ee6907"
}
Frame {
msec: 3344
- hash: "16a3a00f2b89aed676f80d63c4933ec3"
+ hash: "0254665427dcbd1c155bc954cc7aa7cd"
}
Frame {
msec: 3360
- hash: "6c55aa62079ec546522edbf69c37b270"
+ hash: "33ae1012816b997ef5c61c03ccfcc590"
}
Frame {
msec: 3376
- hash: "0d68ca3ccecdd831013950cc7405e46e"
+ hash: "4c7857bbbcb9aa812fc2503af2b395cf"
}
Frame {
msec: 3392
- hash: "9da2511bc8b434218695fa74ed543439"
+ hash: "3a570e4af992d35e55923cea23c3c11b"
}
Frame {
msec: 3408
- hash: "05afdd0b99dab81a500cdc2b2f0786fe"
+ hash: "533ef554538005512ce37c73c6def722"
}
Frame {
msec: 3424
- hash: "e6f8882d146ae60bcc6ea47ff41a637b"
+ hash: "f863fa215d0642708bfa82780c766dc4"
}
Frame {
msec: 3440
- hash: "154542ed0e88321294f382501819aefc"
+ hash: "fcca3ec34521c4b9087a102ba1e47293"
}
Frame {
msec: 3456
- hash: "8f47b6980c387c5020145bf04645fd2d"
+ hash: "47d67cd74cb96b12801842b288a8b9ff"
}
Frame {
msec: 3472
- hash: "b34b055c7602f1f4e1cde875b258120c"
+ hash: "34c5ea76f297ec68cba70521caa468e4"
}
Frame {
msec: 3488
- hash: "5a697f675575f05e297d4877604b9a47"
+ hash: "7be247cc7a4032ff0478fca1a2aace8a"
}
Frame {
msec: 3504
- hash: "729dff1d1b357d19fc81804ec8940d0e"
+ hash: "3ade2a1a48edef15f522b9fc016e137e"
}
Frame {
msec: 3520
- hash: "c6f3fee46baa94a6139d2ee40254b160"
+ hash: "8b37b9d123504931d82bb06f6981bade"
}
Frame {
msec: 3536
- hash: "af0e700bb8ae34834510830f8b44afdb"
+ hash: "5eb39825003f405f353f629e236b3395"
}
Frame {
msec: 3552
- hash: "9c87bb54c2dfe58c2da9194dae6f7502"
+ hash: "c4550722260c4a30ab1176c7e5cb62bf"
}
Frame {
msec: 3568
- hash: "2132356a92c75d725f9feafb8201b142"
+ hash: "bd33e3ecd4b59cd659588c0298b61095"
}
Frame {
msec: 3584
- hash: "50d855d2595eeae2bfd6aaa8c2fa0454"
+ hash: "4b3a62bff0019df7412aa2e1c07c0a23"
}
Frame {
msec: 3600
- hash: "5fde3c62d6e53a9056e3586f9dcda59e"
+ hash: "a9b98adcc3350febbb89dbf725b81436"
}
Frame {
msec: 3616
- hash: "8f04460254a1e9fb949d5165894cd92a"
+ hash: "66eb8c84e75141d1575caf7d3cbc1ceb"
}
Frame {
msec: 3632
- hash: "2b514c5e3b20d30f9c7e71092c69f081"
+ hash: "238f2b1dc5bf5b65e827c860f9ee76b5"
}
Frame {
msec: 3648
- hash: "2c1ba6224037790e15f5c0f2864ace4d"
+ hash: "6d1fed0697370b2a2163c369fe559739"
}
Frame {
msec: 3664
- hash: "0d5b8e7bd5f560888aacaf2b3c6827a8"
+ hash: "04ea478c785586d900bbe3472371bbc7"
}
Frame {
msec: 3680
- hash: "ae25004530e7df134414018e4a34780e"
+ hash: "ba429e711c9363eebfb20e641fa44c84"
}
Frame {
msec: 3696
- hash: "1a8fd9eaf9a91f1b42924f8986fbed9a"
+ hash: "0129dfba166ffcbaa15087467c864068"
}
Frame {
msec: 3712
- hash: "2ea6de2025d40ed5beeff12a5b70ccc9"
+ hash: "3fb340c874eee94e8baa1453b37c3fb5"
}
Frame {
msec: 3728
- hash: "624e417718d3cac1e4b7e4ce258ce6ea"
+ hash: "068c51d99c458f3edefe3371f46de260"
}
Frame {
msec: 3744
- hash: "8b56d29391257c7be8966af6be26ea9f"
+ hash: "dd1e04ed3d610c2712158d73ee2c5b9d"
}
Mouse {
type: 3
@@ -958,806 +958,806 @@ VisualTest {
}
Frame {
msec: 3760
- hash: "5c0d977d8b446d9191bde57335cf1062"
+ hash: "840154afb9e7e0c859c66667bb6944b6"
}
Frame {
msec: 3776
- hash: "100be2b21d069e3a5dbb694a90da4d4f"
+ hash: "239c2e33800e386b468a95341d0e23f4"
}
Frame {
msec: 3792
- hash: "caab03f6c81080dd8fdbedb4e94ae4a5"
+ hash: "0a00515f2d297362862c1a5cf6519845"
}
Frame {
msec: 3808
- hash: "3328a4d06f2f80a7e9ccf2ff21522fca"
+ hash: "f855df3495e44291aed8f085163c804b"
}
Frame {
msec: 3824
- hash: "a534e6cc28daf3eff6a9cf8379bd6375"
+ hash: "b4eb31e48c65550bb78d175b48e0e9fb"
}
Frame {
msec: 3840
- image: "follow.3.png"
+ hash: "70243664f9db83614e5972fc18ee81a1"
}
Frame {
msec: 3856
- hash: "0aed83364cd59e3f7309c92593894d43"
+ image: "follow.4.png"
}
Frame {
msec: 3872
- hash: "d3f1c3593375ca5c022a1361a7ec70bd"
+ hash: "c48ce2a4cf28ab706b9c097bddc74c27"
}
Frame {
msec: 3888
- hash: "67843e6192e2ecaa3820c37dc2f93106"
+ hash: "754a957e0df02839dd2fe33fefb7a721"
}
Frame {
msec: 3904
- hash: "19a022f678e5b8f4ebdff936162323dc"
+ hash: "ec3ebe7b941af9bf2163634d7f15e8aa"
}
Frame {
msec: 3920
- hash: "34e55ae70c9e156db339ae15642359c3"
+ hash: "a76423ff2184cd9dac47abf7ae52ce5a"
}
Frame {
msec: 3936
- hash: "3784778c817f9d9bb73d990cfe12685a"
+ hash: "559bec54f51c36c6e90004ca5e77c23c"
}
Frame {
msec: 3952
- hash: "0403fdf79e3ba339c7e3786db0c9c0f0"
+ hash: "dc6fdd6a867a675afcb58f7052605614"
}
Frame {
msec: 3968
- hash: "93e4a0d5645d1cfc916f1e8422655555"
+ hash: "b2fb0dbbec01490243f37fe5f80ab6c7"
}
Frame {
msec: 3984
- hash: "29080bfabb87160b7c51385fb36b474b"
+ hash: "2bc1df7a913b1948ee7bb77eeaa55aa2"
}
Frame {
msec: 4000
- hash: "9da2d83edc9d35f00fb8a159e79de4d9"
+ hash: "82c6430d85c6a94c4b55a9529d2bc78f"
}
Frame {
msec: 4016
- hash: "5505a42d4788f00cfc7499fbfda851ce"
+ hash: "463e70dc9a9bdabdc158199bdcd7d2fa"
}
Frame {
msec: 4032
- hash: "bdd3040ab16fa9ffdd2fbc66b06699f8"
+ hash: "c1e9553327f060b70caa713bf3015342"
}
Frame {
msec: 4048
- hash: "2a347e30a20c693a9440caa60ade0a0f"
+ hash: "42f7f505d4e5ef316240e4f287a039bf"
}
Frame {
msec: 4064
- hash: "0307f1857c091a639d47f112ce1a2f5a"
+ hash: "200500f600ffe43c5ad4d057bcfc0831"
}
Frame {
msec: 4080
- hash: "778d18e539bbd562ebe39283a6315df1"
+ hash: "22e78edb813f7830776b2603b0aaae5c"
}
Frame {
msec: 4096
- hash: "0369cf6c3d1f5db2e92ee1f7c5d3b8ed"
+ hash: "32ebf3490832fd0693b1b922b4501251"
}
Frame {
msec: 4112
- hash: "9f7413587ab50f1abf776bf180ec2d6f"
+ hash: "1be622caa5ef94f87e2ec8297b6e1caa"
}
Frame {
msec: 4128
- hash: "7d04a27236485808e571e8a39f23ea17"
+ hash: "d1480529e0cb94c51c412109663e5fab"
}
Frame {
msec: 4144
- hash: "a1dff63b723473d5a4c9c59975a2fb81"
+ hash: "e55e627d6d13b647f35233f18f0cbe89"
}
Frame {
msec: 4160
- hash: "9795ea70a3b9d3b7805221a58c19e5da"
+ hash: "87d7b349cd2898de7686e5f1a14f6338"
}
Frame {
msec: 4176
- hash: "f1392c489e21107136eb8e0d1e8b427e"
+ hash: "2ac974836ee5e6092b55fcda20d7c35d"
}
Frame {
msec: 4192
- hash: "95c225ef07171a96335e99078195b06a"
+ hash: "53867256c1dac4de2f02af1ae000b49f"
}
Frame {
msec: 4208
- hash: "d46ef3e7f9cec06e8c18afc0d07be4f3"
+ hash: "08623509e9e5089fdaa1af2bf9a77eb1"
}
Frame {
msec: 4224
- hash: "b017f5b51d423bb0fca0d6df3aaded8b"
+ hash: "e4692f42c12593ee865048aef00cbeb2"
}
Frame {
msec: 4240
- hash: "60584d085b0cd6fbc436773be678597e"
+ hash: "981ad6459e3e7483bb323ab4bc514630"
}
Frame {
msec: 4256
- hash: "117951465dfd5c386826b295560d2dec"
+ hash: "79e8adfcdc9d6dae0d2b6a69e8e322fa"
}
Frame {
msec: 4272
- hash: "1b70137da5f4e024593999e93121fe8b"
+ hash: "58f967a607972faa9daa13402eeb9912"
}
Frame {
msec: 4288
- hash: "bd50dffd41941fef127f39b55c4748e0"
+ hash: "1fd5b002b049132565b6a963fb7b3bb6"
}
Frame {
msec: 4304
- hash: "8eec34d8e1d2e22d11b85a671cd4d3aa"
+ hash: "a16c96598f47404ec5f4ef55e87a1e70"
}
Frame {
msec: 4320
- hash: "9e3c97cfad5002ef5f3fcc365aeb7bd0"
+ hash: "3c632899804812c93c7edd3e3f3d2bac"
}
Frame {
msec: 4336
- hash: "28e1cf1ee033915ea2ee39c9ab00a73d"
+ hash: "af0eb810e0273f9bacb082d9f90612df"
}
Frame {
msec: 4352
- hash: "99101a156a553f441f00221f6facbf1f"
+ hash: "728d7ac4a5410482c7d86d03c2d8a996"
}
Frame {
msec: 4368
- hash: "419023e5d59d16c26b35bee7d3cea559"
+ hash: "416e76064f2be71a03eddddf61a33cb0"
}
Frame {
msec: 4384
- hash: "485d23519293975b04031fe4baa5c276"
+ hash: "c41f20b4ac9a7b34eefd066f77ea351a"
}
Frame {
msec: 4400
- hash: "c8bc60735e0ede26dbaf228294853f9a"
+ hash: "821d51db415a210b09ebdf8d861aadf2"
}
Frame {
msec: 4416
- hash: "ada3680b807d59843e3adf6640704066"
+ hash: "9394266815a52f1779858bb088d557dc"
}
Frame {
msec: 4432
- hash: "3e28f3adf9241512cd0d6918d81ffffb"
+ hash: "cc475d1589665414e5aef051ec237ef4"
}
Frame {
msec: 4448
- hash: "8f339acc33cbc89ae1c62391ce021bb3"
+ hash: "a95f3b8128faa7820f36391fa9bd579f"
}
Frame {
msec: 4464
- hash: "d303960c0853a90557d64a04b8283c94"
+ hash: "d52687293a11891c364de52525039203"
}
Frame {
msec: 4480
- hash: "f907dbdacf2cfa9fdf8f9c8dead5b4c4"
+ hash: "5333dc4f65b2f1e066edcd23f7621bd7"
}
Frame {
msec: 4496
- hash: "30c6e6f283f4a3f538cdda9c2e92de8c"
+ hash: "797bb5e27b2fe2b733a54402433901b4"
}
Frame {
msec: 4512
- hash: "04d2ac55774b43107a43a7d33764199b"
+ hash: "84c610cdff7f8b04a34977216e37847d"
}
Frame {
msec: 4528
- hash: "cddf3e111cbc59e721725daa1d8a0c31"
+ hash: "0317f0406a566b2851c8bda62900e40c"
}
Frame {
msec: 4544
- hash: "15b1b63cd1695207ebf9f04387be0739"
+ hash: "6538ecd7abd35234c5cc5c2a17249fc1"
}
Frame {
msec: 4560
- hash: "690769b9bbe86a3c5b1fbdee39615fbd"
+ hash: "f9019150a132eb5f5cfafcd5337aff7a"
}
Frame {
msec: 4576
- hash: "2bd640d8ddbf878d808f22656fef1ed9"
+ hash: "0f0136fffbc65c02cee249ece4c8c0ef"
}
Frame {
msec: 4592
- hash: "a654f1e4519bf883d554276ebbe96323"
+ hash: "0027e0d236b8b33a451a0cc35e81b4ce"
}
Frame {
msec: 4608
- hash: "68f0313cfc3f51a0bb9b47c5407c19b6"
+ hash: "ac2f86b2d4f29f223fb78440d67ccd31"
}
Frame {
msec: 4624
- hash: "77f29806b084de4cabf7ab9bf1a93d5e"
+ hash: "a6eb112a10c849e337f816ee408f22a6"
}
Frame {
msec: 4640
- hash: "f9991189e3282d107b98fb0ae5f5ef00"
+ hash: "dafbb01f2615a2513310478ebe484a05"
}
Frame {
msec: 4656
- hash: "0cd1f2f6e347d48feea1b26a4968dec7"
+ hash: "17c400c4c29652dc278980ab578b75b3"
}
Frame {
msec: 4672
- hash: "e75a6f6a088e2289042572a161ffb0e9"
+ hash: "48696c02a2a4839b893a4c0b431b78a3"
}
Frame {
msec: 4688
- hash: "5a541081444c0a71128223a4c4c3144c"
+ hash: "04e05c7e722e53299d24cd0f1b7d17ee"
}
Frame {
msec: 4704
- hash: "6813d442cc610f346a5441ed0cd723e5"
+ hash: "55d158f13ffc7ccde5ee368656d2830b"
}
Frame {
msec: 4720
- hash: "24ec539bc57899819915f833f26deacd"
+ hash: "fa478e1575acedae023322a520171a5b"
}
Frame {
msec: 4736
- hash: "3a7ed1b4b533b817674aa141c420cd61"
+ hash: "e2147ddd6e19fde80bb76da24011400c"
}
Frame {
msec: 4752
- hash: "d0a643fae97bb152e97ca60e96299003"
+ hash: "44ee0144db4c55aa90d2a931d83a895e"
}
Frame {
msec: 4768
- hash: "c84093931520f4661eff6645091a294b"
+ hash: "552e87bbce4ad48006c899052a2c8cad"
}
Frame {
msec: 4784
- hash: "81e7ceaece82505a4a16ead195a66162"
+ hash: "3b6efe225303566f751c3f884ac8c069"
}
Frame {
msec: 4800
- image: "follow.4.png"
+ hash: "3a7175916d1dc103506061607b910550"
}
Frame {
msec: 4816
- hash: "a510d302d2441b9a07463aed8b592d32"
+ image: "follow.5.png"
}
Frame {
msec: 4832
- hash: "d1824ced8af34ad9edb36a58ae9aa7f5"
+ hash: "b2e5d5c14b02a13bca62673f87e85627"
}
Frame {
msec: 4848
- hash: "167b9a49fbb94908e09e7e9c9147cd8b"
+ hash: "bd89a911d6fb13e4e841f8ee5b8b42af"
}
Frame {
msec: 4864
- hash: "442d5f0906840de526d59a80ada322c0"
+ hash: "89795784185e83d0299e656f2eec73c8"
}
Frame {
msec: 4880
- hash: "78206c4d4d23c7c1ba888b9062b09432"
+ hash: "5b6d6fe78f341bdf0eb4bedfe3d975d0"
}
Frame {
msec: 4896
- hash: "e898202cfebbff1952efc6e01254d855"
+ hash: "e246bc451ee48e16ef6dee20d6256e9c"
}
Frame {
msec: 4912
- hash: "ab31dc7bbad2b0552359866bb8d92f0c"
+ hash: "8c1bc37b1b268743aa314247ea949ef5"
}
Frame {
msec: 4928
- hash: "f093304e88964376baf9721d53d4fb49"
+ hash: "04f34203c34dc87efc708bfb232663df"
}
Frame {
msec: 4944
- hash: "3ef76f3e1c44d13c3a469bd192ff7b5d"
+ hash: "d37a48545e81970d16951e3388f0ff8c"
}
Frame {
msec: 4960
- hash: "5d3b6d0d91f8cc5b89e39407bc3b5a15"
+ hash: "9411e846c9f59cc915288efb59d4c9de"
}
Frame {
msec: 4976
- hash: "3c73573f12f49b34e1d990a55ad913fa"
+ hash: "6ee179741ac74837708afb55943f15bd"
}
Frame {
msec: 4992
- hash: "d1bac071b01a1c6fddab90cdc435fad4"
+ hash: "f626fc3166bd5b01171271ae9bfa9b22"
}
Frame {
msec: 5008
- hash: "36a219aadec910f1dbef616c641e1d2b"
+ hash: "e22898b2c0c566bbf531223234f98327"
}
Frame {
msec: 5024
- hash: "5871fc67d361cc988551592ee21dfb23"
+ hash: "1343d90c5eae70713cd49110fe61237b"
}
Frame {
msec: 5040
- hash: "6e65ee6c814b9a9da205c36925e663bf"
+ hash: "493d9322da6d01979a3f1a120c265f8c"
}
Frame {
msec: 5056
- hash: "290b20fa8e91d34000d7c2d81745f6d2"
+ hash: "defccc76caf3a7c7c67e8abf5ccc2def"
}
Frame {
msec: 5072
- hash: "19e7405a9083a8143f7bb040f8837b29"
+ hash: "fe3cad9227fcfa7ba2238465078f2ac7"
}
Frame {
msec: 5088
- hash: "c0a0fa2b4c1ceb6c70594994a1ac8713"
+ hash: "66ebfeee3a63323c7d8b949db9aafd7e"
}
Frame {
msec: 5104
- hash: "c236224c16743fb606deb78bcb8afc8d"
+ hash: "805820b382d005894f9a615004b97b0d"
}
Frame {
msec: 5120
- hash: "7d44db15eb300b4338ffc26e9bcfce20"
+ hash: "eee1620f47bb071de8a9c788d1fd258e"
}
Frame {
msec: 5136
- hash: "067a79148a194c45c6f32d85316a1e11"
+ hash: "f5a7d9a81fcfc8cfb9e7cc8ead0f1ff8"
}
Frame {
msec: 5152
- hash: "9075c379044476994a87f0fdcce8e332"
+ hash: "249903ee123090b27019350f120c8b79"
}
Frame {
msec: 5168
- hash: "b2316988fbd51096a4f512e71fe7d0a2"
+ hash: "019793a363c905809af32bf34ef52ec0"
}
Frame {
msec: 5184
- hash: "280f70877d93af5f84e178aad6a102d8"
+ hash: "4f5ad5a3ebb6eca73dd7567199d07b08"
}
Frame {
msec: 5200
- hash: "3eef4ae7e43a8cf1cd9dd562237296f8"
+ hash: "fdc1b42d50c7a5c45458498788ff0abd"
}
Frame {
msec: 5216
- hash: "e3184f77ce3a47ca4dca6386f42d7fec"
+ hash: "cc091469598cad28d0a00690f1acb412"
}
Frame {
msec: 5232
- hash: "a2a5df66fe4808ea8d466cac84ba910c"
+ hash: "5c8757e1f8f34a31d8b3717b64b84c07"
}
Frame {
msec: 5248
- hash: "9f8a0e54788112d6c30482e840504f35"
+ hash: "5da75559f60eac1b9f518ed55a174e5b"
}
Frame {
msec: 5264
- hash: "ae69cf84798844f9f360c86790feaecd"
+ hash: "1214c08daec4dcfb27690fdc18f2ac28"
}
Frame {
msec: 5280
- hash: "0244526572acb6266db5b7eb9d29c6fc"
+ hash: "87d92c1ba694d0cf187d8616b0f622f0"
}
Frame {
msec: 5296
- hash: "8fb53d60b95ddb5aef27442934ea9983"
+ hash: "d4af63638fe69b6c4f087a935351057e"
}
Frame {
msec: 5312
- hash: "930fcfde491b4f5681e3861764003895"
+ hash: "0573c41f34c2c117cada987e4ee813a5"
}
Frame {
msec: 5328
- hash: "bcdcd0a637112d113ebe11dc18823237"
+ hash: "f179ef4b7bf0f915e25ffd8168a9126f"
}
Frame {
msec: 5344
- hash: "65a564d5a5afbc14c0cdad4d52753507"
+ hash: "1618bf7c94e7898392eb5ffbf44b8aff"
}
Frame {
msec: 5360
- hash: "0c5056d438d2d54938f31ef5f996673a"
+ hash: "5af24b902e3729d544f70c77e189b8a7"
}
Frame {
msec: 5376
- hash: "11c157ad2236fc390ffbdf339366cbc1"
+ hash: "4e5789404e58113cc2d8aa737a03ab58"
}
Frame {
msec: 5392
- hash: "6cb341b1f281a97a35c2e41bfd4c4d9d"
+ hash: "e4bf91a249e47597e959bbaf25f0724d"
}
Frame {
msec: 5408
- hash: "553a945f7f19f70ddae4ebe88e52a79b"
+ hash: "39a3e3d6269522ed57a0e37319ab94d5"
}
Frame {
msec: 5424
- hash: "d10b42b4095a2474e66a5a322f72e936"
+ hash: "f2e2e47922e7e058e14537a0455cd77f"
}
Frame {
msec: 5440
- hash: "0f943d61e8072d70eddee8aa1ba0de5a"
+ hash: "64abb3f2c9e05fd1dd7490d11c74f06a"
}
Frame {
msec: 5456
- hash: "3df18e237b666e78d57857739b759e6d"
+ hash: "a9bf45c29536ca34c42aa916747b485b"
}
Frame {
msec: 5472
- hash: "1ddc0bfdb2ca7b6dee63f1024e62f26e"
+ hash: "da21839b6635e5c4e0a589d163e62752"
}
Frame {
msec: 5488
- hash: "aaa397714528f41238059e3a88833abc"
+ hash: "f31e49258bcbb2a144daa320e4567df1"
}
Frame {
msec: 5504
- hash: "c94bd69f925c782656afc5f9618180a6"
+ hash: "f96c5b39f94bf2ac1e3f4de96767d720"
}
Frame {
msec: 5520
- hash: "824ff8c0e1ab43e3c0eaa79b7cc19b9c"
+ hash: "281b90d1056803093cc37f30465f0e73"
}
Frame {
msec: 5536
- hash: "6c440a0b2293811335bdbf2c4f25f47d"
+ hash: "d63a2424e1947328957ad8f5f0bec043"
}
Frame {
msec: 5552
- hash: "bfc7936cdf833d5b720ec9baca740112"
+ hash: "bd510a0de7df02b1b5741824b6f90944"
}
Frame {
msec: 5568
- hash: "375fa305dbae2872dc9b20e59381cc0c"
+ hash: "47dc4e5ff91cb84c89dd0fc0459f75f2"
}
Frame {
msec: 5584
- hash: "fffd6173aa49e74164dc17a238bcd830"
+ hash: "4bc46b5e116dd30e1db4d4bb650ed6ed"
}
Frame {
msec: 5600
- hash: "44d9007e00fab161fd393b653255d7f4"
+ hash: "c6964b89f1962f120028057d1c588694"
}
Frame {
msec: 5616
- hash: "f669ee25c58b4fa20a01705d334f0065"
+ hash: "39a77544a1c88b68cb63da9a8910a35e"
}
Frame {
msec: 5632
- hash: "2dbb7d57711b67d5d9e1b81f70e22d34"
+ hash: "bd8ac21d7a507a8e195437ccac254ecc"
}
Frame {
msec: 5648
- hash: "19351b91448265cb95c1670ee283c611"
+ hash: "7b39b2667a8f8efae20ec8696e35dbc4"
}
Frame {
msec: 5664
- hash: "19351b91448265cb95c1670ee283c611"
+ hash: "7b39b2667a8f8efae20ec8696e35dbc4"
}
Frame {
msec: 5680
- hash: "3a24b99d048348a21f4e4bd69393de89"
+ hash: "8628f4f24670d17965fec40a02e0196f"
}
Frame {
msec: 5696
- hash: "35a6fe955a52950bbfa954a453e4008e"
+ hash: "515903d9896a853cb18cc7b7c45c1cce"
}
Frame {
msec: 5712
- hash: "896f4ec28c976237b34fb2725a44460e"
+ hash: "b7a3f70bedcb3f90a2e294b447e05f70"
}
Frame {
msec: 5728
- hash: "ed3008ea950ec84c57518e573ea36d15"
+ hash: "8e8b104ef82b1e219021aa38276f8b45"
}
Frame {
msec: 5744
- hash: "3447c7be992759f772c1db2033eead99"
+ hash: "70abe79da860bebd2d17a8c7abb20b4e"
}
Frame {
msec: 5760
- image: "follow.5.png"
+ hash: "d99af176fb6cf9d9cbcf7cf4286a165c"
}
Frame {
msec: 5776
- hash: "6354ebe3aa919a52902b5a5346b473ae"
+ image: "follow.6.png"
}
Frame {
msec: 5792
- hash: "adc55f2fcf312a90b025a75fa80aa079"
+ hash: "67809c7daad6716d0a664c52de9906ce"
}
Frame {
msec: 5808
- hash: "3ac85cad400d2b8e4f33798f4f6b7b42"
+ hash: "29a27fd59b7316ce305803482686ea58"
}
Frame {
msec: 5824
- hash: "1c115efd84ccbe489d24c3c521c4a61c"
+ hash: "25b9ca40d1d6208d026e5c965923f8fb"
}
Frame {
msec: 5840
- hash: "39518f1bbc0c4aba6ff517bc3dc7c279"
+ hash: "126b1542415aea11dbb35492be4f66aa"
}
Frame {
msec: 5856
- hash: "7bd28d32996f4de61c415d3217da16d0"
+ hash: "26ca7034536e0e690236797df740f19a"
}
Frame {
msec: 5872
- hash: "f5d06e25d775bf8db07e95625a712733"
+ hash: "fec9db60af63a4712b0da037cf1d89cd"
}
Frame {
msec: 5888
- hash: "4820ea6ea3be88af2f86111c547a19d7"
+ hash: "d9b7e2729c75ca0c0f33b542525c4880"
}
Frame {
msec: 5904
- hash: "fa6e681c368118b7f135a47ae8fc12ff"
+ hash: "89149d16b893ea432b6d0fb05ead48cb"
}
Frame {
msec: 5920
- hash: "f6b30e618aeeb837d2b3eca270b0a060"
+ hash: "8e389d2ca706277ce06e1da557e2e6c1"
}
Frame {
msec: 5936
- hash: "ac8504bde8d3063a8bf02b9d4b69d755"
+ hash: "fc5c74473410da1ddd451c5901572172"
}
Frame {
msec: 5952
- hash: "9670537bb77caa8e23fda7bbfa96ca60"
+ hash: "54514970eadff9362d31499a737e4c95"
}
Frame {
msec: 5968
- hash: "8cd292865ce5c1d240e9ddc93881a0ed"
+ hash: "d5953bc29532ec49c20ee552c8756ba1"
}
Frame {
msec: 5984
- hash: "de112013e526203d151c46e6cfba9f92"
+ hash: "5f03be3ed5824e6a6f8f371ce6a47997"
}
Frame {
msec: 6000
- hash: "cd61066e697de8c055aaa168791c2d8c"
+ hash: "0431e2ec4765167d0099c59df400f3fd"
}
Frame {
msec: 6016
- hash: "cd61066e697de8c055aaa168791c2d8c"
+ hash: "0431e2ec4765167d0099c59df400f3fd"
}
Frame {
msec: 6032
- hash: "e68b27ff14aac03c827fd43ac488d23e"
+ hash: "403e1f235770f2b7c8b1b2e86aea69a5"
}
Frame {
msec: 6048
- hash: "e68b27ff14aac03c827fd43ac488d23e"
+ hash: "403e1f235770f2b7c8b1b2e86aea69a5"
}
Frame {
msec: 6064
- hash: "1f61d857a8c26587fbda5895c603441a"
+ hash: "32ff9f959598972f5a264418587dca1f"
}
Frame {
msec: 6080
- hash: "1e0dffdd02e05ade1ae444427d4aa345"
+ hash: "b4c7c07e52a684f7ce21e47a4d66356a"
}
Frame {
msec: 6096
- hash: "9a416ee7a1de9ac45ab2d609233c9520"
+ hash: "e0f214bed2c3a31f473952929b8f3ea9"
}
Frame {
msec: 6112
- hash: "dfa35bf1cd908011c3214a506bcbdcb8"
+ hash: "15328b8a205965f3f29fc63a6a8ac8ed"
}
Frame {
msec: 6128
- hash: "bd502dc72dce4af3036f7af9ed7cf9e9"
+ hash: "72c46ed63633e6879373f4783df25d8b"
}
Frame {
msec: 6144
- hash: "8cd5edce652013a2ed4bf95693259538"
+ hash: "ae73e0adbdaacc648c2e97840cef4194"
}
Frame {
msec: 6160
- hash: "a38ed1532a40210ad7da4c0d4d1a7195"
+ hash: "df9451c6634d72e6f794e962b3591086"
}
Frame {
msec: 6176
- hash: "8ac8a8df937da526bbffb9a3590d89ac"
+ hash: "773e10bbd133e64457e7ddbc73a10fc2"
}
Frame {
msec: 6192
- hash: "07527cb9a4494e11f4c9f99eb72598b9"
+ hash: "c79abb97eb86761b69053d77156dffd4"
}
Frame {
msec: 6208
- hash: "655b0327ef0f8711810714ba50f2f8cc"
+ hash: "d927934b19ffd55ea7cea1916983351a"
}
Frame {
msec: 6224
- hash: "4c1ce8b4eb16c69614e2560c04ad48cf"
+ hash: "ae5058d935c1e44d103be66921b19e77"
}
Frame {
msec: 6240
- hash: "7a382ae4e6a48826eaa2c83ee7a73fb2"
+ hash: "b6a1446b6be054d5785ba52ac23f8aa8"
}
Frame {
msec: 6256
- hash: "5acd5f250c5b32d9006ed68dfecbfa1c"
+ hash: "3dffbffded44249fdbe58aecd24ab97f"
}
Frame {
msec: 6272
- hash: "3189e5a89d7b2ba1e6a06f6e3070e8c1"
+ hash: "56445ab8554a23a786b70e4fd9f40451"
}
Frame {
msec: 6288
- hash: "3189e5a89d7b2ba1e6a06f6e3070e8c1"
+ hash: "56445ab8554a23a786b70e4fd9f40451"
}
Frame {
msec: 6304
- hash: "07e5f1277558bfe7638b00cf9d967baf"
+ hash: "257ce16f529b99f28beb2e57625f52ee"
}
Frame {
msec: 6320
- hash: "07e5f1277558bfe7638b00cf9d967baf"
+ hash: "257ce16f529b99f28beb2e57625f52ee"
}
Frame {
msec: 6336
- hash: "07e5f1277558bfe7638b00cf9d967baf"
+ hash: "257ce16f529b99f28beb2e57625f52ee"
}
Frame {
msec: 6352
- hash: "07e5f1277558bfe7638b00cf9d967baf"
+ hash: "257ce16f529b99f28beb2e57625f52ee"
}
Frame {
msec: 6368
- hash: "07e5f1277558bfe7638b00cf9d967baf"
+ hash: "257ce16f529b99f28beb2e57625f52ee"
}
Frame {
msec: 6384
- hash: "877aca1c64e588845329ca8a38222604"
+ hash: "cb2b0ddbc7b8485fbf32a537e5a98d0e"
}
Frame {
msec: 6400
- hash: "877aca1c64e588845329ca8a38222604"
+ hash: "cb2b0ddbc7b8485fbf32a537e5a98d0e"
}
Frame {
msec: 6416
- hash: "877aca1c64e588845329ca8a38222604"
+ hash: "cb2b0ddbc7b8485fbf32a537e5a98d0e"
}
Frame {
msec: 6432
- hash: "877aca1c64e588845329ca8a38222604"
+ hash: "cb2b0ddbc7b8485fbf32a537e5a98d0e"
}
Frame {
msec: 6448
- hash: "877aca1c64e588845329ca8a38222604"
+ hash: "cb2b0ddbc7b8485fbf32a537e5a98d0e"
}
Frame {
msec: 6464
- hash: "b0f28e923f93dcdcea8460ca9d8cd674"
+ hash: "fa87436d5e51122022a005d815f97c32"
}
Frame {
msec: 6480
- hash: "b0f28e923f93dcdcea8460ca9d8cd674"
+ hash: "fa87436d5e51122022a005d815f97c32"
}
Frame {
msec: 6496
- hash: "b0f28e923f93dcdcea8460ca9d8cd674"
+ hash: "fa87436d5e51122022a005d815f97c32"
}
Frame {
msec: 6512
- hash: "b0f28e923f93dcdcea8460ca9d8cd674"
+ hash: "fa87436d5e51122022a005d815f97c32"
}
Frame {
msec: 6528
- hash: "b0f28e923f93dcdcea8460ca9d8cd674"
+ hash: "fa87436d5e51122022a005d815f97c32"
}
Frame {
msec: 6544
- hash: "b0f28e923f93dcdcea8460ca9d8cd674"
+ hash: "fa87436d5e51122022a005d815f97c32"
}
Frame {
msec: 6560
- hash: "b0f28e923f93dcdcea8460ca9d8cd674"
+ hash: "fa87436d5e51122022a005d815f97c32"
}
Frame {
msec: 6576
- hash: "b0f28e923f93dcdcea8460ca9d8cd674"
+ hash: "fa87436d5e51122022a005d815f97c32"
}
Frame {
msec: 6592
- hash: "b0f28e923f93dcdcea8460ca9d8cd674"
+ hash: "fa87436d5e51122022a005d815f97c32"
}
Frame {
msec: 6608
- hash: "b0f28e923f93dcdcea8460ca9d8cd674"
+ hash: "fa87436d5e51122022a005d815f97c32"
}
Frame {
msec: 6624
- hash: "b0f28e923f93dcdcea8460ca9d8cd674"
+ hash: "fa87436d5e51122022a005d815f97c32"
}
Frame {
msec: 6640
- hash: "b0f28e923f93dcdcea8460ca9d8cd674"
+ hash: "fa87436d5e51122022a005d815f97c32"
}
Frame {
msec: 6656
- hash: "b0f28e923f93dcdcea8460ca9d8cd674"
+ hash: "fa87436d5e51122022a005d815f97c32"
}
Frame {
msec: 6672
- hash: "b0f28e923f93dcdcea8460ca9d8cd674"
+ hash: "fa87436d5e51122022a005d815f97c32"
}
Frame {
msec: 6688
- hash: "b0f28e923f93dcdcea8460ca9d8cd674"
+ hash: "fa87436d5e51122022a005d815f97c32"
}
Frame {
msec: 6704
- hash: "228920e994ebf71d542c71ce8263614e"
+ hash: "da52e87ccd157c0330c07e480b8b0c06"
}
Frame {
msec: 6720
- image: "follow.6.png"
+ hash: "da52e87ccd157c0330c07e480b8b0c06"
}
Frame {
msec: 6736
- hash: "228920e994ebf71d542c71ce8263614e"
+ image: "follow.7.png"
}
Frame {
msec: 6752
- hash: "228920e994ebf71d542c71ce8263614e"
+ hash: "da52e87ccd157c0330c07e480b8b0c06"
}
Frame {
msec: 6768
- hash: "228920e994ebf71d542c71ce8263614e"
+ hash: "da52e87ccd157c0330c07e480b8b0c06"
}
Frame {
msec: 6784
- hash: "228920e994ebf71d542c71ce8263614e"
+ hash: "da52e87ccd157c0330c07e480b8b0c06"
}
Frame {
msec: 6800
- hash: "228920e994ebf71d542c71ce8263614e"
+ hash: "da52e87ccd157c0330c07e480b8b0c06"
}
Frame {
msec: 6816
- hash: "228920e994ebf71d542c71ce8263614e"
+ hash: "da52e87ccd157c0330c07e480b8b0c06"
}
Frame {
msec: 6832
- hash: "07e5f1277558bfe7638b00cf9d967baf"
+ hash: "257ce16f529b99f28beb2e57625f52ee"
}
Key {
type: 6
key: 16777249
- modifiers: 67108864
+ modifiers: 0
text: ""
autorep: false
count: 1
}
Frame {
msec: 6848
- hash: "3189e5a89d7b2ba1e6a06f6e3070e8c1"
+ hash: "56445ab8554a23a786b70e4fd9f40451"
}
Frame {
msec: 6864
- hash: "3189e5a89d7b2ba1e6a06f6e3070e8c1"
+ hash: "56445ab8554a23a786b70e4fd9f40451"
}
Frame {
msec: 6880
- hash: "3189e5a89d7b2ba1e6a06f6e3070e8c1"
+ hash: "56445ab8554a23a786b70e4fd9f40451"
}
Frame {
msec: 6896
- hash: "3189e5a89d7b2ba1e6a06f6e3070e8c1"
+ hash: "56445ab8554a23a786b70e4fd9f40451"
}
Frame {
msec: 6912
- hash: "3189e5a89d7b2ba1e6a06f6e3070e8c1"
+ hash: "56445ab8554a23a786b70e4fd9f40451"
}
Frame {
msec: 6928
- hash: "3189e5a89d7b2ba1e6a06f6e3070e8c1"
+ hash: "56445ab8554a23a786b70e4fd9f40451"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/align/data-MAC/multilineAlign.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/align/data-MAC/multilineAlign.0.png
index 8b6329d95f..1b808efd3e 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/align/data-MAC/multilineAlign.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/align/data-MAC/multilineAlign.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/align/data-MAC/multilineAlign.qml b/tests/auto/declarative/qmlvisual/qdeclarativetext/align/data-MAC/multilineAlign.qml
index 85c0cce795..5485174eb1 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/align/data-MAC/multilineAlign.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/align/data-MAC/multilineAlign.qml
@@ -6,242 +6,242 @@ VisualTest {
}
Frame {
msec: 16
- hash: "75c15f88551f961727b547082216d0bb"
+ image: "multilineAlign.0.png"
}
Frame {
msec: 32
- hash: "75c15f88551f961727b547082216d0bb"
+ hash: "3fc7ab44f913d350f7aef342b958e56d"
}
Frame {
msec: 48
- hash: "75c15f88551f961727b547082216d0bb"
+ hash: "3fc7ab44f913d350f7aef342b958e56d"
}
Frame {
msec: 64
- hash: "75c15f88551f961727b547082216d0bb"
+ hash: "3fc7ab44f913d350f7aef342b958e56d"
}
Frame {
msec: 80
- hash: "75c15f88551f961727b547082216d0bb"
+ hash: "3fc7ab44f913d350f7aef342b958e56d"
}
Frame {
msec: 96
- hash: "75c15f88551f961727b547082216d0bb"
+ hash: "3fc7ab44f913d350f7aef342b958e56d"
}
Frame {
msec: 112
- hash: "75c15f88551f961727b547082216d0bb"
+ hash: "3fc7ab44f913d350f7aef342b958e56d"
}
Frame {
msec: 128
- hash: "75c15f88551f961727b547082216d0bb"
+ hash: "3fc7ab44f913d350f7aef342b958e56d"
}
Frame {
msec: 144
- hash: "75c15f88551f961727b547082216d0bb"
+ hash: "3fc7ab44f913d350f7aef342b958e56d"
}
Frame {
msec: 160
- hash: "75c15f88551f961727b547082216d0bb"
+ hash: "3fc7ab44f913d350f7aef342b958e56d"
}
Frame {
msec: 176
- hash: "1a58de7b864ae75e65f69461155cbfb2"
+ hash: "a495a8a95c8aa82ac437c2f2970bd42d"
}
Frame {
msec: 192
- hash: "1a58de7b864ae75e65f69461155cbfb2"
+ hash: "a495a8a95c8aa82ac437c2f2970bd42d"
}
Frame {
msec: 208
- hash: "1a58de7b864ae75e65f69461155cbfb2"
+ hash: "a495a8a95c8aa82ac437c2f2970bd42d"
}
Frame {
msec: 224
- hash: "1a58de7b864ae75e65f69461155cbfb2"
+ hash: "a495a8a95c8aa82ac437c2f2970bd42d"
}
Frame {
msec: 240
- hash: "1a58de7b864ae75e65f69461155cbfb2"
+ hash: "a495a8a95c8aa82ac437c2f2970bd42d"
}
Frame {
msec: 256
- hash: "1a58de7b864ae75e65f69461155cbfb2"
+ hash: "a495a8a95c8aa82ac437c2f2970bd42d"
}
Frame {
msec: 272
- hash: "1a58de7b864ae75e65f69461155cbfb2"
+ hash: "a495a8a95c8aa82ac437c2f2970bd42d"
}
Frame {
msec: 288
- hash: "1a58de7b864ae75e65f69461155cbfb2"
+ hash: "a495a8a95c8aa82ac437c2f2970bd42d"
}
Frame {
msec: 304
- hash: "1a58de7b864ae75e65f69461155cbfb2"
+ hash: "a495a8a95c8aa82ac437c2f2970bd42d"
}
Frame {
msec: 320
- hash: "1a58de7b864ae75e65f69461155cbfb2"
+ hash: "a495a8a95c8aa82ac437c2f2970bd42d"
}
Frame {
msec: 336
- hash: "8a6b615ce522e7aa1011bc1d16193871"
+ hash: "e2d2a6e60537b9a434d0029ef5ff26dc"
}
Frame {
msec: 352
- hash: "8a6b615ce522e7aa1011bc1d16193871"
+ hash: "e2d2a6e60537b9a434d0029ef5ff26dc"
}
Frame {
msec: 368
- hash: "8a6b615ce522e7aa1011bc1d16193871"
+ hash: "e2d2a6e60537b9a434d0029ef5ff26dc"
}
Frame {
msec: 384
- hash: "8a6b615ce522e7aa1011bc1d16193871"
+ hash: "e2d2a6e60537b9a434d0029ef5ff26dc"
}
Frame {
msec: 400
- hash: "8a6b615ce522e7aa1011bc1d16193871"
+ hash: "e2d2a6e60537b9a434d0029ef5ff26dc"
}
Frame {
msec: 416
- hash: "8a6b615ce522e7aa1011bc1d16193871"
+ hash: "e2d2a6e60537b9a434d0029ef5ff26dc"
}
Frame {
msec: 432
- hash: "8a6b615ce522e7aa1011bc1d16193871"
+ hash: "e2d2a6e60537b9a434d0029ef5ff26dc"
}
Frame {
msec: 448
- hash: "8a6b615ce522e7aa1011bc1d16193871"
+ hash: "e2d2a6e60537b9a434d0029ef5ff26dc"
}
Frame {
msec: 464
- hash: "8a6b615ce522e7aa1011bc1d16193871"
+ hash: "e2d2a6e60537b9a434d0029ef5ff26dc"
}
Frame {
msec: 480
- hash: "8a6b615ce522e7aa1011bc1d16193871"
+ hash: "e2d2a6e60537b9a434d0029ef5ff26dc"
}
Frame {
msec: 496
- hash: "17141b7167d2249238c15cf751b3d8b6"
+ hash: "00cba961e67c2124ace75dddb657cd6c"
}
Frame {
msec: 512
- hash: "17141b7167d2249238c15cf751b3d8b6"
+ hash: "00cba961e67c2124ace75dddb657cd6c"
}
Frame {
msec: 528
- hash: "17141b7167d2249238c15cf751b3d8b6"
+ hash: "00cba961e67c2124ace75dddb657cd6c"
}
Frame {
msec: 544
- hash: "17141b7167d2249238c15cf751b3d8b6"
+ hash: "00cba961e67c2124ace75dddb657cd6c"
}
Frame {
msec: 560
- hash: "17141b7167d2249238c15cf751b3d8b6"
+ hash: "00cba961e67c2124ace75dddb657cd6c"
}
Frame {
msec: 576
- hash: "17141b7167d2249238c15cf751b3d8b6"
+ hash: "00cba961e67c2124ace75dddb657cd6c"
}
Frame {
msec: 592
- hash: "17141b7167d2249238c15cf751b3d8b6"
+ hash: "00cba961e67c2124ace75dddb657cd6c"
}
Frame {
msec: 608
- hash: "17141b7167d2249238c15cf751b3d8b6"
+ hash: "00cba961e67c2124ace75dddb657cd6c"
}
Frame {
msec: 624
- hash: "17141b7167d2249238c15cf751b3d8b6"
+ hash: "00cba961e67c2124ace75dddb657cd6c"
}
Frame {
msec: 640
- hash: "17141b7167d2249238c15cf751b3d8b6"
+ hash: "00cba961e67c2124ace75dddb657cd6c"
}
Frame {
msec: 656
- hash: "92e4f7c09e41b5fb97feb0093e8d9c1f"
+ hash: "31d518de83e195def2d957b7d86b98e5"
}
Frame {
msec: 672
- hash: "92e4f7c09e41b5fb97feb0093e8d9c1f"
+ hash: "31d518de83e195def2d957b7d86b98e5"
}
Frame {
msec: 688
- hash: "92e4f7c09e41b5fb97feb0093e8d9c1f"
+ hash: "31d518de83e195def2d957b7d86b98e5"
}
Frame {
msec: 704
- hash: "92e4f7c09e41b5fb97feb0093e8d9c1f"
+ hash: "31d518de83e195def2d957b7d86b98e5"
}
Frame {
msec: 720
- hash: "92e4f7c09e41b5fb97feb0093e8d9c1f"
+ hash: "31d518de83e195def2d957b7d86b98e5"
}
Frame {
msec: 736
- hash: "92e4f7c09e41b5fb97feb0093e8d9c1f"
+ hash: "31d518de83e195def2d957b7d86b98e5"
}
Frame {
msec: 752
- hash: "92e4f7c09e41b5fb97feb0093e8d9c1f"
+ hash: "31d518de83e195def2d957b7d86b98e5"
}
Frame {
msec: 768
- hash: "92e4f7c09e41b5fb97feb0093e8d9c1f"
+ hash: "31d518de83e195def2d957b7d86b98e5"
}
Frame {
msec: 784
- hash: "92e4f7c09e41b5fb97feb0093e8d9c1f"
+ hash: "31d518de83e195def2d957b7d86b98e5"
}
Frame {
msec: 800
- hash: "92e4f7c09e41b5fb97feb0093e8d9c1f"
+ hash: "31d518de83e195def2d957b7d86b98e5"
}
Frame {
msec: 816
- hash: "92e4f7c09e41b5fb97feb0093e8d9c1f"
+ hash: "31d518de83e195def2d957b7d86b98e5"
}
Frame {
msec: 832
- hash: "92e4f7c09e41b5fb97feb0093e8d9c1f"
+ hash: "31d518de83e195def2d957b7d86b98e5"
}
Frame {
msec: 848
- hash: "92e4f7c09e41b5fb97feb0093e8d9c1f"
+ hash: "31d518de83e195def2d957b7d86b98e5"
}
Frame {
msec: 864
- hash: "92e4f7c09e41b5fb97feb0093e8d9c1f"
+ hash: "31d518de83e195def2d957b7d86b98e5"
}
Frame {
msec: 880
- hash: "92e4f7c09e41b5fb97feb0093e8d9c1f"
+ hash: "31d518de83e195def2d957b7d86b98e5"
}
Frame {
msec: 896
- hash: "92e4f7c09e41b5fb97feb0093e8d9c1f"
+ hash: "31d518de83e195def2d957b7d86b98e5"
}
Frame {
msec: 912
- hash: "92e4f7c09e41b5fb97feb0093e8d9c1f"
+ hash: "31d518de83e195def2d957b7d86b98e5"
}
Frame {
msec: 928
- hash: "92e4f7c09e41b5fb97feb0093e8d9c1f"
+ hash: "31d518de83e195def2d957b7d86b98e5"
}
Frame {
msec: 944
- hash: "92e4f7c09e41b5fb97feb0093e8d9c1f"
+ hash: "31d518de83e195def2d957b7d86b98e5"
}
Frame {
msec: 960
- image: "multilineAlign.0.png"
+ hash: "31d518de83e195def2d957b7d86b98e5"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/align/data-X11/multilineAlign.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/align/data-X11/multilineAlign.0.png
index e6b2b3cc01..666d27230f 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/align/data-X11/multilineAlign.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/align/data-X11/multilineAlign.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/align/data-X11/multilineAlign.qml b/tests/auto/declarative/qmlvisual/qdeclarativetext/align/data-X11/multilineAlign.qml
index 1b43aa36cc..75e68591c1 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/align/data-X11/multilineAlign.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/align/data-X11/multilineAlign.qml
@@ -6,242 +6,242 @@ VisualTest {
}
Frame {
msec: 16
- hash: "1ec47db85ba34bf1900445a2ab87b5e3"
+ image: "multilineAlign.0.png"
}
Frame {
msec: 32
- hash: "1ec47db85ba34bf1900445a2ab87b5e3"
+ hash: "377fd9e347a2e6e0930d1422ce744c5c"
}
Frame {
msec: 48
- hash: "1ec47db85ba34bf1900445a2ab87b5e3"
+ hash: "377fd9e347a2e6e0930d1422ce744c5c"
}
Frame {
msec: 64
- hash: "1ec47db85ba34bf1900445a2ab87b5e3"
+ hash: "377fd9e347a2e6e0930d1422ce744c5c"
}
Frame {
msec: 80
- hash: "1ec47db85ba34bf1900445a2ab87b5e3"
+ hash: "377fd9e347a2e6e0930d1422ce744c5c"
}
Frame {
msec: 96
- hash: "1ec47db85ba34bf1900445a2ab87b5e3"
+ hash: "377fd9e347a2e6e0930d1422ce744c5c"
}
Frame {
msec: 112
- hash: "1ec47db85ba34bf1900445a2ab87b5e3"
+ hash: "377fd9e347a2e6e0930d1422ce744c5c"
}
Frame {
msec: 128
- hash: "1ec47db85ba34bf1900445a2ab87b5e3"
+ hash: "377fd9e347a2e6e0930d1422ce744c5c"
}
Frame {
msec: 144
- hash: "1ec47db85ba34bf1900445a2ab87b5e3"
+ hash: "377fd9e347a2e6e0930d1422ce744c5c"
}
Frame {
msec: 160
- hash: "1ec47db85ba34bf1900445a2ab87b5e3"
+ hash: "377fd9e347a2e6e0930d1422ce744c5c"
}
Frame {
msec: 176
- hash: "1fc2a63fa95e277bed60abfdecc7c82f"
+ hash: "36106ba13106d262c02c67e82bba1443"
}
Frame {
msec: 192
- hash: "1fc2a63fa95e277bed60abfdecc7c82f"
+ hash: "36106ba13106d262c02c67e82bba1443"
}
Frame {
msec: 208
- hash: "1fc2a63fa95e277bed60abfdecc7c82f"
+ hash: "36106ba13106d262c02c67e82bba1443"
}
Frame {
msec: 224
- hash: "1fc2a63fa95e277bed60abfdecc7c82f"
+ hash: "36106ba13106d262c02c67e82bba1443"
}
Frame {
msec: 240
- hash: "1fc2a63fa95e277bed60abfdecc7c82f"
+ hash: "36106ba13106d262c02c67e82bba1443"
}
Frame {
msec: 256
- hash: "1fc2a63fa95e277bed60abfdecc7c82f"
+ hash: "36106ba13106d262c02c67e82bba1443"
}
Frame {
msec: 272
- hash: "1fc2a63fa95e277bed60abfdecc7c82f"
+ hash: "36106ba13106d262c02c67e82bba1443"
}
Frame {
msec: 288
- hash: "1fc2a63fa95e277bed60abfdecc7c82f"
+ hash: "36106ba13106d262c02c67e82bba1443"
}
Frame {
msec: 304
- hash: "1fc2a63fa95e277bed60abfdecc7c82f"
+ hash: "36106ba13106d262c02c67e82bba1443"
}
Frame {
msec: 320
- hash: "1fc2a63fa95e277bed60abfdecc7c82f"
+ hash: "36106ba13106d262c02c67e82bba1443"
}
Frame {
msec: 336
- hash: "3a4e863d83f5d475e0c8c5121905bd87"
+ hash: "509d31a486ae2f83055b52ec12f33e76"
}
Frame {
msec: 352
- hash: "3a4e863d83f5d475e0c8c5121905bd87"
+ hash: "509d31a486ae2f83055b52ec12f33e76"
}
Frame {
msec: 368
- hash: "3a4e863d83f5d475e0c8c5121905bd87"
+ hash: "509d31a486ae2f83055b52ec12f33e76"
}
Frame {
msec: 384
- hash: "3a4e863d83f5d475e0c8c5121905bd87"
+ hash: "509d31a486ae2f83055b52ec12f33e76"
}
Frame {
msec: 400
- hash: "3a4e863d83f5d475e0c8c5121905bd87"
+ hash: "509d31a486ae2f83055b52ec12f33e76"
}
Frame {
msec: 416
- hash: "3a4e863d83f5d475e0c8c5121905bd87"
+ hash: "509d31a486ae2f83055b52ec12f33e76"
}
Frame {
msec: 432
- hash: "3a4e863d83f5d475e0c8c5121905bd87"
+ hash: "509d31a486ae2f83055b52ec12f33e76"
}
Frame {
msec: 448
- hash: "3a4e863d83f5d475e0c8c5121905bd87"
+ hash: "509d31a486ae2f83055b52ec12f33e76"
}
Frame {
msec: 464
- hash: "3a4e863d83f5d475e0c8c5121905bd87"
+ hash: "509d31a486ae2f83055b52ec12f33e76"
}
Frame {
msec: 480
- hash: "3a4e863d83f5d475e0c8c5121905bd87"
+ hash: "509d31a486ae2f83055b52ec12f33e76"
}
Frame {
msec: 496
- hash: "8887c8f40667f65a814d74b6edcfb81c"
+ hash: "09b9249750ba637ef659cbc7b9a6055f"
}
Frame {
msec: 512
- hash: "8887c8f40667f65a814d74b6edcfb81c"
+ hash: "09b9249750ba637ef659cbc7b9a6055f"
}
Frame {
msec: 528
- hash: "8887c8f40667f65a814d74b6edcfb81c"
+ hash: "09b9249750ba637ef659cbc7b9a6055f"
}
Frame {
msec: 544
- hash: "8887c8f40667f65a814d74b6edcfb81c"
+ hash: "09b9249750ba637ef659cbc7b9a6055f"
}
Frame {
msec: 560
- hash: "8887c8f40667f65a814d74b6edcfb81c"
+ hash: "09b9249750ba637ef659cbc7b9a6055f"
}
Frame {
msec: 576
- hash: "8887c8f40667f65a814d74b6edcfb81c"
+ hash: "09b9249750ba637ef659cbc7b9a6055f"
}
Frame {
msec: 592
- hash: "8887c8f40667f65a814d74b6edcfb81c"
+ hash: "09b9249750ba637ef659cbc7b9a6055f"
}
Frame {
msec: 608
- hash: "8887c8f40667f65a814d74b6edcfb81c"
+ hash: "09b9249750ba637ef659cbc7b9a6055f"
}
Frame {
msec: 624
- hash: "8887c8f40667f65a814d74b6edcfb81c"
+ hash: "09b9249750ba637ef659cbc7b9a6055f"
}
Frame {
msec: 640
- hash: "8887c8f40667f65a814d74b6edcfb81c"
+ hash: "09b9249750ba637ef659cbc7b9a6055f"
}
Frame {
msec: 656
- hash: "436000b48f688120d96919227d9e67b4"
+ hash: "1ac7017fcf7c9775b66ed1fb78930a45"
}
Frame {
msec: 672
- hash: "436000b48f688120d96919227d9e67b4"
+ hash: "1ac7017fcf7c9775b66ed1fb78930a45"
}
Frame {
msec: 688
- hash: "436000b48f688120d96919227d9e67b4"
+ hash: "1ac7017fcf7c9775b66ed1fb78930a45"
}
Frame {
msec: 704
- hash: "436000b48f688120d96919227d9e67b4"
+ hash: "1ac7017fcf7c9775b66ed1fb78930a45"
}
Frame {
msec: 720
- hash: "436000b48f688120d96919227d9e67b4"
+ hash: "1ac7017fcf7c9775b66ed1fb78930a45"
}
Frame {
msec: 736
- hash: "436000b48f688120d96919227d9e67b4"
+ hash: "1ac7017fcf7c9775b66ed1fb78930a45"
}
Frame {
msec: 752
- hash: "436000b48f688120d96919227d9e67b4"
+ hash: "1ac7017fcf7c9775b66ed1fb78930a45"
}
Frame {
msec: 768
- hash: "436000b48f688120d96919227d9e67b4"
+ hash: "1ac7017fcf7c9775b66ed1fb78930a45"
}
Frame {
msec: 784
- hash: "436000b48f688120d96919227d9e67b4"
+ hash: "1ac7017fcf7c9775b66ed1fb78930a45"
}
Frame {
msec: 800
- hash: "436000b48f688120d96919227d9e67b4"
+ hash: "1ac7017fcf7c9775b66ed1fb78930a45"
}
Frame {
msec: 816
- hash: "436000b48f688120d96919227d9e67b4"
+ hash: "1ac7017fcf7c9775b66ed1fb78930a45"
}
Frame {
msec: 832
- hash: "436000b48f688120d96919227d9e67b4"
+ hash: "1ac7017fcf7c9775b66ed1fb78930a45"
}
Frame {
msec: 848
- hash: "436000b48f688120d96919227d9e67b4"
+ hash: "1ac7017fcf7c9775b66ed1fb78930a45"
}
Frame {
msec: 864
- hash: "436000b48f688120d96919227d9e67b4"
+ hash: "1ac7017fcf7c9775b66ed1fb78930a45"
}
Frame {
msec: 880
- hash: "436000b48f688120d96919227d9e67b4"
+ hash: "1ac7017fcf7c9775b66ed1fb78930a45"
}
Frame {
msec: 896
- hash: "436000b48f688120d96919227d9e67b4"
+ hash: "1ac7017fcf7c9775b66ed1fb78930a45"
}
Frame {
msec: 912
- hash: "436000b48f688120d96919227d9e67b4"
+ hash: "1ac7017fcf7c9775b66ed1fb78930a45"
}
Frame {
msec: 928
- hash: "436000b48f688120d96919227d9e67b4"
+ hash: "1ac7017fcf7c9775b66ed1fb78930a45"
}
Frame {
msec: 944
- hash: "436000b48f688120d96919227d9e67b4"
+ hash: "1ac7017fcf7c9775b66ed1fb78930a45"
}
Frame {
msec: 960
- image: "multilineAlign.0.png"
+ hash: "1ac7017fcf7c9775b66ed1fb78930a45"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/baseline/data-MAC/parentanchor.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/baseline/data-MAC/parentanchor.0.png
new file mode 100644
index 0000000000..1fd0213767
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/baseline/data-MAC/parentanchor.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/baseline/data-MAC/parentanchor.qml b/tests/auto/declarative/qmlvisual/qdeclarativetext/baseline/data-MAC/parentanchor.qml
index d7428dd31b..c5a5a7619a 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/baseline/data-MAC/parentanchor.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/baseline/data-MAC/parentanchor.qml
@@ -6,126 +6,126 @@ VisualTest {
}
Frame {
msec: 16
- hash: "80e9ca4c4ffac9c032334a3369ef9db6"
+ image: "parentanchor.0.png"
}
Frame {
msec: 32
- hash: "80e9ca4c4ffac9c032334a3369ef9db6"
+ hash: "f45eda9414f7db5ed1f97a8275459abd"
}
Frame {
msec: 48
- hash: "80e9ca4c4ffac9c032334a3369ef9db6"
+ hash: "f45eda9414f7db5ed1f97a8275459abd"
}
Frame {
msec: 64
- hash: "80e9ca4c4ffac9c032334a3369ef9db6"
+ hash: "f45eda9414f7db5ed1f97a8275459abd"
}
Frame {
msec: 80
- hash: "80e9ca4c4ffac9c032334a3369ef9db6"
+ hash: "f45eda9414f7db5ed1f97a8275459abd"
}
Frame {
msec: 96
- hash: "80e9ca4c4ffac9c032334a3369ef9db6"
+ hash: "f45eda9414f7db5ed1f97a8275459abd"
}
Frame {
msec: 112
- hash: "80e9ca4c4ffac9c032334a3369ef9db6"
+ hash: "f45eda9414f7db5ed1f97a8275459abd"
}
Frame {
msec: 128
- hash: "80e9ca4c4ffac9c032334a3369ef9db6"
+ hash: "f45eda9414f7db5ed1f97a8275459abd"
}
Frame {
msec: 144
- hash: "80e9ca4c4ffac9c032334a3369ef9db6"
+ hash: "f45eda9414f7db5ed1f97a8275459abd"
}
Frame {
msec: 160
- hash: "80e9ca4c4ffac9c032334a3369ef9db6"
+ hash: "f45eda9414f7db5ed1f97a8275459abd"
}
Frame {
msec: 176
- hash: "80e9ca4c4ffac9c032334a3369ef9db6"
+ hash: "f45eda9414f7db5ed1f97a8275459abd"
}
Frame {
msec: 192
- hash: "80e9ca4c4ffac9c032334a3369ef9db6"
+ hash: "f45eda9414f7db5ed1f97a8275459abd"
}
Frame {
msec: 208
- hash: "80e9ca4c4ffac9c032334a3369ef9db6"
+ hash: "f45eda9414f7db5ed1f97a8275459abd"
}
Frame {
msec: 224
- hash: "80e9ca4c4ffac9c032334a3369ef9db6"
+ hash: "f45eda9414f7db5ed1f97a8275459abd"
}
Frame {
msec: 240
- hash: "80e9ca4c4ffac9c032334a3369ef9db6"
+ hash: "f45eda9414f7db5ed1f97a8275459abd"
}
Frame {
msec: 256
- hash: "80e9ca4c4ffac9c032334a3369ef9db6"
+ hash: "f45eda9414f7db5ed1f97a8275459abd"
}
Frame {
msec: 272
- hash: "80e9ca4c4ffac9c032334a3369ef9db6"
+ hash: "f45eda9414f7db5ed1f97a8275459abd"
}
Frame {
msec: 288
- hash: "80e9ca4c4ffac9c032334a3369ef9db6"
+ hash: "f45eda9414f7db5ed1f97a8275459abd"
}
Frame {
msec: 304
- hash: "80e9ca4c4ffac9c032334a3369ef9db6"
+ hash: "f45eda9414f7db5ed1f97a8275459abd"
}
Frame {
msec: 320
- hash: "80e9ca4c4ffac9c032334a3369ef9db6"
+ hash: "f45eda9414f7db5ed1f97a8275459abd"
}
Frame {
msec: 336
- hash: "80e9ca4c4ffac9c032334a3369ef9db6"
+ hash: "f45eda9414f7db5ed1f97a8275459abd"
}
Frame {
msec: 352
- hash: "80e9ca4c4ffac9c032334a3369ef9db6"
+ hash: "f45eda9414f7db5ed1f97a8275459abd"
}
Frame {
msec: 368
- hash: "80e9ca4c4ffac9c032334a3369ef9db6"
+ hash: "f45eda9414f7db5ed1f97a8275459abd"
}
Frame {
msec: 384
- hash: "80e9ca4c4ffac9c032334a3369ef9db6"
+ hash: "f45eda9414f7db5ed1f97a8275459abd"
}
Frame {
msec: 400
- hash: "80e9ca4c4ffac9c032334a3369ef9db6"
+ hash: "f45eda9414f7db5ed1f97a8275459abd"
}
Frame {
msec: 416
- hash: "80e9ca4c4ffac9c032334a3369ef9db6"
+ hash: "f45eda9414f7db5ed1f97a8275459abd"
}
Frame {
msec: 432
- hash: "80e9ca4c4ffac9c032334a3369ef9db6"
+ hash: "f45eda9414f7db5ed1f97a8275459abd"
}
Frame {
msec: 448
- hash: "80e9ca4c4ffac9c032334a3369ef9db6"
+ hash: "f45eda9414f7db5ed1f97a8275459abd"
}
Frame {
msec: 464
- hash: "80e9ca4c4ffac9c032334a3369ef9db6"
+ hash: "f45eda9414f7db5ed1f97a8275459abd"
}
Frame {
msec: 480
- hash: "80e9ca4c4ffac9c032334a3369ef9db6"
+ hash: "f45eda9414f7db5ed1f97a8275459abd"
}
Frame {
msec: 496
- hash: "80e9ca4c4ffac9c032334a3369ef9db6"
+ hash: "f45eda9414f7db5ed1f97a8275459abd"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/baseline/data-X11/parentanchor.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/baseline/data-X11/parentanchor.0.png
new file mode 100644
index 0000000000..823199c7ae
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/baseline/data-X11/parentanchor.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/baseline/data-X11/parentanchor.qml b/tests/auto/declarative/qmlvisual/qdeclarativetext/baseline/data-X11/parentanchor.qml
index c526f47eb2..4bf06970df 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/baseline/data-X11/parentanchor.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/baseline/data-X11/parentanchor.qml
@@ -6,126 +6,126 @@ VisualTest {
}
Frame {
msec: 16
- hash: "e38b59f2c271def037213e57a966bd95"
+ image: "parentanchor.0.png"
}
Frame {
msec: 32
- hash: "e38b59f2c271def037213e57a966bd95"
+ hash: "7e082fa05e000cc20fcda7cb61d98edd"
}
Frame {
msec: 48
- hash: "e38b59f2c271def037213e57a966bd95"
+ hash: "7e082fa05e000cc20fcda7cb61d98edd"
}
Frame {
msec: 64
- hash: "e38b59f2c271def037213e57a966bd95"
+ hash: "7e082fa05e000cc20fcda7cb61d98edd"
}
Frame {
msec: 80
- hash: "e38b59f2c271def037213e57a966bd95"
+ hash: "7e082fa05e000cc20fcda7cb61d98edd"
}
Frame {
msec: 96
- hash: "e38b59f2c271def037213e57a966bd95"
+ hash: "7e082fa05e000cc20fcda7cb61d98edd"
}
Frame {
msec: 112
- hash: "e38b59f2c271def037213e57a966bd95"
+ hash: "7e082fa05e000cc20fcda7cb61d98edd"
}
Frame {
msec: 128
- hash: "e38b59f2c271def037213e57a966bd95"
+ hash: "7e082fa05e000cc20fcda7cb61d98edd"
}
Frame {
msec: 144
- hash: "e38b59f2c271def037213e57a966bd95"
+ hash: "7e082fa05e000cc20fcda7cb61d98edd"
}
Frame {
msec: 160
- hash: "e38b59f2c271def037213e57a966bd95"
+ hash: "7e082fa05e000cc20fcda7cb61d98edd"
}
Frame {
msec: 176
- hash: "e38b59f2c271def037213e57a966bd95"
+ hash: "7e082fa05e000cc20fcda7cb61d98edd"
}
Frame {
msec: 192
- hash: "e38b59f2c271def037213e57a966bd95"
+ hash: "7e082fa05e000cc20fcda7cb61d98edd"
}
Frame {
msec: 208
- hash: "e38b59f2c271def037213e57a966bd95"
+ hash: "7e082fa05e000cc20fcda7cb61d98edd"
}
Frame {
msec: 224
- hash: "e38b59f2c271def037213e57a966bd95"
+ hash: "7e082fa05e000cc20fcda7cb61d98edd"
}
Frame {
msec: 240
- hash: "e38b59f2c271def037213e57a966bd95"
+ hash: "7e082fa05e000cc20fcda7cb61d98edd"
}
Frame {
msec: 256
- hash: "e38b59f2c271def037213e57a966bd95"
+ hash: "7e082fa05e000cc20fcda7cb61d98edd"
}
Frame {
msec: 272
- hash: "e38b59f2c271def037213e57a966bd95"
+ hash: "7e082fa05e000cc20fcda7cb61d98edd"
}
Frame {
msec: 288
- hash: "e38b59f2c271def037213e57a966bd95"
+ hash: "7e082fa05e000cc20fcda7cb61d98edd"
}
Frame {
msec: 304
- hash: "e38b59f2c271def037213e57a966bd95"
+ hash: "7e082fa05e000cc20fcda7cb61d98edd"
}
Frame {
msec: 320
- hash: "e38b59f2c271def037213e57a966bd95"
+ hash: "7e082fa05e000cc20fcda7cb61d98edd"
}
Frame {
msec: 336
- hash: "e38b59f2c271def037213e57a966bd95"
+ hash: "7e082fa05e000cc20fcda7cb61d98edd"
}
Frame {
msec: 352
- hash: "e38b59f2c271def037213e57a966bd95"
+ hash: "7e082fa05e000cc20fcda7cb61d98edd"
}
Frame {
msec: 368
- hash: "e38b59f2c271def037213e57a966bd95"
+ hash: "7e082fa05e000cc20fcda7cb61d98edd"
}
Frame {
msec: 384
- hash: "e38b59f2c271def037213e57a966bd95"
+ hash: "7e082fa05e000cc20fcda7cb61d98edd"
}
Frame {
msec: 400
- hash: "e38b59f2c271def037213e57a966bd95"
+ hash: "7e082fa05e000cc20fcda7cb61d98edd"
}
Frame {
msec: 416
- hash: "e38b59f2c271def037213e57a966bd95"
+ hash: "7e082fa05e000cc20fcda7cb61d98edd"
}
Frame {
msec: 432
- hash: "e38b59f2c271def037213e57a966bd95"
+ hash: "7e082fa05e000cc20fcda7cb61d98edd"
}
Frame {
msec: 448
- hash: "e38b59f2c271def037213e57a966bd95"
+ hash: "7e082fa05e000cc20fcda7cb61d98edd"
}
Frame {
msec: 464
- hash: "e38b59f2c271def037213e57a966bd95"
+ hash: "7e082fa05e000cc20fcda7cb61d98edd"
}
Frame {
msec: 480
- hash: "e38b59f2c271def037213e57a966bd95"
+ hash: "7e082fa05e000cc20fcda7cb61d98edd"
}
Frame {
msec: 496
- hash: "e38b59f2c271def037213e57a966bd95"
+ hash: "7e082fa05e000cc20fcda7cb61d98edd"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/bugs/data-MAC/QTBUG-14469.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/bugs/data-MAC/QTBUG-14469.0.png
new file mode 100644
index 0000000000..4d6bf55f73
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/bugs/data-MAC/QTBUG-14469.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/bugs/data-MAC/QTBUG-14469.1.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/bugs/data-MAC/QTBUG-14469.1.png
new file mode 100644
index 0000000000..a75da16eeb
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/bugs/data-MAC/QTBUG-14469.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/bugs/data-MAC/QTBUG-14469.qml b/tests/auto/declarative/qmlvisual/qdeclarativetext/bugs/data-MAC/QTBUG-14469.qml
new file mode 100644
index 0000000000..002e1c8d77
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/bugs/data-MAC/QTBUG-14469.qml
@@ -0,0 +1,475 @@
+import Qt.VisualTest 4.7
+
+VisualTest {
+ Frame {
+ msec: 0
+ }
+ Frame {
+ msec: 16
+ image: "QTBUG-14469.0.png"
+ }
+ Frame {
+ msec: 32
+ hash: "fab978e1e0ee5140d8131320ff2322e9"
+ }
+ Frame {
+ msec: 48
+ hash: "fab978e1e0ee5140d8131320ff2322e9"
+ }
+ Frame {
+ msec: 64
+ hash: "fab978e1e0ee5140d8131320ff2322e9"
+ }
+ Frame {
+ msec: 80
+ hash: "fab978e1e0ee5140d8131320ff2322e9"
+ }
+ Frame {
+ msec: 96
+ hash: "fab978e1e0ee5140d8131320ff2322e9"
+ }
+ Frame {
+ msec: 112
+ hash: "fab978e1e0ee5140d8131320ff2322e9"
+ }
+ Frame {
+ msec: 128
+ hash: "cf74324c2a0c8f45c728d42390aac1e0"
+ }
+ Frame {
+ msec: 144
+ hash: "cf74324c2a0c8f45c728d42390aac1e0"
+ }
+ Frame {
+ msec: 160
+ hash: "cf74324c2a0c8f45c728d42390aac1e0"
+ }
+ Frame {
+ msec: 176
+ hash: "cf74324c2a0c8f45c728d42390aac1e0"
+ }
+ Frame {
+ msec: 192
+ hash: "cf74324c2a0c8f45c728d42390aac1e0"
+ }
+ Frame {
+ msec: 208
+ hash: "cf74324c2a0c8f45c728d42390aac1e0"
+ }
+ Frame {
+ msec: 224
+ hash: "07c938ac9ff9f591e84fc553291c7c49"
+ }
+ Frame {
+ msec: 240
+ hash: "07c938ac9ff9f591e84fc553291c7c49"
+ }
+ Frame {
+ msec: 256
+ hash: "07c938ac9ff9f591e84fc553291c7c49"
+ }
+ Frame {
+ msec: 272
+ hash: "07c938ac9ff9f591e84fc553291c7c49"
+ }
+ Frame {
+ msec: 288
+ hash: "07c938ac9ff9f591e84fc553291c7c49"
+ }
+ Frame {
+ msec: 304
+ hash: "07c938ac9ff9f591e84fc553291c7c49"
+ }
+ Frame {
+ msec: 320
+ hash: "7b585eb6226e6ce2de355f9730dba377"
+ }
+ Frame {
+ msec: 336
+ hash: "7b585eb6226e6ce2de355f9730dba377"
+ }
+ Frame {
+ msec: 352
+ hash: "7b585eb6226e6ce2de355f9730dba377"
+ }
+ Frame {
+ msec: 368
+ hash: "7b585eb6226e6ce2de355f9730dba377"
+ }
+ Frame {
+ msec: 384
+ hash: "7b585eb6226e6ce2de355f9730dba377"
+ }
+ Frame {
+ msec: 400
+ hash: "7b585eb6226e6ce2de355f9730dba377"
+ }
+ Frame {
+ msec: 416
+ hash: "a7817a7d902ab2fe2875183feb6513dd"
+ }
+ Frame {
+ msec: 432
+ hash: "a7817a7d902ab2fe2875183feb6513dd"
+ }
+ Frame {
+ msec: 448
+ hash: "a7817a7d902ab2fe2875183feb6513dd"
+ }
+ Frame {
+ msec: 464
+ hash: "a7817a7d902ab2fe2875183feb6513dd"
+ }
+ Frame {
+ msec: 480
+ hash: "a7817a7d902ab2fe2875183feb6513dd"
+ }
+ Frame {
+ msec: 496
+ hash: "a7817a7d902ab2fe2875183feb6513dd"
+ }
+ Frame {
+ msec: 512
+ hash: "a7817a7d902ab2fe2875183feb6513dd"
+ }
+ Frame {
+ msec: 528
+ hash: "067dfe70eca44e2157b723858897c90e"
+ }
+ Frame {
+ msec: 544
+ hash: "067dfe70eca44e2157b723858897c90e"
+ }
+ Frame {
+ msec: 560
+ hash: "067dfe70eca44e2157b723858897c90e"
+ }
+ Frame {
+ msec: 576
+ hash: "067dfe70eca44e2157b723858897c90e"
+ }
+ Frame {
+ msec: 592
+ hash: "067dfe70eca44e2157b723858897c90e"
+ }
+ Frame {
+ msec: 608
+ hash: "067dfe70eca44e2157b723858897c90e"
+ }
+ Frame {
+ msec: 624
+ hash: "b1ac0015f173bf5789daa5d45d04dadd"
+ }
+ Frame {
+ msec: 640
+ hash: "b1ac0015f173bf5789daa5d45d04dadd"
+ }
+ Frame {
+ msec: 656
+ hash: "b1ac0015f173bf5789daa5d45d04dadd"
+ }
+ Frame {
+ msec: 672
+ hash: "b1ac0015f173bf5789daa5d45d04dadd"
+ }
+ Frame {
+ msec: 688
+ hash: "b1ac0015f173bf5789daa5d45d04dadd"
+ }
+ Frame {
+ msec: 704
+ hash: "b1ac0015f173bf5789daa5d45d04dadd"
+ }
+ Frame {
+ msec: 720
+ hash: "431cb09ccdcfab7c3ff7d498aa1f0816"
+ }
+ Frame {
+ msec: 736
+ hash: "431cb09ccdcfab7c3ff7d498aa1f0816"
+ }
+ Frame {
+ msec: 752
+ hash: "431cb09ccdcfab7c3ff7d498aa1f0816"
+ }
+ Frame {
+ msec: 768
+ hash: "431cb09ccdcfab7c3ff7d498aa1f0816"
+ }
+ Frame {
+ msec: 784
+ hash: "431cb09ccdcfab7c3ff7d498aa1f0816"
+ }
+ Frame {
+ msec: 800
+ hash: "431cb09ccdcfab7c3ff7d498aa1f0816"
+ }
+ Frame {
+ msec: 816
+ hash: "533b23f29fe5f9dc85a6ca390c6dd023"
+ }
+ Frame {
+ msec: 832
+ hash: "533b23f29fe5f9dc85a6ca390c6dd023"
+ }
+ Frame {
+ msec: 848
+ hash: "533b23f29fe5f9dc85a6ca390c6dd023"
+ }
+ Frame {
+ msec: 864
+ hash: "533b23f29fe5f9dc85a6ca390c6dd023"
+ }
+ Frame {
+ msec: 880
+ hash: "533b23f29fe5f9dc85a6ca390c6dd023"
+ }
+ Frame {
+ msec: 896
+ hash: "533b23f29fe5f9dc85a6ca390c6dd023"
+ }
+ Frame {
+ msec: 912
+ hash: "533b23f29fe5f9dc85a6ca390c6dd023"
+ }
+ Frame {
+ msec: 928
+ hash: "cd397908009ddf16ec3101efb0d7468e"
+ }
+ Frame {
+ msec: 944
+ hash: "cd397908009ddf16ec3101efb0d7468e"
+ }
+ Frame {
+ msec: 960
+ hash: "cd397908009ddf16ec3101efb0d7468e"
+ }
+ Frame {
+ msec: 976
+ image: "QTBUG-14469.1.png"
+ }
+ Frame {
+ msec: 992
+ hash: "cd397908009ddf16ec3101efb0d7468e"
+ }
+ Frame {
+ msec: 1008
+ hash: "cd397908009ddf16ec3101efb0d7468e"
+ }
+ Frame {
+ msec: 1024
+ hash: "a1eebf1a97314851b5154802f05abe8d"
+ }
+ Frame {
+ msec: 1040
+ hash: "a1eebf1a97314851b5154802f05abe8d"
+ }
+ Frame {
+ msec: 1056
+ hash: "a1eebf1a97314851b5154802f05abe8d"
+ }
+ Frame {
+ msec: 1072
+ hash: "a1eebf1a97314851b5154802f05abe8d"
+ }
+ Frame {
+ msec: 1088
+ hash: "a1eebf1a97314851b5154802f05abe8d"
+ }
+ Frame {
+ msec: 1104
+ hash: "a1eebf1a97314851b5154802f05abe8d"
+ }
+ Frame {
+ msec: 1120
+ hash: "71d91d85b9c555eb9b39dac79b35dd46"
+ }
+ Frame {
+ msec: 1136
+ hash: "71d91d85b9c555eb9b39dac79b35dd46"
+ }
+ Frame {
+ msec: 1152
+ hash: "71d91d85b9c555eb9b39dac79b35dd46"
+ }
+ Frame {
+ msec: 1168
+ hash: "71d91d85b9c555eb9b39dac79b35dd46"
+ }
+ Frame {
+ msec: 1184
+ hash: "71d91d85b9c555eb9b39dac79b35dd46"
+ }
+ Frame {
+ msec: 1200
+ hash: "71d91d85b9c555eb9b39dac79b35dd46"
+ }
+ Frame {
+ msec: 1216
+ hash: "b1da2d1f4aad2a197a80788607bd867d"
+ }
+ Frame {
+ msec: 1232
+ hash: "b1da2d1f4aad2a197a80788607bd867d"
+ }
+ Frame {
+ msec: 1248
+ hash: "b1da2d1f4aad2a197a80788607bd867d"
+ }
+ Frame {
+ msec: 1264
+ hash: "b1da2d1f4aad2a197a80788607bd867d"
+ }
+ Frame {
+ msec: 1280
+ hash: "b1da2d1f4aad2a197a80788607bd867d"
+ }
+ Frame {
+ msec: 1296
+ hash: "b1da2d1f4aad2a197a80788607bd867d"
+ }
+ Frame {
+ msec: 1312
+ hash: "b1da2d1f4aad2a197a80788607bd867d"
+ }
+ Frame {
+ msec: 1328
+ hash: "df14e9cfeba3850bae7cad111fdbc8df"
+ }
+ Frame {
+ msec: 1344
+ hash: "df14e9cfeba3850bae7cad111fdbc8df"
+ }
+ Frame {
+ msec: 1360
+ hash: "df14e9cfeba3850bae7cad111fdbc8df"
+ }
+ Frame {
+ msec: 1376
+ hash: "df14e9cfeba3850bae7cad111fdbc8df"
+ }
+ Frame {
+ msec: 1392
+ hash: "df14e9cfeba3850bae7cad111fdbc8df"
+ }
+ Frame {
+ msec: 1408
+ hash: "df14e9cfeba3850bae7cad111fdbc8df"
+ }
+ Frame {
+ msec: 1424
+ hash: "fab978e1e0ee5140d8131320ff2322e9"
+ }
+ Frame {
+ msec: 1440
+ hash: "fab978e1e0ee5140d8131320ff2322e9"
+ }
+ Frame {
+ msec: 1456
+ hash: "fab978e1e0ee5140d8131320ff2322e9"
+ }
+ Frame {
+ msec: 1472
+ hash: "fab978e1e0ee5140d8131320ff2322e9"
+ }
+ Frame {
+ msec: 1488
+ hash: "fab978e1e0ee5140d8131320ff2322e9"
+ }
+ Frame {
+ msec: 1504
+ hash: "fab978e1e0ee5140d8131320ff2322e9"
+ }
+ Frame {
+ msec: 1520
+ hash: "cf74324c2a0c8f45c728d42390aac1e0"
+ }
+ Frame {
+ msec: 1536
+ hash: "cf74324c2a0c8f45c728d42390aac1e0"
+ }
+ Frame {
+ msec: 1552
+ hash: "cf74324c2a0c8f45c728d42390aac1e0"
+ }
+ Frame {
+ msec: 1568
+ hash: "cf74324c2a0c8f45c728d42390aac1e0"
+ }
+ Frame {
+ msec: 1584
+ hash: "cf74324c2a0c8f45c728d42390aac1e0"
+ }
+ Frame {
+ msec: 1600
+ hash: "cf74324c2a0c8f45c728d42390aac1e0"
+ }
+ Frame {
+ msec: 1616
+ hash: "07c938ac9ff9f591e84fc553291c7c49"
+ }
+ Frame {
+ msec: 1632
+ hash: "07c938ac9ff9f591e84fc553291c7c49"
+ }
+ Frame {
+ msec: 1648
+ hash: "07c938ac9ff9f591e84fc553291c7c49"
+ }
+ Frame {
+ msec: 1664
+ hash: "07c938ac9ff9f591e84fc553291c7c49"
+ }
+ Frame {
+ msec: 1680
+ hash: "07c938ac9ff9f591e84fc553291c7c49"
+ }
+ Frame {
+ msec: 1696
+ hash: "07c938ac9ff9f591e84fc553291c7c49"
+ }
+ Frame {
+ msec: 1712
+ hash: "07c938ac9ff9f591e84fc553291c7c49"
+ }
+ Frame {
+ msec: 1728
+ hash: "7b585eb6226e6ce2de355f9730dba377"
+ }
+ Frame {
+ msec: 1744
+ hash: "7b585eb6226e6ce2de355f9730dba377"
+ }
+ Frame {
+ msec: 1760
+ hash: "7b585eb6226e6ce2de355f9730dba377"
+ }
+ Frame {
+ msec: 1776
+ hash: "7b585eb6226e6ce2de355f9730dba377"
+ }
+ Frame {
+ msec: 1792
+ hash: "7b585eb6226e6ce2de355f9730dba377"
+ }
+ Frame {
+ msec: 1808
+ hash: "7b585eb6226e6ce2de355f9730dba377"
+ }
+ Frame {
+ msec: 1824
+ hash: "a7817a7d902ab2fe2875183feb6513dd"
+ }
+ Frame {
+ msec: 1840
+ hash: "a7817a7d902ab2fe2875183feb6513dd"
+ }
+ Frame {
+ msec: 1856
+ hash: "a7817a7d902ab2fe2875183feb6513dd"
+ }
+ Frame {
+ msec: 1872
+ hash: "a7817a7d902ab2fe2875183feb6513dd"
+ }
+}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/bugs/data-X11/QTBUG-14469.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/bugs/data-X11/QTBUG-14469.0.png
index b8cc1c70be..ee3c7447c0 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/bugs/data-X11/QTBUG-14469.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/bugs/data-X11/QTBUG-14469.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/bugs/data-X11/QTBUG-14469.qml b/tests/auto/declarative/qmlvisual/qdeclarativetext/bugs/data-X11/QTBUG-14469.qml
index 6201c72fc0..b770836301 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/bugs/data-X11/QTBUG-14469.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/bugs/data-X11/QTBUG-14469.qml
@@ -6,7 +6,7 @@ VisualTest {
}
Frame {
msec: 16
- hash: "fab978e1e0ee5140d8131320ff2322e9"
+ image: "QTBUG-14469.0.png"
}
Frame {
msec: 32
@@ -58,227 +58,227 @@ VisualTest {
}
Frame {
msec: 224
- hash: "449c6b632a3b85462fe3947a071ffa91"
+ hash: "834338b693368e154163f806f49d5ba3"
}
Frame {
msec: 240
- hash: "449c6b632a3b85462fe3947a071ffa91"
+ hash: "834338b693368e154163f806f49d5ba3"
}
Frame {
msec: 256
- hash: "449c6b632a3b85462fe3947a071ffa91"
+ hash: "834338b693368e154163f806f49d5ba3"
}
Frame {
msec: 272
- hash: "449c6b632a3b85462fe3947a071ffa91"
+ hash: "834338b693368e154163f806f49d5ba3"
}
Frame {
msec: 288
- hash: "449c6b632a3b85462fe3947a071ffa91"
+ hash: "834338b693368e154163f806f49d5ba3"
}
Frame {
msec: 304
- hash: "449c6b632a3b85462fe3947a071ffa91"
+ hash: "834338b693368e154163f806f49d5ba3"
}
Frame {
msec: 320
- hash: "9c804e5eec3b31acd55a510d301cc419"
+ hash: "4b79bd737312a5aa026b73c07bfd840c"
}
Frame {
msec: 336
- hash: "9c804e5eec3b31acd55a510d301cc419"
+ hash: "4b79bd737312a5aa026b73c07bfd840c"
}
Frame {
msec: 352
- hash: "9c804e5eec3b31acd55a510d301cc419"
+ hash: "4b79bd737312a5aa026b73c07bfd840c"
}
Frame {
msec: 368
- hash: "9c804e5eec3b31acd55a510d301cc419"
+ hash: "4b79bd737312a5aa026b73c07bfd840c"
}
Frame {
msec: 384
- hash: "9c804e5eec3b31acd55a510d301cc419"
+ hash: "4b79bd737312a5aa026b73c07bfd840c"
}
Frame {
msec: 400
- hash: "9c804e5eec3b31acd55a510d301cc419"
+ hash: "4b79bd737312a5aa026b73c07bfd840c"
}
Frame {
msec: 416
- hash: "799c7a637b061686c1456c9c535594d3"
+ hash: "daa67aed3e94e9e8823e8bed04aee960"
}
Frame {
msec: 432
- hash: "799c7a637b061686c1456c9c535594d3"
+ hash: "daa67aed3e94e9e8823e8bed04aee960"
}
Frame {
msec: 448
- hash: "799c7a637b061686c1456c9c535594d3"
+ hash: "daa67aed3e94e9e8823e8bed04aee960"
}
Frame {
msec: 464
- hash: "799c7a637b061686c1456c9c535594d3"
+ hash: "daa67aed3e94e9e8823e8bed04aee960"
}
Frame {
msec: 480
- hash: "799c7a637b061686c1456c9c535594d3"
+ hash: "daa67aed3e94e9e8823e8bed04aee960"
}
Frame {
msec: 496
- hash: "799c7a637b061686c1456c9c535594d3"
+ hash: "daa67aed3e94e9e8823e8bed04aee960"
}
Frame {
msec: 512
- hash: "799c7a637b061686c1456c9c535594d3"
+ hash: "daa67aed3e94e9e8823e8bed04aee960"
}
Frame {
msec: 528
- hash: "51cd7a5bc24cdb50832066cc04cae313"
+ hash: "75f26b0bbb2663bcadcedce260ef848a"
}
Frame {
msec: 544
- hash: "51cd7a5bc24cdb50832066cc04cae313"
+ hash: "75f26b0bbb2663bcadcedce260ef848a"
}
Frame {
msec: 560
- hash: "51cd7a5bc24cdb50832066cc04cae313"
+ hash: "75f26b0bbb2663bcadcedce260ef848a"
}
Frame {
msec: 576
- hash: "51cd7a5bc24cdb50832066cc04cae313"
+ hash: "75f26b0bbb2663bcadcedce260ef848a"
}
Frame {
msec: 592
- hash: "51cd7a5bc24cdb50832066cc04cae313"
+ hash: "75f26b0bbb2663bcadcedce260ef848a"
}
Frame {
msec: 608
- hash: "51cd7a5bc24cdb50832066cc04cae313"
+ hash: "75f26b0bbb2663bcadcedce260ef848a"
}
Frame {
msec: 624
- hash: "bac094de06155c73e4d2d9e2fd99b038"
+ hash: "6a8c8c0b7727e5e3063d93de59c7f0a2"
}
Frame {
msec: 640
- hash: "bac094de06155c73e4d2d9e2fd99b038"
+ hash: "6a8c8c0b7727e5e3063d93de59c7f0a2"
}
Frame {
msec: 656
- hash: "bac094de06155c73e4d2d9e2fd99b038"
+ hash: "6a8c8c0b7727e5e3063d93de59c7f0a2"
}
Frame {
msec: 672
- hash: "bac094de06155c73e4d2d9e2fd99b038"
+ hash: "6a8c8c0b7727e5e3063d93de59c7f0a2"
}
Frame {
msec: 688
- hash: "bac094de06155c73e4d2d9e2fd99b038"
+ hash: "6a8c8c0b7727e5e3063d93de59c7f0a2"
}
Frame {
msec: 704
- hash: "bac094de06155c73e4d2d9e2fd99b038"
+ hash: "6a8c8c0b7727e5e3063d93de59c7f0a2"
}
Frame {
msec: 720
- hash: "3159c438d2cb58e31b4b458ba417f794"
+ hash: "d5bb5dd464f38af1790e0109033eb8ad"
}
Frame {
msec: 736
- hash: "3159c438d2cb58e31b4b458ba417f794"
+ hash: "d5bb5dd464f38af1790e0109033eb8ad"
}
Frame {
msec: 752
- hash: "3159c438d2cb58e31b4b458ba417f794"
+ hash: "d5bb5dd464f38af1790e0109033eb8ad"
}
Frame {
msec: 768
- hash: "3159c438d2cb58e31b4b458ba417f794"
+ hash: "d5bb5dd464f38af1790e0109033eb8ad"
}
Frame {
msec: 784
- hash: "3159c438d2cb58e31b4b458ba417f794"
+ hash: "d5bb5dd464f38af1790e0109033eb8ad"
}
Frame {
msec: 800
- hash: "3159c438d2cb58e31b4b458ba417f794"
+ hash: "d5bb5dd464f38af1790e0109033eb8ad"
}
Frame {
msec: 816
- hash: "a4f9c320c8aa558c66dd25d132bb5834"
+ hash: "8535be394c177dbdcb0435e35680e776"
}
Frame {
msec: 832
- hash: "a4f9c320c8aa558c66dd25d132bb5834"
+ hash: "8535be394c177dbdcb0435e35680e776"
}
Frame {
msec: 848
- hash: "a4f9c320c8aa558c66dd25d132bb5834"
+ hash: "8535be394c177dbdcb0435e35680e776"
}
Frame {
msec: 864
- hash: "a4f9c320c8aa558c66dd25d132bb5834"
+ hash: "8535be394c177dbdcb0435e35680e776"
}
Frame {
msec: 880
- hash: "a4f9c320c8aa558c66dd25d132bb5834"
+ hash: "8535be394c177dbdcb0435e35680e776"
}
Frame {
msec: 896
- hash: "a4f9c320c8aa558c66dd25d132bb5834"
+ hash: "8535be394c177dbdcb0435e35680e776"
}
Frame {
msec: 912
- hash: "a4f9c320c8aa558c66dd25d132bb5834"
+ hash: "8535be394c177dbdcb0435e35680e776"
}
Frame {
msec: 928
- hash: "b1a283365bbffbc0ddaa4aa661e52add"
+ hash: "0ec4eba50495b474faf3feca4be64f7b"
}
Frame {
msec: 944
- hash: "b1a283365bbffbc0ddaa4aa661e52add"
+ hash: "0ec4eba50495b474faf3feca4be64f7b"
}
Frame {
msec: 960
- image: "QTBUG-14469.0.png"
+ hash: "0ec4eba50495b474faf3feca4be64f7b"
}
Frame {
msec: 976
- hash: "b1a283365bbffbc0ddaa4aa661e52add"
+ image: "QTBUG-14469.1.png"
}
Frame {
msec: 992
- hash: "b1a283365bbffbc0ddaa4aa661e52add"
+ hash: "0ec4eba50495b474faf3feca4be64f7b"
}
Frame {
msec: 1008
- hash: "b1a283365bbffbc0ddaa4aa661e52add"
+ hash: "0ec4eba50495b474faf3feca4be64f7b"
}
Frame {
msec: 1024
- hash: "57ba00590bed6fe1b0f8fc3e54b9637e"
+ hash: "43993c686f4c10e91177297d8bb6eae9"
}
Frame {
msec: 1040
- hash: "57ba00590bed6fe1b0f8fc3e54b9637e"
+ hash: "43993c686f4c10e91177297d8bb6eae9"
}
Frame {
msec: 1056
- hash: "57ba00590bed6fe1b0f8fc3e54b9637e"
+ hash: "43993c686f4c10e91177297d8bb6eae9"
}
Frame {
msec: 1072
- hash: "57ba00590bed6fe1b0f8fc3e54b9637e"
+ hash: "43993c686f4c10e91177297d8bb6eae9"
}
Frame {
msec: 1088
- hash: "57ba00590bed6fe1b0f8fc3e54b9637e"
+ hash: "43993c686f4c10e91177297d8bb6eae9"
}
Frame {
msec: 1104
- hash: "57ba00590bed6fe1b0f8fc3e54b9637e"
+ hash: "43993c686f4c10e91177297d8bb6eae9"
}
Frame {
msec: 1120
@@ -306,55 +306,55 @@ VisualTest {
}
Frame {
msec: 1216
- hash: "bc81044e90cc001fc351a1518ba4b41e"
+ hash: "5f18ee7410e2d0b4d739abcec1b14bb4"
}
Frame {
msec: 1232
- hash: "bc81044e90cc001fc351a1518ba4b41e"
+ hash: "5f18ee7410e2d0b4d739abcec1b14bb4"
}
Frame {
msec: 1248
- hash: "bc81044e90cc001fc351a1518ba4b41e"
+ hash: "5f18ee7410e2d0b4d739abcec1b14bb4"
}
Frame {
msec: 1264
- hash: "bc81044e90cc001fc351a1518ba4b41e"
+ hash: "5f18ee7410e2d0b4d739abcec1b14bb4"
}
Frame {
msec: 1280
- hash: "bc81044e90cc001fc351a1518ba4b41e"
+ hash: "5f18ee7410e2d0b4d739abcec1b14bb4"
}
Frame {
msec: 1296
- hash: "bc81044e90cc001fc351a1518ba4b41e"
+ hash: "5f18ee7410e2d0b4d739abcec1b14bb4"
}
Frame {
msec: 1312
- hash: "bc81044e90cc001fc351a1518ba4b41e"
+ hash: "5f18ee7410e2d0b4d739abcec1b14bb4"
}
Frame {
msec: 1328
- hash: "18386b56e44b1f3981b3aa8fe980410b"
+ hash: "34ebe59f64ebc72fc2bf22af4118ec1f"
}
Frame {
msec: 1344
- hash: "18386b56e44b1f3981b3aa8fe980410b"
+ hash: "34ebe59f64ebc72fc2bf22af4118ec1f"
}
Frame {
msec: 1360
- hash: "18386b56e44b1f3981b3aa8fe980410b"
+ hash: "34ebe59f64ebc72fc2bf22af4118ec1f"
}
Frame {
msec: 1376
- hash: "18386b56e44b1f3981b3aa8fe980410b"
+ hash: "34ebe59f64ebc72fc2bf22af4118ec1f"
}
Frame {
msec: 1392
- hash: "18386b56e44b1f3981b3aa8fe980410b"
+ hash: "34ebe59f64ebc72fc2bf22af4118ec1f"
}
Frame {
msec: 1408
- hash: "18386b56e44b1f3981b3aa8fe980410b"
+ hash: "34ebe59f64ebc72fc2bf22af4118ec1f"
}
Frame {
msec: 1424
@@ -406,70 +406,70 @@ VisualTest {
}
Frame {
msec: 1616
- hash: "449c6b632a3b85462fe3947a071ffa91"
+ hash: "834338b693368e154163f806f49d5ba3"
}
Frame {
msec: 1632
- hash: "449c6b632a3b85462fe3947a071ffa91"
+ hash: "834338b693368e154163f806f49d5ba3"
}
Frame {
msec: 1648
- hash: "449c6b632a3b85462fe3947a071ffa91"
+ hash: "834338b693368e154163f806f49d5ba3"
}
Frame {
msec: 1664
- hash: "449c6b632a3b85462fe3947a071ffa91"
+ hash: "834338b693368e154163f806f49d5ba3"
}
Frame {
msec: 1680
- hash: "449c6b632a3b85462fe3947a071ffa91"
+ hash: "834338b693368e154163f806f49d5ba3"
}
Frame {
msec: 1696
- hash: "449c6b632a3b85462fe3947a071ffa91"
+ hash: "834338b693368e154163f806f49d5ba3"
}
Frame {
msec: 1712
- hash: "449c6b632a3b85462fe3947a071ffa91"
+ hash: "834338b693368e154163f806f49d5ba3"
}
Frame {
msec: 1728
- hash: "9c804e5eec3b31acd55a510d301cc419"
+ hash: "4b79bd737312a5aa026b73c07bfd840c"
}
Frame {
msec: 1744
- hash: "9c804e5eec3b31acd55a510d301cc419"
+ hash: "4b79bd737312a5aa026b73c07bfd840c"
}
Frame {
msec: 1760
- hash: "9c804e5eec3b31acd55a510d301cc419"
+ hash: "4b79bd737312a5aa026b73c07bfd840c"
}
Frame {
msec: 1776
- hash: "9c804e5eec3b31acd55a510d301cc419"
+ hash: "4b79bd737312a5aa026b73c07bfd840c"
}
Frame {
msec: 1792
- hash: "9c804e5eec3b31acd55a510d301cc419"
+ hash: "4b79bd737312a5aa026b73c07bfd840c"
}
Frame {
msec: 1808
- hash: "9c804e5eec3b31acd55a510d301cc419"
+ hash: "4b79bd737312a5aa026b73c07bfd840c"
}
Frame {
msec: 1824
- hash: "799c7a637b061686c1456c9c535594d3"
+ hash: "daa67aed3e94e9e8823e8bed04aee960"
}
Frame {
msec: 1840
- hash: "799c7a637b061686c1456c9c535594d3"
+ hash: "daa67aed3e94e9e8823e8bed04aee960"
}
Frame {
msec: 1856
- hash: "799c7a637b061686c1456c9c535594d3"
+ hash: "daa67aed3e94e9e8823e8bed04aee960"
}
Frame {
msec: 1872
- hash: "799c7a637b061686c1456c9c535594d3"
+ hash: "daa67aed3e94e9e8823e8bed04aee960"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/data-MAC/qtbug_14865.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/data-MAC/qtbug_14865.0.png
index 75478566ad..7e841649a8 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/data-MAC/qtbug_14865.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/data-MAC/qtbug_14865.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/data-MAC/qtbug_14865.1.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/data-MAC/qtbug_14865.1.png
index 84430bb7ac..7e841649a8 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/data-MAC/qtbug_14865.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/data-MAC/qtbug_14865.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/data-MAC/qtbug_14865.qml b/tests/auto/declarative/qmlvisual/qdeclarativetext/data-MAC/qtbug_14865.qml
index 6b9986f019..d6d8c2aa6f 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/data-MAC/qtbug_14865.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/data-MAC/qtbug_14865.qml
@@ -6,442 +6,442 @@ VisualTest {
}
Frame {
msec: 16
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ image: "qtbug_14865.0.png"
}
Frame {
msec: 32
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 48
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 64
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 80
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 96
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 112
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 128
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 144
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 160
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 176
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 192
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 208
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 224
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 240
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 256
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 272
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 288
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 304
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 320
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 336
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 352
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 368
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 384
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 400
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 416
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 432
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 448
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 464
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 480
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 496
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 512
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 528
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 544
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 560
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 576
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 592
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 608
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 624
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 640
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 656
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 672
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 688
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 704
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 720
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 736
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 752
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 768
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 784
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 800
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 816
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 832
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 848
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 864
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 880
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 896
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 912
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 928
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 944
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 960
- image: "qtbug_14865.0.png"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 976
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ image: "qtbug_14865.1.png"
}
Frame {
msec: 992
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 1008
- hash: "35c278720fd30e14dce9cf8684dd2cd7"
+ hash: "212d34fa7425fe24398c9de6d4f10422"
}
Frame {
msec: 1024
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1040
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1056
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1072
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1088
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1104
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1120
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1136
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1152
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1168
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1184
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1200
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1216
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1232
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1248
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1264
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1280
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1296
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1312
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1328
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1344
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1360
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1376
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1392
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1408
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1424
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1440
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1456
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1472
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1488
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1504
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1520
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1536
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1552
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1568
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1584
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1600
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1616
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1632
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1648
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1664
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1680
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1696
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1712
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1728
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1744
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
Frame {
msec: 1760
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "3ccd3d26158a50d8f0567bafd7a23e06"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/data-X11/qtbug_14865.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/data-X11/qtbug_14865.0.png
index a4bae3a20a..6119f92d7c 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/data-X11/qtbug_14865.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/data-X11/qtbug_14865.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/data-X11/qtbug_14865.1.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/data-X11/qtbug_14865.1.png
new file mode 100644
index 0000000000..6119f92d7c
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/data-X11/qtbug_14865.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/data-X11/qtbug_14865.qml b/tests/auto/declarative/qmlvisual/qdeclarativetext/data-X11/qtbug_14865.qml
index a470a66dd4..481c9aa0cf 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/data-X11/qtbug_14865.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/data-X11/qtbug_14865.qml
@@ -6,442 +6,442 @@ VisualTest {
}
Frame {
msec: 16
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ image: "qtbug_14865.0.png"
}
Frame {
msec: 32
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 48
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 64
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 80
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 96
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 112
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 128
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 144
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 160
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 176
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 192
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 208
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 224
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 240
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 256
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 272
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 288
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 304
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 320
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 336
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 352
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 368
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 384
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 400
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 416
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 432
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 448
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 464
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 480
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 496
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 512
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 528
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 544
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 560
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 576
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 592
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 608
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 624
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 640
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 656
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 672
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 688
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 704
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 720
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 736
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 752
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 768
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 784
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 800
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 816
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 832
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 848
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 864
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 880
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 896
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 912
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 928
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 944
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 960
- image: "qtbug_14865.0.png"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 976
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ image: "qtbug_14865.1.png"
}
Frame {
msec: 992
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 1008
- hash: "fd4d35de0a95388dd92ffbb82fbe0e8a"
+ hash: "bd09363ea401e07a38d216bf29806592"
}
Frame {
msec: 1024
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1040
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1056
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1072
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1088
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1104
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1120
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1136
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1152
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1168
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1184
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1200
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1216
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1232
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1248
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1264
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1280
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1296
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1312
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1328
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1344
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1360
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1376
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1392
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1408
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1424
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1440
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1456
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1472
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1488
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1504
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1520
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1536
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1552
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1568
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1584
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1600
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1616
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1632
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1648
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1664
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1680
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1696
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1712
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1728
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1744
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
Frame {
msec: 1760
- hash: "eee4600ac08b458ac7ac2320e225674c"
+ hash: "a3e4ab9c6151c9acb4c9dd41c9c2c596"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide.0.png
index 88e065b8b4..749a9c5eeb 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide.1.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide.1.png
new file mode 100644
index 0000000000..749a9c5eeb
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide.qml b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide.qml
index 96144e114e..fbb542e3ac 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide.qml
@@ -6,247 +6,247 @@ VisualTest {
}
Frame {
msec: 16
- hash: "7d056af7620fe8387955a1401a4f088a"
+ image: "elide.0.png"
}
Frame {
msec: 32
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 48
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 64
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 80
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 96
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 112
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 128
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 144
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 160
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 176
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 192
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 208
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 224
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 240
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 256
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 272
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 288
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 304
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 320
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 336
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 352
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 368
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 384
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 400
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 416
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 432
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 448
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 464
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 480
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 496
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 512
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 528
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 544
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 560
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 576
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 592
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 608
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 624
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 640
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 656
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 672
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 688
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 704
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 720
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 736
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 752
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 768
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 784
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 800
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 816
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 832
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 848
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 864
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 880
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 896
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 912
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 928
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 944
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 960
- image: "elide.0.png"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 976
- hash: "7d056af7620fe8387955a1401a4f088a"
+ image: "elide.1.png"
}
Key {
type: 6
@@ -258,22 +258,22 @@ VisualTest {
}
Frame {
msec: 992
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 1008
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 1024
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 1040
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
Frame {
msec: 1056
- hash: "7d056af7620fe8387955a1401a4f088a"
+ hash: "4d49ec1a14a321ea9c0d506663df55c2"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide2.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide2.0.png
index 4df514af97..b84b8a9116 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide2.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide2.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide2.1.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide2.1.png
index e752fec6fa..dbae0ce295 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide2.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide2.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide2.2.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide2.2.png
index d2f8633295..bf56c80fcb 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide2.2.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide2.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide2.3.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide2.3.png
index 016232161d..c4f6e1804b 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide2.3.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide2.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide2.4.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide2.4.png
new file mode 100644
index 0000000000..ea86925f36
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide2.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide2.qml b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide2.qml
index b5319428e6..e780ea65c2 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide2.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/elide2.qml
@@ -6,439 +6,439 @@ VisualTest {
}
Frame {
msec: 16
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ image: "elide2.0.png"
}
Frame {
msec: 32
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "1c45bbf4494aeb017d7ad53c5e29cbc0"
}
Frame {
msec: 48
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "1c45bbf4494aeb017d7ad53c5e29cbc0"
}
Frame {
msec: 64
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "1c45bbf4494aeb017d7ad53c5e29cbc0"
}
Frame {
msec: 80
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "1c45bbf4494aeb017d7ad53c5e29cbc0"
}
Frame {
msec: 96
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "1c45bbf4494aeb017d7ad53c5e29cbc0"
}
Frame {
msec: 112
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "452d8e4da326413e4961f20a0d24d0f0"
}
Frame {
msec: 128
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "452d8e4da326413e4961f20a0d24d0f0"
}
Frame {
msec: 144
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "452d8e4da326413e4961f20a0d24d0f0"
}
Frame {
msec: 160
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "452d8e4da326413e4961f20a0d24d0f0"
}
Frame {
msec: 176
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "452d8e4da326413e4961f20a0d24d0f0"
}
Frame {
msec: 192
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "8dc43f316fd36a877c773c10c23b5703"
}
Frame {
msec: 208
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "8dc43f316fd36a877c773c10c23b5703"
}
Frame {
msec: 224
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "8dc43f316fd36a877c773c10c23b5703"
}
Frame {
msec: 240
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "8dc43f316fd36a877c773c10c23b5703"
}
Frame {
msec: 256
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "b7e055ce8d510c5ec66e71fa5a78fddf"
}
Frame {
msec: 272
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "b7e055ce8d510c5ec66e71fa5a78fddf"
}
Frame {
msec: 288
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "b7e055ce8d510c5ec66e71fa5a78fddf"
}
Frame {
msec: 304
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "b7e055ce8d510c5ec66e71fa5a78fddf"
}
Frame {
msec: 320
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "e9b0abe5719027348cd267eb4823fc5f"
}
Frame {
msec: 336
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "e9b0abe5719027348cd267eb4823fc5f"
}
Frame {
msec: 352
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "e9b0abe5719027348cd267eb4823fc5f"
}
Frame {
msec: 368
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "e9b0abe5719027348cd267eb4823fc5f"
}
Frame {
msec: 384
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "e9b0abe5719027348cd267eb4823fc5f"
}
Frame {
msec: 400
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "441102f2f69e9f4e10335c1746d47bd3"
}
Frame {
msec: 416
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "441102f2f69e9f4e10335c1746d47bd3"
}
Frame {
msec: 432
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "441102f2f69e9f4e10335c1746d47bd3"
}
Frame {
msec: 448
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "441102f2f69e9f4e10335c1746d47bd3"
}
Frame {
msec: 464
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "441102f2f69e9f4e10335c1746d47bd3"
}
Frame {
msec: 480
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "95668288170720989adde2a0b41d5ee8"
}
Frame {
msec: 496
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "95668288170720989adde2a0b41d5ee8"
}
Frame {
msec: 512
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "95668288170720989adde2a0b41d5ee8"
}
Frame {
msec: 528
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "95668288170720989adde2a0b41d5ee8"
}
Frame {
msec: 544
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "16bba6b72993e474b4c302af3f682834"
}
Frame {
msec: 560
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "16bba6b72993e474b4c302af3f682834"
}
Frame {
msec: 576
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "16bba6b72993e474b4c302af3f682834"
}
Frame {
msec: 592
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "16bba6b72993e474b4c302af3f682834"
}
Frame {
msec: 608
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "86c4d8bd1b19116411b6a6e450547425"
}
Frame {
msec: 624
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "86c4d8bd1b19116411b6a6e450547425"
}
Frame {
msec: 640
- hash: "90a45871fcfc509e60d4ee01527cde3b"
+ hash: "86c4d8bd1b19116411b6a6e450547425"
}
Frame {
msec: 656
- hash: "c73bf21c0c9946e123372c660c78e7dd"
+ hash: "86c4d8bd1b19116411b6a6e450547425"
}
Frame {
msec: 672
- hash: "c73bf21c0c9946e123372c660c78e7dd"
+ hash: "86c4d8bd1b19116411b6a6e450547425"
}
Frame {
msec: 688
- hash: "c73bf21c0c9946e123372c660c78e7dd"
+ hash: "d0d3cfa922ebca20c590ab7e59985268"
}
Frame {
msec: 704
- hash: "bba29f9ce1a1d7dafdfe34b0ab952658"
+ hash: "d0d3cfa922ebca20c590ab7e59985268"
}
Frame {
msec: 720
- hash: "bba29f9ce1a1d7dafdfe34b0ab952658"
+ hash: "d0d3cfa922ebca20c590ab7e59985268"
}
Frame {
msec: 736
- hash: "bba29f9ce1a1d7dafdfe34b0ab952658"
+ hash: "d0d3cfa922ebca20c590ab7e59985268"
}
Frame {
msec: 752
- hash: "bba29f9ce1a1d7dafdfe34b0ab952658"
+ hash: "d0d3cfa922ebca20c590ab7e59985268"
}
Frame {
msec: 768
- hash: "bba29f9ce1a1d7dafdfe34b0ab952658"
+ hash: "397d72a090171090f897283729b19bc8"
}
Frame {
msec: 784
- hash: "26f95496c4f1fa217d681a1ae79eff86"
+ hash: "397d72a090171090f897283729b19bc8"
}
Frame {
msec: 800
- hash: "26f95496c4f1fa217d681a1ae79eff86"
+ hash: "397d72a090171090f897283729b19bc8"
}
Frame {
msec: 816
- hash: "26f95496c4f1fa217d681a1ae79eff86"
+ hash: "397d72a090171090f897283729b19bc8"
}
Frame {
msec: 832
- hash: "26f95496c4f1fa217d681a1ae79eff86"
+ hash: "2b038e59289d2e3cef02245d2d128271"
}
Frame {
msec: 848
- hash: "96a83eae50a073573ace90239a64d326"
+ hash: "2b038e59289d2e3cef02245d2d128271"
}
Frame {
msec: 864
- hash: "96a83eae50a073573ace90239a64d326"
+ hash: "2b038e59289d2e3cef02245d2d128271"
}
Frame {
msec: 880
- hash: "7b15d75c611f24977f2a1b44ef9e16d8"
+ hash: "2b038e59289d2e3cef02245d2d128271"
}
Frame {
msec: 896
- hash: "7b15d75c611f24977f2a1b44ef9e16d8"
+ hash: "2b038e59289d2e3cef02245d2d128271"
}
Frame {
msec: 912
- hash: "7b15d75c611f24977f2a1b44ef9e16d8"
+ hash: "5f64aa763acdd8f5d6cc249be36e226a"
}
Frame {
msec: 928
- hash: "7b15d75c611f24977f2a1b44ef9e16d8"
+ hash: "5f64aa763acdd8f5d6cc249be36e226a"
}
Frame {
msec: 944
- hash: "7b15d75c611f24977f2a1b44ef9e16d8"
+ hash: "5f64aa763acdd8f5d6cc249be36e226a"
}
Frame {
msec: 960
- image: "elide2.0.png"
+ hash: "5f64aa763acdd8f5d6cc249be36e226a"
}
Frame {
msec: 976
- hash: "7b15d75c611f24977f2a1b44ef9e16d8"
+ image: "elide2.1.png"
}
Frame {
msec: 992
- hash: "7b000cccb4e4cdaa53b025d235478b1c"
+ hash: "4f8c81adc72fce17c7e54f4d45ec08e4"
}
Frame {
msec: 1008
- hash: "7b000cccb4e4cdaa53b025d235478b1c"
+ hash: "4f8c81adc72fce17c7e54f4d45ec08e4"
}
Frame {
msec: 1024
- hash: "18366b01550fdd4a7dc7305a6289ac9b"
+ hash: "4f8c81adc72fce17c7e54f4d45ec08e4"
}
Frame {
msec: 1040
- hash: "18366b01550fdd4a7dc7305a6289ac9b"
+ hash: "91a7a0c0f686975d0087ee0e066911eb"
}
Frame {
msec: 1056
- hash: "18366b01550fdd4a7dc7305a6289ac9b"
+ hash: "91a7a0c0f686975d0087ee0e066911eb"
}
Frame {
msec: 1072
- hash: "18366b01550fdd4a7dc7305a6289ac9b"
+ hash: "91a7a0c0f686975d0087ee0e066911eb"
}
Frame {
msec: 1088
- hash: "18366b01550fdd4a7dc7305a6289ac9b"
+ hash: "91a7a0c0f686975d0087ee0e066911eb"
}
Frame {
msec: 1104
- hash: "cde86069e7f9809ef2c88cc6ea83910b"
+ hash: "91a7a0c0f686975d0087ee0e066911eb"
}
Frame {
msec: 1120
- hash: "cde86069e7f9809ef2c88cc6ea83910b"
+ hash: "b19f6b8b4dc9d2a2d9aba82983e41889"
}
Frame {
msec: 1136
- hash: "cde86069e7f9809ef2c88cc6ea83910b"
+ hash: "b19f6b8b4dc9d2a2d9aba82983e41889"
}
Frame {
msec: 1152
- hash: "cde86069e7f9809ef2c88cc6ea83910b"
+ hash: "b19f6b8b4dc9d2a2d9aba82983e41889"
}
Frame {
msec: 1168
- hash: "b8c7416944cb741ceb4ee0e8545037b1"
+ hash: "b19f6b8b4dc9d2a2d9aba82983e41889"
}
Frame {
msec: 1184
- hash: "b8c7416944cb741ceb4ee0e8545037b1"
+ hash: "b19f6b8b4dc9d2a2d9aba82983e41889"
}
Frame {
msec: 1200
- hash: "b8c7416944cb741ceb4ee0e8545037b1"
+ hash: "456542b672303ddae500b96e9b66a558"
}
Frame {
msec: 1216
- hash: "74a03bf98bb205d7962e0fcc025c4ed3"
+ hash: "456542b672303ddae500b96e9b66a558"
}
Frame {
msec: 1232
- hash: "74a03bf98bb205d7962e0fcc025c4ed3"
+ hash: "456542b672303ddae500b96e9b66a558"
}
Frame {
msec: 1248
- hash: "74a03bf98bb205d7962e0fcc025c4ed3"
+ hash: "456542b672303ddae500b96e9b66a558"
}
Frame {
msec: 1264
- hash: "74a03bf98bb205d7962e0fcc025c4ed3"
+ hash: "8ec69f05d929c3b397dc721198ccacd4"
}
Frame {
msec: 1280
- hash: "0d286d7e274868e87f7de4367b69386e"
+ hash: "8ec69f05d929c3b397dc721198ccacd4"
}
Frame {
msec: 1296
- hash: "0d286d7e274868e87f7de4367b69386e"
+ hash: "8ec69f05d929c3b397dc721198ccacd4"
}
Frame {
msec: 1312
- hash: "892e9e8feeb15bbad5f38cb354aa7290"
+ hash: "8ec69f05d929c3b397dc721198ccacd4"
}
Frame {
msec: 1328
- hash: "892e9e8feeb15bbad5f38cb354aa7290"
+ hash: "2d63fd91f4b01f6b178c795838e78990"
}
Frame {
msec: 1344
- hash: "892e9e8feeb15bbad5f38cb354aa7290"
+ hash: "2d63fd91f4b01f6b178c795838e78990"
}
Frame {
msec: 1360
- hash: "06d6ad94b01af5b441fd64536f7740ff"
+ hash: "2d63fd91f4b01f6b178c795838e78990"
}
Frame {
msec: 1376
- hash: "06d6ad94b01af5b441fd64536f7740ff"
+ hash: "2d63fd91f4b01f6b178c795838e78990"
}
Frame {
msec: 1392
- hash: "06d6ad94b01af5b441fd64536f7740ff"
+ hash: "2d63fd91f4b01f6b178c795838e78990"
}
Frame {
msec: 1408
- hash: "0552844f7915835d3a35a01137d4c310"
+ hash: "c7c1d2c288653b414fe534ff6fab3381"
}
Frame {
msec: 1424
- hash: "0552844f7915835d3a35a01137d4c310"
+ hash: "c7c1d2c288653b414fe534ff6fab3381"
}
Frame {
msec: 1440
- hash: "0552844f7915835d3a35a01137d4c310"
+ hash: "c7c1d2c288653b414fe534ff6fab3381"
}
Frame {
msec: 1456
- hash: "0552844f7915835d3a35a01137d4c310"
+ hash: "c7c1d2c288653b414fe534ff6fab3381"
}
Frame {
msec: 1472
- hash: "0552844f7915835d3a35a01137d4c310"
+ hash: "c7c1d2c288653b414fe534ff6fab3381"
}
Frame {
msec: 1488
- hash: "afdf5d4d9e49a82a395afad6b3fe4f86"
+ hash: "23188e926a855a7a06211783ee51d22a"
}
Frame {
msec: 1504
- hash: "afdf5d4d9e49a82a395afad6b3fe4f86"
+ hash: "23188e926a855a7a06211783ee51d22a"
}
Frame {
msec: 1520
- hash: "afdf5d4d9e49a82a395afad6b3fe4f86"
+ hash: "23188e926a855a7a06211783ee51d22a"
}
Frame {
msec: 1536
- hash: "afdf5d4d9e49a82a395afad6b3fe4f86"
+ hash: "23188e926a855a7a06211783ee51d22a"
}
Frame {
msec: 1552
- hash: "bb434e586d40ae0ebcb89cde55a4ca11"
+ hash: "cfc64d8876d59e0d75f079c2e08cea5f"
}
Frame {
msec: 1568
- hash: "bb434e586d40ae0ebcb89cde55a4ca11"
+ hash: "cfc64d8876d59e0d75f079c2e08cea5f"
}
Frame {
msec: 1584
- hash: "bb434e586d40ae0ebcb89cde55a4ca11"
+ hash: "cfc64d8876d59e0d75f079c2e08cea5f"
}
Frame {
msec: 1600
- hash: "bb434e586d40ae0ebcb89cde55a4ca11"
+ hash: "cfc64d8876d59e0d75f079c2e08cea5f"
}
Frame {
msec: 1616
- hash: "bb434e586d40ae0ebcb89cde55a4ca11"
+ hash: "cfc64d8876d59e0d75f079c2e08cea5f"
}
Frame {
msec: 1632
- hash: "771561a07b3eb2396231b17343da7125"
+ hash: "766c679eaec4bd28dc92cb3642d5be83"
}
Frame {
msec: 1648
- hash: "771561a07b3eb2396231b17343da7125"
+ hash: "766c679eaec4bd28dc92cb3642d5be83"
}
Frame {
msec: 1664
- hash: "771561a07b3eb2396231b17343da7125"
+ hash: "766c679eaec4bd28dc92cb3642d5be83"
}
Frame {
msec: 1680
- hash: "771561a07b3eb2396231b17343da7125"
+ hash: "766c679eaec4bd28dc92cb3642d5be83"
}
Frame {
msec: 1696
- hash: "771561a07b3eb2396231b17343da7125"
+ hash: "a86ba05a854fde208e6cf7849327d5d0"
}
Frame {
msec: 1712
- hash: "771561a07b3eb2396231b17343da7125"
+ hash: "a86ba05a854fde208e6cf7849327d5d0"
}
Frame {
msec: 1728
- hash: "d3d23db79c5f2a374b267bcda8919d1e"
+ hash: "a86ba05a854fde208e6cf7849327d5d0"
}
Frame {
msec: 1744
- hash: "d3d23db79c5f2a374b267bcda8919d1e"
+ hash: "a86ba05a854fde208e6cf7849327d5d0"
}
Key {
type: 6
@@ -450,542 +450,542 @@ VisualTest {
}
Frame {
msec: 1760
- hash: "36a40dbdbb39122d30c26643e5924548"
+ hash: "a86ba05a854fde208e6cf7849327d5d0"
}
Frame {
msec: 1776
- hash: "36a40dbdbb39122d30c26643e5924548"
+ hash: "23b60817be2a741cada2af663b0d7f54"
}
Frame {
msec: 1792
- hash: "36a40dbdbb39122d30c26643e5924548"
+ hash: "23b60817be2a741cada2af663b0d7f54"
}
Frame {
msec: 1808
- hash: "36a40dbdbb39122d30c26643e5924548"
+ hash: "23b60817be2a741cada2af663b0d7f54"
}
Frame {
msec: 1824
- hash: "36a40dbdbb39122d30c26643e5924548"
+ hash: "23b60817be2a741cada2af663b0d7f54"
}
Frame {
msec: 1840
- hash: "6a202f32d3d7a7c9edc97e55c2fe7aca"
+ hash: "c098c1c0d5239c59735a5c9450e9d531"
}
Frame {
msec: 1856
- hash: "6a202f32d3d7a7c9edc97e55c2fe7aca"
+ hash: "c098c1c0d5239c59735a5c9450e9d531"
}
Frame {
msec: 1872
- hash: "6a202f32d3d7a7c9edc97e55c2fe7aca"
+ hash: "c098c1c0d5239c59735a5c9450e9d531"
}
Frame {
msec: 1888
- hash: "765b11a4fff9a7295440568899107159"
+ hash: "c098c1c0d5239c59735a5c9450e9d531"
}
Frame {
msec: 1904
- hash: "765b11a4fff9a7295440568899107159"
+ hash: "c098c1c0d5239c59735a5c9450e9d531"
}
Frame {
msec: 1920
- image: "elide2.1.png"
+ hash: "09f6ee218d314d3a405ae43e32588c07"
}
Frame {
msec: 1936
- hash: "765b11a4fff9a7295440568899107159"
+ image: "elide2.2.png"
}
Frame {
msec: 1952
- hash: "765b11a4fff9a7295440568899107159"
+ hash: "09f6ee218d314d3a405ae43e32588c07"
}
Frame {
msec: 1968
- hash: "e2726e028d0a17a918a28d248a087d71"
+ hash: "09f6ee218d314d3a405ae43e32588c07"
}
Frame {
msec: 1984
- hash: "e2726e028d0a17a918a28d248a087d71"
+ hash: "6ee480e7d8b0abe295ae12a660119102"
}
Frame {
msec: 2000
- hash: "e2726e028d0a17a918a28d248a087d71"
+ hash: "6ee480e7d8b0abe295ae12a660119102"
}
Frame {
msec: 2016
- hash: "e2726e028d0a17a918a28d248a087d71"
+ hash: "6ee480e7d8b0abe295ae12a660119102"
}
Frame {
msec: 2032
- hash: "94243dc2a8013e86250c993103b2d789"
+ hash: "6ee480e7d8b0abe295ae12a660119102"
}
Frame {
msec: 2048
- hash: "94243dc2a8013e86250c993103b2d789"
+ hash: "6ee480e7d8b0abe295ae12a660119102"
}
Frame {
msec: 2064
- hash: "94243dc2a8013e86250c993103b2d789"
+ hash: "b43ca0ea75f4c17c09248f78170d3839"
}
Frame {
msec: 2080
- hash: "94243dc2a8013e86250c993103b2d789"
+ hash: "b43ca0ea75f4c17c09248f78170d3839"
}
Frame {
msec: 2096
- hash: "94243dc2a8013e86250c993103b2d789"
+ hash: "b43ca0ea75f4c17c09248f78170d3839"
}
Frame {
msec: 2112
- hash: "d8fdababa06e1cafa9047de16d5a07b5"
+ hash: "b43ca0ea75f4c17c09248f78170d3839"
}
Frame {
msec: 2128
- hash: "d8fdababa06e1cafa9047de16d5a07b5"
+ hash: "92e0ee1174ffcb710403bb831aeec353"
}
Frame {
msec: 2144
- hash: "d8fdababa06e1cafa9047de16d5a07b5"
+ hash: "92e0ee1174ffcb710403bb831aeec353"
}
Frame {
msec: 2160
- hash: "d8fdababa06e1cafa9047de16d5a07b5"
+ hash: "92e0ee1174ffcb710403bb831aeec353"
}
Frame {
msec: 2176
- hash: "d8fdababa06e1cafa9047de16d5a07b5"
+ hash: "92e0ee1174ffcb710403bb831aeec353"
}
Frame {
msec: 2192
- hash: "f31d3f99faff3289b38ec91a43108707"
+ hash: "92e0ee1174ffcb710403bb831aeec353"
}
Frame {
msec: 2208
- hash: "f31d3f99faff3289b38ec91a43108707"
+ hash: "bba79ad6f3630b7aa382541cc2d3a2cd"
}
Frame {
msec: 2224
- hash: "f31d3f99faff3289b38ec91a43108707"
+ hash: "bba79ad6f3630b7aa382541cc2d3a2cd"
}
Frame {
msec: 2240
- hash: "60468f768e70c91cd28dca9479ed7738"
+ hash: "bba79ad6f3630b7aa382541cc2d3a2cd"
}
Frame {
msec: 2256
- hash: "60468f768e70c91cd28dca9479ed7738"
+ hash: "bba79ad6f3630b7aa382541cc2d3a2cd"
}
Frame {
msec: 2272
- hash: "fd5e8714cdd406f5626682c15a6efa38"
+ hash: "7efeb1565125f25252ce3f03dadc3bea"
}
Frame {
msec: 2288
- hash: "fd5e8714cdd406f5626682c15a6efa38"
+ hash: "7efeb1565125f25252ce3f03dadc3bea"
}
Frame {
msec: 2304
- hash: "fd5e8714cdd406f5626682c15a6efa38"
+ hash: "7efeb1565125f25252ce3f03dadc3bea"
}
Frame {
msec: 2320
- hash: "20f37569f7f3b374753b991b28d98e74"
+ hash: "7efeb1565125f25252ce3f03dadc3bea"
}
Frame {
msec: 2336
- hash: "20f37569f7f3b374753b991b28d98e74"
+ hash: "7efeb1565125f25252ce3f03dadc3bea"
}
Frame {
msec: 2352
- hash: "20f37569f7f3b374753b991b28d98e74"
+ hash: "9086d24dff90f8c9e4543c6b14c99bf6"
}
Frame {
msec: 2368
- hash: "20f37569f7f3b374753b991b28d98e74"
+ hash: "9086d24dff90f8c9e4543c6b14c99bf6"
}
Frame {
msec: 2384
- hash: "20f37569f7f3b374753b991b28d98e74"
+ hash: "9086d24dff90f8c9e4543c6b14c99bf6"
}
Frame {
msec: 2400
- hash: "8ab72206d4ba87effd44844c67ab4d53"
+ hash: "9086d24dff90f8c9e4543c6b14c99bf6"
}
Frame {
msec: 2416
- hash: "8ab72206d4ba87effd44844c67ab4d53"
+ hash: "9086d24dff90f8c9e4543c6b14c99bf6"
}
Frame {
msec: 2432
- hash: "65fccdd3a8803ec1d70a12407366fb57"
+ hash: "15d8e99a0676e0a1588dfddc00ab0d16"
}
Frame {
msec: 2448
- hash: "65fccdd3a8803ec1d70a12407366fb57"
+ hash: "15d8e99a0676e0a1588dfddc00ab0d16"
}
Frame {
msec: 2464
- hash: "65fccdd3a8803ec1d70a12407366fb57"
+ hash: "15d8e99a0676e0a1588dfddc00ab0d16"
}
Frame {
msec: 2480
- hash: "65fccdd3a8803ec1d70a12407366fb57"
+ hash: "15d8e99a0676e0a1588dfddc00ab0d16"
}
Frame {
msec: 2496
- hash: "65fccdd3a8803ec1d70a12407366fb57"
+ hash: "ecc25b88c29dc9d6c70df6e36a91f95c"
}
Frame {
msec: 2512
- hash: "ea98cc56d2f402814d8c1b952c8bd9a0"
+ hash: "ecc25b88c29dc9d6c70df6e36a91f95c"
}
Frame {
msec: 2528
- hash: "ea98cc56d2f402814d8c1b952c8bd9a0"
+ hash: "ecc25b88c29dc9d6c70df6e36a91f95c"
}
Frame {
msec: 2544
- hash: "ea98cc56d2f402814d8c1b952c8bd9a0"
+ hash: "ecc25b88c29dc9d6c70df6e36a91f95c"
}
Frame {
msec: 2560
- hash: "ea98cc56d2f402814d8c1b952c8bd9a0"
+ hash: "905c81686d8d2ecdde513622c35c0ea6"
}
Frame {
msec: 2576
- hash: "6dd6532db6afba17d36930bfd71abb5d"
+ hash: "905c81686d8d2ecdde513622c35c0ea6"
}
Frame {
msec: 2592
- hash: "6dd6532db6afba17d36930bfd71abb5d"
+ hash: "905c81686d8d2ecdde513622c35c0ea6"
}
Frame {
msec: 2608
- hash: "6dd6532db6afba17d36930bfd71abb5d"
+ hash: "905c81686d8d2ecdde513622c35c0ea6"
}
Frame {
msec: 2624
- hash: "6dd6532db6afba17d36930bfd71abb5d"
+ hash: "905c81686d8d2ecdde513622c35c0ea6"
}
Frame {
msec: 2640
- hash: "6dd6532db6afba17d36930bfd71abb5d"
+ hash: "537a2cf41a5e15220d2ca2218ac49a5a"
}
Frame {
msec: 2656
- hash: "70989ac02176a37beb2cf259cd2d9770"
+ hash: "537a2cf41a5e15220d2ca2218ac49a5a"
}
Frame {
msec: 2672
- hash: "70989ac02176a37beb2cf259cd2d9770"
+ hash: "537a2cf41a5e15220d2ca2218ac49a5a"
}
Frame {
msec: 2688
- hash: "70989ac02176a37beb2cf259cd2d9770"
+ hash: "537a2cf41a5e15220d2ca2218ac49a5a"
}
Frame {
msec: 2704
- hash: "70989ac02176a37beb2cf259cd2d9770"
+ hash: "53325ce7d011eeb72369463721f15e87"
}
Frame {
msec: 2720
- hash: "1c6d8786cb42afa2af611dec5ebdcda7"
+ hash: "53325ce7d011eeb72369463721f15e87"
}
Frame {
msec: 2736
- hash: "1c6d8786cb42afa2af611dec5ebdcda7"
+ hash: "53325ce7d011eeb72369463721f15e87"
}
Frame {
msec: 2752
- hash: "3e8215d2cb61404230284ddd0041a79c"
+ hash: "53325ce7d011eeb72369463721f15e87"
}
Frame {
msec: 2768
- hash: "3e8215d2cb61404230284ddd0041a79c"
+ hash: "53325ce7d011eeb72369463721f15e87"
}
Frame {
msec: 2784
- hash: "3e8215d2cb61404230284ddd0041a79c"
+ hash: "9ad2565cc95647a83d3ce3acc106485a"
}
Frame {
msec: 2800
- hash: "3e8215d2cb61404230284ddd0041a79c"
+ hash: "9ad2565cc95647a83d3ce3acc106485a"
}
Frame {
msec: 2816
- hash: "3e8215d2cb61404230284ddd0041a79c"
+ hash: "9ad2565cc95647a83d3ce3acc106485a"
}
Frame {
msec: 2832
- hash: "a4ed37665222950eab7fcb53dbe22bcf"
+ hash: "9ad2565cc95647a83d3ce3acc106485a"
}
Frame {
msec: 2848
- hash: "a4ed37665222950eab7fcb53dbe22bcf"
+ hash: "de7b66581e0743385a984f76c993b01b"
}
Frame {
msec: 2864
- hash: "a4ed37665222950eab7fcb53dbe22bcf"
+ hash: "de7b66581e0743385a984f76c993b01b"
}
Frame {
msec: 2880
- image: "elide2.2.png"
+ hash: "de7b66581e0743385a984f76c993b01b"
}
Frame {
msec: 2896
- hash: "a4ed37665222950eab7fcb53dbe22bcf"
+ image: "elide2.3.png"
}
Frame {
msec: 2912
- hash: "a4ed37665222950eab7fcb53dbe22bcf"
+ hash: "de7b66581e0743385a984f76c993b01b"
}
Frame {
msec: 2928
- hash: "a7f26f5fbcc97f408974e4bc23fd0b70"
+ hash: "f66852df1738e4fe29ac1f6938d814c2"
}
Frame {
msec: 2944
- hash: "a7f26f5fbcc97f408974e4bc23fd0b70"
+ hash: "f66852df1738e4fe29ac1f6938d814c2"
}
Frame {
msec: 2960
- hash: "913478b8d5d05967efd1c83e80e773e2"
+ hash: "f66852df1738e4fe29ac1f6938d814c2"
}
Frame {
msec: 2976
- hash: "913478b8d5d05967efd1c83e80e773e2"
+ hash: "f66852df1738e4fe29ac1f6938d814c2"
}
Frame {
msec: 2992
- hash: "913478b8d5d05967efd1c83e80e773e2"
+ hash: "cf6dde6c590879a9e905a0f559f089ca"
}
Frame {
msec: 3008
- hash: "130749caf262b3055e7ac229b6b89548"
+ hash: "cf6dde6c590879a9e905a0f559f089ca"
}
Frame {
msec: 3024
- hash: "130749caf262b3055e7ac229b6b89548"
+ hash: "cf6dde6c590879a9e905a0f559f089ca"
}
Frame {
msec: 3040
- hash: "130749caf262b3055e7ac229b6b89548"
+ hash: "cf6dde6c590879a9e905a0f559f089ca"
}
Frame {
msec: 3056
- hash: "130749caf262b3055e7ac229b6b89548"
+ hash: "cf6dde6c590879a9e905a0f559f089ca"
}
Frame {
msec: 3072
- hash: "130749caf262b3055e7ac229b6b89548"
+ hash: "bd63e4df280010ed9f67fc7976b86cb5"
}
Frame {
msec: 3088
- hash: "d7260d913c58065a671ff6b931bb2fb6"
+ hash: "bd63e4df280010ed9f67fc7976b86cb5"
}
Frame {
msec: 3104
- hash: "d7260d913c58065a671ff6b931bb2fb6"
+ hash: "bd63e4df280010ed9f67fc7976b86cb5"
}
Frame {
msec: 3120
- hash: "d7260d913c58065a671ff6b931bb2fb6"
+ hash: "bd63e4df280010ed9f67fc7976b86cb5"
}
Frame {
msec: 3136
- hash: "d7260d913c58065a671ff6b931bb2fb6"
+ hash: "bd63e4df280010ed9f67fc7976b86cb5"
}
Frame {
msec: 3152
- hash: "9059402dce5cb1813af8f7ebbd831bca"
+ hash: "065d3d370faa58aed9899cae0f86f032"
}
Frame {
msec: 3168
- hash: "9059402dce5cb1813af8f7ebbd831bca"
+ hash: "065d3d370faa58aed9899cae0f86f032"
}
Frame {
msec: 3184
- hash: "9059402dce5cb1813af8f7ebbd831bca"
+ hash: "065d3d370faa58aed9899cae0f86f032"
}
Frame {
msec: 3200
- hash: "80387fc8aedc0c490c689c3a1711fe9f"
+ hash: "065d3d370faa58aed9899cae0f86f032"
}
Frame {
msec: 3216
- hash: "80387fc8aedc0c490c689c3a1711fe9f"
+ hash: "b5623d05c578a6f09bcfacd4d3163b09"
}
Frame {
msec: 3232
- hash: "80387fc8aedc0c490c689c3a1711fe9f"
+ hash: "b5623d05c578a6f09bcfacd4d3163b09"
}
Frame {
msec: 3248
- hash: "f461bf58cbfd345a3f4e087cfcb0e9f0"
+ hash: "b5623d05c578a6f09bcfacd4d3163b09"
}
Frame {
msec: 3264
- hash: "f461bf58cbfd345a3f4e087cfcb0e9f0"
+ hash: "b5623d05c578a6f09bcfacd4d3163b09"
}
Frame {
msec: 3280
- hash: "d41a792b81cb891a91f2bff6dbee3bdd"
+ hash: "83c70529d05911ea26a5cbbab5aa20f2"
}
Frame {
msec: 3296
- hash: "d41a792b81cb891a91f2bff6dbee3bdd"
+ hash: "83c70529d05911ea26a5cbbab5aa20f2"
}
Frame {
msec: 3312
- hash: "d41a792b81cb891a91f2bff6dbee3bdd"
+ hash: "83c70529d05911ea26a5cbbab5aa20f2"
}
Frame {
msec: 3328
- hash: "d41a792b81cb891a91f2bff6dbee3bdd"
+ hash: "83c70529d05911ea26a5cbbab5aa20f2"
}
Frame {
msec: 3344
- hash: "d41a792b81cb891a91f2bff6dbee3bdd"
+ hash: "83c70529d05911ea26a5cbbab5aa20f2"
}
Frame {
msec: 3360
- hash: "664ac430dd416e6d1ed7e001458202cf"
+ hash: "17927c706da1bc222ba5462af66a9d2f"
}
Frame {
msec: 3376
- hash: "664ac430dd416e6d1ed7e001458202cf"
+ hash: "17927c706da1bc222ba5462af66a9d2f"
}
Frame {
msec: 3392
- hash: "664ac430dd416e6d1ed7e001458202cf"
+ hash: "17927c706da1bc222ba5462af66a9d2f"
}
Frame {
msec: 3408
- hash: "664ac430dd416e6d1ed7e001458202cf"
+ hash: "17927c706da1bc222ba5462af66a9d2f"
}
Frame {
msec: 3424
- hash: "664ac430dd416e6d1ed7e001458202cf"
+ hash: "17927c706da1bc222ba5462af66a9d2f"
}
Frame {
msec: 3440
- hash: "c7a9e47b613745858a76a57e1782b566"
+ hash: "f49627ba8d3e257e0e94404da24d12dc"
}
Frame {
msec: 3456
- hash: "c7a9e47b613745858a76a57e1782b566"
+ hash: "f49627ba8d3e257e0e94404da24d12dc"
}
Frame {
msec: 3472
- hash: "b90d46cbd9d7d1d82cb9abfbe27fc549"
+ hash: "f49627ba8d3e257e0e94404da24d12dc"
}
Frame {
msec: 3488
- hash: "b90d46cbd9d7d1d82cb9abfbe27fc549"
+ hash: "f49627ba8d3e257e0e94404da24d12dc"
}
Frame {
msec: 3504
- hash: "b90d46cbd9d7d1d82cb9abfbe27fc549"
+ hash: "37a0c9dc20431c8398409d4522a0fdd3"
}
Frame {
msec: 3520
- hash: "59c03ceae9b13576bd0e285234dfe264"
+ hash: "37a0c9dc20431c8398409d4522a0fdd3"
}
Frame {
msec: 3536
- hash: "59c03ceae9b13576bd0e285234dfe264"
+ hash: "37a0c9dc20431c8398409d4522a0fdd3"
}
Frame {
msec: 3552
- hash: "59c03ceae9b13576bd0e285234dfe264"
+ hash: "37a0c9dc20431c8398409d4522a0fdd3"
}
Frame {
msec: 3568
- hash: "59c03ceae9b13576bd0e285234dfe264"
+ hash: "67bebfe9fb5ac745f40040ff8083e999"
}
Frame {
msec: 3584
- hash: "59c03ceae9b13576bd0e285234dfe264"
+ hash: "67bebfe9fb5ac745f40040ff8083e999"
}
Frame {
msec: 3600
- hash: "b883d12eea2ec596cb6ee81f2d1db35f"
+ hash: "67bebfe9fb5ac745f40040ff8083e999"
}
Frame {
msec: 3616
- hash: "b883d12eea2ec596cb6ee81f2d1db35f"
+ hash: "67bebfe9fb5ac745f40040ff8083e999"
}
Frame {
msec: 3632
- hash: "b883d12eea2ec596cb6ee81f2d1db35f"
+ hash: "67bebfe9fb5ac745f40040ff8083e999"
}
Frame {
msec: 3648
- hash: "b883d12eea2ec596cb6ee81f2d1db35f"
+ hash: "84f8b27b83b566c99e65ea39b29772c1"
}
Frame {
msec: 3664
- hash: "9bd66e03c36c8cc279c9cfb1ea9e96a0"
+ hash: "84f8b27b83b566c99e65ea39b29772c1"
}
Frame {
msec: 3680
- hash: "9bd66e03c36c8cc279c9cfb1ea9e96a0"
+ hash: "84f8b27b83b566c99e65ea39b29772c1"
}
Frame {
msec: 3696
- hash: "9bd66e03c36c8cc279c9cfb1ea9e96a0"
+ hash: "84f8b27b83b566c99e65ea39b29772c1"
}
Frame {
msec: 3712
- hash: "9bd66e03c36c8cc279c9cfb1ea9e96a0"
+ hash: "84f8b27b83b566c99e65ea39b29772c1"
}
Frame {
msec: 3728
- hash: "9bd66e03c36c8cc279c9cfb1ea9e96a0"
+ hash: "c6ba663536f19b9f291ef35b7a70e490"
}
Frame {
msec: 3744
- hash: "ee357c3850d0f328db859e7b790bed83"
+ hash: "c6ba663536f19b9f291ef35b7a70e490"
}
Frame {
msec: 3760
- hash: "ee357c3850d0f328db859e7b790bed83"
+ hash: "c6ba663536f19b9f291ef35b7a70e490"
}
Frame {
msec: 3776
- hash: "f706095272153c1e9fc4a4825ba54d91"
+ hash: "c6ba663536f19b9f291ef35b7a70e490"
}
Frame {
msec: 3792
- hash: "f706095272153c1e9fc4a4825ba54d91"
+ hash: "65f22784730aa27b2628d015a1cc4abe"
}
Frame {
msec: 3808
- hash: "34f4d03164469f99bb7bcb365041cf8e"
+ hash: "65f22784730aa27b2628d015a1cc4abe"
}
Frame {
msec: 3824
- hash: "34f4d03164469f99bb7bcb365041cf8e"
+ hash: "65f22784730aa27b2628d015a1cc4abe"
}
Frame {
msec: 3840
- image: "elide2.3.png"
+ hash: "65f22784730aa27b2628d015a1cc4abe"
}
Frame {
msec: 3856
- hash: "34f4d03164469f99bb7bcb365041cf8e"
+ image: "elide2.4.png"
}
Frame {
msec: 3872
- hash: "34f4d03164469f99bb7bcb365041cf8e"
+ hash: "b11a511d80de87329501b9c11aebbc58"
}
Frame {
msec: 3888
- hash: "97cb5f52e1a5e82a15542b7e5f772fba"
+ hash: "b11a511d80de87329501b9c11aebbc58"
}
Frame {
msec: 3904
- hash: "97cb5f52e1a5e82a15542b7e5f772fba"
+ hash: "b11a511d80de87329501b9c11aebbc58"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/multilength.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/multilength.0.png
index 8caaf5f19a..3861b4f288 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/multilength.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/multilength.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/multilength.1.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/multilength.1.png
new file mode 100644
index 0000000000..ce166f1912
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/multilength.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/multilength.qml b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/multilength.qml
index 30df3facf5..84778ac3dd 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/multilength.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-MAC/multilength.qml
@@ -6,298 +6,298 @@ VisualTest {
}
Frame {
msec: 16
- hash: "2e258ad7cb0a2cd7c6c47a0b0a9563c1"
+ image: "multilength.0.png"
}
Frame {
msec: 32
- hash: "d818e0f4f1011a2a8f1d0d803fa18bc0"
+ hash: "58d757783e6d57c5ac2596219dfd37be"
}
Frame {
msec: 48
- hash: "44b37be97bbd1f0e26d81f76d9643e51"
+ hash: "e76b3b98f447b706c59ba0c175e1829d"
}
Frame {
msec: 64
- hash: "3079a5cf6b8277ae3e1b29ae09d04adc"
+ hash: "f0dbb0b55d1d27bf7c0260db5b5782a2"
}
Frame {
msec: 80
- hash: "ba899e6f18abb7105f915cef4e60f1e1"
+ hash: "00845517336befd7ead0141312ea38ce"
}
Frame {
msec: 96
- hash: "6d2d2b3dc8afa60e32a39449ba90f78d"
+ hash: "99723ae092407e5291ed3a13f5a7be61"
}
Frame {
msec: 112
- hash: "965af350a8fc20c7bcffb370802bc9d9"
+ hash: "2d531f1dd1545a4e2f8ca4c65338e0c3"
}
Frame {
msec: 128
- hash: "8e088db1ff0eb9f5c28268dee929928c"
+ hash: "9f273323f48a70be279302b194203a36"
}
Frame {
msec: 144
- hash: "a0ba6c6bd1e491778294346eeabd8138"
+ hash: "7de4bd5f82369953c2a4a990ddaf4339"
}
Frame {
msec: 160
- hash: "068a018a5c017cb76ebf3721e0acdb35"
+ hash: "96c5f74c01723a15a57db161604bc245"
}
Frame {
msec: 176
- hash: "efa65cae0a4d027c2ec508deecef8aa5"
+ hash: "df2eac6300919044cfe2a2f591c3bd99"
}
Frame {
msec: 192
- hash: "9c224e97aa56c6b203a48fb689d72c9a"
+ hash: "a153904cdfa0be697a25bebc4ce1fbca"
}
Frame {
msec: 208
- hash: "4f78af1e82a2dd46bab2d237d4f574e5"
+ hash: "de243731b92ac1cac05e194aed0acd1e"
}
Frame {
msec: 224
- hash: "7d022c13e3ef07ca0b6618ae8865dbf1"
+ hash: "f6ccc0f127bfc6212885c3c6470639ed"
}
Frame {
msec: 240
- hash: "1dc2ecf6cb92cd7d9e467de0049a8598"
+ hash: "a2d56227aebedb9590a1124e44fe8e84"
}
Frame {
msec: 256
- hash: "262174926ac657c3cd788e2383b5842b"
+ hash: "5f8c0a42a231580dcfff6a534e77bef8"
}
Frame {
msec: 272
- hash: "984c40aaa927f9e9e73ad228f057d3d9"
+ hash: "e631663ac692ab097cb28095b45e8563"
}
Frame {
msec: 288
- hash: "0c74101beaeb0a59c1e6b1bf751ca71d"
+ hash: "2a03f6ba3c67a9e9732cc1f5cdc42c23"
}
Frame {
msec: 304
- hash: "1c2dd6a6675014255e83c2ae734d717b"
+ hash: "26b85080d624b232e5209aa082fc11b1"
}
Frame {
msec: 320
- hash: "f6ac3e9e82a9a710f500f8053b6030ac"
+ hash: "1c027f4a0114bb9050a3a8d9de2b8a56"
}
Frame {
msec: 336
- hash: "9676fdc060e5784e96534a962992c024"
+ hash: "788e6ad3cb5f6e120e40fd3dc6ac8483"
}
Frame {
msec: 352
- hash: "c46634183e4bde82419bf757bd674a72"
+ hash: "7e1b0fb71528dfa17a87950c0ff86111"
}
Frame {
msec: 368
- hash: "d04d082f4a1602a308da7f373cbb4094"
+ hash: "e1878e6e8ba14d8945e1f71ac8d42c1e"
}
Frame {
msec: 384
- hash: "a4178c9ffbb74f3f221fc63bee26ca35"
+ hash: "556f42297eb1e57d6a8af0946651a75e"
}
Frame {
msec: 400
- hash: "0667b13789a501995b2846f7d93fb973"
+ hash: "73df08e7e3391b339cea9f5f082fd83a"
}
Frame {
msec: 416
- hash: "fda46bf0beecbb4326b2fc6f6926f0a7"
+ hash: "de3bd8a12c2a448738ce77036b97bda7"
}
Frame {
msec: 432
- hash: "85cbdea027d76dee1dad376679a40a22"
+ hash: "0ab187aa7a478dbf005f35416a93c456"
}
Frame {
msec: 448
- hash: "0fd56200749ea5882e1bd714e9803d44"
+ hash: "e5baf64ccafa6a4d2bf74aacf52019c6"
}
Frame {
msec: 464
- hash: "10bf5c477f64f442990716b7eec8fd70"
+ hash: "0ed2ee4a773ade712ef207549006aa7b"
}
Frame {
msec: 480
- hash: "7cbd8ba3f09c3d00051cd33006381afb"
+ hash: "b23dd49bdfe8fb155e2055262e6a1478"
}
Frame {
msec: 496
- hash: "dca10161836025808cddce9fd93f2412"
+ hash: "871f82636a03d6fa8cbfb580038bd0b7"
}
Frame {
msec: 512
- hash: "b949ec6303ccaafc203066c7f9b33ef2"
+ hash: "463cdc2cbde034d7d7a5061338b319c7"
}
Frame {
msec: 528
- hash: "853c521bad75c08c0dfe3a00bed01136"
+ hash: "22ff8e25136877fd6f5dce1b01e65c08"
}
Frame {
msec: 544
- hash: "dd76c440dc8cfcb7305409483d21d65d"
+ hash: "97d4e49622d877e9e1e0102786e1ee55"
}
Frame {
msec: 560
- hash: "c9b70db4b94e4b0cc855102f43b8e731"
+ hash: "ebf5304185abe4bc33be44c3df09a93a"
}
Frame {
msec: 576
- hash: "d196057b8aa1e11ec9cf11032b57ca03"
+ hash: "307887d9973e807c52b2143cdfe438ad"
}
Frame {
msec: 592
- hash: "0fae715746a8a340a8f3c4428cf96783"
+ hash: "d89547539741f387fdd6aa80ef239fbd"
}
Frame {
msec: 608
- hash: "dd2e89d00ce85b167fbc822fedbfb449"
+ hash: "b818215b4cdd6e811057f1a0f5eb1a5a"
}
Frame {
msec: 624
- hash: "a5228adf745f580364eafcbbdd994178"
+ hash: "84f7e523c0f21236ff8aad1333470d11"
}
Frame {
msec: 640
- hash: "f750f588ee00805bc3757940f95de9ae"
+ hash: "7f974663c7add6d10ebdd401794e087a"
}
Frame {
msec: 656
- hash: "55a79fefc2bf6d42b442e68150e3a9bc"
+ hash: "4c824dc01e8fead2706608ca68293d11"
}
Frame {
msec: 672
- hash: "7b932e7585e66cc7cd31f858ce78a6e1"
+ hash: "86b0f617eb3bfff944c3b670b3b51c71"
}
Frame {
msec: 688
- hash: "10f204c59a5bff0c49dfc7691c35cef8"
+ hash: "86c5660c22003099cc4121381c11de85"
}
Frame {
msec: 704
- hash: "cf901c80729eb0b83b46777e727d43e2"
+ hash: "3c2bd08ea17aaa920949239f06b255cf"
}
Frame {
msec: 720
- hash: "f6bf6e11ef6a71d7e746fae1d0a44531"
+ hash: "2380278cc065a3ac5355127d9873796c"
}
Frame {
msec: 736
- hash: "4a8795196ece8c0ef18319008dbc0f2f"
+ hash: "e5d8624e841476926b3e2a5ebca8c65f"
}
Frame {
msec: 752
- hash: "44d32f0b5377ad3b08928413f20e95e1"
+ hash: "eab70f5005a6b39e3ead6e4452df1a54"
}
Frame {
msec: 768
- hash: "9e0dd160a465573cbac831a14e36ba6d"
+ hash: "46acef023d154bad3f91e0267996421b"
}
Frame {
msec: 784
- hash: "fb2e2522cee569632d9682aa04e7ca08"
+ hash: "26ba9f30a4bfd72c9b6dae2a25660ea9"
}
Frame {
msec: 800
- hash: "71b0e8d7671cee10f4f71a80abcde7ec"
+ hash: "9fabdd5cf1190fb34bdc7834eba01cd3"
}
Frame {
msec: 816
- hash: "4affee92d320d6eca9995ddd8989627f"
+ hash: "b1e7af47d4ee706374365fdd4b4d52be"
}
Frame {
msec: 832
- hash: "b3e5e26a34cd491d3cd23f4e611266e2"
+ hash: "86fa2e142e75d9d2a074a5376992f139"
}
Frame {
msec: 848
- hash: "aa185efe8d0c4c61d4df55266830cfd8"
+ hash: "a3dea2bf8f84743d35070e82ec585c9a"
}
Frame {
msec: 864
- hash: "19c01ead1135f84b4b3a32583815fd10"
+ hash: "ab649fbbe0ca508812de9839d14b3f8c"
}
Frame {
msec: 880
- hash: "a231a722225c26ff764f16570d1e6beb"
+ hash: "08f8a334e121d4edb0ca1617353bfebc"
}
Frame {
msec: 896
- hash: "466fce12d10bd4b714d4ead14d1c5839"
+ hash: "bb7997c1e18b90cfaad4c3e4ec44356e"
}
Frame {
msec: 912
- hash: "158650554c8467ed7d93c3c11177e041"
+ hash: "31a7e5d71c28eebfcd29e9ea4950ad17"
}
Frame {
msec: 928
- hash: "ac16910bc816ca6c76a78160dda8380d"
+ hash: "2b759276e03c2884bff7ed863c032dfc"
}
Frame {
msec: 944
- hash: "23ac6eeb0c9bd48dbc844b1263a18cbb"
+ hash: "aa0868f006097a435c46368ea9e3ba36"
}
Frame {
msec: 960
- image: "multilength.0.png"
+ hash: "6454753699c21589d2523a83da0aaa34"
}
Frame {
msec: 976
- hash: "3da0b9d963113cfb58152bac1c757065"
+ image: "multilength.1.png"
}
Frame {
msec: 992
- hash: "e1a33345ee1372069d9282406f1e5605"
+ hash: "ac26abff68fbc1cf89dc5efc4a714a04"
}
Frame {
msec: 1008
- hash: "da872c570bccf17e88ac7db1d6d076ae"
+ hash: "d3f9dc8cb653d996fb57652f85abcbc1"
}
Frame {
msec: 1024
- hash: "6feea54c6a7f9895001efeff177f9be9"
+ hash: "002a94f067eef532f63b6ef916977c2c"
}
Frame {
msec: 1040
- hash: "09049b33ca46a2fc2d06855e29ae66bf"
+ hash: "f7935d01ee9b497034cc1d8f007a0fdf"
}
Frame {
msec: 1056
- hash: "cd96d789f57ac1d425942416337174f1"
+ hash: "4a1bfdcc85e5444c1bd836399e86ee05"
}
Frame {
msec: 1072
- hash: "0a763dd626e27ad14963aecfb8d7673c"
+ hash: "1b86514f3c85a8438ef183cc4772e997"
}
Frame {
msec: 1088
- hash: "3d81f68bb7aac95b66b0cd0defbb3657"
+ hash: "7bf4c1ca946288e9d1a7ad055d8cacaa"
}
Frame {
msec: 1104
- hash: "469b862006f99dfefcca803bc49287e3"
+ hash: "b3a00861967157786a80c80030d5495b"
}
Frame {
msec: 1120
- hash: "c3f698102bd46231430ab9e8029b8192"
+ hash: "b9c6195d3336d7519cc72b16e75d00f6"
}
Frame {
msec: 1136
- hash: "421a9b4848a59281aea73c08a7219a33"
+ hash: "6dba6d030a5ff6a92a57f0bdcf0fe781"
}
Frame {
msec: 1152
- hash: "0066eaa302678a4be35dca0c3ed33b1c"
+ hash: "cc97a2721f4339094819c8b7aec6d74c"
}
Frame {
msec: 1168
- hash: "4cceb05bfeb231189b66f1fbdfaeccd3"
+ hash: "190f67abce51f58fdd1591651633d67e"
}
Frame {
msec: 1184
- hash: "ccf229cdd6fde7ef663791d27a008bee"
+ hash: "b255f75cfc4918663b8bd47c887cfb3c"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide.0.png
index de216bad9a..f2e61178f5 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide.1.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide.1.png
new file mode 100644
index 0000000000..f2e61178f5
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide.qml b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide.qml
index fcaeed57da..f306f5c5b3 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide.qml
@@ -6,274 +6,274 @@ VisualTest {
}
Frame {
msec: 16
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ image: "elide.0.png"
}
Frame {
msec: 32
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 48
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 64
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 80
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 96
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 112
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 128
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 144
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 160
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 176
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 192
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 208
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 224
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 240
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 256
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 272
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 288
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 304
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 320
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 336
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 352
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 368
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 384
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 400
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 416
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 432
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 448
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 464
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 480
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 496
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 512
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 528
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 544
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 560
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 576
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 592
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 608
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 624
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 640
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 656
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 672
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 688
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 704
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 720
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 736
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 752
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 768
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 784
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 800
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 816
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 832
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 848
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 864
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 880
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 896
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 912
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 928
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 944
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 960
- image: "elide.0.png"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 976
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ image: "elide.1.png"
}
Key {
type: 6
key: 16777249
- modifiers: 67108864
+ modifiers: 0
text: ""
autorep: false
count: 1
}
Frame {
msec: 992
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 1008
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 1024
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 1040
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
Frame {
msec: 1056
- hash: "bdf278826a033dbb744d1fa9492c9351"
+ hash: "a2003f5b238564e9b68b38db156431d2"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide2.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide2.0.png
index 03b6e5d2cb..2f4c84af35 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide2.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide2.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide2.1.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide2.1.png
index 43565b62ac..ae786a24d8 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide2.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide2.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide2.2.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide2.2.png
index f2df9b29bc..785093e022 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide2.2.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide2.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide2.3.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide2.3.png
index 11cf86c16e..28f95c9edb 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide2.3.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide2.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide2.4.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide2.4.png
new file mode 100644
index 0000000000..963c4eade4
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide2.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide2.qml b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide2.qml
index 1c1d5ebe32..6e9057c12d 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide2.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/elide2.qml
@@ -6,986 +6,986 @@ VisualTest {
}
Frame {
msec: 16
- hash: "26a468619443250a160845a894643eb9"
+ image: "elide2.0.png"
}
Frame {
msec: 32
- hash: "26a468619443250a160845a894643eb9"
+ hash: "716f5d150bd8757952d7b4ba327fb8bd"
}
Frame {
msec: 48
- hash: "26a468619443250a160845a894643eb9"
+ hash: "716f5d150bd8757952d7b4ba327fb8bd"
}
Frame {
msec: 64
- hash: "26a468619443250a160845a894643eb9"
+ hash: "716f5d150bd8757952d7b4ba327fb8bd"
}
Frame {
msec: 80
- hash: "26a468619443250a160845a894643eb9"
+ hash: "716f5d150bd8757952d7b4ba327fb8bd"
}
Frame {
msec: 96
- hash: "26a468619443250a160845a894643eb9"
+ hash: "716f5d150bd8757952d7b4ba327fb8bd"
}
Frame {
msec: 112
- hash: "26a468619443250a160845a894643eb9"
+ hash: "716f5d150bd8757952d7b4ba327fb8bd"
}
Frame {
msec: 128
- hash: "26a468619443250a160845a894643eb9"
+ hash: "8ec55fba2017a56c641c7baca5345b8b"
}
Frame {
msec: 144
- hash: "26a468619443250a160845a894643eb9"
+ hash: "8ec55fba2017a56c641c7baca5345b8b"
}
Frame {
msec: 160
- hash: "26a468619443250a160845a894643eb9"
+ hash: "8ec55fba2017a56c641c7baca5345b8b"
}
Frame {
msec: 176
- hash: "26a468619443250a160845a894643eb9"
+ hash: "8ec55fba2017a56c641c7baca5345b8b"
}
Frame {
msec: 192
- hash: "26a468619443250a160845a894643eb9"
+ hash: "79dc1645a5486ddfa3d957f3bd4ffbda"
}
Frame {
msec: 208
- hash: "26a468619443250a160845a894643eb9"
+ hash: "79dc1645a5486ddfa3d957f3bd4ffbda"
}
Frame {
msec: 224
- hash: "26a468619443250a160845a894643eb9"
+ hash: "79dc1645a5486ddfa3d957f3bd4ffbda"
}
Frame {
msec: 240
- hash: "26a468619443250a160845a894643eb9"
+ hash: "79dc1645a5486ddfa3d957f3bd4ffbda"
}
Frame {
msec: 256
- hash: "26a468619443250a160845a894643eb9"
+ hash: "476eae8ca9f6698cf67e2d20c5c24b66"
}
Frame {
msec: 272
- hash: "26a468619443250a160845a894643eb9"
+ hash: "476eae8ca9f6698cf67e2d20c5c24b66"
}
Frame {
msec: 288
- hash: "26a468619443250a160845a894643eb9"
+ hash: "476eae8ca9f6698cf67e2d20c5c24b66"
}
Frame {
msec: 304
- hash: "26a468619443250a160845a894643eb9"
+ hash: "476eae8ca9f6698cf67e2d20c5c24b66"
}
Frame {
msec: 320
- hash: "26a468619443250a160845a894643eb9"
+ hash: "bef1a9585daf30f1739a190ffa2e4b46"
}
Frame {
msec: 336
- hash: "26a468619443250a160845a894643eb9"
+ hash: "bef1a9585daf30f1739a190ffa2e4b46"
}
Frame {
msec: 352
- hash: "26a468619443250a160845a894643eb9"
+ hash: "bef1a9585daf30f1739a190ffa2e4b46"
}
Frame {
msec: 368
- hash: "26a468619443250a160845a894643eb9"
+ hash: "bef1a9585daf30f1739a190ffa2e4b46"
}
Frame {
msec: 384
- hash: "26a468619443250a160845a894643eb9"
+ hash: "bef1a9585daf30f1739a190ffa2e4b46"
}
Frame {
msec: 400
- hash: "26a468619443250a160845a894643eb9"
+ hash: "156dfc4e9fbc1af5e8c6c48ecd2afe8f"
}
Frame {
msec: 416
- hash: "26a468619443250a160845a894643eb9"
+ hash: "156dfc4e9fbc1af5e8c6c48ecd2afe8f"
}
Frame {
msec: 432
- hash: "26a468619443250a160845a894643eb9"
+ hash: "156dfc4e9fbc1af5e8c6c48ecd2afe8f"
}
Frame {
msec: 448
- hash: "26a468619443250a160845a894643eb9"
+ hash: "156dfc4e9fbc1af5e8c6c48ecd2afe8f"
}
Frame {
msec: 464
- hash: "26a468619443250a160845a894643eb9"
+ hash: "2fe675a360e61452c31dda42070c137f"
}
Frame {
msec: 480
- hash: "26a468619443250a160845a894643eb9"
+ hash: "2fe675a360e61452c31dda42070c137f"
}
Frame {
msec: 496
- hash: "26a468619443250a160845a894643eb9"
+ hash: "2fe675a360e61452c31dda42070c137f"
}
Frame {
msec: 512
- hash: "26a468619443250a160845a894643eb9"
+ hash: "2fe675a360e61452c31dda42070c137f"
}
Frame {
msec: 528
- hash: "250d6cd632ad176aacbb09fa50f6c099"
+ hash: "0f1bac7c35b9f5bdbce10fb577c9cf28"
}
Frame {
msec: 544
- hash: "250d6cd632ad176aacbb09fa50f6c099"
+ hash: "0f1bac7c35b9f5bdbce10fb577c9cf28"
}
Frame {
msec: 560
- hash: "250d6cd632ad176aacbb09fa50f6c099"
+ hash: "0f1bac7c35b9f5bdbce10fb577c9cf28"
}
Frame {
msec: 576
- hash: "92cfcc9ee96124c5a3848f68228b286b"
+ hash: "0f1bac7c35b9f5bdbce10fb577c9cf28"
}
Frame {
msec: 592
- hash: "92cfcc9ee96124c5a3848f68228b286b"
+ hash: "0f1bac7c35b9f5bdbce10fb577c9cf28"
}
Frame {
msec: 608
- hash: "92cfcc9ee96124c5a3848f68228b286b"
+ hash: "c79f68e9481f91f6f6a6816a655efc24"
}
Frame {
msec: 624
- hash: "92cfcc9ee96124c5a3848f68228b286b"
+ hash: "c79f68e9481f91f6f6a6816a655efc24"
}
Frame {
msec: 640
- hash: "92cfcc9ee96124c5a3848f68228b286b"
+ hash: "c79f68e9481f91f6f6a6816a655efc24"
}
Frame {
msec: 656
- hash: "235f581c767dc4a4f6133e570126a813"
+ hash: "c79f68e9481f91f6f6a6816a655efc24"
}
Frame {
msec: 672
- hash: "235f581c767dc4a4f6133e570126a813"
+ hash: "9a189e9d9249fb04fd98c4e91aba1cb5"
}
Frame {
msec: 688
- hash: "235f581c767dc4a4f6133e570126a813"
+ hash: "9a189e9d9249fb04fd98c4e91aba1cb5"
}
Frame {
msec: 704
- hash: "235f581c767dc4a4f6133e570126a813"
+ hash: "9a189e9d9249fb04fd98c4e91aba1cb5"
}
Frame {
msec: 720
- hash: "235f581c767dc4a4f6133e570126a813"
+ hash: "9a189e9d9249fb04fd98c4e91aba1cb5"
}
Frame {
msec: 736
- hash: "c7d6b690224ae554f6200a5d2520ae25"
+ hash: "9a189e9d9249fb04fd98c4e91aba1cb5"
}
Frame {
msec: 752
- hash: "c7d6b690224ae554f6200a5d2520ae25"
+ hash: "42c1ac48858ab5901601dc5a950a398f"
}
Frame {
msec: 768
- hash: "23f5fb2275945e89bf856877b82f99de"
+ hash: "42c1ac48858ab5901601dc5a950a398f"
}
Frame {
msec: 784
- hash: "23f5fb2275945e89bf856877b82f99de"
+ hash: "42c1ac48858ab5901601dc5a950a398f"
}
Frame {
msec: 800
- hash: "23f5fb2275945e89bf856877b82f99de"
+ hash: "42c1ac48858ab5901601dc5a950a398f"
}
Frame {
msec: 816
- hash: "23f5fb2275945e89bf856877b82f99de"
+ hash: "f05bf4e3cc562c5a900fb389a7c093de"
}
Frame {
msec: 832
- hash: "23f5fb2275945e89bf856877b82f99de"
+ hash: "f05bf4e3cc562c5a900fb389a7c093de"
}
Frame {
msec: 848
- hash: "99e6e3d94bb90939dacadf20f791d415"
+ hash: "f05bf4e3cc562c5a900fb389a7c093de"
}
Frame {
msec: 864
- hash: "99e6e3d94bb90939dacadf20f791d415"
+ hash: "f05bf4e3cc562c5a900fb389a7c093de"
}
Frame {
msec: 880
- hash: "99e6e3d94bb90939dacadf20f791d415"
+ hash: "1b5d1234aa02009ec447ac8fefc403bb"
}
Frame {
msec: 896
- hash: "186db3738dc443d66b5b0352d7753b26"
+ hash: "1b5d1234aa02009ec447ac8fefc403bb"
}
Frame {
msec: 912
- hash: "186db3738dc443d66b5b0352d7753b26"
+ hash: "1b5d1234aa02009ec447ac8fefc403bb"
}
Frame {
msec: 928
- hash: "186db3738dc443d66b5b0352d7753b26"
+ hash: "1b5d1234aa02009ec447ac8fefc403bb"
}
Frame {
msec: 944
- hash: "186db3738dc443d66b5b0352d7753b26"
+ hash: "1b5d1234aa02009ec447ac8fefc403bb"
}
Frame {
msec: 960
- image: "elide2.0.png"
+ hash: "ec7cfc539d7bde448c631da211de8f44"
}
Frame {
msec: 976
- hash: "88be0433f060832e8345a43eb681998e"
+ image: "elide2.1.png"
}
Frame {
msec: 992
- hash: "88be0433f060832e8345a43eb681998e"
+ hash: "ec7cfc539d7bde448c631da211de8f44"
}
Frame {
msec: 1008
- hash: "88be0433f060832e8345a43eb681998e"
+ hash: "ec7cfc539d7bde448c631da211de8f44"
}
Frame {
msec: 1024
- hash: "88be0433f060832e8345a43eb681998e"
+ hash: "646394dd534a32bc3a066e606cc485f3"
}
Frame {
msec: 1040
- hash: "88be0433f060832e8345a43eb681998e"
+ hash: "646394dd534a32bc3a066e606cc485f3"
}
Frame {
msec: 1056
- hash: "89e8da94c1e4e1c031d58f1dd593104a"
+ hash: "646394dd534a32bc3a066e606cc485f3"
}
Frame {
msec: 1072
- hash: "89e8da94c1e4e1c031d58f1dd593104a"
+ hash: "646394dd534a32bc3a066e606cc485f3"
}
Frame {
msec: 1088
- hash: "786b7ea2e267ee6d593f18caa95be45d"
+ hash: "6b66b968aaed1896e2e9fafe27bba50f"
}
Frame {
msec: 1104
- hash: "786b7ea2e267ee6d593f18caa95be45d"
+ hash: "6b66b968aaed1896e2e9fafe27bba50f"
}
Frame {
msec: 1120
- hash: "786b7ea2e267ee6d593f18caa95be45d"
+ hash: "6b66b968aaed1896e2e9fafe27bba50f"
}
Frame {
msec: 1136
- hash: "830afd40f8ee9d0c969fbd61eb68ae94"
+ hash: "6b66b968aaed1896e2e9fafe27bba50f"
}
Frame {
msec: 1152
- hash: "830afd40f8ee9d0c969fbd61eb68ae94"
+ hash: "6b66b968aaed1896e2e9fafe27bba50f"
}
Frame {
msec: 1168
- hash: "d00b74868c2dbddc2d5ae5ec0469f9a1"
+ hash: "869f75182b9a4b452da1689a5921085f"
}
Frame {
msec: 1184
- hash: "d00b74868c2dbddc2d5ae5ec0469f9a1"
+ hash: "869f75182b9a4b452da1689a5921085f"
}
Frame {
msec: 1200
- hash: "d00b74868c2dbddc2d5ae5ec0469f9a1"
+ hash: "869f75182b9a4b452da1689a5921085f"
}
Frame {
msec: 1216
- hash: "d00b74868c2dbddc2d5ae5ec0469f9a1"
+ hash: "869f75182b9a4b452da1689a5921085f"
}
Frame {
msec: 1232
- hash: "1508cbb70b1221ccf169ff6376df4cc9"
+ hash: "b2017890ac543b9224e85a44157d9fbb"
}
Frame {
msec: 1248
- hash: "1508cbb70b1221ccf169ff6376df4cc9"
+ hash: "b2017890ac543b9224e85a44157d9fbb"
}
Frame {
msec: 1264
- hash: "1508cbb70b1221ccf169ff6376df4cc9"
+ hash: "b2017890ac543b9224e85a44157d9fbb"
}
Frame {
msec: 1280
- hash: "490d7425d117ebe23e3e3637fd3e7b09"
+ hash: "b2017890ac543b9224e85a44157d9fbb"
}
Frame {
msec: 1296
- hash: "490d7425d117ebe23e3e3637fd3e7b09"
+ hash: "b2017890ac543b9224e85a44157d9fbb"
}
Frame {
msec: 1312
- hash: "490d7425d117ebe23e3e3637fd3e7b09"
+ hash: "acac3eb92619e01b3470511cef1a91c8"
}
Frame {
msec: 1328
- hash: "490d7425d117ebe23e3e3637fd3e7b09"
+ hash: "acac3eb92619e01b3470511cef1a91c8"
}
Frame {
msec: 1344
- hash: "490d7425d117ebe23e3e3637fd3e7b09"
+ hash: "acac3eb92619e01b3470511cef1a91c8"
}
Frame {
msec: 1360
- hash: "048b3223ca262f5f3271f4ad81fbe41f"
+ hash: "acac3eb92619e01b3470511cef1a91c8"
}
Frame {
msec: 1376
- hash: "048b3223ca262f5f3271f4ad81fbe41f"
+ hash: "7f6d45b22e5cb86a7fb45d3f9bcebfc1"
}
Frame {
msec: 1392
- hash: "048b3223ca262f5f3271f4ad81fbe41f"
+ hash: "7f6d45b22e5cb86a7fb45d3f9bcebfc1"
}
Frame {
msec: 1408
- hash: "048b3223ca262f5f3271f4ad81fbe41f"
+ hash: "7f6d45b22e5cb86a7fb45d3f9bcebfc1"
}
Frame {
msec: 1424
- hash: "048b3223ca262f5f3271f4ad81fbe41f"
+ hash: "7f6d45b22e5cb86a7fb45d3f9bcebfc1"
}
Frame {
msec: 1440
- hash: "4e91391c852167a04c6224ef5426b17c"
+ hash: "481f661e2613242d253498e467c91105"
}
Frame {
msec: 1456
- hash: "4e91391c852167a04c6224ef5426b17c"
+ hash: "481f661e2613242d253498e467c91105"
}
Frame {
msec: 1472
- hash: "4e91391c852167a04c6224ef5426b17c"
+ hash: "481f661e2613242d253498e467c91105"
}
Frame {
msec: 1488
- hash: "4e91391c852167a04c6224ef5426b17c"
+ hash: "481f661e2613242d253498e467c91105"
}
Frame {
msec: 1504
- hash: "4e91391c852167a04c6224ef5426b17c"
+ hash: "481f661e2613242d253498e467c91105"
}
Frame {
msec: 1520
- hash: "08e969be0cd428140cd079f5f6338b4f"
+ hash: "4c342918351f0165ce63129afbd60074"
}
Frame {
msec: 1536
- hash: "08e969be0cd428140cd079f5f6338b4f"
+ hash: "4c342918351f0165ce63129afbd60074"
}
Frame {
msec: 1552
- hash: "08e969be0cd428140cd079f5f6338b4f"
+ hash: "4c342918351f0165ce63129afbd60074"
}
Frame {
msec: 1568
- hash: "08e969be0cd428140cd079f5f6338b4f"
+ hash: "4c342918351f0165ce63129afbd60074"
}
Frame {
msec: 1584
- hash: "08e969be0cd428140cd079f5f6338b4f"
+ hash: "4f21a25c75cfabbcbd7c485c7c479bfc"
}
Frame {
msec: 1600
- hash: "458e10bb1d38ef8f1248be959a3ac8bc"
+ hash: "4f21a25c75cfabbcbd7c485c7c479bfc"
}
Frame {
msec: 1616
- hash: "458e10bb1d38ef8f1248be959a3ac8bc"
+ hash: "4f21a25c75cfabbcbd7c485c7c479bfc"
}
Frame {
msec: 1632
- hash: "458e10bb1d38ef8f1248be959a3ac8bc"
+ hash: "4f21a25c75cfabbcbd7c485c7c479bfc"
}
Frame {
msec: 1648
- hash: "fde9eccf9fa722d4321bd26ead3d6c5e"
+ hash: "b627f215fdb6f62e6cbf2ddbe14dc794"
}
Frame {
msec: 1664
- hash: "fde9eccf9fa722d4321bd26ead3d6c5e"
+ hash: "b627f215fdb6f62e6cbf2ddbe14dc794"
}
Frame {
msec: 1680
- hash: "fde9eccf9fa722d4321bd26ead3d6c5e"
+ hash: "b627f215fdb6f62e6cbf2ddbe14dc794"
}
Frame {
msec: 1696
- hash: "fde9eccf9fa722d4321bd26ead3d6c5e"
+ hash: "b627f215fdb6f62e6cbf2ddbe14dc794"
}
Frame {
msec: 1712
- hash: "fde9eccf9fa722d4321bd26ead3d6c5e"
+ hash: "b627f215fdb6f62e6cbf2ddbe14dc794"
}
Frame {
msec: 1728
- hash: "68ac9747d1b36351ac6677336d4e0bfd"
+ hash: "8c490b27882c58d34cbc941a0b10e6fe"
}
Frame {
msec: 1744
- hash: "68ac9747d1b36351ac6677336d4e0bfd"
+ hash: "8c490b27882c58d34cbc941a0b10e6fe"
}
Key {
type: 6
key: 16777249
- modifiers: 0
+ modifiers: 67108864
text: ""
autorep: false
count: 1
}
Frame {
msec: 1760
- hash: "68ac9747d1b36351ac6677336d4e0bfd"
+ hash: "8c490b27882c58d34cbc941a0b10e6fe"
}
Frame {
msec: 1776
- hash: "015658eeb53ce6937d0a0b3941cea138"
+ hash: "8c490b27882c58d34cbc941a0b10e6fe"
}
Frame {
msec: 1792
- hash: "015658eeb53ce6937d0a0b3941cea138"
+ hash: "739abcde4a980e05932aa079245136cd"
}
Frame {
msec: 1808
- hash: "015658eeb53ce6937d0a0b3941cea138"
+ hash: "739abcde4a980e05932aa079245136cd"
}
Frame {
msec: 1824
- hash: "015658eeb53ce6937d0a0b3941cea138"
+ hash: "739abcde4a980e05932aa079245136cd"
}
Frame {
msec: 1840
- hash: "015658eeb53ce6937d0a0b3941cea138"
+ hash: "739abcde4a980e05932aa079245136cd"
}
Frame {
msec: 1856
- hash: "4720bcf54fce0c680a983113dc009104"
+ hash: "739abcde4a980e05932aa079245136cd"
}
Frame {
msec: 1872
- hash: "4720bcf54fce0c680a983113dc009104"
+ hash: "af47b93ee81b0e4add42d9addad92219"
}
Frame {
msec: 1888
- hash: "4720bcf54fce0c680a983113dc009104"
+ hash: "af47b93ee81b0e4add42d9addad92219"
}
Frame {
msec: 1904
- hash: "4720bcf54fce0c680a983113dc009104"
+ hash: "af47b93ee81b0e4add42d9addad92219"
}
Frame {
msec: 1920
- image: "elide2.1.png"
+ hash: "af47b93ee81b0e4add42d9addad92219"
}
Frame {
msec: 1936
- hash: "03123bcb0f4ff032257415f713a5873c"
+ image: "elide2.2.png"
}
Frame {
msec: 1952
- hash: "03123bcb0f4ff032257415f713a5873c"
+ hash: "43d7bee700464080f7535d398d60af25"
}
Frame {
msec: 1968
- hash: "03123bcb0f4ff032257415f713a5873c"
+ hash: "43d7bee700464080f7535d398d60af25"
}
Frame {
msec: 1984
- hash: "03123bcb0f4ff032257415f713a5873c"
+ hash: "43d7bee700464080f7535d398d60af25"
}
Frame {
msec: 2000
- hash: "e93d314c5a19e771282bf09ff0983917"
+ hash: "31bf9784a1e1b84cc0ed4a342284ce1a"
}
Frame {
msec: 2016
- hash: "e93d314c5a19e771282bf09ff0983917"
+ hash: "31bf9784a1e1b84cc0ed4a342284ce1a"
}
Frame {
msec: 2032
- hash: "e93d314c5a19e771282bf09ff0983917"
+ hash: "31bf9784a1e1b84cc0ed4a342284ce1a"
}
Frame {
msec: 2048
- hash: "e93d314c5a19e771282bf09ff0983917"
+ hash: "31bf9784a1e1b84cc0ed4a342284ce1a"
}
Frame {
msec: 2064
- hash: "e93d314c5a19e771282bf09ff0983917"
+ hash: "31bf9784a1e1b84cc0ed4a342284ce1a"
}
Frame {
msec: 2080
- hash: "877e76006891001e574b39f60249ec8a"
+ hash: "59db6dabc6c6930b9561bc906f49cc3c"
}
Frame {
msec: 2096
- hash: "877e76006891001e574b39f60249ec8a"
+ hash: "59db6dabc6c6930b9561bc906f49cc3c"
}
Frame {
msec: 2112
- hash: "877e76006891001e574b39f60249ec8a"
+ hash: "59db6dabc6c6930b9561bc906f49cc3c"
}
Frame {
msec: 2128
- hash: "04213ba6fc23600c62c49bdd63725b3d"
+ hash: "59db6dabc6c6930b9561bc906f49cc3c"
}
Frame {
msec: 2144
- hash: "04213ba6fc23600c62c49bdd63725b3d"
+ hash: "9e9cd1f4b9ad0980d6601e52c3d21402"
}
Frame {
msec: 2160
- hash: "04213ba6fc23600c62c49bdd63725b3d"
+ hash: "9e9cd1f4b9ad0980d6601e52c3d21402"
}
Frame {
msec: 2176
- hash: "04213ba6fc23600c62c49bdd63725b3d"
+ hash: "9e9cd1f4b9ad0980d6601e52c3d21402"
}
Frame {
msec: 2192
- hash: "605fbd44c23d135d809e987fde15caf0"
+ hash: "9e9cd1f4b9ad0980d6601e52c3d21402"
}
Frame {
msec: 2208
- hash: "605fbd44c23d135d809e987fde15caf0"
+ hash: "f8e23813215634224d2fb00f3d1993c5"
}
Frame {
msec: 2224
- hash: "138d9fe345628797df8af84b71e76717"
+ hash: "f8e23813215634224d2fb00f3d1993c5"
}
Frame {
msec: 2240
- hash: "138d9fe345628797df8af84b71e76717"
+ hash: "f8e23813215634224d2fb00f3d1993c5"
}
Frame {
msec: 2256
- hash: "138d9fe345628797df8af84b71e76717"
+ hash: "f8e23813215634224d2fb00f3d1993c5"
}
Frame {
msec: 2272
- hash: "138d9fe345628797df8af84b71e76717"
+ hash: "f8e23813215634224d2fb00f3d1993c5"
}
Frame {
msec: 2288
- hash: "138d9fe345628797df8af84b71e76717"
+ hash: "e867db62cb8ec10228ea7b2eceda3723"
}
Frame {
msec: 2304
- hash: "1a160138dbed69dd2fc6cdc335c39332"
+ hash: "e867db62cb8ec10228ea7b2eceda3723"
}
Frame {
msec: 2320
- hash: "1a160138dbed69dd2fc6cdc335c39332"
+ hash: "e867db62cb8ec10228ea7b2eceda3723"
}
Frame {
msec: 2336
- hash: "a40edd45d19a09b7b5b6601c2e4789ba"
+ hash: "e867db62cb8ec10228ea7b2eceda3723"
}
Frame {
msec: 2352
- hash: "a40edd45d19a09b7b5b6601c2e4789ba"
+ hash: "36da8cc7019fae8b1abc877961d3af41"
}
Frame {
msec: 2368
- hash: "a40edd45d19a09b7b5b6601c2e4789ba"
+ hash: "36da8cc7019fae8b1abc877961d3af41"
}
Frame {
msec: 2384
- hash: "a40edd45d19a09b7b5b6601c2e4789ba"
+ hash: "36da8cc7019fae8b1abc877961d3af41"
}
Frame {
msec: 2400
- hash: "a40edd45d19a09b7b5b6601c2e4789ba"
+ hash: "36da8cc7019fae8b1abc877961d3af41"
}
Frame {
msec: 2416
- hash: "f8c24070f98d456925ce5fb5519ef20e"
+ hash: "36da8cc7019fae8b1abc877961d3af41"
}
Frame {
msec: 2432
- hash: "f8c24070f98d456925ce5fb5519ef20e"
+ hash: "ea907beaf860fa21684fc524e876346c"
}
Frame {
msec: 2448
- hash: "f8c24070f98d456925ce5fb5519ef20e"
+ hash: "ea907beaf860fa21684fc524e876346c"
}
Frame {
msec: 2464
- hash: "f8c24070f98d456925ce5fb5519ef20e"
+ hash: "ea907beaf860fa21684fc524e876346c"
}
Frame {
msec: 2480
- hash: "f8c24070f98d456925ce5fb5519ef20e"
+ hash: "ea907beaf860fa21684fc524e876346c"
}
Frame {
msec: 2496
- hash: "f383c8fc8764f8615937fcbe18a881cb"
+ hash: "2b3eb80e842df2fa2b6c217a2948af45"
}
Frame {
msec: 2512
- hash: "f383c8fc8764f8615937fcbe18a881cb"
+ hash: "2b3eb80e842df2fa2b6c217a2948af45"
}
Frame {
msec: 2528
- hash: "f383c8fc8764f8615937fcbe18a881cb"
+ hash: "2b3eb80e842df2fa2b6c217a2948af45"
}
Frame {
msec: 2544
- hash: "f383c8fc8764f8615937fcbe18a881cb"
+ hash: "2b3eb80e842df2fa2b6c217a2948af45"
}
Frame {
msec: 2560
- hash: "f383c8fc8764f8615937fcbe18a881cb"
+ hash: "05ffb4d0af3fea65151596ea5b9b43c5"
}
Frame {
msec: 2576
- hash: "98355e4087b07e4bf85bd9dd6b2594e2"
+ hash: "05ffb4d0af3fea65151596ea5b9b43c5"
}
Frame {
msec: 2592
- hash: "98355e4087b07e4bf85bd9dd6b2594e2"
+ hash: "05ffb4d0af3fea65151596ea5b9b43c5"
}
Frame {
msec: 2608
- hash: "98355e4087b07e4bf85bd9dd6b2594e2"
+ hash: "05ffb4d0af3fea65151596ea5b9b43c5"
}
Frame {
msec: 2624
- hash: "98355e4087b07e4bf85bd9dd6b2594e2"
+ hash: "05ffb4d0af3fea65151596ea5b9b43c5"
}
Frame {
msec: 2640
- hash: "098f7051d2bc8b159a3c358c99ade1e5"
+ hash: "612517436b6ef76f29b213944f742624"
}
Frame {
msec: 2656
- hash: "098f7051d2bc8b159a3c358c99ade1e5"
+ hash: "612517436b6ef76f29b213944f742624"
}
Frame {
msec: 2672
- hash: "098f7051d2bc8b159a3c358c99ade1e5"
+ hash: "612517436b6ef76f29b213944f742624"
}
Frame {
msec: 2688
- hash: "fa588455c73bfd3d14ee322580d95015"
+ hash: "612517436b6ef76f29b213944f742624"
}
Frame {
msec: 2704
- hash: "fa588455c73bfd3d14ee322580d95015"
+ hash: "a62c646572c94d55971445c0546e06fc"
}
Frame {
msec: 2720
- hash: "fa588455c73bfd3d14ee322580d95015"
+ hash: "a62c646572c94d55971445c0546e06fc"
}
Frame {
msec: 2736
- hash: "fa588455c73bfd3d14ee322580d95015"
+ hash: "a62c646572c94d55971445c0546e06fc"
}
Frame {
msec: 2752
- hash: "fa588455c73bfd3d14ee322580d95015"
+ hash: "a62c646572c94d55971445c0546e06fc"
}
Frame {
msec: 2768
- hash: "ed69a2ab8e66fa397190b35cb942ec2d"
+ hash: "91be655836fbf7f811a44ffa1e80b72a"
}
Frame {
msec: 2784
- hash: "ed69a2ab8e66fa397190b35cb942ec2d"
+ hash: "91be655836fbf7f811a44ffa1e80b72a"
}
Frame {
msec: 2800
- hash: "ed69a2ab8e66fa397190b35cb942ec2d"
+ hash: "91be655836fbf7f811a44ffa1e80b72a"
}
Frame {
msec: 2816
- hash: "ed69a2ab8e66fa397190b35cb942ec2d"
+ hash: "91be655836fbf7f811a44ffa1e80b72a"
}
Frame {
msec: 2832
- hash: "ed69a2ab8e66fa397190b35cb942ec2d"
+ hash: "91be655836fbf7f811a44ffa1e80b72a"
}
Frame {
msec: 2848
- hash: "905d42c34198abdc68a3c6f69bfbd293"
+ hash: "4fdf23d15633bd9dbcc1767fca797ef6"
}
Frame {
msec: 2864
- hash: "905d42c34198abdc68a3c6f69bfbd293"
+ hash: "4fdf23d15633bd9dbcc1767fca797ef6"
}
Frame {
msec: 2880
- image: "elide2.2.png"
+ hash: "4fdf23d15633bd9dbcc1767fca797ef6"
}
Frame {
msec: 2896
- hash: "2e796a963fee85d51be536a00baa0c45"
+ image: "elide2.3.png"
}
Frame {
msec: 2912
- hash: "2e796a963fee85d51be536a00baa0c45"
+ hash: "a81f41ab4e100d92f643ae188c1a5b8a"
}
Frame {
msec: 2928
- hash: "2e796a963fee85d51be536a00baa0c45"
+ hash: "a81f41ab4e100d92f643ae188c1a5b8a"
}
Frame {
msec: 2944
- hash: "b73b94832ede92794187b9ed452f96e0"
+ hash: "a81f41ab4e100d92f643ae188c1a5b8a"
}
Frame {
msec: 2960
- hash: "b73b94832ede92794187b9ed452f96e0"
+ hash: "a81f41ab4e100d92f643ae188c1a5b8a"
}
Frame {
msec: 2976
- hash: "b73b94832ede92794187b9ed452f96e0"
+ hash: "a81f41ab4e100d92f643ae188c1a5b8a"
}
Frame {
msec: 2992
- hash: "b73b94832ede92794187b9ed452f96e0"
+ hash: "6785dbb1bd05081c5b5d890d4b4f28d5"
}
Frame {
msec: 3008
- hash: "b73b94832ede92794187b9ed452f96e0"
+ hash: "6785dbb1bd05081c5b5d890d4b4f28d5"
}
Frame {
msec: 3024
- hash: "4f000e957cd4c7ef4845855088801c2d"
+ hash: "6785dbb1bd05081c5b5d890d4b4f28d5"
}
Frame {
msec: 3040
- hash: "4f000e957cd4c7ef4845855088801c2d"
+ hash: "6785dbb1bd05081c5b5d890d4b4f28d5"
}
Frame {
msec: 3056
- hash: "4f000e957cd4c7ef4845855088801c2d"
+ hash: "ca4fc26d93d4767ef7cdbac6b2e24cf5"
}
Frame {
msec: 3072
- hash: "4f000e957cd4c7ef4845855088801c2d"
+ hash: "ca4fc26d93d4767ef7cdbac6b2e24cf5"
}
Frame {
msec: 3088
- hash: "4f000e957cd4c7ef4845855088801c2d"
+ hash: "ca4fc26d93d4767ef7cdbac6b2e24cf5"
}
Frame {
msec: 3104
- hash: "a432c8b664352e585f732813df2e861f"
+ hash: "ca4fc26d93d4767ef7cdbac6b2e24cf5"
}
Frame {
msec: 3120
- hash: "a432c8b664352e585f732813df2e861f"
+ hash: "706fd39d5945f9f698e7fa6e26631b58"
}
Frame {
msec: 3136
- hash: "a432c8b664352e585f732813df2e861f"
+ hash: "706fd39d5945f9f698e7fa6e26631b58"
}
Frame {
msec: 3152
- hash: "e06abd91449d3b5d18582b9da2d20c97"
+ hash: "706fd39d5945f9f698e7fa6e26631b58"
}
Frame {
msec: 3168
- hash: "e06abd91449d3b5d18582b9da2d20c97"
+ hash: "706fd39d5945f9f698e7fa6e26631b58"
}
Frame {
msec: 3184
- hash: "e06abd91449d3b5d18582b9da2d20c97"
+ hash: "706fd39d5945f9f698e7fa6e26631b58"
}
Frame {
msec: 3200
- hash: "c4cecc3832935d59d9808ea70385632d"
+ hash: "c4ed351cacc86b5ca2c8198be0a754e0"
}
Frame {
msec: 3216
- hash: "c4cecc3832935d59d9808ea70385632d"
+ hash: "c4ed351cacc86b5ca2c8198be0a754e0"
}
Frame {
msec: 3232
- hash: "c4cecc3832935d59d9808ea70385632d"
+ hash: "c4ed351cacc86b5ca2c8198be0a754e0"
}
Frame {
msec: 3248
- hash: "56942f99b8b2a6c491b8635ae5619a4f"
+ hash: "c4ed351cacc86b5ca2c8198be0a754e0"
}
Frame {
msec: 3264
- hash: "56942f99b8b2a6c491b8635ae5619a4f"
+ hash: "addbbaca2d29fbc8c7907d51a8e9cdce"
}
Frame {
msec: 3280
- hash: "56942f99b8b2a6c491b8635ae5619a4f"
+ hash: "addbbaca2d29fbc8c7907d51a8e9cdce"
}
Frame {
msec: 3296
- hash: "56942f99b8b2a6c491b8635ae5619a4f"
+ hash: "addbbaca2d29fbc8c7907d51a8e9cdce"
}
Frame {
msec: 3312
- hash: "a3bf780a2ae09fb3fee6215a24b8bb53"
+ hash: "addbbaca2d29fbc8c7907d51a8e9cdce"
}
Frame {
msec: 3328
- hash: "a3bf780a2ae09fb3fee6215a24b8bb53"
+ hash: "fcb6b78276df1a6c839d6f30f8fe6495"
}
Frame {
msec: 3344
- hash: "a3bf780a2ae09fb3fee6215a24b8bb53"
+ hash: "fcb6b78276df1a6c839d6f30f8fe6495"
}
Frame {
msec: 3360
- hash: "a3bf780a2ae09fb3fee6215a24b8bb53"
+ hash: "fcb6b78276df1a6c839d6f30f8fe6495"
}
Frame {
msec: 3376
- hash: "822cff91269181ddb5a3b24ca0227583"
+ hash: "fcb6b78276df1a6c839d6f30f8fe6495"
}
Frame {
msec: 3392
- hash: "822cff91269181ddb5a3b24ca0227583"
+ hash: "fcb6b78276df1a6c839d6f30f8fe6495"
}
Frame {
msec: 3408
- hash: "822cff91269181ddb5a3b24ca0227583"
+ hash: "b066cbbb00a4bef4e730ea8131c2bbe5"
}
Frame {
msec: 3424
- hash: "822cff91269181ddb5a3b24ca0227583"
+ hash: "b066cbbb00a4bef4e730ea8131c2bbe5"
}
Frame {
msec: 3440
- hash: "20f06bbb130e81d6eb2612aa79bb7968"
+ hash: "b066cbbb00a4bef4e730ea8131c2bbe5"
}
Frame {
msec: 3456
- hash: "20f06bbb130e81d6eb2612aa79bb7968"
+ hash: "b066cbbb00a4bef4e730ea8131c2bbe5"
}
Frame {
msec: 3472
- hash: "fcb03904d0e628f95c9b665c65b10266"
+ hash: "e6d801e738ed3265b0127b79da7e8ec5"
}
Frame {
msec: 3488
- hash: "fcb03904d0e628f95c9b665c65b10266"
+ hash: "e6d801e738ed3265b0127b79da7e8ec5"
}
Frame {
msec: 3504
- hash: "fcb03904d0e628f95c9b665c65b10266"
+ hash: "e6d801e738ed3265b0127b79da7e8ec5"
}
Frame {
msec: 3520
- hash: "fcb03904d0e628f95c9b665c65b10266"
+ hash: "e6d801e738ed3265b0127b79da7e8ec5"
}
Frame {
msec: 3536
- hash: "fcb03904d0e628f95c9b665c65b10266"
+ hash: "e6d801e738ed3265b0127b79da7e8ec5"
}
Frame {
msec: 3552
- hash: "1c17eaf20f5c16fea97a263d2aad1918"
+ hash: "5b9a527ce399d0467b29c8813bbc7e6a"
}
Frame {
msec: 3568
- hash: "1c17eaf20f5c16fea97a263d2aad1918"
+ hash: "5b9a527ce399d0467b29c8813bbc7e6a"
}
Frame {
msec: 3584
- hash: "1c17eaf20f5c16fea97a263d2aad1918"
+ hash: "5b9a527ce399d0467b29c8813bbc7e6a"
}
Frame {
msec: 3600
- hash: "1c17eaf20f5c16fea97a263d2aad1918"
+ hash: "5b9a527ce399d0467b29c8813bbc7e6a"
}
Frame {
msec: 3616
- hash: "1c17eaf20f5c16fea97a263d2aad1918"
+ hash: "e9dd6c70c22d7b100a07ee837add697b"
}
Frame {
msec: 3632
- hash: "3c91d205312aefc4af746cea413c9344"
+ hash: "e9dd6c70c22d7b100a07ee837add697b"
}
Frame {
msec: 3648
- hash: "3c91d205312aefc4af746cea413c9344"
+ hash: "e9dd6c70c22d7b100a07ee837add697b"
}
Frame {
msec: 3664
- hash: "3c91d205312aefc4af746cea413c9344"
+ hash: "e9dd6c70c22d7b100a07ee837add697b"
}
Frame {
msec: 3680
- hash: "3c91d205312aefc4af746cea413c9344"
+ hash: "92e553a6e8385ceba6804075e5ed6add"
}
Frame {
msec: 3696
- hash: "3c91d205312aefc4af746cea413c9344"
+ hash: "92e553a6e8385ceba6804075e5ed6add"
}
Frame {
msec: 3712
- hash: "6cb467aa12d6ae76edbfa324c0ad26d1"
+ hash: "92e553a6e8385ceba6804075e5ed6add"
}
Frame {
msec: 3728
- hash: "6cb467aa12d6ae76edbfa324c0ad26d1"
+ hash: "92e553a6e8385ceba6804075e5ed6add"
}
Frame {
msec: 3744
- hash: "c8ec3da9c651eadf4aa8a4051d326f91"
+ hash: "92e553a6e8385ceba6804075e5ed6add"
}
Frame {
msec: 3760
- hash: "c8ec3da9c651eadf4aa8a4051d326f91"
+ hash: "eafdc541e5bb2937cc472511758bd494"
}
Frame {
msec: 3776
- hash: "c8ec3da9c651eadf4aa8a4051d326f91"
+ hash: "eafdc541e5bb2937cc472511758bd494"
}
Frame {
msec: 3792
- hash: "6cea311c6007463480b71ffd66074557"
+ hash: "eafdc541e5bb2937cc472511758bd494"
}
Frame {
msec: 3808
- hash: "6cea311c6007463480b71ffd66074557"
+ hash: "eafdc541e5bb2937cc472511758bd494"
}
Frame {
msec: 3824
- hash: "6cea311c6007463480b71ffd66074557"
+ hash: "3d207efb5d563ec0a8640091710aa9fd"
}
Frame {
msec: 3840
- image: "elide2.3.png"
+ hash: "3d207efb5d563ec0a8640091710aa9fd"
}
Frame {
msec: 3856
- hash: "6e800f4aacf0096f34acdf13678cab25"
+ image: "elide2.4.png"
}
Frame {
msec: 3872
- hash: "6e800f4aacf0096f34acdf13678cab25"
+ hash: "3d207efb5d563ec0a8640091710aa9fd"
}
Frame {
msec: 3888
- hash: "fc336a43eaf9974cd6ad82bfee128ead"
+ hash: "d837a68f291b44c8ea4b92088ebccb2c"
}
Frame {
msec: 3904
- hash: "fc336a43eaf9974cd6ad82bfee128ead"
+ hash: "d837a68f291b44c8ea4b92088ebccb2c"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.0.png
index 7980f23c01..f71c1aca4f 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.1.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.1.png
index cbfae6e27f..93c16dc925 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.2.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.2.png
index 5e2527ee7f..acec1ee522 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.2.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.3.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.3.png
index 901551eca4..f380c08651 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.3.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.4.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.4.png
index 32a5ba2eff..18142dd247 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.4.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.5.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.5.png
new file mode 100644
index 0000000000..c7f59b8470
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.qml b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.qml
index 3871f9104d..6e802f480c 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/elide/data-X11/multilength.qml
@@ -6,1318 +6,1318 @@ VisualTest {
}
Frame {
msec: 16
- hash: "51e3a7214bf2fd98108de683ae650b05"
+ image: "multilength.0.png"
}
Frame {
msec: 32
- hash: "72bd0f47e179c5356d4a0575939b6c05"
+ hash: "fde26fa3d17fb92d676afe61ca6a2170"
}
Frame {
msec: 48
- hash: "9229869bf23fe10394ffb6bacc38d2b5"
+ hash: "54c7a0ea10fa212959dc4f7606c31f3c"
}
Frame {
msec: 64
- hash: "4f75c0a0b7a04c8abdf2768a819b6c14"
+ hash: "e73c4521144b2c810f15239e6d8fa468"
}
Frame {
msec: 80
- hash: "514a9a762cd0356cbcecb93e73c81534"
+ hash: "31a68bfd57846795db57bb30d1d60341"
}
Frame {
msec: 96
- hash: "68436451f6f3ee981bf8851944b82dda"
+ hash: "55edcaeed37c1390eee2619d52a2eb03"
}
Frame {
msec: 112
- hash: "fa33b582c0890bc9852f3a6c80864988"
+ hash: "2c27d9c3dc215c68630495e255c1670e"
}
Frame {
msec: 128
- hash: "f65928b270f12f2917193ba70d9388ee"
+ hash: "b27dd9260f6da3ab414076e83bf5a2bd"
}
Frame {
msec: 144
- hash: "755d1421a9b2bf3be9d665f5f8d6f767"
+ hash: "bfcbba7e970af922ee87fbbe936eaa84"
}
Frame {
msec: 160
- hash: "dbec63b93f3617440317f7ddc2fbd6fa"
+ hash: "75af84ff6f21648737cef4a215410cc6"
}
Frame {
msec: 176
- hash: "1ec885da7efc3d71904c79a4a4768f27"
+ hash: "71fd1fe13a14632ff54ad7a87be68bca"
}
Frame {
msec: 192
- hash: "a20981af2ce8e82a6c1825e438dfd815"
+ hash: "69f553a1893403dc6fc82d3c9c47f501"
}
Frame {
msec: 208
- hash: "3c951028229d8d6a3a0faa18f21afbe6"
+ hash: "9456b12d49cc2a1f9212dba98a83c8ab"
}
Frame {
msec: 224
- hash: "8354d4c9bd5ccb2eae46cdaf3fd337bb"
+ hash: "cfd826f91f6f880816d505c93a8f125a"
}
Frame {
msec: 240
- hash: "05880d6d76fa8dc421af4d06cbdd4448"
+ hash: "d8e3291525eff9f905102ed7654f986b"
}
Frame {
msec: 256
- hash: "370e33f141d0a8396b5c2bb279f9bb67"
+ hash: "044c1f37e37a68fbfbb9ddbc2da4300a"
}
Frame {
msec: 272
- hash: "663b162ce447eee0f2194a92b463d6fe"
+ hash: "d640cba5f14d9c065bec6f6c23f2831f"
}
Frame {
msec: 288
- hash: "618c53edf13177d433fdcca5b0cedfaa"
+ hash: "9e15b68dace4b39b937dfea8777ae503"
}
Frame {
msec: 304
- hash: "ce96d70a89f7701ce069e93c192196ed"
+ hash: "7ea72711e3f8bdd1087181e127e093c7"
}
Frame {
msec: 320
- hash: "5826b56af5a4670d479c5f8e649d29d4"
+ hash: "c45dae8eb1768c8aba2d92dea4f268a2"
}
Frame {
msec: 336
- hash: "5aaf7fc6295d4ab6377bd77e91f73ae8"
+ hash: "181ebf6597be2d9e54c1d01a5ab54b46"
}
Frame {
msec: 352
- hash: "26cb0b5e60de63d582b4c4d1c4120746"
+ hash: "094b6cc486b60882836a9ba35411ae7d"
}
Frame {
msec: 368
- hash: "41b6c379d7fb678abbcccde7bca7f243"
+ hash: "031f1bcb864b4507bf93caab88756317"
}
Frame {
msec: 384
- hash: "46668408674d3e94048375152f991427"
+ hash: "42b4d89a1026327f180ecc414dcd0ef0"
}
Frame {
msec: 400
- hash: "c966370fbbdd8b32cafc06cdc551e020"
+ hash: "a99c5d1d434687e2f16e7054bcff8a69"
}
Frame {
msec: 416
- hash: "025aab500846dab22713ccada8f93a51"
+ hash: "91cf18d3f8538ee8550f7e190911b072"
}
Frame {
msec: 432
- hash: "a6a68f04ea34fba46025a1415dc46bbb"
+ hash: "1c11a328d74bc7bf77da10f094db8d4a"
}
Frame {
msec: 448
- hash: "1afc5b8b094056695b09088d13ab1612"
+ hash: "e4da6dc99c962e8f37dc8d99669616d0"
}
Frame {
msec: 464
- hash: "efff72e37e0c23e0cd51169d0c06c065"
+ hash: "628d4c1455f58a304887050c0552499a"
}
Frame {
msec: 480
- hash: "ed425b23ea5340ac5b176b4fbb377fe3"
+ hash: "dd17a403f45bcd1001cb08e7f4ae8443"
}
Frame {
msec: 496
- hash: "9df20063ec67aa06e44bf292f05469a6"
+ hash: "1ed042d0289fc6167143ddcd92f708f6"
}
Frame {
msec: 512
- hash: "d3400c655403d00df7e202a42b75476d"
+ hash: "b55abb6249925cf06439b3177310dcfc"
}
Frame {
msec: 528
- hash: "336fd54ae209ba7c28a69939a021341b"
+ hash: "251c3346640a2aa7a9c18ca84ff2d5bb"
}
Frame {
msec: 544
- hash: "621c3b64fc6214b8a48c216d46d5615d"
+ hash: "6f5e18d84c4107213599b57bf7284c4b"
}
Frame {
msec: 560
- hash: "5f9ac0b6830dbfa4cba83adc0cce232f"
+ hash: "2179c1d7d7acb3c2f6354b493cfe74e0"
}
Frame {
msec: 576
- hash: "2b829253ed85f5ffe5e3867accadd218"
+ hash: "bbc757e8f3c08f93ffcdd68b392c8cdb"
}
Frame {
msec: 592
- hash: "61325a770fb501d88f6bb2700294ca44"
+ hash: "7eefd9c7291c1a23679efd42f2c29539"
}
Frame {
msec: 608
- hash: "807dea2954afa902694b1ef98ef5f2c1"
+ hash: "fa375510d3850614aebceb2bc31ab4de"
}
Frame {
msec: 624
- hash: "43edc754d8155c198dd1db6d55d25abf"
+ hash: "f643c5ba39bb90f396f00c0a9df995c8"
}
Frame {
msec: 640
- hash: "4c800c2b8ab7b1500e80f50ee925b73b"
+ hash: "c6b7792f780b00b1b07c0ce948dff13b"
}
Frame {
msec: 656
- hash: "17b60d375c02b55923b94b147015bc7d"
+ hash: "d43d82ee9b0da8f237469c555b48bee8"
}
Frame {
msec: 672
- hash: "591e79b034700b514c84894e0fc27e27"
+ hash: "addaa9d2aa8f54d6a4e82dc7e029f19d"
}
Frame {
msec: 688
- hash: "61624e674a0994cedae75b2e56958612"
+ hash: "b12af2fd05a1ccd4664c5093456bae01"
}
Frame {
msec: 704
- hash: "7f662b3978191ef5812ccad4d1d687b8"
+ hash: "982d3505c51fc1bac026c744e2d1db11"
}
Frame {
msec: 720
- hash: "d07560950476d08ce51661356ea53753"
+ hash: "a67a0705ce893dcafdcfc3a7fe71f608"
}
Frame {
msec: 736
- hash: "1cbbf48c54d373bbb3fdfe42fe8396b7"
+ hash: "6e00f746695ca67fb4c4462740b13c8f"
}
Frame {
msec: 752
- hash: "f95205fb90069a13ab395d7a3e1775ad"
+ hash: "bc4235d556a1e18d591b9afd87b29826"
}
Frame {
msec: 768
- hash: "f40a57afb29c1cc161f71a1b134a5d0d"
+ hash: "830ebf4b9214f1dc31975c83cf49d31e"
}
Frame {
msec: 784
- hash: "3311a6a6197df79e5fcf2a1729368618"
+ hash: "bac049ae3d6676db8bca99620c9f5bd3"
}
Frame {
msec: 800
- hash: "597ae977e27d0cac57b1fc8b0564a15b"
+ hash: "0f9623c23e4e45126078c3c93015d26c"
}
Frame {
msec: 816
- hash: "aca451b1a1e8f727315f8d13d4b21aec"
+ hash: "bedde76baa8905970ea5fa8da62355a6"
}
Frame {
msec: 832
- hash: "c0437b88a05a7aa1b7b645b5151773d7"
+ hash: "018b9b1444d921b8cfd823265556c8f6"
}
Frame {
msec: 848
- hash: "be8659747f0b6e76acaf17851b599b7b"
+ hash: "2be3e0693f54ffefd24e44f552d59e3f"
}
Frame {
msec: 864
- hash: "2b0033b95e853368cff2d6032ff707f6"
+ hash: "c8c99f68125df2a1f41f6b44fdcc0406"
}
Frame {
msec: 880
- hash: "12a747305311ea86ce681a3ff56f394f"
+ hash: "3e18d6a24a1c6983f3f2ce984d22dbe4"
}
Frame {
msec: 896
- hash: "00b041e67e3ac3e1678eae72580107f7"
+ hash: "aa336c4e5ace2b33689ca280de2299db"
}
Frame {
msec: 912
- hash: "09f69db7a724401388e4b7fefeb3df89"
+ hash: "fd7245f879bbd72b6e72c563a588eea7"
}
Frame {
msec: 928
- hash: "15e96d009e101d6869d1cc69e0a9092a"
+ hash: "e484656517fcb5763c0c8992b22efe91"
}
Frame {
msec: 944
- hash: "b1a900f6ca81bf556ef126211afb8b0c"
+ hash: "fbd58b050963fc7cdbd5ae89aa7a4a70"
}
Frame {
msec: 960
- image: "multilength.0.png"
+ hash: "b47ad6fb8b364e3c2764bf31e62f21e0"
}
Frame {
msec: 976
- hash: "87ea64b511b6d990f66cd4e3a141caf2"
+ image: "multilength.1.png"
}
Frame {
msec: 992
- hash: "cc5281bca844570d36ab193ba074dfcb"
+ hash: "ac1a6692030ed80cd34c082ac70ea06e"
}
Frame {
msec: 1008
- hash: "cf430f604050734c455206b974587d76"
+ hash: "068a6b82a35d94e3db3eae772c7da56a"
}
Frame {
msec: 1024
- hash: "b10b053a551dda58e626062b6721009f"
+ hash: "8252bb45e74bc09e1d5e6b3951fbb08e"
}
Frame {
msec: 1040
- hash: "0ab24cb42bf4db645c779a48a060919d"
+ hash: "a5d7ad9287238780cb45c61bb70d6cd4"
}
Frame {
msec: 1056
- hash: "0cba8d41e70c3ab23c55d02328954fd3"
+ hash: "e0307f3a1193af0df0cd52d7dac44db9"
}
Frame {
msec: 1072
- hash: "1f25027c81418c8f511d3d866948ea97"
+ hash: "d649cf0c4a768dba1a0380b64bc7e48b"
}
Frame {
msec: 1088
- hash: "d4ef5c5de73e515ea3eb841d87d3916c"
+ hash: "3fd512a0860c17abbb6ed71488cd7255"
}
Frame {
msec: 1104
- hash: "bbdb93e72c966b3801cbc27a42f0e29f"
+ hash: "26032efe6efd1de4b5fae23ce4e28a0a"
}
Frame {
msec: 1120
- hash: "f2b12153d449e6b2476af44272b6d54f"
+ hash: "846652a87d93e397d1a84b187b7aafea"
}
Frame {
msec: 1136
- hash: "5605809550a9c5151d3f6eb04de76587"
+ hash: "4dfdaa030da4c72a0e1a19bfd70b5856"
}
Frame {
msec: 1152
- hash: "c887e88030c58144e6bb253e369b3bac"
+ hash: "365ad99db7302dfe078f4283af13f5ca"
}
Frame {
msec: 1168
- hash: "9d9f4aaea9d55118fac9cf78e6785ef7"
+ hash: "f378a096243bd2c6f7e33e0baf24716a"
}
Frame {
msec: 1184
- hash: "08dcb6457d8556aec27fdd38095f9058"
+ hash: "e972a84715d314e8814cb7fcab1ad379"
}
Frame {
msec: 1200
- hash: "45052b296f95976b22d5933ced4e259c"
+ hash: "8826dbafd12ba2a7437623c8967f2699"
}
Frame {
msec: 1216
- hash: "3bae979929efc4e3e315f3b00eb8da49"
+ hash: "effa889b33b97f665a21d6562acc45fc"
}
Frame {
msec: 1232
- hash: "af52455d0e2d8e30a4c27aaa58d61702"
+ hash: "6ebb408651cf5fbb2fa8788e0ec544d6"
}
Frame {
msec: 1248
- hash: "760a6b74a31adb04f220e4bb7457bc2b"
+ hash: "c4f45fd05b7b4f00acf80f768e99af38"
}
Frame {
msec: 1264
- hash: "bfb0d7dab25007c20a45f98f69fa97ff"
+ hash: "735a7c461f6b10cd967b03c173bfd81d"
}
Frame {
msec: 1280
- hash: "eac34dc1254c606a7b866e25967796dd"
+ hash: "608cf5ebac88726ffe7e66d763d74e27"
}
Frame {
msec: 1296
- hash: "f2577d86f3b90ff49339e9eb208b2b55"
+ hash: "6322c5aebdf814bfc5bfaef8b6bb4d91"
}
Frame {
msec: 1312
- hash: "11beecfe87619f1c90ab1aa79e5cc0d9"
+ hash: "730b7cef2e0cf57a4721e77e6849b862"
}
Frame {
msec: 1328
- hash: "8f721400a444750f11a9f6a5b1f9b1f1"
+ hash: "13879c0772938e39d820b6fc10e0f7e5"
}
Frame {
msec: 1344
- hash: "be5082d93788b91f251a174b2889b58f"
+ hash: "0710bf8a2beff02009d4bb02f2404b7b"
}
Frame {
msec: 1360
- hash: "22527c1c29923577e90f506745230573"
+ hash: "2cd38c2cbf3d8b7eb3a50b9db4bb8f7f"
}
Frame {
msec: 1376
- hash: "a6ab98f02be95359a939a7841123ef17"
+ hash: "4e988a74a3846171f86d4d69ce3407d9"
}
Frame {
msec: 1392
- hash: "c23c3352261f3c94e5f329b6a872dda2"
+ hash: "82cc4b40fe1190de5a2cbbf3f11ac7b0"
}
Frame {
msec: 1408
- hash: "0b4987678b416bafd922c47d2b540fe1"
+ hash: "f15bd345b992b39167165a640ad45794"
}
Frame {
msec: 1424
- hash: "8e3335e136e7ff01df146dcba4ae49c2"
+ hash: "be5ca66da00327ecc9f5dde2aa3660d2"
}
Frame {
msec: 1440
- hash: "28d20b81feb20325613d5a5d16238eb3"
+ hash: "f97a1e863c36477d31a78342c7aa21b7"
}
Frame {
msec: 1456
- hash: "04405979c68d1354f8b3fff03ad5ff5f"
+ hash: "d137a2a6ae95aba3f7a2b2a0560718a5"
}
Frame {
msec: 1472
- hash: "51929671bccb25ec5fd9d6d6df29483b"
+ hash: "e7529db7cf310e41eb0ac42ab86ae317"
}
Frame {
msec: 1488
- hash: "4bc938a8620242ca07e73adcd0219934"
+ hash: "66914e90881a4a8751ba5391ac41a70b"
}
Frame {
msec: 1504
- hash: "73f5ddd56c836813a2754cefcddcecaa"
+ hash: "249863a5ef1a14ca0eb4397d206dfc1e"
}
Frame {
msec: 1520
- hash: "08ab374f2911207dddddf4cf18d26769"
+ hash: "26095384b724a5e704c7b627930f4e22"
}
Frame {
msec: 1536
- hash: "0a91b4c009079159340040067dfc0cc8"
+ hash: "98281eed5ae9d9f933e47a8fba8709f1"
}
Frame {
msec: 1552
- hash: "bdd54a222ba5bc0deb97e26071732e68"
+ hash: "d9b50c54255edb300e36af2648ef8f30"
}
Frame {
msec: 1568
- hash: "1b75d3b34f7fd74451d22d03dd7e4e65"
+ hash: "9bde860d92f5ec979fa5c274fd1c13a1"
}
Frame {
msec: 1584
- hash: "a34ad1878b0bd1316d4ceb0c22709c6f"
+ hash: "39c13a42f920f57d9f9fe85ebc4e68fa"
}
Frame {
msec: 1600
- hash: "8a25b513f0c6371e81065f3f0594ddfe"
+ hash: "e80bd130bad05078212089586d6c2731"
}
Frame {
msec: 1616
- hash: "09063acfe8bf1cbc521cd84ecd718930"
+ hash: "753732b5309fd8dd7daa16761dd7dad0"
}
Frame {
msec: 1632
- hash: "6607cab8e4b4b6a1671cdf63582b625b"
+ hash: "2eb56a98f728b224f7db073c6ea3c3b9"
}
Frame {
msec: 1648
- hash: "5662b3252b5dd640ce9055ff11c11e47"
+ hash: "21ab167d173e244ffb471faddf704e81"
}
Frame {
msec: 1664
- hash: "2267ff61b2af23a15d6d5263d52c3ecb"
+ hash: "9964a0386ae349b909424f588d8decf5"
}
Frame {
msec: 1680
- hash: "99d86069a3ea0c49a8f37f5124f2850b"
+ hash: "cee42f46df4c879fa6fc378481ec728c"
}
Frame {
msec: 1696
- hash: "acfa238bcb12c6197acb990aa4ddc03f"
+ hash: "4779aeed276cbe4112484d189d1baf8b"
}
Frame {
msec: 1712
- hash: "6c4c804f6e0e46fcfe25b04836db80f7"
+ hash: "d482cd14db734f5fed2eaec7d8c0c555"
}
Frame {
msec: 1728
- hash: "5c1868d36ad767cd9923fab8605220dd"
+ hash: "1f8b0681711c46afcf8af66df6d7caf8"
}
Frame {
msec: 1744
- hash: "a1279c79d3be6a62b5aebff4c66971e5"
+ hash: "44b0e6d69fcd2b7acb499dfdfced026b"
}
Frame {
msec: 1760
- hash: "f1d9f03f77b224ec355d4b5ae1ef8551"
+ hash: "b6e25c4a276917b7f7f9189e65d965a8"
}
Frame {
msec: 1776
- hash: "3ad06495838986ef570f1c0f9d9f4a52"
+ hash: "07e5da936f8d5c84606fcdc49fc6aca2"
}
Frame {
msec: 1792
- hash: "e4122ccbc4da03797738a949654fb555"
+ hash: "f27a54a8d37ec62f54e083f1ca65aada"
}
Frame {
msec: 1808
- hash: "0178b04a0c2e91b5a409c28a2b3c4cca"
+ hash: "074403259022efd08fcbd9d3a3052c79"
}
Frame {
msec: 1824
- hash: "04b3fdd361985d1f108551dafca851f6"
+ hash: "a126762087c8f94beef81216b6010f0c"
}
Frame {
msec: 1840
- hash: "f7e8e73dcb009fc160122b64f2e4857e"
+ hash: "96b8c7cebbb9676ea4f028907de71bbf"
}
Frame {
msec: 1856
- hash: "e8575db453082b6601107b20ec15fb86"
+ hash: "e6f073522d0af8e504fdb7df971f5e0a"
}
Frame {
msec: 1872
- hash: "18b8bc3993275a0a1e096084ada871f0"
+ hash: "9223ed285f322fae3ba2b52afb408586"
}
Frame {
msec: 1888
- hash: "1a1229d6c945cc1a0df7ca4ac61dfff0"
+ hash: "b24575dd4c0b0da0b99a03c46209ed3a"
}
Frame {
msec: 1904
- hash: "bf43232fccfedfca1cac48206cacfaf2"
+ hash: "5c82bc860f64183e66aead451ee5b893"
}
Frame {
msec: 1920
- image: "multilength.1.png"
+ hash: "3172ab9c62b0870d6894b13720e54918"
}
Frame {
msec: 1936
- hash: "c0c2396b5e5dc36853a28d6c5a6274f3"
+ image: "multilength.2.png"
}
Frame {
msec: 1952
- hash: "9b49951115444bf17e96ded2837e5eff"
+ hash: "5f8e85839f9ac82f46a17f871c3fffbc"
}
Frame {
msec: 1968
- hash: "422d01a547ce612233bfa5e85bf73c7f"
+ hash: "245219fb6c4aa37d8cba7b5e1f74265f"
}
Frame {
msec: 1984
- hash: "fe2cb2fb4aefb5da1cf27e709a0acd5f"
+ hash: "b68cfc5366c4ed8d1e5950a1facf0d85"
}
Frame {
msec: 2000
- hash: "e106fbd81f7a057e3bf5d8a42c92e4f1"
+ hash: "dd5c2d2470cc87d57d35ecc9ae8a3528"
}
Frame {
msec: 2016
- hash: "b1b60361a929ccb109a9e9e8a10065d0"
+ hash: "1a15d7f02b35d046305b40f9e6a6839d"
}
Frame {
msec: 2032
- hash: "35858a35e56a48804d3cedda908ca2eb"
+ hash: "d44c382ea28d429e6f8bbef9ae17338a"
}
Frame {
msec: 2048
- hash: "a8fb42ed2c55d3396133acf28064283c"
+ hash: "63598cb09d5ecbeb991c6db778c5c002"
}
Frame {
msec: 2064
- hash: "479291530784175abc7d564ac2319d2a"
+ hash: "b3fcd0180ecd01e2ad0c0114b3dfbf78"
}
Frame {
msec: 2080
- hash: "75e7b2930143d610659cf42a3604374e"
+ hash: "8d441044f5f10da23708d7ddf0472989"
}
Frame {
msec: 2096
- hash: "3d9438b11c89d76353943e5d2f656e7d"
+ hash: "6e87518a368c39d68521046773c2f922"
}
Frame {
msec: 2112
- hash: "cb23d7c508c8e3169bab39aaa4de01fd"
+ hash: "59e377ccc851ee361e3874ad5ec18e55"
}
Frame {
msec: 2128
- hash: "bc7805e391bc272a837c9b1df9cf8f77"
+ hash: "57a9b0431c7db130bfe4d6603f98c1f5"
}
Frame {
msec: 2144
- hash: "020d270f6a93e05dacd70a2b41a3ea8a"
+ hash: "526c93727c6321782a373ea6952a8784"
}
Frame {
msec: 2160
- hash: "8f23f9ea2fa630111f0481b6a6ec09a6"
+ hash: "fcd0a4605e27ecb0bac18686e7846b3b"
}
Frame {
msec: 2176
- hash: "6b42c823da044ae69d9600260d7437e6"
+ hash: "d697892f9944c67b5aadd7ad641e3ee5"
}
Frame {
msec: 2192
- hash: "d31e1a434a9fcd12e439640776f8c8be"
+ hash: "f46fd7e568d0995c518749ec0f5a0882"
}
Frame {
msec: 2208
- hash: "48bb7782d57e195d3f0f3dfb25fed571"
+ hash: "31cd2243fb23d4332c02e91f9956f648"
}
Frame {
msec: 2224
- hash: "76922f380f3c6c83edb5ff2a4208a4d0"
+ hash: "3b29a9c0121ff127b69abba9c0b13c2c"
}
Frame {
msec: 2240
- hash: "9027d61a3b91a9f56230f4ee740b6db8"
+ hash: "ecd789e744ebb5dee7f25ebb089407bf"
}
Frame {
msec: 2256
- hash: "043455a71c91e3d65f1eed632b152fea"
+ hash: "c99a6dfad8d750b7e67c1e3ef1021cbb"
}
Frame {
msec: 2272
- hash: "6bfc058bd9f8986d306606f8c7b06ae2"
+ hash: "82d18b0c193f0ada9cae68e9f6ad5ff5"
}
Frame {
msec: 2288
- hash: "49f1e17d33f1ac690bcac7e85668cb3b"
+ hash: "a09e8144b06db76f5849561d880f037e"
}
Frame {
msec: 2304
- hash: "2090befb760a16d73bea960a6e835405"
+ hash: "3e6922ca54c809a32ed5ef72e19d7ff0"
}
Frame {
msec: 2320
- hash: "e99382309c4419f38642333386595211"
+ hash: "28e46da32bf34b3e1cd3d351e4c40317"
}
Frame {
msec: 2336
- hash: "2c7a49bcb6eca031984d7a96b607d402"
+ hash: "297aeeaadc5f3268d95320bc3b33a429"
}
Frame {
msec: 2352
- hash: "b55be701b19739713d532f3d6cbd5393"
+ hash: "31721528cdb17b03d3d6ca9f9a91370b"
}
Frame {
msec: 2368
- hash: "fdad916849eeae7b9b276f57bb022321"
+ hash: "52fd1721330321daaea0b56122a72e5b"
}
Frame {
msec: 2384
- hash: "e3a8dd9da5c767a60dab121fb3a2811b"
+ hash: "739c5179b9739021dbb522d01812388c"
}
Frame {
msec: 2400
- hash: "73262e2250337b8f02d8e672b66ae273"
+ hash: "4ae07f58d3a514f5c08f314c5dd445c4"
}
Frame {
msec: 2416
- hash: "84dca99c97f837ecfb9b3195db556687"
+ hash: "4305ea97d47bac3fb0eebf9181b3ce48"
}
Frame {
msec: 2432
- hash: "4f82d7a5f3b286a2d8ccc0a07c35a1a0"
+ hash: "21c99059dba068bc145896217cc0883c"
}
Frame {
msec: 2448
- hash: "63f6eec01262783a421040dd44740577"
+ hash: "0a514ae5d36acc07c7809a7b4f21ed8e"
}
Frame {
msec: 2464
- hash: "e98f39a3a9379155081014cdf761c055"
+ hash: "550ce887f462ace686bc6a9021c5cb73"
}
Frame {
msec: 2480
- hash: "c084db070c74596551190dd49dfc2ed2"
+ hash: "b65857dcfa0b1281dd5b9821a12dd8e8"
}
Frame {
msec: 2496
- hash: "f6866290d95f0d85fcf05de39bcadcc7"
+ hash: "5a6bb448a570e1a3eef142b8054f3717"
}
Frame {
msec: 2512
- hash: "d919eb26a2d8874ed1e4051769b525c6"
+ hash: "b38e2f6b4063e1b8a40292017c5ed4ec"
}
Frame {
msec: 2528
- hash: "1967d42c7a23b8d11e6accf27de24ce7"
+ hash: "fa7545e6e3fc92d62af2f7651077da5b"
}
Frame {
msec: 2544
- hash: "2fe4f7fe66f820b2738598e85da9f0b9"
+ hash: "ebf0c79720a5692b761b62c4ba360875"
}
Frame {
msec: 2560
- hash: "4fa2b66d2d4beaa56ed8c387b62f4817"
+ hash: "cb5356376d97308a4d102c9a53e93abe"
}
Frame {
msec: 2576
- hash: "eef73ebb85223a5f99b5f5ec7dfaae94"
+ hash: "879f434f4901bdcb166294336c60e26a"
}
Frame {
msec: 2592
- hash: "acb7a8c1939633f16e8b7989b2d598c2"
+ hash: "3ab575ac04bdd455346c0460aed413a0"
}
Frame {
msec: 2608
- hash: "b5e67eb3ace1d1d7f9fa1f1c907bd442"
+ hash: "8f08366cb474ca2a1988ebba9d65ecaa"
}
Frame {
msec: 2624
- hash: "552035a9d76f4dd65d86533535c00a5d"
+ hash: "2939cf0235f98aeaf48b3f28964cdddd"
}
Frame {
msec: 2640
- hash: "d2e25e33232ec8ddd326818fabf15a65"
+ hash: "9cf4b339914e48f896dda17e08759472"
}
Frame {
msec: 2656
- hash: "65c4dfbb48c1c9115c37ed5c294d7bd1"
+ hash: "3f5568ac7a4386f1d5072f1cda0c35b8"
}
Frame {
msec: 2672
- hash: "3aceb756fa460a767194f2923871e2d3"
+ hash: "107edbf8181f79cd7847d0154b6eda11"
}
Frame {
msec: 2688
- hash: "759a7bd99c6e630929216eb89f6b27fa"
+ hash: "9254497b95b89a7d40903edb04a3764a"
}
Frame {
msec: 2704
- hash: "81aa0091d86f745bcddd279473df1f8d"
+ hash: "7e7d25a2ee3fbfd67a3b8fecb9fe9202"
}
Frame {
msec: 2720
- hash: "cce5b12ab54251ea6df458d492bc92e9"
+ hash: "03759f59bbd2be573acd6c03eb088edd"
}
Frame {
msec: 2736
- hash: "5637b7aeb8b9d754e0a96b6f5d0dcb03"
+ hash: "58689762be6c7d3d6de6f23580ec8886"
}
Frame {
msec: 2752
- hash: "ad7644a8994888bc562590ff8942eabf"
+ hash: "0d4e315f9b079a30e6a4294a667f9ebc"
}
Frame {
msec: 2768
- hash: "490a3da685f73c45f4be697c3f37ccd1"
+ hash: "3f3dfa1c8d160238dae2da79a6a569f3"
}
Frame {
msec: 2784
- hash: "190cc35ecc32ed8ea6ebd135fb8d7a00"
+ hash: "b3cd7c3034e2a34c4ae9ed7f3144b2cc"
}
Frame {
msec: 2800
- hash: "89511367c186947f9173dc30932c4454"
+ hash: "c27d3a9057d1f15c6e0b2d427ac12ad2"
}
Frame {
msec: 2816
- hash: "880c05184406232db9d3830e46d47bd7"
+ hash: "9b25ab315d9bfc582e41c05e88812cbe"
}
Frame {
msec: 2832
- hash: "db907e2573c385bc2545cfba4fda4be1"
+ hash: "e75671bfb99741dcff476690ede42166"
}
Frame {
msec: 2848
- hash: "c96ad05fd3ab4cd71d33738448029e0c"
+ hash: "7dd3307fb41277ebcc4339cdb7747d7c"
}
Frame {
msec: 2864
- hash: "112ecf3b2fcd5919402842044d052272"
+ hash: "a148bce140f1637e27ae5f0207b75351"
}
Frame {
msec: 2880
- image: "multilength.2.png"
+ hash: "64e57a31c1baa16bcf47f2202fd6e2ed"
}
Frame {
msec: 2896
- hash: "dc1aa5563a76f20d8200fbd9794b3249"
+ image: "multilength.3.png"
}
Frame {
msec: 2912
- hash: "3f72adedabe9e2896750e2738df71566"
+ hash: "83381c54b1923356c403cad2ae2c3519"
}
Frame {
msec: 2928
- hash: "3f78a5a9312126e6a6ca699886dd05d0"
+ hash: "e110f28619c2ec7c1c8d479793b93e54"
}
Frame {
msec: 2944
- hash: "75a199efbdf119abbc1598137e974e28"
+ hash: "996a9a698f1a7c673eeef67501d7b81b"
}
Frame {
msec: 2960
- hash: "e4d068e2ba9c65a0e910faf431e4df7e"
+ hash: "6cf2465c8b7c70343a26e981e6492212"
}
Frame {
msec: 2976
- hash: "817e686a44b4eaced58c251facd5e89d"
+ hash: "3a9078adf3d4ca207c97b62ad525998f"
}
Frame {
msec: 2992
- hash: "0c5e7217f5b68e0b2158c512f66177c2"
+ hash: "0bf0d9a6a202119daa6a44f17d03b9ed"
}
Frame {
msec: 3008
- hash: "253a765019170fe4f649825b4cd17832"
+ hash: "6dfadc21810c9176dad599a6f7f672b9"
}
Frame {
msec: 3024
- hash: "cf3f774316868179f6766e5dbdab2b17"
+ hash: "f1f866c6245bd6fd8141abfb8a040d46"
}
Frame {
msec: 3040
- hash: "7cf30923200a9b8524909bdfbb20b33c"
+ hash: "84329287c7555bc6207039ea632632b2"
}
Frame {
msec: 3056
- hash: "1dd14bc90dfab3d8864c177e56c25b63"
+ hash: "da7e80527f58c93bce9267958ce4c5d7"
}
Frame {
msec: 3072
- hash: "aaa4074319d1656b58f874d6843e66c4"
+ hash: "cd8eea7543ebc42971b3f41ea21dd4ed"
}
Frame {
msec: 3088
- hash: "b2a3479eb8087138f20b0dbd539f0592"
+ hash: "b9abb526dc3447370d847a5bca868b50"
}
Frame {
msec: 3104
- hash: "1ab4358f6008ce87a5b1c6a54d04b343"
+ hash: "b8d63ac8331a9375ca06adacb56d12ea"
}
Frame {
msec: 3120
- hash: "4425e58b30da6edd1730421e990dd6e7"
+ hash: "20fcdd73a4cc2abebbc462c32fb9b2c8"
}
Frame {
msec: 3136
- hash: "9b4e62af65c064ca2fe4de5d03255b56"
+ hash: "3f656f80771828ee6696a2e0a0626ae4"
}
Frame {
msec: 3152
- hash: "edf9b8b0cc18942b23c03ee1ed837dd6"
+ hash: "0d99110edca4f8ec544d10d680d27092"
}
Frame {
msec: 3168
- hash: "b05a1bc33ce2e4c2383f7ecc9544020c"
+ hash: "48026f803bd17f56d13dd946fb359e3a"
}
Frame {
msec: 3184
- hash: "73304724e5b4d7c556859da310c31a0a"
+ hash: "40759d794139327e2e66685c9fcb047b"
}
Frame {
msec: 3200
- hash: "4cf88e365cd9651e2fb86452ff81e4be"
+ hash: "419953a3f882008e82bd733e63e66ab6"
}
Frame {
msec: 3216
- hash: "7b42902b17781f98075bfdf50950addd"
+ hash: "ddcd288b0a825ef6899755fbad56f2dd"
}
Frame {
msec: 3232
- hash: "8806b9cb7e352a67b23085593b61606b"
+ hash: "bc203d9f0f32efdd177353b9589bd127"
}
Frame {
msec: 3248
- hash: "d2fdf78fa3b7261683f2ed4f2dee62c8"
+ hash: "a4ae6c449b53545a683cd33bc9274d59"
}
Frame {
msec: 3264
- hash: "dafa72fd7aae2c9bfa5f6aa2694235d2"
+ hash: "59e7c218b5a1b857469972f966489a43"
}
Frame {
msec: 3280
- hash: "d784b9b39ab063ab68b85d6485257ce0"
+ hash: "521fc5833ab0e3088200e1fea9a887b0"
}
Frame {
msec: 3296
- hash: "991ef068c26b304fb19d03fdfeb2e3f4"
+ hash: "bd2386f85afb7516d147bff4c07e239f"
}
Frame {
msec: 3312
- hash: "c6014d497f4db9121c539a53115a847f"
+ hash: "5298fdee07ff2ff34121f064fed3db4e"
}
Frame {
msec: 3328
- hash: "88c778d811febd165e28ae7698f774b8"
+ hash: "311a8f163cebf7bafcb47c8e6db40ed1"
}
Frame {
msec: 3344
- hash: "51fbf553794b8a2303d2e0dff44c80fa"
+ hash: "ad6342bed57257a1616a74e19f2bb484"
}
Frame {
msec: 3360
- hash: "ba1abdcf3a04231ce9439cb6d93e8717"
+ hash: "4eb186c5f4963dc72b3dbc3a9da4df65"
}
Frame {
msec: 3376
- hash: "56a5d2fe8af1ef1e08ce545eb65e6ba0"
+ hash: "58f1f128001dd1ce0d405595acbaab2a"
}
Frame {
msec: 3392
- hash: "8337eb7d11500676921de0b13812ca02"
+ hash: "ba4a39b66cac22fceba9c4ecfdbae363"
}
Frame {
msec: 3408
- hash: "8f50f53ed00ad9b9bbf9423b3274efa7"
+ hash: "bbfde54a4de637bc1c54248e2e342544"
}
Frame {
msec: 3424
- hash: "bf5ca931d00d3dc4fcfe5e93d08bde2f"
+ hash: "ddc3b4e87782e0472630e2f9f8a57099"
}
Frame {
msec: 3440
- hash: "f2619492bbb96bd3958f4d61bb23c42e"
+ hash: "1bf1212686520da772fc18ca7684a924"
}
Frame {
msec: 3456
- hash: "3b1afefbc7e0990059bd3990f17a7312"
+ hash: "706ec5a3b48123d3b5113d55b71f7968"
}
Frame {
msec: 3472
- hash: "30041f2cb8c071e7dc8f9c8ef1e49743"
+ hash: "62b08db0c3c4f1313bcf4a1e7b90badb"
}
Frame {
msec: 3488
- hash: "f8bef9f28823fdebec0b39e1044ac03c"
+ hash: "ae8409fed9d8919b1af2b4d0eafce670"
}
Frame {
msec: 3504
- hash: "4c0282e6a48dbbcdbbffde55457eee12"
+ hash: "9f6ed6ada78e42f06f33514e363c736f"
}
Frame {
msec: 3520
- hash: "7956ea76120b9292b2f3c6123187ac0e"
+ hash: "97e9a504c2c4ba5329a616810fc19505"
}
Frame {
msec: 3536
- hash: "dce82656442ff1a0823bac5ded7c0290"
+ hash: "348b6d15b8ef6862818b4fbdb938f241"
}
Frame {
msec: 3552
- hash: "96151e49fd0f07817d27583c22afe30f"
+ hash: "c1845df466f5690a8d7a439d33a27f7d"
}
Frame {
msec: 3568
- hash: "262a38546540ecb81065cbdbace4fa28"
+ hash: "aee2486331275b9f4116b61588ce169e"
}
Frame {
msec: 3584
- hash: "4ea3a1a93be2ef25ca6f05d144b50d3b"
+ hash: "efca3eaffa3421d68d788ee3f0ec068c"
}
Frame {
msec: 3600
- hash: "77d321f837b720d4e63fb028e885dce7"
+ hash: "35f2940b51ed8c4734c23a43bf6fe448"
}
Frame {
msec: 3616
- hash: "e0e40d426a13ef3d9caa6ba474a1a460"
+ hash: "92b7d34480b7fab4dd39bbccfa8455a5"
}
Frame {
msec: 3632
- hash: "6bd5645b808206dd9a4e9c0e423db06b"
+ hash: "4408049f405ecf5c3c696780390e2155"
}
Frame {
msec: 3648
- hash: "791538cf21cfa32ab4595137a655e0a3"
+ hash: "29aa30678d5c87c79ac67198e4dd7bd4"
}
Frame {
msec: 3664
- hash: "59266a6f73c217f0c68f7dac69d4b25d"
+ hash: "2f88ac156017b20795f01716d9e9f2e8"
}
Frame {
msec: 3680
- hash: "ee730ce23e84942c5fe2587ce0ecd3f6"
+ hash: "4d72dec4a2e8edcff806c11f3742cf07"
}
Frame {
msec: 3696
- hash: "b1353eee7a68d1ab0057ab7a6dd0774c"
+ hash: "3f5ebad282a4aa9c03a17d32aea03151"
}
Frame {
msec: 3712
- hash: "0ea828127568afa52ecc31e335e69d11"
+ hash: "a8d289d15353d45159607377de285732"
}
Frame {
msec: 3728
- hash: "d95fc327253500563d0e05a4b80a7c8a"
+ hash: "af2d2fcfa4510e0d26ea90fc7711b0cf"
}
Frame {
msec: 3744
- hash: "e3aff011332ccf9cbebbff2803733038"
+ hash: "aed6897bc8b2163822a052e1cc9ad36b"
}
Frame {
msec: 3760
- hash: "27ee147b62bfa2d1183321bba3ccb8d3"
+ hash: "bf7077614b5045f79c8697bab1e83839"
}
Frame {
msec: 3776
- hash: "245578d636b5486da0210a0dd7b84a80"
+ hash: "e5c8c0bf1fce3a964f4bb911ffee0bdb"
}
Frame {
msec: 3792
- hash: "87be77d90d9e7a2d282026e63d14ddfd"
+ hash: "bcfe4aebc880809f56d480f23b17dfd1"
}
Frame {
msec: 3808
- hash: "25cf672e69b7c61eab9f53437b40956e"
+ hash: "2ce342f7864ab26124093edc88585c97"
}
Frame {
msec: 3824
- hash: "10606e7b0ecb8ec204fe025aece90004"
+ hash: "8be15d95125e03a0282e897096abb443"
}
Frame {
msec: 3840
- image: "multilength.3.png"
+ hash: "a4486f30becceca3ec3cc5c8718af82a"
}
Frame {
msec: 3856
- hash: "a3c411c8c3da3975205994a7da97320f"
+ image: "multilength.4.png"
}
Frame {
msec: 3872
- hash: "1491ce2867ad4f116e705d259b773550"
+ hash: "38de7ed0d05015f9b06a4bb278fc96c1"
}
Frame {
msec: 3888
- hash: "8f2fe6175fa45213d84e4c0b0b7cb4a7"
+ hash: "1cd9a38bb1fc8b06d5c05cd28719d4b3"
}
Frame {
msec: 3904
- hash: "bc77ad13f5015fc1b5bb85dc51b207b3"
+ hash: "682ba6e2eb83ce1b6bf8526b21cf2694"
}
Frame {
msec: 3920
- hash: "5fb9a7834a5358077952c20ca025fcf0"
+ hash: "3da075fccb3d26f30530a69f86d999a8"
}
Frame {
msec: 3936
- hash: "09ba094e2cfb1033019e85f66910a593"
+ hash: "b0fb39798dfa94d0898e5e0d7afd1277"
}
Frame {
msec: 3952
- hash: "43db976e63a8fd71da67198942aa7943"
+ hash: "7e41bbe233d6bc7354ba4516edec4841"
}
Frame {
msec: 3968
- hash: "6298a0aa4b84ee1722d83897b3553fe1"
+ hash: "1d3f24f20ba123940d97f09949cfcc0f"
}
Frame {
msec: 3984
- hash: "6b87ba7d3fe468229b29cd28590e17b1"
+ hash: "abc7a82d91e28c5a3ee9ffd663c8c7bd"
}
Frame {
msec: 4000
- hash: "1b4e219629a1f19b135544ac2e961788"
+ hash: "e685c0218a3d80584013806707693eb0"
}
Frame {
msec: 4016
- hash: "087e95cbd0549be1bbe4a32520858514"
+ hash: "6ff98dc7eb0453f058a5d4cadf86ddf4"
}
Frame {
msec: 4032
- hash: "2c51a434fc3633623e10bedeba4e260d"
+ hash: "5a3d0c2c95cb85678f32a8b68dc8d399"
}
Frame {
msec: 4048
- hash: "f29b87d80779a7f4d38e8058d984c386"
+ hash: "d5bde2f063d524ac0e7bcef26d543668"
}
Frame {
msec: 4064
- hash: "b8055e4b3c2ee551a7becf176cd173e3"
+ hash: "64e7bc5e0798ecd009fd05cbc1523977"
}
Frame {
msec: 4080
- hash: "3c35391e1c1d230e0a085cb7f7f0e8ef"
+ hash: "3c87a9ee92661da2aacc09b71dd393ca"
}
Frame {
msec: 4096
- hash: "dd8a63cdeefc6ce5a35ceb700f7b3755"
+ hash: "bf4806e0e8cb73cded37ca97966078d7"
}
Frame {
msec: 4112
- hash: "5b4a322f768d426a56a82d714cf4f705"
+ hash: "a5956031dac15dba64bf49c9d308c9c7"
}
Frame {
msec: 4128
- hash: "08830f630c15419d79c459891a8fff64"
+ hash: "51395284acf731266eaed86387ad768a"
}
Frame {
msec: 4144
- hash: "84c90e454dcdbf00c441ff326760d2cd"
+ hash: "489ab28b773d48b8fdf9cf674b1da87f"
}
Frame {
msec: 4160
- hash: "17c7311faee569b077f85848f7155319"
+ hash: "4c6a5b7442a4ff241329157657b8c9f7"
}
Frame {
msec: 4176
- hash: "17b5aeff8f03828c1851a6b984d4e69e"
+ hash: "629faa780676c705ca8349b8765ed38b"
}
Frame {
msec: 4192
- hash: "3bcc28ab875d3b5f62df0d5cede3e850"
+ hash: "28654cb8801bea906a4f181004ed0e85"
}
Frame {
msec: 4208
- hash: "a4c861d766af1378e21a91a6e1bca06d"
+ hash: "2abf774ccf33e6d0af4a8c4154e2ab2a"
}
Frame {
msec: 4224
- hash: "fa6e17c9c35c41ac5270a55f0cc4dcd2"
+ hash: "f1cbdf35081b08b676d1661834829c9a"
}
Frame {
msec: 4240
- hash: "48d8c7ce0b6f2e9840a2f5cb40e41449"
+ hash: "a49ef4ec40d59be1e872c6f8bcdbbb4c"
}
Frame {
msec: 4256
- hash: "713a391414fffe3cf01248e7c0919d71"
+ hash: "dab02c8afd3914177bfdf29e68b54291"
}
Frame {
msec: 4272
- hash: "472282080ae357f5fb0dac1bf411f6f5"
+ hash: "7bdca9571a346117277b0de6fa1f6e5e"
}
Frame {
msec: 4288
- hash: "660d37f1b3c5dd6e2de22ad2be818675"
+ hash: "11dc19768b1a4a787f46082a583c068c"
}
Frame {
msec: 4304
- hash: "334f12d83fdc7bd8f3d97697061a75f8"
+ hash: "5e72d13702108d55d650a01c1caf2cfb"
}
Frame {
msec: 4320
- hash: "4bfe83273913bad702290db2b1c81d52"
+ hash: "e5a379841ae54f07d54c4baa78fa7b69"
}
Frame {
msec: 4336
- hash: "9ddc0238b0fbb42c503da8782d750d81"
+ hash: "88d2363709d377cad251dc956b0ff866"
}
Frame {
msec: 4352
- hash: "43081559ed8f1d62baed1ab5dde34c5c"
+ hash: "5e6db7322e69f41d37efdd35a769df4e"
}
Frame {
msec: 4368
- hash: "4bf955a94901588cf37a1fe9b82feef3"
+ hash: "cc781d136bb48a1a41bd9243327bacc3"
}
Frame {
msec: 4384
- hash: "3a3a987096f2a11f495af4ee20c2452b"
+ hash: "69612d6379a204fa1e1c6d7b58f78370"
}
Frame {
msec: 4400
- hash: "290647a4f73c42ea33f841281bf6f3d6"
+ hash: "a81c15225bc81a19e22375532a5457ab"
}
Frame {
msec: 4416
- hash: "1a18f4f658997710aa7be9409c75a602"
+ hash: "a97bb0ac528a1377ef8f6bf655795b69"
}
Frame {
msec: 4432
- hash: "1bc52bc68633464654410f59bf97142b"
+ hash: "7fa6d66219c66ae8aec43e44626b427a"
}
Frame {
msec: 4448
- hash: "33e3a5e0ec745046f7a7cceffd516a71"
+ hash: "99f47bc80b706692f16c6c5fa3c0c85d"
}
Frame {
msec: 4464
- hash: "7e61c48d2e0e6e195d527d6aeb4ffe8c"
+ hash: "55d6cf7f545c74ed59a8bf040f9d5d58"
}
Frame {
msec: 4480
- hash: "42c42f7e02f6cd72afa92cf97494a1eb"
+ hash: "1a07d14fa7866c5268e622d0925cbf4d"
}
Frame {
msec: 4496
- hash: "d1876d371284e41f4d553a470a9970fb"
+ hash: "a41b281563c401d0e4ff55f4a3c45e18"
}
Frame {
msec: 4512
- hash: "479960a289b598591a4bf3c66dc6258a"
+ hash: "6bff67c2f53a4e620c63eea539f4abe0"
}
Frame {
msec: 4528
- hash: "0ea8965e095c73499b5abc4ac44e07ef"
+ hash: "a5f06e5ff2fd7f390279f7df822c8297"
}
Frame {
msec: 4544
- hash: "cc7fe014a856896ce3871743e552d6f2"
+ hash: "213b174770c13105b89a1d88cd2f0b7c"
}
Frame {
msec: 4560
- hash: "5b3cd6bec24ae4a215ec28651e9a3ed0"
+ hash: "dde34ca92317a54ddaa2f9bff515d91c"
}
Frame {
msec: 4576
- hash: "63d60a2c6d27e30dda001c202446d221"
+ hash: "12446cca2aae19fd721cda11bbb51bae"
}
Frame {
msec: 4592
- hash: "22f30d377fb90c433881d17211a9f9bd"
+ hash: "f4d00502cab0a843563fcfd336b74596"
}
Frame {
msec: 4608
- hash: "acfbf010e93723185792009ed372ccb9"
+ hash: "b6ae2b396adf6068ef3a6027e4b175db"
}
Frame {
msec: 4624
- hash: "91f3335706d5037d9c579091e29d1219"
+ hash: "370dabffdfc0bebf5d25abfaefff399c"
}
Frame {
msec: 4640
- hash: "83ad6be4ecaa6495b25f9b55bb11796a"
+ hash: "fd496e8c03f85a872bd5ee6e8a85db7f"
}
Frame {
msec: 4656
- hash: "39a68ee7f4ddb8059ef42eb9e42b7659"
+ hash: "0999335427d63f318e166ea8662c4c22"
}
Frame {
msec: 4672
- hash: "0ad1facc49beaa2c3510fe1612ba3b4f"
+ hash: "5a4eb9267cd35a71f6c2daaca1a582be"
}
Frame {
msec: 4688
- hash: "d780a7f3dc1a313d462084fffda989c7"
+ hash: "4270d7a26d56f1d805b647c5ec7cc6ce"
}
Frame {
msec: 4704
- hash: "0f1ad6155d4ed2a11d2fa91c63b62678"
+ hash: "334f1e3c8520196016352bf4d00fbc18"
}
Frame {
msec: 4720
- hash: "26f4bb010704911d87b96a9f31a0a121"
+ hash: "2bf704e85c197c776a188927a80deaad"
}
Frame {
msec: 4736
- hash: "7772aaabb6418d71fb7566a0aac4279f"
+ hash: "e2c5c42e55dc185977bd5049eb4bd3d2"
}
Frame {
msec: 4752
- hash: "47bf1ec73915b369d653ff71ce7758da"
+ hash: "7ead4353fdc135d6b959be0ce22955e3"
}
Frame {
msec: 4768
- hash: "fcc1ed23c1678bf1b11bf59dbaba5186"
+ hash: "ab42998e1e17ac8637d76dc0cf356c7a"
}
Frame {
msec: 4784
- hash: "0d66fbc0b99c35dae53e1026c2041252"
+ hash: "030f34f8caf0814eaaf18ea5fda669dd"
}
Frame {
msec: 4800
- image: "multilength.4.png"
+ hash: "6e12a04ac25553142875a10a5c8e46e8"
}
Frame {
msec: 4816
- hash: "d1fbba4331fd640a40fe7e07fcfce20b"
+ image: "multilength.5.png"
}
Frame {
msec: 4832
- hash: "f79f9ac08c779fd1646450ef4cc21f01"
+ hash: "e2f2ab9a3fe6a3a375341010c91017bd"
}
Frame {
msec: 4848
- hash: "2095da58125d29b815c44ec9a22598d3"
+ hash: "9301889debd3932772a1c81314eb1ef2"
}
Frame {
msec: 4864
- hash: "01d4805a90443a6c20a5ae2cb83ec151"
+ hash: "671feec6eb1166c612a22405db9c044e"
}
Frame {
msec: 4880
- hash: "f329ce7199c2137e8c32a25f96ee5c6b"
+ hash: "648215ffa5448dc173165d24389c014e"
}
Frame {
msec: 4896
- hash: "72c0c2c7660974827acc1fcb54e7ca6c"
+ hash: "a70806b54806f29d0e240cd63d86b77e"
}
Frame {
msec: 4912
- hash: "6902d2a637733171699684baf07bb86e"
+ hash: "4bf9ffe611c52c21fbdb84221d3d4dba"
}
Frame {
msec: 4928
- hash: "615683e3bc07792ee38ca8146657a88a"
+ hash: "ae78202b0ebd4c13a92d468a7470bdc9"
}
Frame {
msec: 4944
- hash: "9fe981f60fd1d974f063fccd2ae205ab"
+ hash: "fb0c3d6c3e3479abb6a1b44b1a5f3785"
}
Frame {
msec: 4960
- hash: "b403e21b14646ac0cdaee2027125c0ad"
+ hash: "48906c21e17479807f736d7f7713f6b0"
}
Frame {
msec: 4976
- hash: "d037545cc68b7582c400c8c9da49ff2a"
+ hash: "a661a461542b3078dd1dad25bf6d8414"
}
Frame {
msec: 4992
- hash: "551435ecb008ff217eb65a5a77a28090"
+ hash: "387deb0df0c59cfb120313946c4e5c9a"
}
Frame {
msec: 5008
- hash: "a1684c1c0938386bbfb309969114beee"
+ hash: "f2473c6e4877f3035f0b511ff2d27684"
}
Frame {
msec: 5024
- hash: "51e3a7214bf2fd98108de683ae650b05"
+ hash: "f88d3767ccd773930ef9d99dfd0e8c17"
}
Frame {
msec: 5040
- hash: "af3da99b9abc3b3440b22d4d428dcd1a"
+ hash: "aef8a93d2caafec839d425184176bcc7"
}
Frame {
msec: 5056
- hash: "4f75c0a0b7a04c8abdf2768a819b6c14"
+ hash: "e73c4521144b2c810f15239e6d8fa468"
}
Frame {
msec: 5072
- hash: "c73dc19d48511634717cf4e95f843a5d"
+ hash: "a66856750cc5aa7a21ffb6e0a9c94306"
}
Frame {
msec: 5088
- hash: "0f263ab43dde78f1280483c6287b44a2"
+ hash: "22bce57e360790c356564a0568ec3bee"
}
Frame {
msec: 5104
- hash: "68436451f6f3ee981bf8851944b82dda"
+ hash: "55edcaeed37c1390eee2619d52a2eb03"
}
Frame {
msec: 5120
- hash: "e0ea33b011cc8aef74070e26b71bd05e"
+ hash: "51d8495324954f1bd62caa67d15e9ab2"
}
Frame {
msec: 5136
- hash: "755d1421a9b2bf3be9d665f5f8d6f767"
+ hash: "bfcbba7e970af922ee87fbbe936eaa84"
}
Frame {
msec: 5152
- hash: "7e20da3dab6bd290498756ac392bc052"
+ hash: "a7652fe427ca7b8ef37dbf9a6097f8af"
}
Frame {
msec: 5168
- hash: "babdfa14fbba8f6eb0c95334588123ce"
+ hash: "d5ab00fc274a7fd568af514c55f24e04"
}
Frame {
msec: 5184
- hash: "1ec885da7efc3d71904c79a4a4768f27"
+ hash: "71fd1fe13a14632ff54ad7a87be68bca"
}
Frame {
msec: 5200
- hash: "2159f4c9f72bca3ba98b4fd0aeb3c1ba"
+ hash: "761f9b41ce4136619f89c73746ab176e"
}
Frame {
msec: 5216
- hash: "8354d4c9bd5ccb2eae46cdaf3fd337bb"
+ hash: "cfd826f91f6f880816d505c93a8f125a"
}
Frame {
msec: 5232
- hash: "ee95872db6f9440800bb98023764dc2a"
+ hash: "33fbc77640cc73c17a0f68db5f70ddec"
}
Frame {
msec: 5248
- hash: "23197dd2bb352193b72d4445912d9c94"
+ hash: "ef925f6709f7603d8acddbbe3e3b0426"
}
Frame {
msec: 5264
- hash: "370e33f141d0a8396b5c2bb279f9bb67"
+ hash: "044c1f37e37a68fbfbb9ddbc2da4300a"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/font/BorderedText.qml b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/BorderedText.qml
new file mode 100644
index 0000000000..fe4e2e7025
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/BorderedText.qml
@@ -0,0 +1,9 @@
+import QtQuick 1.0
+import "../../shared" 1.0
+
+TestText {
+ property color bcolor: "blue"
+ font.pixelSize: 10
+ text: "The quick brown fox\njumps over\nthe lazy dog."
+ Rectangle { id: border; color: "transparent"; border.color: bcolor; anchors.fill: parent; opacity: 0.2 }
+}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/font/TestText.qml b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/TestText.qml
deleted file mode 100644
index 690cb155ad..0000000000
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/font/TestText.qml
+++ /dev/null
@@ -1,13 +0,0 @@
-import QtQuick 1.0
-
-Text {
- id: testText
-
- property color bcolor: "blue"
-
- text: "The quick brown fox\njumps over\nthe lazy dog."
- font.family: "Helvetica"
- font.pointSize: 16
-
- Rectangle { id: borderr; color: "transparent"; border.color: bcolor; anchors.fill: parent; opacity: 0.2 }
-}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-MAC/plaintext.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-MAC/plaintext.0.png
index cd436b5ffb..cfa61a9a99 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-MAC/plaintext.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-MAC/plaintext.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-MAC/plaintext2.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-MAC/plaintext2.0.png
index e47b47954a..be676c0fc7 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-MAC/plaintext2.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-MAC/plaintext2.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-MAC/plaintext3.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-MAC/plaintext3.0.png
index 0d3c672804..df2fe2feeb 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-MAC/plaintext3.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-MAC/plaintext3.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-MAC/richtext.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-MAC/richtext.0.png
index ba833a26dd..76e5b9f80f 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-MAC/richtext.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-MAC/richtext.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-MAC/richtext2.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-MAC/richtext2.0.png
new file mode 100644
index 0000000000..bb65aded70
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-MAC/richtext2.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-MAC/richtext2.qml b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-MAC/richtext2.qml
new file mode 100644
index 0000000000..afae3f89bc
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-MAC/richtext2.qml
@@ -0,0 +1,11 @@
+import Qt.VisualTest 4.7
+
+VisualTest {
+ Frame {
+ msec: 0
+ }
+ Frame {
+ msec: 16
+ image: "richtext2.0.png"
+ }
+}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-X11/plaintext.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-X11/plaintext.0.png
index 30dc0a99bd..b4e1d3a153 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-X11/plaintext.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-X11/plaintext.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-X11/plaintext2.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-X11/plaintext2.0.png
index 0574f63fe9..4177b9eb08 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-X11/plaintext2.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-X11/plaintext2.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-X11/plaintext3.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-X11/plaintext3.0.png
new file mode 100644
index 0000000000..04e0f5e842
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-X11/plaintext3.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-X11/plaintext3.qml b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-X11/plaintext3.qml
new file mode 100644
index 0000000000..13f413a1ca
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-X11/plaintext3.qml
@@ -0,0 +1,11 @@
+import Qt.VisualTest 4.7
+
+VisualTest {
+ Frame {
+ msec: 0
+ }
+ Frame {
+ msec: 16
+ image: "plaintext3.0.png"
+ }
+}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-X11/richtext.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-X11/richtext.0.png
index 8d3c37b9e4..36e5d35858 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-X11/richtext.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-X11/richtext.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-X11/richtext2.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-X11/richtext2.0.png
new file mode 100644
index 0000000000..34f8e387b9
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-X11/richtext2.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-X11/richtext2.qml b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-X11/richtext2.qml
new file mode 100644
index 0000000000..afae3f89bc
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data-X11/richtext2.qml
@@ -0,0 +1,11 @@
+import Qt.VisualTest 4.7
+
+VisualTest {
+ Frame {
+ msec: 0
+ }
+ Frame {
+ msec: 16
+ image: "richtext2.0.png"
+ }
+}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data/richtext2.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data/richtext2.0.png
new file mode 100644
index 0000000000..34f8e387b9
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data/richtext2.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data/richtext2.qml b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data/richtext2.qml
new file mode 100644
index 0000000000..afae3f89bc
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/data/richtext2.qml
@@ -0,0 +1,11 @@
+import Qt.VisualTest 4.7
+
+VisualTest {
+ Frame {
+ msec: 0
+ }
+ Frame {
+ msec: 16
+ image: "richtext2.0.png"
+ }
+}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/font/plaintext.qml b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/plaintext.qml
index 3a06cf06c2..64ab65b8ae 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/font/plaintext.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/plaintext.qml
@@ -2,40 +2,55 @@ import QtQuick 1.0
import "../../shared" 1.0
Rectangle {
- id: s; width: 620; height: 600; color: "lightsteelblue"
+ id: s; width: 620; height: 360; color: "lightsteelblue"
property string text: "Jackdaws love my big sphinx of quartz."
Column {
spacing: 8
TestText {
- text: s.text
- }
- TestText {
- text: s.text; font.pixelSize: 18
- }
- TestText {
- text: s.text; font.pointSize: 20
- }
- TestText {
- text: s.text; color: "red"; smooth: true
- }
- TestText {
- text: s.text; font.capitalization: "AllUppercase"
- }
- TestText {
- text: s.text; font.underline: true
- }
- TestText {
- text: s.text; font.overline: true; smooth: true
+ text: s.text; horizontalAlignment: Text.AlignLeft; width: s.width
}
TestText {
- text: s.text; font.strikeout: true
+ font.pixelSize: 18
+ text: s.text; horizontalAlignment: Text.AlignHCenter; verticalAlignment: Text.AlignVCenter; width: s.width;
}
TestText {
- text: s.text; font.underline: true; font.overline: true; font.strikeout: true
+ font.pixelSize: 24
+ text: s.text; horizontalAlignment: Text.AlignRight; verticalAlignment: Text.AlignBottom; width: s.width;
}
- TestText {
- text: s.text; font.letterSpacing: 2
+ Grid{
+ columns: 2
+ spacing: 4
+ TestText {
+ text: s.text; color: "red"; smooth: true
+ }
+ TestText {
+ text: s.text; font.capitalization: "AllUppercase"
+ }
+ TestText {
+ text: s.text; font.underline: true
+ }
+ TestText {
+ text: s.text; font.overline: true; smooth: true
+ }
+ TestText {
+ text: s.text; font.strikeout: true
+ }
+ TestText {
+ text: s.text; font.underline: true; font.overline: true; font.strikeout: true
+ }
+ TestText {
+ text: s.text; style: Text.Outline; styleColor: "white"
+ }
+ TestText {
+ text: s.text; style: Text.Sunken; styleColor: "gray"
+ }
+ TestText {
+ text: s.text; style: Text.Raised; styleColor: "yellow"
+ }
+ TestText {
+ text: s.text; font.letterSpacing: 2
+ }
}
TestText {
text: s.text; font.underline: true; font.letterSpacing: 2; font.capitalization: "AllUppercase"; color: "blue"
@@ -43,24 +58,6 @@ Rectangle {
TestText {
text: s.text; font.overline: true; font.wordSpacing: 25; font.capitalization: "Capitalize"; color: "green"
}
- TestText {
- text: s.text; font.pixelSize: 18; style: Text.Outline; styleColor: "white"
- }
- TestText {
- text: s.text; font.pixelSize: 18; style: Text.Sunken; styleColor: "gray"
- }
- TestText {
- text: s.text; font.pixelSize: 18; style: Text.Raised; styleColor: "yellow"
- }
- TestText {
- text: s.text; horizontalAlignment: Text.AlignLeft; width: s.width
- }
- TestText {
- text: s.text; horizontalAlignment: Text.AlignHCenter; verticalAlignment: Text.AlignVCenter; width: s.width; height: 20
- }
- TestText {
- text: s.text; horizontalAlignment: Text.AlignRight; verticalAlignment: Text.AlignBottom; width: s.width; height: 20
- }
Row{
height: childrenRect.height
spacing: 4
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/font/plaintext3.qml b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/plaintext3.qml
index 087dfbe5fc..10a2d9ab19 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/font/plaintext3.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/plaintext3.qml
@@ -2,7 +2,7 @@ import QtQuick 1.0
Rectangle {
id: main
- width: 800; height: 600
+ width: 620; height: 280
Grid {
@@ -12,51 +12,51 @@ Rectangle {
Column {
spacing: 4
- TestText { }
- TestText { horizontalAlignment: Text.AlignHCenter }
- TestText { horizontalAlignment: Text.AlignRight }
+ BorderedText { }
+ BorderedText { horizontalAlignment: Text.AlignHCenter }
+ BorderedText { horizontalAlignment: Text.AlignRight }
}
Column {
spacing: 4
- TestText { wrapMode: Text.Wrap }
- TestText { horizontalAlignment: Text.AlignHCenter; wrapMode: Text.Wrap }
- TestText { horizontalAlignment: Text.AlignRight; wrapMode: Text.Wrap }
+ BorderedText { wrapMode: Text.Wrap }
+ BorderedText { horizontalAlignment: Text.AlignHCenter; wrapMode: Text.Wrap }
+ BorderedText { horizontalAlignment: Text.AlignRight; wrapMode: Text.Wrap }
}
Column {
spacing: 4
- TestText { wrapMode: Text.Wrap; elide: Text.ElideRight }
- TestText { horizontalAlignment: Text.AlignHCenter; wrapMode: Text.Wrap; elide: Text.ElideRight }
- TestText { horizontalAlignment: Text.AlignRight; wrapMode: Text.Wrap; elide: Text.ElideRight }
+ BorderedText { wrapMode: Text.Wrap; elide: Text.ElideRight }
+ BorderedText { horizontalAlignment: Text.AlignHCenter; wrapMode: Text.Wrap; elide: Text.ElideRight }
+ BorderedText { horizontalAlignment: Text.AlignRight; wrapMode: Text.Wrap; elide: Text.ElideRight }
}
Column {
spacing: 4
- TestText { width: 230; wrapMode: Text.Wrap; elide: Text.ElideRight }
- TestText { width: 230; horizontalAlignment: Text.AlignHCenter; wrapMode: Text.Wrap; elide: Text.ElideRight }
- TestText { width: 230; horizontalAlignment: Text.AlignRight; wrapMode: Text.Wrap; elide: Text.ElideRight }
+ BorderedText { width: 230; wrapMode: Text.Wrap; elide: Text.ElideRight }
+ BorderedText { width: 230; horizontalAlignment: Text.AlignHCenter; wrapMode: Text.Wrap; elide: Text.ElideRight }
+ BorderedText { width: 230; horizontalAlignment: Text.AlignRight; wrapMode: Text.Wrap; elide: Text.ElideRight }
}
Column {
spacing: 4
- TestText { width: 120; wrapMode: Text.Wrap; elide: Text.ElideRight }
- TestText { width: 120; horizontalAlignment: Text.AlignHCenter; wrapMode: Text.Wrap; elide: Text.ElideRight }
- TestText { width: 120; horizontalAlignment: Text.AlignRight; wrapMode: Text.Wrap; elide: Text.ElideRight }
+ BorderedText { width: 120; wrapMode: Text.Wrap; elide: Text.ElideRight }
+ BorderedText { width: 120; horizontalAlignment: Text.AlignHCenter; wrapMode: Text.Wrap; elide: Text.ElideRight }
+ BorderedText { width: 120; horizontalAlignment: Text.AlignRight; wrapMode: Text.Wrap; elide: Text.ElideRight }
}
Column {
spacing: 4
- TestText { width: 120; wrapMode: Text.Wrap }
- TestText { width: 120; horizontalAlignment: Text.AlignHCenter; wrapMode: Text.Wrap }
- TestText { width: 120; horizontalAlignment: Text.AlignRight; wrapMode: Text.Wrap }
+ BorderedText { width: 120; wrapMode: Text.Wrap }
+ BorderedText { width: 120; horizontalAlignment: Text.AlignHCenter; wrapMode: Text.Wrap }
+ BorderedText { width: 120; horizontalAlignment: Text.AlignRight; wrapMode: Text.Wrap }
}
Column {
spacing: 4
- TestText { width: 120 }
- TestText { width: 120; horizontalAlignment: Text.AlignHCenter }
- TestText { width: 120; horizontalAlignment: Text.AlignRight }
+ BorderedText { width: 120 }
+ BorderedText { width: 120; horizontalAlignment: Text.AlignHCenter }
+ BorderedText { width: 120; horizontalAlignment: Text.AlignRight }
}
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/font/richtext.qml b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/richtext.qml
index 36704797ea..a748b686c4 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/font/richtext.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/richtext.qml
@@ -2,7 +2,7 @@ import QtQuick 1.0
import "../../shared" 1.0
Rectangle {
- id: s; width: 620; height: 600; color: "lightsteelblue"
+ id: s; width: 620; height: 300; color: "lightsteelblue"
property string text: "<b>The</b> <i>quick</i> <u>brown</u> <o>fox</o> <big>jumps</big> <small>over</small> <tt>the</tt> <s>lazy</s> <em>dog</em>."
Column {
@@ -14,7 +14,7 @@ Rectangle {
text: s.text; font.pixelSize: 18
}
TestText {
- text: s.text; font.pointSize: 18
+ text: s.text; font.pixelSize: 24
}
TestText {
text: s.text; color: "red"; smooth: true
@@ -43,36 +43,5 @@ Rectangle {
TestText {
text: s.text; font.overline: true; font.wordSpacing: 25; font.capitalization: "Capitalize"; color: "green"
}
- TestText {
- text: s.text; font.pixelSize: 18; style: Text.Outline; styleColor: "white"
- }
- TestText {
- text: s.text; font.pixelSize: 18; style: Text.Sunken; styleColor: "gray"
- }
- TestText {
- text: s.text; font.pixelSize: 18; style: Text.Raised; styleColor: "yellow"
- }
- TestText {
- text: s.text; horizontalAlignment: Text.AlignLeft; width: s.width
- }
- TestText {
- text: s.text; horizontalAlignment: Text.AlignHCenter; verticalAlignment: Text.AlignVCenter; width: s.width; height: 20
- }
- TestText {
- text: s.text; horizontalAlignment: Text.AlignRight; verticalAlignment: Text.AlignBottom; width: s.width; height: 20
- }
- Row{
- height: childrenRect.height;
- spacing: 4
- TestText {
- text: s.text + " thisisaverylongstringwithnospaces"; width: 150; wrapMode: Text.WrapAnywhere
- }
- TestText {
- text: s.text + " thisisaverylongstringwithnospaces"; width: 150; wrapMode: Text.Wrap
- }
- TestText {
- text: s.text; font.pixelSize: 18; style: Text.Outline; styleColor: "white"; wrapMode: Text.WordWrap; width: 200
- }
- }
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/font/richtext2.qml b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/richtext2.qml
new file mode 100644
index 0000000000..f5e85fa00a
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/font/richtext2.qml
@@ -0,0 +1,43 @@
+import QtQuick 1.0
+import "../../shared" 1.0
+
+//This is a continuation of richtext.qml, it was bisected so that it could fit on smaller screens
+Rectangle {
+ id: s; width: 620; height: 300; color: "lightsteelblue"
+ property string text: "<b>The</b> <i>quick</i> <u>brown</u> <o>fox</o> <big>jumps</big> <small>over</small> <tt>the</tt> <s>lazy</s> <em>dog</em>."
+
+ Column {
+ spacing: 6
+ TestText {
+ text: s.text; font.pixelSize: 18; style: Text.Outline; styleColor: "white"
+ }
+ TestText {
+ text: s.text; font.pixelSize: 18; style: Text.Sunken; styleColor: "gray"
+ }
+ TestText {
+ text: s.text; font.pixelSize: 18; style: Text.Raised; styleColor: "yellow"
+ }
+ TestText {
+ text: s.text; horizontalAlignment: Text.AlignLeft; width: s.width
+ }
+ TestText {
+ text: s.text; horizontalAlignment: Text.AlignHCenter; verticalAlignment: Text.AlignVCenter; width: s.width; height: 20
+ }
+ TestText {
+ text: s.text; horizontalAlignment: Text.AlignRight; verticalAlignment: Text.AlignBottom; width: s.width; height: 20
+ }
+ Row{
+ height: childrenRect.height;
+ spacing: 4
+ TestText {
+ text: s.text + " thisisaverylongstringwithnospaces"; width: 150; wrapMode: Text.WrapAnywhere
+ }
+ TestText {
+ text: s.text + " thisisaverylongstringwithnospaces"; width: 150; wrapMode: Text.Wrap
+ }
+ TestText {
+ text: s.text; font.pixelSize: 18; style: Text.Outline; styleColor: "white"; wrapMode: Text.WordWrap; width: 200
+ }
+ }
+ }
+}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetext/qtbug_14865.qml b/tests/auto/declarative/qmlvisual/qdeclarativetext/qtbug_14865.qml
index 3d5fbf0b54..6699076c01 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetext/qtbug_14865.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetext/qtbug_14865.qml
@@ -2,7 +2,7 @@ import QtQuick 1.0
import "../shared" 1.0
Rectangle {
- width: 200; height: 200
+ width: 100; height: 20
TestText {
id: label
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/MultilineEdit.qml b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/MultilineEdit.qml
index 4273f32c26..17709ba913 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/MultilineEdit.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/MultilineEdit.qml
@@ -46,6 +46,7 @@ Item {
horizontalAlignment: TextInput.AlignLeft
wrapMode: TextEdit.WordWrap
font.pixelSize:15
+ selectionColor: 'steelblue'
}
MouseArea {
//Implements all line edit mouse handling
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.0.png
index f41c16574c..adbdfa74eb 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.1.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.1.png
index 539e4df892..d3fbdc6edd 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.2.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.2.png
index 47ceaac762..9a96d462c5 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.2.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.3.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.3.png
index e24a4535c0..2026aca78c 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.3.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.4.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.4.png
index ecf8335c19..c43502941b 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.4.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.5.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.5.png
index 3d8709fd16..70f273dff6 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.5.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.qml b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.qml
index ff5db4179b..0f3bd2cf50 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/cursorDelegate.qml
@@ -6,87 +6,87 @@ VisualTest {
}
Frame {
msec: 16
- hash: "c1bb09480464b7813bc10b0093d14745"
+ image: "cursorDelegate.0.png"
}
Frame {
msec: 32
- hash: "9d0e449506ce93052216b7a952af3dea"
+ hash: "b742ebe441dde1f30dab6d19954a9e8c"
}
Frame {
msec: 48
- hash: "52641f9d6dfba8bf2b94aa37ade140d1"
+ hash: "d3be942cfb93c4a5d5aa906410125d02"
}
Frame {
msec: 64
- hash: "7610775f69a461d5487e8bc3db6b6e1f"
+ hash: "062574e74354b104db2ee6d3c3af5802"
}
Frame {
msec: 80
- hash: "afe0c3fdcb498f1f6b877c5d808b2555"
+ hash: "575dd420067e4ebe5733eb4e35a447ab"
}
Frame {
msec: 96
- hash: "97dabf3984492d2f868b36c3e7bfce50"
+ hash: "4213f35c4cd233a08d98ba0380b7ab0a"
}
Frame {
msec: 112
- hash: "869624c2ae63b0a447401a955a6fefb1"
+ hash: "505e740aacf4ca7e6ad24367ddad8678"
}
Frame {
msec: 128
- hash: "7031966f014d4acd5b00c46c89f61403"
+ hash: "007e76fb247e11a442802c7cfb4e6a24"
}
Frame {
msec: 144
- hash: "bd5395e7e0aa0d50cb30504f9961c954"
+ hash: "5cf6cb0afffb791da1c4d0fe00cf6326"
}
Frame {
msec: 160
- hash: "a7142c3c1eb9c934e0b258c163fcdfec"
+ hash: "aff4097bd39c87c5d1459d99f314dade"
}
Frame {
msec: 176
- hash: "373c57edb812db59f40710305d80e9e9"
+ hash: "009dc0c6ff28333ac2fdfa3d79ad2fd6"
}
Frame {
msec: 192
- hash: "78b16507899c3c8de04b55389ea0ad49"
+ hash: "4bf8e82220ea0d0c4298d5374e149de2"
}
Frame {
msec: 208
- hash: "b0fd95dc2ac09a1cbd67ad0f86682666"
+ hash: "938a6eea45c4412e847a8700172d80ac"
}
Frame {
msec: 224
- hash: "5f073a4a89413b6a6c5d6ff52717bb2f"
+ hash: "6502416042993d05dd514119512ed61f"
}
Frame {
msec: 240
- hash: "82e61a4d3f58ee5104893e254a77f13e"
+ hash: "5d6702b9475e69bda2ed38f6e2d583d9"
}
Frame {
msec: 256
- hash: "a8fe05178e6339454d57575692fa3df3"
+ hash: "8e5fdc8e6cc38089d1e8ff5e91a5c894"
}
Frame {
msec: 272
- hash: "192f80add5f612b07dcb8d69f2161648"
+ hash: "c0249d07bcf25af69bf929b4d5ac00a3"
}
Frame {
msec: 288
- hash: "cfd85885f59ea80b0b0152446a829fec"
+ hash: "efe333c2b8cccea0bd7135484049db06"
}
Frame {
msec: 304
- hash: "a7295dcc92f80a5f343bf05076a03748"
+ hash: "57e49e9094691a204f7507b0231352b3"
}
Frame {
msec: 320
- hash: "2b0b30cfb1c1e4ed8a51d36fb7ccdf57"
+ hash: "d0a45bd3cfc5e4e6f9a48534c768daba"
}
Frame {
msec: 336
- hash: "419c538908d0226ff4485f1094eaa08e"
+ hash: "6960ab817c67a61af31cc187efe65016"
}
Key {
type: 6
@@ -98,27 +98,27 @@ VisualTest {
}
Frame {
msec: 352
- hash: "8afe64448d42419f97ca207487b3b0f8"
+ hash: "3b0d483ff765f36a196411967b6dfd70"
}
Frame {
msec: 368
- hash: "86091218d2d066d8f95a460426266369"
+ hash: "559713749d65246b185c0c91eb7ad39e"
}
Frame {
msec: 384
- hash: "fc45978cac92b6cdeeecc2dd4c29aa53"
+ hash: "9aea32722fd4f8b0cde3c06c61cecde6"
}
Frame {
msec: 400
- hash: "03a90ae5cbe68cc210e303c78a14e065"
+ hash: "25dfa32ce92b6044f5ea68411ab5de5b"
}
Frame {
msec: 416
- hash: "15603a997aa02afb688aa74cd930f3b4"
+ hash: "dab689ed2bbe663df309548e615e8621"
}
Frame {
msec: 432
- hash: "90bf6b2bf89e1440f0c4d1044c1bd22c"
+ hash: "26ad44cef380ff9f64c12180fb54c695"
}
Key {
type: 6
@@ -130,19 +130,19 @@ VisualTest {
}
Frame {
msec: 448
- hash: "4dbdc16538cbbf1a87c6a54e09e02b16"
+ hash: "5e8bbcd46b5692e66963387b80971e90"
}
Frame {
msec: 464
- hash: "2011ee59d2ec4bb0ae0d63727f091648"
+ hash: "747df5357daa951fbedeadf909f9dbf3"
}
Frame {
msec: 480
- hash: "c526315dd5eec117266c68a7b6b64a3f"
+ hash: "af99069cdddfa9d099fbe25ba586e138"
}
Frame {
msec: 496
- hash: "c526315dd5eec117266c68a7b6b64a3f"
+ hash: "af99069cdddfa9d099fbe25ba586e138"
}
Key {
type: 6
@@ -154,35 +154,35 @@ VisualTest {
}
Frame {
msec: 512
- hash: "7fc65284b99fc548de0985d94a145fa7"
+ hash: "cb6ca047657a99dbbb037c1c45b40866"
}
Frame {
msec: 528
- hash: "7fc65284b99fc548de0985d94a145fa7"
+ hash: "cb6ca047657a99dbbb037c1c45b40866"
}
Frame {
msec: 544
- hash: "7fc65284b99fc548de0985d94a145fa7"
+ hash: "cb6ca047657a99dbbb037c1c45b40866"
}
Frame {
msec: 560
- hash: "7fc65284b99fc548de0985d94a145fa7"
+ hash: "cb6ca047657a99dbbb037c1c45b40866"
}
Frame {
msec: 576
- hash: "b4205f141a7a6b646cf641ba922d588b"
+ hash: "1684711d2c492de2093357168b8726c6"
}
Frame {
msec: 592
- hash: "94c3adf5da700bb63ed6eaf0adf8d037"
+ hash: "6d960ca89faec6e3d81f78911b9b5ecf"
}
Frame {
msec: 608
- hash: "62c4757a2e26341655e27417f85ba6d8"
+ hash: "1fdd91b57f5832d5c4d797d150892156"
}
Frame {
msec: 624
- hash: "9de2ce48334b088c0a0960a581f43a36"
+ hash: "4e0f1ec936cacf3ab6fbc7899a6bc92d"
}
Key {
type: 7
@@ -194,15 +194,15 @@ VisualTest {
}
Frame {
msec: 640
- hash: "9ca827d4812521d1590ca6e7117bd788"
+ hash: "9e67145b58051fd7dc4a18ee0e6a72ad"
}
Frame {
msec: 656
- hash: "66f65cd7215ea89e60d8f60337fffe97"
+ hash: "14dfb4b356ec851275ddd8e93f04e2d2"
}
Frame {
msec: 672
- hash: "05caae5e0d092c4d0595286aa4baa6a0"
+ hash: "e9b8f691ad62d10877aacb94f98ea308"
}
Key {
type: 6
@@ -214,31 +214,31 @@ VisualTest {
}
Frame {
msec: 688
- hash: "2282153f3ae493aa6ad5377b12d88043"
+ hash: "a44b5f63ec1f98b6bc34e95214c9d79e"
}
Frame {
msec: 704
- hash: "aee2503a5d4ec61795b0486da5c53867"
+ hash: "6bc0e035c90b74de024d379388fd7014"
}
Frame {
msec: 720
- hash: "f564e1ae90bc6b1ea4bc84f1729eb487"
+ hash: "61d8f417f7ca5cba2e98a7a7427ea635"
}
Frame {
msec: 736
- hash: "f5c70adef5725a0574b63dd5ab7d7b12"
+ hash: "f50adb10f55bcd4c2eb0955f6e1ff78e"
}
Frame {
msec: 752
- hash: "74ed3230417c69b0dc82ce9cfe4b6cd0"
+ hash: "9e160aefac79a9804f6cb8622e45ba71"
}
Frame {
msec: 768
- hash: "374270279bcc00167d2b63bf9a658785"
+ hash: "6555a0bd60dbbad66283fe37b2f0c362"
}
Frame {
msec: 784
- hash: "68445a2b5470e44baf7af95efc20ba33"
+ hash: "0cacc38d86ebf497d31b01556b8a5924"
}
Key {
type: 7
@@ -250,63 +250,63 @@ VisualTest {
}
Frame {
msec: 800
- hash: "5add6c9527edf6bbdb3a79b8a524db70"
+ hash: "b2fe1d5cb5e0a5f07d84ff7a494ae07a"
}
Frame {
msec: 816
- hash: "01a96c8407fa2c0f9e7a822249ac9adc"
+ hash: "2c6dbd777bba27b481a8a6ef34d213f9"
}
Frame {
msec: 832
- hash: "6b9af295d8f2fb5ba8d9c234596d0a88"
+ hash: "989e53620edc6b9b0990545459e7f787"
}
Frame {
msec: 848
- hash: "3837442e90c2a1534e21d21bfc3b46e1"
+ hash: "a89686a7802da3fd07a265a5814255f4"
}
Frame {
msec: 864
- hash: "afd7d2494dae8e7ef40a165ccc627313"
+ hash: "9f707497eb0c224c8b0a3bba1533217a"
}
Frame {
msec: 880
- hash: "6e7058d540b26d3c5f15804f2f93b835"
+ hash: "29df155c0b75de8e1bd6361372a51797"
}
Frame {
msec: 896
- hash: "ffa489a15db741d8b835d998336bc1b3"
+ hash: "fb7cbeb1e3689cc38acf7a02d671a955"
}
Frame {
msec: 912
- hash: "5a0308d1d2a6a36e16ddb312294fcbf8"
+ hash: "9045ada282ec37b1681cef89dfcc8f67"
}
Frame {
msec: 928
- hash: "bd56ed24908c7e8ec4e5ebc75a19ca86"
+ hash: "b3816b225eaf5ab49bb31f86ecdd52cb"
}
Frame {
msec: 944
- hash: "7bd56b12087226100da27776f8943427"
+ hash: "0956fccb8e1bf2c218a9e39947846aaa"
}
Frame {
msec: 960
- image: "cursorDelegate.0.png"
+ hash: "01f4ba2e0b4eb018c620efa5e92ec9fe"
}
Frame {
msec: 976
- hash: "f48a56350bba266c2f19deb46d39e174"
+ image: "cursorDelegate.1.png"
}
Frame {
msec: 992
- hash: "9587bb118f2eb2bf8bb3cfc40ed18310"
+ hash: "c19ec2d067d30a6d42056c9799b0c0c3"
}
Frame {
msec: 1008
- hash: "0f9e9622427ebaf85369b3013ae9aaf0"
+ hash: "43a9d066887a89372136619ae8eec100"
}
Frame {
msec: 1024
- hash: "0f9e9622427ebaf85369b3013ae9aaf0"
+ hash: "43a9d066887a89372136619ae8eec100"
}
Key {
type: 7
@@ -318,39 +318,39 @@ VisualTest {
}
Frame {
msec: 1040
- hash: "9587bb118f2eb2bf8bb3cfc40ed18310"
+ hash: "c19ec2d067d30a6d42056c9799b0c0c3"
}
Frame {
msec: 1056
- hash: "f48a56350bba266c2f19deb46d39e174"
+ hash: "8303d8b19e6e5b249aaf2ffbb6d29f91"
}
Frame {
msec: 1072
- hash: "8234f16d07e76aeedb6ca14d622453cb"
+ hash: "01f4ba2e0b4eb018c620efa5e92ec9fe"
}
Frame {
msec: 1088
- hash: "7bd56b12087226100da27776f8943427"
+ hash: "0956fccb8e1bf2c218a9e39947846aaa"
}
Frame {
msec: 1104
- hash: "bd56ed24908c7e8ec4e5ebc75a19ca86"
+ hash: "b3816b225eaf5ab49bb31f86ecdd52cb"
}
Frame {
msec: 1120
- hash: "5a0308d1d2a6a36e16ddb312294fcbf8"
+ hash: "9045ada282ec37b1681cef89dfcc8f67"
}
Frame {
msec: 1136
- hash: "ffa489a15db741d8b835d998336bc1b3"
+ hash: "fb7cbeb1e3689cc38acf7a02d671a955"
}
Frame {
msec: 1152
- hash: "6e7058d540b26d3c5f15804f2f93b835"
+ hash: "29df155c0b75de8e1bd6361372a51797"
}
Frame {
msec: 1168
- hash: "afd7d2494dae8e7ef40a165ccc627313"
+ hash: "9f707497eb0c224c8b0a3bba1533217a"
}
Key {
type: 6
@@ -362,31 +362,31 @@ VisualTest {
}
Frame {
msec: 1184
- hash: "1d5c9458d568df773dbff4e333e14de0"
+ hash: "9f712a688504fff9719b38c067b32c50"
}
Frame {
msec: 1200
- hash: "8eef242d89b7e2eff7678030f9fd808e"
+ hash: "24f1467e3be5f4d0509800bef97f4401"
}
Frame {
msec: 1216
- hash: "97dc6ebbf64a19f5026c02ea4c79d63b"
+ hash: "d56e5fd86addad3bc53417b82ff68829"
}
Frame {
msec: 1232
- hash: "52d2135428c3c2bf85f0fa7c2ba01a25"
+ hash: "f1c60934ef284840e61fd46c758dd14b"
}
Frame {
msec: 1248
- hash: "c713bd1d1ab2df81292020e6e822546c"
+ hash: "7be9fc54278572116f9bd9be8f6994a4"
}
Frame {
msec: 1264
- hash: "0c61ff34510168e324c53786720dd953"
+ hash: "0e0ea7ca1b8479d62ae81fb53a1ec264"
}
Frame {
msec: 1280
- hash: "ba1488f2d9d4482cdf41c40af7642030"
+ hash: "f8b19dbaeec469896a081687d80a2ac4"
}
Key {
type: 7
@@ -398,95 +398,95 @@ VisualTest {
}
Frame {
msec: 1296
- hash: "91d2da369579bb72641d4e7e7cd696f5"
+ hash: "a28665925ec121a2bf01733e0a20e18b"
}
Frame {
msec: 1312
- hash: "1cf1d30d6def868a60f434fe84c23c47"
+ hash: "baa0c601f3d84e344847dcb7f3bd18cf"
}
Frame {
msec: 1328
- hash: "ba5b3005af3c44caaf7272cbb56e60da"
+ hash: "a80d59a1e5af45bc799c19200a3c44ec"
}
Frame {
msec: 1344
- hash: "116ab7576b5e45e6009920854ff87f39"
+ hash: "2a6f833e2fd2930c8ec49016809d8cf6"
}
Frame {
msec: 1360
- hash: "294c76d6f63c230af666b0b86e0c9844"
+ hash: "efdc2daad00aaec2c39541261d6d1a98"
}
Frame {
msec: 1376
- hash: "c721a5b17b1eb4a063fa3b727d13ba62"
+ hash: "65b75f2a074d4ac5d84fb762d1762231"
}
Frame {
msec: 1392
- hash: "a98bd750b67a0ef8831c9c66a0b06a28"
+ hash: "2a170e51a83e902d2699501877225ee3"
}
Frame {
msec: 1408
- hash: "7739509b0f5e62207ba62262d8822388"
+ hash: "1e4c78e279ff4ab7a875e4d67f68f8ca"
}
Frame {
msec: 1424
- hash: "62d70a7e3ce290c52d37090bf899377c"
+ hash: "fd515cf3ec7b987e0e36c02f1da5b8a7"
}
Frame {
msec: 1440
- hash: "3f3c1137c02e14796c3a4537337d1dd8"
+ hash: "54126910ea7a303ea3e7726309d8bf39"
}
Frame {
msec: 1456
- hash: "4997a45af699c1face114c72a9ce067d"
+ hash: "89263867df0cfa623f80e1578532d98d"
}
Frame {
msec: 1472
- hash: "093cce71722904a32b030478f3af49bb"
+ hash: "1bf04aafab1177182eec9a0ff459cd7b"
}
Frame {
msec: 1488
- hash: "093cce71722904a32b030478f3af49bb"
+ hash: "1bf04aafab1177182eec9a0ff459cd7b"
}
Frame {
msec: 1504
- hash: "093cce71722904a32b030478f3af49bb"
+ hash: "1bf04aafab1177182eec9a0ff459cd7b"
}
Frame {
msec: 1520
- hash: "093cce71722904a32b030478f3af49bb"
+ hash: "1bf04aafab1177182eec9a0ff459cd7b"
}
Frame {
msec: 1536
- hash: "093cce71722904a32b030478f3af49bb"
+ hash: "1bf04aafab1177182eec9a0ff459cd7b"
}
Frame {
msec: 1552
- hash: "093cce71722904a32b030478f3af49bb"
+ hash: "1bf04aafab1177182eec9a0ff459cd7b"
}
Frame {
msec: 1568
- hash: "a4810a97e51259350bb1543dffc156af"
+ hash: "c824a8bbf60514c20713b1fa583451b2"
}
Frame {
msec: 1584
- hash: "838871072acbefc1c8c488f47312da9b"
+ hash: "f6282cd20d7f3f64415a0a24df578964"
}
Frame {
msec: 1600
- hash: "8cfe8847729878519669caa8b702d910"
+ hash: "a4633c7dc825f20a7ada2079712f7b5e"
}
Frame {
msec: 1616
- hash: "a2fd8e049d03b87a306bb5b81e3f7311"
+ hash: "240c839fc986573523b30567afe05623"
}
Frame {
msec: 1632
- hash: "29bd4d5e36cb6b232f513b6bb0c00b28"
+ hash: "9e3098ea355a80e7e439f3cdecd15b77"
}
Frame {
msec: 1648
- hash: "9637f14efb2e355bfe886d7c5f2a8d38"
+ hash: "d8ec7fd807f345509703f4ecf94b583d"
}
Key {
type: 6
@@ -498,35 +498,35 @@ VisualTest {
}
Frame {
msec: 1664
- hash: "0365fa8845c3c1e53ef35d22423eb973"
+ hash: "5b6e0bedeca1784610081762850813a1"
}
Frame {
msec: 1680
- hash: "bf88d5d2cd2ff062c1cc8a391a238b1d"
+ hash: "13a596d7aefa3c8ce61660dd5ce27627"
}
Frame {
msec: 1696
- hash: "46b22f33eb80f013e44da11153441864"
+ hash: "295bbee587f2fdbadab7aa4e3900b6e0"
}
Frame {
msec: 1712
- hash: "05ae42e3a0296a569dec147c76be273d"
+ hash: "645da4001b1489b12e0bb5dd1b5c114b"
}
Frame {
msec: 1728
- hash: "1a8cc65973d08bb949f7a71b0bb8be1a"
+ hash: "8e7e4f5b8eb437ab92e466b1d79aee01"
}
Frame {
msec: 1744
- hash: "ca3bde8cd8de81c4210fcfd000fe0f5e"
+ hash: "1a7ec33aa8a19a36a7fc99c3040e427a"
}
Frame {
msec: 1760
- hash: "e06d104d1ed451eea4c1d9bdae9d10f4"
+ hash: "85f6c7d9f86910e7cceeaf9efc375355"
}
Frame {
msec: 1776
- hash: "c95153ae401ad8a2e839905841c074f3"
+ hash: "8e54b0699d681cfbfc3b605b010c6b76"
}
Key {
type: 6
@@ -538,35 +538,35 @@ VisualTest {
}
Frame {
msec: 1792
- hash: "82e61a4d3f58ee5104893e254a77f13e"
+ hash: "5d6702b9475e69bda2ed38f6e2d583d9"
}
Frame {
msec: 1808
- hash: "5f073a4a89413b6a6c5d6ff52717bb2f"
+ hash: "6502416042993d05dd514119512ed61f"
}
Frame {
msec: 1824
- hash: "b0fd95dc2ac09a1cbd67ad0f86682666"
+ hash: "938a6eea45c4412e847a8700172d80ac"
}
Frame {
msec: 1840
- hash: "78b16507899c3c8de04b55389ea0ad49"
+ hash: "4bf8e82220ea0d0c4298d5374e149de2"
}
Frame {
msec: 1856
- hash: "373c57edb812db59f40710305d80e9e9"
+ hash: "009dc0c6ff28333ac2fdfa3d79ad2fd6"
}
Frame {
msec: 1872
- hash: "a7142c3c1eb9c934e0b258c163fcdfec"
+ hash: "aff4097bd39c87c5d1459d99f314dade"
}
Frame {
msec: 1888
- hash: "bd5395e7e0aa0d50cb30504f9961c954"
+ hash: "5cf6cb0afffb791da1c4d0fe00cf6326"
}
Frame {
msec: 1904
- hash: "7031966f014d4acd5b00c46c89f61403"
+ hash: "007e76fb247e11a442802c7cfb4e6a24"
}
Key {
type: 7
@@ -578,83 +578,83 @@ VisualTest {
}
Frame {
msec: 1920
- image: "cursorDelegate.1.png"
+ hash: "505e740aacf4ca7e6ad24367ddad8678"
}
Frame {
msec: 1936
- hash: "97dabf3984492d2f868b36c3e7bfce50"
+ image: "cursorDelegate.2.png"
}
Frame {
msec: 1952
- hash: "afe0c3fdcb498f1f6b877c5d808b2555"
+ hash: "575dd420067e4ebe5733eb4e35a447ab"
}
Frame {
msec: 1968
- hash: "7610775f69a461d5487e8bc3db6b6e1f"
+ hash: "062574e74354b104db2ee6d3c3af5802"
}
Frame {
msec: 1984
- hash: "52641f9d6dfba8bf2b94aa37ade140d1"
+ hash: "d3be942cfb93c4a5d5aa906410125d02"
}
Frame {
msec: 2000
- hash: "9d0e449506ce93052216b7a952af3dea"
+ hash: "b742ebe441dde1f30dab6d19954a9e8c"
}
Frame {
msec: 2016
- hash: "c1bb09480464b7813bc10b0093d14745"
+ hash: "bbe3a292c59e2f7ae6b8877f6736c96e"
}
Frame {
msec: 2032
- hash: "9d0e449506ce93052216b7a952af3dea"
+ hash: "b742ebe441dde1f30dab6d19954a9e8c"
}
Frame {
msec: 2048
- hash: "52641f9d6dfba8bf2b94aa37ade140d1"
+ hash: "d3be942cfb93c4a5d5aa906410125d02"
}
Frame {
msec: 2064
- hash: "7610775f69a461d5487e8bc3db6b6e1f"
+ hash: "062574e74354b104db2ee6d3c3af5802"
}
Frame {
msec: 2080
- hash: "afe0c3fdcb498f1f6b877c5d808b2555"
+ hash: "575dd420067e4ebe5733eb4e35a447ab"
}
Frame {
msec: 2096
- hash: "97dabf3984492d2f868b36c3e7bfce50"
+ hash: "4213f35c4cd233a08d98ba0380b7ab0a"
}
Frame {
msec: 2112
- hash: "869624c2ae63b0a447401a955a6fefb1"
+ hash: "505e740aacf4ca7e6ad24367ddad8678"
}
Frame {
msec: 2128
- hash: "7031966f014d4acd5b00c46c89f61403"
+ hash: "007e76fb247e11a442802c7cfb4e6a24"
}
Frame {
msec: 2144
- hash: "bd5395e7e0aa0d50cb30504f9961c954"
+ hash: "5cf6cb0afffb791da1c4d0fe00cf6326"
}
Frame {
msec: 2160
- hash: "a7142c3c1eb9c934e0b258c163fcdfec"
+ hash: "aff4097bd39c87c5d1459d99f314dade"
}
Frame {
msec: 2176
- hash: "373c57edb812db59f40710305d80e9e9"
+ hash: "009dc0c6ff28333ac2fdfa3d79ad2fd6"
}
Frame {
msec: 2192
- hash: "78b16507899c3c8de04b55389ea0ad49"
+ hash: "4bf8e82220ea0d0c4298d5374e149de2"
}
Frame {
msec: 2208
- hash: "b0fd95dc2ac09a1cbd67ad0f86682666"
+ hash: "938a6eea45c4412e847a8700172d80ac"
}
Frame {
msec: 2224
- hash: "5f073a4a89413b6a6c5d6ff52717bb2f"
+ hash: "6502416042993d05dd514119512ed61f"
}
Key {
type: 7
@@ -666,35 +666,35 @@ VisualTest {
}
Frame {
msec: 2240
- hash: "82e61a4d3f58ee5104893e254a77f13e"
+ hash: "5d6702b9475e69bda2ed38f6e2d583d9"
}
Frame {
msec: 2256
- hash: "a8fe05178e6339454d57575692fa3df3"
+ hash: "8e5fdc8e6cc38089d1e8ff5e91a5c894"
}
Frame {
msec: 2272
- hash: "192f80add5f612b07dcb8d69f2161648"
+ hash: "c0249d07bcf25af69bf929b4d5ac00a3"
}
Frame {
msec: 2288
- hash: "cfd85885f59ea80b0b0152446a829fec"
+ hash: "efe333c2b8cccea0bd7135484049db06"
}
Frame {
msec: 2304
- hash: "a7295dcc92f80a5f343bf05076a03748"
+ hash: "57e49e9094691a204f7507b0231352b3"
}
Frame {
msec: 2320
- hash: "2b0b30cfb1c1e4ed8a51d36fb7ccdf57"
+ hash: "d0a45bd3cfc5e4e6f9a48534c768daba"
}
Frame {
msec: 2336
- hash: "419c538908d0226ff4485f1094eaa08e"
+ hash: "6960ab817c67a61af31cc187efe65016"
}
Frame {
msec: 2352
- hash: "8afe64448d42419f97ca207487b3b0f8"
+ hash: "3b0d483ff765f36a196411967b6dfd70"
}
Key {
type: 6
@@ -706,35 +706,35 @@ VisualTest {
}
Frame {
msec: 2368
- hash: "86091218d2d066d8f95a460426266369"
+ hash: "559713749d65246b185c0c91eb7ad39e"
}
Frame {
msec: 2384
- hash: "fc45978cac92b6cdeeecc2dd4c29aa53"
+ hash: "9aea32722fd4f8b0cde3c06c61cecde6"
}
Frame {
msec: 2400
- hash: "03a90ae5cbe68cc210e303c78a14e065"
+ hash: "25dfa32ce92b6044f5ea68411ab5de5b"
}
Frame {
msec: 2416
- hash: "15603a997aa02afb688aa74cd930f3b4"
+ hash: "dab689ed2bbe663df309548e615e8621"
}
Frame {
msec: 2432
- hash: "90bf6b2bf89e1440f0c4d1044c1bd22c"
+ hash: "26ad44cef380ff9f64c12180fb54c695"
}
Frame {
msec: 2448
- hash: "4dbdc16538cbbf1a87c6a54e09e02b16"
+ hash: "5e8bbcd46b5692e66963387b80971e90"
}
Frame {
msec: 2464
- hash: "2011ee59d2ec4bb0ae0d63727f091648"
+ hash: "747df5357daa951fbedeadf909f9dbf3"
}
Frame {
msec: 2480
- hash: "c526315dd5eec117266c68a7b6b64a3f"
+ hash: "af99069cdddfa9d099fbe25ba586e138"
}
Key {
type: 7
@@ -746,95 +746,95 @@ VisualTest {
}
Frame {
msec: 2496
- hash: "c526315dd5eec117266c68a7b6b64a3f"
+ hash: "af99069cdddfa9d099fbe25ba586e138"
}
Frame {
msec: 2512
- hash: "c526315dd5eec117266c68a7b6b64a3f"
+ hash: "af99069cdddfa9d099fbe25ba586e138"
}
Frame {
msec: 2528
- hash: "c526315dd5eec117266c68a7b6b64a3f"
+ hash: "af99069cdddfa9d099fbe25ba586e138"
}
Frame {
msec: 2544
- hash: "c526315dd5eec117266c68a7b6b64a3f"
+ hash: "af99069cdddfa9d099fbe25ba586e138"
}
Frame {
msec: 2560
- hash: "c526315dd5eec117266c68a7b6b64a3f"
+ hash: "af99069cdddfa9d099fbe25ba586e138"
}
Frame {
msec: 2576
- hash: "02996bef06c74f34cf8be4cf4d1392d5"
+ hash: "1568d4b93d2a284c46f23a0cb17acc24"
}
Frame {
msec: 2592
- hash: "2d8cb2d213ce22132ba63a829c07f768"
+ hash: "0665a6cfc09981cd8a7ffd0d02e6fbdc"
}
Frame {
msec: 2608
- hash: "0a16c282a18fdc657ea48fb208dea494"
+ hash: "49892aa44c8e3584239d245a7ca98af3"
}
Frame {
msec: 2624
- hash: "86baec52ccb8ae818439c637c5be1514"
+ hash: "c9def393bb5d6c447c45b127d32b5e50"
}
Frame {
msec: 2640
- hash: "72e2415581ba2a96b8f23cf8f5985afb"
+ hash: "679d94007b33197ce7decb4df6e8343c"
}
Frame {
msec: 2656
- hash: "7776d964b2b5f80bac51a29d298a067f"
+ hash: "817987bcd9f1147ba047333b42ed289d"
}
Frame {
msec: 2672
- hash: "3b5d0a9f961c2102a4118a8e2d2793ae"
+ hash: "fdd9331015c289b8e33b094999b11dce"
}
Frame {
msec: 2688
- hash: "048b5e51d9bcf8d1b24c8f8f98b7b4e4"
+ hash: "e4fa13ba2770c0d390945ee4505fea9b"
}
Frame {
msec: 2704
- hash: "d30e5d7c27b72ec95c41a87741061a3f"
+ hash: "69965c88d2273acf680af243610efcf3"
}
Frame {
msec: 2720
- hash: "0374cc41cdb6528e212f678e0e049f2b"
+ hash: "6cbeb6787a0a7fb7f654f877e41eed57"
}
Frame {
msec: 2736
- hash: "c80bc90c90b02d1d42176f16fa992f27"
+ hash: "e7528c074b3c65afe3873a3cdf96f041"
}
Frame {
msec: 2752
- hash: "70182707dbdf87a2c8db556f030bec17"
+ hash: "c06c72abe46087f0db87a84fdcbcf601"
}
Frame {
msec: 2768
- hash: "0c6c0c3d27d87128d65b40789714dd6b"
+ hash: "b6840f1d7cf2caed17d763b782553071"
}
Frame {
msec: 2784
- hash: "46e1debee4ca606492a36de6191f4594"
+ hash: "71fdb77c4133f37180d581e4b1fe9c83"
}
Frame {
msec: 2800
- hash: "f327bb2ea12b2baffc0a98d44a0ded16"
+ hash: "f5e2075ed86f146e0162ae4f0a9c6b90"
}
Frame {
msec: 2816
- hash: "15bc04b65bde5e8ca69b6a1f88647c16"
+ hash: "5e76b741f49bd279b9f62ae3f474e5b5"
}
Frame {
msec: 2832
- hash: "27156c3309835ec20a02877f1188e14a"
+ hash: "28c8003699352c3c9563556939d49cd8"
}
Frame {
msec: 2848
- hash: "a163019c9feff0f4d1bb4aaedcd2ecd4"
+ hash: "15ab751c8463326c870dc9ee1af3c1d7"
}
Key {
type: 6
@@ -846,35 +846,35 @@ VisualTest {
}
Frame {
msec: 2864
- hash: "c5569c3c06bcf01b7e69e7f7ad6203ef"
+ hash: "6035ef1252d4f28b965b0bf4771540e4"
}
Frame {
msec: 2880
- image: "cursorDelegate.2.png"
+ hash: "7c79170b07db90ca94f5642f3c0d3998"
}
Frame {
msec: 2896
- hash: "5d1c41e371b1a95426882b3991383b6b"
+ image: "cursorDelegate.3.png"
}
Frame {
msec: 2912
- hash: "4b9581a767fc1c94451780c044baf003"
+ hash: "3b4d1f5e1506c851887c86883eb1a6ac"
}
Frame {
msec: 2928
- hash: "39978ba9bb1a535d7735228c650add38"
+ hash: "5aff09b0e9078ca6d4ed93694d1fa6f9"
}
Frame {
msec: 2944
- hash: "1a2afe394227dcf2da118559e2e58fd7"
+ hash: "16813ebf88f881a4cebf75a2325dc064"
}
Frame {
msec: 2960
- hash: "2f6bdb7af9bf9334231180b6113b125f"
+ hash: "5b901505bb1ab80cd4d5bc85b73ae8ad"
}
Frame {
msec: 2976
- hash: "85017ca5ca286830e2745abf2f1f963a"
+ hash: "04c7f2e959c31bf6d3e7bea25d27eb87"
}
Key {
type: 7
@@ -886,63 +886,63 @@ VisualTest {
}
Frame {
msec: 2992
- hash: "3760b42a25e332c6df49bd92109dae98"
+ hash: "408bb423b93cb48afb97a7744848fc5e"
}
Frame {
msec: 3008
- hash: "7c0347f97f9e4d7fcf47a90b336d264a"
+ hash: "1a58d66b4d42736eea49a602923a0941"
}
Frame {
msec: 3024
- hash: "7c0347f97f9e4d7fcf47a90b336d264a"
+ hash: "1a58d66b4d42736eea49a602923a0941"
}
Frame {
msec: 3040
- hash: "3760b42a25e332c6df49bd92109dae98"
+ hash: "408bb423b93cb48afb97a7744848fc5e"
}
Frame {
msec: 3056
- hash: "85017ca5ca286830e2745abf2f1f963a"
+ hash: "04c7f2e959c31bf6d3e7bea25d27eb87"
}
Frame {
msec: 3072
- hash: "2f6bdb7af9bf9334231180b6113b125f"
+ hash: "5b901505bb1ab80cd4d5bc85b73ae8ad"
}
Frame {
msec: 3088
- hash: "1a2afe394227dcf2da118559e2e58fd7"
+ hash: "16813ebf88f881a4cebf75a2325dc064"
}
Frame {
msec: 3104
- hash: "39978ba9bb1a535d7735228c650add38"
+ hash: "5aff09b0e9078ca6d4ed93694d1fa6f9"
}
Frame {
msec: 3120
- hash: "4b9581a767fc1c94451780c044baf003"
+ hash: "3b4d1f5e1506c851887c86883eb1a6ac"
}
Frame {
msec: 3136
- hash: "5d1c41e371b1a95426882b3991383b6b"
+ hash: "6a0a21ed890b475ce506714cc0501381"
}
Frame {
msec: 3152
- hash: "73c771b964becb418289e0674571eb6f"
+ hash: "7c79170b07db90ca94f5642f3c0d3998"
}
Frame {
msec: 3168
- hash: "c5569c3c06bcf01b7e69e7f7ad6203ef"
+ hash: "6035ef1252d4f28b965b0bf4771540e4"
}
Frame {
msec: 3184
- hash: "7c55078e04b56c9aba7d227917323021"
+ hash: "9529b5b70b76541ec82be173deedadfb"
}
Frame {
msec: 3200
- hash: "01c6b78b296c00e4597ae1bd36a65f3a"
+ hash: "174bbd347422c46923d6a5831cb5cd94"
}
Frame {
msec: 3216
- hash: "67e9271f71b2d6d9eb2e230953db06c5"
+ hash: "1eb95daf505b817161f1a251cdde1b3c"
}
Key {
type: 6
@@ -954,31 +954,31 @@ VisualTest {
}
Frame {
msec: 3232
- hash: "642a6f4d7b3f467263b8e033578927af"
+ hash: "10f59fadaa27f78b7a1fb25d3a30adf7"
}
Frame {
msec: 3248
- hash: "9f000f97b33427860cb5daeb259c72ea"
+ hash: "b87417c77b43bdbfdc3d8293c9a23216"
}
Frame {
msec: 3264
- hash: "d74e3f977b5decb89dda46ea608a933a"
+ hash: "64345c713d61638bcc32f277208f2665"
}
Frame {
msec: 3280
- hash: "f4e446cd96a3eb1a0df83cf032e7a0b2"
+ hash: "753dbe02fa95ee2b1387b98d7d456dcf"
}
Frame {
msec: 3296
- hash: "abe715855a79a8ced43000884c4bf04b"
+ hash: "fce9a58aaf8d5cadbb029194317dcae3"
}
Frame {
msec: 3312
- hash: "29fd5c17b9a169c1850aa538b4006084"
+ hash: "367083bd88443558002601acbc355b1a"
}
Frame {
msec: 3328
- hash: "cefdcaebb9c319ac358b0d7fc9424327"
+ hash: "8e6ffccf321fa30faec432a4b4138967"
}
Key {
type: 7
@@ -990,103 +990,103 @@ VisualTest {
}
Frame {
msec: 3344
- hash: "85bfa23957bb5cd947e0819ffa442ea3"
+ hash: "4dd4e0dafeed0fc11790145d39f7c85f"
}
Frame {
msec: 3360
- hash: "48f18d9d12331dc8725ea9e4b7f79823"
+ hash: "d612765c6b43035ea4e4683f968a18d3"
}
Frame {
msec: 3376
- hash: "63cde59ffbbe2b9087ca228733de18dd"
+ hash: "fa77d4d8d339b78e5a28dcf69336c116"
}
Frame {
msec: 3392
- hash: "73f5d4594f23ff4aac5e42aee00dce81"
+ hash: "34cf572a432bdd6dcfcc4fdfa032a800"
}
Frame {
msec: 3408
- hash: "51a1b8e79d209643d55d4cecc6a70ed0"
+ hash: "150b5a2f2e916b7023764c481c768492"
}
Frame {
msec: 3424
- hash: "7f2ae476246b23d79997a2545723ff62"
+ hash: "fbc93f511d6f3093c2ecf624a2c63749"
}
Frame {
msec: 3440
- hash: "996da2eff9302908a55308dbcc8fb3c2"
+ hash: "f9e0bd08b722c16493a8886a19920dda"
}
Frame {
msec: 3456
- hash: "264f34128dfe563126b9f187c65df61e"
+ hash: "f499f4b3017c88c63f0a2035ad527a0e"
}
Frame {
msec: 3472
- hash: "c526315dd5eec117266c68a7b6b64a3f"
+ hash: "af99069cdddfa9d099fbe25ba586e138"
}
Frame {
msec: 3488
- hash: "c526315dd5eec117266c68a7b6b64a3f"
+ hash: "af99069cdddfa9d099fbe25ba586e138"
}
Frame {
msec: 3504
- hash: "c526315dd5eec117266c68a7b6b64a3f"
+ hash: "af99069cdddfa9d099fbe25ba586e138"
}
Frame {
msec: 3520
- hash: "c526315dd5eec117266c68a7b6b64a3f"
+ hash: "af99069cdddfa9d099fbe25ba586e138"
}
Frame {
msec: 3536
- hash: "c526315dd5eec117266c68a7b6b64a3f"
+ hash: "af99069cdddfa9d099fbe25ba586e138"
}
Frame {
msec: 3552
- hash: "c526315dd5eec117266c68a7b6b64a3f"
+ hash: "af99069cdddfa9d099fbe25ba586e138"
}
Frame {
msec: 3568
- hash: "70d6b73499c36138bee63e07afb0b186"
+ hash: "68d331f508b43e756d6e30ba9b60f9aa"
}
Frame {
msec: 3584
- hash: "66500c2cc3d69b9fb48dc46e384aca6d"
+ hash: "c9147c159aebb7aa51d4bac28f96cb57"
}
Frame {
msec: 3600
- hash: "6ccc70f6120acb53152b71bcf95514ca"
+ hash: "0636b7c5cc215882c60b50f62133c715"
}
Frame {
msec: 3616
- hash: "5c10e6b0e541fe913b589601a55ea6ce"
+ hash: "10b52296e40380a915f7538d21d321a4"
}
Frame {
msec: 3632
- hash: "2c62584e4c09c1d22f9016aa6fa74e10"
+ hash: "9c56e2c5e04e8767b70d357558e179de"
}
Frame {
msec: 3648
- hash: "fd8f53e36a86ae22deb4f7af5aa1eb81"
+ hash: "0b1538af23c78cc779174df9fd01f60b"
}
Frame {
msec: 3664
- hash: "e33226eb0e81a64bed7bcdb50e99cd13"
+ hash: "1632c7df93f1a735236eaa2464e75ba6"
}
Frame {
msec: 3680
- hash: "a7053a2b7bc9f4749c290bace6b55634"
+ hash: "a08e8b921e61c79d57c0bc4fa5e79914"
}
Frame {
msec: 3696
- hash: "782cb4e647e849ac7299d41f04bc89e3"
+ hash: "8220951034b6f1a5755bedd53b947b4a"
}
Frame {
msec: 3712
- hash: "0f7d04fe594ae027364a7c2b570c5a27"
+ hash: "f4c18c333796ff10218fa9145781ea7f"
}
Frame {
msec: 3728
- hash: "dfb00adcdc2f68bfb691bce47845b0e7"
+ hash: "7547d3bb0f9c4a53396cfe0252436395"
}
Key {
type: 6
@@ -1098,31 +1098,31 @@ VisualTest {
}
Frame {
msec: 3744
- hash: "cfd85885f59ea80b0b0152446a829fec"
+ hash: "efe333c2b8cccea0bd7135484049db06"
}
Frame {
msec: 3760
- hash: "192f80add5f612b07dcb8d69f2161648"
+ hash: "c0249d07bcf25af69bf929b4d5ac00a3"
}
Frame {
msec: 3776
- hash: "a8fe05178e6339454d57575692fa3df3"
+ hash: "8e5fdc8e6cc38089d1e8ff5e91a5c894"
}
Frame {
msec: 3792
- hash: "82e61a4d3f58ee5104893e254a77f13e"
+ hash: "5d6702b9475e69bda2ed38f6e2d583d9"
}
Frame {
msec: 3808
- hash: "5f073a4a89413b6a6c5d6ff52717bb2f"
+ hash: "6502416042993d05dd514119512ed61f"
}
Frame {
msec: 3824
- hash: "b0fd95dc2ac09a1cbd67ad0f86682666"
+ hash: "938a6eea45c4412e847a8700172d80ac"
}
Frame {
msec: 3840
- image: "cursorDelegate.3.png"
+ hash: "4bf8e82220ea0d0c4298d5374e149de2"
}
Key {
type: 7
@@ -1134,59 +1134,59 @@ VisualTest {
}
Frame {
msec: 3856
- hash: "373c57edb812db59f40710305d80e9e9"
+ image: "cursorDelegate.4.png"
}
Frame {
msec: 3872
- hash: "a7142c3c1eb9c934e0b258c163fcdfec"
+ hash: "aff4097bd39c87c5d1459d99f314dade"
}
Frame {
msec: 3888
- hash: "bd5395e7e0aa0d50cb30504f9961c954"
+ hash: "5cf6cb0afffb791da1c4d0fe00cf6326"
}
Frame {
msec: 3904
- hash: "7031966f014d4acd5b00c46c89f61403"
+ hash: "007e76fb247e11a442802c7cfb4e6a24"
}
Frame {
msec: 3920
- hash: "869624c2ae63b0a447401a955a6fefb1"
+ hash: "505e740aacf4ca7e6ad24367ddad8678"
}
Frame {
msec: 3936
- hash: "97dabf3984492d2f868b36c3e7bfce50"
+ hash: "4213f35c4cd233a08d98ba0380b7ab0a"
}
Frame {
msec: 3952
- hash: "afe0c3fdcb498f1f6b877c5d808b2555"
+ hash: "575dd420067e4ebe5733eb4e35a447ab"
}
Frame {
msec: 3968
- hash: "7610775f69a461d5487e8bc3db6b6e1f"
+ hash: "062574e74354b104db2ee6d3c3af5802"
}
Frame {
msec: 3984
- hash: "52641f9d6dfba8bf2b94aa37ade140d1"
+ hash: "d3be942cfb93c4a5d5aa906410125d02"
}
Frame {
msec: 4000
- hash: "9d0e449506ce93052216b7a952af3dea"
+ hash: "b742ebe441dde1f30dab6d19954a9e8c"
}
Frame {
msec: 4016
- hash: "c1bb09480464b7813bc10b0093d14745"
+ hash: "bbe3a292c59e2f7ae6b8877f6736c96e"
}
Frame {
msec: 4032
- hash: "9d0e449506ce93052216b7a952af3dea"
+ hash: "b742ebe441dde1f30dab6d19954a9e8c"
}
Frame {
msec: 4048
- hash: "52641f9d6dfba8bf2b94aa37ade140d1"
+ hash: "d3be942cfb93c4a5d5aa906410125d02"
}
Frame {
msec: 4064
- hash: "7610775f69a461d5487e8bc3db6b6e1f"
+ hash: "062574e74354b104db2ee6d3c3af5802"
}
Key {
type: 7
@@ -1198,302 +1198,302 @@ VisualTest {
}
Frame {
msec: 4080
- hash: "afe0c3fdcb498f1f6b877c5d808b2555"
+ hash: "575dd420067e4ebe5733eb4e35a447ab"
}
Frame {
msec: 4096
- hash: "97dabf3984492d2f868b36c3e7bfce50"
+ hash: "4213f35c4cd233a08d98ba0380b7ab0a"
}
Frame {
msec: 4112
- hash: "869624c2ae63b0a447401a955a6fefb1"
+ hash: "505e740aacf4ca7e6ad24367ddad8678"
}
Frame {
msec: 4128
- hash: "7031966f014d4acd5b00c46c89f61403"
+ hash: "007e76fb247e11a442802c7cfb4e6a24"
}
Frame {
msec: 4144
- hash: "bd5395e7e0aa0d50cb30504f9961c954"
+ hash: "5cf6cb0afffb791da1c4d0fe00cf6326"
}
Frame {
msec: 4160
- hash: "a7142c3c1eb9c934e0b258c163fcdfec"
+ hash: "aff4097bd39c87c5d1459d99f314dade"
}
Frame {
msec: 4176
- hash: "373c57edb812db59f40710305d80e9e9"
+ hash: "009dc0c6ff28333ac2fdfa3d79ad2fd6"
}
Frame {
msec: 4192
- hash: "78b16507899c3c8de04b55389ea0ad49"
+ hash: "4bf8e82220ea0d0c4298d5374e149de2"
}
Frame {
msec: 4208
- hash: "b0fd95dc2ac09a1cbd67ad0f86682666"
+ hash: "938a6eea45c4412e847a8700172d80ac"
}
Frame {
msec: 4224
- hash: "5f073a4a89413b6a6c5d6ff52717bb2f"
+ hash: "6502416042993d05dd514119512ed61f"
}
Frame {
msec: 4240
- hash: "82e61a4d3f58ee5104893e254a77f13e"
+ hash: "5d6702b9475e69bda2ed38f6e2d583d9"
}
Frame {
msec: 4256
- hash: "a8fe05178e6339454d57575692fa3df3"
+ hash: "8e5fdc8e6cc38089d1e8ff5e91a5c894"
}
Frame {
msec: 4272
- hash: "192f80add5f612b07dcb8d69f2161648"
+ hash: "c0249d07bcf25af69bf929b4d5ac00a3"
}
Frame {
msec: 4288
- hash: "cfd85885f59ea80b0b0152446a829fec"
+ hash: "efe333c2b8cccea0bd7135484049db06"
}
Frame {
msec: 4304
- hash: "a7295dcc92f80a5f343bf05076a03748"
+ hash: "57e49e9094691a204f7507b0231352b3"
}
Frame {
msec: 4320
- hash: "2b0b30cfb1c1e4ed8a51d36fb7ccdf57"
+ hash: "d0a45bd3cfc5e4e6f9a48534c768daba"
}
Frame {
msec: 4336
- hash: "419c538908d0226ff4485f1094eaa08e"
+ hash: "6960ab817c67a61af31cc187efe65016"
}
Frame {
msec: 4352
- hash: "8afe64448d42419f97ca207487b3b0f8"
+ hash: "3b0d483ff765f36a196411967b6dfd70"
}
Frame {
msec: 4368
- hash: "86091218d2d066d8f95a460426266369"
+ hash: "559713749d65246b185c0c91eb7ad39e"
}
Frame {
msec: 4384
- hash: "fc45978cac92b6cdeeecc2dd4c29aa53"
+ hash: "9aea32722fd4f8b0cde3c06c61cecde6"
}
Frame {
msec: 4400
- hash: "03a90ae5cbe68cc210e303c78a14e065"
+ hash: "25dfa32ce92b6044f5ea68411ab5de5b"
}
Frame {
msec: 4416
- hash: "15603a997aa02afb688aa74cd930f3b4"
+ hash: "dab689ed2bbe663df309548e615e8621"
}
Frame {
msec: 4432
- hash: "90bf6b2bf89e1440f0c4d1044c1bd22c"
+ hash: "26ad44cef380ff9f64c12180fb54c695"
}
Frame {
msec: 4448
- hash: "4dbdc16538cbbf1a87c6a54e09e02b16"
+ hash: "5e8bbcd46b5692e66963387b80971e90"
}
Frame {
msec: 4464
- hash: "2011ee59d2ec4bb0ae0d63727f091648"
+ hash: "747df5357daa951fbedeadf909f9dbf3"
}
Frame {
msec: 4480
- hash: "c526315dd5eec117266c68a7b6b64a3f"
+ hash: "af99069cdddfa9d099fbe25ba586e138"
}
Frame {
msec: 4496
- hash: "c526315dd5eec117266c68a7b6b64a3f"
+ hash: "af99069cdddfa9d099fbe25ba586e138"
}
Frame {
msec: 4512
- hash: "c526315dd5eec117266c68a7b6b64a3f"
+ hash: "af99069cdddfa9d099fbe25ba586e138"
}
Frame {
msec: 4528
- hash: "c526315dd5eec117266c68a7b6b64a3f"
+ hash: "af99069cdddfa9d099fbe25ba586e138"
}
Frame {
msec: 4544
- hash: "c526315dd5eec117266c68a7b6b64a3f"
+ hash: "af99069cdddfa9d099fbe25ba586e138"
}
Frame {
msec: 4560
- hash: "c526315dd5eec117266c68a7b6b64a3f"
+ hash: "af99069cdddfa9d099fbe25ba586e138"
}
Frame {
msec: 4576
- hash: "02996bef06c74f34cf8be4cf4d1392d5"
+ hash: "1568d4b93d2a284c46f23a0cb17acc24"
}
Frame {
msec: 4592
- hash: "2d8cb2d213ce22132ba63a829c07f768"
+ hash: "0665a6cfc09981cd8a7ffd0d02e6fbdc"
}
Frame {
msec: 4608
- hash: "0a16c282a18fdc657ea48fb208dea494"
+ hash: "49892aa44c8e3584239d245a7ca98af3"
}
Frame {
msec: 4624
- hash: "86baec52ccb8ae818439c637c5be1514"
+ hash: "c9def393bb5d6c447c45b127d32b5e50"
}
Frame {
msec: 4640
- hash: "72e2415581ba2a96b8f23cf8f5985afb"
+ hash: "679d94007b33197ce7decb4df6e8343c"
}
Frame {
msec: 4656
- hash: "7776d964b2b5f80bac51a29d298a067f"
+ hash: "817987bcd9f1147ba047333b42ed289d"
}
Frame {
msec: 4672
- hash: "3b5d0a9f961c2102a4118a8e2d2793ae"
+ hash: "fdd9331015c289b8e33b094999b11dce"
}
Frame {
msec: 4688
- hash: "048b5e51d9bcf8d1b24c8f8f98b7b4e4"
+ hash: "e4fa13ba2770c0d390945ee4505fea9b"
}
Frame {
msec: 4704
- hash: "d30e5d7c27b72ec95c41a87741061a3f"
+ hash: "69965c88d2273acf680af243610efcf3"
}
Frame {
msec: 4720
- hash: "0374cc41cdb6528e212f678e0e049f2b"
+ hash: "6cbeb6787a0a7fb7f654f877e41eed57"
}
Frame {
msec: 4736
- hash: "c80bc90c90b02d1d42176f16fa992f27"
+ hash: "e7528c074b3c65afe3873a3cdf96f041"
}
Frame {
msec: 4752
- hash: "70182707dbdf87a2c8db556f030bec17"
+ hash: "c06c72abe46087f0db87a84fdcbcf601"
}
Frame {
msec: 4768
- hash: "0c6c0c3d27d87128d65b40789714dd6b"
+ hash: "b6840f1d7cf2caed17d763b782553071"
}
Frame {
msec: 4784
- hash: "46e1debee4ca606492a36de6191f4594"
+ hash: "71fdb77c4133f37180d581e4b1fe9c83"
}
Frame {
msec: 4800
- image: "cursorDelegate.4.png"
+ hash: "f5e2075ed86f146e0162ae4f0a9c6b90"
}
Frame {
msec: 4816
- hash: "15bc04b65bde5e8ca69b6a1f88647c16"
+ image: "cursorDelegate.5.png"
}
Frame {
msec: 4832
- hash: "27156c3309835ec20a02877f1188e14a"
+ hash: "28c8003699352c3c9563556939d49cd8"
}
Frame {
msec: 4848
- hash: "a163019c9feff0f4d1bb4aaedcd2ecd4"
+ hash: "15ab751c8463326c870dc9ee1af3c1d7"
}
Frame {
msec: 4864
- hash: "35f243da98f9934d5ac0a7cc1fde73ef"
+ hash: "b745b2aee5ec623163ea22614b8ab54b"
}
Frame {
msec: 4880
- hash: "42d393d75e0c1d5aea0e1694190e4507"
+ hash: "b3f3b8e325dcd56b696eab7228c3db09"
}
Frame {
msec: 4896
- hash: "0ec47c6c74efd66d339d9be13148e334"
+ hash: "12ba65e0f70a670b2832235391d3ed05"
}
Frame {
msec: 4912
- hash: "2e7597e8d03f0a05cf96fe7e2a3ee540"
+ hash: "9dfac03113b662a63bddcac9c7ae8f64"
}
Frame {
msec: 4928
- hash: "093c9e5ac431284de7e81e082868c5db"
+ hash: "085bbc44102ae0d1d62531f6b6dbda98"
}
Frame {
msec: 4944
- hash: "60ae71c4a6c905f47b2b457d9167153b"
+ hash: "007887862e2234f4c308778ecac5e16b"
}
Frame {
msec: 4960
- hash: "e4be7897b1b30ab916a53df2998282d7"
+ hash: "61e8e34755db1fb99b44830676ad95ad"
}
Frame {
msec: 4976
- hash: "c082b97799dffdb73ad65b2920507e9c"
+ hash: "48c8b1b0d549f7b6d85a81803b9fe31d"
}
Frame {
msec: 4992
- hash: "aadaab0547a4f15c533589b531f39504"
+ hash: "834cf51445f88394e33a3f3f0a5569f4"
}
Frame {
msec: 5008
- hash: "847f0a1faf094e73d533692fa47a030a"
+ hash: "a43224f77583bb7235895506f49daee6"
}
Frame {
msec: 5024
- hash: "847f0a1faf094e73d533692fa47a030a"
+ hash: "a43224f77583bb7235895506f49daee6"
}
Frame {
msec: 5040
- hash: "aadaab0547a4f15c533589b531f39504"
+ hash: "834cf51445f88394e33a3f3f0a5569f4"
}
Frame {
msec: 5056
- hash: "c082b97799dffdb73ad65b2920507e9c"
+ hash: "48c8b1b0d549f7b6d85a81803b9fe31d"
}
Frame {
msec: 5072
- hash: "e4be7897b1b30ab916a53df2998282d7"
+ hash: "61e8e34755db1fb99b44830676ad95ad"
}
Frame {
msec: 5088
- hash: "60ae71c4a6c905f47b2b457d9167153b"
+ hash: "007887862e2234f4c308778ecac5e16b"
}
Frame {
msec: 5104
- hash: "093c9e5ac431284de7e81e082868c5db"
+ hash: "085bbc44102ae0d1d62531f6b6dbda98"
}
Frame {
msec: 5120
- hash: "2e7597e8d03f0a05cf96fe7e2a3ee540"
+ hash: "9dfac03113b662a63bddcac9c7ae8f64"
}
Frame {
msec: 5136
- hash: "0ec47c6c74efd66d339d9be13148e334"
+ hash: "12ba65e0f70a670b2832235391d3ed05"
}
Frame {
msec: 5152
- hash: "42d393d75e0c1d5aea0e1694190e4507"
+ hash: "b3f3b8e325dcd56b696eab7228c3db09"
}
Frame {
msec: 5168
- hash: "35f243da98f9934d5ac0a7cc1fde73ef"
+ hash: "b745b2aee5ec623163ea22614b8ab54b"
}
Frame {
msec: 5184
- hash: "a163019c9feff0f4d1bb4aaedcd2ecd4"
+ hash: "15ab751c8463326c870dc9ee1af3c1d7"
}
Frame {
msec: 5200
- hash: "27156c3309835ec20a02877f1188e14a"
+ hash: "28c8003699352c3c9563556939d49cd8"
}
Frame {
msec: 5216
- hash: "15bc04b65bde5e8ca69b6a1f88647c16"
+ hash: "5e76b741f49bd279b9f62ae3f474e5b5"
}
Frame {
msec: 5232
- hash: "f327bb2ea12b2baffc0a98d44a0ded16"
+ hash: "f5e2075ed86f146e0162ae4f0a9c6b90"
}
Frame {
msec: 5248
- hash: "46e1debee4ca606492a36de6191f4594"
+ hash: "71fdb77c4133f37180d581e4b1fe9c83"
}
Frame {
msec: 5264
- hash: "0c6c0c3d27d87128d65b40789714dd6b"
+ hash: "b6840f1d7cf2caed17d763b782553071"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/qt-669.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/qt-669.0.png
index dfd30f65bc..852fc66a11 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/qt-669.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/qt-669.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/qt-669.1.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/qt-669.1.png
index 9d4eb9b8b7..4b283d01a9 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/qt-669.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/qt-669.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/qt-669.2.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/qt-669.2.png
index 968517edb9..342fe05644 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/qt-669.2.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/qt-669.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/qt-669.3.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/qt-669.3.png
index eb62c19cde..fb4a774c93 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/qt-669.3.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/qt-669.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/qt-669.4.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/qt-669.4.png
new file mode 100644
index 0000000000..852fc66a11
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/qt-669.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/qt-669.qml b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/qt-669.qml
index a7df61f252..d7b26cb34b 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/qt-669.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/qt-669.qml
@@ -6,99 +6,99 @@ VisualTest {
}
Frame {
msec: 16
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ image: "qt-669.0.png"
}
Frame {
msec: 32
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 48
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 64
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 80
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 96
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 112
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 128
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 144
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 160
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 176
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 192
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 208
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 224
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 240
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 256
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 272
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 288
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 304
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 320
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 336
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 352
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 368
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 384
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Key {
type: 6
@@ -110,15 +110,15 @@ VisualTest {
}
Frame {
msec: 400
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 416
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 432
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Key {
type: 7
@@ -130,27 +130,27 @@ VisualTest {
}
Frame {
msec: 448
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 464
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 480
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 496
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 512
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 528
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Key {
type: 6
@@ -162,15 +162,15 @@ VisualTest {
}
Frame {
msec: 544
- hash: "ddf97bfd6216415dd2a56871f19c2d49"
+ hash: "e2a49d72741ba08c258bb70d3a13c7f6"
}
Frame {
msec: 560
- hash: "ddf97bfd6216415dd2a56871f19c2d49"
+ hash: "e2a49d72741ba08c258bb70d3a13c7f6"
}
Frame {
msec: 576
- hash: "ddf97bfd6216415dd2a56871f19c2d49"
+ hash: "e2a49d72741ba08c258bb70d3a13c7f6"
}
Key {
type: 7
@@ -182,27 +182,27 @@ VisualTest {
}
Frame {
msec: 592
- hash: "ddf97bfd6216415dd2a56871f19c2d49"
+ hash: "e2a49d72741ba08c258bb70d3a13c7f6"
}
Frame {
msec: 608
- hash: "ddf97bfd6216415dd2a56871f19c2d49"
+ hash: "e2a49d72741ba08c258bb70d3a13c7f6"
}
Frame {
msec: 624
- hash: "ddf97bfd6216415dd2a56871f19c2d49"
+ hash: "e2a49d72741ba08c258bb70d3a13c7f6"
}
Frame {
msec: 640
- hash: "ddf97bfd6216415dd2a56871f19c2d49"
+ hash: "e2a49d72741ba08c258bb70d3a13c7f6"
}
Frame {
msec: 656
- hash: "ddf97bfd6216415dd2a56871f19c2d49"
+ hash: "e2a49d72741ba08c258bb70d3a13c7f6"
}
Frame {
msec: 672
- hash: "ddf97bfd6216415dd2a56871f19c2d49"
+ hash: "e2a49d72741ba08c258bb70d3a13c7f6"
}
Key {
type: 6
@@ -214,19 +214,19 @@ VisualTest {
}
Frame {
msec: 688
- hash: "5a7abe3d30f7dc66c2cda37b03ff339f"
+ hash: "e5fd0e8d81d75fb53e21b6daa8e0fc7f"
}
Frame {
msec: 704
- hash: "5a7abe3d30f7dc66c2cda37b03ff339f"
+ hash: "e5fd0e8d81d75fb53e21b6daa8e0fc7f"
}
Frame {
msec: 720
- hash: "5a7abe3d30f7dc66c2cda37b03ff339f"
+ hash: "e5fd0e8d81d75fb53e21b6daa8e0fc7f"
}
Frame {
msec: 736
- hash: "5a7abe3d30f7dc66c2cda37b03ff339f"
+ hash: "e5fd0e8d81d75fb53e21b6daa8e0fc7f"
}
Key {
type: 7
@@ -238,23 +238,23 @@ VisualTest {
}
Frame {
msec: 752
- hash: "5a7abe3d30f7dc66c2cda37b03ff339f"
+ hash: "e5fd0e8d81d75fb53e21b6daa8e0fc7f"
}
Frame {
msec: 768
- hash: "5a7abe3d30f7dc66c2cda37b03ff339f"
+ hash: "e5fd0e8d81d75fb53e21b6daa8e0fc7f"
}
Frame {
msec: 784
- hash: "5a7abe3d30f7dc66c2cda37b03ff339f"
+ hash: "e5fd0e8d81d75fb53e21b6daa8e0fc7f"
}
Frame {
msec: 800
- hash: "5a7abe3d30f7dc66c2cda37b03ff339f"
+ hash: "e5fd0e8d81d75fb53e21b6daa8e0fc7f"
}
Frame {
msec: 816
- hash: "5a7abe3d30f7dc66c2cda37b03ff339f"
+ hash: "e5fd0e8d81d75fb53e21b6daa8e0fc7f"
}
Key {
type: 6
@@ -266,19 +266,19 @@ VisualTest {
}
Frame {
msec: 832
- hash: "94d3da7909c84467c62deb2861104d21"
+ hash: "86e1ba72951c0c193bfd2cd2162c500e"
}
Frame {
msec: 848
- hash: "94d3da7909c84467c62deb2861104d21"
+ hash: "86e1ba72951c0c193bfd2cd2162c500e"
}
Frame {
msec: 864
- hash: "94d3da7909c84467c62deb2861104d21"
+ hash: "86e1ba72951c0c193bfd2cd2162c500e"
}
Frame {
msec: 880
- hash: "94d3da7909c84467c62deb2861104d21"
+ hash: "86e1ba72951c0c193bfd2cd2162c500e"
}
Key {
type: 7
@@ -290,19 +290,19 @@ VisualTest {
}
Frame {
msec: 896
- hash: "94d3da7909c84467c62deb2861104d21"
+ hash: "86e1ba72951c0c193bfd2cd2162c500e"
}
Frame {
msec: 912
- hash: "94d3da7909c84467c62deb2861104d21"
+ hash: "86e1ba72951c0c193bfd2cd2162c500e"
}
Frame {
msec: 928
- hash: "94d3da7909c84467c62deb2861104d21"
+ hash: "86e1ba72951c0c193bfd2cd2162c500e"
}
Frame {
msec: 944
- hash: "94d3da7909c84467c62deb2861104d21"
+ hash: "86e1ba72951c0c193bfd2cd2162c500e"
}
Key {
type: 6
@@ -314,19 +314,19 @@ VisualTest {
}
Frame {
msec: 960
- image: "qt-669.0.png"
+ hash: "a719560bf7912aa6cf4e8e5bfc13cb06"
}
Frame {
msec: 976
- hash: "0873eebe3bbcb864644811670642028e"
+ image: "qt-669.1.png"
}
Frame {
msec: 992
- hash: "0873eebe3bbcb864644811670642028e"
+ hash: "a719560bf7912aa6cf4e8e5bfc13cb06"
}
Frame {
msec: 1008
- hash: "0873eebe3bbcb864644811670642028e"
+ hash: "a719560bf7912aa6cf4e8e5bfc13cb06"
}
Key {
type: 7
@@ -338,23 +338,23 @@ VisualTest {
}
Frame {
msec: 1024
- hash: "0873eebe3bbcb864644811670642028e"
+ hash: "a719560bf7912aa6cf4e8e5bfc13cb06"
}
Frame {
msec: 1040
- hash: "0873eebe3bbcb864644811670642028e"
+ hash: "a719560bf7912aa6cf4e8e5bfc13cb06"
}
Frame {
msec: 1056
- hash: "0873eebe3bbcb864644811670642028e"
+ hash: "a719560bf7912aa6cf4e8e5bfc13cb06"
}
Frame {
msec: 1072
- hash: "0873eebe3bbcb864644811670642028e"
+ hash: "a719560bf7912aa6cf4e8e5bfc13cb06"
}
Frame {
msec: 1088
- hash: "0873eebe3bbcb864644811670642028e"
+ hash: "a719560bf7912aa6cf4e8e5bfc13cb06"
}
Key {
type: 6
@@ -366,15 +366,15 @@ VisualTest {
}
Frame {
msec: 1104
- hash: "a88ac2f56d3d75a277b0855e2baeda33"
+ hash: "f531e8dd89482e3d7c501d0b3a8b3392"
}
Frame {
msec: 1120
- hash: "a88ac2f56d3d75a277b0855e2baeda33"
+ hash: "f531e8dd89482e3d7c501d0b3a8b3392"
}
Frame {
msec: 1136
- hash: "a88ac2f56d3d75a277b0855e2baeda33"
+ hash: "f531e8dd89482e3d7c501d0b3a8b3392"
}
Key {
type: 7
@@ -386,23 +386,23 @@ VisualTest {
}
Frame {
msec: 1152
- hash: "a88ac2f56d3d75a277b0855e2baeda33"
+ hash: "f531e8dd89482e3d7c501d0b3a8b3392"
}
Frame {
msec: 1168
- hash: "a88ac2f56d3d75a277b0855e2baeda33"
+ hash: "f531e8dd89482e3d7c501d0b3a8b3392"
}
Frame {
msec: 1184
- hash: "a88ac2f56d3d75a277b0855e2baeda33"
+ hash: "f531e8dd89482e3d7c501d0b3a8b3392"
}
Frame {
msec: 1200
- hash: "a88ac2f56d3d75a277b0855e2baeda33"
+ hash: "f531e8dd89482e3d7c501d0b3a8b3392"
}
Frame {
msec: 1216
- hash: "a88ac2f56d3d75a277b0855e2baeda33"
+ hash: "f531e8dd89482e3d7c501d0b3a8b3392"
}
Key {
type: 6
@@ -414,19 +414,19 @@ VisualTest {
}
Frame {
msec: 1232
- hash: "22bdd816325b5466ca937cf2535a3ef8"
+ hash: "fca9d1748195f0d4388694baf901c498"
}
Frame {
msec: 1248
- hash: "22bdd816325b5466ca937cf2535a3ef8"
+ hash: "fca9d1748195f0d4388694baf901c498"
}
Frame {
msec: 1264
- hash: "22bdd816325b5466ca937cf2535a3ef8"
+ hash: "fca9d1748195f0d4388694baf901c498"
}
Frame {
msec: 1280
- hash: "22bdd816325b5466ca937cf2535a3ef8"
+ hash: "fca9d1748195f0d4388694baf901c498"
}
Key {
type: 7
@@ -438,19 +438,19 @@ VisualTest {
}
Frame {
msec: 1296
- hash: "22bdd816325b5466ca937cf2535a3ef8"
+ hash: "fca9d1748195f0d4388694baf901c498"
}
Frame {
msec: 1312
- hash: "22bdd816325b5466ca937cf2535a3ef8"
+ hash: "fca9d1748195f0d4388694baf901c498"
}
Frame {
msec: 1328
- hash: "22bdd816325b5466ca937cf2535a3ef8"
+ hash: "fca9d1748195f0d4388694baf901c498"
}
Frame {
msec: 1344
- hash: "22bdd816325b5466ca937cf2535a3ef8"
+ hash: "fca9d1748195f0d4388694baf901c498"
}
Key {
type: 6
@@ -462,19 +462,19 @@ VisualTest {
}
Frame {
msec: 1360
- hash: "2ce295d30754b14d889795d2192fef41"
+ hash: "9ec7c9965d3ce810553b1182b746d148"
}
Frame {
msec: 1376
- hash: "2ce295d30754b14d889795d2192fef41"
+ hash: "9ec7c9965d3ce810553b1182b746d148"
}
Frame {
msec: 1392
- hash: "2ce295d30754b14d889795d2192fef41"
+ hash: "9ec7c9965d3ce810553b1182b746d148"
}
Frame {
msec: 1408
- hash: "2ce295d30754b14d889795d2192fef41"
+ hash: "9ec7c9965d3ce810553b1182b746d148"
}
Key {
type: 7
@@ -486,23 +486,23 @@ VisualTest {
}
Frame {
msec: 1424
- hash: "2ce295d30754b14d889795d2192fef41"
+ hash: "9ec7c9965d3ce810553b1182b746d148"
}
Frame {
msec: 1440
- hash: "2ce295d30754b14d889795d2192fef41"
+ hash: "9ec7c9965d3ce810553b1182b746d148"
}
Frame {
msec: 1456
- hash: "2ce295d30754b14d889795d2192fef41"
+ hash: "9ec7c9965d3ce810553b1182b746d148"
}
Frame {
msec: 1472
- hash: "2ce295d30754b14d889795d2192fef41"
+ hash: "9ec7c9965d3ce810553b1182b746d148"
}
Frame {
msec: 1488
- hash: "2ce295d30754b14d889795d2192fef41"
+ hash: "9ec7c9965d3ce810553b1182b746d148"
}
Key {
type: 6
@@ -514,15 +514,15 @@ VisualTest {
}
Frame {
msec: 1504
- hash: "ab021c71945620eba0b0cd70c7cffe5d"
+ hash: "389d0ac399e709482600181b4869be43"
}
Frame {
msec: 1520
- hash: "ab021c71945620eba0b0cd70c7cffe5d"
+ hash: "389d0ac399e709482600181b4869be43"
}
Frame {
msec: 1536
- hash: "ab021c71945620eba0b0cd70c7cffe5d"
+ hash: "389d0ac399e709482600181b4869be43"
}
Key {
type: 7
@@ -534,79 +534,79 @@ VisualTest {
}
Frame {
msec: 1552
- hash: "ab021c71945620eba0b0cd70c7cffe5d"
+ hash: "389d0ac399e709482600181b4869be43"
}
Frame {
msec: 1568
- hash: "ab021c71945620eba0b0cd70c7cffe5d"
+ hash: "389d0ac399e709482600181b4869be43"
}
Frame {
msec: 1584
- hash: "ab021c71945620eba0b0cd70c7cffe5d"
+ hash: "389d0ac399e709482600181b4869be43"
}
Frame {
msec: 1600
- hash: "ab021c71945620eba0b0cd70c7cffe5d"
+ hash: "389d0ac399e709482600181b4869be43"
}
Frame {
msec: 1616
- hash: "ab021c71945620eba0b0cd70c7cffe5d"
+ hash: "389d0ac399e709482600181b4869be43"
}
Frame {
msec: 1632
- hash: "ab021c71945620eba0b0cd70c7cffe5d"
+ hash: "389d0ac399e709482600181b4869be43"
}
Frame {
msec: 1648
- hash: "ab021c71945620eba0b0cd70c7cffe5d"
+ hash: "389d0ac399e709482600181b4869be43"
}
Frame {
msec: 1664
- hash: "ab021c71945620eba0b0cd70c7cffe5d"
+ hash: "389d0ac399e709482600181b4869be43"
}
Frame {
msec: 1680
- hash: "ab021c71945620eba0b0cd70c7cffe5d"
+ hash: "389d0ac399e709482600181b4869be43"
}
Frame {
msec: 1696
- hash: "ab021c71945620eba0b0cd70c7cffe5d"
+ hash: "389d0ac399e709482600181b4869be43"
}
Frame {
msec: 1712
- hash: "ab021c71945620eba0b0cd70c7cffe5d"
+ hash: "389d0ac399e709482600181b4869be43"
}
Frame {
msec: 1728
- hash: "ab021c71945620eba0b0cd70c7cffe5d"
+ hash: "389d0ac399e709482600181b4869be43"
}
Frame {
msec: 1744
- hash: "ab021c71945620eba0b0cd70c7cffe5d"
+ hash: "389d0ac399e709482600181b4869be43"
}
Frame {
msec: 1760
- hash: "ab021c71945620eba0b0cd70c7cffe5d"
+ hash: "389d0ac399e709482600181b4869be43"
}
Frame {
msec: 1776
- hash: "ab021c71945620eba0b0cd70c7cffe5d"
+ hash: "389d0ac399e709482600181b4869be43"
}
Frame {
msec: 1792
- hash: "ab021c71945620eba0b0cd70c7cffe5d"
+ hash: "389d0ac399e709482600181b4869be43"
}
Frame {
msec: 1808
- hash: "ab021c71945620eba0b0cd70c7cffe5d"
+ hash: "389d0ac399e709482600181b4869be43"
}
Frame {
msec: 1824
- hash: "ab021c71945620eba0b0cd70c7cffe5d"
+ hash: "389d0ac399e709482600181b4869be43"
}
Frame {
msec: 1840
- hash: "ab021c71945620eba0b0cd70c7cffe5d"
+ hash: "389d0ac399e709482600181b4869be43"
}
Key {
type: 6
@@ -618,39 +618,39 @@ VisualTest {
}
Frame {
msec: 1856
- hash: "2ce295d30754b14d889795d2192fef41"
+ hash: "9ec7c9965d3ce810553b1182b746d148"
}
Frame {
msec: 1872
- hash: "2ce295d30754b14d889795d2192fef41"
+ hash: "9ec7c9965d3ce810553b1182b746d148"
}
Frame {
msec: 1888
- hash: "2ce295d30754b14d889795d2192fef41"
+ hash: "9ec7c9965d3ce810553b1182b746d148"
}
Frame {
msec: 1904
- hash: "2ce295d30754b14d889795d2192fef41"
+ hash: "9ec7c9965d3ce810553b1182b746d148"
}
Frame {
msec: 1920
- image: "qt-669.1.png"
+ hash: "9ec7c9965d3ce810553b1182b746d148"
}
Frame {
msec: 1936
- hash: "2ce295d30754b14d889795d2192fef41"
+ image: "qt-669.2.png"
}
Frame {
msec: 1952
- hash: "2ce295d30754b14d889795d2192fef41"
+ hash: "9ec7c9965d3ce810553b1182b746d148"
}
Frame {
msec: 1968
- hash: "2ce295d30754b14d889795d2192fef41"
+ hash: "9ec7c9965d3ce810553b1182b746d148"
}
Frame {
msec: 1984
- hash: "2ce295d30754b14d889795d2192fef41"
+ hash: "9ec7c9965d3ce810553b1182b746d148"
}
Key {
type: 7
@@ -662,23 +662,23 @@ VisualTest {
}
Frame {
msec: 2000
- hash: "2ce295d30754b14d889795d2192fef41"
+ hash: "9ec7c9965d3ce810553b1182b746d148"
}
Frame {
msec: 2016
- hash: "2ce295d30754b14d889795d2192fef41"
+ hash: "9ec7c9965d3ce810553b1182b746d148"
}
Frame {
msec: 2032
- hash: "2ce295d30754b14d889795d2192fef41"
+ hash: "9ec7c9965d3ce810553b1182b746d148"
}
Frame {
msec: 2048
- hash: "2ce295d30754b14d889795d2192fef41"
+ hash: "9ec7c9965d3ce810553b1182b746d148"
}
Frame {
msec: 2064
- hash: "2ce295d30754b14d889795d2192fef41"
+ hash: "9ec7c9965d3ce810553b1182b746d148"
}
Key {
type: 6
@@ -690,23 +690,23 @@ VisualTest {
}
Frame {
msec: 2080
- hash: "22bdd816325b5466ca937cf2535a3ef8"
+ hash: "fca9d1748195f0d4388694baf901c498"
}
Frame {
msec: 2096
- hash: "22bdd816325b5466ca937cf2535a3ef8"
+ hash: "fca9d1748195f0d4388694baf901c498"
}
Frame {
msec: 2112
- hash: "22bdd816325b5466ca937cf2535a3ef8"
+ hash: "fca9d1748195f0d4388694baf901c498"
}
Frame {
msec: 2128
- hash: "22bdd816325b5466ca937cf2535a3ef8"
+ hash: "fca9d1748195f0d4388694baf901c498"
}
Frame {
msec: 2144
- hash: "22bdd816325b5466ca937cf2535a3ef8"
+ hash: "fca9d1748195f0d4388694baf901c498"
}
Key {
type: 7
@@ -718,23 +718,23 @@ VisualTest {
}
Frame {
msec: 2160
- hash: "22bdd816325b5466ca937cf2535a3ef8"
+ hash: "fca9d1748195f0d4388694baf901c498"
}
Frame {
msec: 2176
- hash: "22bdd816325b5466ca937cf2535a3ef8"
+ hash: "fca9d1748195f0d4388694baf901c498"
}
Frame {
msec: 2192
- hash: "22bdd816325b5466ca937cf2535a3ef8"
+ hash: "fca9d1748195f0d4388694baf901c498"
}
Frame {
msec: 2208
- hash: "22bdd816325b5466ca937cf2535a3ef8"
+ hash: "fca9d1748195f0d4388694baf901c498"
}
Frame {
msec: 2224
- hash: "22bdd816325b5466ca937cf2535a3ef8"
+ hash: "fca9d1748195f0d4388694baf901c498"
}
Key {
type: 6
@@ -746,11 +746,11 @@ VisualTest {
}
Frame {
msec: 2240
- hash: "a88ac2f56d3d75a277b0855e2baeda33"
+ hash: "f531e8dd89482e3d7c501d0b3a8b3392"
}
Frame {
msec: 2256
- hash: "a88ac2f56d3d75a277b0855e2baeda33"
+ hash: "f531e8dd89482e3d7c501d0b3a8b3392"
}
Key {
type: 7
@@ -762,23 +762,23 @@ VisualTest {
}
Frame {
msec: 2272
- hash: "a88ac2f56d3d75a277b0855e2baeda33"
+ hash: "f531e8dd89482e3d7c501d0b3a8b3392"
}
Frame {
msec: 2288
- hash: "a88ac2f56d3d75a277b0855e2baeda33"
+ hash: "f531e8dd89482e3d7c501d0b3a8b3392"
}
Frame {
msec: 2304
- hash: "a88ac2f56d3d75a277b0855e2baeda33"
+ hash: "f531e8dd89482e3d7c501d0b3a8b3392"
}
Frame {
msec: 2320
- hash: "a88ac2f56d3d75a277b0855e2baeda33"
+ hash: "f531e8dd89482e3d7c501d0b3a8b3392"
}
Frame {
msec: 2336
- hash: "a88ac2f56d3d75a277b0855e2baeda33"
+ hash: "f531e8dd89482e3d7c501d0b3a8b3392"
}
Key {
type: 6
@@ -790,15 +790,15 @@ VisualTest {
}
Frame {
msec: 2352
- hash: "0873eebe3bbcb864644811670642028e"
+ hash: "a719560bf7912aa6cf4e8e5bfc13cb06"
}
Frame {
msec: 2368
- hash: "0873eebe3bbcb864644811670642028e"
+ hash: "a719560bf7912aa6cf4e8e5bfc13cb06"
}
Frame {
msec: 2384
- hash: "0873eebe3bbcb864644811670642028e"
+ hash: "a719560bf7912aa6cf4e8e5bfc13cb06"
}
Key {
type: 7
@@ -810,55 +810,55 @@ VisualTest {
}
Frame {
msec: 2400
- hash: "0873eebe3bbcb864644811670642028e"
+ hash: "a719560bf7912aa6cf4e8e5bfc13cb06"
}
Frame {
msec: 2416
- hash: "0873eebe3bbcb864644811670642028e"
+ hash: "a719560bf7912aa6cf4e8e5bfc13cb06"
}
Frame {
msec: 2432
- hash: "0873eebe3bbcb864644811670642028e"
+ hash: "a719560bf7912aa6cf4e8e5bfc13cb06"
}
Frame {
msec: 2448
- hash: "0873eebe3bbcb864644811670642028e"
+ hash: "a719560bf7912aa6cf4e8e5bfc13cb06"
}
Frame {
msec: 2464
- hash: "0873eebe3bbcb864644811670642028e"
+ hash: "a719560bf7912aa6cf4e8e5bfc13cb06"
}
Frame {
msec: 2480
- hash: "0873eebe3bbcb864644811670642028e"
+ hash: "a719560bf7912aa6cf4e8e5bfc13cb06"
}
Frame {
msec: 2496
- hash: "0873eebe3bbcb864644811670642028e"
+ hash: "a719560bf7912aa6cf4e8e5bfc13cb06"
}
Frame {
msec: 2512
- hash: "0873eebe3bbcb864644811670642028e"
+ hash: "a719560bf7912aa6cf4e8e5bfc13cb06"
}
Frame {
msec: 2528
- hash: "0873eebe3bbcb864644811670642028e"
+ hash: "a719560bf7912aa6cf4e8e5bfc13cb06"
}
Frame {
msec: 2544
- hash: "0873eebe3bbcb864644811670642028e"
+ hash: "a719560bf7912aa6cf4e8e5bfc13cb06"
}
Frame {
msec: 2560
- hash: "0873eebe3bbcb864644811670642028e"
+ hash: "a719560bf7912aa6cf4e8e5bfc13cb06"
}
Frame {
msec: 2576
- hash: "0873eebe3bbcb864644811670642028e"
+ hash: "a719560bf7912aa6cf4e8e5bfc13cb06"
}
Frame {
msec: 2592
- hash: "0873eebe3bbcb864644811670642028e"
+ hash: "a719560bf7912aa6cf4e8e5bfc13cb06"
}
Key {
type: 6
@@ -870,23 +870,23 @@ VisualTest {
}
Frame {
msec: 2608
- hash: "94d3da7909c84467c62deb2861104d21"
+ hash: "86e1ba72951c0c193bfd2cd2162c500e"
}
Frame {
msec: 2624
- hash: "94d3da7909c84467c62deb2861104d21"
+ hash: "86e1ba72951c0c193bfd2cd2162c500e"
}
Frame {
msec: 2640
- hash: "94d3da7909c84467c62deb2861104d21"
+ hash: "86e1ba72951c0c193bfd2cd2162c500e"
}
Frame {
msec: 2656
- hash: "94d3da7909c84467c62deb2861104d21"
+ hash: "86e1ba72951c0c193bfd2cd2162c500e"
}
Frame {
msec: 2672
- hash: "94d3da7909c84467c62deb2861104d21"
+ hash: "86e1ba72951c0c193bfd2cd2162c500e"
}
Key {
type: 7
@@ -898,23 +898,23 @@ VisualTest {
}
Frame {
msec: 2688
- hash: "94d3da7909c84467c62deb2861104d21"
+ hash: "86e1ba72951c0c193bfd2cd2162c500e"
}
Frame {
msec: 2704
- hash: "94d3da7909c84467c62deb2861104d21"
+ hash: "86e1ba72951c0c193bfd2cd2162c500e"
}
Frame {
msec: 2720
- hash: "94d3da7909c84467c62deb2861104d21"
+ hash: "86e1ba72951c0c193bfd2cd2162c500e"
}
Frame {
msec: 2736
- hash: "94d3da7909c84467c62deb2861104d21"
+ hash: "86e1ba72951c0c193bfd2cd2162c500e"
}
Frame {
msec: 2752
- hash: "94d3da7909c84467c62deb2861104d21"
+ hash: "86e1ba72951c0c193bfd2cd2162c500e"
}
Key {
type: 6
@@ -926,15 +926,15 @@ VisualTest {
}
Frame {
msec: 2768
- hash: "5a7abe3d30f7dc66c2cda37b03ff339f"
+ hash: "e5fd0e8d81d75fb53e21b6daa8e0fc7f"
}
Frame {
msec: 2784
- hash: "5a7abe3d30f7dc66c2cda37b03ff339f"
+ hash: "e5fd0e8d81d75fb53e21b6daa8e0fc7f"
}
Frame {
msec: 2800
- hash: "5a7abe3d30f7dc66c2cda37b03ff339f"
+ hash: "e5fd0e8d81d75fb53e21b6daa8e0fc7f"
}
Key {
type: 7
@@ -946,19 +946,19 @@ VisualTest {
}
Frame {
msec: 2816
- hash: "5a7abe3d30f7dc66c2cda37b03ff339f"
+ hash: "e5fd0e8d81d75fb53e21b6daa8e0fc7f"
}
Frame {
msec: 2832
- hash: "5a7abe3d30f7dc66c2cda37b03ff339f"
+ hash: "e5fd0e8d81d75fb53e21b6daa8e0fc7f"
}
Frame {
msec: 2848
- hash: "5a7abe3d30f7dc66c2cda37b03ff339f"
+ hash: "e5fd0e8d81d75fb53e21b6daa8e0fc7f"
}
Frame {
msec: 2864
- hash: "5a7abe3d30f7dc66c2cda37b03ff339f"
+ hash: "e5fd0e8d81d75fb53e21b6daa8e0fc7f"
}
Key {
type: 6
@@ -970,19 +970,19 @@ VisualTest {
}
Frame {
msec: 2880
- image: "qt-669.2.png"
+ hash: "e2a49d72741ba08c258bb70d3a13c7f6"
}
Frame {
msec: 2896
- hash: "ddf97bfd6216415dd2a56871f19c2d49"
+ image: "qt-669.3.png"
}
Frame {
msec: 2912
- hash: "ddf97bfd6216415dd2a56871f19c2d49"
+ hash: "e2a49d72741ba08c258bb70d3a13c7f6"
}
Frame {
msec: 2928
- hash: "ddf97bfd6216415dd2a56871f19c2d49"
+ hash: "e2a49d72741ba08c258bb70d3a13c7f6"
}
Key {
type: 7
@@ -994,23 +994,23 @@ VisualTest {
}
Frame {
msec: 2944
- hash: "ddf97bfd6216415dd2a56871f19c2d49"
+ hash: "e2a49d72741ba08c258bb70d3a13c7f6"
}
Frame {
msec: 2960
- hash: "ddf97bfd6216415dd2a56871f19c2d49"
+ hash: "e2a49d72741ba08c258bb70d3a13c7f6"
}
Frame {
msec: 2976
- hash: "ddf97bfd6216415dd2a56871f19c2d49"
+ hash: "e2a49d72741ba08c258bb70d3a13c7f6"
}
Frame {
msec: 2992
- hash: "ddf97bfd6216415dd2a56871f19c2d49"
+ hash: "e2a49d72741ba08c258bb70d3a13c7f6"
}
Frame {
msec: 3008
- hash: "ddf97bfd6216415dd2a56871f19c2d49"
+ hash: "e2a49d72741ba08c258bb70d3a13c7f6"
}
Key {
type: 6
@@ -1022,23 +1022,23 @@ VisualTest {
}
Frame {
msec: 3024
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3040
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3056
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3072
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3088
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Key {
type: 7
@@ -1050,155 +1050,155 @@ VisualTest {
}
Frame {
msec: 3104
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3120
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3136
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3152
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3168
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3184
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3200
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3216
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3232
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3248
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3264
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3280
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3296
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3312
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3328
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3344
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3360
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3376
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3392
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3408
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3424
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3440
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3456
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3472
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3488
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3504
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3520
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3536
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3552
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3568
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3584
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3600
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3616
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3632
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3648
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3664
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3680
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Frame {
msec: 3696
- hash: "5db508bc5a66018d9732cf8427461ef2"
+ hash: "1d69ccdf88fa78b44a77147190bf1dfc"
}
Key {
type: 6
@@ -1210,27 +1210,27 @@ VisualTest {
}
Frame {
msec: 3712
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 3728
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 3744
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 3760
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 3776
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 3792
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Key {
type: 7
@@ -1242,130 +1242,130 @@ VisualTest {
}
Frame {
msec: 3808
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 3824
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 3840
- image: "qt-669.3.png"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 3856
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ image: "qt-669.4.png"
}
Frame {
msec: 3872
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 3888
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 3904
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 3920
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 3936
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 3952
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 3968
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 3984
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 4000
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 4016
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 4032
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 4048
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 4064
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 4080
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 4096
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 4112
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 4128
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 4144
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 4160
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 4176
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 4192
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 4208
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 4224
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 4240
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 4256
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 4272
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 4288
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
Frame {
msec: 4304
- hash: "9d4f0f25239a53ed9ac917df0c4a5f8e"
+ hash: "32c2b08a6123015ca72f283f89ee1663"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.0.png
index 5049c3f81e..0b4ca4ef01 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.1.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.1.png
index ee6e16a3e1..251beb672e 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.10.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.10.png
index d9d22520a4..5cd2d7d469 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.10.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.10.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.11.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.11.png
index d9d22520a4..5cd2d7d469 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.11.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.11.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.12.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.12.png
new file mode 100644
index 0000000000..5cd2d7d469
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.12.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.2.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.2.png
index cf99d98c15..bf6a44e7f2 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.2.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.3.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.3.png
index e3937f03db..1089578575 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.3.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.4.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.4.png
index 2fe33379c2..c9113def81 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.4.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.5.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.5.png
index 97b99134d5..47b47443ff 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.5.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.6.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.6.png
index 08e059f865..c518204a6e 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.6.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.6.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.7.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.7.png
index bbc5ba24df..9f1c26a15a 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.7.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.7.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.8.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.8.png
index 465b64e8ed..cd8d0a51e9 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.8.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.8.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.9.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.9.png
index d9d22520a4..8f5f872b22 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.9.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.9.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.qml b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.qml
index a8173be17e..a064bf3747 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/usingMultilineEdit.qml
@@ -6,83 +6,83 @@ VisualTest {
}
Frame {
msec: 16
- hash: "e742c08c259034e879b95eea60794e77"
+ image: "usingMultilineEdit.0.png"
}
Frame {
msec: 32
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 48
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 64
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 80
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 96
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 112
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 128
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 144
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 160
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 176
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 192
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 208
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 224
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 240
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 256
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 272
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 288
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 304
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 320
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Mouse {
type: 2
@@ -94,23 +94,23 @@ VisualTest {
}
Frame {
msec: 336
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 352
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 368
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 384
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 400
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Mouse {
type: 3
@@ -122,63 +122,63 @@ VisualTest {
}
Frame {
msec: 416
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 432
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 448
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 464
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 480
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 496
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 512
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 528
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 544
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 560
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 576
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 592
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 608
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 624
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Frame {
msec: 640
- hash: "e742c08c259034e879b95eea60794e77"
+ hash: "9d5bfe023a03fde612678d000e7d4135"
}
Mouse {
type: 2
@@ -190,11 +190,11 @@ VisualTest {
}
Frame {
msec: 656
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 672
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Mouse {
type: 3
@@ -206,159 +206,159 @@ VisualTest {
}
Frame {
msec: 688
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 704
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 720
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 736
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 752
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 768
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 784
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 800
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 816
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 832
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 848
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 864
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 880
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 896
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 912
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 928
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 944
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 960
- image: "usingMultilineEdit.0.png"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 976
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ image: "usingMultilineEdit.1.png"
}
Frame {
msec: 992
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 1008
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 1024
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 1040
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 1056
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 1072
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 1088
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 1104
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 1120
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 1136
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 1152
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 1168
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 1184
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 1200
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 1216
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 1232
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 1248
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 1264
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 1280
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Frame {
msec: 1296
- hash: "3eaecb73d32414207c898a36c9c41da3"
+ hash: "73232e1c199b5dda158a7e765386a716"
}
Key {
type: 6
@@ -370,23 +370,23 @@ VisualTest {
}
Frame {
msec: 1312
- hash: "c101a1d74691605f2740452950693e43"
+ hash: "75aa32bf4bfdda0dfcf04768bf931da6"
}
Frame {
msec: 1328
- hash: "c101a1d74691605f2740452950693e43"
+ hash: "75aa32bf4bfdda0dfcf04768bf931da6"
}
Frame {
msec: 1344
- hash: "c101a1d74691605f2740452950693e43"
+ hash: "75aa32bf4bfdda0dfcf04768bf931da6"
}
Frame {
msec: 1360
- hash: "c101a1d74691605f2740452950693e43"
+ hash: "75aa32bf4bfdda0dfcf04768bf931da6"
}
Frame {
msec: 1376
- hash: "c101a1d74691605f2740452950693e43"
+ hash: "75aa32bf4bfdda0dfcf04768bf931da6"
}
Key {
type: 7
@@ -398,7 +398,7 @@ VisualTest {
}
Frame {
msec: 1392
- hash: "c101a1d74691605f2740452950693e43"
+ hash: "75aa32bf4bfdda0dfcf04768bf931da6"
}
Key {
type: 6
@@ -410,19 +410,19 @@ VisualTest {
}
Frame {
msec: 1408
- hash: "e3e33c9f73352079db2f5e96c0069974"
+ hash: "7243b903b5b7d8c323a233ae13a2ddf3"
}
Frame {
msec: 1424
- hash: "e3e33c9f73352079db2f5e96c0069974"
+ hash: "7243b903b5b7d8c323a233ae13a2ddf3"
}
Frame {
msec: 1440
- hash: "e3e33c9f73352079db2f5e96c0069974"
+ hash: "7243b903b5b7d8c323a233ae13a2ddf3"
}
Frame {
msec: 1456
- hash: "e3e33c9f73352079db2f5e96c0069974"
+ hash: "7243b903b5b7d8c323a233ae13a2ddf3"
}
Key {
type: 7
@@ -434,27 +434,27 @@ VisualTest {
}
Frame {
msec: 1472
- hash: "e3e33c9f73352079db2f5e96c0069974"
+ hash: "7243b903b5b7d8c323a233ae13a2ddf3"
}
Frame {
msec: 1488
- hash: "e3e33c9f73352079db2f5e96c0069974"
+ hash: "7243b903b5b7d8c323a233ae13a2ddf3"
}
Frame {
msec: 1504
- hash: "e3e33c9f73352079db2f5e96c0069974"
+ hash: "7243b903b5b7d8c323a233ae13a2ddf3"
}
Frame {
msec: 1520
- hash: "e3e33c9f73352079db2f5e96c0069974"
+ hash: "7243b903b5b7d8c323a233ae13a2ddf3"
}
Frame {
msec: 1536
- hash: "e3e33c9f73352079db2f5e96c0069974"
+ hash: "7243b903b5b7d8c323a233ae13a2ddf3"
}
Frame {
msec: 1552
- hash: "e3e33c9f73352079db2f5e96c0069974"
+ hash: "7243b903b5b7d8c323a233ae13a2ddf3"
}
Key {
type: 6
@@ -466,15 +466,15 @@ VisualTest {
}
Frame {
msec: 1568
- hash: "0e79208365ec4b5a609d13b9e6c5c8d8"
+ hash: "676834a4ee84cb251c6ed102be89ea2e"
}
Frame {
msec: 1584
- hash: "0e79208365ec4b5a609d13b9e6c5c8d8"
+ hash: "676834a4ee84cb251c6ed102be89ea2e"
}
Frame {
msec: 1600
- hash: "0e79208365ec4b5a609d13b9e6c5c8d8"
+ hash: "676834a4ee84cb251c6ed102be89ea2e"
}
Key {
type: 7
@@ -486,7 +486,7 @@ VisualTest {
}
Frame {
msec: 1616
- hash: "0e79208365ec4b5a609d13b9e6c5c8d8"
+ hash: "676834a4ee84cb251c6ed102be89ea2e"
}
Key {
type: 6
@@ -498,23 +498,23 @@ VisualTest {
}
Frame {
msec: 1632
- hash: "5485c9cf4050ef8c1dda227d27326f78"
+ hash: "74a81081cd0547624cc4168e824b48b8"
}
Frame {
msec: 1648
- hash: "5485c9cf4050ef8c1dda227d27326f78"
+ hash: "74a81081cd0547624cc4168e824b48b8"
}
Frame {
msec: 1664
- hash: "5485c9cf4050ef8c1dda227d27326f78"
+ hash: "74a81081cd0547624cc4168e824b48b8"
}
Frame {
msec: 1680
- hash: "5485c9cf4050ef8c1dda227d27326f78"
+ hash: "74a81081cd0547624cc4168e824b48b8"
}
Frame {
msec: 1696
- hash: "5485c9cf4050ef8c1dda227d27326f78"
+ hash: "74a81081cd0547624cc4168e824b48b8"
}
Key {
type: 7
@@ -526,11 +526,11 @@ VisualTest {
}
Frame {
msec: 1712
- hash: "5485c9cf4050ef8c1dda227d27326f78"
+ hash: "74a81081cd0547624cc4168e824b48b8"
}
Frame {
msec: 1728
- hash: "5485c9cf4050ef8c1dda227d27326f78"
+ hash: "74a81081cd0547624cc4168e824b48b8"
}
Key {
type: 6
@@ -542,15 +542,15 @@ VisualTest {
}
Frame {
msec: 1744
- hash: "1063a2e6164b372ba364c15c1c8b6ade"
+ hash: "4c736b2bffb38df898478e3d0ce37fb0"
}
Frame {
msec: 1760
- hash: "1063a2e6164b372ba364c15c1c8b6ade"
+ hash: "4c736b2bffb38df898478e3d0ce37fb0"
}
Frame {
msec: 1776
- hash: "1063a2e6164b372ba364c15c1c8b6ade"
+ hash: "4c736b2bffb38df898478e3d0ce37fb0"
}
Key {
type: 7
@@ -562,15 +562,15 @@ VisualTest {
}
Frame {
msec: 1792
- hash: "1063a2e6164b372ba364c15c1c8b6ade"
+ hash: "4c736b2bffb38df898478e3d0ce37fb0"
}
Frame {
msec: 1808
- hash: "1063a2e6164b372ba364c15c1c8b6ade"
+ hash: "4c736b2bffb38df898478e3d0ce37fb0"
}
Frame {
msec: 1824
- hash: "1063a2e6164b372ba364c15c1c8b6ade"
+ hash: "4c736b2bffb38df898478e3d0ce37fb0"
}
Key {
type: 6
@@ -582,23 +582,23 @@ VisualTest {
}
Frame {
msec: 1840
- hash: "213c0057171a86bd4e2d898fac4d6642"
+ hash: "fd070c77e33e1498bacf0076903d33d7"
}
Frame {
msec: 1856
- hash: "213c0057171a86bd4e2d898fac4d6642"
+ hash: "fd070c77e33e1498bacf0076903d33d7"
}
Frame {
msec: 1872
- hash: "213c0057171a86bd4e2d898fac4d6642"
+ hash: "fd070c77e33e1498bacf0076903d33d7"
}
Frame {
msec: 1888
- hash: "213c0057171a86bd4e2d898fac4d6642"
+ hash: "fd070c77e33e1498bacf0076903d33d7"
}
Frame {
msec: 1904
- hash: "213c0057171a86bd4e2d898fac4d6642"
+ hash: "fd070c77e33e1498bacf0076903d33d7"
}
Key {
type: 7
@@ -618,19 +618,19 @@ VisualTest {
}
Frame {
msec: 1920
- image: "usingMultilineEdit.1.png"
+ hash: "2ce31e62bfe5c1a62621fe4ea6bb07ab"
}
Frame {
msec: 1936
- hash: "df9766751a5698f84f98faa0ac0e6f1a"
+ image: "usingMultilineEdit.2.png"
}
Frame {
msec: 1952
- hash: "df9766751a5698f84f98faa0ac0e6f1a"
+ hash: "2ce31e62bfe5c1a62621fe4ea6bb07ab"
}
Frame {
msec: 1968
- hash: "df9766751a5698f84f98faa0ac0e6f1a"
+ hash: "2ce31e62bfe5c1a62621fe4ea6bb07ab"
}
Key {
type: 6
@@ -642,11 +642,11 @@ VisualTest {
}
Frame {
msec: 1984
- hash: "47cb63f13c81ac6557ecc68d4e6f9c99"
+ hash: "77f7b91dba63e20e92b47575ae2f1a85"
}
Frame {
msec: 2000
- hash: "47cb63f13c81ac6557ecc68d4e6f9c99"
+ hash: "77f7b91dba63e20e92b47575ae2f1a85"
}
Key {
type: 7
@@ -658,7 +658,7 @@ VisualTest {
}
Frame {
msec: 2016
- hash: "47cb63f13c81ac6557ecc68d4e6f9c99"
+ hash: "77f7b91dba63e20e92b47575ae2f1a85"
}
Key {
type: 6
@@ -670,11 +670,11 @@ VisualTest {
}
Frame {
msec: 2032
- hash: "4f39251d7a0071a67435d088f46fc4fe"
+ hash: "6c881ac1c94b6648ce1a2c39e477906c"
}
Frame {
msec: 2048
- hash: "4f39251d7a0071a67435d088f46fc4fe"
+ hash: "6c881ac1c94b6648ce1a2c39e477906c"
}
Key {
type: 7
@@ -686,19 +686,19 @@ VisualTest {
}
Frame {
msec: 2064
- hash: "4f39251d7a0071a67435d088f46fc4fe"
+ hash: "6c881ac1c94b6648ce1a2c39e477906c"
}
Frame {
msec: 2080
- hash: "4f39251d7a0071a67435d088f46fc4fe"
+ hash: "6c881ac1c94b6648ce1a2c39e477906c"
}
Frame {
msec: 2096
- hash: "4f39251d7a0071a67435d088f46fc4fe"
+ hash: "6c881ac1c94b6648ce1a2c39e477906c"
}
Frame {
msec: 2112
- hash: "4f39251d7a0071a67435d088f46fc4fe"
+ hash: "6c881ac1c94b6648ce1a2c39e477906c"
}
Key {
type: 7
@@ -710,11 +710,11 @@ VisualTest {
}
Frame {
msec: 2128
- hash: "4f39251d7a0071a67435d088f46fc4fe"
+ hash: "6c881ac1c94b6648ce1a2c39e477906c"
}
Frame {
msec: 2144
- hash: "4f39251d7a0071a67435d088f46fc4fe"
+ hash: "6c881ac1c94b6648ce1a2c39e477906c"
}
Key {
type: 6
@@ -726,27 +726,27 @@ VisualTest {
}
Frame {
msec: 2160
- hash: "722715a78e99d0f1f9a2830090c98f3c"
+ hash: "8799a9ee6ae4334c0e595c75160cbb35"
}
Frame {
msec: 2176
- hash: "722715a78e99d0f1f9a2830090c98f3c"
+ hash: "8799a9ee6ae4334c0e595c75160cbb35"
}
Frame {
msec: 2192
- hash: "722715a78e99d0f1f9a2830090c98f3c"
+ hash: "8799a9ee6ae4334c0e595c75160cbb35"
}
Frame {
msec: 2208
- hash: "722715a78e99d0f1f9a2830090c98f3c"
+ hash: "8799a9ee6ae4334c0e595c75160cbb35"
}
Frame {
msec: 2224
- hash: "722715a78e99d0f1f9a2830090c98f3c"
+ hash: "8799a9ee6ae4334c0e595c75160cbb35"
}
Frame {
msec: 2240
- hash: "722715a78e99d0f1f9a2830090c98f3c"
+ hash: "8799a9ee6ae4334c0e595c75160cbb35"
}
Key {
type: 7
@@ -766,23 +766,23 @@ VisualTest {
}
Frame {
msec: 2256
- hash: "aa085c20f74a765297f7904680c7591e"
+ hash: "1947b07da95b6fb20dfa0189d2e099f4"
}
Frame {
msec: 2272
- hash: "aa085c20f74a765297f7904680c7591e"
+ hash: "1947b07da95b6fb20dfa0189d2e099f4"
}
Frame {
msec: 2288
- hash: "aa085c20f74a765297f7904680c7591e"
+ hash: "1947b07da95b6fb20dfa0189d2e099f4"
}
Frame {
msec: 2304
- hash: "aa085c20f74a765297f7904680c7591e"
+ hash: "1947b07da95b6fb20dfa0189d2e099f4"
}
Frame {
msec: 2320
- hash: "aa085c20f74a765297f7904680c7591e"
+ hash: "1947b07da95b6fb20dfa0189d2e099f4"
}
Key {
type: 7
@@ -794,11 +794,11 @@ VisualTest {
}
Frame {
msec: 2336
- hash: "aa085c20f74a765297f7904680c7591e"
+ hash: "1947b07da95b6fb20dfa0189d2e099f4"
}
Frame {
msec: 2352
- hash: "aa085c20f74a765297f7904680c7591e"
+ hash: "1947b07da95b6fb20dfa0189d2e099f4"
}
Key {
type: 6
@@ -810,19 +810,19 @@ VisualTest {
}
Frame {
msec: 2368
- hash: "0cc1397ce700d4a84647dddee65241b3"
+ hash: "f4831fddbb6dccd2add6c381abe18ff5"
}
Frame {
msec: 2384
- hash: "0cc1397ce700d4a84647dddee65241b3"
+ hash: "f4831fddbb6dccd2add6c381abe18ff5"
}
Frame {
msec: 2400
- hash: "0cc1397ce700d4a84647dddee65241b3"
+ hash: "f4831fddbb6dccd2add6c381abe18ff5"
}
Frame {
msec: 2416
- hash: "0cc1397ce700d4a84647dddee65241b3"
+ hash: "f4831fddbb6dccd2add6c381abe18ff5"
}
Key {
type: 7
@@ -834,7 +834,7 @@ VisualTest {
}
Frame {
msec: 2432
- hash: "0cc1397ce700d4a84647dddee65241b3"
+ hash: "f4831fddbb6dccd2add6c381abe18ff5"
}
Key {
type: 6
@@ -846,27 +846,27 @@ VisualTest {
}
Frame {
msec: 2448
- hash: "ac693aa9030cc388dce9004916734aed"
+ hash: "c8e601e39d6399c3bcbe99080e10e77b"
}
Frame {
msec: 2464
- hash: "ac693aa9030cc388dce9004916734aed"
+ hash: "c8e601e39d6399c3bcbe99080e10e77b"
}
Frame {
msec: 2480
- hash: "ac693aa9030cc388dce9004916734aed"
+ hash: "c8e601e39d6399c3bcbe99080e10e77b"
}
Frame {
msec: 2496
- hash: "ac693aa9030cc388dce9004916734aed"
+ hash: "c8e601e39d6399c3bcbe99080e10e77b"
}
Frame {
msec: 2512
- hash: "ac693aa9030cc388dce9004916734aed"
+ hash: "c8e601e39d6399c3bcbe99080e10e77b"
}
Frame {
msec: 2528
- hash: "ac693aa9030cc388dce9004916734aed"
+ hash: "c8e601e39d6399c3bcbe99080e10e77b"
}
Key {
type: 7
@@ -878,7 +878,7 @@ VisualTest {
}
Frame {
msec: 2544
- hash: "ac693aa9030cc388dce9004916734aed"
+ hash: "c8e601e39d6399c3bcbe99080e10e77b"
}
Key {
type: 6
@@ -890,19 +890,19 @@ VisualTest {
}
Frame {
msec: 2560
- hash: "e1f1b75892dc186e7f9546661722e259"
+ hash: "895b6084f9cd58d0746270468d037fc3"
}
Frame {
msec: 2576
- hash: "e1f1b75892dc186e7f9546661722e259"
+ hash: "895b6084f9cd58d0746270468d037fc3"
}
Frame {
msec: 2592
- hash: "e1f1b75892dc186e7f9546661722e259"
+ hash: "895b6084f9cd58d0746270468d037fc3"
}
Frame {
msec: 2608
- hash: "e1f1b75892dc186e7f9546661722e259"
+ hash: "895b6084f9cd58d0746270468d037fc3"
}
Key {
type: 7
@@ -914,23 +914,23 @@ VisualTest {
}
Frame {
msec: 2624
- hash: "e1f1b75892dc186e7f9546661722e259"
+ hash: "895b6084f9cd58d0746270468d037fc3"
}
Frame {
msec: 2640
- hash: "e1f1b75892dc186e7f9546661722e259"
+ hash: "895b6084f9cd58d0746270468d037fc3"
}
Frame {
msec: 2656
- hash: "e1f1b75892dc186e7f9546661722e259"
+ hash: "895b6084f9cd58d0746270468d037fc3"
}
Frame {
msec: 2672
- hash: "e1f1b75892dc186e7f9546661722e259"
+ hash: "895b6084f9cd58d0746270468d037fc3"
}
Frame {
msec: 2688
- hash: "e1f1b75892dc186e7f9546661722e259"
+ hash: "895b6084f9cd58d0746270468d037fc3"
}
Key {
type: 6
@@ -942,27 +942,27 @@ VisualTest {
}
Frame {
msec: 2704
- hash: "4c1829c6c263cf290e0e71035f678589"
+ hash: "ded3a272885f24140fb8d21835ae6b3a"
}
Frame {
msec: 2720
- hash: "4c1829c6c263cf290e0e71035f678589"
+ hash: "ded3a272885f24140fb8d21835ae6b3a"
}
Frame {
msec: 2736
- hash: "4c1829c6c263cf290e0e71035f678589"
+ hash: "ded3a272885f24140fb8d21835ae6b3a"
}
Frame {
msec: 2752
- hash: "4c1829c6c263cf290e0e71035f678589"
+ hash: "ded3a272885f24140fb8d21835ae6b3a"
}
Frame {
msec: 2768
- hash: "4c1829c6c263cf290e0e71035f678589"
+ hash: "ded3a272885f24140fb8d21835ae6b3a"
}
Frame {
msec: 2784
- hash: "4c1829c6c263cf290e0e71035f678589"
+ hash: "ded3a272885f24140fb8d21835ae6b3a"
}
Key {
type: 6
@@ -974,7 +974,7 @@ VisualTest {
}
Frame {
msec: 2800
- hash: "fa5cf022b185f178d0121b442af01c00"
+ hash: "9339ea22fd115b8ae025c0b3a588ca1c"
}
Key {
type: 7
@@ -986,19 +986,19 @@ VisualTest {
}
Frame {
msec: 2816
- hash: "fa5cf022b185f178d0121b442af01c00"
+ hash: "9339ea22fd115b8ae025c0b3a588ca1c"
}
Frame {
msec: 2832
- hash: "fa5cf022b185f178d0121b442af01c00"
+ hash: "9339ea22fd115b8ae025c0b3a588ca1c"
}
Frame {
msec: 2848
- hash: "fa5cf022b185f178d0121b442af01c00"
+ hash: "9339ea22fd115b8ae025c0b3a588ca1c"
}
Frame {
msec: 2864
- hash: "fa5cf022b185f178d0121b442af01c00"
+ hash: "9339ea22fd115b8ae025c0b3a588ca1c"
}
Key {
type: 7
@@ -1010,19 +1010,19 @@ VisualTest {
}
Frame {
msec: 2880
- image: "usingMultilineEdit.2.png"
+ hash: "9339ea22fd115b8ae025c0b3a588ca1c"
}
Frame {
msec: 2896
- hash: "fa5cf022b185f178d0121b442af01c00"
+ image: "usingMultilineEdit.3.png"
}
Frame {
msec: 2912
- hash: "fa5cf022b185f178d0121b442af01c00"
+ hash: "9339ea22fd115b8ae025c0b3a588ca1c"
}
Frame {
msec: 2928
- hash: "fa5cf022b185f178d0121b442af01c00"
+ hash: "9339ea22fd115b8ae025c0b3a588ca1c"
}
Key {
type: 6
@@ -1034,15 +1034,15 @@ VisualTest {
}
Frame {
msec: 2944
- hash: "b0748cac94695eb95774e0cdfabf47cc"
+ hash: "1f219781fb7a7682d27cb875900d077a"
}
Frame {
msec: 2960
- hash: "b0748cac94695eb95774e0cdfabf47cc"
+ hash: "1f219781fb7a7682d27cb875900d077a"
}
Frame {
msec: 2976
- hash: "b0748cac94695eb95774e0cdfabf47cc"
+ hash: "1f219781fb7a7682d27cb875900d077a"
}
Key {
type: 7
@@ -1062,19 +1062,19 @@ VisualTest {
}
Frame {
msec: 2992
- hash: "b05fc4c21113146463372b1ea981e265"
+ hash: "20bd65f158440301e6cf14463e498368"
}
Frame {
msec: 3008
- hash: "b05fc4c21113146463372b1ea981e265"
+ hash: "20bd65f158440301e6cf14463e498368"
}
Frame {
msec: 3024
- hash: "b05fc4c21113146463372b1ea981e265"
+ hash: "20bd65f158440301e6cf14463e498368"
}
Frame {
msec: 3040
- hash: "b05fc4c21113146463372b1ea981e265"
+ hash: "20bd65f158440301e6cf14463e498368"
}
Key {
type: 7
@@ -1086,7 +1086,7 @@ VisualTest {
}
Frame {
msec: 3056
- hash: "b05fc4c21113146463372b1ea981e265"
+ hash: "20bd65f158440301e6cf14463e498368"
}
Key {
type: 6
@@ -1098,15 +1098,15 @@ VisualTest {
}
Frame {
msec: 3072
- hash: "01b789845bf308fc896d53bbbfe0dd01"
+ hash: "3e73d53051a3175393f4ecb486645bf9"
}
Frame {
msec: 3088
- hash: "01b789845bf308fc896d53bbbfe0dd01"
+ hash: "3e73d53051a3175393f4ecb486645bf9"
}
Frame {
msec: 3104
- hash: "01b789845bf308fc896d53bbbfe0dd01"
+ hash: "3e73d53051a3175393f4ecb486645bf9"
}
Key {
type: 6
@@ -1118,7 +1118,7 @@ VisualTest {
}
Frame {
msec: 3120
- hash: "01b789845bf308fc896d53bbbfe0dd01"
+ hash: "3e73d53051a3175393f4ecb486645bf9"
}
Key {
type: 7
@@ -1130,11 +1130,11 @@ VisualTest {
}
Frame {
msec: 3136
- hash: "01b789845bf308fc896d53bbbfe0dd01"
+ hash: "3e73d53051a3175393f4ecb486645bf9"
}
Frame {
msec: 3152
- hash: "01b789845bf308fc896d53bbbfe0dd01"
+ hash: "3e73d53051a3175393f4ecb486645bf9"
}
Key {
type: 6
@@ -1146,19 +1146,19 @@ VisualTest {
}
Frame {
msec: 3168
- hash: "433d805d957203918fc4a8edfc93290e"
+ hash: "6f566097d23557bef60969852cd3515e"
}
Frame {
msec: 3184
- hash: "433d805d957203918fc4a8edfc93290e"
+ hash: "6f566097d23557bef60969852cd3515e"
}
Frame {
msec: 3200
- hash: "433d805d957203918fc4a8edfc93290e"
+ hash: "6f566097d23557bef60969852cd3515e"
}
Frame {
msec: 3216
- hash: "433d805d957203918fc4a8edfc93290e"
+ hash: "6f566097d23557bef60969852cd3515e"
}
Key {
type: 7
@@ -1170,7 +1170,7 @@ VisualTest {
}
Frame {
msec: 3232
- hash: "433d805d957203918fc4a8edfc93290e"
+ hash: "6f566097d23557bef60969852cd3515e"
}
Key {
type: 7
@@ -1190,19 +1190,19 @@ VisualTest {
}
Frame {
msec: 3248
- hash: "1ebec912ac11b11d2ba7e5abdfb9ef6d"
+ hash: "4767592fe68e8d32d286cf5eaf4510ff"
}
Frame {
msec: 3264
- hash: "1ebec912ac11b11d2ba7e5abdfb9ef6d"
+ hash: "4767592fe68e8d32d286cf5eaf4510ff"
}
Frame {
msec: 3280
- hash: "1ebec912ac11b11d2ba7e5abdfb9ef6d"
+ hash: "4767592fe68e8d32d286cf5eaf4510ff"
}
Frame {
msec: 3296
- hash: "1ebec912ac11b11d2ba7e5abdfb9ef6d"
+ hash: "4767592fe68e8d32d286cf5eaf4510ff"
}
Key {
type: 7
@@ -1214,7 +1214,7 @@ VisualTest {
}
Frame {
msec: 3312
- hash: "1ebec912ac11b11d2ba7e5abdfb9ef6d"
+ hash: "4767592fe68e8d32d286cf5eaf4510ff"
}
Key {
type: 6
@@ -1226,23 +1226,23 @@ VisualTest {
}
Frame {
msec: 3328
- hash: "b4bc12141255c91630e775fcf4935f22"
+ hash: "d7fd1a19be4f061fc39c4accf18ba0dc"
}
Frame {
msec: 3344
- hash: "b4bc12141255c91630e775fcf4935f22"
+ hash: "d7fd1a19be4f061fc39c4accf18ba0dc"
}
Frame {
msec: 3360
- hash: "b4bc12141255c91630e775fcf4935f22"
+ hash: "d7fd1a19be4f061fc39c4accf18ba0dc"
}
Frame {
msec: 3376
- hash: "b4bc12141255c91630e775fcf4935f22"
+ hash: "d7fd1a19be4f061fc39c4accf18ba0dc"
}
Frame {
msec: 3392
- hash: "b4bc12141255c91630e775fcf4935f22"
+ hash: "d7fd1a19be4f061fc39c4accf18ba0dc"
}
Key {
type: 7
@@ -1254,7 +1254,7 @@ VisualTest {
}
Frame {
msec: 3408
- hash: "b4bc12141255c91630e775fcf4935f22"
+ hash: "d7fd1a19be4f061fc39c4accf18ba0dc"
}
Key {
type: 6
@@ -1266,23 +1266,23 @@ VisualTest {
}
Frame {
msec: 3424
- hash: "8d83a3f76fd8b77c6dd9fdfb573d9c52"
+ hash: "03e74ddf4c94d322c1b1b35419157948"
}
Frame {
msec: 3440
- hash: "8d83a3f76fd8b77c6dd9fdfb573d9c52"
+ hash: "03e74ddf4c94d322c1b1b35419157948"
}
Frame {
msec: 3456
- hash: "8d83a3f76fd8b77c6dd9fdfb573d9c52"
+ hash: "03e74ddf4c94d322c1b1b35419157948"
}
Frame {
msec: 3472
- hash: "8d83a3f76fd8b77c6dd9fdfb573d9c52"
+ hash: "03e74ddf4c94d322c1b1b35419157948"
}
Frame {
msec: 3488
- hash: "8d83a3f76fd8b77c6dd9fdfb573d9c52"
+ hash: "03e74ddf4c94d322c1b1b35419157948"
}
Key {
type: 7
@@ -1302,27 +1302,27 @@ VisualTest {
}
Frame {
msec: 3504
- hash: "3f154d5eace7e0e688fe609d7eebe80d"
+ hash: "32712a89ba577f55319fe90873668138"
}
Frame {
msec: 3520
- hash: "3f154d5eace7e0e688fe609d7eebe80d"
+ hash: "32712a89ba577f55319fe90873668138"
}
Frame {
msec: 3536
- hash: "3f154d5eace7e0e688fe609d7eebe80d"
+ hash: "32712a89ba577f55319fe90873668138"
}
Frame {
msec: 3552
- hash: "3f154d5eace7e0e688fe609d7eebe80d"
+ hash: "32712a89ba577f55319fe90873668138"
}
Frame {
msec: 3568
- hash: "3f154d5eace7e0e688fe609d7eebe80d"
+ hash: "32712a89ba577f55319fe90873668138"
}
Frame {
msec: 3584
- hash: "3f154d5eace7e0e688fe609d7eebe80d"
+ hash: "32712a89ba577f55319fe90873668138"
}
Key {
type: 7
@@ -1334,7 +1334,7 @@ VisualTest {
}
Frame {
msec: 3600
- hash: "3f154d5eace7e0e688fe609d7eebe80d"
+ hash: "32712a89ba577f55319fe90873668138"
}
Key {
type: 6
@@ -1346,19 +1346,19 @@ VisualTest {
}
Frame {
msec: 3616
- hash: "8cecca2b1a586b7121692a8f618a1a50"
+ hash: "9f1cf9784c0659f4902d632542fe9d52"
}
Frame {
msec: 3632
- hash: "8cecca2b1a586b7121692a8f618a1a50"
+ hash: "9f1cf9784c0659f4902d632542fe9d52"
}
Frame {
msec: 3648
- hash: "8cecca2b1a586b7121692a8f618a1a50"
+ hash: "9f1cf9784c0659f4902d632542fe9d52"
}
Frame {
msec: 3664
- hash: "8cecca2b1a586b7121692a8f618a1a50"
+ hash: "9f1cf9784c0659f4902d632542fe9d52"
}
Key {
type: 6
@@ -1370,7 +1370,7 @@ VisualTest {
}
Frame {
msec: 3680
- hash: "90bd87209b6d26785689779641b1f506"
+ hash: "b350f3b710a0d36ba56bdce6c86f902e"
}
Key {
type: 7
@@ -1382,15 +1382,15 @@ VisualTest {
}
Frame {
msec: 3696
- hash: "90bd87209b6d26785689779641b1f506"
+ hash: "b350f3b710a0d36ba56bdce6c86f902e"
}
Frame {
msec: 3712
- hash: "90bd87209b6d26785689779641b1f506"
+ hash: "b350f3b710a0d36ba56bdce6c86f902e"
}
Frame {
msec: 3728
- hash: "90bd87209b6d26785689779641b1f506"
+ hash: "b350f3b710a0d36ba56bdce6c86f902e"
}
Key {
type: 7
@@ -1402,63 +1402,63 @@ VisualTest {
}
Frame {
msec: 3744
- hash: "90bd87209b6d26785689779641b1f506"
+ hash: "b350f3b710a0d36ba56bdce6c86f902e"
}
Frame {
msec: 3760
- hash: "90bd87209b6d26785689779641b1f506"
+ hash: "b350f3b710a0d36ba56bdce6c86f902e"
}
Frame {
msec: 3776
- hash: "90bd87209b6d26785689779641b1f506"
+ hash: "b350f3b710a0d36ba56bdce6c86f902e"
}
Frame {
msec: 3792
- hash: "90bd87209b6d26785689779641b1f506"
+ hash: "b350f3b710a0d36ba56bdce6c86f902e"
}
Frame {
msec: 3808
- hash: "90bd87209b6d26785689779641b1f506"
+ hash: "b350f3b710a0d36ba56bdce6c86f902e"
}
Frame {
msec: 3824
- hash: "90bd87209b6d26785689779641b1f506"
+ hash: "b350f3b710a0d36ba56bdce6c86f902e"
}
Frame {
msec: 3840
- image: "usingMultilineEdit.3.png"
+ hash: "b350f3b710a0d36ba56bdce6c86f902e"
}
Frame {
msec: 3856
- hash: "90bd87209b6d26785689779641b1f506"
+ image: "usingMultilineEdit.4.png"
}
Frame {
msec: 3872
- hash: "90bd87209b6d26785689779641b1f506"
+ hash: "b350f3b710a0d36ba56bdce6c86f902e"
}
Frame {
msec: 3888
- hash: "90bd87209b6d26785689779641b1f506"
+ hash: "b350f3b710a0d36ba56bdce6c86f902e"
}
Frame {
msec: 3904
- hash: "90bd87209b6d26785689779641b1f506"
+ hash: "b350f3b710a0d36ba56bdce6c86f902e"
}
Frame {
msec: 3920
- hash: "90bd87209b6d26785689779641b1f506"
+ hash: "b350f3b710a0d36ba56bdce6c86f902e"
}
Frame {
msec: 3936
- hash: "90bd87209b6d26785689779641b1f506"
+ hash: "b350f3b710a0d36ba56bdce6c86f902e"
}
Frame {
msec: 3952
- hash: "90bd87209b6d26785689779641b1f506"
+ hash: "b350f3b710a0d36ba56bdce6c86f902e"
}
Frame {
msec: 3968
- hash: "90bd87209b6d26785689779641b1f506"
+ hash: "b350f3b710a0d36ba56bdce6c86f902e"
}
Key {
type: 6
@@ -1470,23 +1470,23 @@ VisualTest {
}
Frame {
msec: 3984
- hash: "7fac93ef3184d5a844448c75b0aa8e18"
+ hash: "2b44bf2548bd887f22e5689946e24de5"
}
Frame {
msec: 4000
- hash: "7fac93ef3184d5a844448c75b0aa8e18"
+ hash: "2b44bf2548bd887f22e5689946e24de5"
}
Frame {
msec: 4016
- hash: "7fac93ef3184d5a844448c75b0aa8e18"
+ hash: "2b44bf2548bd887f22e5689946e24de5"
}
Frame {
msec: 4032
- hash: "7fac93ef3184d5a844448c75b0aa8e18"
+ hash: "2b44bf2548bd887f22e5689946e24de5"
}
Frame {
msec: 4048
- hash: "7fac93ef3184d5a844448c75b0aa8e18"
+ hash: "2b44bf2548bd887f22e5689946e24de5"
}
Key {
type: 6
@@ -1498,7 +1498,7 @@ VisualTest {
}
Frame {
msec: 4064
- hash: "591366861f9e23276042250d5b1da7f9"
+ hash: "925c7c96166cc75dc92bd280fd354e43"
}
Key {
type: 7
@@ -1510,19 +1510,19 @@ VisualTest {
}
Frame {
msec: 4080
- hash: "591366861f9e23276042250d5b1da7f9"
+ hash: "925c7c96166cc75dc92bd280fd354e43"
}
Frame {
msec: 4096
- hash: "591366861f9e23276042250d5b1da7f9"
+ hash: "925c7c96166cc75dc92bd280fd354e43"
}
Frame {
msec: 4112
- hash: "591366861f9e23276042250d5b1da7f9"
+ hash: "925c7c96166cc75dc92bd280fd354e43"
}
Frame {
msec: 4128
- hash: "591366861f9e23276042250d5b1da7f9"
+ hash: "925c7c96166cc75dc92bd280fd354e43"
}
Key {
type: 6
@@ -1534,11 +1534,11 @@ VisualTest {
}
Frame {
msec: 4144
- hash: "c5c33e5f4429698b1a1bc084a41d303d"
+ hash: "61d6f7583f143917b86adcad6a5ba909"
}
Frame {
msec: 4160
- hash: "c5c33e5f4429698b1a1bc084a41d303d"
+ hash: "61d6f7583f143917b86adcad6a5ba909"
}
Key {
type: 7
@@ -1550,15 +1550,15 @@ VisualTest {
}
Frame {
msec: 4176
- hash: "c5c33e5f4429698b1a1bc084a41d303d"
+ hash: "61d6f7583f143917b86adcad6a5ba909"
}
Frame {
msec: 4192
- hash: "c5c33e5f4429698b1a1bc084a41d303d"
+ hash: "61d6f7583f143917b86adcad6a5ba909"
}
Frame {
msec: 4208
- hash: "c5c33e5f4429698b1a1bc084a41d303d"
+ hash: "61d6f7583f143917b86adcad6a5ba909"
}
Key {
type: 6
@@ -1570,11 +1570,11 @@ VisualTest {
}
Frame {
msec: 4224
- hash: "36223521c9ab06661239329c14e4fabe"
+ hash: "679e0940be9c40435aebb05a6e0da685"
}
Frame {
msec: 4240
- hash: "36223521c9ab06661239329c14e4fabe"
+ hash: "679e0940be9c40435aebb05a6e0da685"
}
Key {
type: 7
@@ -1586,11 +1586,11 @@ VisualTest {
}
Frame {
msec: 4256
- hash: "36223521c9ab06661239329c14e4fabe"
+ hash: "679e0940be9c40435aebb05a6e0da685"
}
Frame {
msec: 4272
- hash: "36223521c9ab06661239329c14e4fabe"
+ hash: "679e0940be9c40435aebb05a6e0da685"
}
Key {
type: 7
@@ -1602,27 +1602,27 @@ VisualTest {
}
Frame {
msec: 4288
- hash: "36223521c9ab06661239329c14e4fabe"
+ hash: "679e0940be9c40435aebb05a6e0da685"
}
Frame {
msec: 4304
- hash: "36223521c9ab06661239329c14e4fabe"
+ hash: "679e0940be9c40435aebb05a6e0da685"
}
Frame {
msec: 4320
- hash: "36223521c9ab06661239329c14e4fabe"
+ hash: "679e0940be9c40435aebb05a6e0da685"
}
Frame {
msec: 4336
- hash: "36223521c9ab06661239329c14e4fabe"
+ hash: "679e0940be9c40435aebb05a6e0da685"
}
Frame {
msec: 4352
- hash: "36223521c9ab06661239329c14e4fabe"
+ hash: "679e0940be9c40435aebb05a6e0da685"
}
Frame {
msec: 4368
- hash: "36223521c9ab06661239329c14e4fabe"
+ hash: "679e0940be9c40435aebb05a6e0da685"
}
Key {
type: 6
@@ -1634,23 +1634,23 @@ VisualTest {
}
Frame {
msec: 4384
- hash: "22ab171b9805302b729afd314e55a0f4"
+ hash: "e819d25f605ec1347e89de65682edb7d"
}
Frame {
msec: 4400
- hash: "22ab171b9805302b729afd314e55a0f4"
+ hash: "e819d25f605ec1347e89de65682edb7d"
}
Frame {
msec: 4416
- hash: "22ab171b9805302b729afd314e55a0f4"
+ hash: "e819d25f605ec1347e89de65682edb7d"
}
Frame {
msec: 4432
- hash: "22ab171b9805302b729afd314e55a0f4"
+ hash: "e819d25f605ec1347e89de65682edb7d"
}
Frame {
msec: 4448
- hash: "22ab171b9805302b729afd314e55a0f4"
+ hash: "e819d25f605ec1347e89de65682edb7d"
}
Key {
type: 7
@@ -1662,7 +1662,7 @@ VisualTest {
}
Frame {
msec: 4464
- hash: "22ab171b9805302b729afd314e55a0f4"
+ hash: "e819d25f605ec1347e89de65682edb7d"
}
Key {
type: 6
@@ -1674,23 +1674,23 @@ VisualTest {
}
Frame {
msec: 4480
- hash: "beaad223234484e21f824ceb7f1edc2a"
+ hash: "ef65860a90a96d521a860c4e73e833ee"
}
Frame {
msec: 4496
- hash: "beaad223234484e21f824ceb7f1edc2a"
+ hash: "ef65860a90a96d521a860c4e73e833ee"
}
Frame {
msec: 4512
- hash: "beaad223234484e21f824ceb7f1edc2a"
+ hash: "ef65860a90a96d521a860c4e73e833ee"
}
Frame {
msec: 4528
- hash: "beaad223234484e21f824ceb7f1edc2a"
+ hash: "ef65860a90a96d521a860c4e73e833ee"
}
Frame {
msec: 4544
- hash: "beaad223234484e21f824ceb7f1edc2a"
+ hash: "ef65860a90a96d521a860c4e73e833ee"
}
Key {
type: 7
@@ -1702,15 +1702,15 @@ VisualTest {
}
Frame {
msec: 4560
- hash: "beaad223234484e21f824ceb7f1edc2a"
+ hash: "ef65860a90a96d521a860c4e73e833ee"
}
Frame {
msec: 4576
- hash: "beaad223234484e21f824ceb7f1edc2a"
+ hash: "ef65860a90a96d521a860c4e73e833ee"
}
Frame {
msec: 4592
- hash: "beaad223234484e21f824ceb7f1edc2a"
+ hash: "ef65860a90a96d521a860c4e73e833ee"
}
Key {
type: 6
@@ -1722,63 +1722,63 @@ VisualTest {
}
Frame {
msec: 4608
- hash: "beaad223234484e21f824ceb7f1edc2a"
+ hash: "ef65860a90a96d521a860c4e73e833ee"
}
Frame {
msec: 4624
- hash: "beaad223234484e21f824ceb7f1edc2a"
+ hash: "ef65860a90a96d521a860c4e73e833ee"
}
Frame {
msec: 4640
- hash: "beaad223234484e21f824ceb7f1edc2a"
+ hash: "ef65860a90a96d521a860c4e73e833ee"
}
Frame {
msec: 4656
- hash: "beaad223234484e21f824ceb7f1edc2a"
+ hash: "ef65860a90a96d521a860c4e73e833ee"
}
Frame {
msec: 4672
- hash: "beaad223234484e21f824ceb7f1edc2a"
+ hash: "ef65860a90a96d521a860c4e73e833ee"
}
Frame {
msec: 4688
- hash: "beaad223234484e21f824ceb7f1edc2a"
+ hash: "ef65860a90a96d521a860c4e73e833ee"
}
Frame {
msec: 4704
- hash: "beaad223234484e21f824ceb7f1edc2a"
+ hash: "ef65860a90a96d521a860c4e73e833ee"
}
Frame {
msec: 4720
- hash: "beaad223234484e21f824ceb7f1edc2a"
+ hash: "ef65860a90a96d521a860c4e73e833ee"
}
Frame {
msec: 4736
- hash: "beaad223234484e21f824ceb7f1edc2a"
+ hash: "ef65860a90a96d521a860c4e73e833ee"
}
Frame {
msec: 4752
- hash: "beaad223234484e21f824ceb7f1edc2a"
+ hash: "ef65860a90a96d521a860c4e73e833ee"
}
Frame {
msec: 4768
- hash: "beaad223234484e21f824ceb7f1edc2a"
+ hash: "ef65860a90a96d521a860c4e73e833ee"
}
Frame {
msec: 4784
- hash: "beaad223234484e21f824ceb7f1edc2a"
+ hash: "ef65860a90a96d521a860c4e73e833ee"
}
Frame {
msec: 4800
- image: "usingMultilineEdit.4.png"
+ hash: "ef65860a90a96d521a860c4e73e833ee"
}
Frame {
msec: 4816
- hash: "beaad223234484e21f824ceb7f1edc2a"
+ image: "usingMultilineEdit.5.png"
}
Frame {
msec: 4832
- hash: "beaad223234484e21f824ceb7f1edc2a"
+ hash: "ef65860a90a96d521a860c4e73e833ee"
}
Key {
type: 6
@@ -1790,31 +1790,31 @@ VisualTest {
}
Frame {
msec: 4848
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 4864
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 4880
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 4896
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 4912
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 4928
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 4944
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Key {
type: 7
@@ -1826,19 +1826,19 @@ VisualTest {
}
Frame {
msec: 4960
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 4976
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 4992
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5008
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Key {
type: 7
@@ -1850,191 +1850,191 @@ VisualTest {
}
Frame {
msec: 5024
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5040
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5056
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5072
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5088
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5104
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5120
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5136
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5152
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5168
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5184
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5200
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5216
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5232
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5248
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5264
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5280
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5296
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5312
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5328
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5344
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5360
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5376
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5392
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5408
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5424
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5440
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5456
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5472
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5488
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5504
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5520
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5536
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5552
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5568
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5584
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5600
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5616
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5632
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5648
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5664
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5680
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5696
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5712
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5728
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5744
- hash: "49b26f36a10d808fdcb8248a384a4da6"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Frame {
msec: 5760
- image: "usingMultilineEdit.5.png"
+ hash: "84497b5307b95f59693b71dc13c838ef"
}
Mouse {
type: 2
@@ -2046,19 +2046,19 @@ VisualTest {
}
Frame {
msec: 5776
- hash: "476040951352f144bda4ed7fb817cd7f"
+ image: "usingMultilineEdit.6.png"
}
Frame {
msec: 5792
- hash: "476040951352f144bda4ed7fb817cd7f"
+ hash: "a3d9bdf8086303458ae5d35294551894"
}
Frame {
msec: 5808
- hash: "476040951352f144bda4ed7fb817cd7f"
+ hash: "a3d9bdf8086303458ae5d35294551894"
}
Frame {
msec: 5824
- hash: "476040951352f144bda4ed7fb817cd7f"
+ hash: "a3d9bdf8086303458ae5d35294551894"
}
Mouse {
type: 5
@@ -2078,7 +2078,7 @@ VisualTest {
}
Frame {
msec: 5840
- hash: "476040951352f144bda4ed7fb817cd7f"
+ hash: "a3d9bdf8086303458ae5d35294551894"
}
Mouse {
type: 5
@@ -2098,7 +2098,7 @@ VisualTest {
}
Frame {
msec: 5856
- hash: "9ecb1e68ab724c6f83b1a37aa1cb15c4"
+ hash: "ee9722d220435828b919fa4d8e314b78"
}
Mouse {
type: 5
@@ -2118,7 +2118,7 @@ VisualTest {
}
Frame {
msec: 5872
- hash: "9ecb1e68ab724c6f83b1a37aa1cb15c4"
+ hash: "ee9722d220435828b919fa4d8e314b78"
}
Mouse {
type: 5
@@ -2138,7 +2138,7 @@ VisualTest {
}
Frame {
msec: 5888
- hash: "9ecb1e68ab724c6f83b1a37aa1cb15c4"
+ hash: "8a06a84965166774ff160984ed05b5ad"
}
Mouse {
type: 5
@@ -2158,7 +2158,7 @@ VisualTest {
}
Frame {
msec: 5904
- hash: "173735fb4be11da603fb8ae8cffc609d"
+ hash: "0a9ec173aa0436b9b9edf3f20946ae5a"
}
Mouse {
type: 5
@@ -2178,7 +2178,7 @@ VisualTest {
}
Frame {
msec: 5920
- hash: "173735fb4be11da603fb8ae8cffc609d"
+ hash: "0a9ec173aa0436b9b9edf3f20946ae5a"
}
Mouse {
type: 5
@@ -2198,7 +2198,7 @@ VisualTest {
}
Frame {
msec: 5936
- hash: "b337a09f359fb2a237731c66ab95c92c"
+ hash: "5511590b6b6826d8e863956220eee2e4"
}
Mouse {
type: 5
@@ -2218,7 +2218,7 @@ VisualTest {
}
Frame {
msec: 5952
- hash: "32719becb40f8c6bd49b5f5754786913"
+ hash: "4d413c13e43c57809af8ee83a165dcb1"
}
Mouse {
type: 5
@@ -2238,7 +2238,7 @@ VisualTest {
}
Frame {
msec: 5968
- hash: "e6bff88d0a5e2e7df4b3355749ecc902"
+ hash: "cc0c5811bc845540c2c550cefe45ab1c"
}
Mouse {
type: 5
@@ -2250,7 +2250,7 @@ VisualTest {
}
Frame {
msec: 5984
- hash: "e6bff88d0a5e2e7df4b3355749ecc902"
+ hash: "cc0c5811bc845540c2c550cefe45ab1c"
}
Mouse {
type: 5
@@ -2270,7 +2270,7 @@ VisualTest {
}
Frame {
msec: 6000
- hash: "e6bff88d0a5e2e7df4b3355749ecc902"
+ hash: "cc0c5811bc845540c2c550cefe45ab1c"
}
Mouse {
type: 5
@@ -2290,7 +2290,7 @@ VisualTest {
}
Frame {
msec: 6016
- hash: "e6bff88d0a5e2e7df4b3355749ecc902"
+ hash: "cc0c5811bc845540c2c550cefe45ab1c"
}
Mouse {
type: 5
@@ -2310,7 +2310,7 @@ VisualTest {
}
Frame {
msec: 6032
- hash: "e6bff88d0a5e2e7df4b3355749ecc902"
+ hash: "cc0c5811bc845540c2c550cefe45ab1c"
}
Mouse {
type: 5
@@ -2330,7 +2330,7 @@ VisualTest {
}
Frame {
msec: 6048
- hash: "e6bff88d0a5e2e7df4b3355749ecc902"
+ hash: "cc0c5811bc845540c2c550cefe45ab1c"
}
Mouse {
type: 5
@@ -2350,7 +2350,7 @@ VisualTest {
}
Frame {
msec: 6064
- hash: "e6bff88d0a5e2e7df4b3355749ecc902"
+ hash: "cc0c5811bc845540c2c550cefe45ab1c"
}
Mouse {
type: 5
@@ -2370,7 +2370,7 @@ VisualTest {
}
Frame {
msec: 6080
- hash: "e6bff88d0a5e2e7df4b3355749ecc902"
+ hash: "cc0c5811bc845540c2c550cefe45ab1c"
}
Mouse {
type: 5
@@ -2390,7 +2390,7 @@ VisualTest {
}
Frame {
msec: 6096
- hash: "e6bff88d0a5e2e7df4b3355749ecc902"
+ hash: "cc0c5811bc845540c2c550cefe45ab1c"
}
Mouse {
type: 5
@@ -2410,7 +2410,7 @@ VisualTest {
}
Frame {
msec: 6112
- hash: "e6bff88d0a5e2e7df4b3355749ecc902"
+ hash: "cc0c5811bc845540c2c550cefe45ab1c"
}
Mouse {
type: 5
@@ -2430,7 +2430,7 @@ VisualTest {
}
Frame {
msec: 6128
- hash: "e6bff88d0a5e2e7df4b3355749ecc902"
+ hash: "cc0c5811bc845540c2c550cefe45ab1c"
}
Mouse {
type: 5
@@ -2450,7 +2450,7 @@ VisualTest {
}
Frame {
msec: 6144
- hash: "e6bff88d0a5e2e7df4b3355749ecc902"
+ hash: "cc0c5811bc845540c2c550cefe45ab1c"
}
Mouse {
type: 5
@@ -2470,7 +2470,7 @@ VisualTest {
}
Frame {
msec: 6160
- hash: "e6bff88d0a5e2e7df4b3355749ecc902"
+ hash: "cc0c5811bc845540c2c550cefe45ab1c"
}
Mouse {
type: 5
@@ -2490,7 +2490,7 @@ VisualTest {
}
Frame {
msec: 6176
- hash: "e6bff88d0a5e2e7df4b3355749ecc902"
+ hash: "cc0c5811bc845540c2c550cefe45ab1c"
}
Mouse {
type: 5
@@ -2502,23 +2502,23 @@ VisualTest {
}
Frame {
msec: 6192
- hash: "e6bff88d0a5e2e7df4b3355749ecc902"
+ hash: "cc0c5811bc845540c2c550cefe45ab1c"
}
Frame {
msec: 6208
- hash: "e6bff88d0a5e2e7df4b3355749ecc902"
+ hash: "cc0c5811bc845540c2c550cefe45ab1c"
}
Frame {
msec: 6224
- hash: "e6bff88d0a5e2e7df4b3355749ecc902"
+ hash: "cc0c5811bc845540c2c550cefe45ab1c"
}
Frame {
msec: 6240
- hash: "e6bff88d0a5e2e7df4b3355749ecc902"
+ hash: "cc0c5811bc845540c2c550cefe45ab1c"
}
Frame {
msec: 6256
- hash: "e6bff88d0a5e2e7df4b3355749ecc902"
+ hash: "cc0c5811bc845540c2c550cefe45ab1c"
}
Mouse {
type: 5
@@ -2530,7 +2530,7 @@ VisualTest {
}
Frame {
msec: 6272
- hash: "e6bff88d0a5e2e7df4b3355749ecc902"
+ hash: "cc0c5811bc845540c2c550cefe45ab1c"
}
Mouse {
type: 5
@@ -2550,7 +2550,7 @@ VisualTest {
}
Frame {
msec: 6288
- hash: "e6bff88d0a5e2e7df4b3355749ecc902"
+ hash: "cc0c5811bc845540c2c550cefe45ab1c"
}
Mouse {
type: 5
@@ -2570,7 +2570,7 @@ VisualTest {
}
Frame {
msec: 6304
- hash: "e6bff88d0a5e2e7df4b3355749ecc902"
+ hash: "cc0c5811bc845540c2c550cefe45ab1c"
}
Mouse {
type: 5
@@ -2590,7 +2590,7 @@ VisualTest {
}
Frame {
msec: 6320
- hash: "e6bff88d0a5e2e7df4b3355749ecc902"
+ hash: "cc0c5811bc845540c2c550cefe45ab1c"
}
Mouse {
type: 5
@@ -2610,7 +2610,7 @@ VisualTest {
}
Frame {
msec: 6336
- hash: "e6bff88d0a5e2e7df4b3355749ecc902"
+ hash: "cc0c5811bc845540c2c550cefe45ab1c"
}
Mouse {
type: 5
@@ -2630,7 +2630,7 @@ VisualTest {
}
Frame {
msec: 6352
- hash: "e6bff88d0a5e2e7df4b3355749ecc902"
+ hash: "cc0c5811bc845540c2c550cefe45ab1c"
}
Mouse {
type: 5
@@ -2650,7 +2650,7 @@ VisualTest {
}
Frame {
msec: 6368
- hash: "e6bff88d0a5e2e7df4b3355749ecc902"
+ hash: "cc0c5811bc845540c2c550cefe45ab1c"
}
Mouse {
type: 5
@@ -2670,7 +2670,7 @@ VisualTest {
}
Frame {
msec: 6384
- hash: "5de7bbfdf96d84c8fbe74b4817a3c88a"
+ hash: "b35bc1db0fd5b95bb830a9be9ded1659"
}
Mouse {
type: 5
@@ -2682,7 +2682,7 @@ VisualTest {
}
Frame {
msec: 6400
- hash: "5de7bbfdf96d84c8fbe74b4817a3c88a"
+ hash: "b35bc1db0fd5b95bb830a9be9ded1659"
}
Mouse {
type: 5
@@ -2702,7 +2702,7 @@ VisualTest {
}
Frame {
msec: 6416
- hash: "056d22660f6feedfb453755978aa4c1d"
+ hash: "576bbe32d2b6f582cbb0102d2b0e079b"
}
Mouse {
type: 5
@@ -2722,7 +2722,7 @@ VisualTest {
}
Frame {
msec: 6432
- hash: "9d8568931fdca572dd31ea62ebbaf76a"
+ hash: "15a7ee7f58f286ae22385c2817b9b697"
}
Mouse {
type: 5
@@ -2742,7 +2742,7 @@ VisualTest {
}
Frame {
msec: 6448
- hash: "29aa2da8a830d5605a8d2d2543097177"
+ hash: "5cd516c20c91c407ca9932ea89afd100"
}
Mouse {
type: 5
@@ -2754,7 +2754,7 @@ VisualTest {
}
Frame {
msec: 6464
- hash: "154e312998b32cc09daf1693d07eda2f"
+ hash: "40ce8b3c3588727a37e03dd83cb3d536"
}
Mouse {
type: 5
@@ -2774,7 +2774,7 @@ VisualTest {
}
Frame {
msec: 6480
- hash: "5b3a17fd92fe5117aa405d4c737e6673"
+ hash: "a3d9bdf8086303458ae5d35294551894"
}
Mouse {
type: 5
@@ -2794,7 +2794,7 @@ VisualTest {
}
Frame {
msec: 6496
- hash: "5b3a17fd92fe5117aa405d4c737e6673"
+ hash: "384cc9f557dd56079a54c1f0460bf96f"
}
Mouse {
type: 5
@@ -2814,7 +2814,7 @@ VisualTest {
}
Frame {
msec: 6512
- hash: "5b3a17fd92fe5117aa405d4c737e6673"
+ hash: "384cc9f557dd56079a54c1f0460bf96f"
}
Mouse {
type: 5
@@ -2834,7 +2834,7 @@ VisualTest {
}
Frame {
msec: 6528
- hash: "5b3a17fd92fe5117aa405d4c737e6673"
+ hash: "384cc9f557dd56079a54c1f0460bf96f"
}
Mouse {
type: 5
@@ -2854,7 +2854,7 @@ VisualTest {
}
Frame {
msec: 6544
- hash: "5b3a17fd92fe5117aa405d4c737e6673"
+ hash: "384cc9f557dd56079a54c1f0460bf96f"
}
Mouse {
type: 5
@@ -2874,7 +2874,7 @@ VisualTest {
}
Frame {
msec: 6560
- hash: "5b3a17fd92fe5117aa405d4c737e6673"
+ hash: "384cc9f557dd56079a54c1f0460bf96f"
}
Mouse {
type: 5
@@ -2894,7 +2894,7 @@ VisualTest {
}
Frame {
msec: 6576
- hash: "5b3a17fd92fe5117aa405d4c737e6673"
+ hash: "384cc9f557dd56079a54c1f0460bf96f"
}
Mouse {
type: 5
@@ -2914,27 +2914,27 @@ VisualTest {
}
Frame {
msec: 6592
- hash: "5b3a17fd92fe5117aa405d4c737e6673"
+ hash: "384cc9f557dd56079a54c1f0460bf96f"
}
Frame {
msec: 6608
- hash: "5b3a17fd92fe5117aa405d4c737e6673"
+ hash: "384cc9f557dd56079a54c1f0460bf96f"
}
Frame {
msec: 6624
- hash: "5b3a17fd92fe5117aa405d4c737e6673"
+ hash: "384cc9f557dd56079a54c1f0460bf96f"
}
Frame {
msec: 6640
- hash: "5b3a17fd92fe5117aa405d4c737e6673"
+ hash: "384cc9f557dd56079a54c1f0460bf96f"
}
Frame {
msec: 6656
- hash: "5b3a17fd92fe5117aa405d4c737e6673"
+ hash: "384cc9f557dd56079a54c1f0460bf96f"
}
Frame {
msec: 6672
- hash: "5b3a17fd92fe5117aa405d4c737e6673"
+ hash: "384cc9f557dd56079a54c1f0460bf96f"
}
Mouse {
type: 5
@@ -2954,7 +2954,7 @@ VisualTest {
}
Frame {
msec: 6688
- hash: "5b3a17fd92fe5117aa405d4c737e6673"
+ hash: "384cc9f557dd56079a54c1f0460bf96f"
}
Mouse {
type: 5
@@ -2974,7 +2974,7 @@ VisualTest {
}
Frame {
msec: 6704
- hash: "5b3a17fd92fe5117aa405d4c737e6673"
+ hash: "384cc9f557dd56079a54c1f0460bf96f"
}
Mouse {
type: 5
@@ -2994,7 +2994,7 @@ VisualTest {
}
Frame {
msec: 6720
- image: "usingMultilineEdit.6.png"
+ hash: "384cc9f557dd56079a54c1f0460bf96f"
}
Mouse {
type: 5
@@ -3014,7 +3014,7 @@ VisualTest {
}
Frame {
msec: 6736
- hash: "5b3a17fd92fe5117aa405d4c737e6673"
+ image: "usingMultilineEdit.7.png"
}
Mouse {
type: 5
@@ -3034,7 +3034,7 @@ VisualTest {
}
Frame {
msec: 6752
- hash: "5b3a17fd92fe5117aa405d4c737e6673"
+ hash: "384cc9f557dd56079a54c1f0460bf96f"
}
Mouse {
type: 5
@@ -3054,7 +3054,7 @@ VisualTest {
}
Frame {
msec: 6768
- hash: "5b3a17fd92fe5117aa405d4c737e6673"
+ hash: "384cc9f557dd56079a54c1f0460bf96f"
}
Mouse {
type: 5
@@ -3074,7 +3074,7 @@ VisualTest {
}
Frame {
msec: 6784
- hash: "5b3a17fd92fe5117aa405d4c737e6673"
+ hash: "384cc9f557dd56079a54c1f0460bf96f"
}
Mouse {
type: 5
@@ -3094,7 +3094,7 @@ VisualTest {
}
Frame {
msec: 6800
- hash: "5b3a17fd92fe5117aa405d4c737e6673"
+ hash: "384cc9f557dd56079a54c1f0460bf96f"
}
Mouse {
type: 5
@@ -3114,7 +3114,7 @@ VisualTest {
}
Frame {
msec: 6816
- hash: "5b3a17fd92fe5117aa405d4c737e6673"
+ hash: "384cc9f557dd56079a54c1f0460bf96f"
}
Mouse {
type: 5
@@ -3134,7 +3134,7 @@ VisualTest {
}
Frame {
msec: 6832
- hash: "5b3a17fd92fe5117aa405d4c737e6673"
+ hash: "384cc9f557dd56079a54c1f0460bf96f"
}
Mouse {
type: 5
@@ -3154,7 +3154,7 @@ VisualTest {
}
Frame {
msec: 6848
- hash: "476040951352f144bda4ed7fb817cd7f"
+ hash: "a3d9bdf8086303458ae5d35294551894"
}
Mouse {
type: 5
@@ -3174,7 +3174,7 @@ VisualTest {
}
Frame {
msec: 6864
- hash: "2cb10cb75beb454df7918b6948c6ad8a"
+ hash: "a3d9bdf8086303458ae5d35294551894"
}
Mouse {
type: 5
@@ -3194,7 +3194,7 @@ VisualTest {
}
Frame {
msec: 6880
- hash: "2cb10cb75beb454df7918b6948c6ad8a"
+ hash: "a3d9bdf8086303458ae5d35294551894"
}
Mouse {
type: 3
@@ -3206,55 +3206,55 @@ VisualTest {
}
Frame {
msec: 6896
- hash: "2cb10cb75beb454df7918b6948c6ad8a"
+ hash: "a3d9bdf8086303458ae5d35294551894"
}
Frame {
msec: 6912
- hash: "2cb10cb75beb454df7918b6948c6ad8a"
+ hash: "a3d9bdf8086303458ae5d35294551894"
}
Frame {
msec: 6928
- hash: "2cb10cb75beb454df7918b6948c6ad8a"
+ hash: "a3d9bdf8086303458ae5d35294551894"
}
Frame {
msec: 6944
- hash: "2cb10cb75beb454df7918b6948c6ad8a"
+ hash: "a3d9bdf8086303458ae5d35294551894"
}
Frame {
msec: 6960
- hash: "2cb10cb75beb454df7918b6948c6ad8a"
+ hash: "a3d9bdf8086303458ae5d35294551894"
}
Frame {
msec: 6976
- hash: "2cb10cb75beb454df7918b6948c6ad8a"
+ hash: "a3d9bdf8086303458ae5d35294551894"
}
Frame {
msec: 6992
- hash: "2cb10cb75beb454df7918b6948c6ad8a"
+ hash: "a3d9bdf8086303458ae5d35294551894"
}
Frame {
msec: 7008
- hash: "2cb10cb75beb454df7918b6948c6ad8a"
+ hash: "a3d9bdf8086303458ae5d35294551894"
}
Frame {
msec: 7024
- hash: "2cb10cb75beb454df7918b6948c6ad8a"
+ hash: "a3d9bdf8086303458ae5d35294551894"
}
Frame {
msec: 7040
- hash: "2cb10cb75beb454df7918b6948c6ad8a"
+ hash: "a3d9bdf8086303458ae5d35294551894"
}
Frame {
msec: 7056
- hash: "2cb10cb75beb454df7918b6948c6ad8a"
+ hash: "a3d9bdf8086303458ae5d35294551894"
}
Frame {
msec: 7072
- hash: "2cb10cb75beb454df7918b6948c6ad8a"
+ hash: "a3d9bdf8086303458ae5d35294551894"
}
Frame {
msec: 7088
- hash: "2cb10cb75beb454df7918b6948c6ad8a"
+ hash: "a3d9bdf8086303458ae5d35294551894"
}
Mouse {
type: 2
@@ -3266,23 +3266,23 @@ VisualTest {
}
Frame {
msec: 7104
- hash: "eafa794e0c09cc2558575bafa945ecdf"
+ hash: "a5755969d822cae00af992085c419a17"
}
Frame {
msec: 7120
- hash: "eafa794e0c09cc2558575bafa945ecdf"
+ hash: "a5755969d822cae00af992085c419a17"
}
Frame {
msec: 7136
- hash: "eafa794e0c09cc2558575bafa945ecdf"
+ hash: "a5755969d822cae00af992085c419a17"
}
Frame {
msec: 7152
- hash: "eafa794e0c09cc2558575bafa945ecdf"
+ hash: "a5755969d822cae00af992085c419a17"
}
Frame {
msec: 7168
- hash: "eafa794e0c09cc2558575bafa945ecdf"
+ hash: "a5755969d822cae00af992085c419a17"
}
Mouse {
type: 3
@@ -3294,103 +3294,103 @@ VisualTest {
}
Frame {
msec: 7184
- hash: "eafa794e0c09cc2558575bafa945ecdf"
+ hash: "a5755969d822cae00af992085c419a17"
}
Frame {
msec: 7200
- hash: "eafa794e0c09cc2558575bafa945ecdf"
+ hash: "a5755969d822cae00af992085c419a17"
}
Frame {
msec: 7216
- hash: "eafa794e0c09cc2558575bafa945ecdf"
+ hash: "a5755969d822cae00af992085c419a17"
}
Frame {
msec: 7232
- hash: "eafa794e0c09cc2558575bafa945ecdf"
+ hash: "a5755969d822cae00af992085c419a17"
}
Frame {
msec: 7248
- hash: "eafa794e0c09cc2558575bafa945ecdf"
+ hash: "a5755969d822cae00af992085c419a17"
}
Frame {
msec: 7264
- hash: "eafa794e0c09cc2558575bafa945ecdf"
+ hash: "a5755969d822cae00af992085c419a17"
}
Frame {
msec: 7280
- hash: "eafa794e0c09cc2558575bafa945ecdf"
+ hash: "a5755969d822cae00af992085c419a17"
}
Frame {
msec: 7296
- hash: "eafa794e0c09cc2558575bafa945ecdf"
+ hash: "a5755969d822cae00af992085c419a17"
}
Frame {
msec: 7312
- hash: "eafa794e0c09cc2558575bafa945ecdf"
+ hash: "a5755969d822cae00af992085c419a17"
}
Frame {
msec: 7328
- hash: "eafa794e0c09cc2558575bafa945ecdf"
+ hash: "a5755969d822cae00af992085c419a17"
}
Frame {
msec: 7344
- hash: "eafa794e0c09cc2558575bafa945ecdf"
+ hash: "a5755969d822cae00af992085c419a17"
}
Frame {
msec: 7360
- hash: "eafa794e0c09cc2558575bafa945ecdf"
+ hash: "a5755969d822cae00af992085c419a17"
}
Frame {
msec: 7376
- hash: "eafa794e0c09cc2558575bafa945ecdf"
+ hash: "a5755969d822cae00af992085c419a17"
}
Frame {
msec: 7392
- hash: "eafa794e0c09cc2558575bafa945ecdf"
+ hash: "a5755969d822cae00af992085c419a17"
}
Frame {
msec: 7408
- hash: "eafa794e0c09cc2558575bafa945ecdf"
+ hash: "a5755969d822cae00af992085c419a17"
}
Frame {
msec: 7424
- hash: "eafa794e0c09cc2558575bafa945ecdf"
+ hash: "a5755969d822cae00af992085c419a17"
}
Frame {
msec: 7440
- hash: "eafa794e0c09cc2558575bafa945ecdf"
+ hash: "a5755969d822cae00af992085c419a17"
}
Frame {
msec: 7456
- hash: "eafa794e0c09cc2558575bafa945ecdf"
+ hash: "a5755969d822cae00af992085c419a17"
}
Frame {
msec: 7472
- hash: "eafa794e0c09cc2558575bafa945ecdf"
+ hash: "a5755969d822cae00af992085c419a17"
}
Frame {
msec: 7488
- hash: "eafa794e0c09cc2558575bafa945ecdf"
+ hash: "a5755969d822cae00af992085c419a17"
}
Frame {
msec: 7504
- hash: "eafa794e0c09cc2558575bafa945ecdf"
+ hash: "a5755969d822cae00af992085c419a17"
}
Frame {
msec: 7520
- hash: "eafa794e0c09cc2558575bafa945ecdf"
+ hash: "a5755969d822cae00af992085c419a17"
}
Frame {
msec: 7536
- hash: "eafa794e0c09cc2558575bafa945ecdf"
+ hash: "a5755969d822cae00af992085c419a17"
}
Frame {
msec: 7552
- hash: "eafa794e0c09cc2558575bafa945ecdf"
+ hash: "a5755969d822cae00af992085c419a17"
}
Frame {
msec: 7568
- hash: "eafa794e0c09cc2558575bafa945ecdf"
+ hash: "a5755969d822cae00af992085c419a17"
}
Key {
type: 6
@@ -3402,15 +3402,15 @@ VisualTest {
}
Frame {
msec: 7584
- hash: "0444d714b801f88685df9722390faf4f"
+ hash: "2395700fc4c3080e99b8871518113778"
}
Frame {
msec: 7600
- hash: "0444d714b801f88685df9722390faf4f"
+ hash: "2395700fc4c3080e99b8871518113778"
}
Frame {
msec: 7616
- hash: "0444d714b801f88685df9722390faf4f"
+ hash: "2395700fc4c3080e99b8871518113778"
}
Key {
type: 7
@@ -3422,27 +3422,27 @@ VisualTest {
}
Frame {
msec: 7632
- hash: "0444d714b801f88685df9722390faf4f"
+ hash: "2395700fc4c3080e99b8871518113778"
}
Frame {
msec: 7648
- hash: "0444d714b801f88685df9722390faf4f"
+ hash: "2395700fc4c3080e99b8871518113778"
}
Frame {
msec: 7664
- hash: "0444d714b801f88685df9722390faf4f"
+ hash: "2395700fc4c3080e99b8871518113778"
}
Frame {
msec: 7680
- image: "usingMultilineEdit.7.png"
+ hash: "2395700fc4c3080e99b8871518113778"
}
Frame {
msec: 7696
- hash: "0444d714b801f88685df9722390faf4f"
+ image: "usingMultilineEdit.8.png"
}
Frame {
msec: 7712
- hash: "0444d714b801f88685df9722390faf4f"
+ hash: "2395700fc4c3080e99b8871518113778"
}
Key {
type: 6
@@ -3454,63 +3454,63 @@ VisualTest {
}
Frame {
msec: 7728
- hash: "250a49b60ad8e9b901977e01063ec20a"
+ hash: "71e055a9dbd940b3445d5ad9e277b483"
}
Frame {
msec: 7744
- hash: "250a49b60ad8e9b901977e01063ec20a"
+ hash: "71e055a9dbd940b3445d5ad9e277b483"
}
Frame {
msec: 7760
- hash: "250a49b60ad8e9b901977e01063ec20a"
+ hash: "71e055a9dbd940b3445d5ad9e277b483"
}
Frame {
msec: 7776
- hash: "250a49b60ad8e9b901977e01063ec20a"
+ hash: "71e055a9dbd940b3445d5ad9e277b483"
}
Frame {
msec: 7792
- hash: "250a49b60ad8e9b901977e01063ec20a"
+ hash: "71e055a9dbd940b3445d5ad9e277b483"
}
Frame {
msec: 7808
- hash: "250a49b60ad8e9b901977e01063ec20a"
+ hash: "71e055a9dbd940b3445d5ad9e277b483"
}
Frame {
msec: 7824
- hash: "250a49b60ad8e9b901977e01063ec20a"
+ hash: "71e055a9dbd940b3445d5ad9e277b483"
}
Frame {
msec: 7840
- hash: "250a49b60ad8e9b901977e01063ec20a"
+ hash: "71e055a9dbd940b3445d5ad9e277b483"
}
Frame {
msec: 7856
- hash: "250a49b60ad8e9b901977e01063ec20a"
+ hash: "71e055a9dbd940b3445d5ad9e277b483"
}
Frame {
msec: 7872
- hash: "250a49b60ad8e9b901977e01063ec20a"
+ hash: "71e055a9dbd940b3445d5ad9e277b483"
}
Frame {
msec: 7888
- hash: "250a49b60ad8e9b901977e01063ec20a"
+ hash: "71e055a9dbd940b3445d5ad9e277b483"
}
Frame {
msec: 7904
- hash: "250a49b60ad8e9b901977e01063ec20a"
+ hash: "71e055a9dbd940b3445d5ad9e277b483"
}
Frame {
msec: 7920
- hash: "250a49b60ad8e9b901977e01063ec20a"
+ hash: "71e055a9dbd940b3445d5ad9e277b483"
}
Frame {
msec: 7936
- hash: "250a49b60ad8e9b901977e01063ec20a"
+ hash: "71e055a9dbd940b3445d5ad9e277b483"
}
Frame {
msec: 7952
- hash: "250a49b60ad8e9b901977e01063ec20a"
+ hash: "71e055a9dbd940b3445d5ad9e277b483"
}
Key {
type: 7
@@ -3530,11 +3530,11 @@ VisualTest {
}
Frame {
msec: 7968
- hash: "bec2aea61fef64475e638848b96d28c3"
+ hash: "2ed8cb467e60f2fb253abb37bdc18a9a"
}
Frame {
msec: 7984
- hash: "bec2aea61fef64475e638848b96d28c3"
+ hash: "2ed8cb467e60f2fb253abb37bdc18a9a"
}
Key {
type: 7
@@ -3554,11 +3554,11 @@ VisualTest {
}
Frame {
msec: 8000
- hash: "54177e0d53373636850e18399640fee8"
+ hash: "5783992a07652cfc53bfa0e1f36c1415"
}
Frame {
msec: 8016
- hash: "54177e0d53373636850e18399640fee8"
+ hash: "5783992a07652cfc53bfa0e1f36c1415"
}
Key {
type: 7
@@ -3578,11 +3578,11 @@ VisualTest {
}
Frame {
msec: 8032
- hash: "81c03bd9dfd562e9f13784c906fa0d9e"
+ hash: "0fa5790dcbcb740d530b6333063629d6"
}
Frame {
msec: 8048
- hash: "81c03bd9dfd562e9f13784c906fa0d9e"
+ hash: "0fa5790dcbcb740d530b6333063629d6"
}
Key {
type: 7
@@ -3602,11 +3602,11 @@ VisualTest {
}
Frame {
msec: 8064
- hash: "2547fbe956bab6566c2b9137c0edc841"
+ hash: "00ae3b5d61a83fdd16fc05b7c3fde8ed"
}
Frame {
msec: 8080
- hash: "2547fbe956bab6566c2b9137c0edc841"
+ hash: "00ae3b5d61a83fdd16fc05b7c3fde8ed"
}
Key {
type: 6
@@ -3626,31 +3626,31 @@ VisualTest {
}
Frame {
msec: 8096
- hash: "2547fbe956bab6566c2b9137c0edc841"
+ hash: "00ae3b5d61a83fdd16fc05b7c3fde8ed"
}
Frame {
msec: 8112
- hash: "2547fbe956bab6566c2b9137c0edc841"
+ hash: "00ae3b5d61a83fdd16fc05b7c3fde8ed"
}
Frame {
msec: 8128
- hash: "2547fbe956bab6566c2b9137c0edc841"
+ hash: "00ae3b5d61a83fdd16fc05b7c3fde8ed"
}
Frame {
msec: 8144
- hash: "2547fbe956bab6566c2b9137c0edc841"
+ hash: "00ae3b5d61a83fdd16fc05b7c3fde8ed"
}
Frame {
msec: 8160
- hash: "2547fbe956bab6566c2b9137c0edc841"
+ hash: "00ae3b5d61a83fdd16fc05b7c3fde8ed"
}
Frame {
msec: 8176
- hash: "2547fbe956bab6566c2b9137c0edc841"
+ hash: "00ae3b5d61a83fdd16fc05b7c3fde8ed"
}
Frame {
msec: 8192
- hash: "2547fbe956bab6566c2b9137c0edc841"
+ hash: "00ae3b5d61a83fdd16fc05b7c3fde8ed"
}
Key {
type: 6
@@ -3662,19 +3662,19 @@ VisualTest {
}
Frame {
msec: 8208
- hash: "c757d4e60d18ce16f87c66e42cc81a99"
+ hash: "8f59f9f91dbcf608143925ff1f974151"
}
Frame {
msec: 8224
- hash: "c757d4e60d18ce16f87c66e42cc81a99"
+ hash: "8f59f9f91dbcf608143925ff1f974151"
}
Frame {
msec: 8240
- hash: "c757d4e60d18ce16f87c66e42cc81a99"
+ hash: "8f59f9f91dbcf608143925ff1f974151"
}
Frame {
msec: 8256
- hash: "c757d4e60d18ce16f87c66e42cc81a99"
+ hash: "8f59f9f91dbcf608143925ff1f974151"
}
Key {
type: 7
@@ -3686,19 +3686,19 @@ VisualTest {
}
Frame {
msec: 8272
- hash: "c757d4e60d18ce16f87c66e42cc81a99"
+ hash: "8f59f9f91dbcf608143925ff1f974151"
}
Frame {
msec: 8288
- hash: "c757d4e60d18ce16f87c66e42cc81a99"
+ hash: "8f59f9f91dbcf608143925ff1f974151"
}
Frame {
msec: 8304
- hash: "c757d4e60d18ce16f87c66e42cc81a99"
+ hash: "8f59f9f91dbcf608143925ff1f974151"
}
Frame {
msec: 8320
- hash: "c757d4e60d18ce16f87c66e42cc81a99"
+ hash: "8f59f9f91dbcf608143925ff1f974151"
}
Key {
type: 6
@@ -3710,19 +3710,19 @@ VisualTest {
}
Frame {
msec: 8336
- hash: "2ef578193024153dc85a2a92d10dc6c0"
+ hash: "fc48aa2746eaaf31312de3c37d821ff0"
}
Frame {
msec: 8352
- hash: "2ef578193024153dc85a2a92d10dc6c0"
+ hash: "fc48aa2746eaaf31312de3c37d821ff0"
}
Frame {
msec: 8368
- hash: "2ef578193024153dc85a2a92d10dc6c0"
+ hash: "fc48aa2746eaaf31312de3c37d821ff0"
}
Frame {
msec: 8384
- hash: "2ef578193024153dc85a2a92d10dc6c0"
+ hash: "fc48aa2746eaaf31312de3c37d821ff0"
}
Key {
type: 7
@@ -3734,23 +3734,23 @@ VisualTest {
}
Frame {
msec: 8400
- hash: "2ef578193024153dc85a2a92d10dc6c0"
+ hash: "fc48aa2746eaaf31312de3c37d821ff0"
}
Frame {
msec: 8416
- hash: "2ef578193024153dc85a2a92d10dc6c0"
+ hash: "fc48aa2746eaaf31312de3c37d821ff0"
}
Frame {
msec: 8432
- hash: "2ef578193024153dc85a2a92d10dc6c0"
+ hash: "fc48aa2746eaaf31312de3c37d821ff0"
}
Frame {
msec: 8448
- hash: "2ef578193024153dc85a2a92d10dc6c0"
+ hash: "fc48aa2746eaaf31312de3c37d821ff0"
}
Frame {
msec: 8464
- hash: "2ef578193024153dc85a2a92d10dc6c0"
+ hash: "fc48aa2746eaaf31312de3c37d821ff0"
}
Key {
type: 6
@@ -3762,19 +3762,19 @@ VisualTest {
}
Frame {
msec: 8480
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 8496
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 8512
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 8528
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Key {
type: 7
@@ -3786,35 +3786,35 @@ VisualTest {
}
Frame {
msec: 8544
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 8560
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 8576
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 8592
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 8608
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 8624
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 8640
- image: "usingMultilineEdit.8.png"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 8656
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ image: "usingMultilineEdit.9.png"
}
Key {
type: 7
@@ -3826,139 +3826,139 @@ VisualTest {
}
Frame {
msec: 8672
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 8688
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 8704
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 8720
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 8736
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 8752
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 8768
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 8784
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 8800
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 8816
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 8832
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 8848
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 8864
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 8880
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 8896
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 8912
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 8928
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 8944
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 8960
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 8976
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 8992
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 9008
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 9024
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 9040
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 9056
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 9072
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 9088
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 9104
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 9120
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 9136
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 9152
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 9168
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 9184
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 9200
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Mouse {
type: 2
@@ -3970,11 +3970,11 @@ VisualTest {
}
Frame {
msec: 9216
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 9232
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Mouse {
type: 5
@@ -3986,7 +3986,7 @@ VisualTest {
}
Frame {
msec: 9248
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Mouse {
type: 5
@@ -4006,7 +4006,7 @@ VisualTest {
}
Frame {
msec: 9264
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Mouse {
type: 5
@@ -4026,7 +4026,7 @@ VisualTest {
}
Frame {
msec: 9280
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Mouse {
type: 3
@@ -4038,43 +4038,43 @@ VisualTest {
}
Frame {
msec: 9296
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 9312
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 9328
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 9344
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 9360
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 9376
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 9392
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 9408
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 9424
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Frame {
msec: 9440
- hash: "47e926162c6d695d2bdb7ec9de05f0cc"
+ hash: "61856cf1f8f2ef6d0b365ab3d7eece51"
}
Mouse {
type: 2
@@ -4086,27 +4086,27 @@ VisualTest {
}
Frame {
msec: 9456
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 9472
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 9488
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 9504
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 9520
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 9536
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Mouse {
type: 3
@@ -4118,35 +4118,35 @@ VisualTest {
}
Frame {
msec: 9552
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 9568
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 9584
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 9600
- image: "usingMultilineEdit.9.png"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 9616
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ image: "usingMultilineEdit.10.png"
}
Frame {
msec: 9632
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 9648
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 9664
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Key {
type: 6
@@ -4158,111 +4158,111 @@ VisualTest {
}
Frame {
msec: 9680
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 9696
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 9712
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 9728
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 9744
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 9760
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 9776
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 9792
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 9808
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 9824
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 9840
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 9856
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 9872
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 9888
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 9904
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 9920
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 9936
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 9952
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 9968
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 9984
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10000
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10016
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10032
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10048
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10064
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10080
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10096
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Key {
type: 6
@@ -4274,35 +4274,35 @@ VisualTest {
}
Frame {
msec: 10112
- hash: "2ef5e7b2c0edc631765ea12d1f7abf33"
+ hash: "2ccfdac58b836aa89d2a75d0bdca6624"
}
Frame {
msec: 10128
- hash: "2ef5e7b2c0edc631765ea12d1f7abf33"
+ hash: "2ccfdac58b836aa89d2a75d0bdca6624"
}
Frame {
msec: 10144
- hash: "2ef5e7b2c0edc631765ea12d1f7abf33"
+ hash: "2ccfdac58b836aa89d2a75d0bdca6624"
}
Frame {
msec: 10160
- hash: "2ef5e7b2c0edc631765ea12d1f7abf33"
+ hash: "2ccfdac58b836aa89d2a75d0bdca6624"
}
Frame {
msec: 10176
- hash: "2ef5e7b2c0edc631765ea12d1f7abf33"
+ hash: "2ccfdac58b836aa89d2a75d0bdca6624"
}
Frame {
msec: 10192
- hash: "2ef5e7b2c0edc631765ea12d1f7abf33"
+ hash: "2ccfdac58b836aa89d2a75d0bdca6624"
}
Frame {
msec: 10208
- hash: "2ef5e7b2c0edc631765ea12d1f7abf33"
+ hash: "2ccfdac58b836aa89d2a75d0bdca6624"
}
Frame {
msec: 10224
- hash: "2ef5e7b2c0edc631765ea12d1f7abf33"
+ hash: "2ccfdac58b836aa89d2a75d0bdca6624"
}
Key {
type: 7
@@ -4314,35 +4314,35 @@ VisualTest {
}
Frame {
msec: 10240
- hash: "2ef5e7b2c0edc631765ea12d1f7abf33"
+ hash: "2ccfdac58b836aa89d2a75d0bdca6624"
}
Frame {
msec: 10256
- hash: "2ef5e7b2c0edc631765ea12d1f7abf33"
+ hash: "2ccfdac58b836aa89d2a75d0bdca6624"
}
Frame {
msec: 10272
- hash: "2ef5e7b2c0edc631765ea12d1f7abf33"
+ hash: "2ccfdac58b836aa89d2a75d0bdca6624"
}
Frame {
msec: 10288
- hash: "2ef5e7b2c0edc631765ea12d1f7abf33"
+ hash: "2ccfdac58b836aa89d2a75d0bdca6624"
}
Frame {
msec: 10304
- hash: "2ef5e7b2c0edc631765ea12d1f7abf33"
+ hash: "2ccfdac58b836aa89d2a75d0bdca6624"
}
Frame {
msec: 10320
- hash: "2ef5e7b2c0edc631765ea12d1f7abf33"
+ hash: "2ccfdac58b836aa89d2a75d0bdca6624"
}
Frame {
msec: 10336
- hash: "2ef5e7b2c0edc631765ea12d1f7abf33"
+ hash: "2ccfdac58b836aa89d2a75d0bdca6624"
}
Frame {
msec: 10352
- hash: "2ef5e7b2c0edc631765ea12d1f7abf33"
+ hash: "2ccfdac58b836aa89d2a75d0bdca6624"
}
Key {
type: 6
@@ -4354,27 +4354,27 @@ VisualTest {
}
Frame {
msec: 10368
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10384
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10400
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10416
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10432
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10448
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Key {
type: 7
@@ -4386,51 +4386,51 @@ VisualTest {
}
Frame {
msec: 10464
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10480
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10496
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10512
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10528
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10544
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10560
- image: "usingMultilineEdit.10.png"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10576
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ image: "usingMultilineEdit.11.png"
}
Frame {
msec: 10592
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10608
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10624
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10640
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Key {
type: 7
@@ -4442,246 +4442,246 @@ VisualTest {
}
Frame {
msec: 10656
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10672
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10688
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10704
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10720
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10736
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10752
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10768
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10784
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10800
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10816
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10832
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10848
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10864
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10880
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10896
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10912
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10928
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10944
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10960
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10976
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 10992
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11008
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11024
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11040
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11056
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11072
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11088
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11104
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11120
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11136
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11152
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11168
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11184
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11200
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11216
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11232
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11248
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11264
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11280
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11296
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11312
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11328
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11344
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11360
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11376
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11392
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11408
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11424
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11440
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11456
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11472
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11488
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11504
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11520
- image: "usingMultilineEdit.11.png"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11536
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ image: "usingMultilineEdit.12.png"
}
Frame {
msec: 11552
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11568
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11584
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11600
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
Frame {
msec: 11616
- hash: "c3914ed0d035a39423a1f2cf9ac6c165"
+ hash: "37a675ab007d0e0a8f3735d4d84505de"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.0.png
index 61606b2bd0..a61ba5a3fe 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.1.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.1.png
index a4b28fcd32..2a28c968aa 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.2.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.2.png
index 5be6bbb867..d1ddaa6f89 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.2.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.3.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.3.png
index a220f6545c..493c5cde57 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.3.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.4.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.4.png
index 6946707f64..2b2ce59597 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.4.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.5.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.5.png
index 4eeb8ec79f..044eea485f 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.5.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.6.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.6.png
index 4eeb8ec79f..f0748b2138 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.6.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.6.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.7.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.7.png
new file mode 100644
index 0000000000..f0748b2138
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.7.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.qml b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.qml
index f1bb5a9094..f5af59f7a5 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-MAC/wrap.qml
@@ -6,7 +6,7 @@ VisualTest {
}
Frame {
msec: 16
- hash: "b6611676a7d38162d5c0210ea9d0e291"
+ image: "wrap.0.png"
}
Key {
type: 6
@@ -18,7 +18,7 @@ VisualTest {
}
Frame {
msec: 32
- hash: "b7fc43d4344c8d39f4240dadead86b1e"
+ hash: "2b7fa5ced204393f05bf68d33e0ca2ad"
}
Key {
type: 7
@@ -30,11 +30,11 @@ VisualTest {
}
Frame {
msec: 48
- hash: "b7fc43d4344c8d39f4240dadead86b1e"
+ hash: "2b7fa5ced204393f05bf68d33e0ca2ad"
}
Frame {
msec: 64
- hash: "b7fc43d4344c8d39f4240dadead86b1e"
+ hash: "2b7fa5ced204393f05bf68d33e0ca2ad"
}
Key {
type: 7
@@ -46,11 +46,11 @@ VisualTest {
}
Frame {
msec: 80
- hash: "b7fc43d4344c8d39f4240dadead86b1e"
+ hash: "2b7fa5ced204393f05bf68d33e0ca2ad"
}
Frame {
msec: 96
- hash: "b7fc43d4344c8d39f4240dadead86b1e"
+ hash: "2b7fa5ced204393f05bf68d33e0ca2ad"
}
Key {
type: 6
@@ -62,15 +62,15 @@ VisualTest {
}
Frame {
msec: 112
- hash: "23006a07263b8b3240c4080fb1d587e9"
+ hash: "5fe2c4c01922f0b0d3f65152bd80f689"
}
Frame {
msec: 128
- hash: "23006a07263b8b3240c4080fb1d587e9"
+ hash: "5fe2c4c01922f0b0d3f65152bd80f689"
}
Frame {
msec: 144
- hash: "23006a07263b8b3240c4080fb1d587e9"
+ hash: "5fe2c4c01922f0b0d3f65152bd80f689"
}
Key {
type: 6
@@ -82,15 +82,15 @@ VisualTest {
}
Frame {
msec: 160
- hash: "8a60fd38fb9c171a15bf7e6e51bee664"
+ hash: "9645f4ad60570c8a95e9ae6dda3f5060"
}
Frame {
msec: 176
- hash: "8a60fd38fb9c171a15bf7e6e51bee664"
+ hash: "9645f4ad60570c8a95e9ae6dda3f5060"
}
Frame {
msec: 192
- hash: "8a60fd38fb9c171a15bf7e6e51bee664"
+ hash: "9645f4ad60570c8a95e9ae6dda3f5060"
}
Key {
type: 7
@@ -102,11 +102,11 @@ VisualTest {
}
Frame {
msec: 208
- hash: "8a60fd38fb9c171a15bf7e6e51bee664"
+ hash: "9645f4ad60570c8a95e9ae6dda3f5060"
}
Frame {
msec: 224
- hash: "8a60fd38fb9c171a15bf7e6e51bee664"
+ hash: "9645f4ad60570c8a95e9ae6dda3f5060"
}
Key {
type: 6
@@ -118,7 +118,7 @@ VisualTest {
}
Frame {
msec: 240
- hash: "33cdfa214f071848ed374407b4601c5a"
+ hash: "f28f446cb8de8af0a49ae6e728c996fc"
}
Key {
type: 7
@@ -130,19 +130,19 @@ VisualTest {
}
Frame {
msec: 256
- hash: "33cdfa214f071848ed374407b4601c5a"
+ hash: "f28f446cb8de8af0a49ae6e728c996fc"
}
Frame {
msec: 272
- hash: "33cdfa214f071848ed374407b4601c5a"
+ hash: "f28f446cb8de8af0a49ae6e728c996fc"
}
Frame {
msec: 288
- hash: "33cdfa214f071848ed374407b4601c5a"
+ hash: "f28f446cb8de8af0a49ae6e728c996fc"
}
Frame {
msec: 304
- hash: "33cdfa214f071848ed374407b4601c5a"
+ hash: "f28f446cb8de8af0a49ae6e728c996fc"
}
Key {
type: 7
@@ -154,11 +154,11 @@ VisualTest {
}
Frame {
msec: 320
- hash: "33cdfa214f071848ed374407b4601c5a"
+ hash: "f28f446cb8de8af0a49ae6e728c996fc"
}
Frame {
msec: 336
- hash: "33cdfa214f071848ed374407b4601c5a"
+ hash: "f28f446cb8de8af0a49ae6e728c996fc"
}
Key {
type: 6
@@ -170,19 +170,19 @@ VisualTest {
}
Frame {
msec: 352
- hash: "80794c72fe7dda72997122a89f33e6e4"
+ hash: "98c390c519cd0476de17be8bb49b0f65"
}
Frame {
msec: 368
- hash: "80794c72fe7dda72997122a89f33e6e4"
+ hash: "98c390c519cd0476de17be8bb49b0f65"
}
Frame {
msec: 384
- hash: "80794c72fe7dda72997122a89f33e6e4"
+ hash: "98c390c519cd0476de17be8bb49b0f65"
}
Frame {
msec: 400
- hash: "80794c72fe7dda72997122a89f33e6e4"
+ hash: "98c390c519cd0476de17be8bb49b0f65"
}
Key {
type: 7
@@ -194,19 +194,19 @@ VisualTest {
}
Frame {
msec: 416
- hash: "80794c72fe7dda72997122a89f33e6e4"
+ hash: "98c390c519cd0476de17be8bb49b0f65"
}
Frame {
msec: 432
- hash: "80794c72fe7dda72997122a89f33e6e4"
+ hash: "98c390c519cd0476de17be8bb49b0f65"
}
Frame {
msec: 448
- hash: "80794c72fe7dda72997122a89f33e6e4"
+ hash: "98c390c519cd0476de17be8bb49b0f65"
}
Frame {
msec: 464
- hash: "80794c72fe7dda72997122a89f33e6e4"
+ hash: "98c390c519cd0476de17be8bb49b0f65"
}
Key {
type: 6
@@ -218,19 +218,19 @@ VisualTest {
}
Frame {
msec: 480
- hash: "bfcd901aee3d9db796597834bec1f173"
+ hash: "d842a866459f3ecb4fa4fc1426a05411"
}
Frame {
msec: 496
- hash: "bfcd901aee3d9db796597834bec1f173"
+ hash: "d842a866459f3ecb4fa4fc1426a05411"
}
Frame {
msec: 512
- hash: "bfcd901aee3d9db796597834bec1f173"
+ hash: "d842a866459f3ecb4fa4fc1426a05411"
}
Frame {
msec: 528
- hash: "bfcd901aee3d9db796597834bec1f173"
+ hash: "d842a866459f3ecb4fa4fc1426a05411"
}
Key {
type: 6
@@ -250,23 +250,23 @@ VisualTest {
}
Frame {
msec: 544
- hash: "965102cb74dcf695b950616ce5c42875"
+ hash: "4c858bfd2e8ba7a959bbf2d1e17865e7"
}
Frame {
msec: 560
- hash: "965102cb74dcf695b950616ce5c42875"
+ hash: "4c858bfd2e8ba7a959bbf2d1e17865e7"
}
Frame {
msec: 576
- hash: "965102cb74dcf695b950616ce5c42875"
+ hash: "4c858bfd2e8ba7a959bbf2d1e17865e7"
}
Frame {
msec: 592
- hash: "965102cb74dcf695b950616ce5c42875"
+ hash: "4c858bfd2e8ba7a959bbf2d1e17865e7"
}
Frame {
msec: 608
- hash: "965102cb74dcf695b950616ce5c42875"
+ hash: "4c858bfd2e8ba7a959bbf2d1e17865e7"
}
Key {
type: 7
@@ -286,19 +286,19 @@ VisualTest {
}
Frame {
msec: 624
- hash: "73556f0cf2c8d77881a7d3881025e343"
+ hash: "9eed9c764b2c5b73a60df84fc0d68756"
}
Frame {
msec: 640
- hash: "73556f0cf2c8d77881a7d3881025e343"
+ hash: "9eed9c764b2c5b73a60df84fc0d68756"
}
Frame {
msec: 656
- hash: "73556f0cf2c8d77881a7d3881025e343"
+ hash: "9eed9c764b2c5b73a60df84fc0d68756"
}
Frame {
msec: 672
- hash: "73556f0cf2c8d77881a7d3881025e343"
+ hash: "9eed9c764b2c5b73a60df84fc0d68756"
}
Key {
type: 7
@@ -310,11 +310,11 @@ VisualTest {
}
Frame {
msec: 688
- hash: "73556f0cf2c8d77881a7d3881025e343"
+ hash: "9eed9c764b2c5b73a60df84fc0d68756"
}
Frame {
msec: 704
- hash: "73556f0cf2c8d77881a7d3881025e343"
+ hash: "9eed9c764b2c5b73a60df84fc0d68756"
}
Key {
type: 6
@@ -326,23 +326,23 @@ VisualTest {
}
Frame {
msec: 720
- hash: "a75bdb09a48b90936d2d4de647e7323d"
+ hash: "7a1d64574a0a6b90695629fd443274e6"
}
Frame {
msec: 736
- hash: "a75bdb09a48b90936d2d4de647e7323d"
+ hash: "7a1d64574a0a6b90695629fd443274e6"
}
Frame {
msec: 752
- hash: "a75bdb09a48b90936d2d4de647e7323d"
+ hash: "7a1d64574a0a6b90695629fd443274e6"
}
Frame {
msec: 768
- hash: "a75bdb09a48b90936d2d4de647e7323d"
+ hash: "7a1d64574a0a6b90695629fd443274e6"
}
Frame {
msec: 784
- hash: "a75bdb09a48b90936d2d4de647e7323d"
+ hash: "7a1d64574a0a6b90695629fd443274e6"
}
Key {
type: 7
@@ -354,7 +354,7 @@ VisualTest {
}
Frame {
msec: 800
- hash: "a75bdb09a48b90936d2d4de647e7323d"
+ hash: "7a1d64574a0a6b90695629fd443274e6"
}
Key {
type: 6
@@ -366,15 +366,15 @@ VisualTest {
}
Frame {
msec: 816
- hash: "f37ab5f03e7cf86e3589fc0711b23a53"
+ hash: "31e9c4500448142ee2be3171a2bd5385"
}
Frame {
msec: 832
- hash: "f37ab5f03e7cf86e3589fc0711b23a53"
+ hash: "31e9c4500448142ee2be3171a2bd5385"
}
Frame {
msec: 848
- hash: "f37ab5f03e7cf86e3589fc0711b23a53"
+ hash: "31e9c4500448142ee2be3171a2bd5385"
}
Key {
type: 7
@@ -386,15 +386,15 @@ VisualTest {
}
Frame {
msec: 864
- hash: "f37ab5f03e7cf86e3589fc0711b23a53"
+ hash: "31e9c4500448142ee2be3171a2bd5385"
}
Frame {
msec: 880
- hash: "f37ab5f03e7cf86e3589fc0711b23a53"
+ hash: "31e9c4500448142ee2be3171a2bd5385"
}
Frame {
msec: 896
- hash: "f37ab5f03e7cf86e3589fc0711b23a53"
+ hash: "31e9c4500448142ee2be3171a2bd5385"
}
Key {
type: 6
@@ -406,27 +406,27 @@ VisualTest {
}
Frame {
msec: 912
- hash: "219e5edd5f138cd113f0b929460cf074"
+ hash: "7fcfd3706ba11c43ac0a4c2f96b1d80d"
}
Frame {
msec: 928
- hash: "219e5edd5f138cd113f0b929460cf074"
+ hash: "7fcfd3706ba11c43ac0a4c2f96b1d80d"
}
Frame {
msec: 944
- hash: "219e5edd5f138cd113f0b929460cf074"
+ hash: "7fcfd3706ba11c43ac0a4c2f96b1d80d"
}
Frame {
msec: 960
- image: "wrap.0.png"
+ hash: "7fcfd3706ba11c43ac0a4c2f96b1d80d"
}
Frame {
msec: 976
- hash: "219e5edd5f138cd113f0b929460cf074"
+ image: "wrap.1.png"
}
Frame {
msec: 992
- hash: "219e5edd5f138cd113f0b929460cf074"
+ hash: "7fcfd3706ba11c43ac0a4c2f96b1d80d"
}
Key {
type: 6
@@ -446,23 +446,23 @@ VisualTest {
}
Frame {
msec: 1008
- hash: "79cf23a46fbbeddbef10ef2a62533342"
+ hash: "c05191599361c4171c086630f9608cd0"
}
Frame {
msec: 1024
- hash: "79cf23a46fbbeddbef10ef2a62533342"
+ hash: "c05191599361c4171c086630f9608cd0"
}
Frame {
msec: 1040
- hash: "79cf23a46fbbeddbef10ef2a62533342"
+ hash: "c05191599361c4171c086630f9608cd0"
}
Frame {
msec: 1056
- hash: "79cf23a46fbbeddbef10ef2a62533342"
+ hash: "c05191599361c4171c086630f9608cd0"
}
Frame {
msec: 1072
- hash: "79cf23a46fbbeddbef10ef2a62533342"
+ hash: "c05191599361c4171c086630f9608cd0"
}
Key {
type: 7
@@ -474,31 +474,31 @@ VisualTest {
}
Frame {
msec: 1088
- hash: "79cf23a46fbbeddbef10ef2a62533342"
+ hash: "c05191599361c4171c086630f9608cd0"
}
Frame {
msec: 1104
- hash: "79cf23a46fbbeddbef10ef2a62533342"
+ hash: "c05191599361c4171c086630f9608cd0"
}
Frame {
msec: 1120
- hash: "79cf23a46fbbeddbef10ef2a62533342"
+ hash: "c05191599361c4171c086630f9608cd0"
}
Frame {
msec: 1136
- hash: "79cf23a46fbbeddbef10ef2a62533342"
+ hash: "c05191599361c4171c086630f9608cd0"
}
Frame {
msec: 1152
- hash: "79cf23a46fbbeddbef10ef2a62533342"
+ hash: "c05191599361c4171c086630f9608cd0"
}
Frame {
msec: 1168
- hash: "79cf23a46fbbeddbef10ef2a62533342"
+ hash: "c05191599361c4171c086630f9608cd0"
}
Frame {
msec: 1184
- hash: "79cf23a46fbbeddbef10ef2a62533342"
+ hash: "c05191599361c4171c086630f9608cd0"
}
Key {
type: 6
@@ -510,23 +510,23 @@ VisualTest {
}
Frame {
msec: 1200
- hash: "ccb17209d85c7e49fbb0b5f9134fc39c"
+ hash: "088e0567dd568019ccb2114d3108a1dd"
}
Frame {
msec: 1216
- hash: "ccb17209d85c7e49fbb0b5f9134fc39c"
+ hash: "088e0567dd568019ccb2114d3108a1dd"
}
Frame {
msec: 1232
- hash: "ccb17209d85c7e49fbb0b5f9134fc39c"
+ hash: "088e0567dd568019ccb2114d3108a1dd"
}
Frame {
msec: 1248
- hash: "ccb17209d85c7e49fbb0b5f9134fc39c"
+ hash: "088e0567dd568019ccb2114d3108a1dd"
}
Frame {
msec: 1264
- hash: "ccb17209d85c7e49fbb0b5f9134fc39c"
+ hash: "088e0567dd568019ccb2114d3108a1dd"
}
Key {
type: 7
@@ -546,11 +546,11 @@ VisualTest {
}
Frame {
msec: 1280
- hash: "29aaa213e4b146199289b5383528bc88"
+ hash: "35fde81ed66c4804b2b31c0d93fb010a"
}
Frame {
msec: 1296
- hash: "29aaa213e4b146199289b5383528bc88"
+ hash: "35fde81ed66c4804b2b31c0d93fb010a"
}
Key {
type: 6
@@ -562,15 +562,15 @@ VisualTest {
}
Frame {
msec: 1312
- hash: "7f9da386497bca2dc19b1c3ab475f453"
+ hash: "0b212b2b1354e99db328c30d4c8e8b4e"
}
Frame {
msec: 1328
- hash: "7f9da386497bca2dc19b1c3ab475f453"
+ hash: "0b212b2b1354e99db328c30d4c8e8b4e"
}
Frame {
msec: 1344
- hash: "7f9da386497bca2dc19b1c3ab475f453"
+ hash: "0b212b2b1354e99db328c30d4c8e8b4e"
}
Key {
type: 7
@@ -582,11 +582,11 @@ VisualTest {
}
Frame {
msec: 1360
- hash: "7f9da386497bca2dc19b1c3ab475f453"
+ hash: "0b212b2b1354e99db328c30d4c8e8b4e"
}
Frame {
msec: 1376
- hash: "7f9da386497bca2dc19b1c3ab475f453"
+ hash: "0b212b2b1354e99db328c30d4c8e8b4e"
}
Key {
type: 7
@@ -598,19 +598,19 @@ VisualTest {
}
Frame {
msec: 1392
- hash: "7f9da386497bca2dc19b1c3ab475f453"
+ hash: "0b212b2b1354e99db328c30d4c8e8b4e"
}
Frame {
msec: 1408
- hash: "7f9da386497bca2dc19b1c3ab475f453"
+ hash: "0b212b2b1354e99db328c30d4c8e8b4e"
}
Frame {
msec: 1424
- hash: "7f9da386497bca2dc19b1c3ab475f453"
+ hash: "0b212b2b1354e99db328c30d4c8e8b4e"
}
Frame {
msec: 1440
- hash: "7f9da386497bca2dc19b1c3ab475f453"
+ hash: "0b212b2b1354e99db328c30d4c8e8b4e"
}
Key {
type: 6
@@ -622,23 +622,23 @@ VisualTest {
}
Frame {
msec: 1456
- hash: "eb683a6b2a9ed2cf4ea5cb424670c9d2"
+ hash: "1d19bc237d8de1598a629f2aea7e8e97"
}
Frame {
msec: 1472
- hash: "eb683a6b2a9ed2cf4ea5cb424670c9d2"
+ hash: "1d19bc237d8de1598a629f2aea7e8e97"
}
Frame {
msec: 1488
- hash: "eb683a6b2a9ed2cf4ea5cb424670c9d2"
+ hash: "1d19bc237d8de1598a629f2aea7e8e97"
}
Frame {
msec: 1504
- hash: "eb683a6b2a9ed2cf4ea5cb424670c9d2"
+ hash: "1d19bc237d8de1598a629f2aea7e8e97"
}
Frame {
msec: 1520
- hash: "eb683a6b2a9ed2cf4ea5cb424670c9d2"
+ hash: "1d19bc237d8de1598a629f2aea7e8e97"
}
Key {
type: 7
@@ -650,11 +650,11 @@ VisualTest {
}
Frame {
msec: 1536
- hash: "eb683a6b2a9ed2cf4ea5cb424670c9d2"
+ hash: "1d19bc237d8de1598a629f2aea7e8e97"
}
Frame {
msec: 1552
- hash: "eb683a6b2a9ed2cf4ea5cb424670c9d2"
+ hash: "1d19bc237d8de1598a629f2aea7e8e97"
}
Key {
type: 6
@@ -666,23 +666,23 @@ VisualTest {
}
Frame {
msec: 1568
- hash: "c5c789ca287cf673be808f3e10e054a2"
+ hash: "df3025b2de2cf6cee2b918c6d13834c6"
}
Frame {
msec: 1584
- hash: "c5c789ca287cf673be808f3e10e054a2"
+ hash: "df3025b2de2cf6cee2b918c6d13834c6"
}
Frame {
msec: 1600
- hash: "c5c789ca287cf673be808f3e10e054a2"
+ hash: "df3025b2de2cf6cee2b918c6d13834c6"
}
Frame {
msec: 1616
- hash: "c5c789ca287cf673be808f3e10e054a2"
+ hash: "df3025b2de2cf6cee2b918c6d13834c6"
}
Frame {
msec: 1632
- hash: "c5c789ca287cf673be808f3e10e054a2"
+ hash: "df3025b2de2cf6cee2b918c6d13834c6"
}
Key {
type: 6
@@ -702,23 +702,23 @@ VisualTest {
}
Frame {
msec: 1648
- hash: "5e39fc7058b64afa7036002a2dae8976"
+ hash: "b19baef8a5d8efd96d5ec9e729a9d42a"
}
Frame {
msec: 1664
- hash: "5e39fc7058b64afa7036002a2dae8976"
+ hash: "b19baef8a5d8efd96d5ec9e729a9d42a"
}
Frame {
msec: 1680
- hash: "5e39fc7058b64afa7036002a2dae8976"
+ hash: "b19baef8a5d8efd96d5ec9e729a9d42a"
}
Frame {
msec: 1696
- hash: "5e39fc7058b64afa7036002a2dae8976"
+ hash: "b19baef8a5d8efd96d5ec9e729a9d42a"
}
Frame {
msec: 1712
- hash: "5e39fc7058b64afa7036002a2dae8976"
+ hash: "b19baef8a5d8efd96d5ec9e729a9d42a"
}
Key {
type: 6
@@ -730,15 +730,15 @@ VisualTest {
}
Frame {
msec: 1728
- hash: "687e69083430812cd42eff708229a176"
+ hash: "914e61f38d7f2b5a465037d6ef1ddaba"
}
Frame {
msec: 1744
- hash: "687e69083430812cd42eff708229a176"
+ hash: "914e61f38d7f2b5a465037d6ef1ddaba"
}
Frame {
msec: 1760
- hash: "687e69083430812cd42eff708229a176"
+ hash: "914e61f38d7f2b5a465037d6ef1ddaba"
}
Key {
type: 7
@@ -750,7 +750,7 @@ VisualTest {
}
Frame {
msec: 1776
- hash: "687e69083430812cd42eff708229a176"
+ hash: "914e61f38d7f2b5a465037d6ef1ddaba"
}
Key {
type: 6
@@ -762,11 +762,11 @@ VisualTest {
}
Frame {
msec: 1792
- hash: "f33cd379acd2785298aa74f78e22bdfb"
+ hash: "e816134a8fef0bbee8e94c0f9561750b"
}
Frame {
msec: 1808
- hash: "f33cd379acd2785298aa74f78e22bdfb"
+ hash: "e816134a8fef0bbee8e94c0f9561750b"
}
Key {
type: 7
@@ -778,19 +778,19 @@ VisualTest {
}
Frame {
msec: 1824
- hash: "f33cd379acd2785298aa74f78e22bdfb"
+ hash: "e816134a8fef0bbee8e94c0f9561750b"
}
Frame {
msec: 1840
- hash: "f33cd379acd2785298aa74f78e22bdfb"
+ hash: "e816134a8fef0bbee8e94c0f9561750b"
}
Frame {
msec: 1856
- hash: "f33cd379acd2785298aa74f78e22bdfb"
+ hash: "e816134a8fef0bbee8e94c0f9561750b"
}
Frame {
msec: 1872
- hash: "f33cd379acd2785298aa74f78e22bdfb"
+ hash: "e816134a8fef0bbee8e94c0f9561750b"
}
Key {
type: 7
@@ -802,23 +802,23 @@ VisualTest {
}
Frame {
msec: 1888
- hash: "f33cd379acd2785298aa74f78e22bdfb"
+ hash: "e816134a8fef0bbee8e94c0f9561750b"
}
Frame {
msec: 1904
- hash: "f33cd379acd2785298aa74f78e22bdfb"
+ hash: "e816134a8fef0bbee8e94c0f9561750b"
}
Frame {
msec: 1920
- image: "wrap.1.png"
+ hash: "e816134a8fef0bbee8e94c0f9561750b"
}
Frame {
msec: 1936
- hash: "f33cd379acd2785298aa74f78e22bdfb"
+ image: "wrap.2.png"
}
Frame {
msec: 1952
- hash: "f33cd379acd2785298aa74f78e22bdfb"
+ hash: "e816134a8fef0bbee8e94c0f9561750b"
}
Key {
type: 6
@@ -830,27 +830,27 @@ VisualTest {
}
Frame {
msec: 1968
- hash: "205e79eb4a7e515ffa5bd24677408e79"
+ hash: "9552729028c8e129e19c06ff35bb085b"
}
Frame {
msec: 1984
- hash: "205e79eb4a7e515ffa5bd24677408e79"
+ hash: "9552729028c8e129e19c06ff35bb085b"
}
Frame {
msec: 2000
- hash: "205e79eb4a7e515ffa5bd24677408e79"
+ hash: "9552729028c8e129e19c06ff35bb085b"
}
Frame {
msec: 2016
- hash: "205e79eb4a7e515ffa5bd24677408e79"
+ hash: "9552729028c8e129e19c06ff35bb085b"
}
Frame {
msec: 2032
- hash: "205e79eb4a7e515ffa5bd24677408e79"
+ hash: "9552729028c8e129e19c06ff35bb085b"
}
Frame {
msec: 2048
- hash: "205e79eb4a7e515ffa5bd24677408e79"
+ hash: "9552729028c8e129e19c06ff35bb085b"
}
Key {
type: 6
@@ -862,7 +862,7 @@ VisualTest {
}
Frame {
msec: 2064
- hash: "2c1570a63d3eff7346c58356610a2f44"
+ hash: "2dbdfe3bd309b98af7ed8980725f3ee7"
}
Key {
type: 7
@@ -874,15 +874,15 @@ VisualTest {
}
Frame {
msec: 2080
- hash: "2c1570a63d3eff7346c58356610a2f44"
+ hash: "2dbdfe3bd309b98af7ed8980725f3ee7"
}
Frame {
msec: 2096
- hash: "2c1570a63d3eff7346c58356610a2f44"
+ hash: "2dbdfe3bd309b98af7ed8980725f3ee7"
}
Frame {
msec: 2112
- hash: "2c1570a63d3eff7346c58356610a2f44"
+ hash: "2dbdfe3bd309b98af7ed8980725f3ee7"
}
Key {
type: 7
@@ -894,27 +894,27 @@ VisualTest {
}
Frame {
msec: 2128
- hash: "2c1570a63d3eff7346c58356610a2f44"
+ hash: "2dbdfe3bd309b98af7ed8980725f3ee7"
}
Frame {
msec: 2144
- hash: "2c1570a63d3eff7346c58356610a2f44"
+ hash: "2dbdfe3bd309b98af7ed8980725f3ee7"
}
Frame {
msec: 2160
- hash: "2c1570a63d3eff7346c58356610a2f44"
+ hash: "2dbdfe3bd309b98af7ed8980725f3ee7"
}
Frame {
msec: 2176
- hash: "2c1570a63d3eff7346c58356610a2f44"
+ hash: "2dbdfe3bd309b98af7ed8980725f3ee7"
}
Frame {
msec: 2192
- hash: "2c1570a63d3eff7346c58356610a2f44"
+ hash: "2dbdfe3bd309b98af7ed8980725f3ee7"
}
Frame {
msec: 2208
- hash: "2c1570a63d3eff7346c58356610a2f44"
+ hash: "2dbdfe3bd309b98af7ed8980725f3ee7"
}
Key {
type: 6
@@ -926,23 +926,23 @@ VisualTest {
}
Frame {
msec: 2224
- hash: "8202436b4e184adc69cdf7dd735afe33"
+ hash: "28748f90f61954b94377768788f1634d"
}
Frame {
msec: 2240
- hash: "8202436b4e184adc69cdf7dd735afe33"
+ hash: "28748f90f61954b94377768788f1634d"
}
Frame {
msec: 2256
- hash: "8202436b4e184adc69cdf7dd735afe33"
+ hash: "28748f90f61954b94377768788f1634d"
}
Frame {
msec: 2272
- hash: "8202436b4e184adc69cdf7dd735afe33"
+ hash: "28748f90f61954b94377768788f1634d"
}
Frame {
msec: 2288
- hash: "8202436b4e184adc69cdf7dd735afe33"
+ hash: "28748f90f61954b94377768788f1634d"
}
Key {
type: 6
@@ -954,7 +954,7 @@ VisualTest {
}
Frame {
msec: 2304
- hash: "855069b52f6714d54f4005751b8e2930"
+ hash: "2cf8ad2ba8ddcde4dd8549f034a77005"
}
Key {
type: 7
@@ -966,15 +966,15 @@ VisualTest {
}
Frame {
msec: 2320
- hash: "855069b52f6714d54f4005751b8e2930"
+ hash: "2cf8ad2ba8ddcde4dd8549f034a77005"
}
Frame {
msec: 2336
- hash: "855069b52f6714d54f4005751b8e2930"
+ hash: "2cf8ad2ba8ddcde4dd8549f034a77005"
}
Frame {
msec: 2352
- hash: "855069b52f6714d54f4005751b8e2930"
+ hash: "2cf8ad2ba8ddcde4dd8549f034a77005"
}
Key {
type: 6
@@ -986,11 +986,11 @@ VisualTest {
}
Frame {
msec: 2368
- hash: "6e1a97a3e491f24e34d4b24bf3091afc"
+ hash: "95b6ce7c01461847a3f7aff88aa8ad9d"
}
Frame {
msec: 2384
- hash: "6e1a97a3e491f24e34d4b24bf3091afc"
+ hash: "95b6ce7c01461847a3f7aff88aa8ad9d"
}
Key {
type: 7
@@ -1002,15 +1002,15 @@ VisualTest {
}
Frame {
msec: 2400
- hash: "6e1a97a3e491f24e34d4b24bf3091afc"
+ hash: "95b6ce7c01461847a3f7aff88aa8ad9d"
}
Frame {
msec: 2416
- hash: "6e1a97a3e491f24e34d4b24bf3091afc"
+ hash: "95b6ce7c01461847a3f7aff88aa8ad9d"
}
Frame {
msec: 2432
- hash: "6e1a97a3e491f24e34d4b24bf3091afc"
+ hash: "95b6ce7c01461847a3f7aff88aa8ad9d"
}
Key {
type: 7
@@ -1022,15 +1022,15 @@ VisualTest {
}
Frame {
msec: 2448
- hash: "6e1a97a3e491f24e34d4b24bf3091afc"
+ hash: "95b6ce7c01461847a3f7aff88aa8ad9d"
}
Frame {
msec: 2464
- hash: "6e1a97a3e491f24e34d4b24bf3091afc"
+ hash: "95b6ce7c01461847a3f7aff88aa8ad9d"
}
Frame {
msec: 2480
- hash: "6e1a97a3e491f24e34d4b24bf3091afc"
+ hash: "95b6ce7c01461847a3f7aff88aa8ad9d"
}
Key {
type: 6
@@ -1042,19 +1042,19 @@ VisualTest {
}
Frame {
msec: 2496
- hash: "12eb5152181e0bff993dc1be087969f9"
+ hash: "81872138f3cafb1cf06009df77af1461"
}
Frame {
msec: 2512
- hash: "12eb5152181e0bff993dc1be087969f9"
+ hash: "81872138f3cafb1cf06009df77af1461"
}
Frame {
msec: 2528
- hash: "12eb5152181e0bff993dc1be087969f9"
+ hash: "81872138f3cafb1cf06009df77af1461"
}
Frame {
msec: 2544
- hash: "12eb5152181e0bff993dc1be087969f9"
+ hash: "81872138f3cafb1cf06009df77af1461"
}
Key {
type: 7
@@ -1066,27 +1066,27 @@ VisualTest {
}
Frame {
msec: 2560
- hash: "12eb5152181e0bff993dc1be087969f9"
+ hash: "81872138f3cafb1cf06009df77af1461"
}
Frame {
msec: 2576
- hash: "12eb5152181e0bff993dc1be087969f9"
+ hash: "81872138f3cafb1cf06009df77af1461"
}
Frame {
msec: 2592
- hash: "12eb5152181e0bff993dc1be087969f9"
+ hash: "81872138f3cafb1cf06009df77af1461"
}
Frame {
msec: 2608
- hash: "12eb5152181e0bff993dc1be087969f9"
+ hash: "81872138f3cafb1cf06009df77af1461"
}
Frame {
msec: 2624
- hash: "12eb5152181e0bff993dc1be087969f9"
+ hash: "81872138f3cafb1cf06009df77af1461"
}
Frame {
msec: 2640
- hash: "12eb5152181e0bff993dc1be087969f9"
+ hash: "81872138f3cafb1cf06009df77af1461"
}
Key {
type: 6
@@ -1098,19 +1098,19 @@ VisualTest {
}
Frame {
msec: 2656
- hash: "8a77655cae6c04453e6dc8a2321d1a32"
+ hash: "dfa35c08894d7ed748b8846fa3ce8fac"
}
Frame {
msec: 2672
- hash: "8a77655cae6c04453e6dc8a2321d1a32"
+ hash: "dfa35c08894d7ed748b8846fa3ce8fac"
}
Frame {
msec: 2688
- hash: "8a77655cae6c04453e6dc8a2321d1a32"
+ hash: "dfa35c08894d7ed748b8846fa3ce8fac"
}
Frame {
msec: 2704
- hash: "8a77655cae6c04453e6dc8a2321d1a32"
+ hash: "dfa35c08894d7ed748b8846fa3ce8fac"
}
Key {
type: 7
@@ -1122,15 +1122,15 @@ VisualTest {
}
Frame {
msec: 2720
- hash: "8a77655cae6c04453e6dc8a2321d1a32"
+ hash: "dfa35c08894d7ed748b8846fa3ce8fac"
}
Frame {
msec: 2736
- hash: "8a77655cae6c04453e6dc8a2321d1a32"
+ hash: "dfa35c08894d7ed748b8846fa3ce8fac"
}
Frame {
msec: 2752
- hash: "8a77655cae6c04453e6dc8a2321d1a32"
+ hash: "dfa35c08894d7ed748b8846fa3ce8fac"
}
Key {
type: 6
@@ -1142,23 +1142,23 @@ VisualTest {
}
Frame {
msec: 2768
- hash: "c42349fe4b75e5d56a04ec6462cb0780"
+ hash: "9decac3d9243bebdc7699fcb77a31f21"
}
Frame {
msec: 2784
- hash: "c42349fe4b75e5d56a04ec6462cb0780"
+ hash: "9decac3d9243bebdc7699fcb77a31f21"
}
Frame {
msec: 2800
- hash: "c42349fe4b75e5d56a04ec6462cb0780"
+ hash: "9decac3d9243bebdc7699fcb77a31f21"
}
Frame {
msec: 2816
- hash: "c42349fe4b75e5d56a04ec6462cb0780"
+ hash: "9decac3d9243bebdc7699fcb77a31f21"
}
Frame {
msec: 2832
- hash: "c42349fe4b75e5d56a04ec6462cb0780"
+ hash: "9decac3d9243bebdc7699fcb77a31f21"
}
Key {
type: 6
@@ -1178,19 +1178,19 @@ VisualTest {
}
Frame {
msec: 2848
- hash: "973c163b1ea4e6189e788b7f37013185"
+ hash: "6a1bb7dd22f3e090008ba265c30f9c2d"
}
Frame {
msec: 2864
- hash: "973c163b1ea4e6189e788b7f37013185"
+ hash: "6a1bb7dd22f3e090008ba265c30f9c2d"
}
Frame {
msec: 2880
- image: "wrap.2.png"
+ hash: "6a1bb7dd22f3e090008ba265c30f9c2d"
}
Frame {
msec: 2896
- hash: "973c163b1ea4e6189e788b7f37013185"
+ image: "wrap.3.png"
}
Key {
type: 6
@@ -1202,11 +1202,11 @@ VisualTest {
}
Frame {
msec: 2912
- hash: "a847abc1ef9a41a741f8dce6bc68e6a1"
+ hash: "ee39b3014e140aff2f974f3b919f85f4"
}
Frame {
msec: 2928
- hash: "a847abc1ef9a41a741f8dce6bc68e6a1"
+ hash: "ee39b3014e140aff2f974f3b919f85f4"
}
Key {
type: 7
@@ -1218,11 +1218,11 @@ VisualTest {
}
Frame {
msec: 2944
- hash: "a847abc1ef9a41a741f8dce6bc68e6a1"
+ hash: "ee39b3014e140aff2f974f3b919f85f4"
}
Frame {
msec: 2960
- hash: "a847abc1ef9a41a741f8dce6bc68e6a1"
+ hash: "ee39b3014e140aff2f974f3b919f85f4"
}
Key {
type: 7
@@ -1234,35 +1234,35 @@ VisualTest {
}
Frame {
msec: 2976
- hash: "a847abc1ef9a41a741f8dce6bc68e6a1"
+ hash: "ee39b3014e140aff2f974f3b919f85f4"
}
Frame {
msec: 2992
- hash: "a847abc1ef9a41a741f8dce6bc68e6a1"
+ hash: "ee39b3014e140aff2f974f3b919f85f4"
}
Frame {
msec: 3008
- hash: "a847abc1ef9a41a741f8dce6bc68e6a1"
+ hash: "ee39b3014e140aff2f974f3b919f85f4"
}
Frame {
msec: 3024
- hash: "a847abc1ef9a41a741f8dce6bc68e6a1"
+ hash: "ee39b3014e140aff2f974f3b919f85f4"
}
Frame {
msec: 3040
- hash: "a847abc1ef9a41a741f8dce6bc68e6a1"
+ hash: "ee39b3014e140aff2f974f3b919f85f4"
}
Frame {
msec: 3056
- hash: "a847abc1ef9a41a741f8dce6bc68e6a1"
+ hash: "ee39b3014e140aff2f974f3b919f85f4"
}
Frame {
msec: 3072
- hash: "a847abc1ef9a41a741f8dce6bc68e6a1"
+ hash: "ee39b3014e140aff2f974f3b919f85f4"
}
Frame {
msec: 3088
- hash: "a847abc1ef9a41a741f8dce6bc68e6a1"
+ hash: "ee39b3014e140aff2f974f3b919f85f4"
}
Key {
type: 6
@@ -1274,23 +1274,23 @@ VisualTest {
}
Frame {
msec: 3104
- hash: "93d3b56a5070a84164169ab1869d6ed0"
+ hash: "d448179ec6bba91f3f70be821710a8c7"
}
Frame {
msec: 3120
- hash: "93d3b56a5070a84164169ab1869d6ed0"
+ hash: "d448179ec6bba91f3f70be821710a8c7"
}
Frame {
msec: 3136
- hash: "93d3b56a5070a84164169ab1869d6ed0"
+ hash: "d448179ec6bba91f3f70be821710a8c7"
}
Frame {
msec: 3152
- hash: "93d3b56a5070a84164169ab1869d6ed0"
+ hash: "d448179ec6bba91f3f70be821710a8c7"
}
Frame {
msec: 3168
- hash: "93d3b56a5070a84164169ab1869d6ed0"
+ hash: "d448179ec6bba91f3f70be821710a8c7"
}
Key {
type: 7
@@ -1302,23 +1302,23 @@ VisualTest {
}
Frame {
msec: 3184
- hash: "93d3b56a5070a84164169ab1869d6ed0"
+ hash: "d448179ec6bba91f3f70be821710a8c7"
}
Frame {
msec: 3200
- hash: "93d3b56a5070a84164169ab1869d6ed0"
+ hash: "d448179ec6bba91f3f70be821710a8c7"
}
Frame {
msec: 3216
- hash: "93d3b56a5070a84164169ab1869d6ed0"
+ hash: "d448179ec6bba91f3f70be821710a8c7"
}
Frame {
msec: 3232
- hash: "93d3b56a5070a84164169ab1869d6ed0"
+ hash: "d448179ec6bba91f3f70be821710a8c7"
}
Frame {
msec: 3248
- hash: "93d3b56a5070a84164169ab1869d6ed0"
+ hash: "d448179ec6bba91f3f70be821710a8c7"
}
Key {
type: 6
@@ -1330,15 +1330,15 @@ VisualTest {
}
Frame {
msec: 3264
- hash: "60480b61f29a34c790da8fe1bfd98755"
+ hash: "e30b5aa9b5d08fba758fe781812f096d"
}
Frame {
msec: 3280
- hash: "60480b61f29a34c790da8fe1bfd98755"
+ hash: "e30b5aa9b5d08fba758fe781812f096d"
}
Frame {
msec: 3296
- hash: "60480b61f29a34c790da8fe1bfd98755"
+ hash: "e30b5aa9b5d08fba758fe781812f096d"
}
Key {
type: 7
@@ -1350,15 +1350,15 @@ VisualTest {
}
Frame {
msec: 3312
- hash: "60480b61f29a34c790da8fe1bfd98755"
+ hash: "e30b5aa9b5d08fba758fe781812f096d"
}
Frame {
msec: 3328
- hash: "60480b61f29a34c790da8fe1bfd98755"
+ hash: "e30b5aa9b5d08fba758fe781812f096d"
}
Frame {
msec: 3344
- hash: "60480b61f29a34c790da8fe1bfd98755"
+ hash: "e30b5aa9b5d08fba758fe781812f096d"
}
Key {
type: 6
@@ -1370,23 +1370,23 @@ VisualTest {
}
Frame {
msec: 3360
- hash: "c6f235590c03170581dfabc07bf9c20b"
+ hash: "ba932735c5079ad6562050b6e332d2e7"
}
Frame {
msec: 3376
- hash: "c6f235590c03170581dfabc07bf9c20b"
+ hash: "ba932735c5079ad6562050b6e332d2e7"
}
Frame {
msec: 3392
- hash: "c6f235590c03170581dfabc07bf9c20b"
+ hash: "ba932735c5079ad6562050b6e332d2e7"
}
Frame {
msec: 3408
- hash: "c6f235590c03170581dfabc07bf9c20b"
+ hash: "ba932735c5079ad6562050b6e332d2e7"
}
Frame {
msec: 3424
- hash: "c6f235590c03170581dfabc07bf9c20b"
+ hash: "ba932735c5079ad6562050b6e332d2e7"
}
Key {
type: 7
@@ -1398,15 +1398,15 @@ VisualTest {
}
Frame {
msec: 3440
- hash: "c6f235590c03170581dfabc07bf9c20b"
+ hash: "ba932735c5079ad6562050b6e332d2e7"
}
Frame {
msec: 3456
- hash: "c6f235590c03170581dfabc07bf9c20b"
+ hash: "ba932735c5079ad6562050b6e332d2e7"
}
Frame {
msec: 3472
- hash: "c6f235590c03170581dfabc07bf9c20b"
+ hash: "ba932735c5079ad6562050b6e332d2e7"
}
Key {
type: 6
@@ -1418,19 +1418,19 @@ VisualTest {
}
Frame {
msec: 3488
- hash: "10a29af771a5c17b1443b10abd45c9aa"
+ hash: "01dacbcc21c541e0cbf272ee01292b7c"
}
Frame {
msec: 3504
- hash: "10a29af771a5c17b1443b10abd45c9aa"
+ hash: "01dacbcc21c541e0cbf272ee01292b7c"
}
Frame {
msec: 3520
- hash: "10a29af771a5c17b1443b10abd45c9aa"
+ hash: "01dacbcc21c541e0cbf272ee01292b7c"
}
Frame {
msec: 3536
- hash: "10a29af771a5c17b1443b10abd45c9aa"
+ hash: "01dacbcc21c541e0cbf272ee01292b7c"
}
Key {
type: 7
@@ -1442,11 +1442,11 @@ VisualTest {
}
Frame {
msec: 3552
- hash: "10a29af771a5c17b1443b10abd45c9aa"
+ hash: "01dacbcc21c541e0cbf272ee01292b7c"
}
Frame {
msec: 3568
- hash: "10a29af771a5c17b1443b10abd45c9aa"
+ hash: "01dacbcc21c541e0cbf272ee01292b7c"
}
Key {
type: 6
@@ -1458,27 +1458,27 @@ VisualTest {
}
Frame {
msec: 3584
- hash: "68449dbef331f4bdf4c4bc443ec98e89"
+ hash: "7b493045fb2b7373525ce570d86542d7"
}
Frame {
msec: 3600
- hash: "68449dbef331f4bdf4c4bc443ec98e89"
+ hash: "7b493045fb2b7373525ce570d86542d7"
}
Frame {
msec: 3616
- hash: "68449dbef331f4bdf4c4bc443ec98e89"
+ hash: "7b493045fb2b7373525ce570d86542d7"
}
Frame {
msec: 3632
- hash: "68449dbef331f4bdf4c4bc443ec98e89"
+ hash: "7b493045fb2b7373525ce570d86542d7"
}
Frame {
msec: 3648
- hash: "68449dbef331f4bdf4c4bc443ec98e89"
+ hash: "7b493045fb2b7373525ce570d86542d7"
}
Frame {
msec: 3664
- hash: "68449dbef331f4bdf4c4bc443ec98e89"
+ hash: "7b493045fb2b7373525ce570d86542d7"
}
Key {
type: 6
@@ -1490,7 +1490,7 @@ VisualTest {
}
Frame {
msec: 3680
- hash: "5c773045e3ccab933749a3f6a74dc25a"
+ hash: "7c11ac5b8dfee4708b7b49c2a1a7db57"
}
Key {
type: 7
@@ -1502,23 +1502,23 @@ VisualTest {
}
Frame {
msec: 3696
- hash: "5c773045e3ccab933749a3f6a74dc25a"
+ hash: "7c11ac5b8dfee4708b7b49c2a1a7db57"
}
Frame {
msec: 3712
- hash: "5c773045e3ccab933749a3f6a74dc25a"
+ hash: "7c11ac5b8dfee4708b7b49c2a1a7db57"
}
Frame {
msec: 3728
- hash: "5c773045e3ccab933749a3f6a74dc25a"
+ hash: "7c11ac5b8dfee4708b7b49c2a1a7db57"
}
Frame {
msec: 3744
- hash: "5c773045e3ccab933749a3f6a74dc25a"
+ hash: "7c11ac5b8dfee4708b7b49c2a1a7db57"
}
Frame {
msec: 3760
- hash: "5c773045e3ccab933749a3f6a74dc25a"
+ hash: "7c11ac5b8dfee4708b7b49c2a1a7db57"
}
Key {
type: 7
@@ -1530,39 +1530,39 @@ VisualTest {
}
Frame {
msec: 3776
- hash: "5c773045e3ccab933749a3f6a74dc25a"
+ hash: "7c11ac5b8dfee4708b7b49c2a1a7db57"
}
Frame {
msec: 3792
- hash: "5c773045e3ccab933749a3f6a74dc25a"
+ hash: "7c11ac5b8dfee4708b7b49c2a1a7db57"
}
Frame {
msec: 3808
- hash: "5c773045e3ccab933749a3f6a74dc25a"
+ hash: "7c11ac5b8dfee4708b7b49c2a1a7db57"
}
Frame {
msec: 3824
- hash: "5c773045e3ccab933749a3f6a74dc25a"
+ hash: "7c11ac5b8dfee4708b7b49c2a1a7db57"
}
Frame {
msec: 3840
- image: "wrap.3.png"
+ hash: "7c11ac5b8dfee4708b7b49c2a1a7db57"
}
Frame {
msec: 3856
- hash: "5c773045e3ccab933749a3f6a74dc25a"
+ image: "wrap.4.png"
}
Frame {
msec: 3872
- hash: "5c773045e3ccab933749a3f6a74dc25a"
+ hash: "7c11ac5b8dfee4708b7b49c2a1a7db57"
}
Frame {
msec: 3888
- hash: "5c773045e3ccab933749a3f6a74dc25a"
+ hash: "7c11ac5b8dfee4708b7b49c2a1a7db57"
}
Frame {
msec: 3904
- hash: "5c773045e3ccab933749a3f6a74dc25a"
+ hash: "7c11ac5b8dfee4708b7b49c2a1a7db57"
}
Key {
type: 6
@@ -1574,23 +1574,23 @@ VisualTest {
}
Frame {
msec: 3920
- hash: "f1ef12790a0548cfaa4176680566680d"
+ hash: "46a6db4f63965f019fc1966e2a6caf98"
}
Frame {
msec: 3936
- hash: "f1ef12790a0548cfaa4176680566680d"
+ hash: "46a6db4f63965f019fc1966e2a6caf98"
}
Frame {
msec: 3952
- hash: "f1ef12790a0548cfaa4176680566680d"
+ hash: "46a6db4f63965f019fc1966e2a6caf98"
}
Frame {
msec: 3968
- hash: "f1ef12790a0548cfaa4176680566680d"
+ hash: "46a6db4f63965f019fc1966e2a6caf98"
}
Frame {
msec: 3984
- hash: "f1ef12790a0548cfaa4176680566680d"
+ hash: "46a6db4f63965f019fc1966e2a6caf98"
}
Key {
type: 7
@@ -1602,11 +1602,11 @@ VisualTest {
}
Frame {
msec: 4000
- hash: "f1ef12790a0548cfaa4176680566680d"
+ hash: "46a6db4f63965f019fc1966e2a6caf98"
}
Frame {
msec: 4016
- hash: "f1ef12790a0548cfaa4176680566680d"
+ hash: "46a6db4f63965f019fc1966e2a6caf98"
}
Key {
type: 6
@@ -1618,15 +1618,15 @@ VisualTest {
}
Frame {
msec: 4032
- hash: "22575a03b4c58e4391845d495c2ca48b"
+ hash: "abc8cf4650aa07a9a26ad04a082bc269"
}
Frame {
msec: 4048
- hash: "22575a03b4c58e4391845d495c2ca48b"
+ hash: "abc8cf4650aa07a9a26ad04a082bc269"
}
Frame {
msec: 4064
- hash: "22575a03b4c58e4391845d495c2ca48b"
+ hash: "abc8cf4650aa07a9a26ad04a082bc269"
}
Key {
type: 7
@@ -1638,7 +1638,7 @@ VisualTest {
}
Frame {
msec: 4080
- hash: "22575a03b4c58e4391845d495c2ca48b"
+ hash: "abc8cf4650aa07a9a26ad04a082bc269"
}
Key {
type: 6
@@ -1650,19 +1650,19 @@ VisualTest {
}
Frame {
msec: 4096
- hash: "3243dc4562f073136782415365b7b42d"
+ hash: "23ee54c88cd70b6c66137ce32702cf01"
}
Frame {
msec: 4112
- hash: "3243dc4562f073136782415365b7b42d"
+ hash: "23ee54c88cd70b6c66137ce32702cf01"
}
Frame {
msec: 4128
- hash: "3243dc4562f073136782415365b7b42d"
+ hash: "23ee54c88cd70b6c66137ce32702cf01"
}
Frame {
msec: 4144
- hash: "3243dc4562f073136782415365b7b42d"
+ hash: "23ee54c88cd70b6c66137ce32702cf01"
}
Key {
type: 7
@@ -1674,15 +1674,15 @@ VisualTest {
}
Frame {
msec: 4160
- hash: "3243dc4562f073136782415365b7b42d"
+ hash: "23ee54c88cd70b6c66137ce32702cf01"
}
Frame {
msec: 4176
- hash: "3243dc4562f073136782415365b7b42d"
+ hash: "23ee54c88cd70b6c66137ce32702cf01"
}
Frame {
msec: 4192
- hash: "3243dc4562f073136782415365b7b42d"
+ hash: "23ee54c88cd70b6c66137ce32702cf01"
}
Key {
type: 6
@@ -1694,23 +1694,23 @@ VisualTest {
}
Frame {
msec: 4208
- hash: "44cd04d2a2bf12654cb96ec9af92b9aa"
+ hash: "dc0899573a995421b57a6689d300a421"
}
Frame {
msec: 4224
- hash: "44cd04d2a2bf12654cb96ec9af92b9aa"
+ hash: "dc0899573a995421b57a6689d300a421"
}
Frame {
msec: 4240
- hash: "44cd04d2a2bf12654cb96ec9af92b9aa"
+ hash: "dc0899573a995421b57a6689d300a421"
}
Frame {
msec: 4256
- hash: "44cd04d2a2bf12654cb96ec9af92b9aa"
+ hash: "dc0899573a995421b57a6689d300a421"
}
Frame {
msec: 4272
- hash: "44cd04d2a2bf12654cb96ec9af92b9aa"
+ hash: "dc0899573a995421b57a6689d300a421"
}
Key {
type: 6
@@ -1722,7 +1722,7 @@ VisualTest {
}
Frame {
msec: 4288
- hash: "cf1eb35cb9a793769303abee0a2fcad8"
+ hash: "4d42c63a0324c1573818ebb081d8927f"
}
Key {
type: 7
@@ -1734,15 +1734,15 @@ VisualTest {
}
Frame {
msec: 4304
- hash: "cf1eb35cb9a793769303abee0a2fcad8"
+ hash: "4d42c63a0324c1573818ebb081d8927f"
}
Frame {
msec: 4320
- hash: "cf1eb35cb9a793769303abee0a2fcad8"
+ hash: "4d42c63a0324c1573818ebb081d8927f"
}
Frame {
msec: 4336
- hash: "cf1eb35cb9a793769303abee0a2fcad8"
+ hash: "4d42c63a0324c1573818ebb081d8927f"
}
Key {
type: 7
@@ -1754,23 +1754,23 @@ VisualTest {
}
Frame {
msec: 4352
- hash: "cf1eb35cb9a793769303abee0a2fcad8"
+ hash: "4d42c63a0324c1573818ebb081d8927f"
}
Frame {
msec: 4368
- hash: "cf1eb35cb9a793769303abee0a2fcad8"
+ hash: "4d42c63a0324c1573818ebb081d8927f"
}
Frame {
msec: 4384
- hash: "cf1eb35cb9a793769303abee0a2fcad8"
+ hash: "4d42c63a0324c1573818ebb081d8927f"
}
Frame {
msec: 4400
- hash: "cf1eb35cb9a793769303abee0a2fcad8"
+ hash: "4d42c63a0324c1573818ebb081d8927f"
}
Frame {
msec: 4416
- hash: "cf1eb35cb9a793769303abee0a2fcad8"
+ hash: "4d42c63a0324c1573818ebb081d8927f"
}
Key {
type: 6
@@ -1782,15 +1782,15 @@ VisualTest {
}
Frame {
msec: 4432
- hash: "252838a495502ba5b836ffd1b20711f4"
+ hash: "9d2239e4b71da17a6f8f2ef979f4bf85"
}
Frame {
msec: 4448
- hash: "252838a495502ba5b836ffd1b20711f4"
+ hash: "9d2239e4b71da17a6f8f2ef979f4bf85"
}
Frame {
msec: 4464
- hash: "252838a495502ba5b836ffd1b20711f4"
+ hash: "9d2239e4b71da17a6f8f2ef979f4bf85"
}
Key {
type: 7
@@ -1802,23 +1802,23 @@ VisualTest {
}
Frame {
msec: 4480
- hash: "252838a495502ba5b836ffd1b20711f4"
+ hash: "9d2239e4b71da17a6f8f2ef979f4bf85"
}
Frame {
msec: 4496
- hash: "252838a495502ba5b836ffd1b20711f4"
+ hash: "9d2239e4b71da17a6f8f2ef979f4bf85"
}
Frame {
msec: 4512
- hash: "252838a495502ba5b836ffd1b20711f4"
+ hash: "9d2239e4b71da17a6f8f2ef979f4bf85"
}
Frame {
msec: 4528
- hash: "252838a495502ba5b836ffd1b20711f4"
+ hash: "9d2239e4b71da17a6f8f2ef979f4bf85"
}
Frame {
msec: 4544
- hash: "252838a495502ba5b836ffd1b20711f4"
+ hash: "9d2239e4b71da17a6f8f2ef979f4bf85"
}
Key {
type: 6
@@ -1830,19 +1830,19 @@ VisualTest {
}
Frame {
msec: 4560
- hash: "4010bb0f50630f067974e6ddb3177693"
+ hash: "289059d77547c9ec548b33d8bbe9fca9"
}
Frame {
msec: 4576
- hash: "4010bb0f50630f067974e6ddb3177693"
+ hash: "289059d77547c9ec548b33d8bbe9fca9"
}
Frame {
msec: 4592
- hash: "4010bb0f50630f067974e6ddb3177693"
+ hash: "289059d77547c9ec548b33d8bbe9fca9"
}
Frame {
msec: 4608
- hash: "4010bb0f50630f067974e6ddb3177693"
+ hash: "289059d77547c9ec548b33d8bbe9fca9"
}
Key {
type: 7
@@ -1854,19 +1854,19 @@ VisualTest {
}
Frame {
msec: 4624
- hash: "4010bb0f50630f067974e6ddb3177693"
+ hash: "289059d77547c9ec548b33d8bbe9fca9"
}
Frame {
msec: 4640
- hash: "4010bb0f50630f067974e6ddb3177693"
+ hash: "289059d77547c9ec548b33d8bbe9fca9"
}
Frame {
msec: 4656
- hash: "4010bb0f50630f067974e6ddb3177693"
+ hash: "289059d77547c9ec548b33d8bbe9fca9"
}
Frame {
msec: 4672
- hash: "4010bb0f50630f067974e6ddb3177693"
+ hash: "289059d77547c9ec548b33d8bbe9fca9"
}
Key {
type: 6
@@ -1878,19 +1878,19 @@ VisualTest {
}
Frame {
msec: 4688
- hash: "14dc6ee8cd3b4747650f2a458b42a6e3"
+ hash: "4b60bfb67c5007b4054241e581ce92ac"
}
Frame {
msec: 4704
- hash: "14dc6ee8cd3b4747650f2a458b42a6e3"
+ hash: "4b60bfb67c5007b4054241e581ce92ac"
}
Frame {
msec: 4720
- hash: "14dc6ee8cd3b4747650f2a458b42a6e3"
+ hash: "4b60bfb67c5007b4054241e581ce92ac"
}
Frame {
msec: 4736
- hash: "14dc6ee8cd3b4747650f2a458b42a6e3"
+ hash: "4b60bfb67c5007b4054241e581ce92ac"
}
Key {
type: 7
@@ -1902,15 +1902,15 @@ VisualTest {
}
Frame {
msec: 4752
- hash: "14dc6ee8cd3b4747650f2a458b42a6e3"
+ hash: "4b60bfb67c5007b4054241e581ce92ac"
}
Frame {
msec: 4768
- hash: "14dc6ee8cd3b4747650f2a458b42a6e3"
+ hash: "4b60bfb67c5007b4054241e581ce92ac"
}
Frame {
msec: 4784
- hash: "14dc6ee8cd3b4747650f2a458b42a6e3"
+ hash: "4b60bfb67c5007b4054241e581ce92ac"
}
Key {
type: 6
@@ -1922,11 +1922,11 @@ VisualTest {
}
Frame {
msec: 4800
- image: "wrap.4.png"
+ hash: "dbabce81e44f912d6a30ff4cc3289da8"
}
Frame {
msec: 4816
- hash: "7d4a56854715772c92706522d2dcac56"
+ image: "wrap.5.png"
}
Key {
type: 7
@@ -1938,19 +1938,19 @@ VisualTest {
}
Frame {
msec: 4832
- hash: "7d4a56854715772c92706522d2dcac56"
+ hash: "dbabce81e44f912d6a30ff4cc3289da8"
}
Frame {
msec: 4848
- hash: "7d4a56854715772c92706522d2dcac56"
+ hash: "dbabce81e44f912d6a30ff4cc3289da8"
}
Frame {
msec: 4864
- hash: "7d4a56854715772c92706522d2dcac56"
+ hash: "dbabce81e44f912d6a30ff4cc3289da8"
}
Frame {
msec: 4880
- hash: "7d4a56854715772c92706522d2dcac56"
+ hash: "dbabce81e44f912d6a30ff4cc3289da8"
}
Key {
type: 6
@@ -1962,19 +1962,19 @@ VisualTest {
}
Frame {
msec: 4896
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 4912
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 4928
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 4944
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Key {
type: 7
@@ -1986,482 +1986,482 @@ VisualTest {
}
Frame {
msec: 4960
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 4976
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 4992
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5008
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5024
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5040
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5056
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5072
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5088
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5104
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5120
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5136
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5152
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5168
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5184
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5200
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5216
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5232
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5248
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5264
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5280
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5296
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5312
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5328
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5344
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5360
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5376
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5392
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5408
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5424
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5440
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5456
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5472
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5488
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5504
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5520
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5536
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5552
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5568
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5584
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5600
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5616
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5632
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5648
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5664
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5680
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5696
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5712
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5728
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5744
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5760
- image: "wrap.5.png"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5776
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ image: "wrap.6.png"
}
Frame {
msec: 5792
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5808
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5824
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5840
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5856
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5872
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5888
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5904
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5920
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5936
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5952
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5968
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 5984
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6000
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6016
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6032
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6048
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6064
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6080
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6096
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6112
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6128
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6144
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6160
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6176
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6192
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6208
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6224
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6240
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6256
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6272
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6288
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6304
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6320
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6336
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6352
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6368
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6384
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6400
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6416
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6432
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6448
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6464
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6480
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6496
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6512
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6528
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6544
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6560
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6576
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6592
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6608
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6624
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6640
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6656
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6672
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6688
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6704
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6720
- image: "wrap.6.png"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6736
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ image: "wrap.7.png"
}
Frame {
msec: 6752
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6768
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6784
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6800
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6816
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6832
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6848
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
Frame {
msec: 6864
- hash: "0c75eb65cf70c883ee4dcd2f7ee092ce"
+ hash: "e9633d239e0a9ca008ed033565322c24"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.0.png
index b24344c344..be025e5582 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.1.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.1.png
index 5e29359b0c..1b2cd047f3 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.2.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.2.png
index 0ffee647ff..2e56d47ea2 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.2.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.3.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.3.png
index 6c56e9c331..8abdfc2588 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.3.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.4.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.4.png
index 276170d3ea..58428ceefa 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.4.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.5.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.5.png
index 3d8709fd16..3c23bd6b50 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.5.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.qml b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.qml
index 0407aaf366..9630745588 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/cursorDelegate.qml
@@ -6,87 +6,87 @@ VisualTest {
}
Frame {
msec: 16
- hash: "6e8324bf913d9df21a59ab4337257c15"
+ image: "cursorDelegate.0.png"
}
Frame {
msec: 32
- hash: "4e068995d68e8939e6560e35b685e839"
+ hash: "2fd338490edda276f7ee16232bf244d1"
}
Frame {
msec: 48
- hash: "761b09bce25b3b240093d16ad02268d7"
+ hash: "527a1c18503f580bcf926a70d9f30006"
}
Frame {
msec: 64
- hash: "1ecb6d7d08d4e4e14db28e24a60eccc4"
+ hash: "8b911c3e4a0fccf1dbeca50931780a2d"
}
Frame {
msec: 80
- hash: "642417a56b3d6b8b35f5aec1bf0a9d2c"
+ hash: "f631ad72bf36ccb0c5f3ff708f029b1b"
}
Frame {
msec: 96
- hash: "2e24870a44d3fc6c6d5c920bab29d417"
+ hash: "d4099e6a2c1ff77a71231351f5bc32ff"
}
Frame {
msec: 112
- hash: "9a59d0672f2a752943561af89fd71d7f"
+ hash: "0e531d158b1c14d6fc633e528846c336"
}
Frame {
msec: 128
- hash: "c359dd36910678a30f935a13c8680ee4"
+ hash: "5721d3397b9e66da4ee47a7f19107566"
}
Frame {
msec: 144
- hash: "245f1e127549e9b28c7574ffb143fcde"
+ hash: "6647f5d3680f3523ec73b434d0c2f8da"
}
Frame {
msec: 160
- hash: "8df3d3dbce673311d88c055e8dffaeb5"
+ hash: "73fb40e680c30b1a5fe95de9913a0591"
}
Frame {
msec: 176
- hash: "590fdeaddb3df033a1908a8a95fcd17a"
+ hash: "c392c2599b29086a437afa292b06d63c"
}
Frame {
msec: 192
- hash: "a158891c8d2ee3899463412a3363e48c"
+ hash: "bcedd42d52bab532831b47c6ee2a99ac"
}
Frame {
msec: 208
- hash: "e9ec2c82f46b36fbd0285ce6795c7cf9"
+ hash: "089b150d5cc9315c6626edfc1bb66774"
}
Frame {
msec: 224
- hash: "0a02598af770dfe1d332f10c9482e770"
+ hash: "f6e83fdb13e4f00ba5004b081e2379ee"
}
Frame {
msec: 240
- hash: "8765475468bccbd0df897a533241f3c5"
+ hash: "ca8336d47c002df3702a46be2b974ba7"
}
Frame {
msec: 256
- hash: "4cd9deed66bfdfadde8f8bf34f0e5513"
+ hash: "f0d82431f1e35f76fd718af1d742cd13"
}
Frame {
msec: 272
- hash: "139bf5a1811beb2438df4ecfa3bbaac7"
+ hash: "78dc119673be7902ab25d508db771f04"
}
Frame {
msec: 288
- hash: "9d51555afd71a7035e67a543846dcf7f"
+ hash: "2839bc67b7ac43353b976c2c7bc3b6c3"
}
Frame {
msec: 304
- hash: "de187b58fc8dfaad2d62e9463691b0c0"
+ hash: "c1f9743c0505b6ca197c4bd0bbbd7bd3"
}
Frame {
msec: 320
- hash: "9f88ac6d71246b06ca7ce9d8d983c91b"
+ hash: "2d714b10ce1e3e7dd1efb58ed4b62f90"
}
Frame {
msec: 336
- hash: "a43c12a7d6597d171112dc43085a439e"
+ hash: "c4f94bab5475eacfc757338ffd6d4a59"
}
Key {
type: 6
@@ -98,27 +98,27 @@ VisualTest {
}
Frame {
msec: 352
- hash: "ad38f32755f669837ec2243e355ebc85"
+ hash: "c5caa8a08f09203c005e1cd6d80e8ccc"
}
Frame {
msec: 368
- hash: "d87bd14345c785cc7e78a5c5462b90ec"
+ hash: "c96896be1a311c0cedc1c7ec1bd9e13e"
}
Frame {
msec: 384
- hash: "77850031e012246dd967ac689e353eb3"
+ hash: "d3d6dc1d8ff93e373583e3cbdca88b81"
}
Frame {
msec: 400
- hash: "f1bd048cd9167a8f162d1c39aca4f7c1"
+ hash: "2a456146359c54c52f9e7a6cebcfa454"
}
Frame {
msec: 416
- hash: "0fa030c5da23f23a0665a535e23b84a2"
+ hash: "d127788c702c2ed037c709ffc331840e"
}
Frame {
msec: 432
- hash: "af3a5f1982459164dfec26746172b0eb"
+ hash: "8a5987a736b092e12198d969544d632c"
}
Key {
type: 6
@@ -130,19 +130,19 @@ VisualTest {
}
Frame {
msec: 448
- hash: "0de90659472b63dd41a5602197ff502e"
+ hash: "e8471c605f6a8cc187d879510ed7ebe7"
}
Frame {
msec: 464
- hash: "81e40abf91017614a52e03bb2474549f"
+ hash: "6959b4f72422636ae59989c9def06d03"
}
Frame {
msec: 480
- hash: "7bae45481596788afde8866a3c97edd7"
+ hash: "87d666ee3bcf7a606e2aecb4954cfb28"
}
Frame {
msec: 496
- hash: "7bae45481596788afde8866a3c97edd7"
+ hash: "87d666ee3bcf7a606e2aecb4954cfb28"
}
Key {
type: 6
@@ -154,35 +154,35 @@ VisualTest {
}
Frame {
msec: 512
- hash: "0416581d32ab84680dfc26b6f546d2c5"
+ hash: "45a1fa0c871592f872574fdcd3fb586c"
}
Frame {
msec: 528
- hash: "0416581d32ab84680dfc26b6f546d2c5"
+ hash: "45a1fa0c871592f872574fdcd3fb586c"
}
Frame {
msec: 544
- hash: "0416581d32ab84680dfc26b6f546d2c5"
+ hash: "45a1fa0c871592f872574fdcd3fb586c"
}
Frame {
msec: 560
- hash: "0416581d32ab84680dfc26b6f546d2c5"
+ hash: "45a1fa0c871592f872574fdcd3fb586c"
}
Frame {
msec: 576
- hash: "ac98b973e6d12193829139661d3e5847"
+ hash: "8567bf3fb7adb990501070fac62fda31"
}
Frame {
msec: 592
- hash: "366907376adae4d88d42d1b9e7533ec0"
+ hash: "824b9fef000cfad45c86d180eb13c584"
}
Frame {
msec: 608
- hash: "5f486d0a21c74f2ba50afcafa8c15453"
+ hash: "cb8989a5839bf284f0e8b3eb1bf68667"
}
Frame {
msec: 624
- hash: "a3bf6dde525e528745272a8e43fc895c"
+ hash: "f23e6394ed3c2fc32c690095ccfc1a7f"
}
Key {
type: 7
@@ -194,15 +194,15 @@ VisualTest {
}
Frame {
msec: 640
- hash: "4ffb297d2a98a3d13b848af569b1b5b5"
+ hash: "d32d30ebd0c292e66314f6b6005701b9"
}
Frame {
msec: 656
- hash: "3679a17658e417bf08fc86d4bef0d4e9"
+ hash: "4ebda51f84f73eb6891f9c71ffba4b92"
}
Frame {
msec: 672
- hash: "5c6a25284ffd13350425e792fd143421"
+ hash: "9a97e8cdb84e96f08f2af468d146fb45"
}
Key {
type: 6
@@ -214,31 +214,31 @@ VisualTest {
}
Frame {
msec: 688
- hash: "09a2c1032d0206e20340ae4267525f98"
+ hash: "9cd5a0e60b7f679faba3dad78eac1ac3"
}
Frame {
msec: 704
- hash: "0036070d9a7ee854b3612858af46ab59"
+ hash: "2e18ff4ebead28620901d4a9ad050ffe"
}
Frame {
msec: 720
- hash: "8774509eaa5fc29385da89214ef77589"
+ hash: "57a6a1bbfe4c4577e4334b63b977ca13"
}
Frame {
msec: 736
- hash: "6d4f8ebf046148e5079f498396c119b4"
+ hash: "5f5806c2b30465845ed2bc36f1c60e14"
}
Frame {
msec: 752
- hash: "4c7d5d2f77116c96357b0791348af058"
+ hash: "10125c338dffa13dfd0bbff5fc33d757"
}
Frame {
msec: 768
- hash: "398c927a3525d5b90a5dd7a05ba9467b"
+ hash: "b6c83fdee9081a1773a441cffb843c11"
}
Frame {
msec: 784
- hash: "d84b45f6acb8cbd399d4ed6bf80ce132"
+ hash: "c26f3ac7cd2065b98434e3fb4bc7c4a7"
}
Key {
type: 7
@@ -250,63 +250,63 @@ VisualTest {
}
Frame {
msec: 800
- hash: "40c597d9e04e8e0daf62f58b9e7973b3"
+ hash: "6cb47a37677280ef63b060767c669878"
}
Frame {
msec: 816
- hash: "2c7fdd47e29d924e3e008a6840e0e6be"
+ hash: "7f27c84cd7ae3f255b0df6029e13c48d"
}
Frame {
msec: 832
- hash: "2b3229bb1aa220499114f274cf643ce9"
+ hash: "fec675b07b3f569014e9f35563761d49"
}
Frame {
msec: 848
- hash: "e55446874c1a343ce3607d679d69d1d4"
+ hash: "cfd2439d79ad66232107022317fd5a4c"
}
Frame {
msec: 864
- hash: "6824708eb176a9cf92f241d4054800dd"
+ hash: "cec5331c1f6023335942e572992aa172"
}
Frame {
msec: 880
- hash: "d386230dd416740625eb4f677ef4531b"
+ hash: "549d4736558332a64c5fc3462be71500"
}
Frame {
msec: 896
- hash: "9b2fbddab890dbe43e84e85bf320e6c1"
+ hash: "1d01fe566f850fe2297fd8ed6b1efa8d"
}
Frame {
msec: 912
- hash: "1d1065aca7eb47f0096bc2c8c4320880"
+ hash: "cd1b61c7acd7067f9722c1a673b9a3ea"
}
Frame {
msec: 928
- hash: "d97ba6e2bfc021fe993afdb5b28316ba"
+ hash: "cb4fed177ff3df7212413450d4b73549"
}
Frame {
msec: 944
- hash: "3a3a2f340bf1ccb14eab0562d7ecfe87"
+ hash: "720d0e5c3e377e2c53d251e02577d6f6"
}
Frame {
msec: 960
- image: "cursorDelegate.0.png"
+ hash: "1ab118400896a46a8d179b762343522f"
}
Frame {
msec: 976
- hash: "ea4f4c1de5bfb1be43ab0188afb7189c"
+ image: "cursorDelegate.1.png"
}
Frame {
msec: 992
- hash: "399ca2d4411d3fb226c94bd32a17d0cd"
+ hash: "6cf8502f84b57001bf14fc4bab24911b"
}
Frame {
msec: 1008
- hash: "ca78503396613536c8e4076884354cb1"
+ hash: "5aa693852436f664da87d4360da0f477"
}
Frame {
msec: 1024
- hash: "ca78503396613536c8e4076884354cb1"
+ hash: "5aa693852436f664da87d4360da0f477"
}
Key {
type: 7
@@ -318,39 +318,39 @@ VisualTest {
}
Frame {
msec: 1040
- hash: "399ca2d4411d3fb226c94bd32a17d0cd"
+ hash: "6cf8502f84b57001bf14fc4bab24911b"
}
Frame {
msec: 1056
- hash: "ea4f4c1de5bfb1be43ab0188afb7189c"
+ hash: "17499b49e462181383fde57dce81aef9"
}
Frame {
msec: 1072
- hash: "d23d7492b85e4f30994ecd64e8273ff6"
+ hash: "1ab118400896a46a8d179b762343522f"
}
Frame {
msec: 1088
- hash: "3a3a2f340bf1ccb14eab0562d7ecfe87"
+ hash: "720d0e5c3e377e2c53d251e02577d6f6"
}
Frame {
msec: 1104
- hash: "d97ba6e2bfc021fe993afdb5b28316ba"
+ hash: "cb4fed177ff3df7212413450d4b73549"
}
Frame {
msec: 1120
- hash: "1d1065aca7eb47f0096bc2c8c4320880"
+ hash: "cd1b61c7acd7067f9722c1a673b9a3ea"
}
Frame {
msec: 1136
- hash: "9b2fbddab890dbe43e84e85bf320e6c1"
+ hash: "1d01fe566f850fe2297fd8ed6b1efa8d"
}
Frame {
msec: 1152
- hash: "d386230dd416740625eb4f677ef4531b"
+ hash: "549d4736558332a64c5fc3462be71500"
}
Frame {
msec: 1168
- hash: "6824708eb176a9cf92f241d4054800dd"
+ hash: "cec5331c1f6023335942e572992aa172"
}
Key {
type: 6
@@ -362,31 +362,31 @@ VisualTest {
}
Frame {
msec: 1184
- hash: "e8e14dbba33578a36d9c69214333c537"
+ hash: "a8af14ffccbd892f17c0235d62d10cd8"
}
Frame {
msec: 1200
- hash: "95c6e967f6f445748945c51943cf532f"
+ hash: "81fbaaf1af513b2dc978ef0e358bbc6f"
}
Frame {
msec: 1216
- hash: "d145d4cbd0e3a98686b3bac1c5c17093"
+ hash: "204cfba6a668ba25ed37f12bfcdd97eb"
}
Frame {
msec: 1232
- hash: "09348a4108a585dd23c3a252a5c596f6"
+ hash: "fa6c8f7f8a8730d412168002511b82e6"
}
Frame {
msec: 1248
- hash: "55126f2c879771e1aa5ced51b54c827a"
+ hash: "0d491b55d03f5d5bb6cfce63bc98deae"
}
Frame {
msec: 1264
- hash: "ebb36a4c2fcb85107033ec2731fc5743"
+ hash: "0e4d3edabdf6e0faa366abcc3b0ef521"
}
Frame {
msec: 1280
- hash: "0581a4432d4b3d0c1555a31e772c2575"
+ hash: "13f397452e74ef834662363b09b000b9"
}
Key {
type: 7
@@ -398,95 +398,95 @@ VisualTest {
}
Frame {
msec: 1296
- hash: "b4030774f06935f1b43fc8f1a69e53a5"
+ hash: "bb064cac4cb117b4d28e26d04dd59d7c"
}
Frame {
msec: 1312
- hash: "655e1739c130888ff83a3b69bb0ab7e3"
+ hash: "dfab74915a3f1e82c558ba8fb26d81fc"
}
Frame {
msec: 1328
- hash: "99fc97c572e7c8949693b32910e6eefb"
+ hash: "7593cfb3073aa9d638c093e0f4c9857d"
}
Frame {
msec: 1344
- hash: "e9c8bb13c2549047c05d671daa378496"
+ hash: "fe4a725dcc97b7f320225e02dc88d34a"
}
Frame {
msec: 1360
- hash: "cb344e0d39b5b07ca7d094bf30ce9f53"
+ hash: "67794fa0162684b2097164d6cd666f16"
}
Frame {
msec: 1376
- hash: "15ba6e62c693f2bf74bdf86668139985"
+ hash: "747cfcd428eb59ca99749de261e561d4"
}
Frame {
msec: 1392
- hash: "48133ec73eb9723059eb6e6af3139f2b"
+ hash: "293fd7523f25e42d2acab401482a9af9"
}
Frame {
msec: 1408
- hash: "0b19e777a04f03774f2d5f5398bdb10f"
+ hash: "2644c937db0488c14f833a9e9f7d9cf6"
}
Frame {
msec: 1424
- hash: "fc41d9a9aedf9274a68b33603ed6ccd0"
+ hash: "d80500f7cce8d887d0c523060e4217af"
}
Frame {
msec: 1440
- hash: "fa6e65f0c835b12dc10463711bd73350"
+ hash: "96265a45f0f25d9c0cd1168789b50952"
}
Frame {
msec: 1456
- hash: "25a02c3388e52df550a0332efde90fcd"
+ hash: "e862d11944ea38939faa5b24fa9183bf"
}
Frame {
msec: 1472
- hash: "2390443be82acf291856be59fa18fc26"
+ hash: "946c778fcc8ee4942a30d4654e103fec"
}
Frame {
msec: 1488
- hash: "2390443be82acf291856be59fa18fc26"
+ hash: "946c778fcc8ee4942a30d4654e103fec"
}
Frame {
msec: 1504
- hash: "2390443be82acf291856be59fa18fc26"
+ hash: "946c778fcc8ee4942a30d4654e103fec"
}
Frame {
msec: 1520
- hash: "2390443be82acf291856be59fa18fc26"
+ hash: "946c778fcc8ee4942a30d4654e103fec"
}
Frame {
msec: 1536
- hash: "2390443be82acf291856be59fa18fc26"
+ hash: "946c778fcc8ee4942a30d4654e103fec"
}
Frame {
msec: 1552
- hash: "2390443be82acf291856be59fa18fc26"
+ hash: "946c778fcc8ee4942a30d4654e103fec"
}
Frame {
msec: 1568
- hash: "284cd356d551a048d4a000b90217ac72"
+ hash: "99e0e3d965bea36001298815d12b4d4c"
}
Frame {
msec: 1584
- hash: "94fb20c3767e09d1b4254ee6122cf24e"
+ hash: "c552ace3096eca31d0fc256d2bd153e0"
}
Frame {
msec: 1600
- hash: "bfac920384425ce9f34505b44eceb523"
+ hash: "203858ff0fc145ac60942c2b8e67ca20"
}
Frame {
msec: 1616
- hash: "4a2d434efcb9a57f2013dc6b366e0e4e"
+ hash: "11ea7696ec3aa9a394cabd723bcada9e"
}
Frame {
msec: 1632
- hash: "d0fbe98dc34c4bb0d1ceb7e4678cc1d5"
+ hash: "e0e24c0527e015d0bb05206771024d04"
}
Frame {
msec: 1648
- hash: "28ab147983a71e93e5610f53e14bd113"
+ hash: "995ccae48c4f0fc2ab40e793d074e78b"
}
Key {
type: 6
@@ -498,35 +498,35 @@ VisualTest {
}
Frame {
msec: 1664
- hash: "2e6ee60fe9ff07fa4558134e6b1d6da8"
+ hash: "cff7bee4ba1e8eb4c46e13f12f6059e1"
}
Frame {
msec: 1680
- hash: "f181e578e865981d7a2073080b381ec1"
+ hash: "e43bd84ba7bdc4ea0370c79bfa7667bd"
}
Frame {
msec: 1696
- hash: "d7c0558ea16829b52ea6d09814c301b9"
+ hash: "b7dd97abf895eaea20836833f959f0c6"
}
Frame {
msec: 1712
- hash: "c9304cb66c04566cf4374b46ab85e6e7"
+ hash: "b724e9874f0df5ed4ad9bdedbc4c45c9"
}
Frame {
msec: 1728
- hash: "024dde64822afc9eea63974851fe57e1"
+ hash: "69d9d28793e65aa9a1829d07cc035e4d"
}
Frame {
msec: 1744
- hash: "8e4520e95a8acc8f1d4b710c4a14898f"
+ hash: "689fc2cf5feb1084fceda93eab9b7aac"
}
Frame {
msec: 1760
- hash: "6b271c3f1d9d49bbd80a8ee33f3fc09c"
+ hash: "2bcc0f2fb8cccf7904c982cd60d3fefb"
}
Frame {
msec: 1776
- hash: "eb76a46632856bf07b005cad2ba2f6ab"
+ hash: "d55a868304da7e9af57cd775f2c283c1"
}
Key {
type: 6
@@ -538,35 +538,35 @@ VisualTest {
}
Frame {
msec: 1792
- hash: "a29bd83f6b4e877f3c7b89c82dfcab54"
+ hash: "b2591af5120258c99e84f31311396675"
}
Frame {
msec: 1808
- hash: "dca39b6b6fff5e4a6309e4c0e42811c0"
+ hash: "4f9908bdbad583a6a956a21d6ab05505"
}
Frame {
msec: 1824
- hash: "88ad3f9f638a97bed98f00ec7d78dfe4"
+ hash: "dd1c43a94dcabae975f0dba67c2742da"
}
Frame {
msec: 1840
- hash: "5697a705f36283213bbe4b5848baa764"
+ hash: "f9b8c8987bad613fe23fcf9d5fe995b8"
}
Frame {
msec: 1856
- hash: "8850842afae3060a91d612f7b869fd48"
+ hash: "9bd4431207a85e0effefb9cf36a2651b"
}
Frame {
msec: 1872
- hash: "4f08dbd1cab0bfcc8b9f232d46cf42db"
+ hash: "cd7c4c097231797649f2d24a729e3587"
}
Frame {
msec: 1888
- hash: "f7df5b96d0983a918e3c81aa7bee3950"
+ hash: "f2ac503f2aab55df922f90a6b9baeb0f"
}
Frame {
msec: 1904
- hash: "b28681bcb414d428588acda377fef838"
+ hash: "f356c05f9445c2fb260a29a58431269c"
}
Key {
type: 7
@@ -578,83 +578,83 @@ VisualTest {
}
Frame {
msec: 1920
- image: "cursorDelegate.1.png"
+ hash: "5580f8c543d67378b0f54117070f69bd"
}
Frame {
msec: 1936
- hash: "5c154b54776ed555563d3e5196a8aedd"
+ image: "cursorDelegate.2.png"
}
Frame {
msec: 1952
- hash: "ee64c0452b325880de3a4fea599c18cc"
+ hash: "634c5597e64c34b039c70f614f0100e1"
}
Frame {
msec: 1968
- hash: "0776e1557b2d32db1c7c43331c532331"
+ hash: "7f0bde32846ae8172cfd02f38d34dc48"
}
Frame {
msec: 1984
- hash: "24b68da9a63bbf00ffffeca649f771fa"
+ hash: "bc9092f889ffd6a6682ed9754c6697a2"
}
Frame {
msec: 2000
- hash: "00d49d91b51f5bd428c07e9be65f551a"
+ hash: "3ef935e3a4a0d409af7dd38f2433cdfe"
}
Frame {
msec: 2016
- hash: "874d4b599cb92cd9160960e3b3af74e0"
+ hash: "2a044024b38499e801810a19d313e01f"
}
Frame {
msec: 2032
- hash: "00d49d91b51f5bd428c07e9be65f551a"
+ hash: "3ef935e3a4a0d409af7dd38f2433cdfe"
}
Frame {
msec: 2048
- hash: "24b68da9a63bbf00ffffeca649f771fa"
+ hash: "bc9092f889ffd6a6682ed9754c6697a2"
}
Frame {
msec: 2064
- hash: "0776e1557b2d32db1c7c43331c532331"
+ hash: "7f0bde32846ae8172cfd02f38d34dc48"
}
Frame {
msec: 2080
- hash: "ee64c0452b325880de3a4fea599c18cc"
+ hash: "634c5597e64c34b039c70f614f0100e1"
}
Frame {
msec: 2096
- hash: "5c154b54776ed555563d3e5196a8aedd"
+ hash: "80f3bf6ea745da047da936578b87ee00"
}
Frame {
msec: 2112
- hash: "a5f90da82b51bc866648304a20a1dcd3"
+ hash: "5580f8c543d67378b0f54117070f69bd"
}
Frame {
msec: 2128
- hash: "b28681bcb414d428588acda377fef838"
+ hash: "f356c05f9445c2fb260a29a58431269c"
}
Frame {
msec: 2144
- hash: "f7df5b96d0983a918e3c81aa7bee3950"
+ hash: "f2ac503f2aab55df922f90a6b9baeb0f"
}
Frame {
msec: 2160
- hash: "4f08dbd1cab0bfcc8b9f232d46cf42db"
+ hash: "cd7c4c097231797649f2d24a729e3587"
}
Frame {
msec: 2176
- hash: "8850842afae3060a91d612f7b869fd48"
+ hash: "9bd4431207a85e0effefb9cf36a2651b"
}
Frame {
msec: 2192
- hash: "5697a705f36283213bbe4b5848baa764"
+ hash: "f9b8c8987bad613fe23fcf9d5fe995b8"
}
Frame {
msec: 2208
- hash: "88ad3f9f638a97bed98f00ec7d78dfe4"
+ hash: "dd1c43a94dcabae975f0dba67c2742da"
}
Frame {
msec: 2224
- hash: "dca39b6b6fff5e4a6309e4c0e42811c0"
+ hash: "4f9908bdbad583a6a956a21d6ab05505"
}
Key {
type: 7
@@ -666,35 +666,35 @@ VisualTest {
}
Frame {
msec: 2240
- hash: "a29bd83f6b4e877f3c7b89c82dfcab54"
+ hash: "b2591af5120258c99e84f31311396675"
}
Frame {
msec: 2256
- hash: "7defd2ecefeb86b457a2ee76d97424ee"
+ hash: "5c40e466b5af2e4b67dbb4ea96b24146"
}
Frame {
msec: 2272
- hash: "ccf6d45e8822d72482d9b585909b612b"
+ hash: "899a30ca4014231c8e9f15be4e0c3ee6"
}
Frame {
msec: 2288
- hash: "996dddf091394513adda1b1f00bf0c68"
+ hash: "a44bbb13a336fdd4aedaf4c5c6ee399a"
}
Frame {
msec: 2304
- hash: "3cf94e90eddb4b0815762b89f58f8325"
+ hash: "3b1b3e228ccbd61f9dfb896391da0b5b"
}
Frame {
msec: 2320
- hash: "ab9f876450526b37774c6c4a5794c7b1"
+ hash: "22f5ec3d2eda574d1976604b82307924"
}
Frame {
msec: 2336
- hash: "9109880e9201e92eb17ae87a3648dca7"
+ hash: "9e63d1a15c954d2960eecf54e5eeb172"
}
Frame {
msec: 2352
- hash: "0e759f2f279057c1f4d1147be5b41214"
+ hash: "64ce03b10500b5a98b5c826362d8140e"
}
Key {
type: 6
@@ -706,35 +706,35 @@ VisualTest {
}
Frame {
msec: 2368
- hash: "d87bd14345c785cc7e78a5c5462b90ec"
+ hash: "c96896be1a311c0cedc1c7ec1bd9e13e"
}
Frame {
msec: 2384
- hash: "77850031e012246dd967ac689e353eb3"
+ hash: "d3d6dc1d8ff93e373583e3cbdca88b81"
}
Frame {
msec: 2400
- hash: "f1bd048cd9167a8f162d1c39aca4f7c1"
+ hash: "2a456146359c54c52f9e7a6cebcfa454"
}
Frame {
msec: 2416
- hash: "0fa030c5da23f23a0665a535e23b84a2"
+ hash: "d127788c702c2ed037c709ffc331840e"
}
Frame {
msec: 2432
- hash: "af3a5f1982459164dfec26746172b0eb"
+ hash: "8a5987a736b092e12198d969544d632c"
}
Frame {
msec: 2448
- hash: "0de90659472b63dd41a5602197ff502e"
+ hash: "e8471c605f6a8cc187d879510ed7ebe7"
}
Frame {
msec: 2464
- hash: "81e40abf91017614a52e03bb2474549f"
+ hash: "6959b4f72422636ae59989c9def06d03"
}
Frame {
msec: 2480
- hash: "7bae45481596788afde8866a3c97edd7"
+ hash: "87d666ee3bcf7a606e2aecb4954cfb28"
}
Key {
type: 7
@@ -746,95 +746,95 @@ VisualTest {
}
Frame {
msec: 2496
- hash: "7bae45481596788afde8866a3c97edd7"
+ hash: "87d666ee3bcf7a606e2aecb4954cfb28"
}
Frame {
msec: 2512
- hash: "7bae45481596788afde8866a3c97edd7"
+ hash: "87d666ee3bcf7a606e2aecb4954cfb28"
}
Frame {
msec: 2528
- hash: "7bae45481596788afde8866a3c97edd7"
+ hash: "87d666ee3bcf7a606e2aecb4954cfb28"
}
Frame {
msec: 2544
- hash: "7bae45481596788afde8866a3c97edd7"
+ hash: "87d666ee3bcf7a606e2aecb4954cfb28"
}
Frame {
msec: 2560
- hash: "7bae45481596788afde8866a3c97edd7"
+ hash: "87d666ee3bcf7a606e2aecb4954cfb28"
}
Frame {
msec: 2576
- hash: "e26dbfb26415b21198add56d5de02cb2"
+ hash: "aa52467f87fbd766baa5137ddf18e0f6"
}
Frame {
msec: 2592
- hash: "fa2877a963417789b82170b32e0af7a0"
+ hash: "bc9549a04b9bc898feda61b7fce45b3f"
}
Frame {
msec: 2608
- hash: "860b39f92c412a7d946f882d8f99d837"
+ hash: "606e69ad9b6e3a82e08ae4bbabb34680"
}
Frame {
msec: 2624
- hash: "d7b8c52aef183965a97d82a18b03ed94"
+ hash: "257ed9eae13221c5d47103043ef4ad5c"
}
Frame {
msec: 2640
- hash: "b1ce9cf0ebd8e1e783e5bd43bbd72072"
+ hash: "f5b44d257447499e0268e9a8730d88e7"
}
Frame {
msec: 2656
- hash: "d214b419ec5b4cff8f877bdeb1b9ef96"
+ hash: "8f03a92b2b0b04ee0ac45e7631df78ce"
}
Frame {
msec: 2672
- hash: "95e7057104508b3919d722d4befde7b7"
+ hash: "054e88b3d80940006b24fdf233a70682"
}
Frame {
msec: 2688
- hash: "270489ec5da5bf9a93fa4e52f47a71f5"
+ hash: "20896fbba7e1970957ff20d33541730c"
}
Frame {
msec: 2704
- hash: "46646e396ab0c1c20427dadd71d45ba9"
+ hash: "238fca62069b7c6e1b6919afca518dbe"
}
Frame {
msec: 2720
- hash: "65e2fd167565f876310d56fa9203c118"
+ hash: "764e14ba052d8340d6d674d6f417643d"
}
Frame {
msec: 2736
- hash: "aff0da79bd9bd8c285139d7737a1316f"
+ hash: "278fb36637ff60d1949da9e9b887726f"
}
Frame {
msec: 2752
- hash: "bf264fe7d774a597a3ff0965d912fa90"
+ hash: "f51251c5ec7b0071248d3fa5db1c12fd"
}
Frame {
msec: 2768
- hash: "f00358343437f6e058848c7237601632"
+ hash: "785d38e036e7dd809037de3885067455"
}
Frame {
msec: 2784
- hash: "88c9e1d58397a81ed23931c7fdae1e7d"
+ hash: "4291bb6217f363aab48812359626de36"
}
Frame {
msec: 2800
- hash: "44d46b459f6bb89510e52b0d999fd499"
+ hash: "e139ad6787f1c4a1b89d4030703076e5"
}
Frame {
msec: 2816
- hash: "0c196a24c9ca7143d382688db678d855"
+ hash: "4c23976fb1b3b583153cbd72f2db10f4"
}
Frame {
msec: 2832
- hash: "9df6d3d3b9981cb907ab89e65b743e97"
+ hash: "5e0a3d848a749ecd4f9a572f10664f4b"
}
Frame {
msec: 2848
- hash: "501a644d6cde64ad041b086e00fd3950"
+ hash: "1acc382cfe2f5872982440e8a85eb57b"
}
Key {
type: 6
@@ -846,35 +846,35 @@ VisualTest {
}
Frame {
msec: 2864
- hash: "83f297406b1c6311da3a216024836d15"
+ hash: "eba94c6ae3dc4eb26c8d074137c7aa0f"
}
Frame {
msec: 2880
- image: "cursorDelegate.2.png"
+ hash: "7c75307fbb765bd69b888d500247b595"
}
Frame {
msec: 2896
- hash: "93f79f8717948bde8ee55c668af2d397"
+ image: "cursorDelegate.3.png"
}
Frame {
msec: 2912
- hash: "881b5c2ccd0bbdaea4d61abbec600fc5"
+ hash: "da73d23a925d93194aeb64d1522adc02"
}
Frame {
msec: 2928
- hash: "be72fe7c27901db62f2dbd9a757e4838"
+ hash: "d661872854338121d867b35d9e44ae6d"
}
Frame {
msec: 2944
- hash: "c83c973fb1253ccab333fb1e604155b8"
+ hash: "969b5cf20c7c4e18723a8b8a70ea68ec"
}
Frame {
msec: 2960
- hash: "dd6072d204812c23e24db1e7a81c6f57"
+ hash: "c7318ea4b4a4ac49308bef41d3bc264d"
}
Frame {
msec: 2976
- hash: "fb342743dc5ab9ade2b8a48a2a11dc8f"
+ hash: "dd6bd11cc0bc877dbd70c55d4f5bab29"
}
Key {
type: 7
@@ -886,63 +886,63 @@ VisualTest {
}
Frame {
msec: 2992
- hash: "fc8ede705bfe8f339fe47041c502b0d6"
+ hash: "21905ed4264a52c9b404149abedabe33"
}
Frame {
msec: 3008
- hash: "00fa0306d3fdc7e384cfc0660a3a355d"
+ hash: "e952374e5967619679af711157b561cd"
}
Frame {
msec: 3024
- hash: "00fa0306d3fdc7e384cfc0660a3a355d"
+ hash: "e952374e5967619679af711157b561cd"
}
Frame {
msec: 3040
- hash: "fc8ede705bfe8f339fe47041c502b0d6"
+ hash: "21905ed4264a52c9b404149abedabe33"
}
Frame {
msec: 3056
- hash: "fb342743dc5ab9ade2b8a48a2a11dc8f"
+ hash: "dd6bd11cc0bc877dbd70c55d4f5bab29"
}
Frame {
msec: 3072
- hash: "dd6072d204812c23e24db1e7a81c6f57"
+ hash: "c7318ea4b4a4ac49308bef41d3bc264d"
}
Frame {
msec: 3088
- hash: "c83c973fb1253ccab333fb1e604155b8"
+ hash: "969b5cf20c7c4e18723a8b8a70ea68ec"
}
Frame {
msec: 3104
- hash: "be72fe7c27901db62f2dbd9a757e4838"
+ hash: "d661872854338121d867b35d9e44ae6d"
}
Frame {
msec: 3120
- hash: "881b5c2ccd0bbdaea4d61abbec600fc5"
+ hash: "da73d23a925d93194aeb64d1522adc02"
}
Frame {
msec: 3136
- hash: "93f79f8717948bde8ee55c668af2d397"
+ hash: "2c0261e2223d7212e047dd4af6246a8f"
}
Frame {
msec: 3152
- hash: "1bb236db749ef514c00d0a3dd698d24f"
+ hash: "7c75307fbb765bd69b888d500247b595"
}
Frame {
msec: 3168
- hash: "83f297406b1c6311da3a216024836d15"
+ hash: "eba94c6ae3dc4eb26c8d074137c7aa0f"
}
Frame {
msec: 3184
- hash: "3d284b4000d2849ed4af2f7c1b859492"
+ hash: "e6eaa9959334f24ef3cf68d44d7340f1"
}
Frame {
msec: 3200
- hash: "de315e6836334fd0a2da855f5be4ff30"
+ hash: "3adb8604d872bc8ff5498841c6da71b5"
}
Frame {
msec: 3216
- hash: "5ca117709284f4a1cbd64cdba4079340"
+ hash: "e602eeaac3ce53033154297e73802c02"
}
Key {
type: 6
@@ -954,31 +954,31 @@ VisualTest {
}
Frame {
msec: 3232
- hash: "308a4220f5c74fd56bd218cd695b9822"
+ hash: "85afa80a1c333674cfbfcc38cedc798d"
}
Frame {
msec: 3248
- hash: "4ac4e09e987f2ba9661ed52fb1bdf236"
+ hash: "72679887fb26b7eb2553d6e554e26679"
}
Frame {
msec: 3264
- hash: "9ffd39a8a540ec88ff2b20a16ef083ee"
+ hash: "d25f21361d9cea41b17277f1ffecac62"
}
Frame {
msec: 3280
- hash: "4a36ed8e68811954fef171d5734ccbaf"
+ hash: "24db38727e1a58d515119181ea41e209"
}
Frame {
msec: 3296
- hash: "714a6231aca70cfa8e83ea71b7ae90dc"
+ hash: "e7ddd84f438fd2d463a3b9552dad345a"
}
Frame {
msec: 3312
- hash: "1fa9e35449ee87c972e3189ad0651a68"
+ hash: "621e406f5b9204eb5d82c4f66fdf6a61"
}
Frame {
msec: 3328
- hash: "d602008fada2f4edb6ad00fe759f9db9"
+ hash: "2a8befe073dda8589197cf05eeeaaf59"
}
Key {
type: 7
@@ -990,103 +990,103 @@ VisualTest {
}
Frame {
msec: 3344
- hash: "bf16cc38f109e761b5ac2b0c63a1a2fe"
+ hash: "104f0e21a041236f48dab6fe2c1c5aa1"
}
Frame {
msec: 3360
- hash: "30f26041533455ed92c4984f55e3c6ff"
+ hash: "0f8f74614b0b7295bb9df8fa0b1f6877"
}
Frame {
msec: 3376
- hash: "5838d666902bc693de505522dad13254"
+ hash: "3a3cc6cfd3200e06a2816f2746edf699"
}
Frame {
msec: 3392
- hash: "6c8ada09b627050e4340da6e8ddd646e"
+ hash: "83032d1da6907ebe1ab9fddf314d0bc1"
}
Frame {
msec: 3408
- hash: "b33cd5bbb90d435dd7ea3ab67bef88ee"
+ hash: "b93878281f21c85c211908086f2899e7"
}
Frame {
msec: 3424
- hash: "692d4029938c01044b4210958dd1ee7e"
+ hash: "a554a6ecd96f37f114f1fd616e0aeab2"
}
Frame {
msec: 3440
- hash: "7e2e55555ee2c7e172e61ddb6365355d"
+ hash: "8943d47912a4206e61836d99cca835da"
}
Frame {
msec: 3456
- hash: "87ca0584879b25336a1023ac3252fc9a"
+ hash: "4d06d264f71d75421c9a6d5a87d6a9ba"
}
Frame {
msec: 3472
- hash: "7bae45481596788afde8866a3c97edd7"
+ hash: "87d666ee3bcf7a606e2aecb4954cfb28"
}
Frame {
msec: 3488
- hash: "7bae45481596788afde8866a3c97edd7"
+ hash: "87d666ee3bcf7a606e2aecb4954cfb28"
}
Frame {
msec: 3504
- hash: "7bae45481596788afde8866a3c97edd7"
+ hash: "87d666ee3bcf7a606e2aecb4954cfb28"
}
Frame {
msec: 3520
- hash: "7bae45481596788afde8866a3c97edd7"
+ hash: "87d666ee3bcf7a606e2aecb4954cfb28"
}
Frame {
msec: 3536
- hash: "7bae45481596788afde8866a3c97edd7"
+ hash: "87d666ee3bcf7a606e2aecb4954cfb28"
}
Frame {
msec: 3552
- hash: "7bae45481596788afde8866a3c97edd7"
+ hash: "87d666ee3bcf7a606e2aecb4954cfb28"
}
Frame {
msec: 3568
- hash: "8c6052eb4cf03d7742a73874d9f15285"
+ hash: "ca17401d638025fde8aad18b9a358029"
}
Frame {
msec: 3584
- hash: "8a1b63c42867f87a1cf4b47944b3860a"
+ hash: "3542537f0b0e1375d81c7f0365bbdf1d"
}
Frame {
msec: 3600
- hash: "90712efd7c17b0ad33d2c2c02e9eaa97"
+ hash: "235b68812a3cb48fc09bd8319aef40f1"
}
Frame {
msec: 3616
- hash: "8099972420ffd03e2bfc3ea45918a543"
+ hash: "3aa88f646534068d13e9c4f23af52019"
}
Frame {
msec: 3632
- hash: "2b78b1179a34319c287a6659406e23c3"
+ hash: "8f037bdef4940fdb1936900ad5aee36e"
}
Frame {
msec: 3648
- hash: "ad9458ab4d6376c87350a2356c280f94"
+ hash: "18e8239c50ca62a5bd96d983ab5ff46d"
}
Frame {
msec: 3664
- hash: "a74bc230e310a2826b2fed962db22f7a"
+ hash: "d62f6887bdad9decb48ebaf63a6330a3"
}
Frame {
msec: 3680
- hash: "bd72e8f4757050c41673a6f0d38f2285"
+ hash: "0af7997ec1a755a761fc1ab47ef30137"
}
Frame {
msec: 3696
- hash: "379bad4fa4b605cb6a16434bdb031e2b"
+ hash: "b3a384f93ef5f36466f0a638182b66cb"
}
Frame {
msec: 3712
- hash: "e144a8e9586f29f9b2f042b47e7739ae"
+ hash: "fceb3ee105028e29dca001197c63e524"
}
Frame {
msec: 3728
- hash: "bd74c9e79bc1a88dd6a17a3aed21e368"
+ hash: "5c16dc7aee02eefa95d0c6211f81ba48"
}
Key {
type: 6
@@ -1098,31 +1098,31 @@ VisualTest {
}
Frame {
msec: 3744
- hash: "144724168f42372e10ec6c39662a5ed8"
+ hash: "e4c3193ad0885084becbeaaaa899fff4"
}
Frame {
msec: 3760
- hash: "d8859888802e7b54e2d2a44cf252eb54"
+ hash: "84afa9118845126960309537e529ea74"
}
Frame {
msec: 3776
- hash: "20561e2faf7e8fe1d6337248e6cd5e94"
+ hash: "6e18f95c4252aff3ee5447a08153ee53"
}
Frame {
msec: 3792
- hash: "184cff262d1004ce702c117a6b5b9699"
+ hash: "59facabe2430703113665d0153402472"
}
Frame {
msec: 3808
- hash: "61b156acacefa6e4f4ddd8adaca90d08"
+ hash: "316bce2e605a4df04d41a4f7620086bd"
}
Frame {
msec: 3824
- hash: "0906852b1e62a936694a22d6ffa4f5dd"
+ hash: "7dcba8f0dd9fd67518f0502d904624fd"
}
Frame {
msec: 3840
- image: "cursorDelegate.3.png"
+ hash: "cb9166d113c5c7495916f6b7f850407c"
}
Key {
type: 7
@@ -1134,59 +1134,59 @@ VisualTest {
}
Frame {
msec: 3856
- hash: "cc0fb2ae2dd1ccad94c453bc4c4b6d32"
+ image: "cursorDelegate.4.png"
}
Frame {
msec: 3872
- hash: "6a6baee5ca76d331c47fca4d0f7168e5"
+ hash: "7cc78c7ab5820a698b62c452dfc0d1db"
}
Frame {
msec: 3888
- hash: "32032d7ce55af41c97ac5bf33aca40bb"
+ hash: "5f068715dc1244895e6e09afd6e846a9"
}
Frame {
msec: 3904
- hash: "a8781226e5e494324a34e120aa446cd1"
+ hash: "c279e7293539593bfc8250d37f78791c"
}
Frame {
msec: 3920
- hash: "0dd5df088fcc0228a97ffe715c95e2b6"
+ hash: "d01ff855befa456a213d4f78f22fe46c"
}
Frame {
msec: 3936
- hash: "774b161fe9645bc69b89e580b3e41f71"
+ hash: "16e20d2e663e64daa1920b165604f342"
}
Frame {
msec: 3952
- hash: "5756d7ffd8ff656db54f4329ea909553"
+ hash: "2feebd6865e71afd30c73e342fb2cab1"
}
Frame {
msec: 3968
- hash: "2b4a5c97ff4d8792a7706bb78385ec35"
+ hash: "8c417cb9ef300c895323060ceb860bd9"
}
Frame {
msec: 3984
- hash: "f9765e4def564b64861402e1a873b169"
+ hash: "05903a78cad8d331349f93a1cea75d7d"
}
Frame {
msec: 4000
- hash: "287b07ef6288dcea13fffd2b95aafd54"
+ hash: "e142bb264ab7877a9b40596d497ea2c1"
}
Frame {
msec: 4016
- hash: "7abcb9d6cf223c1655f6265f780a321a"
+ hash: "717e5e965b9ff188fd9200927968d359"
}
Frame {
msec: 4032
- hash: "287b07ef6288dcea13fffd2b95aafd54"
+ hash: "e142bb264ab7877a9b40596d497ea2c1"
}
Frame {
msec: 4048
- hash: "f9765e4def564b64861402e1a873b169"
+ hash: "05903a78cad8d331349f93a1cea75d7d"
}
Frame {
msec: 4064
- hash: "2b4a5c97ff4d8792a7706bb78385ec35"
+ hash: "8c417cb9ef300c895323060ceb860bd9"
}
Key {
type: 7
@@ -1198,302 +1198,302 @@ VisualTest {
}
Frame {
msec: 4080
- hash: "5756d7ffd8ff656db54f4329ea909553"
+ hash: "2feebd6865e71afd30c73e342fb2cab1"
}
Frame {
msec: 4096
- hash: "774b161fe9645bc69b89e580b3e41f71"
+ hash: "16e20d2e663e64daa1920b165604f342"
}
Frame {
msec: 4112
- hash: "0dd5df088fcc0228a97ffe715c95e2b6"
+ hash: "d01ff855befa456a213d4f78f22fe46c"
}
Frame {
msec: 4128
- hash: "a8781226e5e494324a34e120aa446cd1"
+ hash: "c279e7293539593bfc8250d37f78791c"
}
Frame {
msec: 4144
- hash: "32032d7ce55af41c97ac5bf33aca40bb"
+ hash: "5f068715dc1244895e6e09afd6e846a9"
}
Frame {
msec: 4160
- hash: "6a6baee5ca76d331c47fca4d0f7168e5"
+ hash: "7cc78c7ab5820a698b62c452dfc0d1db"
}
Frame {
msec: 4176
- hash: "cc0fb2ae2dd1ccad94c453bc4c4b6d32"
+ hash: "194b8b8843cf8a7d90ec910ee4021d9c"
}
Frame {
msec: 4192
- hash: "2d1b406be294727a278ba6bbc97be62a"
+ hash: "cb9166d113c5c7495916f6b7f850407c"
}
Frame {
msec: 4208
- hash: "0906852b1e62a936694a22d6ffa4f5dd"
+ hash: "7dcba8f0dd9fd67518f0502d904624fd"
}
Frame {
msec: 4224
- hash: "61b156acacefa6e4f4ddd8adaca90d08"
+ hash: "316bce2e605a4df04d41a4f7620086bd"
}
Frame {
msec: 4240
- hash: "184cff262d1004ce702c117a6b5b9699"
+ hash: "59facabe2430703113665d0153402472"
}
Frame {
msec: 4256
- hash: "20561e2faf7e8fe1d6337248e6cd5e94"
+ hash: "6e18f95c4252aff3ee5447a08153ee53"
}
Frame {
msec: 4272
- hash: "d8859888802e7b54e2d2a44cf252eb54"
+ hash: "84afa9118845126960309537e529ea74"
}
Frame {
msec: 4288
- hash: "144724168f42372e10ec6c39662a5ed8"
+ hash: "e4c3193ad0885084becbeaaaa899fff4"
}
Frame {
msec: 4304
- hash: "d2da36fbf73289f545133bd608af66a2"
+ hash: "6a7b8f8ae1959681afc7e76c242ddf63"
}
Frame {
msec: 4320
- hash: "b1d7da6b42a31bba91148ab37b111945"
+ hash: "94457c4fd09b63fe9df738af422a3716"
}
Frame {
msec: 4336
- hash: "6f226a3b20d95e17df69e2c4e5aff3d1"
+ hash: "29189dea05961b2ed7d525b17bc99513"
}
Frame {
msec: 4352
- hash: "1109da0f043a9418661fc05e53fe3b45"
+ hash: "11fc3e52587bbedf0016c829d2d849d1"
}
Frame {
msec: 4368
- hash: "f3e901db9efd1d9fadf1cb6858040d51"
+ hash: "57178e2a3d404d4301ee89a6202ad7cc"
}
Frame {
msec: 4384
- hash: "c8e50c0e924b11a3f1943abb9a4008a4"
+ hash: "151778e9dd76fbf6d9e98b86469ec01e"
}
Frame {
msec: 4400
- hash: "431226a27488ed1dba237de3d43f94c5"
+ hash: "bfab5d3f368c06f2ef5e22b7e16090ad"
}
Frame {
msec: 4416
- hash: "420d316430c84f10d7cd24d29b918149"
+ hash: "ef29b8ff8fcf221368056aa249f706a1"
}
Frame {
msec: 4432
- hash: "ccbd4d1e4865ebd9b0fe923e6ab05e5c"
+ hash: "cd14458426f94efbbc729112e6a481c5"
}
Frame {
msec: 4448
- hash: "231bff73758a1c6f7c7c0365159ba3e6"
+ hash: "cbafbb1c359a0c0e7182c4449d04b052"
}
Frame {
msec: 4464
- hash: "d1ac7ceda7303bbf3392d33f47037ed6"
+ hash: "b56e3f531bb6b3f2c62a6972910038b3"
}
Frame {
msec: 4480
- hash: "7bae45481596788afde8866a3c97edd7"
+ hash: "87d666ee3bcf7a606e2aecb4954cfb28"
}
Frame {
msec: 4496
- hash: "7bae45481596788afde8866a3c97edd7"
+ hash: "87d666ee3bcf7a606e2aecb4954cfb28"
}
Frame {
msec: 4512
- hash: "7bae45481596788afde8866a3c97edd7"
+ hash: "87d666ee3bcf7a606e2aecb4954cfb28"
}
Frame {
msec: 4528
- hash: "7bae45481596788afde8866a3c97edd7"
+ hash: "87d666ee3bcf7a606e2aecb4954cfb28"
}
Frame {
msec: 4544
- hash: "7bae45481596788afde8866a3c97edd7"
+ hash: "87d666ee3bcf7a606e2aecb4954cfb28"
}
Frame {
msec: 4560
- hash: "7bae45481596788afde8866a3c97edd7"
+ hash: "87d666ee3bcf7a606e2aecb4954cfb28"
}
Frame {
msec: 4576
- hash: "a2ad07326fafcb3012cdb869f39af466"
+ hash: "3d6db6e3ee77ee75341ce16dc4a56c59"
}
Frame {
msec: 4592
- hash: "8622eb25a6da44926b5161bce213a483"
+ hash: "ff43ccdb14ae4d12ffead2eb261a5056"
}
Frame {
msec: 4608
- hash: "fe563aa9dae9655871f82a779063cdbd"
+ hash: "fb73ac1e61834f2f0263e53a3c00a857"
}
Frame {
msec: 4624
- hash: "775cd79b012f79b773449a0ad8457149"
+ hash: "6bd66d118ff27b0cea7944ea22c727c9"
}
Frame {
msec: 4640
- hash: "01e9fab344a148a0877a7332d561be5a"
+ hash: "0b474aa5492386c319bf72280dae7896"
}
Frame {
msec: 4656
- hash: "935566d139599a30197850774fb059ba"
+ hash: "81952cf37f0965a603bf06a05ef610fa"
}
Frame {
msec: 4672
- hash: "4aae1ac532624417decddd978f516b6e"
+ hash: "ad7606f147498c755284d111a1af7710"
}
Frame {
msec: 4688
- hash: "34dc78df6e9941988712c1f8f79c3db0"
+ hash: "144abb4208f9cc4f823e0d4abb3207d8"
}
Frame {
msec: 4704
- hash: "23a96c11d5917c44bd48239ed2b5777f"
+ hash: "0b4f3fafaf262f16e887938eda9624a3"
}
Frame {
msec: 4720
- hash: "f8f13e097eae3152db3ccebff1343fe0"
+ hash: "e729d3fde3db0f72b1080c7dc2eded1a"
}
Frame {
msec: 4736
- hash: "02f8fca7c4ab80ecf425e4b39e966b86"
+ hash: "36ffc8e16ebcb9c4499c4ff037b8b293"
}
Frame {
msec: 4752
- hash: "c3356367750e797ff81bc4102f948134"
+ hash: "c49853a23d2e8b966836888acce19ecc"
}
Frame {
msec: 4768
- hash: "7b5de3772b8bcb4b10f3d265d5603afb"
+ hash: "3873af5aa871bdb1d4f538333b11cf33"
}
Frame {
msec: 4784
- hash: "ed3c741639232377f61867fd353ce58a"
+ hash: "6d02efe848b27b3e221a8332099fb83f"
}
Frame {
msec: 4800
- image: "cursorDelegate.4.png"
+ hash: "2f08f365916d892f0789e93b674cb41b"
}
Frame {
msec: 4816
- hash: "5ca117709284f4a1cbd64cdba4079340"
+ image: "cursorDelegate.5.png"
}
Frame {
msec: 4832
- hash: "de315e6836334fd0a2da855f5be4ff30"
+ hash: "3adb8604d872bc8ff5498841c6da71b5"
}
Frame {
msec: 4848
- hash: "3d284b4000d2849ed4af2f7c1b859492"
+ hash: "e6eaa9959334f24ef3cf68d44d7340f1"
}
Frame {
msec: 4864
- hash: "83f297406b1c6311da3a216024836d15"
+ hash: "eba94c6ae3dc4eb26c8d074137c7aa0f"
}
Frame {
msec: 4880
- hash: "1bb236db749ef514c00d0a3dd698d24f"
+ hash: "7c75307fbb765bd69b888d500247b595"
}
Frame {
msec: 4896
- hash: "93f79f8717948bde8ee55c668af2d397"
+ hash: "2c0261e2223d7212e047dd4af6246a8f"
}
Frame {
msec: 4912
- hash: "881b5c2ccd0bbdaea4d61abbec600fc5"
+ hash: "da73d23a925d93194aeb64d1522adc02"
}
Frame {
msec: 4928
- hash: "be72fe7c27901db62f2dbd9a757e4838"
+ hash: "d661872854338121d867b35d9e44ae6d"
}
Frame {
msec: 4944
- hash: "c83c973fb1253ccab333fb1e604155b8"
+ hash: "969b5cf20c7c4e18723a8b8a70ea68ec"
}
Frame {
msec: 4960
- hash: "dd6072d204812c23e24db1e7a81c6f57"
+ hash: "c7318ea4b4a4ac49308bef41d3bc264d"
}
Frame {
msec: 4976
- hash: "fb342743dc5ab9ade2b8a48a2a11dc8f"
+ hash: "dd6bd11cc0bc877dbd70c55d4f5bab29"
}
Frame {
msec: 4992
- hash: "fc8ede705bfe8f339fe47041c502b0d6"
+ hash: "21905ed4264a52c9b404149abedabe33"
}
Frame {
msec: 5008
- hash: "00fa0306d3fdc7e384cfc0660a3a355d"
+ hash: "e952374e5967619679af711157b561cd"
}
Frame {
msec: 5024
- hash: "00fa0306d3fdc7e384cfc0660a3a355d"
+ hash: "e952374e5967619679af711157b561cd"
}
Frame {
msec: 5040
- hash: "fc8ede705bfe8f339fe47041c502b0d6"
+ hash: "21905ed4264a52c9b404149abedabe33"
}
Frame {
msec: 5056
- hash: "fb342743dc5ab9ade2b8a48a2a11dc8f"
+ hash: "dd6bd11cc0bc877dbd70c55d4f5bab29"
}
Frame {
msec: 5072
- hash: "dd6072d204812c23e24db1e7a81c6f57"
+ hash: "c7318ea4b4a4ac49308bef41d3bc264d"
}
Frame {
msec: 5088
- hash: "c83c973fb1253ccab333fb1e604155b8"
+ hash: "969b5cf20c7c4e18723a8b8a70ea68ec"
}
Frame {
msec: 5104
- hash: "be72fe7c27901db62f2dbd9a757e4838"
+ hash: "d661872854338121d867b35d9e44ae6d"
}
Frame {
msec: 5120
- hash: "881b5c2ccd0bbdaea4d61abbec600fc5"
+ hash: "da73d23a925d93194aeb64d1522adc02"
}
Frame {
msec: 5136
- hash: "93f79f8717948bde8ee55c668af2d397"
+ hash: "2c0261e2223d7212e047dd4af6246a8f"
}
Frame {
msec: 5152
- hash: "1bb236db749ef514c00d0a3dd698d24f"
+ hash: "7c75307fbb765bd69b888d500247b595"
}
Frame {
msec: 5168
- hash: "83f297406b1c6311da3a216024836d15"
+ hash: "eba94c6ae3dc4eb26c8d074137c7aa0f"
}
Frame {
msec: 5184
- hash: "3d284b4000d2849ed4af2f7c1b859492"
+ hash: "e6eaa9959334f24ef3cf68d44d7340f1"
}
Frame {
msec: 5200
- hash: "de315e6836334fd0a2da855f5be4ff30"
+ hash: "3adb8604d872bc8ff5498841c6da71b5"
}
Frame {
msec: 5216
- hash: "5ca117709284f4a1cbd64cdba4079340"
+ hash: "e602eeaac3ce53033154297e73802c02"
}
Frame {
msec: 5232
- hash: "4f0d49aff27a1c83287d38e760c10f16"
+ hash: "2f08f365916d892f0789e93b674cb41b"
}
Frame {
msec: 5248
- hash: "ed3c741639232377f61867fd353ce58a"
+ hash: "6d02efe848b27b3e221a8332099fb83f"
}
Frame {
msec: 5264
- hash: "7b5de3772b8bcb4b10f3d265d5603afb"
+ hash: "3873af5aa871bdb1d4f538333b11cf33"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/qt-669.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/qt-669.0.png
index 7c68d9c18e..8d74b8deeb 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/qt-669.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/qt-669.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/qt-669.1.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/qt-669.1.png
index 96afa8d0ba..8a642d275e 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/qt-669.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/qt-669.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/qt-669.2.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/qt-669.2.png
index 58b168d699..5698741e39 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/qt-669.2.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/qt-669.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/qt-669.3.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/qt-669.3.png
index 95f0c9878c..7f56f34fbf 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/qt-669.3.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/qt-669.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/qt-669.4.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/qt-669.4.png
new file mode 100644
index 0000000000..8d74b8deeb
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/qt-669.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/qt-669.qml b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/qt-669.qml
index 7b00cdda88..a4ba005c6b 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/qt-669.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/qt-669.qml
@@ -6,99 +6,99 @@ VisualTest {
}
Frame {
msec: 16
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ image: "qt-669.0.png"
}
Frame {
msec: 32
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 48
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 64
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 80
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 96
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 112
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 128
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 144
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 160
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 176
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 192
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 208
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 224
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 240
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 256
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 272
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 288
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 304
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 320
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 336
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 352
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 368
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 384
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Key {
type: 6
@@ -110,15 +110,15 @@ VisualTest {
}
Frame {
msec: 400
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 416
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 432
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Key {
type: 7
@@ -130,27 +130,27 @@ VisualTest {
}
Frame {
msec: 448
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 464
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 480
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 496
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 512
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 528
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Key {
type: 6
@@ -162,15 +162,15 @@ VisualTest {
}
Frame {
msec: 544
- hash: "b6f3847d394c87873e34814e332e205a"
+ hash: "53f9d63bacad27fd73c2f84b82599dbc"
}
Frame {
msec: 560
- hash: "b6f3847d394c87873e34814e332e205a"
+ hash: "53f9d63bacad27fd73c2f84b82599dbc"
}
Frame {
msec: 576
- hash: "b6f3847d394c87873e34814e332e205a"
+ hash: "53f9d63bacad27fd73c2f84b82599dbc"
}
Key {
type: 7
@@ -182,27 +182,27 @@ VisualTest {
}
Frame {
msec: 592
- hash: "b6f3847d394c87873e34814e332e205a"
+ hash: "53f9d63bacad27fd73c2f84b82599dbc"
}
Frame {
msec: 608
- hash: "b6f3847d394c87873e34814e332e205a"
+ hash: "53f9d63bacad27fd73c2f84b82599dbc"
}
Frame {
msec: 624
- hash: "b6f3847d394c87873e34814e332e205a"
+ hash: "53f9d63bacad27fd73c2f84b82599dbc"
}
Frame {
msec: 640
- hash: "b6f3847d394c87873e34814e332e205a"
+ hash: "53f9d63bacad27fd73c2f84b82599dbc"
}
Frame {
msec: 656
- hash: "b6f3847d394c87873e34814e332e205a"
+ hash: "53f9d63bacad27fd73c2f84b82599dbc"
}
Frame {
msec: 672
- hash: "b6f3847d394c87873e34814e332e205a"
+ hash: "53f9d63bacad27fd73c2f84b82599dbc"
}
Key {
type: 6
@@ -214,19 +214,19 @@ VisualTest {
}
Frame {
msec: 688
- hash: "40504095d8877e37cd24ac694ca94758"
+ hash: "b069c174a1b9589ed3137cd01f870b17"
}
Frame {
msec: 704
- hash: "40504095d8877e37cd24ac694ca94758"
+ hash: "b069c174a1b9589ed3137cd01f870b17"
}
Frame {
msec: 720
- hash: "40504095d8877e37cd24ac694ca94758"
+ hash: "b069c174a1b9589ed3137cd01f870b17"
}
Frame {
msec: 736
- hash: "40504095d8877e37cd24ac694ca94758"
+ hash: "b069c174a1b9589ed3137cd01f870b17"
}
Key {
type: 7
@@ -238,23 +238,23 @@ VisualTest {
}
Frame {
msec: 752
- hash: "40504095d8877e37cd24ac694ca94758"
+ hash: "b069c174a1b9589ed3137cd01f870b17"
}
Frame {
msec: 768
- hash: "40504095d8877e37cd24ac694ca94758"
+ hash: "b069c174a1b9589ed3137cd01f870b17"
}
Frame {
msec: 784
- hash: "40504095d8877e37cd24ac694ca94758"
+ hash: "b069c174a1b9589ed3137cd01f870b17"
}
Frame {
msec: 800
- hash: "40504095d8877e37cd24ac694ca94758"
+ hash: "b069c174a1b9589ed3137cd01f870b17"
}
Frame {
msec: 816
- hash: "40504095d8877e37cd24ac694ca94758"
+ hash: "b069c174a1b9589ed3137cd01f870b17"
}
Key {
type: 6
@@ -266,19 +266,19 @@ VisualTest {
}
Frame {
msec: 832
- hash: "ad3b0560a1e896c39acff9a7cf53b043"
+ hash: "fa22742b8778a3b63ce7d6699dbf7482"
}
Frame {
msec: 848
- hash: "ad3b0560a1e896c39acff9a7cf53b043"
+ hash: "fa22742b8778a3b63ce7d6699dbf7482"
}
Frame {
msec: 864
- hash: "ad3b0560a1e896c39acff9a7cf53b043"
+ hash: "fa22742b8778a3b63ce7d6699dbf7482"
}
Frame {
msec: 880
- hash: "ad3b0560a1e896c39acff9a7cf53b043"
+ hash: "fa22742b8778a3b63ce7d6699dbf7482"
}
Key {
type: 7
@@ -290,19 +290,19 @@ VisualTest {
}
Frame {
msec: 896
- hash: "ad3b0560a1e896c39acff9a7cf53b043"
+ hash: "fa22742b8778a3b63ce7d6699dbf7482"
}
Frame {
msec: 912
- hash: "ad3b0560a1e896c39acff9a7cf53b043"
+ hash: "fa22742b8778a3b63ce7d6699dbf7482"
}
Frame {
msec: 928
- hash: "ad3b0560a1e896c39acff9a7cf53b043"
+ hash: "fa22742b8778a3b63ce7d6699dbf7482"
}
Frame {
msec: 944
- hash: "ad3b0560a1e896c39acff9a7cf53b043"
+ hash: "fa22742b8778a3b63ce7d6699dbf7482"
}
Key {
type: 6
@@ -314,19 +314,19 @@ VisualTest {
}
Frame {
msec: 960
- image: "qt-669.0.png"
+ hash: "3624b85c9362dfeff911cd5426f11ada"
}
Frame {
msec: 976
- hash: "0c7162e2bf228c76c7b9247e7ee1cf63"
+ image: "qt-669.1.png"
}
Frame {
msec: 992
- hash: "0c7162e2bf228c76c7b9247e7ee1cf63"
+ hash: "3624b85c9362dfeff911cd5426f11ada"
}
Frame {
msec: 1008
- hash: "0c7162e2bf228c76c7b9247e7ee1cf63"
+ hash: "3624b85c9362dfeff911cd5426f11ada"
}
Key {
type: 7
@@ -338,23 +338,23 @@ VisualTest {
}
Frame {
msec: 1024
- hash: "0c7162e2bf228c76c7b9247e7ee1cf63"
+ hash: "3624b85c9362dfeff911cd5426f11ada"
}
Frame {
msec: 1040
- hash: "0c7162e2bf228c76c7b9247e7ee1cf63"
+ hash: "3624b85c9362dfeff911cd5426f11ada"
}
Frame {
msec: 1056
- hash: "0c7162e2bf228c76c7b9247e7ee1cf63"
+ hash: "3624b85c9362dfeff911cd5426f11ada"
}
Frame {
msec: 1072
- hash: "0c7162e2bf228c76c7b9247e7ee1cf63"
+ hash: "3624b85c9362dfeff911cd5426f11ada"
}
Frame {
msec: 1088
- hash: "0c7162e2bf228c76c7b9247e7ee1cf63"
+ hash: "3624b85c9362dfeff911cd5426f11ada"
}
Key {
type: 6
@@ -366,15 +366,15 @@ VisualTest {
}
Frame {
msec: 1104
- hash: "5e8b89638494bceaed69ce3d75245458"
+ hash: "c8b5e39f4930399527236905cdbcb546"
}
Frame {
msec: 1120
- hash: "5e8b89638494bceaed69ce3d75245458"
+ hash: "c8b5e39f4930399527236905cdbcb546"
}
Frame {
msec: 1136
- hash: "5e8b89638494bceaed69ce3d75245458"
+ hash: "c8b5e39f4930399527236905cdbcb546"
}
Key {
type: 7
@@ -386,23 +386,23 @@ VisualTest {
}
Frame {
msec: 1152
- hash: "5e8b89638494bceaed69ce3d75245458"
+ hash: "c8b5e39f4930399527236905cdbcb546"
}
Frame {
msec: 1168
- hash: "5e8b89638494bceaed69ce3d75245458"
+ hash: "c8b5e39f4930399527236905cdbcb546"
}
Frame {
msec: 1184
- hash: "5e8b89638494bceaed69ce3d75245458"
+ hash: "c8b5e39f4930399527236905cdbcb546"
}
Frame {
msec: 1200
- hash: "5e8b89638494bceaed69ce3d75245458"
+ hash: "c8b5e39f4930399527236905cdbcb546"
}
Frame {
msec: 1216
- hash: "5e8b89638494bceaed69ce3d75245458"
+ hash: "c8b5e39f4930399527236905cdbcb546"
}
Key {
type: 6
@@ -414,19 +414,19 @@ VisualTest {
}
Frame {
msec: 1232
- hash: "2da2b87d285f27ee4cdd82c2c03cdf08"
+ hash: "b80db720c6371aeaf99f4787fec2c5a3"
}
Frame {
msec: 1248
- hash: "2da2b87d285f27ee4cdd82c2c03cdf08"
+ hash: "b80db720c6371aeaf99f4787fec2c5a3"
}
Frame {
msec: 1264
- hash: "2da2b87d285f27ee4cdd82c2c03cdf08"
+ hash: "b80db720c6371aeaf99f4787fec2c5a3"
}
Frame {
msec: 1280
- hash: "2da2b87d285f27ee4cdd82c2c03cdf08"
+ hash: "b80db720c6371aeaf99f4787fec2c5a3"
}
Key {
type: 7
@@ -438,19 +438,19 @@ VisualTest {
}
Frame {
msec: 1296
- hash: "2da2b87d285f27ee4cdd82c2c03cdf08"
+ hash: "b80db720c6371aeaf99f4787fec2c5a3"
}
Frame {
msec: 1312
- hash: "2da2b87d285f27ee4cdd82c2c03cdf08"
+ hash: "b80db720c6371aeaf99f4787fec2c5a3"
}
Frame {
msec: 1328
- hash: "2da2b87d285f27ee4cdd82c2c03cdf08"
+ hash: "b80db720c6371aeaf99f4787fec2c5a3"
}
Frame {
msec: 1344
- hash: "2da2b87d285f27ee4cdd82c2c03cdf08"
+ hash: "b80db720c6371aeaf99f4787fec2c5a3"
}
Key {
type: 6
@@ -462,19 +462,19 @@ VisualTest {
}
Frame {
msec: 1360
- hash: "2dc196a65cb13214901e0189c2b1984b"
+ hash: "6f08f7b6337d5ebb305579bb71ba31d8"
}
Frame {
msec: 1376
- hash: "2dc196a65cb13214901e0189c2b1984b"
+ hash: "6f08f7b6337d5ebb305579bb71ba31d8"
}
Frame {
msec: 1392
- hash: "2dc196a65cb13214901e0189c2b1984b"
+ hash: "6f08f7b6337d5ebb305579bb71ba31d8"
}
Frame {
msec: 1408
- hash: "2dc196a65cb13214901e0189c2b1984b"
+ hash: "6f08f7b6337d5ebb305579bb71ba31d8"
}
Key {
type: 7
@@ -486,23 +486,23 @@ VisualTest {
}
Frame {
msec: 1424
- hash: "2dc196a65cb13214901e0189c2b1984b"
+ hash: "6f08f7b6337d5ebb305579bb71ba31d8"
}
Frame {
msec: 1440
- hash: "2dc196a65cb13214901e0189c2b1984b"
+ hash: "6f08f7b6337d5ebb305579bb71ba31d8"
}
Frame {
msec: 1456
- hash: "2dc196a65cb13214901e0189c2b1984b"
+ hash: "6f08f7b6337d5ebb305579bb71ba31d8"
}
Frame {
msec: 1472
- hash: "2dc196a65cb13214901e0189c2b1984b"
+ hash: "6f08f7b6337d5ebb305579bb71ba31d8"
}
Frame {
msec: 1488
- hash: "2dc196a65cb13214901e0189c2b1984b"
+ hash: "6f08f7b6337d5ebb305579bb71ba31d8"
}
Key {
type: 6
@@ -514,15 +514,15 @@ VisualTest {
}
Frame {
msec: 1504
- hash: "6a76601730228708049c79b414b3cbe2"
+ hash: "da047993eb77afffee6b8f0f210ca2d6"
}
Frame {
msec: 1520
- hash: "6a76601730228708049c79b414b3cbe2"
+ hash: "da047993eb77afffee6b8f0f210ca2d6"
}
Frame {
msec: 1536
- hash: "6a76601730228708049c79b414b3cbe2"
+ hash: "da047993eb77afffee6b8f0f210ca2d6"
}
Key {
type: 7
@@ -534,79 +534,79 @@ VisualTest {
}
Frame {
msec: 1552
- hash: "6a76601730228708049c79b414b3cbe2"
+ hash: "da047993eb77afffee6b8f0f210ca2d6"
}
Frame {
msec: 1568
- hash: "6a76601730228708049c79b414b3cbe2"
+ hash: "da047993eb77afffee6b8f0f210ca2d6"
}
Frame {
msec: 1584
- hash: "6a76601730228708049c79b414b3cbe2"
+ hash: "da047993eb77afffee6b8f0f210ca2d6"
}
Frame {
msec: 1600
- hash: "6a76601730228708049c79b414b3cbe2"
+ hash: "da047993eb77afffee6b8f0f210ca2d6"
}
Frame {
msec: 1616
- hash: "6a76601730228708049c79b414b3cbe2"
+ hash: "da047993eb77afffee6b8f0f210ca2d6"
}
Frame {
msec: 1632
- hash: "6a76601730228708049c79b414b3cbe2"
+ hash: "da047993eb77afffee6b8f0f210ca2d6"
}
Frame {
msec: 1648
- hash: "6a76601730228708049c79b414b3cbe2"
+ hash: "da047993eb77afffee6b8f0f210ca2d6"
}
Frame {
msec: 1664
- hash: "6a76601730228708049c79b414b3cbe2"
+ hash: "da047993eb77afffee6b8f0f210ca2d6"
}
Frame {
msec: 1680
- hash: "6a76601730228708049c79b414b3cbe2"
+ hash: "da047993eb77afffee6b8f0f210ca2d6"
}
Frame {
msec: 1696
- hash: "6a76601730228708049c79b414b3cbe2"
+ hash: "da047993eb77afffee6b8f0f210ca2d6"
}
Frame {
msec: 1712
- hash: "6a76601730228708049c79b414b3cbe2"
+ hash: "da047993eb77afffee6b8f0f210ca2d6"
}
Frame {
msec: 1728
- hash: "6a76601730228708049c79b414b3cbe2"
+ hash: "da047993eb77afffee6b8f0f210ca2d6"
}
Frame {
msec: 1744
- hash: "6a76601730228708049c79b414b3cbe2"
+ hash: "da047993eb77afffee6b8f0f210ca2d6"
}
Frame {
msec: 1760
- hash: "6a76601730228708049c79b414b3cbe2"
+ hash: "da047993eb77afffee6b8f0f210ca2d6"
}
Frame {
msec: 1776
- hash: "6a76601730228708049c79b414b3cbe2"
+ hash: "da047993eb77afffee6b8f0f210ca2d6"
}
Frame {
msec: 1792
- hash: "6a76601730228708049c79b414b3cbe2"
+ hash: "da047993eb77afffee6b8f0f210ca2d6"
}
Frame {
msec: 1808
- hash: "6a76601730228708049c79b414b3cbe2"
+ hash: "da047993eb77afffee6b8f0f210ca2d6"
}
Frame {
msec: 1824
- hash: "6a76601730228708049c79b414b3cbe2"
+ hash: "da047993eb77afffee6b8f0f210ca2d6"
}
Frame {
msec: 1840
- hash: "6a76601730228708049c79b414b3cbe2"
+ hash: "da047993eb77afffee6b8f0f210ca2d6"
}
Key {
type: 6
@@ -618,39 +618,39 @@ VisualTest {
}
Frame {
msec: 1856
- hash: "2dc196a65cb13214901e0189c2b1984b"
+ hash: "6f08f7b6337d5ebb305579bb71ba31d8"
}
Frame {
msec: 1872
- hash: "2dc196a65cb13214901e0189c2b1984b"
+ hash: "6f08f7b6337d5ebb305579bb71ba31d8"
}
Frame {
msec: 1888
- hash: "2dc196a65cb13214901e0189c2b1984b"
+ hash: "6f08f7b6337d5ebb305579bb71ba31d8"
}
Frame {
msec: 1904
- hash: "2dc196a65cb13214901e0189c2b1984b"
+ hash: "6f08f7b6337d5ebb305579bb71ba31d8"
}
Frame {
msec: 1920
- image: "qt-669.1.png"
+ hash: "6f08f7b6337d5ebb305579bb71ba31d8"
}
Frame {
msec: 1936
- hash: "2dc196a65cb13214901e0189c2b1984b"
+ image: "qt-669.2.png"
}
Frame {
msec: 1952
- hash: "2dc196a65cb13214901e0189c2b1984b"
+ hash: "6f08f7b6337d5ebb305579bb71ba31d8"
}
Frame {
msec: 1968
- hash: "2dc196a65cb13214901e0189c2b1984b"
+ hash: "6f08f7b6337d5ebb305579bb71ba31d8"
}
Frame {
msec: 1984
- hash: "2dc196a65cb13214901e0189c2b1984b"
+ hash: "6f08f7b6337d5ebb305579bb71ba31d8"
}
Key {
type: 7
@@ -662,23 +662,23 @@ VisualTest {
}
Frame {
msec: 2000
- hash: "2dc196a65cb13214901e0189c2b1984b"
+ hash: "6f08f7b6337d5ebb305579bb71ba31d8"
}
Frame {
msec: 2016
- hash: "2dc196a65cb13214901e0189c2b1984b"
+ hash: "6f08f7b6337d5ebb305579bb71ba31d8"
}
Frame {
msec: 2032
- hash: "2dc196a65cb13214901e0189c2b1984b"
+ hash: "6f08f7b6337d5ebb305579bb71ba31d8"
}
Frame {
msec: 2048
- hash: "2dc196a65cb13214901e0189c2b1984b"
+ hash: "6f08f7b6337d5ebb305579bb71ba31d8"
}
Frame {
msec: 2064
- hash: "2dc196a65cb13214901e0189c2b1984b"
+ hash: "6f08f7b6337d5ebb305579bb71ba31d8"
}
Key {
type: 6
@@ -690,23 +690,23 @@ VisualTest {
}
Frame {
msec: 2080
- hash: "2da2b87d285f27ee4cdd82c2c03cdf08"
+ hash: "b80db720c6371aeaf99f4787fec2c5a3"
}
Frame {
msec: 2096
- hash: "2da2b87d285f27ee4cdd82c2c03cdf08"
+ hash: "b80db720c6371aeaf99f4787fec2c5a3"
}
Frame {
msec: 2112
- hash: "2da2b87d285f27ee4cdd82c2c03cdf08"
+ hash: "b80db720c6371aeaf99f4787fec2c5a3"
}
Frame {
msec: 2128
- hash: "2da2b87d285f27ee4cdd82c2c03cdf08"
+ hash: "b80db720c6371aeaf99f4787fec2c5a3"
}
Frame {
msec: 2144
- hash: "2da2b87d285f27ee4cdd82c2c03cdf08"
+ hash: "b80db720c6371aeaf99f4787fec2c5a3"
}
Key {
type: 7
@@ -718,23 +718,23 @@ VisualTest {
}
Frame {
msec: 2160
- hash: "2da2b87d285f27ee4cdd82c2c03cdf08"
+ hash: "b80db720c6371aeaf99f4787fec2c5a3"
}
Frame {
msec: 2176
- hash: "2da2b87d285f27ee4cdd82c2c03cdf08"
+ hash: "b80db720c6371aeaf99f4787fec2c5a3"
}
Frame {
msec: 2192
- hash: "2da2b87d285f27ee4cdd82c2c03cdf08"
+ hash: "b80db720c6371aeaf99f4787fec2c5a3"
}
Frame {
msec: 2208
- hash: "2da2b87d285f27ee4cdd82c2c03cdf08"
+ hash: "b80db720c6371aeaf99f4787fec2c5a3"
}
Frame {
msec: 2224
- hash: "2da2b87d285f27ee4cdd82c2c03cdf08"
+ hash: "b80db720c6371aeaf99f4787fec2c5a3"
}
Key {
type: 6
@@ -746,11 +746,11 @@ VisualTest {
}
Frame {
msec: 2240
- hash: "5e8b89638494bceaed69ce3d75245458"
+ hash: "c8b5e39f4930399527236905cdbcb546"
}
Frame {
msec: 2256
- hash: "5e8b89638494bceaed69ce3d75245458"
+ hash: "c8b5e39f4930399527236905cdbcb546"
}
Key {
type: 7
@@ -762,23 +762,23 @@ VisualTest {
}
Frame {
msec: 2272
- hash: "5e8b89638494bceaed69ce3d75245458"
+ hash: "c8b5e39f4930399527236905cdbcb546"
}
Frame {
msec: 2288
- hash: "5e8b89638494bceaed69ce3d75245458"
+ hash: "c8b5e39f4930399527236905cdbcb546"
}
Frame {
msec: 2304
- hash: "5e8b89638494bceaed69ce3d75245458"
+ hash: "c8b5e39f4930399527236905cdbcb546"
}
Frame {
msec: 2320
- hash: "5e8b89638494bceaed69ce3d75245458"
+ hash: "c8b5e39f4930399527236905cdbcb546"
}
Frame {
msec: 2336
- hash: "5e8b89638494bceaed69ce3d75245458"
+ hash: "c8b5e39f4930399527236905cdbcb546"
}
Key {
type: 6
@@ -790,15 +790,15 @@ VisualTest {
}
Frame {
msec: 2352
- hash: "0c7162e2bf228c76c7b9247e7ee1cf63"
+ hash: "3624b85c9362dfeff911cd5426f11ada"
}
Frame {
msec: 2368
- hash: "0c7162e2bf228c76c7b9247e7ee1cf63"
+ hash: "3624b85c9362dfeff911cd5426f11ada"
}
Frame {
msec: 2384
- hash: "0c7162e2bf228c76c7b9247e7ee1cf63"
+ hash: "3624b85c9362dfeff911cd5426f11ada"
}
Key {
type: 7
@@ -810,55 +810,55 @@ VisualTest {
}
Frame {
msec: 2400
- hash: "0c7162e2bf228c76c7b9247e7ee1cf63"
+ hash: "3624b85c9362dfeff911cd5426f11ada"
}
Frame {
msec: 2416
- hash: "0c7162e2bf228c76c7b9247e7ee1cf63"
+ hash: "3624b85c9362dfeff911cd5426f11ada"
}
Frame {
msec: 2432
- hash: "0c7162e2bf228c76c7b9247e7ee1cf63"
+ hash: "3624b85c9362dfeff911cd5426f11ada"
}
Frame {
msec: 2448
- hash: "0c7162e2bf228c76c7b9247e7ee1cf63"
+ hash: "3624b85c9362dfeff911cd5426f11ada"
}
Frame {
msec: 2464
- hash: "0c7162e2bf228c76c7b9247e7ee1cf63"
+ hash: "3624b85c9362dfeff911cd5426f11ada"
}
Frame {
msec: 2480
- hash: "0c7162e2bf228c76c7b9247e7ee1cf63"
+ hash: "3624b85c9362dfeff911cd5426f11ada"
}
Frame {
msec: 2496
- hash: "0c7162e2bf228c76c7b9247e7ee1cf63"
+ hash: "3624b85c9362dfeff911cd5426f11ada"
}
Frame {
msec: 2512
- hash: "0c7162e2bf228c76c7b9247e7ee1cf63"
+ hash: "3624b85c9362dfeff911cd5426f11ada"
}
Frame {
msec: 2528
- hash: "0c7162e2bf228c76c7b9247e7ee1cf63"
+ hash: "3624b85c9362dfeff911cd5426f11ada"
}
Frame {
msec: 2544
- hash: "0c7162e2bf228c76c7b9247e7ee1cf63"
+ hash: "3624b85c9362dfeff911cd5426f11ada"
}
Frame {
msec: 2560
- hash: "0c7162e2bf228c76c7b9247e7ee1cf63"
+ hash: "3624b85c9362dfeff911cd5426f11ada"
}
Frame {
msec: 2576
- hash: "0c7162e2bf228c76c7b9247e7ee1cf63"
+ hash: "3624b85c9362dfeff911cd5426f11ada"
}
Frame {
msec: 2592
- hash: "0c7162e2bf228c76c7b9247e7ee1cf63"
+ hash: "3624b85c9362dfeff911cd5426f11ada"
}
Key {
type: 6
@@ -870,23 +870,23 @@ VisualTest {
}
Frame {
msec: 2608
- hash: "ad3b0560a1e896c39acff9a7cf53b043"
+ hash: "fa22742b8778a3b63ce7d6699dbf7482"
}
Frame {
msec: 2624
- hash: "ad3b0560a1e896c39acff9a7cf53b043"
+ hash: "fa22742b8778a3b63ce7d6699dbf7482"
}
Frame {
msec: 2640
- hash: "ad3b0560a1e896c39acff9a7cf53b043"
+ hash: "fa22742b8778a3b63ce7d6699dbf7482"
}
Frame {
msec: 2656
- hash: "ad3b0560a1e896c39acff9a7cf53b043"
+ hash: "fa22742b8778a3b63ce7d6699dbf7482"
}
Frame {
msec: 2672
- hash: "ad3b0560a1e896c39acff9a7cf53b043"
+ hash: "fa22742b8778a3b63ce7d6699dbf7482"
}
Key {
type: 7
@@ -898,23 +898,23 @@ VisualTest {
}
Frame {
msec: 2688
- hash: "ad3b0560a1e896c39acff9a7cf53b043"
+ hash: "fa22742b8778a3b63ce7d6699dbf7482"
}
Frame {
msec: 2704
- hash: "ad3b0560a1e896c39acff9a7cf53b043"
+ hash: "fa22742b8778a3b63ce7d6699dbf7482"
}
Frame {
msec: 2720
- hash: "ad3b0560a1e896c39acff9a7cf53b043"
+ hash: "fa22742b8778a3b63ce7d6699dbf7482"
}
Frame {
msec: 2736
- hash: "ad3b0560a1e896c39acff9a7cf53b043"
+ hash: "fa22742b8778a3b63ce7d6699dbf7482"
}
Frame {
msec: 2752
- hash: "ad3b0560a1e896c39acff9a7cf53b043"
+ hash: "fa22742b8778a3b63ce7d6699dbf7482"
}
Key {
type: 6
@@ -926,15 +926,15 @@ VisualTest {
}
Frame {
msec: 2768
- hash: "40504095d8877e37cd24ac694ca94758"
+ hash: "b069c174a1b9589ed3137cd01f870b17"
}
Frame {
msec: 2784
- hash: "40504095d8877e37cd24ac694ca94758"
+ hash: "b069c174a1b9589ed3137cd01f870b17"
}
Frame {
msec: 2800
- hash: "40504095d8877e37cd24ac694ca94758"
+ hash: "b069c174a1b9589ed3137cd01f870b17"
}
Key {
type: 7
@@ -946,19 +946,19 @@ VisualTest {
}
Frame {
msec: 2816
- hash: "40504095d8877e37cd24ac694ca94758"
+ hash: "b069c174a1b9589ed3137cd01f870b17"
}
Frame {
msec: 2832
- hash: "40504095d8877e37cd24ac694ca94758"
+ hash: "b069c174a1b9589ed3137cd01f870b17"
}
Frame {
msec: 2848
- hash: "40504095d8877e37cd24ac694ca94758"
+ hash: "b069c174a1b9589ed3137cd01f870b17"
}
Frame {
msec: 2864
- hash: "40504095d8877e37cd24ac694ca94758"
+ hash: "b069c174a1b9589ed3137cd01f870b17"
}
Key {
type: 6
@@ -970,19 +970,19 @@ VisualTest {
}
Frame {
msec: 2880
- image: "qt-669.2.png"
+ hash: "53f9d63bacad27fd73c2f84b82599dbc"
}
Frame {
msec: 2896
- hash: "b6f3847d394c87873e34814e332e205a"
+ image: "qt-669.3.png"
}
Frame {
msec: 2912
- hash: "b6f3847d394c87873e34814e332e205a"
+ hash: "53f9d63bacad27fd73c2f84b82599dbc"
}
Frame {
msec: 2928
- hash: "b6f3847d394c87873e34814e332e205a"
+ hash: "53f9d63bacad27fd73c2f84b82599dbc"
}
Key {
type: 7
@@ -994,23 +994,23 @@ VisualTest {
}
Frame {
msec: 2944
- hash: "b6f3847d394c87873e34814e332e205a"
+ hash: "53f9d63bacad27fd73c2f84b82599dbc"
}
Frame {
msec: 2960
- hash: "b6f3847d394c87873e34814e332e205a"
+ hash: "53f9d63bacad27fd73c2f84b82599dbc"
}
Frame {
msec: 2976
- hash: "b6f3847d394c87873e34814e332e205a"
+ hash: "53f9d63bacad27fd73c2f84b82599dbc"
}
Frame {
msec: 2992
- hash: "b6f3847d394c87873e34814e332e205a"
+ hash: "53f9d63bacad27fd73c2f84b82599dbc"
}
Frame {
msec: 3008
- hash: "b6f3847d394c87873e34814e332e205a"
+ hash: "53f9d63bacad27fd73c2f84b82599dbc"
}
Key {
type: 6
@@ -1022,23 +1022,23 @@ VisualTest {
}
Frame {
msec: 3024
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3040
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3056
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3072
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3088
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Key {
type: 7
@@ -1050,155 +1050,155 @@ VisualTest {
}
Frame {
msec: 3104
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3120
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3136
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3152
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3168
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3184
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3200
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3216
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3232
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3248
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3264
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3280
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3296
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3312
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3328
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3344
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3360
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3376
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3392
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3408
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3424
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3440
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3456
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3472
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3488
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3504
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3520
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3536
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3552
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3568
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3584
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3600
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3616
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3632
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3648
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3664
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3680
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Frame {
msec: 3696
- hash: "3f5f573f37883dc025e21a1fd99eef63"
+ hash: "9294b20b7160322e1f2eecaee6ebf856"
}
Key {
type: 6
@@ -1210,27 +1210,27 @@ VisualTest {
}
Frame {
msec: 3712
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 3728
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 3744
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 3760
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 3776
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 3792
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Key {
type: 7
@@ -1242,130 +1242,130 @@ VisualTest {
}
Frame {
msec: 3808
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 3824
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 3840
- image: "qt-669.3.png"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 3856
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ image: "qt-669.4.png"
}
Frame {
msec: 3872
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 3888
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 3904
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 3920
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 3936
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 3952
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 3968
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 3984
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 4000
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 4016
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 4032
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 4048
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 4064
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 4080
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 4096
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 4112
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 4128
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 4144
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 4160
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 4176
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 4192
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 4208
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 4224
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 4240
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 4256
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 4272
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 4288
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
Frame {
msec: 4304
- hash: "8d8671fb6c3413f38308a0dd15026eae"
+ hash: "80122e3e0d124c01b2769c1c88aa4a13"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.0.png
index e69860ebbc..a1c3c39043 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.1.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.1.png
index 1db3c262d8..bfc91f5152 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.10.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.10.png
index ae21dcac4e..8effaefd8e 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.10.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.10.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.11.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.11.png
index ae21dcac4e..8effaefd8e 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.11.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.11.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.12.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.12.png
new file mode 100644
index 0000000000..8effaefd8e
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.12.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.2.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.2.png
index fbef8052a6..f1829fa1b6 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.2.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.3.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.3.png
index dc56c7e1de..b7f41db045 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.3.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.4.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.4.png
index 04ea496431..9e58c3a523 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.4.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.5.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.5.png
index 98bf7dee1e..8dbcc4174f 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.5.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.6.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.6.png
index d95b8952c5..302974b0cf 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.6.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.6.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.7.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.7.png
index 9954344363..b79af19f96 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.7.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.7.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.8.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.8.png
index 5f329b6a84..b435da67bc 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.8.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.8.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.9.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.9.png
index ae21dcac4e..ef15fdfe6c 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.9.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.9.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.qml b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.qml
index 5a1f8de471..a03948cdb2 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/usingMultilineEdit.qml
@@ -6,83 +6,83 @@ VisualTest {
}
Frame {
msec: 16
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ image: "usingMultilineEdit.0.png"
}
Frame {
msec: 32
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 48
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 64
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 80
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 96
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 112
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 128
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 144
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 160
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 176
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 192
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 208
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 224
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 240
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 256
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 272
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 288
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 304
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 320
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Mouse {
type: 2
@@ -94,23 +94,23 @@ VisualTest {
}
Frame {
msec: 336
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 352
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 368
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 384
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 400
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Mouse {
type: 3
@@ -122,63 +122,63 @@ VisualTest {
}
Frame {
msec: 416
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 432
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 448
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 464
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 480
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 496
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 512
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 528
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 544
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 560
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 576
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 592
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 608
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 624
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Frame {
msec: 640
- hash: "a4edfba57a47b45f96fe1fa7a37c1720"
+ hash: "b59ca5ccc1bd1d1192cc109d66a31d0b"
}
Mouse {
type: 2
@@ -190,11 +190,11 @@ VisualTest {
}
Frame {
msec: 656
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 672
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Mouse {
type: 3
@@ -206,159 +206,159 @@ VisualTest {
}
Frame {
msec: 688
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 704
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 720
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 736
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 752
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 768
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 784
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 800
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 816
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 832
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 848
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 864
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 880
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 896
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 912
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 928
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 944
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 960
- image: "usingMultilineEdit.0.png"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 976
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ image: "usingMultilineEdit.1.png"
}
Frame {
msec: 992
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 1008
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 1024
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 1040
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 1056
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 1072
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 1088
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 1104
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 1120
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 1136
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 1152
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 1168
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 1184
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 1200
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 1216
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 1232
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 1248
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 1264
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 1280
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Frame {
msec: 1296
- hash: "bf9ad629e190df34f8bbb242e986083f"
+ hash: "2414ab7436ed58a29eaf3ef15b5ced79"
}
Key {
type: 6
@@ -370,23 +370,23 @@ VisualTest {
}
Frame {
msec: 1312
- hash: "bf65dbbfc02ad1589093d965c83d5806"
+ hash: "91757521cdb0617645a2a6cb831f51f3"
}
Frame {
msec: 1328
- hash: "bf65dbbfc02ad1589093d965c83d5806"
+ hash: "91757521cdb0617645a2a6cb831f51f3"
}
Frame {
msec: 1344
- hash: "bf65dbbfc02ad1589093d965c83d5806"
+ hash: "91757521cdb0617645a2a6cb831f51f3"
}
Frame {
msec: 1360
- hash: "bf65dbbfc02ad1589093d965c83d5806"
+ hash: "91757521cdb0617645a2a6cb831f51f3"
}
Frame {
msec: 1376
- hash: "bf65dbbfc02ad1589093d965c83d5806"
+ hash: "91757521cdb0617645a2a6cb831f51f3"
}
Key {
type: 7
@@ -398,7 +398,7 @@ VisualTest {
}
Frame {
msec: 1392
- hash: "bf65dbbfc02ad1589093d965c83d5806"
+ hash: "91757521cdb0617645a2a6cb831f51f3"
}
Key {
type: 6
@@ -410,19 +410,19 @@ VisualTest {
}
Frame {
msec: 1408
- hash: "ef0640a754b76b5e28bff78376f1aaf3"
+ hash: "a7e2d2f2668dcb902d3ab0e413d9b639"
}
Frame {
msec: 1424
- hash: "ef0640a754b76b5e28bff78376f1aaf3"
+ hash: "a7e2d2f2668dcb902d3ab0e413d9b639"
}
Frame {
msec: 1440
- hash: "ef0640a754b76b5e28bff78376f1aaf3"
+ hash: "a7e2d2f2668dcb902d3ab0e413d9b639"
}
Frame {
msec: 1456
- hash: "ef0640a754b76b5e28bff78376f1aaf3"
+ hash: "a7e2d2f2668dcb902d3ab0e413d9b639"
}
Key {
type: 7
@@ -434,27 +434,27 @@ VisualTest {
}
Frame {
msec: 1472
- hash: "ef0640a754b76b5e28bff78376f1aaf3"
+ hash: "a7e2d2f2668dcb902d3ab0e413d9b639"
}
Frame {
msec: 1488
- hash: "ef0640a754b76b5e28bff78376f1aaf3"
+ hash: "a7e2d2f2668dcb902d3ab0e413d9b639"
}
Frame {
msec: 1504
- hash: "ef0640a754b76b5e28bff78376f1aaf3"
+ hash: "a7e2d2f2668dcb902d3ab0e413d9b639"
}
Frame {
msec: 1520
- hash: "ef0640a754b76b5e28bff78376f1aaf3"
+ hash: "a7e2d2f2668dcb902d3ab0e413d9b639"
}
Frame {
msec: 1536
- hash: "ef0640a754b76b5e28bff78376f1aaf3"
+ hash: "a7e2d2f2668dcb902d3ab0e413d9b639"
}
Frame {
msec: 1552
- hash: "ef0640a754b76b5e28bff78376f1aaf3"
+ hash: "a7e2d2f2668dcb902d3ab0e413d9b639"
}
Key {
type: 6
@@ -466,15 +466,15 @@ VisualTest {
}
Frame {
msec: 1568
- hash: "b392b8d675e61166e9707f4a7f191c15"
+ hash: "1602f7c814daec9612795d1e109b8f14"
}
Frame {
msec: 1584
- hash: "b392b8d675e61166e9707f4a7f191c15"
+ hash: "1602f7c814daec9612795d1e109b8f14"
}
Frame {
msec: 1600
- hash: "b392b8d675e61166e9707f4a7f191c15"
+ hash: "1602f7c814daec9612795d1e109b8f14"
}
Key {
type: 7
@@ -486,7 +486,7 @@ VisualTest {
}
Frame {
msec: 1616
- hash: "b392b8d675e61166e9707f4a7f191c15"
+ hash: "1602f7c814daec9612795d1e109b8f14"
}
Key {
type: 6
@@ -498,23 +498,23 @@ VisualTest {
}
Frame {
msec: 1632
- hash: "f7a9826581a72f37b1211f1006d93ae5"
+ hash: "84e1e7c90b2134d037146d8a7cd4c413"
}
Frame {
msec: 1648
- hash: "f7a9826581a72f37b1211f1006d93ae5"
+ hash: "84e1e7c90b2134d037146d8a7cd4c413"
}
Frame {
msec: 1664
- hash: "f7a9826581a72f37b1211f1006d93ae5"
+ hash: "84e1e7c90b2134d037146d8a7cd4c413"
}
Frame {
msec: 1680
- hash: "f7a9826581a72f37b1211f1006d93ae5"
+ hash: "84e1e7c90b2134d037146d8a7cd4c413"
}
Frame {
msec: 1696
- hash: "f7a9826581a72f37b1211f1006d93ae5"
+ hash: "84e1e7c90b2134d037146d8a7cd4c413"
}
Key {
type: 7
@@ -526,11 +526,11 @@ VisualTest {
}
Frame {
msec: 1712
- hash: "f7a9826581a72f37b1211f1006d93ae5"
+ hash: "84e1e7c90b2134d037146d8a7cd4c413"
}
Frame {
msec: 1728
- hash: "f7a9826581a72f37b1211f1006d93ae5"
+ hash: "84e1e7c90b2134d037146d8a7cd4c413"
}
Key {
type: 6
@@ -542,15 +542,15 @@ VisualTest {
}
Frame {
msec: 1744
- hash: "cea68eaed3000fe598917688b49525b7"
+ hash: "87109c5f296e5b56aaecc09a2decae4d"
}
Frame {
msec: 1760
- hash: "cea68eaed3000fe598917688b49525b7"
+ hash: "87109c5f296e5b56aaecc09a2decae4d"
}
Frame {
msec: 1776
- hash: "cea68eaed3000fe598917688b49525b7"
+ hash: "87109c5f296e5b56aaecc09a2decae4d"
}
Key {
type: 7
@@ -562,15 +562,15 @@ VisualTest {
}
Frame {
msec: 1792
- hash: "cea68eaed3000fe598917688b49525b7"
+ hash: "87109c5f296e5b56aaecc09a2decae4d"
}
Frame {
msec: 1808
- hash: "cea68eaed3000fe598917688b49525b7"
+ hash: "87109c5f296e5b56aaecc09a2decae4d"
}
Frame {
msec: 1824
- hash: "cea68eaed3000fe598917688b49525b7"
+ hash: "87109c5f296e5b56aaecc09a2decae4d"
}
Key {
type: 6
@@ -582,23 +582,23 @@ VisualTest {
}
Frame {
msec: 1840
- hash: "968932500933300e0a0ca711067d6659"
+ hash: "29f766ca17ac45522ca2079cce9a1015"
}
Frame {
msec: 1856
- hash: "968932500933300e0a0ca711067d6659"
+ hash: "29f766ca17ac45522ca2079cce9a1015"
}
Frame {
msec: 1872
- hash: "968932500933300e0a0ca711067d6659"
+ hash: "29f766ca17ac45522ca2079cce9a1015"
}
Frame {
msec: 1888
- hash: "968932500933300e0a0ca711067d6659"
+ hash: "29f766ca17ac45522ca2079cce9a1015"
}
Frame {
msec: 1904
- hash: "968932500933300e0a0ca711067d6659"
+ hash: "29f766ca17ac45522ca2079cce9a1015"
}
Key {
type: 7
@@ -618,19 +618,19 @@ VisualTest {
}
Frame {
msec: 1920
- image: "usingMultilineEdit.1.png"
+ hash: "be6de699f29278ee3a39c3d8ed90f808"
}
Frame {
msec: 1936
- hash: "1d5b3f8dc6e0701c0c11a330e055ba5d"
+ image: "usingMultilineEdit.2.png"
}
Frame {
msec: 1952
- hash: "1d5b3f8dc6e0701c0c11a330e055ba5d"
+ hash: "be6de699f29278ee3a39c3d8ed90f808"
}
Frame {
msec: 1968
- hash: "1d5b3f8dc6e0701c0c11a330e055ba5d"
+ hash: "be6de699f29278ee3a39c3d8ed90f808"
}
Key {
type: 6
@@ -642,11 +642,11 @@ VisualTest {
}
Frame {
msec: 1984
- hash: "067182091936c99dfa5c29b226bd4351"
+ hash: "ef413406c3e7aa03ced4e06661dfafcc"
}
Frame {
msec: 2000
- hash: "067182091936c99dfa5c29b226bd4351"
+ hash: "ef413406c3e7aa03ced4e06661dfafcc"
}
Key {
type: 7
@@ -658,7 +658,7 @@ VisualTest {
}
Frame {
msec: 2016
- hash: "067182091936c99dfa5c29b226bd4351"
+ hash: "ef413406c3e7aa03ced4e06661dfafcc"
}
Key {
type: 6
@@ -670,11 +670,11 @@ VisualTest {
}
Frame {
msec: 2032
- hash: "810e996b65424f80e229160860805492"
+ hash: "d29b729a45533ef77af530ab2f125bd1"
}
Frame {
msec: 2048
- hash: "810e996b65424f80e229160860805492"
+ hash: "d29b729a45533ef77af530ab2f125bd1"
}
Key {
type: 7
@@ -686,19 +686,19 @@ VisualTest {
}
Frame {
msec: 2064
- hash: "810e996b65424f80e229160860805492"
+ hash: "d29b729a45533ef77af530ab2f125bd1"
}
Frame {
msec: 2080
- hash: "810e996b65424f80e229160860805492"
+ hash: "d29b729a45533ef77af530ab2f125bd1"
}
Frame {
msec: 2096
- hash: "810e996b65424f80e229160860805492"
+ hash: "d29b729a45533ef77af530ab2f125bd1"
}
Frame {
msec: 2112
- hash: "810e996b65424f80e229160860805492"
+ hash: "d29b729a45533ef77af530ab2f125bd1"
}
Key {
type: 7
@@ -710,11 +710,11 @@ VisualTest {
}
Frame {
msec: 2128
- hash: "810e996b65424f80e229160860805492"
+ hash: "d29b729a45533ef77af530ab2f125bd1"
}
Frame {
msec: 2144
- hash: "810e996b65424f80e229160860805492"
+ hash: "d29b729a45533ef77af530ab2f125bd1"
}
Key {
type: 6
@@ -726,27 +726,27 @@ VisualTest {
}
Frame {
msec: 2160
- hash: "10aca130f139e44c0889d8d9c9bb8673"
+ hash: "3b2069cbaa6640664dbe1b80f3cf0670"
}
Frame {
msec: 2176
- hash: "10aca130f139e44c0889d8d9c9bb8673"
+ hash: "3b2069cbaa6640664dbe1b80f3cf0670"
}
Frame {
msec: 2192
- hash: "10aca130f139e44c0889d8d9c9bb8673"
+ hash: "3b2069cbaa6640664dbe1b80f3cf0670"
}
Frame {
msec: 2208
- hash: "10aca130f139e44c0889d8d9c9bb8673"
+ hash: "3b2069cbaa6640664dbe1b80f3cf0670"
}
Frame {
msec: 2224
- hash: "10aca130f139e44c0889d8d9c9bb8673"
+ hash: "3b2069cbaa6640664dbe1b80f3cf0670"
}
Frame {
msec: 2240
- hash: "10aca130f139e44c0889d8d9c9bb8673"
+ hash: "3b2069cbaa6640664dbe1b80f3cf0670"
}
Key {
type: 7
@@ -766,23 +766,23 @@ VisualTest {
}
Frame {
msec: 2256
- hash: "6785570c7f2cc9f3c6b0b07b8a94ecb2"
+ hash: "6ef4fd1a5d53c16670163384ef4c8f06"
}
Frame {
msec: 2272
- hash: "6785570c7f2cc9f3c6b0b07b8a94ecb2"
+ hash: "6ef4fd1a5d53c16670163384ef4c8f06"
}
Frame {
msec: 2288
- hash: "6785570c7f2cc9f3c6b0b07b8a94ecb2"
+ hash: "6ef4fd1a5d53c16670163384ef4c8f06"
}
Frame {
msec: 2304
- hash: "6785570c7f2cc9f3c6b0b07b8a94ecb2"
+ hash: "6ef4fd1a5d53c16670163384ef4c8f06"
}
Frame {
msec: 2320
- hash: "6785570c7f2cc9f3c6b0b07b8a94ecb2"
+ hash: "6ef4fd1a5d53c16670163384ef4c8f06"
}
Key {
type: 7
@@ -794,11 +794,11 @@ VisualTest {
}
Frame {
msec: 2336
- hash: "6785570c7f2cc9f3c6b0b07b8a94ecb2"
+ hash: "6ef4fd1a5d53c16670163384ef4c8f06"
}
Frame {
msec: 2352
- hash: "6785570c7f2cc9f3c6b0b07b8a94ecb2"
+ hash: "6ef4fd1a5d53c16670163384ef4c8f06"
}
Key {
type: 6
@@ -810,19 +810,19 @@ VisualTest {
}
Frame {
msec: 2368
- hash: "701c2738b7c064cd487bd0c6c0beb6b4"
+ hash: "c656f82ce3471c70d5f8050c5bd904e6"
}
Frame {
msec: 2384
- hash: "701c2738b7c064cd487bd0c6c0beb6b4"
+ hash: "c656f82ce3471c70d5f8050c5bd904e6"
}
Frame {
msec: 2400
- hash: "701c2738b7c064cd487bd0c6c0beb6b4"
+ hash: "c656f82ce3471c70d5f8050c5bd904e6"
}
Frame {
msec: 2416
- hash: "701c2738b7c064cd487bd0c6c0beb6b4"
+ hash: "c656f82ce3471c70d5f8050c5bd904e6"
}
Key {
type: 7
@@ -834,7 +834,7 @@ VisualTest {
}
Frame {
msec: 2432
- hash: "701c2738b7c064cd487bd0c6c0beb6b4"
+ hash: "c656f82ce3471c70d5f8050c5bd904e6"
}
Key {
type: 6
@@ -846,27 +846,27 @@ VisualTest {
}
Frame {
msec: 2448
- hash: "35c0c51dd874faa28058251164836dcb"
+ hash: "991d345c4a62087543afa032e8d4bd2f"
}
Frame {
msec: 2464
- hash: "35c0c51dd874faa28058251164836dcb"
+ hash: "991d345c4a62087543afa032e8d4bd2f"
}
Frame {
msec: 2480
- hash: "35c0c51dd874faa28058251164836dcb"
+ hash: "991d345c4a62087543afa032e8d4bd2f"
}
Frame {
msec: 2496
- hash: "35c0c51dd874faa28058251164836dcb"
+ hash: "991d345c4a62087543afa032e8d4bd2f"
}
Frame {
msec: 2512
- hash: "35c0c51dd874faa28058251164836dcb"
+ hash: "991d345c4a62087543afa032e8d4bd2f"
}
Frame {
msec: 2528
- hash: "35c0c51dd874faa28058251164836dcb"
+ hash: "991d345c4a62087543afa032e8d4bd2f"
}
Key {
type: 7
@@ -878,7 +878,7 @@ VisualTest {
}
Frame {
msec: 2544
- hash: "35c0c51dd874faa28058251164836dcb"
+ hash: "991d345c4a62087543afa032e8d4bd2f"
}
Key {
type: 6
@@ -890,19 +890,19 @@ VisualTest {
}
Frame {
msec: 2560
- hash: "12748fe9d3b72aff29449deeb2372d03"
+ hash: "9b55130d7cb0922aaeed3a5aad103f98"
}
Frame {
msec: 2576
- hash: "12748fe9d3b72aff29449deeb2372d03"
+ hash: "9b55130d7cb0922aaeed3a5aad103f98"
}
Frame {
msec: 2592
- hash: "12748fe9d3b72aff29449deeb2372d03"
+ hash: "9b55130d7cb0922aaeed3a5aad103f98"
}
Frame {
msec: 2608
- hash: "12748fe9d3b72aff29449deeb2372d03"
+ hash: "9b55130d7cb0922aaeed3a5aad103f98"
}
Key {
type: 7
@@ -914,23 +914,23 @@ VisualTest {
}
Frame {
msec: 2624
- hash: "12748fe9d3b72aff29449deeb2372d03"
+ hash: "9b55130d7cb0922aaeed3a5aad103f98"
}
Frame {
msec: 2640
- hash: "12748fe9d3b72aff29449deeb2372d03"
+ hash: "9b55130d7cb0922aaeed3a5aad103f98"
}
Frame {
msec: 2656
- hash: "12748fe9d3b72aff29449deeb2372d03"
+ hash: "9b55130d7cb0922aaeed3a5aad103f98"
}
Frame {
msec: 2672
- hash: "12748fe9d3b72aff29449deeb2372d03"
+ hash: "9b55130d7cb0922aaeed3a5aad103f98"
}
Frame {
msec: 2688
- hash: "12748fe9d3b72aff29449deeb2372d03"
+ hash: "9b55130d7cb0922aaeed3a5aad103f98"
}
Key {
type: 6
@@ -942,27 +942,27 @@ VisualTest {
}
Frame {
msec: 2704
- hash: "0d119074fb7e882ebe4dfbad9bfb401a"
+ hash: "9b323c8f49dc890af8849a0de8a7db4d"
}
Frame {
msec: 2720
- hash: "0d119074fb7e882ebe4dfbad9bfb401a"
+ hash: "9b323c8f49dc890af8849a0de8a7db4d"
}
Frame {
msec: 2736
- hash: "0d119074fb7e882ebe4dfbad9bfb401a"
+ hash: "9b323c8f49dc890af8849a0de8a7db4d"
}
Frame {
msec: 2752
- hash: "0d119074fb7e882ebe4dfbad9bfb401a"
+ hash: "9b323c8f49dc890af8849a0de8a7db4d"
}
Frame {
msec: 2768
- hash: "0d119074fb7e882ebe4dfbad9bfb401a"
+ hash: "9b323c8f49dc890af8849a0de8a7db4d"
}
Frame {
msec: 2784
- hash: "0d119074fb7e882ebe4dfbad9bfb401a"
+ hash: "9b323c8f49dc890af8849a0de8a7db4d"
}
Key {
type: 6
@@ -974,7 +974,7 @@ VisualTest {
}
Frame {
msec: 2800
- hash: "3646bd6ea35fb8f0160a24a203b0f469"
+ hash: "c3c761352c46bd89c400c6638180fa9a"
}
Key {
type: 7
@@ -986,19 +986,19 @@ VisualTest {
}
Frame {
msec: 2816
- hash: "3646bd6ea35fb8f0160a24a203b0f469"
+ hash: "c3c761352c46bd89c400c6638180fa9a"
}
Frame {
msec: 2832
- hash: "3646bd6ea35fb8f0160a24a203b0f469"
+ hash: "c3c761352c46bd89c400c6638180fa9a"
}
Frame {
msec: 2848
- hash: "3646bd6ea35fb8f0160a24a203b0f469"
+ hash: "c3c761352c46bd89c400c6638180fa9a"
}
Frame {
msec: 2864
- hash: "3646bd6ea35fb8f0160a24a203b0f469"
+ hash: "c3c761352c46bd89c400c6638180fa9a"
}
Key {
type: 7
@@ -1010,19 +1010,19 @@ VisualTest {
}
Frame {
msec: 2880
- image: "usingMultilineEdit.2.png"
+ hash: "c3c761352c46bd89c400c6638180fa9a"
}
Frame {
msec: 2896
- hash: "3646bd6ea35fb8f0160a24a203b0f469"
+ image: "usingMultilineEdit.3.png"
}
Frame {
msec: 2912
- hash: "3646bd6ea35fb8f0160a24a203b0f469"
+ hash: "c3c761352c46bd89c400c6638180fa9a"
}
Frame {
msec: 2928
- hash: "3646bd6ea35fb8f0160a24a203b0f469"
+ hash: "c3c761352c46bd89c400c6638180fa9a"
}
Key {
type: 6
@@ -1034,15 +1034,15 @@ VisualTest {
}
Frame {
msec: 2944
- hash: "d90cbfbec0e5a73781664eec63ba7081"
+ hash: "93af025fc4cf949167efac7ed3bc5258"
}
Frame {
msec: 2960
- hash: "d90cbfbec0e5a73781664eec63ba7081"
+ hash: "93af025fc4cf949167efac7ed3bc5258"
}
Frame {
msec: 2976
- hash: "d90cbfbec0e5a73781664eec63ba7081"
+ hash: "93af025fc4cf949167efac7ed3bc5258"
}
Key {
type: 7
@@ -1062,19 +1062,19 @@ VisualTest {
}
Frame {
msec: 2992
- hash: "8faa6d1174cf3e8ef10f6575276ed125"
+ hash: "41fe34c5246a438886e85fdc30513a08"
}
Frame {
msec: 3008
- hash: "8faa6d1174cf3e8ef10f6575276ed125"
+ hash: "41fe34c5246a438886e85fdc30513a08"
}
Frame {
msec: 3024
- hash: "8faa6d1174cf3e8ef10f6575276ed125"
+ hash: "41fe34c5246a438886e85fdc30513a08"
}
Frame {
msec: 3040
- hash: "8faa6d1174cf3e8ef10f6575276ed125"
+ hash: "41fe34c5246a438886e85fdc30513a08"
}
Key {
type: 7
@@ -1086,7 +1086,7 @@ VisualTest {
}
Frame {
msec: 3056
- hash: "8faa6d1174cf3e8ef10f6575276ed125"
+ hash: "41fe34c5246a438886e85fdc30513a08"
}
Key {
type: 6
@@ -1098,15 +1098,15 @@ VisualTest {
}
Frame {
msec: 3072
- hash: "bac072bfe350abe83fbc941e56845939"
+ hash: "db7bd05984a1ca713382f109780b8e5d"
}
Frame {
msec: 3088
- hash: "bac072bfe350abe83fbc941e56845939"
+ hash: "db7bd05984a1ca713382f109780b8e5d"
}
Frame {
msec: 3104
- hash: "bac072bfe350abe83fbc941e56845939"
+ hash: "db7bd05984a1ca713382f109780b8e5d"
}
Key {
type: 6
@@ -1118,7 +1118,7 @@ VisualTest {
}
Frame {
msec: 3120
- hash: "bac072bfe350abe83fbc941e56845939"
+ hash: "db7bd05984a1ca713382f109780b8e5d"
}
Key {
type: 7
@@ -1130,11 +1130,11 @@ VisualTest {
}
Frame {
msec: 3136
- hash: "bac072bfe350abe83fbc941e56845939"
+ hash: "db7bd05984a1ca713382f109780b8e5d"
}
Frame {
msec: 3152
- hash: "bac072bfe350abe83fbc941e56845939"
+ hash: "db7bd05984a1ca713382f109780b8e5d"
}
Key {
type: 6
@@ -1146,19 +1146,19 @@ VisualTest {
}
Frame {
msec: 3168
- hash: "386a85651164d0edbeb5cc2b7ee438c7"
+ hash: "85bed6c44d017fb45591ee821a6e8c82"
}
Frame {
msec: 3184
- hash: "386a85651164d0edbeb5cc2b7ee438c7"
+ hash: "85bed6c44d017fb45591ee821a6e8c82"
}
Frame {
msec: 3200
- hash: "386a85651164d0edbeb5cc2b7ee438c7"
+ hash: "85bed6c44d017fb45591ee821a6e8c82"
}
Frame {
msec: 3216
- hash: "386a85651164d0edbeb5cc2b7ee438c7"
+ hash: "85bed6c44d017fb45591ee821a6e8c82"
}
Key {
type: 7
@@ -1170,7 +1170,7 @@ VisualTest {
}
Frame {
msec: 3232
- hash: "386a85651164d0edbeb5cc2b7ee438c7"
+ hash: "85bed6c44d017fb45591ee821a6e8c82"
}
Key {
type: 7
@@ -1190,19 +1190,19 @@ VisualTest {
}
Frame {
msec: 3248
- hash: "982d48e7ef886a74791306f055ddc714"
+ hash: "70e09c15e0db15327b278c20508cd77e"
}
Frame {
msec: 3264
- hash: "982d48e7ef886a74791306f055ddc714"
+ hash: "70e09c15e0db15327b278c20508cd77e"
}
Frame {
msec: 3280
- hash: "982d48e7ef886a74791306f055ddc714"
+ hash: "70e09c15e0db15327b278c20508cd77e"
}
Frame {
msec: 3296
- hash: "982d48e7ef886a74791306f055ddc714"
+ hash: "70e09c15e0db15327b278c20508cd77e"
}
Key {
type: 7
@@ -1214,7 +1214,7 @@ VisualTest {
}
Frame {
msec: 3312
- hash: "982d48e7ef886a74791306f055ddc714"
+ hash: "70e09c15e0db15327b278c20508cd77e"
}
Key {
type: 6
@@ -1226,23 +1226,23 @@ VisualTest {
}
Frame {
msec: 3328
- hash: "38003a58f17d25d302c5e1b643b271b0"
+ hash: "7bdf47aad57a3e53683819927a9ba6f7"
}
Frame {
msec: 3344
- hash: "38003a58f17d25d302c5e1b643b271b0"
+ hash: "7bdf47aad57a3e53683819927a9ba6f7"
}
Frame {
msec: 3360
- hash: "38003a58f17d25d302c5e1b643b271b0"
+ hash: "7bdf47aad57a3e53683819927a9ba6f7"
}
Frame {
msec: 3376
- hash: "38003a58f17d25d302c5e1b643b271b0"
+ hash: "7bdf47aad57a3e53683819927a9ba6f7"
}
Frame {
msec: 3392
- hash: "38003a58f17d25d302c5e1b643b271b0"
+ hash: "7bdf47aad57a3e53683819927a9ba6f7"
}
Key {
type: 7
@@ -1254,7 +1254,7 @@ VisualTest {
}
Frame {
msec: 3408
- hash: "38003a58f17d25d302c5e1b643b271b0"
+ hash: "7bdf47aad57a3e53683819927a9ba6f7"
}
Key {
type: 6
@@ -1266,23 +1266,23 @@ VisualTest {
}
Frame {
msec: 3424
- hash: "18d37190d139a1567d91882fdac411d6"
+ hash: "cd302294ea4a6015f4093e3ce0640a15"
}
Frame {
msec: 3440
- hash: "18d37190d139a1567d91882fdac411d6"
+ hash: "cd302294ea4a6015f4093e3ce0640a15"
}
Frame {
msec: 3456
- hash: "18d37190d139a1567d91882fdac411d6"
+ hash: "cd302294ea4a6015f4093e3ce0640a15"
}
Frame {
msec: 3472
- hash: "18d37190d139a1567d91882fdac411d6"
+ hash: "cd302294ea4a6015f4093e3ce0640a15"
}
Frame {
msec: 3488
- hash: "18d37190d139a1567d91882fdac411d6"
+ hash: "cd302294ea4a6015f4093e3ce0640a15"
}
Key {
type: 7
@@ -1302,27 +1302,27 @@ VisualTest {
}
Frame {
msec: 3504
- hash: "279aa32aaeebea7f8078e8a750d0514b"
+ hash: "6679b8bffbcf389e1a56e9e494c9041c"
}
Frame {
msec: 3520
- hash: "279aa32aaeebea7f8078e8a750d0514b"
+ hash: "6679b8bffbcf389e1a56e9e494c9041c"
}
Frame {
msec: 3536
- hash: "279aa32aaeebea7f8078e8a750d0514b"
+ hash: "6679b8bffbcf389e1a56e9e494c9041c"
}
Frame {
msec: 3552
- hash: "279aa32aaeebea7f8078e8a750d0514b"
+ hash: "6679b8bffbcf389e1a56e9e494c9041c"
}
Frame {
msec: 3568
- hash: "279aa32aaeebea7f8078e8a750d0514b"
+ hash: "6679b8bffbcf389e1a56e9e494c9041c"
}
Frame {
msec: 3584
- hash: "279aa32aaeebea7f8078e8a750d0514b"
+ hash: "6679b8bffbcf389e1a56e9e494c9041c"
}
Key {
type: 7
@@ -1334,7 +1334,7 @@ VisualTest {
}
Frame {
msec: 3600
- hash: "279aa32aaeebea7f8078e8a750d0514b"
+ hash: "6679b8bffbcf389e1a56e9e494c9041c"
}
Key {
type: 6
@@ -1346,19 +1346,19 @@ VisualTest {
}
Frame {
msec: 3616
- hash: "626123df4dc8fc1321d0262871ffbe3e"
+ hash: "6cf8306437867645e5459cd4c9733ef7"
}
Frame {
msec: 3632
- hash: "626123df4dc8fc1321d0262871ffbe3e"
+ hash: "6cf8306437867645e5459cd4c9733ef7"
}
Frame {
msec: 3648
- hash: "626123df4dc8fc1321d0262871ffbe3e"
+ hash: "6cf8306437867645e5459cd4c9733ef7"
}
Frame {
msec: 3664
- hash: "626123df4dc8fc1321d0262871ffbe3e"
+ hash: "6cf8306437867645e5459cd4c9733ef7"
}
Key {
type: 6
@@ -1370,7 +1370,7 @@ VisualTest {
}
Frame {
msec: 3680
- hash: "00972f42fed66eb94832506b436b203d"
+ hash: "31c0880fb6b8995881f0983685c51c81"
}
Key {
type: 7
@@ -1382,15 +1382,15 @@ VisualTest {
}
Frame {
msec: 3696
- hash: "00972f42fed66eb94832506b436b203d"
+ hash: "31c0880fb6b8995881f0983685c51c81"
}
Frame {
msec: 3712
- hash: "00972f42fed66eb94832506b436b203d"
+ hash: "31c0880fb6b8995881f0983685c51c81"
}
Frame {
msec: 3728
- hash: "00972f42fed66eb94832506b436b203d"
+ hash: "31c0880fb6b8995881f0983685c51c81"
}
Key {
type: 7
@@ -1402,63 +1402,63 @@ VisualTest {
}
Frame {
msec: 3744
- hash: "00972f42fed66eb94832506b436b203d"
+ hash: "31c0880fb6b8995881f0983685c51c81"
}
Frame {
msec: 3760
- hash: "00972f42fed66eb94832506b436b203d"
+ hash: "31c0880fb6b8995881f0983685c51c81"
}
Frame {
msec: 3776
- hash: "00972f42fed66eb94832506b436b203d"
+ hash: "31c0880fb6b8995881f0983685c51c81"
}
Frame {
msec: 3792
- hash: "00972f42fed66eb94832506b436b203d"
+ hash: "31c0880fb6b8995881f0983685c51c81"
}
Frame {
msec: 3808
- hash: "00972f42fed66eb94832506b436b203d"
+ hash: "31c0880fb6b8995881f0983685c51c81"
}
Frame {
msec: 3824
- hash: "00972f42fed66eb94832506b436b203d"
+ hash: "31c0880fb6b8995881f0983685c51c81"
}
Frame {
msec: 3840
- image: "usingMultilineEdit.3.png"
+ hash: "31c0880fb6b8995881f0983685c51c81"
}
Frame {
msec: 3856
- hash: "00972f42fed66eb94832506b436b203d"
+ image: "usingMultilineEdit.4.png"
}
Frame {
msec: 3872
- hash: "00972f42fed66eb94832506b436b203d"
+ hash: "31c0880fb6b8995881f0983685c51c81"
}
Frame {
msec: 3888
- hash: "00972f42fed66eb94832506b436b203d"
+ hash: "31c0880fb6b8995881f0983685c51c81"
}
Frame {
msec: 3904
- hash: "00972f42fed66eb94832506b436b203d"
+ hash: "31c0880fb6b8995881f0983685c51c81"
}
Frame {
msec: 3920
- hash: "00972f42fed66eb94832506b436b203d"
+ hash: "31c0880fb6b8995881f0983685c51c81"
}
Frame {
msec: 3936
- hash: "00972f42fed66eb94832506b436b203d"
+ hash: "31c0880fb6b8995881f0983685c51c81"
}
Frame {
msec: 3952
- hash: "00972f42fed66eb94832506b436b203d"
+ hash: "31c0880fb6b8995881f0983685c51c81"
}
Frame {
msec: 3968
- hash: "00972f42fed66eb94832506b436b203d"
+ hash: "31c0880fb6b8995881f0983685c51c81"
}
Key {
type: 6
@@ -1470,23 +1470,23 @@ VisualTest {
}
Frame {
msec: 3984
- hash: "72d952ff90862b93ccec046f61d85360"
+ hash: "34c2a53d8852e17ab2b7990eb6156343"
}
Frame {
msec: 4000
- hash: "72d952ff90862b93ccec046f61d85360"
+ hash: "34c2a53d8852e17ab2b7990eb6156343"
}
Frame {
msec: 4016
- hash: "72d952ff90862b93ccec046f61d85360"
+ hash: "34c2a53d8852e17ab2b7990eb6156343"
}
Frame {
msec: 4032
- hash: "72d952ff90862b93ccec046f61d85360"
+ hash: "34c2a53d8852e17ab2b7990eb6156343"
}
Frame {
msec: 4048
- hash: "72d952ff90862b93ccec046f61d85360"
+ hash: "34c2a53d8852e17ab2b7990eb6156343"
}
Key {
type: 6
@@ -1498,7 +1498,7 @@ VisualTest {
}
Frame {
msec: 4064
- hash: "abd2bd3a1fdf5dbdd5bfdcc84bad136c"
+ hash: "75a0e73d34f90ca26b4c7e94a7a6ecd2"
}
Key {
type: 7
@@ -1510,19 +1510,19 @@ VisualTest {
}
Frame {
msec: 4080
- hash: "abd2bd3a1fdf5dbdd5bfdcc84bad136c"
+ hash: "75a0e73d34f90ca26b4c7e94a7a6ecd2"
}
Frame {
msec: 4096
- hash: "abd2bd3a1fdf5dbdd5bfdcc84bad136c"
+ hash: "75a0e73d34f90ca26b4c7e94a7a6ecd2"
}
Frame {
msec: 4112
- hash: "abd2bd3a1fdf5dbdd5bfdcc84bad136c"
+ hash: "75a0e73d34f90ca26b4c7e94a7a6ecd2"
}
Frame {
msec: 4128
- hash: "abd2bd3a1fdf5dbdd5bfdcc84bad136c"
+ hash: "75a0e73d34f90ca26b4c7e94a7a6ecd2"
}
Key {
type: 6
@@ -1534,11 +1534,11 @@ VisualTest {
}
Frame {
msec: 4144
- hash: "f091e9b3d660c3664960f3fe6f624a1d"
+ hash: "296a65279cec34eb93083f3938bf9b16"
}
Frame {
msec: 4160
- hash: "f091e9b3d660c3664960f3fe6f624a1d"
+ hash: "296a65279cec34eb93083f3938bf9b16"
}
Key {
type: 7
@@ -1550,15 +1550,15 @@ VisualTest {
}
Frame {
msec: 4176
- hash: "f091e9b3d660c3664960f3fe6f624a1d"
+ hash: "296a65279cec34eb93083f3938bf9b16"
}
Frame {
msec: 4192
- hash: "f091e9b3d660c3664960f3fe6f624a1d"
+ hash: "296a65279cec34eb93083f3938bf9b16"
}
Frame {
msec: 4208
- hash: "f091e9b3d660c3664960f3fe6f624a1d"
+ hash: "296a65279cec34eb93083f3938bf9b16"
}
Key {
type: 6
@@ -1570,11 +1570,11 @@ VisualTest {
}
Frame {
msec: 4224
- hash: "bc9ae8ea7f8a7f1089263a20b4a5e826"
+ hash: "902a4133742f9a99195a059f7f6b91df"
}
Frame {
msec: 4240
- hash: "bc9ae8ea7f8a7f1089263a20b4a5e826"
+ hash: "902a4133742f9a99195a059f7f6b91df"
}
Key {
type: 7
@@ -1586,11 +1586,11 @@ VisualTest {
}
Frame {
msec: 4256
- hash: "bc9ae8ea7f8a7f1089263a20b4a5e826"
+ hash: "902a4133742f9a99195a059f7f6b91df"
}
Frame {
msec: 4272
- hash: "bc9ae8ea7f8a7f1089263a20b4a5e826"
+ hash: "902a4133742f9a99195a059f7f6b91df"
}
Key {
type: 7
@@ -1602,27 +1602,27 @@ VisualTest {
}
Frame {
msec: 4288
- hash: "bc9ae8ea7f8a7f1089263a20b4a5e826"
+ hash: "902a4133742f9a99195a059f7f6b91df"
}
Frame {
msec: 4304
- hash: "bc9ae8ea7f8a7f1089263a20b4a5e826"
+ hash: "902a4133742f9a99195a059f7f6b91df"
}
Frame {
msec: 4320
- hash: "bc9ae8ea7f8a7f1089263a20b4a5e826"
+ hash: "902a4133742f9a99195a059f7f6b91df"
}
Frame {
msec: 4336
- hash: "bc9ae8ea7f8a7f1089263a20b4a5e826"
+ hash: "902a4133742f9a99195a059f7f6b91df"
}
Frame {
msec: 4352
- hash: "bc9ae8ea7f8a7f1089263a20b4a5e826"
+ hash: "902a4133742f9a99195a059f7f6b91df"
}
Frame {
msec: 4368
- hash: "bc9ae8ea7f8a7f1089263a20b4a5e826"
+ hash: "902a4133742f9a99195a059f7f6b91df"
}
Key {
type: 6
@@ -1634,23 +1634,23 @@ VisualTest {
}
Frame {
msec: 4384
- hash: "f96b7c209a5e558543157cf5aa4ce69e"
+ hash: "7e92966a300a81511c5fcb9e447b9029"
}
Frame {
msec: 4400
- hash: "f96b7c209a5e558543157cf5aa4ce69e"
+ hash: "7e92966a300a81511c5fcb9e447b9029"
}
Frame {
msec: 4416
- hash: "f96b7c209a5e558543157cf5aa4ce69e"
+ hash: "7e92966a300a81511c5fcb9e447b9029"
}
Frame {
msec: 4432
- hash: "f96b7c209a5e558543157cf5aa4ce69e"
+ hash: "7e92966a300a81511c5fcb9e447b9029"
}
Frame {
msec: 4448
- hash: "f96b7c209a5e558543157cf5aa4ce69e"
+ hash: "7e92966a300a81511c5fcb9e447b9029"
}
Key {
type: 7
@@ -1662,7 +1662,7 @@ VisualTest {
}
Frame {
msec: 4464
- hash: "f96b7c209a5e558543157cf5aa4ce69e"
+ hash: "7e92966a300a81511c5fcb9e447b9029"
}
Key {
type: 6
@@ -1674,23 +1674,23 @@ VisualTest {
}
Frame {
msec: 4480
- hash: "67facce41bc51af385bd8102a7e1285e"
+ hash: "d22869235a5e4689db64d97f0b5af6c0"
}
Frame {
msec: 4496
- hash: "67facce41bc51af385bd8102a7e1285e"
+ hash: "d22869235a5e4689db64d97f0b5af6c0"
}
Frame {
msec: 4512
- hash: "67facce41bc51af385bd8102a7e1285e"
+ hash: "d22869235a5e4689db64d97f0b5af6c0"
}
Frame {
msec: 4528
- hash: "67facce41bc51af385bd8102a7e1285e"
+ hash: "d22869235a5e4689db64d97f0b5af6c0"
}
Frame {
msec: 4544
- hash: "67facce41bc51af385bd8102a7e1285e"
+ hash: "d22869235a5e4689db64d97f0b5af6c0"
}
Key {
type: 7
@@ -1702,15 +1702,15 @@ VisualTest {
}
Frame {
msec: 4560
- hash: "67facce41bc51af385bd8102a7e1285e"
+ hash: "d22869235a5e4689db64d97f0b5af6c0"
}
Frame {
msec: 4576
- hash: "67facce41bc51af385bd8102a7e1285e"
+ hash: "d22869235a5e4689db64d97f0b5af6c0"
}
Frame {
msec: 4592
- hash: "67facce41bc51af385bd8102a7e1285e"
+ hash: "d22869235a5e4689db64d97f0b5af6c0"
}
Key {
type: 6
@@ -1722,63 +1722,63 @@ VisualTest {
}
Frame {
msec: 4608
- hash: "67facce41bc51af385bd8102a7e1285e"
+ hash: "d22869235a5e4689db64d97f0b5af6c0"
}
Frame {
msec: 4624
- hash: "67facce41bc51af385bd8102a7e1285e"
+ hash: "d22869235a5e4689db64d97f0b5af6c0"
}
Frame {
msec: 4640
- hash: "67facce41bc51af385bd8102a7e1285e"
+ hash: "d22869235a5e4689db64d97f0b5af6c0"
}
Frame {
msec: 4656
- hash: "67facce41bc51af385bd8102a7e1285e"
+ hash: "d22869235a5e4689db64d97f0b5af6c0"
}
Frame {
msec: 4672
- hash: "67facce41bc51af385bd8102a7e1285e"
+ hash: "d22869235a5e4689db64d97f0b5af6c0"
}
Frame {
msec: 4688
- hash: "67facce41bc51af385bd8102a7e1285e"
+ hash: "d22869235a5e4689db64d97f0b5af6c0"
}
Frame {
msec: 4704
- hash: "67facce41bc51af385bd8102a7e1285e"
+ hash: "d22869235a5e4689db64d97f0b5af6c0"
}
Frame {
msec: 4720
- hash: "67facce41bc51af385bd8102a7e1285e"
+ hash: "d22869235a5e4689db64d97f0b5af6c0"
}
Frame {
msec: 4736
- hash: "67facce41bc51af385bd8102a7e1285e"
+ hash: "d22869235a5e4689db64d97f0b5af6c0"
}
Frame {
msec: 4752
- hash: "67facce41bc51af385bd8102a7e1285e"
+ hash: "d22869235a5e4689db64d97f0b5af6c0"
}
Frame {
msec: 4768
- hash: "67facce41bc51af385bd8102a7e1285e"
+ hash: "d22869235a5e4689db64d97f0b5af6c0"
}
Frame {
msec: 4784
- hash: "67facce41bc51af385bd8102a7e1285e"
+ hash: "d22869235a5e4689db64d97f0b5af6c0"
}
Frame {
msec: 4800
- image: "usingMultilineEdit.4.png"
+ hash: "d22869235a5e4689db64d97f0b5af6c0"
}
Frame {
msec: 4816
- hash: "67facce41bc51af385bd8102a7e1285e"
+ image: "usingMultilineEdit.5.png"
}
Frame {
msec: 4832
- hash: "67facce41bc51af385bd8102a7e1285e"
+ hash: "d22869235a5e4689db64d97f0b5af6c0"
}
Key {
type: 6
@@ -1790,31 +1790,31 @@ VisualTest {
}
Frame {
msec: 4848
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 4864
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 4880
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 4896
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 4912
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 4928
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 4944
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Key {
type: 7
@@ -1826,19 +1826,19 @@ VisualTest {
}
Frame {
msec: 4960
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 4976
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 4992
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5008
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Key {
type: 7
@@ -1850,191 +1850,191 @@ VisualTest {
}
Frame {
msec: 5024
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5040
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5056
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5072
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5088
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5104
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5120
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5136
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5152
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5168
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5184
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5200
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5216
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5232
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5248
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5264
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5280
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5296
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5312
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5328
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5344
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5360
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5376
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5392
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5408
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5424
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5440
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5456
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5472
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5488
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5504
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5520
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5536
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5552
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5568
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5584
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5600
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5616
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5632
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5648
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5664
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5680
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5696
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5712
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5728
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5744
- hash: "a616e994d83964ff75d95b702f355937"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Frame {
msec: 5760
- image: "usingMultilineEdit.5.png"
+ hash: "8153431eabfb3a6916aa37319d9fd379"
}
Mouse {
type: 2
@@ -2046,19 +2046,19 @@ VisualTest {
}
Frame {
msec: 5776
- hash: "e9532a9023548cf5dfca3fdaeb3467e7"
+ image: "usingMultilineEdit.6.png"
}
Frame {
msec: 5792
- hash: "e9532a9023548cf5dfca3fdaeb3467e7"
+ hash: "0fba30df8b6cac2f911fbd2b7c48fca6"
}
Frame {
msec: 5808
- hash: "e9532a9023548cf5dfca3fdaeb3467e7"
+ hash: "0fba30df8b6cac2f911fbd2b7c48fca6"
}
Frame {
msec: 5824
- hash: "e9532a9023548cf5dfca3fdaeb3467e7"
+ hash: "0fba30df8b6cac2f911fbd2b7c48fca6"
}
Mouse {
type: 5
@@ -2078,7 +2078,7 @@ VisualTest {
}
Frame {
msec: 5840
- hash: "e9532a9023548cf5dfca3fdaeb3467e7"
+ hash: "0fba30df8b6cac2f911fbd2b7c48fca6"
}
Mouse {
type: 5
@@ -2098,7 +2098,7 @@ VisualTest {
}
Frame {
msec: 5856
- hash: "3ee2836c3a2ff4c71d82dd261941883b"
+ hash: "4b0c9ae119bd6c9f6331cbefc53afa3d"
}
Mouse {
type: 5
@@ -2118,7 +2118,7 @@ VisualTest {
}
Frame {
msec: 5872
- hash: "3ee2836c3a2ff4c71d82dd261941883b"
+ hash: "4b0c9ae119bd6c9f6331cbefc53afa3d"
}
Mouse {
type: 5
@@ -2138,7 +2138,7 @@ VisualTest {
}
Frame {
msec: 5888
- hash: "3ee2836c3a2ff4c71d82dd261941883b"
+ hash: "e6b3b80f052fec9f67b02a7f36676b5d"
}
Mouse {
type: 5
@@ -2158,7 +2158,7 @@ VisualTest {
}
Frame {
msec: 5904
- hash: "4e620c1b847274f691e80a384eac5320"
+ hash: "37d1ee8e1c914d499dd7920576dadcae"
}
Mouse {
type: 5
@@ -2178,7 +2178,7 @@ VisualTest {
}
Frame {
msec: 5920
- hash: "1a246aa1be0878c38da2eaac6befb738"
+ hash: "37d1ee8e1c914d499dd7920576dadcae"
}
Mouse {
type: 5
@@ -2198,7 +2198,7 @@ VisualTest {
}
Frame {
msec: 5936
- hash: "7d6d4a33aacd1d2f530834af31069793"
+ hash: "34f7bd61afb22009181d79841bc59fa1"
}
Mouse {
type: 5
@@ -2218,7 +2218,7 @@ VisualTest {
}
Frame {
msec: 5952
- hash: "3d71f15694368397bc8f6a6a0c2c16de"
+ hash: "23ea9471d132daab6193b0809c8bd98e"
}
Mouse {
type: 5
@@ -2238,7 +2238,7 @@ VisualTest {
}
Frame {
msec: 5968
- hash: "a0f4a1f253c763054ca7d9727d517e5c"
+ hash: "e35d1c5a15474388727942b41fdcec0f"
}
Mouse {
type: 5
@@ -2250,7 +2250,7 @@ VisualTest {
}
Frame {
msec: 5984
- hash: "a0f4a1f253c763054ca7d9727d517e5c"
+ hash: "e35d1c5a15474388727942b41fdcec0f"
}
Mouse {
type: 5
@@ -2270,7 +2270,7 @@ VisualTest {
}
Frame {
msec: 6000
- hash: "a0f4a1f253c763054ca7d9727d517e5c"
+ hash: "e35d1c5a15474388727942b41fdcec0f"
}
Mouse {
type: 5
@@ -2290,7 +2290,7 @@ VisualTest {
}
Frame {
msec: 6016
- hash: "a0f4a1f253c763054ca7d9727d517e5c"
+ hash: "e35d1c5a15474388727942b41fdcec0f"
}
Mouse {
type: 5
@@ -2310,7 +2310,7 @@ VisualTest {
}
Frame {
msec: 6032
- hash: "a0f4a1f253c763054ca7d9727d517e5c"
+ hash: "e35d1c5a15474388727942b41fdcec0f"
}
Mouse {
type: 5
@@ -2330,7 +2330,7 @@ VisualTest {
}
Frame {
msec: 6048
- hash: "a0f4a1f253c763054ca7d9727d517e5c"
+ hash: "e35d1c5a15474388727942b41fdcec0f"
}
Mouse {
type: 5
@@ -2350,7 +2350,7 @@ VisualTest {
}
Frame {
msec: 6064
- hash: "a0f4a1f253c763054ca7d9727d517e5c"
+ hash: "e35d1c5a15474388727942b41fdcec0f"
}
Mouse {
type: 5
@@ -2370,7 +2370,7 @@ VisualTest {
}
Frame {
msec: 6080
- hash: "a0f4a1f253c763054ca7d9727d517e5c"
+ hash: "e35d1c5a15474388727942b41fdcec0f"
}
Mouse {
type: 5
@@ -2390,7 +2390,7 @@ VisualTest {
}
Frame {
msec: 6096
- hash: "a0f4a1f253c763054ca7d9727d517e5c"
+ hash: "e35d1c5a15474388727942b41fdcec0f"
}
Mouse {
type: 5
@@ -2410,7 +2410,7 @@ VisualTest {
}
Frame {
msec: 6112
- hash: "a0f4a1f253c763054ca7d9727d517e5c"
+ hash: "e35d1c5a15474388727942b41fdcec0f"
}
Mouse {
type: 5
@@ -2430,7 +2430,7 @@ VisualTest {
}
Frame {
msec: 6128
- hash: "a0f4a1f253c763054ca7d9727d517e5c"
+ hash: "e35d1c5a15474388727942b41fdcec0f"
}
Mouse {
type: 5
@@ -2450,7 +2450,7 @@ VisualTest {
}
Frame {
msec: 6144
- hash: "a0f4a1f253c763054ca7d9727d517e5c"
+ hash: "e35d1c5a15474388727942b41fdcec0f"
}
Mouse {
type: 5
@@ -2470,7 +2470,7 @@ VisualTest {
}
Frame {
msec: 6160
- hash: "a0f4a1f253c763054ca7d9727d517e5c"
+ hash: "e35d1c5a15474388727942b41fdcec0f"
}
Mouse {
type: 5
@@ -2490,7 +2490,7 @@ VisualTest {
}
Frame {
msec: 6176
- hash: "a0f4a1f253c763054ca7d9727d517e5c"
+ hash: "e35d1c5a15474388727942b41fdcec0f"
}
Mouse {
type: 5
@@ -2502,23 +2502,23 @@ VisualTest {
}
Frame {
msec: 6192
- hash: "a0f4a1f253c763054ca7d9727d517e5c"
+ hash: "e35d1c5a15474388727942b41fdcec0f"
}
Frame {
msec: 6208
- hash: "a0f4a1f253c763054ca7d9727d517e5c"
+ hash: "e35d1c5a15474388727942b41fdcec0f"
}
Frame {
msec: 6224
- hash: "a0f4a1f253c763054ca7d9727d517e5c"
+ hash: "e35d1c5a15474388727942b41fdcec0f"
}
Frame {
msec: 6240
- hash: "a0f4a1f253c763054ca7d9727d517e5c"
+ hash: "e35d1c5a15474388727942b41fdcec0f"
}
Frame {
msec: 6256
- hash: "a0f4a1f253c763054ca7d9727d517e5c"
+ hash: "e35d1c5a15474388727942b41fdcec0f"
}
Mouse {
type: 5
@@ -2530,7 +2530,7 @@ VisualTest {
}
Frame {
msec: 6272
- hash: "a0f4a1f253c763054ca7d9727d517e5c"
+ hash: "e35d1c5a15474388727942b41fdcec0f"
}
Mouse {
type: 5
@@ -2550,7 +2550,7 @@ VisualTest {
}
Frame {
msec: 6288
- hash: "a0f4a1f253c763054ca7d9727d517e5c"
+ hash: "e35d1c5a15474388727942b41fdcec0f"
}
Mouse {
type: 5
@@ -2570,7 +2570,7 @@ VisualTest {
}
Frame {
msec: 6304
- hash: "a0f4a1f253c763054ca7d9727d517e5c"
+ hash: "e35d1c5a15474388727942b41fdcec0f"
}
Mouse {
type: 5
@@ -2590,7 +2590,7 @@ VisualTest {
}
Frame {
msec: 6320
- hash: "a0f4a1f253c763054ca7d9727d517e5c"
+ hash: "e35d1c5a15474388727942b41fdcec0f"
}
Mouse {
type: 5
@@ -2610,7 +2610,7 @@ VisualTest {
}
Frame {
msec: 6336
- hash: "a0f4a1f253c763054ca7d9727d517e5c"
+ hash: "e35d1c5a15474388727942b41fdcec0f"
}
Mouse {
type: 5
@@ -2630,7 +2630,7 @@ VisualTest {
}
Frame {
msec: 6352
- hash: "a0f4a1f253c763054ca7d9727d517e5c"
+ hash: "e35d1c5a15474388727942b41fdcec0f"
}
Mouse {
type: 5
@@ -2650,7 +2650,7 @@ VisualTest {
}
Frame {
msec: 6368
- hash: "a0f4a1f253c763054ca7d9727d517e5c"
+ hash: "e35d1c5a15474388727942b41fdcec0f"
}
Mouse {
type: 5
@@ -2670,7 +2670,7 @@ VisualTest {
}
Frame {
msec: 6384
- hash: "b6589493e0225846be0af57024e25d98"
+ hash: "1b24d0c17446cfadc351127f842ac5fd"
}
Mouse {
type: 5
@@ -2682,7 +2682,7 @@ VisualTest {
}
Frame {
msec: 6400
- hash: "b6589493e0225846be0af57024e25d98"
+ hash: "1b24d0c17446cfadc351127f842ac5fd"
}
Mouse {
type: 5
@@ -2702,7 +2702,7 @@ VisualTest {
}
Frame {
msec: 6416
- hash: "d8a1bee2a0e57944d8268a2ce7e6c3c1"
+ hash: "f0b06fefc9e18b836ffe081215efe584"
}
Mouse {
type: 5
@@ -2722,7 +2722,7 @@ VisualTest {
}
Frame {
msec: 6432
- hash: "b7eeca12627f0ca82a0e56179184b3b8"
+ hash: "9ed30cb00df82cce04e8c8b76d056013"
}
Mouse {
type: 5
@@ -2742,7 +2742,7 @@ VisualTest {
}
Frame {
msec: 6448
- hash: "abccf1571b12444328188003928a0aea"
+ hash: "4d37a34962e019f47201da6baddebca8"
}
Mouse {
type: 5
@@ -2754,7 +2754,7 @@ VisualTest {
}
Frame {
msec: 6464
- hash: "9ad787bf41f0ab66beffff056a115c23"
+ hash: "cd83055403901b1a7a99dfda3798ca7e"
}
Mouse {
type: 5
@@ -2774,7 +2774,7 @@ VisualTest {
}
Frame {
msec: 6480
- hash: "bc4cd74678c08403bb16b74630d0fd18"
+ hash: "0fba30df8b6cac2f911fbd2b7c48fca6"
}
Mouse {
type: 5
@@ -2794,7 +2794,7 @@ VisualTest {
}
Frame {
msec: 6496
- hash: "bc4cd74678c08403bb16b74630d0fd18"
+ hash: "71cdc5a9144234556630430361779ff7"
}
Mouse {
type: 5
@@ -2814,7 +2814,7 @@ VisualTest {
}
Frame {
msec: 6512
- hash: "bc4cd74678c08403bb16b74630d0fd18"
+ hash: "71cdc5a9144234556630430361779ff7"
}
Mouse {
type: 5
@@ -2834,7 +2834,7 @@ VisualTest {
}
Frame {
msec: 6528
- hash: "bc4cd74678c08403bb16b74630d0fd18"
+ hash: "71cdc5a9144234556630430361779ff7"
}
Mouse {
type: 5
@@ -2854,7 +2854,7 @@ VisualTest {
}
Frame {
msec: 6544
- hash: "bc4cd74678c08403bb16b74630d0fd18"
+ hash: "71cdc5a9144234556630430361779ff7"
}
Mouse {
type: 5
@@ -2874,7 +2874,7 @@ VisualTest {
}
Frame {
msec: 6560
- hash: "bc4cd74678c08403bb16b74630d0fd18"
+ hash: "71cdc5a9144234556630430361779ff7"
}
Mouse {
type: 5
@@ -2894,7 +2894,7 @@ VisualTest {
}
Frame {
msec: 6576
- hash: "bc4cd74678c08403bb16b74630d0fd18"
+ hash: "71cdc5a9144234556630430361779ff7"
}
Mouse {
type: 5
@@ -2914,27 +2914,27 @@ VisualTest {
}
Frame {
msec: 6592
- hash: "bc4cd74678c08403bb16b74630d0fd18"
+ hash: "71cdc5a9144234556630430361779ff7"
}
Frame {
msec: 6608
- hash: "bc4cd74678c08403bb16b74630d0fd18"
+ hash: "71cdc5a9144234556630430361779ff7"
}
Frame {
msec: 6624
- hash: "bc4cd74678c08403bb16b74630d0fd18"
+ hash: "71cdc5a9144234556630430361779ff7"
}
Frame {
msec: 6640
- hash: "bc4cd74678c08403bb16b74630d0fd18"
+ hash: "71cdc5a9144234556630430361779ff7"
}
Frame {
msec: 6656
- hash: "bc4cd74678c08403bb16b74630d0fd18"
+ hash: "71cdc5a9144234556630430361779ff7"
}
Frame {
msec: 6672
- hash: "bc4cd74678c08403bb16b74630d0fd18"
+ hash: "71cdc5a9144234556630430361779ff7"
}
Mouse {
type: 5
@@ -2954,7 +2954,7 @@ VisualTest {
}
Frame {
msec: 6688
- hash: "bc4cd74678c08403bb16b74630d0fd18"
+ hash: "71cdc5a9144234556630430361779ff7"
}
Mouse {
type: 5
@@ -2974,7 +2974,7 @@ VisualTest {
}
Frame {
msec: 6704
- hash: "bc4cd74678c08403bb16b74630d0fd18"
+ hash: "71cdc5a9144234556630430361779ff7"
}
Mouse {
type: 5
@@ -2994,7 +2994,7 @@ VisualTest {
}
Frame {
msec: 6720
- image: "usingMultilineEdit.6.png"
+ hash: "71cdc5a9144234556630430361779ff7"
}
Mouse {
type: 5
@@ -3014,7 +3014,7 @@ VisualTest {
}
Frame {
msec: 6736
- hash: "bc4cd74678c08403bb16b74630d0fd18"
+ image: "usingMultilineEdit.7.png"
}
Mouse {
type: 5
@@ -3034,7 +3034,7 @@ VisualTest {
}
Frame {
msec: 6752
- hash: "bc4cd74678c08403bb16b74630d0fd18"
+ hash: "71cdc5a9144234556630430361779ff7"
}
Mouse {
type: 5
@@ -3054,7 +3054,7 @@ VisualTest {
}
Frame {
msec: 6768
- hash: "bc4cd74678c08403bb16b74630d0fd18"
+ hash: "71cdc5a9144234556630430361779ff7"
}
Mouse {
type: 5
@@ -3074,7 +3074,7 @@ VisualTest {
}
Frame {
msec: 6784
- hash: "bc4cd74678c08403bb16b74630d0fd18"
+ hash: "71cdc5a9144234556630430361779ff7"
}
Mouse {
type: 5
@@ -3094,7 +3094,7 @@ VisualTest {
}
Frame {
msec: 6800
- hash: "bc4cd74678c08403bb16b74630d0fd18"
+ hash: "71cdc5a9144234556630430361779ff7"
}
Mouse {
type: 5
@@ -3114,7 +3114,7 @@ VisualTest {
}
Frame {
msec: 6816
- hash: "bc4cd74678c08403bb16b74630d0fd18"
+ hash: "71cdc5a9144234556630430361779ff7"
}
Mouse {
type: 5
@@ -3134,7 +3134,7 @@ VisualTest {
}
Frame {
msec: 6832
- hash: "bc4cd74678c08403bb16b74630d0fd18"
+ hash: "71cdc5a9144234556630430361779ff7"
}
Mouse {
type: 5
@@ -3154,7 +3154,7 @@ VisualTest {
}
Frame {
msec: 6848
- hash: "0e728de352bc8658bb3e2900a56bfad9"
+ hash: "0fba30df8b6cac2f911fbd2b7c48fca6"
}
Mouse {
type: 5
@@ -3174,7 +3174,7 @@ VisualTest {
}
Frame {
msec: 6864
- hash: "0e728de352bc8658bb3e2900a56bfad9"
+ hash: "0fba30df8b6cac2f911fbd2b7c48fca6"
}
Mouse {
type: 5
@@ -3194,7 +3194,7 @@ VisualTest {
}
Frame {
msec: 6880
- hash: "0e728de352bc8658bb3e2900a56bfad9"
+ hash: "0fba30df8b6cac2f911fbd2b7c48fca6"
}
Mouse {
type: 3
@@ -3206,55 +3206,55 @@ VisualTest {
}
Frame {
msec: 6896
- hash: "0e728de352bc8658bb3e2900a56bfad9"
+ hash: "0fba30df8b6cac2f911fbd2b7c48fca6"
}
Frame {
msec: 6912
- hash: "0e728de352bc8658bb3e2900a56bfad9"
+ hash: "0fba30df8b6cac2f911fbd2b7c48fca6"
}
Frame {
msec: 6928
- hash: "0e728de352bc8658bb3e2900a56bfad9"
+ hash: "0fba30df8b6cac2f911fbd2b7c48fca6"
}
Frame {
msec: 6944
- hash: "0e728de352bc8658bb3e2900a56bfad9"
+ hash: "0fba30df8b6cac2f911fbd2b7c48fca6"
}
Frame {
msec: 6960
- hash: "0e728de352bc8658bb3e2900a56bfad9"
+ hash: "0fba30df8b6cac2f911fbd2b7c48fca6"
}
Frame {
msec: 6976
- hash: "0e728de352bc8658bb3e2900a56bfad9"
+ hash: "0fba30df8b6cac2f911fbd2b7c48fca6"
}
Frame {
msec: 6992
- hash: "0e728de352bc8658bb3e2900a56bfad9"
+ hash: "0fba30df8b6cac2f911fbd2b7c48fca6"
}
Frame {
msec: 7008
- hash: "0e728de352bc8658bb3e2900a56bfad9"
+ hash: "0fba30df8b6cac2f911fbd2b7c48fca6"
}
Frame {
msec: 7024
- hash: "0e728de352bc8658bb3e2900a56bfad9"
+ hash: "0fba30df8b6cac2f911fbd2b7c48fca6"
}
Frame {
msec: 7040
- hash: "0e728de352bc8658bb3e2900a56bfad9"
+ hash: "0fba30df8b6cac2f911fbd2b7c48fca6"
}
Frame {
msec: 7056
- hash: "0e728de352bc8658bb3e2900a56bfad9"
+ hash: "0fba30df8b6cac2f911fbd2b7c48fca6"
}
Frame {
msec: 7072
- hash: "0e728de352bc8658bb3e2900a56bfad9"
+ hash: "0fba30df8b6cac2f911fbd2b7c48fca6"
}
Frame {
msec: 7088
- hash: "0e728de352bc8658bb3e2900a56bfad9"
+ hash: "0fba30df8b6cac2f911fbd2b7c48fca6"
}
Mouse {
type: 2
@@ -3266,23 +3266,23 @@ VisualTest {
}
Frame {
msec: 7104
- hash: "c9b766ef3743159fdd7a01d3eeaa357b"
+ hash: "df53c57d83cf38d96893f379d8a0c1a7"
}
Frame {
msec: 7120
- hash: "c9b766ef3743159fdd7a01d3eeaa357b"
+ hash: "df53c57d83cf38d96893f379d8a0c1a7"
}
Frame {
msec: 7136
- hash: "c9b766ef3743159fdd7a01d3eeaa357b"
+ hash: "df53c57d83cf38d96893f379d8a0c1a7"
}
Frame {
msec: 7152
- hash: "c9b766ef3743159fdd7a01d3eeaa357b"
+ hash: "df53c57d83cf38d96893f379d8a0c1a7"
}
Frame {
msec: 7168
- hash: "c9b766ef3743159fdd7a01d3eeaa357b"
+ hash: "df53c57d83cf38d96893f379d8a0c1a7"
}
Mouse {
type: 3
@@ -3294,103 +3294,103 @@ VisualTest {
}
Frame {
msec: 7184
- hash: "c9b766ef3743159fdd7a01d3eeaa357b"
+ hash: "df53c57d83cf38d96893f379d8a0c1a7"
}
Frame {
msec: 7200
- hash: "c9b766ef3743159fdd7a01d3eeaa357b"
+ hash: "df53c57d83cf38d96893f379d8a0c1a7"
}
Frame {
msec: 7216
- hash: "c9b766ef3743159fdd7a01d3eeaa357b"
+ hash: "df53c57d83cf38d96893f379d8a0c1a7"
}
Frame {
msec: 7232
- hash: "c9b766ef3743159fdd7a01d3eeaa357b"
+ hash: "df53c57d83cf38d96893f379d8a0c1a7"
}
Frame {
msec: 7248
- hash: "c9b766ef3743159fdd7a01d3eeaa357b"
+ hash: "df53c57d83cf38d96893f379d8a0c1a7"
}
Frame {
msec: 7264
- hash: "c9b766ef3743159fdd7a01d3eeaa357b"
+ hash: "df53c57d83cf38d96893f379d8a0c1a7"
}
Frame {
msec: 7280
- hash: "c9b766ef3743159fdd7a01d3eeaa357b"
+ hash: "df53c57d83cf38d96893f379d8a0c1a7"
}
Frame {
msec: 7296
- hash: "c9b766ef3743159fdd7a01d3eeaa357b"
+ hash: "df53c57d83cf38d96893f379d8a0c1a7"
}
Frame {
msec: 7312
- hash: "c9b766ef3743159fdd7a01d3eeaa357b"
+ hash: "df53c57d83cf38d96893f379d8a0c1a7"
}
Frame {
msec: 7328
- hash: "c9b766ef3743159fdd7a01d3eeaa357b"
+ hash: "df53c57d83cf38d96893f379d8a0c1a7"
}
Frame {
msec: 7344
- hash: "c9b766ef3743159fdd7a01d3eeaa357b"
+ hash: "df53c57d83cf38d96893f379d8a0c1a7"
}
Frame {
msec: 7360
- hash: "c9b766ef3743159fdd7a01d3eeaa357b"
+ hash: "df53c57d83cf38d96893f379d8a0c1a7"
}
Frame {
msec: 7376
- hash: "c9b766ef3743159fdd7a01d3eeaa357b"
+ hash: "df53c57d83cf38d96893f379d8a0c1a7"
}
Frame {
msec: 7392
- hash: "c9b766ef3743159fdd7a01d3eeaa357b"
+ hash: "df53c57d83cf38d96893f379d8a0c1a7"
}
Frame {
msec: 7408
- hash: "c9b766ef3743159fdd7a01d3eeaa357b"
+ hash: "df53c57d83cf38d96893f379d8a0c1a7"
}
Frame {
msec: 7424
- hash: "c9b766ef3743159fdd7a01d3eeaa357b"
+ hash: "df53c57d83cf38d96893f379d8a0c1a7"
}
Frame {
msec: 7440
- hash: "c9b766ef3743159fdd7a01d3eeaa357b"
+ hash: "df53c57d83cf38d96893f379d8a0c1a7"
}
Frame {
msec: 7456
- hash: "c9b766ef3743159fdd7a01d3eeaa357b"
+ hash: "df53c57d83cf38d96893f379d8a0c1a7"
}
Frame {
msec: 7472
- hash: "c9b766ef3743159fdd7a01d3eeaa357b"
+ hash: "df53c57d83cf38d96893f379d8a0c1a7"
}
Frame {
msec: 7488
- hash: "c9b766ef3743159fdd7a01d3eeaa357b"
+ hash: "df53c57d83cf38d96893f379d8a0c1a7"
}
Frame {
msec: 7504
- hash: "c9b766ef3743159fdd7a01d3eeaa357b"
+ hash: "df53c57d83cf38d96893f379d8a0c1a7"
}
Frame {
msec: 7520
- hash: "c9b766ef3743159fdd7a01d3eeaa357b"
+ hash: "df53c57d83cf38d96893f379d8a0c1a7"
}
Frame {
msec: 7536
- hash: "c9b766ef3743159fdd7a01d3eeaa357b"
+ hash: "df53c57d83cf38d96893f379d8a0c1a7"
}
Frame {
msec: 7552
- hash: "c9b766ef3743159fdd7a01d3eeaa357b"
+ hash: "df53c57d83cf38d96893f379d8a0c1a7"
}
Frame {
msec: 7568
- hash: "c9b766ef3743159fdd7a01d3eeaa357b"
+ hash: "df53c57d83cf38d96893f379d8a0c1a7"
}
Key {
type: 6
@@ -3402,15 +3402,15 @@ VisualTest {
}
Frame {
msec: 7584
- hash: "f8d7e167379a5109b1744727b3bb5050"
+ hash: "bdc721eb51436b121826d4163cbf596f"
}
Frame {
msec: 7600
- hash: "f8d7e167379a5109b1744727b3bb5050"
+ hash: "bdc721eb51436b121826d4163cbf596f"
}
Frame {
msec: 7616
- hash: "f8d7e167379a5109b1744727b3bb5050"
+ hash: "bdc721eb51436b121826d4163cbf596f"
}
Key {
type: 7
@@ -3422,27 +3422,27 @@ VisualTest {
}
Frame {
msec: 7632
- hash: "f8d7e167379a5109b1744727b3bb5050"
+ hash: "bdc721eb51436b121826d4163cbf596f"
}
Frame {
msec: 7648
- hash: "f8d7e167379a5109b1744727b3bb5050"
+ hash: "bdc721eb51436b121826d4163cbf596f"
}
Frame {
msec: 7664
- hash: "f8d7e167379a5109b1744727b3bb5050"
+ hash: "bdc721eb51436b121826d4163cbf596f"
}
Frame {
msec: 7680
- image: "usingMultilineEdit.7.png"
+ hash: "bdc721eb51436b121826d4163cbf596f"
}
Frame {
msec: 7696
- hash: "f8d7e167379a5109b1744727b3bb5050"
+ image: "usingMultilineEdit.8.png"
}
Frame {
msec: 7712
- hash: "f8d7e167379a5109b1744727b3bb5050"
+ hash: "bdc721eb51436b121826d4163cbf596f"
}
Key {
type: 6
@@ -3454,63 +3454,63 @@ VisualTest {
}
Frame {
msec: 7728
- hash: "d1f43fa2f710725527736ac3439577df"
+ hash: "7d378c1c1e54d2d13b602f1cf1a56a2f"
}
Frame {
msec: 7744
- hash: "d1f43fa2f710725527736ac3439577df"
+ hash: "7d378c1c1e54d2d13b602f1cf1a56a2f"
}
Frame {
msec: 7760
- hash: "d1f43fa2f710725527736ac3439577df"
+ hash: "7d378c1c1e54d2d13b602f1cf1a56a2f"
}
Frame {
msec: 7776
- hash: "d1f43fa2f710725527736ac3439577df"
+ hash: "7d378c1c1e54d2d13b602f1cf1a56a2f"
}
Frame {
msec: 7792
- hash: "d1f43fa2f710725527736ac3439577df"
+ hash: "7d378c1c1e54d2d13b602f1cf1a56a2f"
}
Frame {
msec: 7808
- hash: "d1f43fa2f710725527736ac3439577df"
+ hash: "7d378c1c1e54d2d13b602f1cf1a56a2f"
}
Frame {
msec: 7824
- hash: "d1f43fa2f710725527736ac3439577df"
+ hash: "7d378c1c1e54d2d13b602f1cf1a56a2f"
}
Frame {
msec: 7840
- hash: "d1f43fa2f710725527736ac3439577df"
+ hash: "7d378c1c1e54d2d13b602f1cf1a56a2f"
}
Frame {
msec: 7856
- hash: "d1f43fa2f710725527736ac3439577df"
+ hash: "7d378c1c1e54d2d13b602f1cf1a56a2f"
}
Frame {
msec: 7872
- hash: "d1f43fa2f710725527736ac3439577df"
+ hash: "7d378c1c1e54d2d13b602f1cf1a56a2f"
}
Frame {
msec: 7888
- hash: "d1f43fa2f710725527736ac3439577df"
+ hash: "7d378c1c1e54d2d13b602f1cf1a56a2f"
}
Frame {
msec: 7904
- hash: "d1f43fa2f710725527736ac3439577df"
+ hash: "7d378c1c1e54d2d13b602f1cf1a56a2f"
}
Frame {
msec: 7920
- hash: "d1f43fa2f710725527736ac3439577df"
+ hash: "7d378c1c1e54d2d13b602f1cf1a56a2f"
}
Frame {
msec: 7936
- hash: "d1f43fa2f710725527736ac3439577df"
+ hash: "7d378c1c1e54d2d13b602f1cf1a56a2f"
}
Frame {
msec: 7952
- hash: "d1f43fa2f710725527736ac3439577df"
+ hash: "7d378c1c1e54d2d13b602f1cf1a56a2f"
}
Key {
type: 7
@@ -3530,11 +3530,11 @@ VisualTest {
}
Frame {
msec: 7968
- hash: "1553d42725394fa4d4c9b97dc12a78b9"
+ hash: "bc028efd0fc3d999269d047fe4d64e27"
}
Frame {
msec: 7984
- hash: "1553d42725394fa4d4c9b97dc12a78b9"
+ hash: "bc028efd0fc3d999269d047fe4d64e27"
}
Key {
type: 7
@@ -3554,11 +3554,11 @@ VisualTest {
}
Frame {
msec: 8000
- hash: "236c237e3f4673d568a8cf2c3665cb49"
+ hash: "b18fe0d9cfed62d53e152e3f294dc8b3"
}
Frame {
msec: 8016
- hash: "236c237e3f4673d568a8cf2c3665cb49"
+ hash: "b18fe0d9cfed62d53e152e3f294dc8b3"
}
Key {
type: 7
@@ -3578,11 +3578,11 @@ VisualTest {
}
Frame {
msec: 8032
- hash: "cea55dd0cd5b0c2e37808bd38c689ddf"
+ hash: "eca1a9d5eed543b913d1d2b19cef3286"
}
Frame {
msec: 8048
- hash: "cea55dd0cd5b0c2e37808bd38c689ddf"
+ hash: "eca1a9d5eed543b913d1d2b19cef3286"
}
Key {
type: 7
@@ -3602,11 +3602,11 @@ VisualTest {
}
Frame {
msec: 8064
- hash: "9bf8a1a8a79230f459fcec6d21843f3f"
+ hash: "01f1ac2c199086a701a784a3a47fdb71"
}
Frame {
msec: 8080
- hash: "9bf8a1a8a79230f459fcec6d21843f3f"
+ hash: "01f1ac2c199086a701a784a3a47fdb71"
}
Key {
type: 6
@@ -3626,31 +3626,31 @@ VisualTest {
}
Frame {
msec: 8096
- hash: "9bf8a1a8a79230f459fcec6d21843f3f"
+ hash: "01f1ac2c199086a701a784a3a47fdb71"
}
Frame {
msec: 8112
- hash: "9bf8a1a8a79230f459fcec6d21843f3f"
+ hash: "01f1ac2c199086a701a784a3a47fdb71"
}
Frame {
msec: 8128
- hash: "9bf8a1a8a79230f459fcec6d21843f3f"
+ hash: "01f1ac2c199086a701a784a3a47fdb71"
}
Frame {
msec: 8144
- hash: "9bf8a1a8a79230f459fcec6d21843f3f"
+ hash: "01f1ac2c199086a701a784a3a47fdb71"
}
Frame {
msec: 8160
- hash: "9bf8a1a8a79230f459fcec6d21843f3f"
+ hash: "01f1ac2c199086a701a784a3a47fdb71"
}
Frame {
msec: 8176
- hash: "9bf8a1a8a79230f459fcec6d21843f3f"
+ hash: "01f1ac2c199086a701a784a3a47fdb71"
}
Frame {
msec: 8192
- hash: "9bf8a1a8a79230f459fcec6d21843f3f"
+ hash: "01f1ac2c199086a701a784a3a47fdb71"
}
Key {
type: 6
@@ -3662,19 +3662,19 @@ VisualTest {
}
Frame {
msec: 8208
- hash: "261d950728b1628d637e739a72c58e9f"
+ hash: "c8254066bc7b4bae0934425226d59a2b"
}
Frame {
msec: 8224
- hash: "261d950728b1628d637e739a72c58e9f"
+ hash: "c8254066bc7b4bae0934425226d59a2b"
}
Frame {
msec: 8240
- hash: "261d950728b1628d637e739a72c58e9f"
+ hash: "c8254066bc7b4bae0934425226d59a2b"
}
Frame {
msec: 8256
- hash: "261d950728b1628d637e739a72c58e9f"
+ hash: "c8254066bc7b4bae0934425226d59a2b"
}
Key {
type: 7
@@ -3686,19 +3686,19 @@ VisualTest {
}
Frame {
msec: 8272
- hash: "261d950728b1628d637e739a72c58e9f"
+ hash: "c8254066bc7b4bae0934425226d59a2b"
}
Frame {
msec: 8288
- hash: "261d950728b1628d637e739a72c58e9f"
+ hash: "c8254066bc7b4bae0934425226d59a2b"
}
Frame {
msec: 8304
- hash: "261d950728b1628d637e739a72c58e9f"
+ hash: "c8254066bc7b4bae0934425226d59a2b"
}
Frame {
msec: 8320
- hash: "261d950728b1628d637e739a72c58e9f"
+ hash: "c8254066bc7b4bae0934425226d59a2b"
}
Key {
type: 6
@@ -3710,19 +3710,19 @@ VisualTest {
}
Frame {
msec: 8336
- hash: "aad904179a9dbda49f411b9ae3efcb53"
+ hash: "7bd48f4441ba1971bf49cb5b9e174935"
}
Frame {
msec: 8352
- hash: "aad904179a9dbda49f411b9ae3efcb53"
+ hash: "7bd48f4441ba1971bf49cb5b9e174935"
}
Frame {
msec: 8368
- hash: "aad904179a9dbda49f411b9ae3efcb53"
+ hash: "7bd48f4441ba1971bf49cb5b9e174935"
}
Frame {
msec: 8384
- hash: "aad904179a9dbda49f411b9ae3efcb53"
+ hash: "7bd48f4441ba1971bf49cb5b9e174935"
}
Key {
type: 7
@@ -3734,23 +3734,23 @@ VisualTest {
}
Frame {
msec: 8400
- hash: "aad904179a9dbda49f411b9ae3efcb53"
+ hash: "7bd48f4441ba1971bf49cb5b9e174935"
}
Frame {
msec: 8416
- hash: "aad904179a9dbda49f411b9ae3efcb53"
+ hash: "7bd48f4441ba1971bf49cb5b9e174935"
}
Frame {
msec: 8432
- hash: "aad904179a9dbda49f411b9ae3efcb53"
+ hash: "7bd48f4441ba1971bf49cb5b9e174935"
}
Frame {
msec: 8448
- hash: "aad904179a9dbda49f411b9ae3efcb53"
+ hash: "7bd48f4441ba1971bf49cb5b9e174935"
}
Frame {
msec: 8464
- hash: "aad904179a9dbda49f411b9ae3efcb53"
+ hash: "7bd48f4441ba1971bf49cb5b9e174935"
}
Key {
type: 6
@@ -3762,19 +3762,19 @@ VisualTest {
}
Frame {
msec: 8480
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 8496
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 8512
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 8528
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Key {
type: 7
@@ -3786,35 +3786,35 @@ VisualTest {
}
Frame {
msec: 8544
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 8560
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 8576
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 8592
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 8608
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 8624
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 8640
- image: "usingMultilineEdit.8.png"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 8656
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ image: "usingMultilineEdit.9.png"
}
Key {
type: 7
@@ -3826,139 +3826,139 @@ VisualTest {
}
Frame {
msec: 8672
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 8688
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 8704
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 8720
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 8736
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 8752
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 8768
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 8784
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 8800
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 8816
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 8832
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 8848
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 8864
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 8880
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 8896
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 8912
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 8928
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 8944
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 8960
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 8976
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 8992
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 9008
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 9024
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 9040
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 9056
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 9072
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 9088
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 9104
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 9120
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 9136
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 9152
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 9168
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 9184
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 9200
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Mouse {
type: 2
@@ -3970,11 +3970,11 @@ VisualTest {
}
Frame {
msec: 9216
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 9232
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Mouse {
type: 5
@@ -3986,7 +3986,7 @@ VisualTest {
}
Frame {
msec: 9248
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Mouse {
type: 5
@@ -4006,7 +4006,7 @@ VisualTest {
}
Frame {
msec: 9264
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Mouse {
type: 5
@@ -4026,7 +4026,7 @@ VisualTest {
}
Frame {
msec: 9280
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Mouse {
type: 3
@@ -4038,43 +4038,43 @@ VisualTest {
}
Frame {
msec: 9296
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 9312
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 9328
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 9344
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 9360
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 9376
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 9392
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 9408
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 9424
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Frame {
msec: 9440
- hash: "b5c199f82cea188d2aafa4fa09f444fc"
+ hash: "edf44121a60ee9d975954863c2ed848c"
}
Mouse {
type: 2
@@ -4086,27 +4086,27 @@ VisualTest {
}
Frame {
msec: 9456
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 9472
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 9488
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 9504
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 9520
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 9536
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Mouse {
type: 3
@@ -4118,35 +4118,35 @@ VisualTest {
}
Frame {
msec: 9552
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 9568
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 9584
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 9600
- image: "usingMultilineEdit.9.png"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 9616
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ image: "usingMultilineEdit.10.png"
}
Frame {
msec: 9632
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 9648
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 9664
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Key {
type: 6
@@ -4158,111 +4158,111 @@ VisualTest {
}
Frame {
msec: 9680
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 9696
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 9712
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 9728
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 9744
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 9760
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 9776
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 9792
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 9808
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 9824
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 9840
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 9856
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 9872
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 9888
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 9904
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 9920
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 9936
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 9952
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 9968
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 9984
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10000
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10016
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10032
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10048
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10064
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10080
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10096
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Key {
type: 6
@@ -4274,35 +4274,35 @@ VisualTest {
}
Frame {
msec: 10112
- hash: "ead21885244133a71e103eb9ae6b61e4"
+ hash: "956f4f8cfca76cfee9babea29b0715ea"
}
Frame {
msec: 10128
- hash: "ead21885244133a71e103eb9ae6b61e4"
+ hash: "956f4f8cfca76cfee9babea29b0715ea"
}
Frame {
msec: 10144
- hash: "ead21885244133a71e103eb9ae6b61e4"
+ hash: "956f4f8cfca76cfee9babea29b0715ea"
}
Frame {
msec: 10160
- hash: "ead21885244133a71e103eb9ae6b61e4"
+ hash: "956f4f8cfca76cfee9babea29b0715ea"
}
Frame {
msec: 10176
- hash: "ead21885244133a71e103eb9ae6b61e4"
+ hash: "956f4f8cfca76cfee9babea29b0715ea"
}
Frame {
msec: 10192
- hash: "ead21885244133a71e103eb9ae6b61e4"
+ hash: "956f4f8cfca76cfee9babea29b0715ea"
}
Frame {
msec: 10208
- hash: "ead21885244133a71e103eb9ae6b61e4"
+ hash: "956f4f8cfca76cfee9babea29b0715ea"
}
Frame {
msec: 10224
- hash: "ead21885244133a71e103eb9ae6b61e4"
+ hash: "956f4f8cfca76cfee9babea29b0715ea"
}
Key {
type: 7
@@ -4314,35 +4314,35 @@ VisualTest {
}
Frame {
msec: 10240
- hash: "ead21885244133a71e103eb9ae6b61e4"
+ hash: "956f4f8cfca76cfee9babea29b0715ea"
}
Frame {
msec: 10256
- hash: "ead21885244133a71e103eb9ae6b61e4"
+ hash: "956f4f8cfca76cfee9babea29b0715ea"
}
Frame {
msec: 10272
- hash: "ead21885244133a71e103eb9ae6b61e4"
+ hash: "956f4f8cfca76cfee9babea29b0715ea"
}
Frame {
msec: 10288
- hash: "ead21885244133a71e103eb9ae6b61e4"
+ hash: "956f4f8cfca76cfee9babea29b0715ea"
}
Frame {
msec: 10304
- hash: "ead21885244133a71e103eb9ae6b61e4"
+ hash: "956f4f8cfca76cfee9babea29b0715ea"
}
Frame {
msec: 10320
- hash: "ead21885244133a71e103eb9ae6b61e4"
+ hash: "956f4f8cfca76cfee9babea29b0715ea"
}
Frame {
msec: 10336
- hash: "ead21885244133a71e103eb9ae6b61e4"
+ hash: "956f4f8cfca76cfee9babea29b0715ea"
}
Frame {
msec: 10352
- hash: "ead21885244133a71e103eb9ae6b61e4"
+ hash: "956f4f8cfca76cfee9babea29b0715ea"
}
Key {
type: 6
@@ -4354,27 +4354,27 @@ VisualTest {
}
Frame {
msec: 10368
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10384
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10400
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10416
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10432
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10448
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Key {
type: 7
@@ -4386,51 +4386,51 @@ VisualTest {
}
Frame {
msec: 10464
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10480
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10496
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10512
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10528
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10544
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10560
- image: "usingMultilineEdit.10.png"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10576
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ image: "usingMultilineEdit.11.png"
}
Frame {
msec: 10592
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10608
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10624
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10640
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Key {
type: 7
@@ -4442,246 +4442,246 @@ VisualTest {
}
Frame {
msec: 10656
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10672
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10688
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10704
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10720
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10736
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10752
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10768
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10784
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10800
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10816
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10832
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10848
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10864
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10880
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10896
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10912
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10928
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10944
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10960
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10976
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 10992
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11008
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11024
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11040
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11056
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11072
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11088
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11104
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11120
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11136
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11152
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11168
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11184
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11200
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11216
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11232
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11248
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11264
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11280
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11296
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11312
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11328
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11344
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11360
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11376
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11392
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11408
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11424
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11440
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11456
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11472
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11488
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11504
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11520
- image: "usingMultilineEdit.11.png"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11536
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ image: "usingMultilineEdit.12.png"
}
Frame {
msec: 11552
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11568
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11584
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11600
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
Frame {
msec: 11616
- hash: "a6c8b66b0d3f1124a6a316209a1456ff"
+ hash: "b58ab2c31823e7b0be144fba3e77368a"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.0.png
index 4f51246809..da3b971118 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.1.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.1.png
index a27067f5d2..8ea07878d4 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.2.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.2.png
index e33a8b01d2..33328db562 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.2.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.3.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.3.png
index fb35f56089..222ba535c7 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.3.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.4.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.4.png
index 9eab398a1d..970e73d42b 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.4.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.5.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.5.png
index 66edb6be09..4dc64a12f7 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.5.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.6.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.6.png
index 66edb6be09..99d451c486 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.6.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.6.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.7.png b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.7.png
new file mode 100644
index 0000000000..99d451c486
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.7.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.qml b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.qml
index 475aee1ff4..13834f0347 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextedit/data-X11/wrap.qml
@@ -6,7 +6,7 @@ VisualTest {
}
Frame {
msec: 16
- hash: "d9acaa85ca366aac5a63f59b8913039a"
+ image: "wrap.0.png"
}
Key {
type: 6
@@ -18,7 +18,7 @@ VisualTest {
}
Frame {
msec: 32
- hash: "81b7e0be317f0ca4425fa75ac5a73be9"
+ hash: "ca07773bf0df96be1f23d13c4d6e2bfd"
}
Key {
type: 7
@@ -30,11 +30,11 @@ VisualTest {
}
Frame {
msec: 48
- hash: "81b7e0be317f0ca4425fa75ac5a73be9"
+ hash: "ca07773bf0df96be1f23d13c4d6e2bfd"
}
Frame {
msec: 64
- hash: "81b7e0be317f0ca4425fa75ac5a73be9"
+ hash: "ca07773bf0df96be1f23d13c4d6e2bfd"
}
Key {
type: 7
@@ -46,11 +46,11 @@ VisualTest {
}
Frame {
msec: 80
- hash: "81b7e0be317f0ca4425fa75ac5a73be9"
+ hash: "ca07773bf0df96be1f23d13c4d6e2bfd"
}
Frame {
msec: 96
- hash: "81b7e0be317f0ca4425fa75ac5a73be9"
+ hash: "ca07773bf0df96be1f23d13c4d6e2bfd"
}
Key {
type: 6
@@ -62,15 +62,15 @@ VisualTest {
}
Frame {
msec: 112
- hash: "ad65e3fe3973343e9b6feb1c28ee40f4"
+ hash: "fc223de2e1f35db08d9689bc41f02304"
}
Frame {
msec: 128
- hash: "ad65e3fe3973343e9b6feb1c28ee40f4"
+ hash: "fc223de2e1f35db08d9689bc41f02304"
}
Frame {
msec: 144
- hash: "ad65e3fe3973343e9b6feb1c28ee40f4"
+ hash: "fc223de2e1f35db08d9689bc41f02304"
}
Key {
type: 6
@@ -82,15 +82,15 @@ VisualTest {
}
Frame {
msec: 160
- hash: "187c3d689a5b217d8e886464303840aa"
+ hash: "dc208fb5236b0a2a54bf9aaf7a9d60cd"
}
Frame {
msec: 176
- hash: "187c3d689a5b217d8e886464303840aa"
+ hash: "dc208fb5236b0a2a54bf9aaf7a9d60cd"
}
Frame {
msec: 192
- hash: "187c3d689a5b217d8e886464303840aa"
+ hash: "dc208fb5236b0a2a54bf9aaf7a9d60cd"
}
Key {
type: 7
@@ -102,11 +102,11 @@ VisualTest {
}
Frame {
msec: 208
- hash: "187c3d689a5b217d8e886464303840aa"
+ hash: "dc208fb5236b0a2a54bf9aaf7a9d60cd"
}
Frame {
msec: 224
- hash: "187c3d689a5b217d8e886464303840aa"
+ hash: "dc208fb5236b0a2a54bf9aaf7a9d60cd"
}
Key {
type: 6
@@ -118,7 +118,7 @@ VisualTest {
}
Frame {
msec: 240
- hash: "572954512211be45ec468ca0c541f87b"
+ hash: "c017468afd522089b5c9f42dd61be1b4"
}
Key {
type: 7
@@ -130,19 +130,19 @@ VisualTest {
}
Frame {
msec: 256
- hash: "572954512211be45ec468ca0c541f87b"
+ hash: "c017468afd522089b5c9f42dd61be1b4"
}
Frame {
msec: 272
- hash: "572954512211be45ec468ca0c541f87b"
+ hash: "c017468afd522089b5c9f42dd61be1b4"
}
Frame {
msec: 288
- hash: "572954512211be45ec468ca0c541f87b"
+ hash: "c017468afd522089b5c9f42dd61be1b4"
}
Frame {
msec: 304
- hash: "572954512211be45ec468ca0c541f87b"
+ hash: "c017468afd522089b5c9f42dd61be1b4"
}
Key {
type: 7
@@ -154,11 +154,11 @@ VisualTest {
}
Frame {
msec: 320
- hash: "572954512211be45ec468ca0c541f87b"
+ hash: "c017468afd522089b5c9f42dd61be1b4"
}
Frame {
msec: 336
- hash: "572954512211be45ec468ca0c541f87b"
+ hash: "c017468afd522089b5c9f42dd61be1b4"
}
Key {
type: 6
@@ -170,19 +170,19 @@ VisualTest {
}
Frame {
msec: 352
- hash: "a3ea4d6ebf0b267a01e18d4d7139cace"
+ hash: "84b1f1bf26af0da07006bb102d22693f"
}
Frame {
msec: 368
- hash: "a3ea4d6ebf0b267a01e18d4d7139cace"
+ hash: "84b1f1bf26af0da07006bb102d22693f"
}
Frame {
msec: 384
- hash: "a3ea4d6ebf0b267a01e18d4d7139cace"
+ hash: "84b1f1bf26af0da07006bb102d22693f"
}
Frame {
msec: 400
- hash: "a3ea4d6ebf0b267a01e18d4d7139cace"
+ hash: "84b1f1bf26af0da07006bb102d22693f"
}
Key {
type: 7
@@ -194,19 +194,19 @@ VisualTest {
}
Frame {
msec: 416
- hash: "a3ea4d6ebf0b267a01e18d4d7139cace"
+ hash: "84b1f1bf26af0da07006bb102d22693f"
}
Frame {
msec: 432
- hash: "a3ea4d6ebf0b267a01e18d4d7139cace"
+ hash: "84b1f1bf26af0da07006bb102d22693f"
}
Frame {
msec: 448
- hash: "a3ea4d6ebf0b267a01e18d4d7139cace"
+ hash: "84b1f1bf26af0da07006bb102d22693f"
}
Frame {
msec: 464
- hash: "a3ea4d6ebf0b267a01e18d4d7139cace"
+ hash: "84b1f1bf26af0da07006bb102d22693f"
}
Key {
type: 6
@@ -218,19 +218,19 @@ VisualTest {
}
Frame {
msec: 480
- hash: "36fb24a55e2cda02c3001adaa67e82a7"
+ hash: "a16f5aa01bd07de4ef7f868b7b6116f7"
}
Frame {
msec: 496
- hash: "36fb24a55e2cda02c3001adaa67e82a7"
+ hash: "a16f5aa01bd07de4ef7f868b7b6116f7"
}
Frame {
msec: 512
- hash: "36fb24a55e2cda02c3001adaa67e82a7"
+ hash: "a16f5aa01bd07de4ef7f868b7b6116f7"
}
Frame {
msec: 528
- hash: "36fb24a55e2cda02c3001adaa67e82a7"
+ hash: "a16f5aa01bd07de4ef7f868b7b6116f7"
}
Key {
type: 6
@@ -250,23 +250,23 @@ VisualTest {
}
Frame {
msec: 544
- hash: "cc3eb1d7263556949e5f7ad3862d9959"
+ hash: "e25e16d0d7b223b243d466630b901f68"
}
Frame {
msec: 560
- hash: "cc3eb1d7263556949e5f7ad3862d9959"
+ hash: "e25e16d0d7b223b243d466630b901f68"
}
Frame {
msec: 576
- hash: "cc3eb1d7263556949e5f7ad3862d9959"
+ hash: "e25e16d0d7b223b243d466630b901f68"
}
Frame {
msec: 592
- hash: "cc3eb1d7263556949e5f7ad3862d9959"
+ hash: "e25e16d0d7b223b243d466630b901f68"
}
Frame {
msec: 608
- hash: "cc3eb1d7263556949e5f7ad3862d9959"
+ hash: "e25e16d0d7b223b243d466630b901f68"
}
Key {
type: 7
@@ -286,19 +286,19 @@ VisualTest {
}
Frame {
msec: 624
- hash: "1ebd7df1875dc93984c9b663791c058e"
+ hash: "a53520edb9c117aa53abc42fce3505be"
}
Frame {
msec: 640
- hash: "1ebd7df1875dc93984c9b663791c058e"
+ hash: "a53520edb9c117aa53abc42fce3505be"
}
Frame {
msec: 656
- hash: "1ebd7df1875dc93984c9b663791c058e"
+ hash: "a53520edb9c117aa53abc42fce3505be"
}
Frame {
msec: 672
- hash: "1ebd7df1875dc93984c9b663791c058e"
+ hash: "a53520edb9c117aa53abc42fce3505be"
}
Key {
type: 7
@@ -310,11 +310,11 @@ VisualTest {
}
Frame {
msec: 688
- hash: "1ebd7df1875dc93984c9b663791c058e"
+ hash: "a53520edb9c117aa53abc42fce3505be"
}
Frame {
msec: 704
- hash: "1ebd7df1875dc93984c9b663791c058e"
+ hash: "a53520edb9c117aa53abc42fce3505be"
}
Key {
type: 6
@@ -326,23 +326,23 @@ VisualTest {
}
Frame {
msec: 720
- hash: "35ad49d6517b35bd410db9770818918d"
+ hash: "a7ef30038b24e8bf946bdd38aaac6430"
}
Frame {
msec: 736
- hash: "35ad49d6517b35bd410db9770818918d"
+ hash: "a7ef30038b24e8bf946bdd38aaac6430"
}
Frame {
msec: 752
- hash: "35ad49d6517b35bd410db9770818918d"
+ hash: "a7ef30038b24e8bf946bdd38aaac6430"
}
Frame {
msec: 768
- hash: "35ad49d6517b35bd410db9770818918d"
+ hash: "a7ef30038b24e8bf946bdd38aaac6430"
}
Frame {
msec: 784
- hash: "35ad49d6517b35bd410db9770818918d"
+ hash: "a7ef30038b24e8bf946bdd38aaac6430"
}
Key {
type: 7
@@ -354,7 +354,7 @@ VisualTest {
}
Frame {
msec: 800
- hash: "35ad49d6517b35bd410db9770818918d"
+ hash: "a7ef30038b24e8bf946bdd38aaac6430"
}
Key {
type: 6
@@ -366,15 +366,15 @@ VisualTest {
}
Frame {
msec: 816
- hash: "af5ec042c8a5e5b1942cb3e14a646b3a"
+ hash: "026b29fc03bd22e15ff725d34dee91eb"
}
Frame {
msec: 832
- hash: "af5ec042c8a5e5b1942cb3e14a646b3a"
+ hash: "026b29fc03bd22e15ff725d34dee91eb"
}
Frame {
msec: 848
- hash: "af5ec042c8a5e5b1942cb3e14a646b3a"
+ hash: "026b29fc03bd22e15ff725d34dee91eb"
}
Key {
type: 7
@@ -386,15 +386,15 @@ VisualTest {
}
Frame {
msec: 864
- hash: "af5ec042c8a5e5b1942cb3e14a646b3a"
+ hash: "026b29fc03bd22e15ff725d34dee91eb"
}
Frame {
msec: 880
- hash: "af5ec042c8a5e5b1942cb3e14a646b3a"
+ hash: "026b29fc03bd22e15ff725d34dee91eb"
}
Frame {
msec: 896
- hash: "af5ec042c8a5e5b1942cb3e14a646b3a"
+ hash: "026b29fc03bd22e15ff725d34dee91eb"
}
Key {
type: 6
@@ -406,27 +406,27 @@ VisualTest {
}
Frame {
msec: 912
- hash: "3e21db7face603e4a41010e10fdc35eb"
+ hash: "2b1cef34dff32e36e3c44f2ffb2be66e"
}
Frame {
msec: 928
- hash: "3e21db7face603e4a41010e10fdc35eb"
+ hash: "2b1cef34dff32e36e3c44f2ffb2be66e"
}
Frame {
msec: 944
- hash: "3e21db7face603e4a41010e10fdc35eb"
+ hash: "2b1cef34dff32e36e3c44f2ffb2be66e"
}
Frame {
msec: 960
- image: "wrap.0.png"
+ hash: "2b1cef34dff32e36e3c44f2ffb2be66e"
}
Frame {
msec: 976
- hash: "3e21db7face603e4a41010e10fdc35eb"
+ image: "wrap.1.png"
}
Frame {
msec: 992
- hash: "3e21db7face603e4a41010e10fdc35eb"
+ hash: "2b1cef34dff32e36e3c44f2ffb2be66e"
}
Key {
type: 6
@@ -446,23 +446,23 @@ VisualTest {
}
Frame {
msec: 1008
- hash: "f681181b9e889f2fe0ac5ccddaa8c39f"
+ hash: "f619bc4148876effc459127009d4cc3a"
}
Frame {
msec: 1024
- hash: "f681181b9e889f2fe0ac5ccddaa8c39f"
+ hash: "f619bc4148876effc459127009d4cc3a"
}
Frame {
msec: 1040
- hash: "f681181b9e889f2fe0ac5ccddaa8c39f"
+ hash: "f619bc4148876effc459127009d4cc3a"
}
Frame {
msec: 1056
- hash: "f681181b9e889f2fe0ac5ccddaa8c39f"
+ hash: "f619bc4148876effc459127009d4cc3a"
}
Frame {
msec: 1072
- hash: "f681181b9e889f2fe0ac5ccddaa8c39f"
+ hash: "f619bc4148876effc459127009d4cc3a"
}
Key {
type: 7
@@ -474,31 +474,31 @@ VisualTest {
}
Frame {
msec: 1088
- hash: "f681181b9e889f2fe0ac5ccddaa8c39f"
+ hash: "f619bc4148876effc459127009d4cc3a"
}
Frame {
msec: 1104
- hash: "f681181b9e889f2fe0ac5ccddaa8c39f"
+ hash: "f619bc4148876effc459127009d4cc3a"
}
Frame {
msec: 1120
- hash: "f681181b9e889f2fe0ac5ccddaa8c39f"
+ hash: "f619bc4148876effc459127009d4cc3a"
}
Frame {
msec: 1136
- hash: "f681181b9e889f2fe0ac5ccddaa8c39f"
+ hash: "f619bc4148876effc459127009d4cc3a"
}
Frame {
msec: 1152
- hash: "f681181b9e889f2fe0ac5ccddaa8c39f"
+ hash: "f619bc4148876effc459127009d4cc3a"
}
Frame {
msec: 1168
- hash: "f681181b9e889f2fe0ac5ccddaa8c39f"
+ hash: "f619bc4148876effc459127009d4cc3a"
}
Frame {
msec: 1184
- hash: "f681181b9e889f2fe0ac5ccddaa8c39f"
+ hash: "f619bc4148876effc459127009d4cc3a"
}
Key {
type: 6
@@ -510,23 +510,23 @@ VisualTest {
}
Frame {
msec: 1200
- hash: "4058b4a448b3836e980e2167628d5d45"
+ hash: "c7fbee3129141e8493b7bc4f85fdc2d0"
}
Frame {
msec: 1216
- hash: "4058b4a448b3836e980e2167628d5d45"
+ hash: "c7fbee3129141e8493b7bc4f85fdc2d0"
}
Frame {
msec: 1232
- hash: "4058b4a448b3836e980e2167628d5d45"
+ hash: "c7fbee3129141e8493b7bc4f85fdc2d0"
}
Frame {
msec: 1248
- hash: "4058b4a448b3836e980e2167628d5d45"
+ hash: "c7fbee3129141e8493b7bc4f85fdc2d0"
}
Frame {
msec: 1264
- hash: "4058b4a448b3836e980e2167628d5d45"
+ hash: "c7fbee3129141e8493b7bc4f85fdc2d0"
}
Key {
type: 7
@@ -546,11 +546,11 @@ VisualTest {
}
Frame {
msec: 1280
- hash: "9546e50697fd316e17b990d3ab235b8c"
+ hash: "f2a45d80148ee1b5f1cd8cb6ddd0c5ed"
}
Frame {
msec: 1296
- hash: "9546e50697fd316e17b990d3ab235b8c"
+ hash: "f2a45d80148ee1b5f1cd8cb6ddd0c5ed"
}
Key {
type: 6
@@ -562,15 +562,15 @@ VisualTest {
}
Frame {
msec: 1312
- hash: "4f7a3795af41fc641483b6de3829a9b5"
+ hash: "147efa341e4dc39cdd555c2c81e5c603"
}
Frame {
msec: 1328
- hash: "4f7a3795af41fc641483b6de3829a9b5"
+ hash: "147efa341e4dc39cdd555c2c81e5c603"
}
Frame {
msec: 1344
- hash: "4f7a3795af41fc641483b6de3829a9b5"
+ hash: "147efa341e4dc39cdd555c2c81e5c603"
}
Key {
type: 7
@@ -582,11 +582,11 @@ VisualTest {
}
Frame {
msec: 1360
- hash: "4f7a3795af41fc641483b6de3829a9b5"
+ hash: "147efa341e4dc39cdd555c2c81e5c603"
}
Frame {
msec: 1376
- hash: "4f7a3795af41fc641483b6de3829a9b5"
+ hash: "147efa341e4dc39cdd555c2c81e5c603"
}
Key {
type: 7
@@ -598,19 +598,19 @@ VisualTest {
}
Frame {
msec: 1392
- hash: "4f7a3795af41fc641483b6de3829a9b5"
+ hash: "147efa341e4dc39cdd555c2c81e5c603"
}
Frame {
msec: 1408
- hash: "4f7a3795af41fc641483b6de3829a9b5"
+ hash: "147efa341e4dc39cdd555c2c81e5c603"
}
Frame {
msec: 1424
- hash: "4f7a3795af41fc641483b6de3829a9b5"
+ hash: "147efa341e4dc39cdd555c2c81e5c603"
}
Frame {
msec: 1440
- hash: "4f7a3795af41fc641483b6de3829a9b5"
+ hash: "147efa341e4dc39cdd555c2c81e5c603"
}
Key {
type: 6
@@ -622,23 +622,23 @@ VisualTest {
}
Frame {
msec: 1456
- hash: "a086058fa845a399a222c2571ef25442"
+ hash: "d5b19a6d767a08f488cc8fc5c427a2dd"
}
Frame {
msec: 1472
- hash: "a086058fa845a399a222c2571ef25442"
+ hash: "d5b19a6d767a08f488cc8fc5c427a2dd"
}
Frame {
msec: 1488
- hash: "a086058fa845a399a222c2571ef25442"
+ hash: "d5b19a6d767a08f488cc8fc5c427a2dd"
}
Frame {
msec: 1504
- hash: "a086058fa845a399a222c2571ef25442"
+ hash: "d5b19a6d767a08f488cc8fc5c427a2dd"
}
Frame {
msec: 1520
- hash: "a086058fa845a399a222c2571ef25442"
+ hash: "d5b19a6d767a08f488cc8fc5c427a2dd"
}
Key {
type: 7
@@ -650,11 +650,11 @@ VisualTest {
}
Frame {
msec: 1536
- hash: "a086058fa845a399a222c2571ef25442"
+ hash: "d5b19a6d767a08f488cc8fc5c427a2dd"
}
Frame {
msec: 1552
- hash: "a086058fa845a399a222c2571ef25442"
+ hash: "d5b19a6d767a08f488cc8fc5c427a2dd"
}
Key {
type: 6
@@ -666,23 +666,23 @@ VisualTest {
}
Frame {
msec: 1568
- hash: "a4a912ce9cee7ba833e70df683668d8e"
+ hash: "bf6265ca859f700fb07f8b992255787d"
}
Frame {
msec: 1584
- hash: "a4a912ce9cee7ba833e70df683668d8e"
+ hash: "bf6265ca859f700fb07f8b992255787d"
}
Frame {
msec: 1600
- hash: "a4a912ce9cee7ba833e70df683668d8e"
+ hash: "bf6265ca859f700fb07f8b992255787d"
}
Frame {
msec: 1616
- hash: "a4a912ce9cee7ba833e70df683668d8e"
+ hash: "bf6265ca859f700fb07f8b992255787d"
}
Frame {
msec: 1632
- hash: "a4a912ce9cee7ba833e70df683668d8e"
+ hash: "bf6265ca859f700fb07f8b992255787d"
}
Key {
type: 6
@@ -702,23 +702,23 @@ VisualTest {
}
Frame {
msec: 1648
- hash: "a0ca0b36e56019968875c059bf95e133"
+ hash: "329e4cd26283eb08188d96b2b0325733"
}
Frame {
msec: 1664
- hash: "a0ca0b36e56019968875c059bf95e133"
+ hash: "329e4cd26283eb08188d96b2b0325733"
}
Frame {
msec: 1680
- hash: "a0ca0b36e56019968875c059bf95e133"
+ hash: "329e4cd26283eb08188d96b2b0325733"
}
Frame {
msec: 1696
- hash: "a0ca0b36e56019968875c059bf95e133"
+ hash: "329e4cd26283eb08188d96b2b0325733"
}
Frame {
msec: 1712
- hash: "a0ca0b36e56019968875c059bf95e133"
+ hash: "329e4cd26283eb08188d96b2b0325733"
}
Key {
type: 6
@@ -730,15 +730,15 @@ VisualTest {
}
Frame {
msec: 1728
- hash: "3c06f171b86ed55a425fdb316591a4f4"
+ hash: "7b5ac2afafbbaf1e13c70a11461820ad"
}
Frame {
msec: 1744
- hash: "3c06f171b86ed55a425fdb316591a4f4"
+ hash: "7b5ac2afafbbaf1e13c70a11461820ad"
}
Frame {
msec: 1760
- hash: "3c06f171b86ed55a425fdb316591a4f4"
+ hash: "7b5ac2afafbbaf1e13c70a11461820ad"
}
Key {
type: 7
@@ -750,7 +750,7 @@ VisualTest {
}
Frame {
msec: 1776
- hash: "3c06f171b86ed55a425fdb316591a4f4"
+ hash: "7b5ac2afafbbaf1e13c70a11461820ad"
}
Key {
type: 6
@@ -762,11 +762,11 @@ VisualTest {
}
Frame {
msec: 1792
- hash: "e5100e36d546b8af34bfc7a68317fa74"
+ hash: "bcfa1aa48767f70541a70cb5f85792ba"
}
Frame {
msec: 1808
- hash: "e5100e36d546b8af34bfc7a68317fa74"
+ hash: "bcfa1aa48767f70541a70cb5f85792ba"
}
Key {
type: 7
@@ -778,19 +778,19 @@ VisualTest {
}
Frame {
msec: 1824
- hash: "e5100e36d546b8af34bfc7a68317fa74"
+ hash: "bcfa1aa48767f70541a70cb5f85792ba"
}
Frame {
msec: 1840
- hash: "e5100e36d546b8af34bfc7a68317fa74"
+ hash: "bcfa1aa48767f70541a70cb5f85792ba"
}
Frame {
msec: 1856
- hash: "e5100e36d546b8af34bfc7a68317fa74"
+ hash: "bcfa1aa48767f70541a70cb5f85792ba"
}
Frame {
msec: 1872
- hash: "e5100e36d546b8af34bfc7a68317fa74"
+ hash: "bcfa1aa48767f70541a70cb5f85792ba"
}
Key {
type: 7
@@ -802,23 +802,23 @@ VisualTest {
}
Frame {
msec: 1888
- hash: "e5100e36d546b8af34bfc7a68317fa74"
+ hash: "bcfa1aa48767f70541a70cb5f85792ba"
}
Frame {
msec: 1904
- hash: "e5100e36d546b8af34bfc7a68317fa74"
+ hash: "bcfa1aa48767f70541a70cb5f85792ba"
}
Frame {
msec: 1920
- image: "wrap.1.png"
+ hash: "bcfa1aa48767f70541a70cb5f85792ba"
}
Frame {
msec: 1936
- hash: "e5100e36d546b8af34bfc7a68317fa74"
+ image: "wrap.2.png"
}
Frame {
msec: 1952
- hash: "e5100e36d546b8af34bfc7a68317fa74"
+ hash: "bcfa1aa48767f70541a70cb5f85792ba"
}
Key {
type: 6
@@ -830,27 +830,27 @@ VisualTest {
}
Frame {
msec: 1968
- hash: "2ddf4c1b9ec2d5540c456e10c2af775e"
+ hash: "e89f7cf38b3b596298d6c649a1207469"
}
Frame {
msec: 1984
- hash: "2ddf4c1b9ec2d5540c456e10c2af775e"
+ hash: "e89f7cf38b3b596298d6c649a1207469"
}
Frame {
msec: 2000
- hash: "2ddf4c1b9ec2d5540c456e10c2af775e"
+ hash: "e89f7cf38b3b596298d6c649a1207469"
}
Frame {
msec: 2016
- hash: "2ddf4c1b9ec2d5540c456e10c2af775e"
+ hash: "e89f7cf38b3b596298d6c649a1207469"
}
Frame {
msec: 2032
- hash: "2ddf4c1b9ec2d5540c456e10c2af775e"
+ hash: "e89f7cf38b3b596298d6c649a1207469"
}
Frame {
msec: 2048
- hash: "2ddf4c1b9ec2d5540c456e10c2af775e"
+ hash: "e89f7cf38b3b596298d6c649a1207469"
}
Key {
type: 6
@@ -862,7 +862,7 @@ VisualTest {
}
Frame {
msec: 2064
- hash: "9e3a9ddf097022722e9e7ebb5e0bbeed"
+ hash: "18e71331b42a115f7f9d5c09e235b944"
}
Key {
type: 7
@@ -874,15 +874,15 @@ VisualTest {
}
Frame {
msec: 2080
- hash: "9e3a9ddf097022722e9e7ebb5e0bbeed"
+ hash: "18e71331b42a115f7f9d5c09e235b944"
}
Frame {
msec: 2096
- hash: "9e3a9ddf097022722e9e7ebb5e0bbeed"
+ hash: "18e71331b42a115f7f9d5c09e235b944"
}
Frame {
msec: 2112
- hash: "9e3a9ddf097022722e9e7ebb5e0bbeed"
+ hash: "18e71331b42a115f7f9d5c09e235b944"
}
Key {
type: 7
@@ -894,27 +894,27 @@ VisualTest {
}
Frame {
msec: 2128
- hash: "9e3a9ddf097022722e9e7ebb5e0bbeed"
+ hash: "18e71331b42a115f7f9d5c09e235b944"
}
Frame {
msec: 2144
- hash: "9e3a9ddf097022722e9e7ebb5e0bbeed"
+ hash: "18e71331b42a115f7f9d5c09e235b944"
}
Frame {
msec: 2160
- hash: "9e3a9ddf097022722e9e7ebb5e0bbeed"
+ hash: "18e71331b42a115f7f9d5c09e235b944"
}
Frame {
msec: 2176
- hash: "9e3a9ddf097022722e9e7ebb5e0bbeed"
+ hash: "18e71331b42a115f7f9d5c09e235b944"
}
Frame {
msec: 2192
- hash: "9e3a9ddf097022722e9e7ebb5e0bbeed"
+ hash: "18e71331b42a115f7f9d5c09e235b944"
}
Frame {
msec: 2208
- hash: "9e3a9ddf097022722e9e7ebb5e0bbeed"
+ hash: "18e71331b42a115f7f9d5c09e235b944"
}
Key {
type: 6
@@ -926,23 +926,23 @@ VisualTest {
}
Frame {
msec: 2224
- hash: "d715ce5ca080ba5045c16f88211ca2a7"
+ hash: "3630abd7cc6ab303d08f30dea7b1eec1"
}
Frame {
msec: 2240
- hash: "d715ce5ca080ba5045c16f88211ca2a7"
+ hash: "3630abd7cc6ab303d08f30dea7b1eec1"
}
Frame {
msec: 2256
- hash: "d715ce5ca080ba5045c16f88211ca2a7"
+ hash: "3630abd7cc6ab303d08f30dea7b1eec1"
}
Frame {
msec: 2272
- hash: "d715ce5ca080ba5045c16f88211ca2a7"
+ hash: "3630abd7cc6ab303d08f30dea7b1eec1"
}
Frame {
msec: 2288
- hash: "d715ce5ca080ba5045c16f88211ca2a7"
+ hash: "3630abd7cc6ab303d08f30dea7b1eec1"
}
Key {
type: 6
@@ -954,7 +954,7 @@ VisualTest {
}
Frame {
msec: 2304
- hash: "11f9035d665a6eed88ea9e3030b111c7"
+ hash: "83e7b8c680cda95ec0a669b8030a3efd"
}
Key {
type: 7
@@ -966,15 +966,15 @@ VisualTest {
}
Frame {
msec: 2320
- hash: "11f9035d665a6eed88ea9e3030b111c7"
+ hash: "83e7b8c680cda95ec0a669b8030a3efd"
}
Frame {
msec: 2336
- hash: "11f9035d665a6eed88ea9e3030b111c7"
+ hash: "83e7b8c680cda95ec0a669b8030a3efd"
}
Frame {
msec: 2352
- hash: "11f9035d665a6eed88ea9e3030b111c7"
+ hash: "83e7b8c680cda95ec0a669b8030a3efd"
}
Key {
type: 6
@@ -986,11 +986,11 @@ VisualTest {
}
Frame {
msec: 2368
- hash: "8277b43c48def7e966bbb96309042fe6"
+ hash: "cc826833607ae754e633d21ca67a6b5a"
}
Frame {
msec: 2384
- hash: "8277b43c48def7e966bbb96309042fe6"
+ hash: "cc826833607ae754e633d21ca67a6b5a"
}
Key {
type: 7
@@ -1002,15 +1002,15 @@ VisualTest {
}
Frame {
msec: 2400
- hash: "8277b43c48def7e966bbb96309042fe6"
+ hash: "cc826833607ae754e633d21ca67a6b5a"
}
Frame {
msec: 2416
- hash: "8277b43c48def7e966bbb96309042fe6"
+ hash: "cc826833607ae754e633d21ca67a6b5a"
}
Frame {
msec: 2432
- hash: "8277b43c48def7e966bbb96309042fe6"
+ hash: "cc826833607ae754e633d21ca67a6b5a"
}
Key {
type: 7
@@ -1022,15 +1022,15 @@ VisualTest {
}
Frame {
msec: 2448
- hash: "8277b43c48def7e966bbb96309042fe6"
+ hash: "cc826833607ae754e633d21ca67a6b5a"
}
Frame {
msec: 2464
- hash: "8277b43c48def7e966bbb96309042fe6"
+ hash: "cc826833607ae754e633d21ca67a6b5a"
}
Frame {
msec: 2480
- hash: "8277b43c48def7e966bbb96309042fe6"
+ hash: "cc826833607ae754e633d21ca67a6b5a"
}
Key {
type: 6
@@ -1042,19 +1042,19 @@ VisualTest {
}
Frame {
msec: 2496
- hash: "1475ec7421f2c16f7dbb13eeb35f21c8"
+ hash: "2b4c812fac4e84909cc8fc70d8966a27"
}
Frame {
msec: 2512
- hash: "1475ec7421f2c16f7dbb13eeb35f21c8"
+ hash: "2b4c812fac4e84909cc8fc70d8966a27"
}
Frame {
msec: 2528
- hash: "1475ec7421f2c16f7dbb13eeb35f21c8"
+ hash: "2b4c812fac4e84909cc8fc70d8966a27"
}
Frame {
msec: 2544
- hash: "1475ec7421f2c16f7dbb13eeb35f21c8"
+ hash: "2b4c812fac4e84909cc8fc70d8966a27"
}
Key {
type: 7
@@ -1066,27 +1066,27 @@ VisualTest {
}
Frame {
msec: 2560
- hash: "1475ec7421f2c16f7dbb13eeb35f21c8"
+ hash: "2b4c812fac4e84909cc8fc70d8966a27"
}
Frame {
msec: 2576
- hash: "1475ec7421f2c16f7dbb13eeb35f21c8"
+ hash: "2b4c812fac4e84909cc8fc70d8966a27"
}
Frame {
msec: 2592
- hash: "1475ec7421f2c16f7dbb13eeb35f21c8"
+ hash: "2b4c812fac4e84909cc8fc70d8966a27"
}
Frame {
msec: 2608
- hash: "1475ec7421f2c16f7dbb13eeb35f21c8"
+ hash: "2b4c812fac4e84909cc8fc70d8966a27"
}
Frame {
msec: 2624
- hash: "1475ec7421f2c16f7dbb13eeb35f21c8"
+ hash: "2b4c812fac4e84909cc8fc70d8966a27"
}
Frame {
msec: 2640
- hash: "1475ec7421f2c16f7dbb13eeb35f21c8"
+ hash: "2b4c812fac4e84909cc8fc70d8966a27"
}
Key {
type: 6
@@ -1098,19 +1098,19 @@ VisualTest {
}
Frame {
msec: 2656
- hash: "eff9abb425dbd30a0eb8ee940c2a0fdc"
+ hash: "c1aabf4b43cbae0d7654ba78fc870fdd"
}
Frame {
msec: 2672
- hash: "eff9abb425dbd30a0eb8ee940c2a0fdc"
+ hash: "c1aabf4b43cbae0d7654ba78fc870fdd"
}
Frame {
msec: 2688
- hash: "eff9abb425dbd30a0eb8ee940c2a0fdc"
+ hash: "c1aabf4b43cbae0d7654ba78fc870fdd"
}
Frame {
msec: 2704
- hash: "eff9abb425dbd30a0eb8ee940c2a0fdc"
+ hash: "c1aabf4b43cbae0d7654ba78fc870fdd"
}
Key {
type: 7
@@ -1122,15 +1122,15 @@ VisualTest {
}
Frame {
msec: 2720
- hash: "eff9abb425dbd30a0eb8ee940c2a0fdc"
+ hash: "c1aabf4b43cbae0d7654ba78fc870fdd"
}
Frame {
msec: 2736
- hash: "eff9abb425dbd30a0eb8ee940c2a0fdc"
+ hash: "c1aabf4b43cbae0d7654ba78fc870fdd"
}
Frame {
msec: 2752
- hash: "eff9abb425dbd30a0eb8ee940c2a0fdc"
+ hash: "c1aabf4b43cbae0d7654ba78fc870fdd"
}
Key {
type: 6
@@ -1142,23 +1142,23 @@ VisualTest {
}
Frame {
msec: 2768
- hash: "dbc4c1e9f452575a2b543f3cc9ed53eb"
+ hash: "a707dd726c777a661e4f12d27a75cf63"
}
Frame {
msec: 2784
- hash: "dbc4c1e9f452575a2b543f3cc9ed53eb"
+ hash: "a707dd726c777a661e4f12d27a75cf63"
}
Frame {
msec: 2800
- hash: "dbc4c1e9f452575a2b543f3cc9ed53eb"
+ hash: "a707dd726c777a661e4f12d27a75cf63"
}
Frame {
msec: 2816
- hash: "dbc4c1e9f452575a2b543f3cc9ed53eb"
+ hash: "a707dd726c777a661e4f12d27a75cf63"
}
Frame {
msec: 2832
- hash: "dbc4c1e9f452575a2b543f3cc9ed53eb"
+ hash: "a707dd726c777a661e4f12d27a75cf63"
}
Key {
type: 6
@@ -1178,19 +1178,19 @@ VisualTest {
}
Frame {
msec: 2848
- hash: "8ea955780d76128c025cf1a51c995075"
+ hash: "bdaa69c1074f9820901ce31ea24383ca"
}
Frame {
msec: 2864
- hash: "8ea955780d76128c025cf1a51c995075"
+ hash: "bdaa69c1074f9820901ce31ea24383ca"
}
Frame {
msec: 2880
- image: "wrap.2.png"
+ hash: "bdaa69c1074f9820901ce31ea24383ca"
}
Frame {
msec: 2896
- hash: "8ea955780d76128c025cf1a51c995075"
+ image: "wrap.3.png"
}
Key {
type: 6
@@ -1202,11 +1202,11 @@ VisualTest {
}
Frame {
msec: 2912
- hash: "ab08c67bc5c8f53bba66ad48f618d9c9"
+ hash: "f703f87031be4f9d7409fb145343c02b"
}
Frame {
msec: 2928
- hash: "ab08c67bc5c8f53bba66ad48f618d9c9"
+ hash: "f703f87031be4f9d7409fb145343c02b"
}
Key {
type: 7
@@ -1218,11 +1218,11 @@ VisualTest {
}
Frame {
msec: 2944
- hash: "ab08c67bc5c8f53bba66ad48f618d9c9"
+ hash: "f703f87031be4f9d7409fb145343c02b"
}
Frame {
msec: 2960
- hash: "ab08c67bc5c8f53bba66ad48f618d9c9"
+ hash: "f703f87031be4f9d7409fb145343c02b"
}
Key {
type: 7
@@ -1234,35 +1234,35 @@ VisualTest {
}
Frame {
msec: 2976
- hash: "ab08c67bc5c8f53bba66ad48f618d9c9"
+ hash: "f703f87031be4f9d7409fb145343c02b"
}
Frame {
msec: 2992
- hash: "ab08c67bc5c8f53bba66ad48f618d9c9"
+ hash: "f703f87031be4f9d7409fb145343c02b"
}
Frame {
msec: 3008
- hash: "ab08c67bc5c8f53bba66ad48f618d9c9"
+ hash: "f703f87031be4f9d7409fb145343c02b"
}
Frame {
msec: 3024
- hash: "ab08c67bc5c8f53bba66ad48f618d9c9"
+ hash: "f703f87031be4f9d7409fb145343c02b"
}
Frame {
msec: 3040
- hash: "ab08c67bc5c8f53bba66ad48f618d9c9"
+ hash: "f703f87031be4f9d7409fb145343c02b"
}
Frame {
msec: 3056
- hash: "ab08c67bc5c8f53bba66ad48f618d9c9"
+ hash: "f703f87031be4f9d7409fb145343c02b"
}
Frame {
msec: 3072
- hash: "ab08c67bc5c8f53bba66ad48f618d9c9"
+ hash: "f703f87031be4f9d7409fb145343c02b"
}
Frame {
msec: 3088
- hash: "ab08c67bc5c8f53bba66ad48f618d9c9"
+ hash: "f703f87031be4f9d7409fb145343c02b"
}
Key {
type: 6
@@ -1274,23 +1274,23 @@ VisualTest {
}
Frame {
msec: 3104
- hash: "32ee9af5d9f714bbcc32206be600f309"
+ hash: "cb2660df955b757b00661a1acb5f22d2"
}
Frame {
msec: 3120
- hash: "32ee9af5d9f714bbcc32206be600f309"
+ hash: "cb2660df955b757b00661a1acb5f22d2"
}
Frame {
msec: 3136
- hash: "32ee9af5d9f714bbcc32206be600f309"
+ hash: "cb2660df955b757b00661a1acb5f22d2"
}
Frame {
msec: 3152
- hash: "32ee9af5d9f714bbcc32206be600f309"
+ hash: "cb2660df955b757b00661a1acb5f22d2"
}
Frame {
msec: 3168
- hash: "32ee9af5d9f714bbcc32206be600f309"
+ hash: "cb2660df955b757b00661a1acb5f22d2"
}
Key {
type: 7
@@ -1302,23 +1302,23 @@ VisualTest {
}
Frame {
msec: 3184
- hash: "32ee9af5d9f714bbcc32206be600f309"
+ hash: "cb2660df955b757b00661a1acb5f22d2"
}
Frame {
msec: 3200
- hash: "32ee9af5d9f714bbcc32206be600f309"
+ hash: "cb2660df955b757b00661a1acb5f22d2"
}
Frame {
msec: 3216
- hash: "32ee9af5d9f714bbcc32206be600f309"
+ hash: "cb2660df955b757b00661a1acb5f22d2"
}
Frame {
msec: 3232
- hash: "32ee9af5d9f714bbcc32206be600f309"
+ hash: "cb2660df955b757b00661a1acb5f22d2"
}
Frame {
msec: 3248
- hash: "32ee9af5d9f714bbcc32206be600f309"
+ hash: "cb2660df955b757b00661a1acb5f22d2"
}
Key {
type: 6
@@ -1330,15 +1330,15 @@ VisualTest {
}
Frame {
msec: 3264
- hash: "0e5a0e32f40d3e02758a394797cb3947"
+ hash: "8ea510d25195956fa42eabfe3bb9f230"
}
Frame {
msec: 3280
- hash: "0e5a0e32f40d3e02758a394797cb3947"
+ hash: "8ea510d25195956fa42eabfe3bb9f230"
}
Frame {
msec: 3296
- hash: "0e5a0e32f40d3e02758a394797cb3947"
+ hash: "8ea510d25195956fa42eabfe3bb9f230"
}
Key {
type: 7
@@ -1350,15 +1350,15 @@ VisualTest {
}
Frame {
msec: 3312
- hash: "0e5a0e32f40d3e02758a394797cb3947"
+ hash: "8ea510d25195956fa42eabfe3bb9f230"
}
Frame {
msec: 3328
- hash: "0e5a0e32f40d3e02758a394797cb3947"
+ hash: "8ea510d25195956fa42eabfe3bb9f230"
}
Frame {
msec: 3344
- hash: "0e5a0e32f40d3e02758a394797cb3947"
+ hash: "8ea510d25195956fa42eabfe3bb9f230"
}
Key {
type: 6
@@ -1370,23 +1370,23 @@ VisualTest {
}
Frame {
msec: 3360
- hash: "31079d862bb5b41e36e146201f8c34d2"
+ hash: "26b58aef7b1f50a5d261718e8266a3fb"
}
Frame {
msec: 3376
- hash: "31079d862bb5b41e36e146201f8c34d2"
+ hash: "26b58aef7b1f50a5d261718e8266a3fb"
}
Frame {
msec: 3392
- hash: "31079d862bb5b41e36e146201f8c34d2"
+ hash: "26b58aef7b1f50a5d261718e8266a3fb"
}
Frame {
msec: 3408
- hash: "31079d862bb5b41e36e146201f8c34d2"
+ hash: "26b58aef7b1f50a5d261718e8266a3fb"
}
Frame {
msec: 3424
- hash: "31079d862bb5b41e36e146201f8c34d2"
+ hash: "26b58aef7b1f50a5d261718e8266a3fb"
}
Key {
type: 7
@@ -1398,15 +1398,15 @@ VisualTest {
}
Frame {
msec: 3440
- hash: "31079d862bb5b41e36e146201f8c34d2"
+ hash: "26b58aef7b1f50a5d261718e8266a3fb"
}
Frame {
msec: 3456
- hash: "31079d862bb5b41e36e146201f8c34d2"
+ hash: "26b58aef7b1f50a5d261718e8266a3fb"
}
Frame {
msec: 3472
- hash: "31079d862bb5b41e36e146201f8c34d2"
+ hash: "26b58aef7b1f50a5d261718e8266a3fb"
}
Key {
type: 6
@@ -1418,19 +1418,19 @@ VisualTest {
}
Frame {
msec: 3488
- hash: "1e5e9ab44b9c703637e58bb248026b51"
+ hash: "012854de1c9d1a772994d02f52bdcd7c"
}
Frame {
msec: 3504
- hash: "1e5e9ab44b9c703637e58bb248026b51"
+ hash: "012854de1c9d1a772994d02f52bdcd7c"
}
Frame {
msec: 3520
- hash: "1e5e9ab44b9c703637e58bb248026b51"
+ hash: "012854de1c9d1a772994d02f52bdcd7c"
}
Frame {
msec: 3536
- hash: "1e5e9ab44b9c703637e58bb248026b51"
+ hash: "012854de1c9d1a772994d02f52bdcd7c"
}
Key {
type: 7
@@ -1442,11 +1442,11 @@ VisualTest {
}
Frame {
msec: 3552
- hash: "1e5e9ab44b9c703637e58bb248026b51"
+ hash: "012854de1c9d1a772994d02f52bdcd7c"
}
Frame {
msec: 3568
- hash: "1e5e9ab44b9c703637e58bb248026b51"
+ hash: "012854de1c9d1a772994d02f52bdcd7c"
}
Key {
type: 6
@@ -1458,27 +1458,27 @@ VisualTest {
}
Frame {
msec: 3584
- hash: "18f5f77a48858fb5584d55ba3f3a94d3"
+ hash: "660a31e1c0d573f4155cfa8fe2323413"
}
Frame {
msec: 3600
- hash: "18f5f77a48858fb5584d55ba3f3a94d3"
+ hash: "660a31e1c0d573f4155cfa8fe2323413"
}
Frame {
msec: 3616
- hash: "18f5f77a48858fb5584d55ba3f3a94d3"
+ hash: "660a31e1c0d573f4155cfa8fe2323413"
}
Frame {
msec: 3632
- hash: "18f5f77a48858fb5584d55ba3f3a94d3"
+ hash: "660a31e1c0d573f4155cfa8fe2323413"
}
Frame {
msec: 3648
- hash: "18f5f77a48858fb5584d55ba3f3a94d3"
+ hash: "660a31e1c0d573f4155cfa8fe2323413"
}
Frame {
msec: 3664
- hash: "18f5f77a48858fb5584d55ba3f3a94d3"
+ hash: "660a31e1c0d573f4155cfa8fe2323413"
}
Key {
type: 6
@@ -1490,7 +1490,7 @@ VisualTest {
}
Frame {
msec: 3680
- hash: "63d557c9ea24a9e63d6bdfc6259c8bf9"
+ hash: "bea00f5e628e40b679eb8829c16c6260"
}
Key {
type: 7
@@ -1502,23 +1502,23 @@ VisualTest {
}
Frame {
msec: 3696
- hash: "63d557c9ea24a9e63d6bdfc6259c8bf9"
+ hash: "bea00f5e628e40b679eb8829c16c6260"
}
Frame {
msec: 3712
- hash: "63d557c9ea24a9e63d6bdfc6259c8bf9"
+ hash: "bea00f5e628e40b679eb8829c16c6260"
}
Frame {
msec: 3728
- hash: "63d557c9ea24a9e63d6bdfc6259c8bf9"
+ hash: "bea00f5e628e40b679eb8829c16c6260"
}
Frame {
msec: 3744
- hash: "63d557c9ea24a9e63d6bdfc6259c8bf9"
+ hash: "bea00f5e628e40b679eb8829c16c6260"
}
Frame {
msec: 3760
- hash: "63d557c9ea24a9e63d6bdfc6259c8bf9"
+ hash: "bea00f5e628e40b679eb8829c16c6260"
}
Key {
type: 7
@@ -1530,39 +1530,39 @@ VisualTest {
}
Frame {
msec: 3776
- hash: "63d557c9ea24a9e63d6bdfc6259c8bf9"
+ hash: "bea00f5e628e40b679eb8829c16c6260"
}
Frame {
msec: 3792
- hash: "63d557c9ea24a9e63d6bdfc6259c8bf9"
+ hash: "bea00f5e628e40b679eb8829c16c6260"
}
Frame {
msec: 3808
- hash: "63d557c9ea24a9e63d6bdfc6259c8bf9"
+ hash: "bea00f5e628e40b679eb8829c16c6260"
}
Frame {
msec: 3824
- hash: "63d557c9ea24a9e63d6bdfc6259c8bf9"
+ hash: "bea00f5e628e40b679eb8829c16c6260"
}
Frame {
msec: 3840
- image: "wrap.3.png"
+ hash: "bea00f5e628e40b679eb8829c16c6260"
}
Frame {
msec: 3856
- hash: "63d557c9ea24a9e63d6bdfc6259c8bf9"
+ image: "wrap.4.png"
}
Frame {
msec: 3872
- hash: "63d557c9ea24a9e63d6bdfc6259c8bf9"
+ hash: "bea00f5e628e40b679eb8829c16c6260"
}
Frame {
msec: 3888
- hash: "63d557c9ea24a9e63d6bdfc6259c8bf9"
+ hash: "bea00f5e628e40b679eb8829c16c6260"
}
Frame {
msec: 3904
- hash: "63d557c9ea24a9e63d6bdfc6259c8bf9"
+ hash: "bea00f5e628e40b679eb8829c16c6260"
}
Key {
type: 6
@@ -1574,23 +1574,23 @@ VisualTest {
}
Frame {
msec: 3920
- hash: "67b49fc16da9390bff9814b34659baca"
+ hash: "c5c60cd10a1106161cde5f51dbdec5ad"
}
Frame {
msec: 3936
- hash: "67b49fc16da9390bff9814b34659baca"
+ hash: "c5c60cd10a1106161cde5f51dbdec5ad"
}
Frame {
msec: 3952
- hash: "67b49fc16da9390bff9814b34659baca"
+ hash: "c5c60cd10a1106161cde5f51dbdec5ad"
}
Frame {
msec: 3968
- hash: "67b49fc16da9390bff9814b34659baca"
+ hash: "c5c60cd10a1106161cde5f51dbdec5ad"
}
Frame {
msec: 3984
- hash: "67b49fc16da9390bff9814b34659baca"
+ hash: "c5c60cd10a1106161cde5f51dbdec5ad"
}
Key {
type: 7
@@ -1602,11 +1602,11 @@ VisualTest {
}
Frame {
msec: 4000
- hash: "67b49fc16da9390bff9814b34659baca"
+ hash: "c5c60cd10a1106161cde5f51dbdec5ad"
}
Frame {
msec: 4016
- hash: "67b49fc16da9390bff9814b34659baca"
+ hash: "c5c60cd10a1106161cde5f51dbdec5ad"
}
Key {
type: 6
@@ -1618,15 +1618,15 @@ VisualTest {
}
Frame {
msec: 4032
- hash: "a06c039bc65f399f7dcb1a484e557f34"
+ hash: "41c26e6a4c911f9ecd082c4d3366806b"
}
Frame {
msec: 4048
- hash: "a06c039bc65f399f7dcb1a484e557f34"
+ hash: "41c26e6a4c911f9ecd082c4d3366806b"
}
Frame {
msec: 4064
- hash: "a06c039bc65f399f7dcb1a484e557f34"
+ hash: "41c26e6a4c911f9ecd082c4d3366806b"
}
Key {
type: 7
@@ -1638,7 +1638,7 @@ VisualTest {
}
Frame {
msec: 4080
- hash: "a06c039bc65f399f7dcb1a484e557f34"
+ hash: "41c26e6a4c911f9ecd082c4d3366806b"
}
Key {
type: 6
@@ -1650,19 +1650,19 @@ VisualTest {
}
Frame {
msec: 4096
- hash: "6471c3319fbe937080bd40d91770898f"
+ hash: "e212938ce981ed4e8d7a993468bc9377"
}
Frame {
msec: 4112
- hash: "6471c3319fbe937080bd40d91770898f"
+ hash: "e212938ce981ed4e8d7a993468bc9377"
}
Frame {
msec: 4128
- hash: "6471c3319fbe937080bd40d91770898f"
+ hash: "e212938ce981ed4e8d7a993468bc9377"
}
Frame {
msec: 4144
- hash: "6471c3319fbe937080bd40d91770898f"
+ hash: "e212938ce981ed4e8d7a993468bc9377"
}
Key {
type: 7
@@ -1674,15 +1674,15 @@ VisualTest {
}
Frame {
msec: 4160
- hash: "6471c3319fbe937080bd40d91770898f"
+ hash: "e212938ce981ed4e8d7a993468bc9377"
}
Frame {
msec: 4176
- hash: "6471c3319fbe937080bd40d91770898f"
+ hash: "e212938ce981ed4e8d7a993468bc9377"
}
Frame {
msec: 4192
- hash: "6471c3319fbe937080bd40d91770898f"
+ hash: "e212938ce981ed4e8d7a993468bc9377"
}
Key {
type: 6
@@ -1694,23 +1694,23 @@ VisualTest {
}
Frame {
msec: 4208
- hash: "124451f5a072f626642a85ebc36c0914"
+ hash: "55df0528a97d77d0a4b513aeedd34440"
}
Frame {
msec: 4224
- hash: "124451f5a072f626642a85ebc36c0914"
+ hash: "55df0528a97d77d0a4b513aeedd34440"
}
Frame {
msec: 4240
- hash: "124451f5a072f626642a85ebc36c0914"
+ hash: "55df0528a97d77d0a4b513aeedd34440"
}
Frame {
msec: 4256
- hash: "124451f5a072f626642a85ebc36c0914"
+ hash: "55df0528a97d77d0a4b513aeedd34440"
}
Frame {
msec: 4272
- hash: "124451f5a072f626642a85ebc36c0914"
+ hash: "55df0528a97d77d0a4b513aeedd34440"
}
Key {
type: 6
@@ -1722,7 +1722,7 @@ VisualTest {
}
Frame {
msec: 4288
- hash: "963ee26238b20cd414e69b50ffa5a186"
+ hash: "2165091c97a891560bf3afab879e6dbc"
}
Key {
type: 7
@@ -1734,15 +1734,15 @@ VisualTest {
}
Frame {
msec: 4304
- hash: "963ee26238b20cd414e69b50ffa5a186"
+ hash: "2165091c97a891560bf3afab879e6dbc"
}
Frame {
msec: 4320
- hash: "963ee26238b20cd414e69b50ffa5a186"
+ hash: "2165091c97a891560bf3afab879e6dbc"
}
Frame {
msec: 4336
- hash: "963ee26238b20cd414e69b50ffa5a186"
+ hash: "2165091c97a891560bf3afab879e6dbc"
}
Key {
type: 7
@@ -1754,23 +1754,23 @@ VisualTest {
}
Frame {
msec: 4352
- hash: "963ee26238b20cd414e69b50ffa5a186"
+ hash: "2165091c97a891560bf3afab879e6dbc"
}
Frame {
msec: 4368
- hash: "963ee26238b20cd414e69b50ffa5a186"
+ hash: "2165091c97a891560bf3afab879e6dbc"
}
Frame {
msec: 4384
- hash: "963ee26238b20cd414e69b50ffa5a186"
+ hash: "2165091c97a891560bf3afab879e6dbc"
}
Frame {
msec: 4400
- hash: "963ee26238b20cd414e69b50ffa5a186"
+ hash: "2165091c97a891560bf3afab879e6dbc"
}
Frame {
msec: 4416
- hash: "963ee26238b20cd414e69b50ffa5a186"
+ hash: "2165091c97a891560bf3afab879e6dbc"
}
Key {
type: 6
@@ -1782,15 +1782,15 @@ VisualTest {
}
Frame {
msec: 4432
- hash: "c5ce4fc832787535e66e64c546383d28"
+ hash: "a3d7968e13768c4ec538fe9ba7edf142"
}
Frame {
msec: 4448
- hash: "c5ce4fc832787535e66e64c546383d28"
+ hash: "a3d7968e13768c4ec538fe9ba7edf142"
}
Frame {
msec: 4464
- hash: "c5ce4fc832787535e66e64c546383d28"
+ hash: "a3d7968e13768c4ec538fe9ba7edf142"
}
Key {
type: 7
@@ -1802,23 +1802,23 @@ VisualTest {
}
Frame {
msec: 4480
- hash: "c5ce4fc832787535e66e64c546383d28"
+ hash: "a3d7968e13768c4ec538fe9ba7edf142"
}
Frame {
msec: 4496
- hash: "c5ce4fc832787535e66e64c546383d28"
+ hash: "a3d7968e13768c4ec538fe9ba7edf142"
}
Frame {
msec: 4512
- hash: "c5ce4fc832787535e66e64c546383d28"
+ hash: "a3d7968e13768c4ec538fe9ba7edf142"
}
Frame {
msec: 4528
- hash: "c5ce4fc832787535e66e64c546383d28"
+ hash: "a3d7968e13768c4ec538fe9ba7edf142"
}
Frame {
msec: 4544
- hash: "c5ce4fc832787535e66e64c546383d28"
+ hash: "a3d7968e13768c4ec538fe9ba7edf142"
}
Key {
type: 6
@@ -1830,19 +1830,19 @@ VisualTest {
}
Frame {
msec: 4560
- hash: "57bcfc2fbc8e5993f0908980bdef2e79"
+ hash: "3b18ada8637d4024acfe88718765f71c"
}
Frame {
msec: 4576
- hash: "57bcfc2fbc8e5993f0908980bdef2e79"
+ hash: "3b18ada8637d4024acfe88718765f71c"
}
Frame {
msec: 4592
- hash: "57bcfc2fbc8e5993f0908980bdef2e79"
+ hash: "3b18ada8637d4024acfe88718765f71c"
}
Frame {
msec: 4608
- hash: "57bcfc2fbc8e5993f0908980bdef2e79"
+ hash: "3b18ada8637d4024acfe88718765f71c"
}
Key {
type: 7
@@ -1854,19 +1854,19 @@ VisualTest {
}
Frame {
msec: 4624
- hash: "57bcfc2fbc8e5993f0908980bdef2e79"
+ hash: "3b18ada8637d4024acfe88718765f71c"
}
Frame {
msec: 4640
- hash: "57bcfc2fbc8e5993f0908980bdef2e79"
+ hash: "3b18ada8637d4024acfe88718765f71c"
}
Frame {
msec: 4656
- hash: "57bcfc2fbc8e5993f0908980bdef2e79"
+ hash: "3b18ada8637d4024acfe88718765f71c"
}
Frame {
msec: 4672
- hash: "57bcfc2fbc8e5993f0908980bdef2e79"
+ hash: "3b18ada8637d4024acfe88718765f71c"
}
Key {
type: 6
@@ -1878,19 +1878,19 @@ VisualTest {
}
Frame {
msec: 4688
- hash: "60b5ec304c447a3bf54da75f964e9fff"
+ hash: "c419775870b0c5e41b5156c840e6a298"
}
Frame {
msec: 4704
- hash: "60b5ec304c447a3bf54da75f964e9fff"
+ hash: "c419775870b0c5e41b5156c840e6a298"
}
Frame {
msec: 4720
- hash: "60b5ec304c447a3bf54da75f964e9fff"
+ hash: "c419775870b0c5e41b5156c840e6a298"
}
Frame {
msec: 4736
- hash: "60b5ec304c447a3bf54da75f964e9fff"
+ hash: "c419775870b0c5e41b5156c840e6a298"
}
Key {
type: 7
@@ -1902,15 +1902,15 @@ VisualTest {
}
Frame {
msec: 4752
- hash: "60b5ec304c447a3bf54da75f964e9fff"
+ hash: "c419775870b0c5e41b5156c840e6a298"
}
Frame {
msec: 4768
- hash: "60b5ec304c447a3bf54da75f964e9fff"
+ hash: "c419775870b0c5e41b5156c840e6a298"
}
Frame {
msec: 4784
- hash: "60b5ec304c447a3bf54da75f964e9fff"
+ hash: "c419775870b0c5e41b5156c840e6a298"
}
Key {
type: 6
@@ -1922,11 +1922,11 @@ VisualTest {
}
Frame {
msec: 4800
- image: "wrap.4.png"
+ hash: "81a744f02650728c7557a27c94056e64"
}
Frame {
msec: 4816
- hash: "6ae6a9c38541546561db9049a300bce6"
+ image: "wrap.5.png"
}
Key {
type: 7
@@ -1938,19 +1938,19 @@ VisualTest {
}
Frame {
msec: 4832
- hash: "6ae6a9c38541546561db9049a300bce6"
+ hash: "81a744f02650728c7557a27c94056e64"
}
Frame {
msec: 4848
- hash: "6ae6a9c38541546561db9049a300bce6"
+ hash: "81a744f02650728c7557a27c94056e64"
}
Frame {
msec: 4864
- hash: "6ae6a9c38541546561db9049a300bce6"
+ hash: "81a744f02650728c7557a27c94056e64"
}
Frame {
msec: 4880
- hash: "6ae6a9c38541546561db9049a300bce6"
+ hash: "81a744f02650728c7557a27c94056e64"
}
Key {
type: 6
@@ -1962,19 +1962,19 @@ VisualTest {
}
Frame {
msec: 4896
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 4912
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 4928
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 4944
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Key {
type: 7
@@ -1986,482 +1986,482 @@ VisualTest {
}
Frame {
msec: 4960
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 4976
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 4992
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5008
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5024
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5040
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5056
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5072
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5088
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5104
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5120
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5136
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5152
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5168
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5184
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5200
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5216
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5232
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5248
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5264
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5280
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5296
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5312
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5328
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5344
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5360
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5376
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5392
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5408
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5424
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5440
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5456
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5472
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5488
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5504
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5520
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5536
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5552
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5568
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5584
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5600
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5616
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5632
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5648
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5664
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5680
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5696
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5712
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5728
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5744
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5760
- image: "wrap.5.png"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5776
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ image: "wrap.6.png"
}
Frame {
msec: 5792
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5808
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5824
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5840
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5856
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5872
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5888
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5904
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5920
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5936
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5952
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5968
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 5984
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6000
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6016
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6032
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6048
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6064
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6080
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6096
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6112
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6128
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6144
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6160
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6176
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6192
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6208
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6224
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6240
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6256
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6272
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6288
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6304
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6320
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6336
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6352
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6368
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6384
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6400
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6416
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6432
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6448
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6464
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6480
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6496
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6512
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6528
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6544
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6560
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6576
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6592
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6608
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6624
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6640
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6656
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6672
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6688
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6704
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6720
- image: "wrap.6.png"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6736
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ image: "wrap.7.png"
}
Frame {
msec: 6752
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6768
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6784
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6800
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6816
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6832
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6848
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
Frame {
msec: 6864
- hash: "41179a181fd4ae8bd15a259b66d90eea"
+ hash: "ed1520bf20159e60c6a75bbf07f3a6ee"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/LineEdit.qml b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/LineEdit.qml
index 50c3cb47a4..6789eac28b 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/LineEdit.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/LineEdit.qml
@@ -42,6 +42,7 @@ Item {
text:""
horizontalAlignment: TextInput.AlignLeft
font.pixelSize:15
+ selectionColor: 'steelblue'
}
MouseArea {
//Implements all line edit mouse handling
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.0.png
index 1d96795608..b65bc372f9 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.1.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.1.png
index a3a9bfafd0..ebaa01161b 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.2.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.2.png
index b50028c4dc..57ee3706d4 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.2.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.3.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.3.png
index 1c4876e222..4b70b4a584 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.3.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.4.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.4.png
index 9d110cbc82..18ae753c8f 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.4.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.5.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.5.png
index 9289dc028a..2b463f0d92 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.5.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.qml b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.qml
index bd4af6a804..6b8ba9b1b7 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/cursorDelegate.qml
@@ -6,115 +6,115 @@ VisualTest {
}
Frame {
msec: 16
- hash: "c0ffaa97d1be341fafafc18762f5cb67"
+ image: "cursorDelegate.0.png"
}
Frame {
msec: 32
- hash: "c0ffaa97d1be341fafafc18762f5cb67"
+ hash: "a7af287992f894f9cf76e834b922f5b3"
}
Frame {
msec: 48
- hash: "c0ffaa97d1be341fafafc18762f5cb67"
+ hash: "a7af287992f894f9cf76e834b922f5b3"
}
Frame {
msec: 64
- hash: "c0ffaa97d1be341fafafc18762f5cb67"
+ hash: "a7af287992f894f9cf76e834b922f5b3"
}
Frame {
msec: 80
- hash: "c0ffaa97d1be341fafafc18762f5cb67"
+ hash: "a7af287992f894f9cf76e834b922f5b3"
}
Frame {
msec: 96
- hash: "c0ffaa97d1be341fafafc18762f5cb67"
+ hash: "a7af287992f894f9cf76e834b922f5b3"
}
Frame {
msec: 112
- hash: "c0ffaa97d1be341fafafc18762f5cb67"
+ hash: "a7af287992f894f9cf76e834b922f5b3"
}
Frame {
msec: 128
- hash: "c0ffaa97d1be341fafafc18762f5cb67"
+ hash: "a7af287992f894f9cf76e834b922f5b3"
}
Frame {
msec: 144
- hash: "c0ffaa97d1be341fafafc18762f5cb67"
+ hash: "a7af287992f894f9cf76e834b922f5b3"
}
Frame {
msec: 160
- hash: "c0ffaa97d1be341fafafc18762f5cb67"
+ hash: "a7af287992f894f9cf76e834b922f5b3"
}
Frame {
msec: 176
- hash: "c0ffaa97d1be341fafafc18762f5cb67"
+ hash: "a7af287992f894f9cf76e834b922f5b3"
}
Frame {
msec: 192
- hash: "c0ffaa97d1be341fafafc18762f5cb67"
+ hash: "a7af287992f894f9cf76e834b922f5b3"
}
Frame {
msec: 208
- hash: "c0ffaa97d1be341fafafc18762f5cb67"
+ hash: "a7af287992f894f9cf76e834b922f5b3"
}
Frame {
msec: 224
- hash: "c0ffaa97d1be341fafafc18762f5cb67"
+ hash: "a7af287992f894f9cf76e834b922f5b3"
}
Frame {
msec: 240
- hash: "c0ffaa97d1be341fafafc18762f5cb67"
+ hash: "a7af287992f894f9cf76e834b922f5b3"
}
Frame {
msec: 256
- hash: "c0ffaa97d1be341fafafc18762f5cb67"
+ hash: "a7af287992f894f9cf76e834b922f5b3"
}
Frame {
msec: 272
- hash: "c0ffaa97d1be341fafafc18762f5cb67"
+ hash: "a7af287992f894f9cf76e834b922f5b3"
}
Frame {
msec: 288
- hash: "c0ffaa97d1be341fafafc18762f5cb67"
+ hash: "a7af287992f894f9cf76e834b922f5b3"
}
Frame {
msec: 304
- hash: "c0ffaa97d1be341fafafc18762f5cb67"
+ hash: "a7af287992f894f9cf76e834b922f5b3"
}
Frame {
msec: 320
- hash: "c0ffaa97d1be341fafafc18762f5cb67"
+ hash: "a7af287992f894f9cf76e834b922f5b3"
}
Frame {
msec: 336
- hash: "c0ffaa97d1be341fafafc18762f5cb67"
+ hash: "a7af287992f894f9cf76e834b922f5b3"
}
Frame {
msec: 352
- hash: "c0ffaa97d1be341fafafc18762f5cb67"
+ hash: "a7af287992f894f9cf76e834b922f5b3"
}
Frame {
msec: 368
- hash: "c0ffaa97d1be341fafafc18762f5cb67"
+ hash: "a7af287992f894f9cf76e834b922f5b3"
}
Frame {
msec: 384
- hash: "c0ffaa97d1be341fafafc18762f5cb67"
+ hash: "a7af287992f894f9cf76e834b922f5b3"
}
Frame {
msec: 400
- hash: "c0ffaa97d1be341fafafc18762f5cb67"
+ hash: "a7af287992f894f9cf76e834b922f5b3"
}
Frame {
msec: 416
- hash: "c0ffaa97d1be341fafafc18762f5cb67"
+ hash: "a7af287992f894f9cf76e834b922f5b3"
}
Frame {
msec: 432
- hash: "c0ffaa97d1be341fafafc18762f5cb67"
+ hash: "a7af287992f894f9cf76e834b922f5b3"
}
Frame {
msec: 448
- hash: "c0ffaa97d1be341fafafc18762f5cb67"
+ hash: "a7af287992f894f9cf76e834b922f5b3"
}
Key {
type: 6
@@ -126,23 +126,23 @@ VisualTest {
}
Frame {
msec: 464
- hash: "eadbfc95de35a0d1880809b2bbaec562"
+ hash: "74b6ebfbe8246f0b2b43f88d9f6028d1"
}
Frame {
msec: 480
- hash: "eadbfc95de35a0d1880809b2bbaec562"
+ hash: "74b6ebfbe8246f0b2b43f88d9f6028d1"
}
Frame {
msec: 496
- hash: "eadbfc95de35a0d1880809b2bbaec562"
+ hash: "74b6ebfbe8246f0b2b43f88d9f6028d1"
}
Frame {
msec: 512
- hash: "eadbfc95de35a0d1880809b2bbaec562"
+ hash: "74b6ebfbe8246f0b2b43f88d9f6028d1"
}
Frame {
msec: 528
- hash: "227cbfe5fc07906060951e19ebb3ad30"
+ hash: "0f0e9ced5d2f9f20a2b5f1b5bde0be62"
}
Key {
type: 7
@@ -154,19 +154,19 @@ VisualTest {
}
Frame {
msec: 544
- hash: "066256a59ad290b3725193955e3c48a6"
+ hash: "bec7fff73d6d869d2d15b3ea35fa0605"
}
Frame {
msec: 560
- hash: "6709f77cbcde82886d1c5a07f06b55a5"
+ hash: "e3afffc91ed0a78a0022421e6d1bd0d2"
}
Frame {
msec: 576
- hash: "da0028083048837b4756a2d3ff468378"
+ hash: "45f44411121d335ed7a844803313e566"
}
Frame {
msec: 592
- hash: "5f265351bed34357d603794d868dbcbc"
+ hash: "b951279da53fe76ab62ca9837ecbd7a6"
}
Key {
type: 6
@@ -178,19 +178,19 @@ VisualTest {
}
Frame {
msec: 608
- hash: "3b8030849229e90b69842219e8b2d3f1"
+ hash: "b5678202f08099b09ce88cef5eeea20a"
}
Frame {
msec: 624
- hash: "0b08356d9b00313b2d892175dd93095a"
+ hash: "93f6663d083a2bd3b4079241f3fc0159"
}
Frame {
msec: 640
- hash: "4780555b277d65e3e4c0c60817b63eb4"
+ hash: "8c802943d3030214cb7af7fd1db1c813"
}
Frame {
msec: 656
- hash: "6b31c8f0569d01d97a371423a0f379c0"
+ hash: "01396c0332523ba2a8971a99c6962516"
}
Key {
type: 7
@@ -202,19 +202,19 @@ VisualTest {
}
Frame {
msec: 672
- hash: "e9a5695636f7957d33f1c902a37a605d"
+ hash: "fc5dd253219d1a8aca7fcf31be0e7d69"
}
Frame {
msec: 688
- hash: "27a783cd4ef5caab382721a98f7966da"
+ hash: "545071a58d8db4f73e1cb6981e9ec62e"
}
Frame {
msec: 704
- hash: "c50598c0a5f8d501fd3ac9cddecee506"
+ hash: "13bc1aa8ce4fc3d9ba9a6c3046e14c92"
}
Frame {
msec: 720
- hash: "2a2d0e202bc3bf7991409391a2ce2934"
+ hash: "ba7d13545fb7384dcb3edd32979c9442"
}
Key {
type: 6
@@ -226,19 +226,19 @@ VisualTest {
}
Frame {
msec: 736
- hash: "2d97b8503c739b210615971ad08c2714"
+ hash: "8f9e1abd8eb2d072907b910630e93c9a"
}
Frame {
msec: 752
- hash: "f27fd7f1d8c6dfb7393ab0d39ed5cd02"
+ hash: "003d0e4a01909aa51cb1967738383ede"
}
Frame {
msec: 768
- hash: "32d256543e3e1ba722860e5143af9f09"
+ hash: "223cce18cef44b3945d0a1d45554c5c1"
}
Frame {
msec: 784
- hash: "9123b724613ef4d3d8431afde6e9eb6b"
+ hash: "fcd7f862bdce75d7e6df574ff0146ca6"
}
Key {
type: 7
@@ -250,23 +250,23 @@ VisualTest {
}
Frame {
msec: 800
- hash: "be5249a7effc94ec2be3d6053eba7b45"
+ hash: "21f5e3696987222106b00f0efe3bb165"
}
Frame {
msec: 816
- hash: "57f2c119c9eca3d1e4acd2f775af5207"
+ hash: "6380ce26303da8180dff8fcc88caaf1d"
}
Frame {
msec: 832
- hash: "23b79a2630448e99f27a657fd9789354"
+ hash: "52bfa995405a3d6523d97b2c36428d89"
}
Frame {
msec: 848
- hash: "c8faab137cbc014aef5e3212889d00b8"
+ hash: "7169d69c2adb50bf80c075e30eb8e965"
}
Frame {
msec: 864
- hash: "c9616f6fde5d6a8ecf346ece9952f09b"
+ hash: "f5ad55885a4fc2b47a5420e9e0d7c59c"
}
Key {
type: 6
@@ -278,15 +278,15 @@ VisualTest {
}
Frame {
msec: 880
- hash: "11a861ca71d789e3d97d599608a793be"
+ hash: "831081f829df0a226c75389bc457a768"
}
Frame {
msec: 896
- hash: "5a6c57df0c33b83985aeb194f291ad6c"
+ hash: "2306a9c9cb570bc922f120f2f63e26e4"
}
Frame {
msec: 912
- hash: "2c047359db6946cb740462b0d6c695be"
+ hash: "23d6728fe34436e53a449e26962c3ad5"
}
Key {
type: 7
@@ -298,23 +298,23 @@ VisualTest {
}
Frame {
msec: 928
- hash: "d0bb54caf661be021be8fe2691de24e8"
+ hash: "db2de48337701cbb36a14e32f1846683"
}
Frame {
msec: 944
- hash: "80f0a60239f4d81b18b9cb3e80faf346"
+ hash: "04bb83a694d293fd4ba956fc79db79e7"
}
Frame {
msec: 960
- image: "cursorDelegate.0.png"
+ hash: "7a1a71b2d7e42934163990d5c011c464"
}
Frame {
msec: 976
- hash: "c526315dd5eec117266c68a7b6b64a3f"
+ image: "cursorDelegate.1.png"
}
Frame {
msec: 992
- hash: "c526315dd5eec117266c68a7b6b64a3f"
+ hash: "af99069cdddfa9d099fbe25ba586e138"
}
Key {
type: 6
@@ -326,15 +326,15 @@ VisualTest {
}
Frame {
msec: 1008
- hash: "c526315dd5eec117266c68a7b6b64a3f"
+ hash: "af99069cdddfa9d099fbe25ba586e138"
}
Frame {
msec: 1024
- hash: "c526315dd5eec117266c68a7b6b64a3f"
+ hash: "af99069cdddfa9d099fbe25ba586e138"
}
Frame {
msec: 1040
- hash: "c526315dd5eec117266c68a7b6b64a3f"
+ hash: "af99069cdddfa9d099fbe25ba586e138"
}
Key {
type: 7
@@ -346,23 +346,23 @@ VisualTest {
}
Frame {
msec: 1056
- hash: "c526315dd5eec117266c68a7b6b64a3f"
+ hash: "af99069cdddfa9d099fbe25ba586e138"
}
Frame {
msec: 1072
- hash: "5f6cc0c97e4748aeeaa4a00c8a8c8928"
+ hash: "20f1db4245d1689e980371d7b1bcb903"
}
Frame {
msec: 1088
- hash: "b1d71160d9a8a8edeb4cf7e00df36cfc"
+ hash: "6a3629223845d352ba02e3ad8569f698"
}
Frame {
msec: 1104
- hash: "5bfd4269145cc0962e0fa9c294e8f5aa"
+ hash: "ee3dd4535fcf24249c41ebebb5f4fca6"
}
Frame {
msec: 1120
- hash: "4e22c95802d83f0099017c6be9d93214"
+ hash: "7bf5df6a807da0c8d316420ced34e267"
}
Key {
type: 6
@@ -374,23 +374,23 @@ VisualTest {
}
Frame {
msec: 1136
- hash: "0f31d8f4867af7c2f4fb8e86aa077afd"
+ hash: "4f5ce98428d5fba11a6322f88cab14c3"
}
Frame {
msec: 1152
- hash: "21a552133320008a4d4f77752a3cfb55"
+ hash: "14406e8d0e120a0f30864fa8793f2e8d"
}
Frame {
msec: 1168
- hash: "3a30a4a785de21da0ff939e303202a81"
+ hash: "6e891d584ce4f636708cee1111193878"
}
Frame {
msec: 1184
- hash: "b0e3ed2468538aacec354cb96d90c362"
+ hash: "cd6bbc72108cfffd043a31d0d3655851"
}
Frame {
msec: 1200
- hash: "56bf6e3fe47e52046b443481fc17a3ec"
+ hash: "d4069e606ab2b10c90e6f567be462c10"
}
Key {
type: 7
@@ -402,27 +402,27 @@ VisualTest {
}
Frame {
msec: 1216
- hash: "ce80807cde9b902ebf33281fce50d9fb"
+ hash: "de8e00d6116b1aa900478a41c7ac78f1"
}
Frame {
msec: 1232
- hash: "ed67b18b5f7b90d3bcd9f662e70dc7b8"
+ hash: "5a0c4e31eb9ecb2ffc9380d474861846"
}
Frame {
msec: 1248
- hash: "930950ce5c6b12da47eea1b92d5176eb"
+ hash: "bbacdb359c6206b50a859169b106ec92"
}
Frame {
msec: 1264
- hash: "5a2eeca0f1533d323cc4d7ffbb7ad6aa"
+ hash: "c4f4ed5a4842f1bbdda67a27d74fd5f4"
}
Frame {
msec: 1280
- hash: "3f7f3ef2d4c1353dfe7027930505f4fd"
+ hash: "4deb6d0a83b14abef80f2bfa0491cbd0"
}
Frame {
msec: 1296
- hash: "1a3a781ac5a1e90a4415944e0c54ea4e"
+ hash: "9caca7068ce5b289d70c39667e87a57f"
}
Key {
type: 6
@@ -434,7 +434,7 @@ VisualTest {
}
Frame {
msec: 1312
- hash: "d11dae0dd461fc82a73bf319905320d4"
+ hash: "e3ca7a8a860efc3811b8befe0a97d7f1"
}
Key {
type: 6
@@ -446,19 +446,19 @@ VisualTest {
}
Frame {
msec: 1328
- hash: "00957049ea51866138cfc33451f12e17"
+ hash: "ddb3dcb40f412c087d0ae21b5a8e47aa"
}
Frame {
msec: 1344
- hash: "386847af9b173db7ef1554d2c85c748e"
+ hash: "325d8356c3e14467c54d03d096a3c1a5"
}
Frame {
msec: 1360
- hash: "4b715060d29d6228a40217bc769fc140"
+ hash: "83f4c541b94180863e538e6c0a0e1ae0"
}
Frame {
msec: 1376
- hash: "e58a9a3623afa08819351c22435ba03f"
+ hash: "16623dc34067800f3c7d6aabe1076927"
}
Key {
type: 6
@@ -470,31 +470,31 @@ VisualTest {
}
Frame {
msec: 1392
- hash: "6378e3faf5578818fc282de2a077da59"
+ hash: "e7319b080b621c5d176d6913cd9a8f7e"
}
Frame {
msec: 1408
- hash: "07efb3687d29e65680e1cc831762348f"
+ hash: "353a200418b2cc0fbe925329224e658a"
}
Frame {
msec: 1424
- hash: "5292e7c95b3c5b11e4088b5010984257"
+ hash: "98fd3f1fc108de1d78f07587f9e94ec4"
}
Frame {
msec: 1440
- hash: "ffe95603f5fe9d63abb3b77c399c3b11"
+ hash: "f75fbda5a1403f7b1dd8e9d05e30ebeb"
}
Frame {
msec: 1456
- hash: "ad7cb73893c27b69704c5b821738a3c1"
+ hash: "c2742ff9a04bbae6c6de13f08d514913"
}
Frame {
msec: 1472
- hash: "e25971a61888ded93b651891ec9661b0"
+ hash: "a73b65c18ba10e6b6d310fc325d7ccb2"
}
Frame {
msec: 1488
- hash: "80f90b3623bf34544438dd00abee7037"
+ hash: "bbe72b26a6f3f518a3c8b6cd9e8dbfd1"
}
Key {
type: 7
@@ -506,51 +506,51 @@ VisualTest {
}
Frame {
msec: 1504
- hash: "797dd70572e532d4acb374230b2c8efe"
+ hash: "679205439a359f3ffb05f631a1979596"
}
Frame {
msec: 1520
- hash: "0673db1283d874a5711520f272572cf8"
+ hash: "7ada5f6a58a6a7f9a3b4199a412fccfd"
}
Frame {
msec: 1536
- hash: "fbc8434912f08a93b5f884258bc754b7"
+ hash: "66749c0e5b97cec02f4908a709201604"
}
Frame {
msec: 1552
- hash: "e41ebaf8f2114a6e8f38f731ea164e8a"
+ hash: "373bfac053f5cfeceabe2979f3e6f444"
}
Frame {
msec: 1568
- hash: "d14bdb5bf1b4756166ecf6f3255bf3cc"
+ hash: "c7ab2bcdcd1b7fd25ac775c4dd382635"
}
Frame {
msec: 1584
- hash: "5fb04569aa0e530b898a3c11725b947e"
+ hash: "3116b1a0cf1724bdae2cb71b9e15c73e"
}
Frame {
msec: 1600
- hash: "03d24457fae160864fec985765f6d8d1"
+ hash: "9bdc4513c30bf2d1eca61317cc22ebaa"
}
Frame {
msec: 1616
- hash: "56dad740bb9032d113a0dacbe986c9c0"
+ hash: "bbecf871ff569ac1020272c1ccc9aa14"
}
Frame {
msec: 1632
- hash: "70d9acda83aa7db59780cf56f03e38ec"
+ hash: "beef5a84dcc7794cf0aabfc8b7f811bc"
}
Frame {
msec: 1648
- hash: "a272e39bc1af0f4d1bab9c3f64e746e2"
+ hash: "2db7161f3591ef0b3f1e3cb2aa357c8b"
}
Frame {
msec: 1664
- hash: "cf0379de604b9bb33b4456cb89e09afd"
+ hash: "b8b5ffef5e52a8ae94ddb5ec3328fa0e"
}
Frame {
msec: 1680
- hash: "332e7a10d75c0d21a24fc8be34269629"
+ hash: "b65c4657ffb97a59455f2c3e23e3eb51"
}
Key {
type: 6
@@ -562,31 +562,31 @@ VisualTest {
}
Frame {
msec: 1696
- hash: "c07eb71d90e74393205338bc946c1e43"
+ hash: "9702981b8eb5f035f2f4da6708ad1a92"
}
Frame {
msec: 1712
- hash: "984477de7c103ff3aebc2634785dce09"
+ hash: "a6f46dd869daf69c5a5a3c887ae35a05"
}
Frame {
msec: 1728
- hash: "958f79dd7c57387042746df2ca01779e"
+ hash: "902c0f174b16b1b0d419c13220937e06"
}
Frame {
msec: 1744
- hash: "53bb3f0718d6333ca40dc279b6300b85"
+ hash: "97a5ea7449a1f313d0d5e818edc29bf6"
}
Frame {
msec: 1760
- hash: "c16877cb99997cc47f1fff5af1d22bd7"
+ hash: "d5b69638452ea2260861c17991fc8bef"
}
Frame {
msec: 1776
- hash: "dea3e1eb6c72f0d37398e3e301a23c19"
+ hash: "5fa21c53d65b078d1b30830d99a0fbaf"
}
Frame {
msec: 1792
- hash: "6bb7918f0794e6a7cbdb8847cdcf6e35"
+ hash: "668de1d2fa5780f5088637d919db0a0d"
}
Key {
type: 7
@@ -598,19 +598,19 @@ VisualTest {
}
Frame {
msec: 1808
- hash: "6858cd874abb1ed2fec34862f76044fa"
+ hash: "1989592754c28456aa917562fa3620bd"
}
Frame {
msec: 1824
- hash: "47b546ea0d5b1d4573991d4738c37f4d"
+ hash: "89cd0ef7c366bbcee8e4404e9a2285a7"
}
Frame {
msec: 1840
- hash: "6c9e636dee2bb5f2a72a2c08ab9fb970"
+ hash: "d062d4b132ee3086a00220d47e8907fc"
}
Frame {
msec: 1856
- hash: "42c2b2a7f41c88ae7bb19403e2460a17"
+ hash: "198bd9fc763c70fb84bdae122f0bdd8b"
}
Key {
type: 7
@@ -622,7 +622,7 @@ VisualTest {
}
Frame {
msec: 1872
- hash: "80b7986af693b89dc4d4f9533dae85cb"
+ hash: "304f7f6cef5b09c09db1284b8095e9a2"
}
Key {
type: 6
@@ -634,43 +634,43 @@ VisualTest {
}
Frame {
msec: 1888
- hash: "631bea21dde9b7647f5843bc3513f3ba"
+ hash: "565003fef7b9810ffe95c3bbeeda5bbc"
}
Frame {
msec: 1904
- hash: "cc40335abbea0d589180096f7d8f5426"
+ hash: "2fa85a19ba2bb7d04264a246c4982eb4"
}
Frame {
msec: 1920
- image: "cursorDelegate.1.png"
+ hash: "7be44eca358924dc11c5123e406f1c99"
}
Frame {
msec: 1936
- hash: "1c03b5384a889fe233eb1c6d14a55f36"
+ image: "cursorDelegate.2.png"
}
Frame {
msec: 1952
- hash: "7762cc4e6cf681311f5296de698c950b"
+ hash: "a08502b3fbb425c7b1cad93e4bc5701e"
}
Frame {
msec: 1968
- hash: "678eed1d1fec30b02156d690777397c1"
+ hash: "fba3a88b7fe6f7583daf07db78f3598c"
}
Frame {
msec: 1984
- hash: "96f51fee5c7baf78a3465420d63a9e5f"
+ hash: "509d75aa56bcdb6718c18b56e138ef3c"
}
Frame {
msec: 2000
- hash: "96f51fee5c7baf78a3465420d63a9e5f"
+ hash: "509d75aa56bcdb6718c18b56e138ef3c"
}
Frame {
msec: 2016
- hash: "96f51fee5c7baf78a3465420d63a9e5f"
+ hash: "509d75aa56bcdb6718c18b56e138ef3c"
}
Frame {
msec: 2032
- hash: "96f51fee5c7baf78a3465420d63a9e5f"
+ hash: "509d75aa56bcdb6718c18b56e138ef3c"
}
Key {
type: 7
@@ -682,7 +682,7 @@ VisualTest {
}
Frame {
msec: 2048
- hash: "96f51fee5c7baf78a3465420d63a9e5f"
+ hash: "509d75aa56bcdb6718c18b56e138ef3c"
}
Key {
type: 7
@@ -694,27 +694,27 @@ VisualTest {
}
Frame {
msec: 2064
- hash: "678eed1d1fec30b02156d690777397c1"
+ hash: "fba3a88b7fe6f7583daf07db78f3598c"
}
Frame {
msec: 2080
- hash: "7762cc4e6cf681311f5296de698c950b"
+ hash: "a08502b3fbb425c7b1cad93e4bc5701e"
}
Frame {
msec: 2096
- hash: "1c03b5384a889fe233eb1c6d14a55f36"
+ hash: "86ad5a9e06d19ea79e0fc9f7f36cdb0f"
}
Frame {
msec: 2112
- hash: "2cd264339edc0338fc610e0d766425cc"
+ hash: "7be44eca358924dc11c5123e406f1c99"
}
Frame {
msec: 2128
- hash: "cc40335abbea0d589180096f7d8f5426"
+ hash: "2fa85a19ba2bb7d04264a246c4982eb4"
}
Frame {
msec: 2144
- hash: "631bea21dde9b7647f5843bc3513f3ba"
+ hash: "565003fef7b9810ffe95c3bbeeda5bbc"
}
Key {
type: 6
@@ -726,27 +726,27 @@ VisualTest {
}
Frame {
msec: 2160
- hash: "c5199c908df1f550d7c4f133eb926134"
+ hash: "39c81c6efdbc32b6e0378810404bef2c"
}
Frame {
msec: 2176
- hash: "483eca22c50750e7591785ed60813d1f"
+ hash: "756f36cf41c2bae3a8a8716701e55e37"
}
Frame {
msec: 2192
- hash: "4091de379d8f6ccc7f19ea39f6c7993a"
+ hash: "fb09d44a5a5b5b795d562512e9547301"
}
Frame {
msec: 2208
- hash: "cd58c0d4f7248315a787542b0edcb4fb"
+ hash: "183538d04cf009f100a1e49a3229c143"
}
Frame {
msec: 2224
- hash: "458895f9ede4d56e0b851c6ed124405d"
+ hash: "2ec91bfdb0f106a526f6bde3eb0ed7ce"
}
Frame {
msec: 2240
- hash: "29a28a97fc78a1b01252b852fb0446e2"
+ hash: "f34175acc261ad79bc9d2083af04ae10"
}
Key {
type: 7
@@ -758,31 +758,31 @@ VisualTest {
}
Frame {
msec: 2256
- hash: "4fd9f22ad06e02b68319c298c2286e36"
+ hash: "39a59b2e9e0bee87d3ba50e1408bea1c"
}
Frame {
msec: 2272
- hash: "a588e9dbeabd7519cd0cf2d26a123529"
+ hash: "db61ba19d56b69d148aeb182de596713"
}
Frame {
msec: 2288
- hash: "bb74f706477e277284fad50752f078b5"
+ hash: "e0b07106a5adc1603788444d48b9c3db"
}
Frame {
msec: 2304
- hash: "38f16a7deeaea6828edd15b00024fc19"
+ hash: "1dd5625fb6a0ddbaa3919a1702695e9c"
}
Frame {
msec: 2320
- hash: "30c4aa33a6672f4df24186ad1e28bcf9"
+ hash: "d7d39e8f717bab17aaf8a12e4f9e0dfc"
}
Frame {
msec: 2336
- hash: "7f2ac0854ddbcca94a2ad160ead5d4d3"
+ hash: "d7a226b40a049dee56755af9206246b4"
}
Frame {
msec: 2352
- hash: "e1c083d0235ff5a2e002ce78f43009b0"
+ hash: "37d2d2830f6ae6bf0c8fb29c5d4f521a"
}
Key {
type: 6
@@ -802,23 +802,23 @@ VisualTest {
}
Frame {
msec: 2368
- hash: "eaee6483a2a4a0b09a8e40bb1785a498"
+ hash: "21008b3a5179e25f9b132a4c05b8b8c4"
}
Frame {
msec: 2384
- hash: "26530bded6311640c4d3f6d1485fa7d3"
+ hash: "a6f05fb5206a456bea790ba7ba31868c"
}
Frame {
msec: 2400
- hash: "e54102edbf6cc0c9a32b09858f760ee5"
+ hash: "754e2fca1b3ed5ee9875aafb1a0c62d3"
}
Frame {
msec: 2416
- hash: "27434828de3ba8f6a3b83f042b70eb8b"
+ hash: "75d1ae9c60573f9e27cd7c2d1706cbfc"
}
Frame {
msec: 2432
- hash: "fdf68e988b988d068ea78a5a09ef349e"
+ hash: "c78608cde907bc09760d858795b43bbf"
}
Key {
type: 6
@@ -830,23 +830,23 @@ VisualTest {
}
Frame {
msec: 2448
- hash: "0e1e9a2cf891cf65f30ead539becf408"
+ hash: "348438b012690f63956e6a865c4173c5"
}
Frame {
msec: 2464
- hash: "46602c03632f6a47c9d523e1ea61baaf"
+ hash: "b0c970656fdb5af48efc4bf0e1879f36"
}
Frame {
msec: 2480
- hash: "5c758ee2aa3f92b6506533f6d615bc20"
+ hash: "7291a68c8e790f58e2440dfbe896c36d"
}
Frame {
msec: 2496
- hash: "25edbdaae72e03426c9dfa75c08c33e6"
+ hash: "9bcbf9f7b35987c3acbd80031a688279"
}
Frame {
msec: 2512
- hash: "a4bd11f15594932b996a069f3098c596"
+ hash: "48a00bd3f844e863338898bd28d845a4"
}
Key {
type: 7
@@ -858,23 +858,23 @@ VisualTest {
}
Frame {
msec: 2528
- hash: "e4090b920ce2456149155f61fb586a6f"
+ hash: "dc5f63ee9e8d50f744f7b375a52e32c3"
}
Frame {
msec: 2544
- hash: "ce71f4dc76f90fa300d715ed77e8a5a8"
+ hash: "f52d2f475a335a75fad0a0f84e812809"
}
Frame {
msec: 2560
- hash: "59414694d42a3942c4832fd7a3e93145"
+ hash: "bc54cefc8f0b84fc2432b0fb01203b9c"
}
Frame {
msec: 2576
- hash: "1213fc9d9c1d58ceefc213a59f970679"
+ hash: "e6f14d1181a0db90d2c2891fd6e82883"
}
Frame {
msec: 2592
- hash: "bbfa8471ab3fa5fc146946a6c8e0ce86"
+ hash: "1edc2fff7b3d76bbe2615810a5d15d41"
}
Key {
type: 6
@@ -886,15 +886,15 @@ VisualTest {
}
Frame {
msec: 2608
- hash: "22a49c3b5234b4b7a2b935d58027f834"
+ hash: "5bc156937a29989a3a39761b58958fbd"
}
Frame {
msec: 2624
- hash: "7b81c14d5350fb55775c1cb0f3945c46"
+ hash: "071d45235a669e870356efc60ba8016c"
}
Frame {
msec: 2640
- hash: "8ebf266de0df228e47cc6e5a8758a6ea"
+ hash: "1d588fb1f8321e4b437f924077fa7d60"
}
Key {
type: 7
@@ -906,23 +906,23 @@ VisualTest {
}
Frame {
msec: 2656
- hash: "6344eb333dc28672f863bcb7ca5d6cfe"
+ hash: "ca9aff6590dda45a66cdca601dccaf59"
}
Frame {
msec: 2672
- hash: "8efc9b4a6c27b8918cba629a5a1c0f24"
+ hash: "2553146fff0d367cc6fa2d11f0a5c83a"
}
Frame {
msec: 2688
- hash: "b586c24ce0c04391a9095c0ac4b7a05a"
+ hash: "05bd919cd91ff449027b188d9a24b61f"
}
Frame {
msec: 2704
- hash: "191413fe51a6887ae92c135252fdeeae"
+ hash: "35d6ce9ecef79d006d6416c3b0d75e79"
}
Frame {
msec: 2720
- hash: "fc0b37abf12827af41e7037eab8ba5c8"
+ hash: "1459a2410a971e344d4dacccff1eb7da"
}
Key {
type: 6
@@ -934,19 +934,19 @@ VisualTest {
}
Frame {
msec: 2736
- hash: "5efe28d02b93e094192d7fd6fe753acd"
+ hash: "bd04cc87db0138b57bf0feeafa7630f5"
}
Frame {
msec: 2752
- hash: "dadc1f7b14fbf9f8a174821c4197da46"
+ hash: "81521187d5d88b62f4f7578ea4ee5f68"
}
Frame {
msec: 2768
- hash: "124deac57a3eeaef4cb3c0c802bacc05"
+ hash: "f2f8d1e8232787da1e36d7e8a27b6d93"
}
Frame {
msec: 2784
- hash: "e022a6d66a7b37d72885a7a7f6919433"
+ hash: "a5dbd1f572419ca4a4b91629e522867f"
}
Key {
type: 7
@@ -958,75 +958,75 @@ VisualTest {
}
Frame {
msec: 2800
- hash: "5faa6543469753948b1636351d044329"
+ hash: "23ab256301d7190f56c4f0af7f57bcc2"
}
Frame {
msec: 2816
- hash: "a7dcf5a0b9bb00105eed173b498cb95c"
+ hash: "3a106a01b1cf6b53b5f8721415538f15"
}
Frame {
msec: 2832
- hash: "29ac83d169af2c74ffd134d771c88718"
+ hash: "881f4de48cf79636f5cb292f4cacf842"
}
Frame {
msec: 2848
- hash: "0a04648fdc90ec86fb55ad3a165573c4"
+ hash: "4abe8abf4f29a31220c03af143ef9978"
}
Frame {
msec: 2864
- hash: "d699c713ba939612f1e552e48db19b18"
+ hash: "50db0e06ceb12795d3e11b2c4a04df9c"
}
Frame {
msec: 2880
- image: "cursorDelegate.2.png"
+ hash: "39f759d5b58ffdaa79d438f932a72582"
}
Frame {
msec: 2896
- hash: "adf564652cfae394869755ff2fe5b534"
+ image: "cursorDelegate.3.png"
}
Frame {
msec: 2912
- hash: "d1453f663217ee45a8462b7d077d7f6a"
+ hash: "0cf83e3a000b8ae6a21ef64e5470430f"
}
Frame {
msec: 2928
- hash: "9f1461d63ccc49f83e58245ba75685e1"
+ hash: "07116cd7cf46fc692542ac57c3e30aea"
}
Frame {
msec: 2944
- hash: "8cece1543e7e9190eefaa92c2024cbd1"
+ hash: "bd92a36fad90de909b5a29a6fead2160"
}
Frame {
msec: 2960
- hash: "555abf8bc3fdb1eef85b1e4bd54932a3"
+ hash: "95c4d0cc52903dc70c9118e26cd58b7b"
}
Frame {
msec: 2976
- hash: "7fc65284b99fc548de0985d94a145fa7"
+ hash: "cb6ca047657a99dbbb037c1c45b40866"
}
Frame {
msec: 2992
- hash: "7fc65284b99fc548de0985d94a145fa7"
+ hash: "cb6ca047657a99dbbb037c1c45b40866"
}
Frame {
msec: 3008
- hash: "7fc65284b99fc548de0985d94a145fa7"
+ hash: "cb6ca047657a99dbbb037c1c45b40866"
}
Frame {
msec: 3024
- hash: "7fc65284b99fc548de0985d94a145fa7"
+ hash: "cb6ca047657a99dbbb037c1c45b40866"
}
Frame {
msec: 3040
- hash: "7fc65284b99fc548de0985d94a145fa7"
+ hash: "cb6ca047657a99dbbb037c1c45b40866"
}
Frame {
msec: 3056
- hash: "7fc65284b99fc548de0985d94a145fa7"
+ hash: "cb6ca047657a99dbbb037c1c45b40866"
}
Frame {
msec: 3072
- hash: "555abf8bc3fdb1eef85b1e4bd54932a3"
+ hash: "95c4d0cc52903dc70c9118e26cd58b7b"
}
Key {
type: 6
@@ -1038,23 +1038,23 @@ VisualTest {
}
Frame {
msec: 3088
- hash: "996da2eff9302908a55308dbcc8fb3c2"
+ hash: "f9e0bd08b722c16493a8886a19920dda"
}
Frame {
msec: 3104
- hash: "6ccc70f6120acb53152b71bcf95514ca"
+ hash: "0636b7c5cc215882c60b50f62133c715"
}
Frame {
msec: 3120
- hash: "51a1b8e79d209643d55d4cecc6a70ed0"
+ hash: "150b5a2f2e916b7023764c481c768492"
}
Frame {
msec: 3136
- hash: "944dc7026c6487838ede9ef94003ec90"
+ hash: "14bc879f562ace9d2d1a3f3980a72e1f"
}
Frame {
msec: 3152
- hash: "4abbd51b620ac4ea91af95bc2d0881d7"
+ hash: "2bdc09121f13e95e15e331ac90fbbe5e"
}
Key {
type: 7
@@ -1066,27 +1066,27 @@ VisualTest {
}
Frame {
msec: 3168
- hash: "ba721988a1708b8c0762d706820c48fc"
+ hash: "b701aa41aff9df45cc4b35d23789ad46"
}
Frame {
msec: 3184
- hash: "5dba56a5bb5f8a6539a0066af35c73b8"
+ hash: "ad77330d51b1251576905a45fdbdf576"
}
Frame {
msec: 3200
- hash: "bc3efeeebe7075cd09a6e57eef43d610"
+ hash: "4ab6780997a5a598d2da7fbbc19877b7"
}
Frame {
msec: 3216
- hash: "0bd9f7de32b01d8144280bf252d9a18f"
+ hash: "43b324d0e4882147d316a5dc16eff4a5"
}
Frame {
msec: 3232
- hash: "29db710e47b13f26e2bf92568d52bf52"
+ hash: "4379bfd0da6fedac77e2111d9fdc5ecb"
}
Frame {
msec: 3248
- hash: "a27c65c0a49deb18b0766bba41a32e54"
+ hash: "ca35937be71e1f982cedd33bdd09d127"
}
Key {
type: 6
@@ -1098,31 +1098,31 @@ VisualTest {
}
Frame {
msec: 3264
- hash: "484ee552e1a9c5eafcfe1ac583fcdffd"
+ hash: "f6bac38774fa8a09084c045e34fd1732"
}
Frame {
msec: 3280
- hash: "40b336a0e337b66d813089a82a88c712"
+ hash: "6d8b58612860febb13800958cab3aecd"
}
Frame {
msec: 3296
- hash: "b7a8d4b8bb2b83e4c886aa51c1a73895"
+ hash: "7f921d2293cf547de3b5573dbf98d5bb"
}
Frame {
msec: 3312
- hash: "43b3bf8425e7a6b7115d8e6a0bcfd677"
+ hash: "18771337bbe826b5a34bd9705c79f56a"
}
Frame {
msec: 3328
- hash: "e2ce168241b043db74867fe7ed6de956"
+ hash: "3dd49406c4b39980908d8869dc3c060a"
}
Frame {
msec: 3344
- hash: "0c713bbd7bb694d87f0fe14f87098b9b"
+ hash: "8cae649565b5655d606f216334a0b5b5"
}
Frame {
msec: 3360
- hash: "316f6bd365ca4b4f2e6fbf34a047e307"
+ hash: "27c59b474d706ce79b5d075713c1ea88"
}
Key {
type: 7
@@ -1134,39 +1134,39 @@ VisualTest {
}
Frame {
msec: 3376
- hash: "421fb8881fe7b300dcec0f44ff1743e3"
+ hash: "6d70d654998bbc0a2431ca7c4a58cd3c"
}
Frame {
msec: 3392
- hash: "e8376079434393467b47a56ff00efb2b"
+ hash: "bf55fffd1727c0d076e05e274dcebb0d"
}
Frame {
msec: 3408
- hash: "63259de84a6e07d42c9df94ec2a25920"
+ hash: "d5b0696cbe2969723bb2fe740deeb81f"
}
Frame {
msec: 3424
- hash: "f9194d82b81f5ac58862c382caf5cf59"
+ hash: "27968050a9cf7d57d016274709086be1"
}
Frame {
msec: 3440
- hash: "e185f2594f038532a37b351384dc97ea"
+ hash: "3bc037fd17d0d394b82ba19914f31b90"
}
Frame {
msec: 3456
- hash: "91edc3ca1e6c532bd92006a761073da2"
+ hash: "117d7ad2d2ae47f3a0c2a68928534b76"
}
Frame {
msec: 3472
- hash: "b47390495539756048ccc71047ebef7b"
+ hash: "a538ce971f34a497c05258da2567a208"
}
Frame {
msec: 3488
- hash: "7c83d3bdb9abf8ab2cfe7f9464673a49"
+ hash: "91e2e5cc6efcffc9e58646a008a57c9d"
}
Frame {
msec: 3504
- hash: "b686f4013f45885ab794aba9ff491286"
+ hash: "13db17cc3c6513014a95210a443e5842"
}
Key {
type: 7
@@ -1178,11 +1178,11 @@ VisualTest {
}
Frame {
msec: 3520
- hash: "0c55d6ea330b7365825864d4bdacafcb"
+ hash: "03325597bd4e7d7b6f7c84c848018872"
}
Frame {
msec: 3536
- hash: "2bb72f191201572308e461021872fb4c"
+ hash: "e96dc6d611d23553b363a765195604f9"
}
Key {
type: 7
@@ -1194,358 +1194,358 @@ VisualTest {
}
Frame {
msec: 3552
- hash: "81b04a84982698ee80d13d392742edd3"
+ hash: "942476dd6fb7a4f3d10c398503cb7b90"
}
Frame {
msec: 3568
- hash: "63f582dc2a9f707c1ec99f4285d13a84"
+ hash: "cbe34fd18b6355ae9be469a594b44192"
}
Frame {
msec: 3584
- hash: "f91cb29101f80f5dcb1e9e8c82e823b7"
+ hash: "3dce89f398d2c856bcd32da34867ebd8"
}
Frame {
msec: 3600
- hash: "fdf68e988b988d068ea78a5a09ef349e"
+ hash: "c78608cde907bc09760d858795b43bbf"
}
Frame {
msec: 3616
- hash: "27434828de3ba8f6a3b83f042b70eb8b"
+ hash: "75d1ae9c60573f9e27cd7c2d1706cbfc"
}
Frame {
msec: 3632
- hash: "e54102edbf6cc0c9a32b09858f760ee5"
+ hash: "754e2fca1b3ed5ee9875aafb1a0c62d3"
}
Frame {
msec: 3648
- hash: "26530bded6311640c4d3f6d1485fa7d3"
+ hash: "a6f05fb5206a456bea790ba7ba31868c"
}
Frame {
msec: 3664
- hash: "eaee6483a2a4a0b09a8e40bb1785a498"
+ hash: "21008b3a5179e25f9b132a4c05b8b8c4"
}
Frame {
msec: 3680
- hash: "e1c083d0235ff5a2e002ce78f43009b0"
+ hash: "37d2d2830f6ae6bf0c8fb29c5d4f521a"
}
Frame {
msec: 3696
- hash: "7f2ac0854ddbcca94a2ad160ead5d4d3"
+ hash: "d7a226b40a049dee56755af9206246b4"
}
Frame {
msec: 3712
- hash: "30c4aa33a6672f4df24186ad1e28bcf9"
+ hash: "d7d39e8f717bab17aaf8a12e4f9e0dfc"
}
Frame {
msec: 3728
- hash: "38f16a7deeaea6828edd15b00024fc19"
+ hash: "1dd5625fb6a0ddbaa3919a1702695e9c"
}
Frame {
msec: 3744
- hash: "bb74f706477e277284fad50752f078b5"
+ hash: "e0b07106a5adc1603788444d48b9c3db"
}
Frame {
msec: 3760
- hash: "a588e9dbeabd7519cd0cf2d26a123529"
+ hash: "db61ba19d56b69d148aeb182de596713"
}
Frame {
msec: 3776
- hash: "4fd9f22ad06e02b68319c298c2286e36"
+ hash: "39a59b2e9e0bee87d3ba50e1408bea1c"
}
Frame {
msec: 3792
- hash: "29a28a97fc78a1b01252b852fb0446e2"
+ hash: "f34175acc261ad79bc9d2083af04ae10"
}
Frame {
msec: 3808
- hash: "458895f9ede4d56e0b851c6ed124405d"
+ hash: "2ec91bfdb0f106a526f6bde3eb0ed7ce"
}
Frame {
msec: 3824
- hash: "cd58c0d4f7248315a787542b0edcb4fb"
+ hash: "183538d04cf009f100a1e49a3229c143"
}
Frame {
msec: 3840
- image: "cursorDelegate.3.png"
+ hash: "fb09d44a5a5b5b795d562512e9547301"
}
Frame {
msec: 3856
- hash: "483eca22c50750e7591785ed60813d1f"
+ image: "cursorDelegate.4.png"
}
Frame {
msec: 3872
- hash: "c5199c908df1f550d7c4f133eb926134"
+ hash: "39c81c6efdbc32b6e0378810404bef2c"
}
Frame {
msec: 3888
- hash: "efaa5e4483ed9cfec792e8f270b5079e"
+ hash: "23d9a9a6a9d032c7e447407193ca51ef"
}
Frame {
msec: 3904
- hash: "7ffcff87e27dcb0be0047eb6fbcc9549"
+ hash: "bdd00cfe933985fe77626114902ce823"
}
Frame {
msec: 3920
- hash: "04339417259ddee10134e1479729ae1b"
+ hash: "1d25c2753ccabdaaf47a669c28d9e2cb"
}
Frame {
msec: 3936
- hash: "0f1e6a0d9db7b6b8b874333682866ffa"
+ hash: "20fde9bbe26ebede31fc8c21dec3fcc5"
}
Frame {
msec: 3952
- hash: "66500c2cc3d69b9fb48dc46e384aca6d"
+ hash: "c9147c159aebb7aa51d4bac28f96cb57"
}
Frame {
msec: 3968
- hash: "70d6b73499c36138bee63e07afb0b186"
+ hash: "68d331f508b43e756d6e30ba9b60f9aa"
}
Frame {
msec: 3984
- hash: "c526315dd5eec117266c68a7b6b64a3f"
+ hash: "af99069cdddfa9d099fbe25ba586e138"
}
Frame {
msec: 4000
- hash: "c526315dd5eec117266c68a7b6b64a3f"
+ hash: "af99069cdddfa9d099fbe25ba586e138"
}
Frame {
msec: 4016
- hash: "c526315dd5eec117266c68a7b6b64a3f"
+ hash: "af99069cdddfa9d099fbe25ba586e138"
}
Frame {
msec: 4032
- hash: "c526315dd5eec117266c68a7b6b64a3f"
+ hash: "af99069cdddfa9d099fbe25ba586e138"
}
Frame {
msec: 4048
- hash: "c526315dd5eec117266c68a7b6b64a3f"
+ hash: "af99069cdddfa9d099fbe25ba586e138"
}
Frame {
msec: 4064
- hash: "70d6b73499c36138bee63e07afb0b186"
+ hash: "68d331f508b43e756d6e30ba9b60f9aa"
}
Frame {
msec: 4080
- hash: "66500c2cc3d69b9fb48dc46e384aca6d"
+ hash: "c9147c159aebb7aa51d4bac28f96cb57"
}
Frame {
msec: 4096
- hash: "0f1e6a0d9db7b6b8b874333682866ffa"
+ hash: "20fde9bbe26ebede31fc8c21dec3fcc5"
}
Frame {
msec: 4112
- hash: "04339417259ddee10134e1479729ae1b"
+ hash: "1d25c2753ccabdaaf47a669c28d9e2cb"
}
Frame {
msec: 4128
- hash: "7ffcff87e27dcb0be0047eb6fbcc9549"
+ hash: "bdd00cfe933985fe77626114902ce823"
}
Frame {
msec: 4144
- hash: "efaa5e4483ed9cfec792e8f270b5079e"
+ hash: "23d9a9a6a9d032c7e447407193ca51ef"
}
Frame {
msec: 4160
- hash: "c5199c908df1f550d7c4f133eb926134"
+ hash: "39c81c6efdbc32b6e0378810404bef2c"
}
Frame {
msec: 4176
- hash: "483eca22c50750e7591785ed60813d1f"
+ hash: "756f36cf41c2bae3a8a8716701e55e37"
}
Frame {
msec: 4192
- hash: "4091de379d8f6ccc7f19ea39f6c7993a"
+ hash: "fb09d44a5a5b5b795d562512e9547301"
}
Frame {
msec: 4208
- hash: "cd58c0d4f7248315a787542b0edcb4fb"
+ hash: "183538d04cf009f100a1e49a3229c143"
}
Frame {
msec: 4224
- hash: "458895f9ede4d56e0b851c6ed124405d"
+ hash: "2ec91bfdb0f106a526f6bde3eb0ed7ce"
}
Frame {
msec: 4240
- hash: "29a28a97fc78a1b01252b852fb0446e2"
+ hash: "f34175acc261ad79bc9d2083af04ae10"
}
Frame {
msec: 4256
- hash: "4fd9f22ad06e02b68319c298c2286e36"
+ hash: "39a59b2e9e0bee87d3ba50e1408bea1c"
}
Frame {
msec: 4272
- hash: "a588e9dbeabd7519cd0cf2d26a123529"
+ hash: "db61ba19d56b69d148aeb182de596713"
}
Frame {
msec: 4288
- hash: "bb74f706477e277284fad50752f078b5"
+ hash: "e0b07106a5adc1603788444d48b9c3db"
}
Frame {
msec: 4304
- hash: "38f16a7deeaea6828edd15b00024fc19"
+ hash: "1dd5625fb6a0ddbaa3919a1702695e9c"
}
Frame {
msec: 4320
- hash: "30c4aa33a6672f4df24186ad1e28bcf9"
+ hash: "d7d39e8f717bab17aaf8a12e4f9e0dfc"
}
Frame {
msec: 4336
- hash: "7f2ac0854ddbcca94a2ad160ead5d4d3"
+ hash: "d7a226b40a049dee56755af9206246b4"
}
Frame {
msec: 4352
- hash: "e1c083d0235ff5a2e002ce78f43009b0"
+ hash: "37d2d2830f6ae6bf0c8fb29c5d4f521a"
}
Frame {
msec: 4368
- hash: "eaee6483a2a4a0b09a8e40bb1785a498"
+ hash: "21008b3a5179e25f9b132a4c05b8b8c4"
}
Frame {
msec: 4384
- hash: "26530bded6311640c4d3f6d1485fa7d3"
+ hash: "a6f05fb5206a456bea790ba7ba31868c"
}
Frame {
msec: 4400
- hash: "e54102edbf6cc0c9a32b09858f760ee5"
+ hash: "754e2fca1b3ed5ee9875aafb1a0c62d3"
}
Frame {
msec: 4416
- hash: "27434828de3ba8f6a3b83f042b70eb8b"
+ hash: "75d1ae9c60573f9e27cd7c2d1706cbfc"
}
Frame {
msec: 4432
- hash: "fdf68e988b988d068ea78a5a09ef349e"
+ hash: "c78608cde907bc09760d858795b43bbf"
}
Frame {
msec: 4448
- hash: "f91cb29101f80f5dcb1e9e8c82e823b7"
+ hash: "3dce89f398d2c856bcd32da34867ebd8"
}
Frame {
msec: 4464
- hash: "63f582dc2a9f707c1ec99f4285d13a84"
+ hash: "cbe34fd18b6355ae9be469a594b44192"
}
Frame {
msec: 4480
- hash: "81b04a84982698ee80d13d392742edd3"
+ hash: "942476dd6fb7a4f3d10c398503cb7b90"
}
Frame {
msec: 4496
- hash: "2bb72f191201572308e461021872fb4c"
+ hash: "e96dc6d611d23553b363a765195604f9"
}
Frame {
msec: 4512
- hash: "0c55d6ea330b7365825864d4bdacafcb"
+ hash: "03325597bd4e7d7b6f7c84c848018872"
}
Frame {
msec: 4528
- hash: "b686f4013f45885ab794aba9ff491286"
+ hash: "13db17cc3c6513014a95210a443e5842"
}
Frame {
msec: 4544
- hash: "7c83d3bdb9abf8ab2cfe7f9464673a49"
+ hash: "91e2e5cc6efcffc9e58646a008a57c9d"
}
Frame {
msec: 4560
- hash: "b47390495539756048ccc71047ebef7b"
+ hash: "a538ce971f34a497c05258da2567a208"
}
Frame {
msec: 4576
- hash: "91edc3ca1e6c532bd92006a761073da2"
+ hash: "117d7ad2d2ae47f3a0c2a68928534b76"
}
Frame {
msec: 4592
- hash: "e185f2594f038532a37b351384dc97ea"
+ hash: "3bc037fd17d0d394b82ba19914f31b90"
}
Frame {
msec: 4608
- hash: "f9194d82b81f5ac58862c382caf5cf59"
+ hash: "27968050a9cf7d57d016274709086be1"
}
Frame {
msec: 4624
- hash: "63259de84a6e07d42c9df94ec2a25920"
+ hash: "d5b0696cbe2969723bb2fe740deeb81f"
}
Frame {
msec: 4640
- hash: "e8376079434393467b47a56ff00efb2b"
+ hash: "bf55fffd1727c0d076e05e274dcebb0d"
}
Frame {
msec: 4656
- hash: "421fb8881fe7b300dcec0f44ff1743e3"
+ hash: "6d70d654998bbc0a2431ca7c4a58cd3c"
}
Frame {
msec: 4672
- hash: "316f6bd365ca4b4f2e6fbf34a047e307"
+ hash: "27c59b474d706ce79b5d075713c1ea88"
}
Frame {
msec: 4688
- hash: "0c713bbd7bb694d87f0fe14f87098b9b"
+ hash: "8cae649565b5655d606f216334a0b5b5"
}
Frame {
msec: 4704
- hash: "e2ce168241b043db74867fe7ed6de956"
+ hash: "3dd49406c4b39980908d8869dc3c060a"
}
Frame {
msec: 4720
- hash: "43b3bf8425e7a6b7115d8e6a0bcfd677"
+ hash: "18771337bbe826b5a34bd9705c79f56a"
}
Frame {
msec: 4736
- hash: "b7a8d4b8bb2b83e4c886aa51c1a73895"
+ hash: "7f921d2293cf547de3b5573dbf98d5bb"
}
Frame {
msec: 4752
- hash: "40b336a0e337b66d813089a82a88c712"
+ hash: "6d8b58612860febb13800958cab3aecd"
}
Frame {
msec: 4768
- hash: "484ee552e1a9c5eafcfe1ac583fcdffd"
+ hash: "f6bac38774fa8a09084c045e34fd1732"
}
Frame {
msec: 4784
- hash: "a27c65c0a49deb18b0766bba41a32e54"
+ hash: "ca35937be71e1f982cedd33bdd09d127"
}
Frame {
msec: 4800
- image: "cursorDelegate.4.png"
+ hash: "4379bfd0da6fedac77e2111d9fdc5ecb"
}
Frame {
msec: 4816
- hash: "0bd9f7de32b01d8144280bf252d9a18f"
+ image: "cursorDelegate.5.png"
}
Frame {
msec: 4832
- hash: "bc3efeeebe7075cd09a6e57eef43d610"
+ hash: "4ab6780997a5a598d2da7fbbc19877b7"
}
Frame {
msec: 4848
- hash: "5dba56a5bb5f8a6539a0066af35c73b8"
+ hash: "ad77330d51b1251576905a45fdbdf576"
}
Frame {
msec: 4864
- hash: "ba721988a1708b8c0762d706820c48fc"
+ hash: "b701aa41aff9df45cc4b35d23789ad46"
}
Frame {
msec: 4880
- hash: "4abbd51b620ac4ea91af95bc2d0881d7"
+ hash: "2bdc09121f13e95e15e331ac90fbbe5e"
}
Frame {
msec: 4896
- hash: "944dc7026c6487838ede9ef94003ec90"
+ hash: "14bc879f562ace9d2d1a3f3980a72e1f"
}
Frame {
msec: 4912
- hash: "51a1b8e79d209643d55d4cecc6a70ed0"
+ hash: "150b5a2f2e916b7023764c481c768492"
}
Frame {
msec: 4928
- hash: "6ccc70f6120acb53152b71bcf95514ca"
+ hash: "0636b7c5cc215882c60b50f62133c715"
}
Frame {
msec: 4944
- hash: "996da2eff9302908a55308dbcc8fb3c2"
+ hash: "f9e0bd08b722c16493a8886a19920dda"
}
Frame {
msec: 4960
- hash: "264f34128dfe563126b9f187c65df61e"
+ hash: "f499f4b3017c88c63f0a2035ad527a0e"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/echoMode.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/echoMode.0.png
index 57a1599c59..5f632d0d18 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/echoMode.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/echoMode.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/echoMode.1.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/echoMode.1.png
index d327d5b74b..060be223b0 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/echoMode.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/echoMode.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/echoMode.2.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/echoMode.2.png
index c1e3dce7ef..d373aef317 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/echoMode.2.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/echoMode.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/echoMode.3.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/echoMode.3.png
new file mode 100644
index 0000000000..5dad108cb6
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/echoMode.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/echoMode.qml b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/echoMode.qml
index 9a26f570d5..6081aaf747 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/echoMode.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/echoMode.qml
@@ -6,7 +6,7 @@ VisualTest {
}
Frame {
msec: 16
- hash: "0e7c7dc19aab217751411568b58830ef"
+ image: "echoMode.0.png"
}
Frame {
msec: 32
@@ -110,23 +110,23 @@ VisualTest {
}
Frame {
msec: 368
- hash: "d3151ba24f0011bf1add83377f32ec85"
+ hash: "593867b082681c362d7dffda12615284"
}
Frame {
msec: 384
- hash: "d3151ba24f0011bf1add83377f32ec85"
+ hash: "593867b082681c362d7dffda12615284"
}
Frame {
msec: 400
- hash: "d3151ba24f0011bf1add83377f32ec85"
+ hash: "593867b082681c362d7dffda12615284"
}
Frame {
msec: 416
- hash: "d3151ba24f0011bf1add83377f32ec85"
+ hash: "593867b082681c362d7dffda12615284"
}
Frame {
msec: 432
- hash: "d3151ba24f0011bf1add83377f32ec85"
+ hash: "593867b082681c362d7dffda12615284"
}
Key {
type: 7
@@ -138,27 +138,27 @@ VisualTest {
}
Frame {
msec: 448
- hash: "d3151ba24f0011bf1add83377f32ec85"
+ hash: "593867b082681c362d7dffda12615284"
}
Frame {
msec: 464
- hash: "d3151ba24f0011bf1add83377f32ec85"
+ hash: "593867b082681c362d7dffda12615284"
}
Frame {
msec: 480
- hash: "d3151ba24f0011bf1add83377f32ec85"
+ hash: "593867b082681c362d7dffda12615284"
}
Frame {
msec: 496
- hash: "d3151ba24f0011bf1add83377f32ec85"
+ hash: "593867b082681c362d7dffda12615284"
}
Frame {
msec: 512
- hash: "d3151ba24f0011bf1add83377f32ec85"
+ hash: "593867b082681c362d7dffda12615284"
}
Frame {
msec: 528
- hash: "d3151ba24f0011bf1add83377f32ec85"
+ hash: "593867b082681c362d7dffda12615284"
}
Key {
type: 7
@@ -170,43 +170,43 @@ VisualTest {
}
Frame {
msec: 544
- hash: "d3151ba24f0011bf1add83377f32ec85"
+ hash: "593867b082681c362d7dffda12615284"
}
Frame {
msec: 560
- hash: "d3151ba24f0011bf1add83377f32ec85"
+ hash: "593867b082681c362d7dffda12615284"
}
Frame {
msec: 576
- hash: "d3151ba24f0011bf1add83377f32ec85"
+ hash: "593867b082681c362d7dffda12615284"
}
Frame {
msec: 592
- hash: "d3151ba24f0011bf1add83377f32ec85"
+ hash: "593867b082681c362d7dffda12615284"
}
Frame {
msec: 608
- hash: "d3151ba24f0011bf1add83377f32ec85"
+ hash: "593867b082681c362d7dffda12615284"
}
Frame {
msec: 624
- hash: "d3151ba24f0011bf1add83377f32ec85"
+ hash: "593867b082681c362d7dffda12615284"
}
Frame {
msec: 640
- hash: "d3151ba24f0011bf1add83377f32ec85"
+ hash: "593867b082681c362d7dffda12615284"
}
Frame {
msec: 656
- hash: "d3151ba24f0011bf1add83377f32ec85"
+ hash: "593867b082681c362d7dffda12615284"
}
Frame {
msec: 672
- hash: "d3151ba24f0011bf1add83377f32ec85"
+ hash: "593867b082681c362d7dffda12615284"
}
Frame {
msec: 688
- hash: "d3151ba24f0011bf1add83377f32ec85"
+ hash: "593867b082681c362d7dffda12615284"
}
Key {
type: 6
@@ -218,23 +218,23 @@ VisualTest {
}
Frame {
msec: 704
- hash: "6b7c333ce19fede43aee84cc66c4c1bc"
+ hash: "8d4a4baca932c318fba437b05962a635"
}
Frame {
msec: 720
- hash: "6b7c333ce19fede43aee84cc66c4c1bc"
+ hash: "8d4a4baca932c318fba437b05962a635"
}
Frame {
msec: 736
- hash: "6b7c333ce19fede43aee84cc66c4c1bc"
+ hash: "8d4a4baca932c318fba437b05962a635"
}
Frame {
msec: 752
- hash: "6b7c333ce19fede43aee84cc66c4c1bc"
+ hash: "8d4a4baca932c318fba437b05962a635"
}
Frame {
msec: 768
- hash: "6b7c333ce19fede43aee84cc66c4c1bc"
+ hash: "8d4a4baca932c318fba437b05962a635"
}
Key {
type: 7
@@ -246,23 +246,23 @@ VisualTest {
}
Frame {
msec: 784
- hash: "6b7c333ce19fede43aee84cc66c4c1bc"
+ hash: "8d4a4baca932c318fba437b05962a635"
}
Frame {
msec: 800
- hash: "6b7c333ce19fede43aee84cc66c4c1bc"
+ hash: "8d4a4baca932c318fba437b05962a635"
}
Frame {
msec: 816
- hash: "6b7c333ce19fede43aee84cc66c4c1bc"
+ hash: "8d4a4baca932c318fba437b05962a635"
}
Frame {
msec: 832
- hash: "6b7c333ce19fede43aee84cc66c4c1bc"
+ hash: "8d4a4baca932c318fba437b05962a635"
}
Frame {
msec: 848
- hash: "6b7c333ce19fede43aee84cc66c4c1bc"
+ hash: "8d4a4baca932c318fba437b05962a635"
}
Key {
type: 6
@@ -274,15 +274,15 @@ VisualTest {
}
Frame {
msec: 864
- hash: "a5386e9b39daa0a5aad8a8cd5191909b"
+ hash: "b2698dba3a5ebe80e26f273b32857506"
}
Frame {
msec: 880
- hash: "a5386e9b39daa0a5aad8a8cd5191909b"
+ hash: "b2698dba3a5ebe80e26f273b32857506"
}
Frame {
msec: 896
- hash: "a5386e9b39daa0a5aad8a8cd5191909b"
+ hash: "b2698dba3a5ebe80e26f273b32857506"
}
Key {
type: 7
@@ -294,23 +294,23 @@ VisualTest {
}
Frame {
msec: 912
- hash: "a5386e9b39daa0a5aad8a8cd5191909b"
+ hash: "b2698dba3a5ebe80e26f273b32857506"
}
Frame {
msec: 928
- hash: "a5386e9b39daa0a5aad8a8cd5191909b"
+ hash: "b2698dba3a5ebe80e26f273b32857506"
}
Frame {
msec: 944
- hash: "a5386e9b39daa0a5aad8a8cd5191909b"
+ hash: "b2698dba3a5ebe80e26f273b32857506"
}
Frame {
msec: 960
- image: "echoMode.0.png"
+ hash: "b2698dba3a5ebe80e26f273b32857506"
}
Frame {
msec: 976
- hash: "a5386e9b39daa0a5aad8a8cd5191909b"
+ image: "echoMode.1.png"
}
Key {
type: 6
@@ -322,19 +322,19 @@ VisualTest {
}
Frame {
msec: 992
- hash: "f9149723166015ed066b794cf86b27d0"
+ hash: "3ea06a90d633d5e9fe5a11cc4ed67764"
}
Frame {
msec: 1008
- hash: "f9149723166015ed066b794cf86b27d0"
+ hash: "3ea06a90d633d5e9fe5a11cc4ed67764"
}
Frame {
msec: 1024
- hash: "f9149723166015ed066b794cf86b27d0"
+ hash: "3ea06a90d633d5e9fe5a11cc4ed67764"
}
Frame {
msec: 1040
- hash: "f9149723166015ed066b794cf86b27d0"
+ hash: "3ea06a90d633d5e9fe5a11cc4ed67764"
}
Key {
type: 7
@@ -346,51 +346,51 @@ VisualTest {
}
Frame {
msec: 1056
- hash: "f9149723166015ed066b794cf86b27d0"
+ hash: "3ea06a90d633d5e9fe5a11cc4ed67764"
}
Frame {
msec: 1072
- hash: "f9149723166015ed066b794cf86b27d0"
+ hash: "3ea06a90d633d5e9fe5a11cc4ed67764"
}
Frame {
msec: 1088
- hash: "f9149723166015ed066b794cf86b27d0"
+ hash: "3ea06a90d633d5e9fe5a11cc4ed67764"
}
Frame {
msec: 1104
- hash: "f9149723166015ed066b794cf86b27d0"
+ hash: "3ea06a90d633d5e9fe5a11cc4ed67764"
}
Frame {
msec: 1120
- hash: "f9149723166015ed066b794cf86b27d0"
+ hash: "3ea06a90d633d5e9fe5a11cc4ed67764"
}
Frame {
msec: 1136
- hash: "f9149723166015ed066b794cf86b27d0"
+ hash: "3ea06a90d633d5e9fe5a11cc4ed67764"
}
Frame {
msec: 1152
- hash: "f9149723166015ed066b794cf86b27d0"
+ hash: "3ea06a90d633d5e9fe5a11cc4ed67764"
}
Frame {
msec: 1168
- hash: "f9149723166015ed066b794cf86b27d0"
+ hash: "3ea06a90d633d5e9fe5a11cc4ed67764"
}
Frame {
msec: 1184
- hash: "f9149723166015ed066b794cf86b27d0"
+ hash: "3ea06a90d633d5e9fe5a11cc4ed67764"
}
Frame {
msec: 1200
- hash: "f9149723166015ed066b794cf86b27d0"
+ hash: "3ea06a90d633d5e9fe5a11cc4ed67764"
}
Frame {
msec: 1216
- hash: "f9149723166015ed066b794cf86b27d0"
+ hash: "3ea06a90d633d5e9fe5a11cc4ed67764"
}
Frame {
msec: 1232
- hash: "f9149723166015ed066b794cf86b27d0"
+ hash: "3ea06a90d633d5e9fe5a11cc4ed67764"
}
Key {
type: 6
@@ -402,15 +402,15 @@ VisualTest {
}
Frame {
msec: 1248
- hash: "56dd8557435509e5a96c2f2907d474eb"
+ hash: "a190bbf59ec807391077b9d1183f72b5"
}
Frame {
msec: 1264
- hash: "56dd8557435509e5a96c2f2907d474eb"
+ hash: "a190bbf59ec807391077b9d1183f72b5"
}
Frame {
msec: 1280
- hash: "56dd8557435509e5a96c2f2907d474eb"
+ hash: "a190bbf59ec807391077b9d1183f72b5"
}
Key {
type: 7
@@ -422,15 +422,15 @@ VisualTest {
}
Frame {
msec: 1296
- hash: "56dd8557435509e5a96c2f2907d474eb"
+ hash: "a190bbf59ec807391077b9d1183f72b5"
}
Frame {
msec: 1312
- hash: "56dd8557435509e5a96c2f2907d474eb"
+ hash: "a190bbf59ec807391077b9d1183f72b5"
}
Frame {
msec: 1328
- hash: "56dd8557435509e5a96c2f2907d474eb"
+ hash: "a190bbf59ec807391077b9d1183f72b5"
}
Key {
type: 6
@@ -442,39 +442,39 @@ VisualTest {
}
Frame {
msec: 1344
- hash: "b311772a9bf92f4222b1c1c7ddbe96c4"
+ hash: "f171a98a3a726b517ad4b401a0720ba2"
}
Frame {
msec: 1360
- hash: "b311772a9bf92f4222b1c1c7ddbe96c4"
+ hash: "f171a98a3a726b517ad4b401a0720ba2"
}
Frame {
msec: 1376
- hash: "b311772a9bf92f4222b1c1c7ddbe96c4"
+ hash: "f171a98a3a726b517ad4b401a0720ba2"
}
Frame {
msec: 1392
- hash: "b311772a9bf92f4222b1c1c7ddbe96c4"
+ hash: "f171a98a3a726b517ad4b401a0720ba2"
}
Frame {
msec: 1408
- hash: "b311772a9bf92f4222b1c1c7ddbe96c4"
+ hash: "f171a98a3a726b517ad4b401a0720ba2"
}
Frame {
msec: 1424
- hash: "b311772a9bf92f4222b1c1c7ddbe96c4"
+ hash: "f171a98a3a726b517ad4b401a0720ba2"
}
Frame {
msec: 1440
- hash: "b311772a9bf92f4222b1c1c7ddbe96c4"
+ hash: "f171a98a3a726b517ad4b401a0720ba2"
}
Frame {
msec: 1456
- hash: "b311772a9bf92f4222b1c1c7ddbe96c4"
+ hash: "f171a98a3a726b517ad4b401a0720ba2"
}
Frame {
msec: 1472
- hash: "b311772a9bf92f4222b1c1c7ddbe96c4"
+ hash: "f171a98a3a726b517ad4b401a0720ba2"
}
Key {
type: 7
@@ -486,7 +486,7 @@ VisualTest {
}
Frame {
msec: 1488
- hash: "b311772a9bf92f4222b1c1c7ddbe96c4"
+ hash: "f171a98a3a726b517ad4b401a0720ba2"
}
Key {
type: 6
@@ -498,19 +498,19 @@ VisualTest {
}
Frame {
msec: 1504
- hash: "8feb240ad13e1e9d8392bfeb484261db"
+ hash: "e7199e4284be9dea34caff7bde0f6303"
}
Frame {
msec: 1520
- hash: "8feb240ad13e1e9d8392bfeb484261db"
+ hash: "e7199e4284be9dea34caff7bde0f6303"
}
Frame {
msec: 1536
- hash: "8feb240ad13e1e9d8392bfeb484261db"
+ hash: "e7199e4284be9dea34caff7bde0f6303"
}
Frame {
msec: 1552
- hash: "8feb240ad13e1e9d8392bfeb484261db"
+ hash: "e7199e4284be9dea34caff7bde0f6303"
}
Key {
type: 7
@@ -522,27 +522,27 @@ VisualTest {
}
Frame {
msec: 1568
- hash: "8feb240ad13e1e9d8392bfeb484261db"
+ hash: "e7199e4284be9dea34caff7bde0f6303"
}
Frame {
msec: 1584
- hash: "8feb240ad13e1e9d8392bfeb484261db"
+ hash: "e7199e4284be9dea34caff7bde0f6303"
}
Frame {
msec: 1600
- hash: "8feb240ad13e1e9d8392bfeb484261db"
+ hash: "e7199e4284be9dea34caff7bde0f6303"
}
Frame {
msec: 1616
- hash: "8feb240ad13e1e9d8392bfeb484261db"
+ hash: "e7199e4284be9dea34caff7bde0f6303"
}
Frame {
msec: 1632
- hash: "8feb240ad13e1e9d8392bfeb484261db"
+ hash: "e7199e4284be9dea34caff7bde0f6303"
}
Frame {
msec: 1648
- hash: "8feb240ad13e1e9d8392bfeb484261db"
+ hash: "e7199e4284be9dea34caff7bde0f6303"
}
Key {
type: 6
@@ -554,23 +554,23 @@ VisualTest {
}
Frame {
msec: 1664
- hash: "cd240ccffd4b4a6304b47cfd1e55cf49"
+ hash: "1d9d3c6435f2fa06bda16ef4a2ff238f"
}
Frame {
msec: 1680
- hash: "cd240ccffd4b4a6304b47cfd1e55cf49"
+ hash: "1d9d3c6435f2fa06bda16ef4a2ff238f"
}
Frame {
msec: 1696
- hash: "cd240ccffd4b4a6304b47cfd1e55cf49"
+ hash: "1d9d3c6435f2fa06bda16ef4a2ff238f"
}
Frame {
msec: 1712
- hash: "cd240ccffd4b4a6304b47cfd1e55cf49"
+ hash: "1d9d3c6435f2fa06bda16ef4a2ff238f"
}
Frame {
msec: 1728
- hash: "cd240ccffd4b4a6304b47cfd1e55cf49"
+ hash: "1d9d3c6435f2fa06bda16ef4a2ff238f"
}
Key {
type: 6
@@ -582,7 +582,7 @@ VisualTest {
}
Frame {
msec: 1744
- hash: "437370a412fccbeee3d1f095e32c3584"
+ hash: "9d8cb02bbc4f39d38ccdf8e9bda0ed5c"
}
Key {
type: 7
@@ -594,15 +594,15 @@ VisualTest {
}
Frame {
msec: 1760
- hash: "437370a412fccbeee3d1f095e32c3584"
+ hash: "9d8cb02bbc4f39d38ccdf8e9bda0ed5c"
}
Frame {
msec: 1776
- hash: "437370a412fccbeee3d1f095e32c3584"
+ hash: "9d8cb02bbc4f39d38ccdf8e9bda0ed5c"
}
Frame {
msec: 1792
- hash: "437370a412fccbeee3d1f095e32c3584"
+ hash: "9d8cb02bbc4f39d38ccdf8e9bda0ed5c"
}
Key {
type: 7
@@ -614,19 +614,19 @@ VisualTest {
}
Frame {
msec: 1808
- hash: "437370a412fccbeee3d1f095e32c3584"
+ hash: "9d8cb02bbc4f39d38ccdf8e9bda0ed5c"
}
Frame {
msec: 1824
- hash: "437370a412fccbeee3d1f095e32c3584"
+ hash: "9d8cb02bbc4f39d38ccdf8e9bda0ed5c"
}
Frame {
msec: 1840
- hash: "437370a412fccbeee3d1f095e32c3584"
+ hash: "9d8cb02bbc4f39d38ccdf8e9bda0ed5c"
}
Frame {
msec: 1856
- hash: "437370a412fccbeee3d1f095e32c3584"
+ hash: "9d8cb02bbc4f39d38ccdf8e9bda0ed5c"
}
Key {
type: 6
@@ -638,19 +638,19 @@ VisualTest {
}
Frame {
msec: 1872
- hash: "eb4a45722e365b103ff5423117236fd3"
+ hash: "2af75935ad1d3be02c6481c094737575"
}
Frame {
msec: 1888
- hash: "eb4a45722e365b103ff5423117236fd3"
+ hash: "2af75935ad1d3be02c6481c094737575"
}
Frame {
msec: 1904
- hash: "eb4a45722e365b103ff5423117236fd3"
+ hash: "2af75935ad1d3be02c6481c094737575"
}
Frame {
msec: 1920
- image: "echoMode.1.png"
+ hash: "2af75935ad1d3be02c6481c094737575"
}
Key {
type: 7
@@ -662,27 +662,27 @@ VisualTest {
}
Frame {
msec: 1936
- hash: "eb4a45722e365b103ff5423117236fd3"
+ image: "echoMode.2.png"
}
Frame {
msec: 1952
- hash: "eb4a45722e365b103ff5423117236fd3"
+ hash: "2af75935ad1d3be02c6481c094737575"
}
Frame {
msec: 1968
- hash: "eb4a45722e365b103ff5423117236fd3"
+ hash: "2af75935ad1d3be02c6481c094737575"
}
Frame {
msec: 1984
- hash: "eb4a45722e365b103ff5423117236fd3"
+ hash: "2af75935ad1d3be02c6481c094737575"
}
Frame {
msec: 2000
- hash: "eb4a45722e365b103ff5423117236fd3"
+ hash: "2af75935ad1d3be02c6481c094737575"
}
Frame {
msec: 2016
- hash: "eb4a45722e365b103ff5423117236fd3"
+ hash: "2af75935ad1d3be02c6481c094737575"
}
Key {
type: 6
@@ -694,11 +694,11 @@ VisualTest {
}
Frame {
msec: 2032
- hash: "b53d0651627d008545e54063ceb8d689"
+ hash: "c3512d6a7ead481aa6fec8ef8ee2f1d1"
}
Frame {
msec: 2048
- hash: "b53d0651627d008545e54063ceb8d689"
+ hash: "c3512d6a7ead481aa6fec8ef8ee2f1d1"
}
Key {
type: 7
@@ -710,11 +710,11 @@ VisualTest {
}
Frame {
msec: 2064
- hash: "b53d0651627d008545e54063ceb8d689"
+ hash: "c3512d6a7ead481aa6fec8ef8ee2f1d1"
}
Frame {
msec: 2080
- hash: "b53d0651627d008545e54063ceb8d689"
+ hash: "c3512d6a7ead481aa6fec8ef8ee2f1d1"
}
Key {
type: 6
@@ -726,19 +726,19 @@ VisualTest {
}
Frame {
msec: 2096
- hash: "173b36137940b37001750e02d434b8e8"
+ hash: "064e1fc885ab7f07dad1770361087bef"
}
Frame {
msec: 2112
- hash: "173b36137940b37001750e02d434b8e8"
+ hash: "064e1fc885ab7f07dad1770361087bef"
}
Frame {
msec: 2128
- hash: "173b36137940b37001750e02d434b8e8"
+ hash: "064e1fc885ab7f07dad1770361087bef"
}
Frame {
msec: 2144
- hash: "173b36137940b37001750e02d434b8e8"
+ hash: "064e1fc885ab7f07dad1770361087bef"
}
Key {
type: 6
@@ -758,19 +758,19 @@ VisualTest {
}
Frame {
msec: 2160
- hash: "2e636a964b4a1ab74ad3e23399c2ae8c"
+ hash: "9b764f6e9cc3d30446e1b32f7ab94f66"
}
Frame {
msec: 2176
- hash: "2e636a964b4a1ab74ad3e23399c2ae8c"
+ hash: "9b764f6e9cc3d30446e1b32f7ab94f66"
}
Frame {
msec: 2192
- hash: "2e636a964b4a1ab74ad3e23399c2ae8c"
+ hash: "9b764f6e9cc3d30446e1b32f7ab94f66"
}
Frame {
msec: 2208
- hash: "2e636a964b4a1ab74ad3e23399c2ae8c"
+ hash: "9b764f6e9cc3d30446e1b32f7ab94f66"
}
Key {
type: 6
@@ -782,7 +782,7 @@ VisualTest {
}
Frame {
msec: 2224
- hash: "631c6034372c2e7675ebce0ec415f230"
+ hash: "18eff632e106f632aad481ab40f985d7"
}
Key {
type: 7
@@ -794,23 +794,23 @@ VisualTest {
}
Frame {
msec: 2240
- hash: "631c6034372c2e7675ebce0ec415f230"
+ hash: "18eff632e106f632aad481ab40f985d7"
}
Frame {
msec: 2256
- hash: "631c6034372c2e7675ebce0ec415f230"
+ hash: "18eff632e106f632aad481ab40f985d7"
}
Frame {
msec: 2272
- hash: "631c6034372c2e7675ebce0ec415f230"
+ hash: "18eff632e106f632aad481ab40f985d7"
}
Frame {
msec: 2288
- hash: "631c6034372c2e7675ebce0ec415f230"
+ hash: "18eff632e106f632aad481ab40f985d7"
}
Frame {
msec: 2304
- hash: "631c6034372c2e7675ebce0ec415f230"
+ hash: "18eff632e106f632aad481ab40f985d7"
}
Key {
type: 7
@@ -822,11 +822,11 @@ VisualTest {
}
Frame {
msec: 2320
- hash: "631c6034372c2e7675ebce0ec415f230"
+ hash: "18eff632e106f632aad481ab40f985d7"
}
Frame {
msec: 2336
- hash: "631c6034372c2e7675ebce0ec415f230"
+ hash: "18eff632e106f632aad481ab40f985d7"
}
Key {
type: 6
@@ -838,27 +838,27 @@ VisualTest {
}
Frame {
msec: 2352
- hash: "ea5c3cdde73009e1bd46e71e4cc3bf0f"
+ hash: "eaabd4617081e3bc68a5b9099c63272a"
}
Frame {
msec: 2368
- hash: "ea5c3cdde73009e1bd46e71e4cc3bf0f"
+ hash: "eaabd4617081e3bc68a5b9099c63272a"
}
Frame {
msec: 2384
- hash: "ea5c3cdde73009e1bd46e71e4cc3bf0f"
+ hash: "eaabd4617081e3bc68a5b9099c63272a"
}
Frame {
msec: 2400
- hash: "ea5c3cdde73009e1bd46e71e4cc3bf0f"
+ hash: "eaabd4617081e3bc68a5b9099c63272a"
}
Frame {
msec: 2416
- hash: "ea5c3cdde73009e1bd46e71e4cc3bf0f"
+ hash: "eaabd4617081e3bc68a5b9099c63272a"
}
Frame {
msec: 2432
- hash: "ea5c3cdde73009e1bd46e71e4cc3bf0f"
+ hash: "eaabd4617081e3bc68a5b9099c63272a"
}
Key {
type: 7
@@ -870,19 +870,19 @@ VisualTest {
}
Frame {
msec: 2448
- hash: "ea5c3cdde73009e1bd46e71e4cc3bf0f"
+ hash: "eaabd4617081e3bc68a5b9099c63272a"
}
Frame {
msec: 2464
- hash: "ea5c3cdde73009e1bd46e71e4cc3bf0f"
+ hash: "eaabd4617081e3bc68a5b9099c63272a"
}
Frame {
msec: 2480
- hash: "ea5c3cdde73009e1bd46e71e4cc3bf0f"
+ hash: "eaabd4617081e3bc68a5b9099c63272a"
}
Frame {
msec: 2496
- hash: "ea5c3cdde73009e1bd46e71e4cc3bf0f"
+ hash: "eaabd4617081e3bc68a5b9099c63272a"
}
Key {
type: 6
@@ -894,15 +894,15 @@ VisualTest {
}
Frame {
msec: 2512
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
Frame {
msec: 2528
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
Frame {
msec: 2544
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
Key {
type: 7
@@ -914,130 +914,130 @@ VisualTest {
}
Frame {
msec: 2560
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
Frame {
msec: 2576
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
Frame {
msec: 2592
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
Frame {
msec: 2608
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
Frame {
msec: 2624
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
Frame {
msec: 2640
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
Frame {
msec: 2656
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
Frame {
msec: 2672
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
Frame {
msec: 2688
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
Frame {
msec: 2704
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
Frame {
msec: 2720
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
Frame {
msec: 2736
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
Frame {
msec: 2752
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
Frame {
msec: 2768
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
Frame {
msec: 2784
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
Frame {
msec: 2800
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
Frame {
msec: 2816
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
Frame {
msec: 2832
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
Frame {
msec: 2848
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
Frame {
msec: 2864
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
Frame {
msec: 2880
- image: "echoMode.2.png"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
Frame {
msec: 2896
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ image: "echoMode.3.png"
}
Frame {
msec: 2912
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
Frame {
msec: 2928
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
Frame {
msec: 2944
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
Frame {
msec: 2960
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
Frame {
msec: 2976
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
Frame {
msec: 2992
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
Frame {
msec: 3008
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
Frame {
msec: 3024
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
Frame {
msec: 3040
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
Frame {
msec: 3056
- hash: "91ef7f08d8fec2e0d353b1bf5da99c41"
+ hash: "fec019ea87914d30b5bf4754ce8ba916"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/hAlign.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/hAlign.0.png
new file mode 100644
index 0000000000..6a32f0d550
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/hAlign.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/hAlign.qml b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/hAlign.qml
index 4c402eaf17..fd64d642fa 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/hAlign.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/hAlign.qml
@@ -6,102 +6,102 @@ VisualTest {
}
Frame {
msec: 16
- hash: "840c5f54c105f90c7b0c2254fee2e434"
+ image: "hAlign.0.png"
}
Frame {
msec: 32
- hash: "840c5f54c105f90c7b0c2254fee2e434"
+ hash: "043c40378d2707bd231a448cd242aa3c"
}
Frame {
msec: 48
- hash: "840c5f54c105f90c7b0c2254fee2e434"
+ hash: "043c40378d2707bd231a448cd242aa3c"
}
Frame {
msec: 64
- hash: "840c5f54c105f90c7b0c2254fee2e434"
+ hash: "043c40378d2707bd231a448cd242aa3c"
}
Frame {
msec: 80
- hash: "840c5f54c105f90c7b0c2254fee2e434"
+ hash: "043c40378d2707bd231a448cd242aa3c"
}
Frame {
msec: 96
- hash: "840c5f54c105f90c7b0c2254fee2e434"
+ hash: "043c40378d2707bd231a448cd242aa3c"
}
Frame {
msec: 112
- hash: "840c5f54c105f90c7b0c2254fee2e434"
+ hash: "043c40378d2707bd231a448cd242aa3c"
}
Frame {
msec: 128
- hash: "840c5f54c105f90c7b0c2254fee2e434"
+ hash: "043c40378d2707bd231a448cd242aa3c"
}
Frame {
msec: 144
- hash: "840c5f54c105f90c7b0c2254fee2e434"
+ hash: "043c40378d2707bd231a448cd242aa3c"
}
Frame {
msec: 160
- hash: "840c5f54c105f90c7b0c2254fee2e434"
+ hash: "043c40378d2707bd231a448cd242aa3c"
}
Frame {
msec: 176
- hash: "840c5f54c105f90c7b0c2254fee2e434"
+ hash: "043c40378d2707bd231a448cd242aa3c"
}
Frame {
msec: 192
- hash: "840c5f54c105f90c7b0c2254fee2e434"
+ hash: "043c40378d2707bd231a448cd242aa3c"
}
Frame {
msec: 208
- hash: "840c5f54c105f90c7b0c2254fee2e434"
+ hash: "043c40378d2707bd231a448cd242aa3c"
}
Frame {
msec: 224
- hash: "840c5f54c105f90c7b0c2254fee2e434"
+ hash: "043c40378d2707bd231a448cd242aa3c"
}
Frame {
msec: 240
- hash: "840c5f54c105f90c7b0c2254fee2e434"
+ hash: "043c40378d2707bd231a448cd242aa3c"
}
Frame {
msec: 256
- hash: "840c5f54c105f90c7b0c2254fee2e434"
+ hash: "043c40378d2707bd231a448cd242aa3c"
}
Frame {
msec: 272
- hash: "840c5f54c105f90c7b0c2254fee2e434"
+ hash: "043c40378d2707bd231a448cd242aa3c"
}
Frame {
msec: 288
- hash: "840c5f54c105f90c7b0c2254fee2e434"
+ hash: "043c40378d2707bd231a448cd242aa3c"
}
Frame {
msec: 304
- hash: "840c5f54c105f90c7b0c2254fee2e434"
+ hash: "043c40378d2707bd231a448cd242aa3c"
}
Frame {
msec: 320
- hash: "840c5f54c105f90c7b0c2254fee2e434"
+ hash: "043c40378d2707bd231a448cd242aa3c"
}
Frame {
msec: 336
- hash: "840c5f54c105f90c7b0c2254fee2e434"
+ hash: "043c40378d2707bd231a448cd242aa3c"
}
Frame {
msec: 352
- hash: "840c5f54c105f90c7b0c2254fee2e434"
+ hash: "043c40378d2707bd231a448cd242aa3c"
}
Frame {
msec: 368
- hash: "840c5f54c105f90c7b0c2254fee2e434"
+ hash: "043c40378d2707bd231a448cd242aa3c"
}
Frame {
msec: 384
- hash: "840c5f54c105f90c7b0c2254fee2e434"
+ hash: "043c40378d2707bd231a448cd242aa3c"
}
Frame {
msec: 400
- hash: "840c5f54c105f90c7b0c2254fee2e434"
+ hash: "043c40378d2707bd231a448cd242aa3c"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.0.png
new file mode 100644
index 0000000000..6ca52b6792
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.1.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.1.png
new file mode 100644
index 0000000000..31d6b2cb90
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.10.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.10.png
new file mode 100644
index 0000000000..d89e2d87eb
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.10.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.11.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.11.png
new file mode 100644
index 0000000000..834516a997
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.11.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.2.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.2.png
new file mode 100644
index 0000000000..31d6b2cb90
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.3.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.3.png
new file mode 100644
index 0000000000..31d6b2cb90
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.4.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.4.png
new file mode 100644
index 0000000000..8147bda0b9
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.5.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.5.png
new file mode 100644
index 0000000000..c67e619b8c
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.6.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.6.png
new file mode 100644
index 0000000000..646855f1f3
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.6.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.7.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.7.png
new file mode 100644
index 0000000000..c1a9d5c927
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.7.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.8.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.8.png
new file mode 100644
index 0000000000..d6c92b76a5
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.8.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.9.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.9.png
new file mode 100644
index 0000000000..e798d3be10
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.9.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.qml b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.qml
new file mode 100644
index 0000000000..fc8a11566d
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-MAC/usingLineEdit.qml
@@ -0,0 +1,4335 @@
+import Qt.VisualTest 4.7
+
+VisualTest {
+ Frame {
+ msec: 0
+ }
+ Frame {
+ msec: 16
+ image: "usingLineEdit.0.png"
+ }
+ Frame {
+ msec: 32
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 48
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 64
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 80
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 96
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 112
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 128
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 144
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 160
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 176
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 192
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 208
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 224
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 240
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 256
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 272
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 288
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 304
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 320
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 336
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 352
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 368
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 384
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 400
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 416
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 432
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 448
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 464
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 480
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 496
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 512
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 528
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 544
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 560
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 576
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 592
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 608
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 624
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 640
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 656
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 672
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 688
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 704
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 720
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 736
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 752
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 768
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 784
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 800
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 816
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 832
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 848
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 864
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 880
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 896
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 912
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Frame {
+ msec: 928
+ hash: "b2bcfe5c299742bf7da166e9ae1e1126"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 85; y: 11
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 944
+ hash: "1e95a74868a748e11efdc6fbb500f6e8"
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 85; y: 11
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 960
+ hash: "1e95a74868a748e11efdc6fbb500f6e8"
+ }
+ Mouse {
+ type: 4
+ button: 1
+ buttons: 1
+ x: 85; y: 11
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 976
+ image: "usingLineEdit.1.png"
+ }
+ Frame {
+ msec: 992
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1008
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1024
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1040
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1056
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 85; y: 11
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1072
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1088
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1104
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1120
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1136
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1152
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1168
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1184
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1200
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1216
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1232
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1248
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1264
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1280
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1296
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1312
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1328
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1344
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1360
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Key {
+ type: 6
+ key: 16777249
+ modifiers: 0
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 1376
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1392
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1408
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1424
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1440
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1456
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1472
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1488
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1504
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1520
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1536
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1552
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1568
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1584
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1600
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1616
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1632
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1648
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1664
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1680
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1696
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1712
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1728
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1744
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1760
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1776
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1792
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1808
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1824
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1840
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1856
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1872
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1888
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1904
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1920
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1936
+ image: "usingLineEdit.2.png"
+ }
+ Frame {
+ msec: 1952
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1968
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 1984
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Key {
+ type: 6
+ key: 67
+ modifiers: 67108864
+ text: "03"
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 2000
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2016
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2032
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2048
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2064
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2080
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2096
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2112
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Key {
+ type: 7
+ key: 16777249
+ modifiers: 67108864
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Key {
+ type: 7
+ key: 67
+ modifiers: 0
+ text: "63"
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 2128
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2144
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2160
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2176
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2192
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2208
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2224
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2240
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2256
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2272
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2288
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2304
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2320
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2336
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2352
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2368
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2384
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2400
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2416
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2432
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2448
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2464
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2480
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Key {
+ type: 6
+ key: 16777233
+ modifiers: 0
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 2496
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2512
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2528
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2544
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2560
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2576
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Key {
+ type: 7
+ key: 16777233
+ modifiers: 0
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 2592
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2608
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2624
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2640
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2656
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2672
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2688
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2704
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2720
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2736
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2752
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2768
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2784
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Key {
+ type: 6
+ key: 16777249
+ modifiers: 0
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 2800
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2816
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2832
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2848
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2864
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2880
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2896
+ image: "usingLineEdit.3.png"
+ }
+ Frame {
+ msec: 2912
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2928
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2944
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2960
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2976
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 2992
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 3008
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 3024
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 3040
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 3056
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 3072
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 3088
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 3104
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 3120
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 3136
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 3152
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 3168
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 3184
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 3200
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Frame {
+ msec: 3216
+ hash: "c346bd1c6a8c04dff75bc14882a4d964"
+ }
+ Key {
+ type: 6
+ key: 86
+ modifiers: 67108864
+ text: "16"
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 3232
+ hash: "4e24e7e6a205160479b0d23057a50b37"
+ }
+ Frame {
+ msec: 3248
+ hash: "4e24e7e6a205160479b0d23057a50b37"
+ }
+ Frame {
+ msec: 3264
+ hash: "4e24e7e6a205160479b0d23057a50b37"
+ }
+ Frame {
+ msec: 3280
+ hash: "4e24e7e6a205160479b0d23057a50b37"
+ }
+ Frame {
+ msec: 3296
+ hash: "4e24e7e6a205160479b0d23057a50b37"
+ }
+ Frame {
+ msec: 3312
+ hash: "4e24e7e6a205160479b0d23057a50b37"
+ }
+ Frame {
+ msec: 3328
+ hash: "4e24e7e6a205160479b0d23057a50b37"
+ }
+ Key {
+ type: 7
+ key: 86
+ modifiers: 67108864
+ text: "16"
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 3344
+ hash: "4e24e7e6a205160479b0d23057a50b37"
+ }
+ Frame {
+ msec: 3360
+ hash: "4e24e7e6a205160479b0d23057a50b37"
+ }
+ Frame {
+ msec: 3376
+ hash: "4e24e7e6a205160479b0d23057a50b37"
+ }
+ Frame {
+ msec: 3392
+ hash: "4e24e7e6a205160479b0d23057a50b37"
+ }
+ Frame {
+ msec: 3408
+ hash: "4e24e7e6a205160479b0d23057a50b37"
+ }
+ Frame {
+ msec: 3424
+ hash: "4e24e7e6a205160479b0d23057a50b37"
+ }
+ Frame {
+ msec: 3440
+ hash: "4e24e7e6a205160479b0d23057a50b37"
+ }
+ Frame {
+ msec: 3456
+ hash: "4e24e7e6a205160479b0d23057a50b37"
+ }
+ Frame {
+ msec: 3472
+ hash: "4e24e7e6a205160479b0d23057a50b37"
+ }
+ Frame {
+ msec: 3488
+ hash: "4e24e7e6a205160479b0d23057a50b37"
+ }
+ Frame {
+ msec: 3504
+ hash: "4e24e7e6a205160479b0d23057a50b37"
+ }
+ Frame {
+ msec: 3520
+ hash: "4e24e7e6a205160479b0d23057a50b37"
+ }
+ Frame {
+ msec: 3536
+ hash: "4e24e7e6a205160479b0d23057a50b37"
+ }
+ Frame {
+ msec: 3552
+ hash: "4e24e7e6a205160479b0d23057a50b37"
+ }
+ Key {
+ type: 6
+ key: 86
+ modifiers: 67108864
+ text: "16"
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 3568
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 3584
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 3600
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 3616
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 3632
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 3648
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 3664
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 3680
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Key {
+ type: 7
+ key: 86
+ modifiers: 67108864
+ text: "16"
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 3696
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 3712
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 3728
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 3744
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 3760
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 3776
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 3792
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 3808
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 3824
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 3840
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 3856
+ image: "usingLineEdit.4.png"
+ }
+ Frame {
+ msec: 3872
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 3888
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 3904
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 3920
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 3936
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 3952
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 3968
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 3984
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4000
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4016
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4032
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4048
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4064
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4080
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4096
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4112
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4128
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4144
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4160
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4176
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4192
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Key {
+ type: 7
+ key: 16777249
+ modifiers: 67108864
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 4208
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4224
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4240
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4256
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4272
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4288
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4304
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4320
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4336
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4352
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4368
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4384
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4400
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4416
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4432
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4448
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4464
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4480
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4496
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4512
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4528
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4544
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4560
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4576
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4592
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4608
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4624
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4640
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4656
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4672
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4688
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Frame {
+ msec: 4704
+ hash: "c6354c09a2bdf6ff23cae30640abdd65"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 69; y: 40
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4720
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 4736
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 4752
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 4768
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 4784
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 4800
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 69; y: 40
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4816
+ image: "usingLineEdit.5.png"
+ }
+ Frame {
+ msec: 4832
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 4848
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 4864
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 4880
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 4896
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 4912
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 4928
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 4944
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 4960
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 4976
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 4992
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 5008
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 5024
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 5040
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 5056
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 5072
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 5088
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 5104
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 5120
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 5136
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 5152
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 5168
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 5184
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 5200
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 5216
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 5232
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 5248
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 5264
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 5280
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 5296
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 5312
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 5328
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 5344
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Frame {
+ msec: 5360
+ hash: "b7e9475cc88b099f9e17b67f4d0c8ed0"
+ }
+ Key {
+ type: 6
+ key: 16777236
+ modifiers: 0
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 5376
+ hash: "5435254889b22b00b043f0d748021369"
+ }
+ Frame {
+ msec: 5392
+ hash: "5435254889b22b00b043f0d748021369"
+ }
+ Frame {
+ msec: 5408
+ hash: "5435254889b22b00b043f0d748021369"
+ }
+ Frame {
+ msec: 5424
+ hash: "5435254889b22b00b043f0d748021369"
+ }
+ Frame {
+ msec: 5440
+ hash: "5435254889b22b00b043f0d748021369"
+ }
+ Frame {
+ msec: 5456
+ hash: "5435254889b22b00b043f0d748021369"
+ }
+ Frame {
+ msec: 5472
+ hash: "5435254889b22b00b043f0d748021369"
+ }
+ Frame {
+ msec: 5488
+ hash: "5435254889b22b00b043f0d748021369"
+ }
+ Frame {
+ msec: 5504
+ hash: "5435254889b22b00b043f0d748021369"
+ }
+ Frame {
+ msec: 5520
+ hash: "5435254889b22b00b043f0d748021369"
+ }
+ Frame {
+ msec: 5536
+ hash: "5435254889b22b00b043f0d748021369"
+ }
+ Frame {
+ msec: 5552
+ hash: "5435254889b22b00b043f0d748021369"
+ }
+ Frame {
+ msec: 5568
+ hash: "5435254889b22b00b043f0d748021369"
+ }
+ Frame {
+ msec: 5584
+ hash: "5435254889b22b00b043f0d748021369"
+ }
+ Frame {
+ msec: 5600
+ hash: "5435254889b22b00b043f0d748021369"
+ }
+ Frame {
+ msec: 5616
+ hash: "5435254889b22b00b043f0d748021369"
+ }
+ Key {
+ type: 7
+ key: 16777236
+ modifiers: 0
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Key {
+ type: 6
+ key: 16777236
+ modifiers: 0
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 5632
+ hash: "94fa3848acc33accfb607ce31029f06d"
+ }
+ Frame {
+ msec: 5648
+ hash: "94fa3848acc33accfb607ce31029f06d"
+ }
+ Key {
+ type: 7
+ key: 16777236
+ modifiers: 0
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Key {
+ type: 6
+ key: 16777236
+ modifiers: 0
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 5664
+ hash: "1ea423dd8084001f2357f1613a77daa4"
+ }
+ Frame {
+ msec: 5680
+ hash: "1ea423dd8084001f2357f1613a77daa4"
+ }
+ Key {
+ type: 7
+ key: 16777236
+ modifiers: 0
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Key {
+ type: 6
+ key: 16777236
+ modifiers: 0
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 5696
+ hash: "b0f808e85cc5721473da7cd84b1987dc"
+ }
+ Frame {
+ msec: 5712
+ hash: "b0f808e85cc5721473da7cd84b1987dc"
+ }
+ Key {
+ type: 7
+ key: 16777236
+ modifiers: 0
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Key {
+ type: 6
+ key: 16777236
+ modifiers: 0
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 5728
+ hash: "0667aaf2eb49c2375b831301fefb0035"
+ }
+ Frame {
+ msec: 5744
+ hash: "0667aaf2eb49c2375b831301fefb0035"
+ }
+ Key {
+ type: 7
+ key: 16777236
+ modifiers: 0
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Key {
+ type: 6
+ key: 16777236
+ modifiers: 0
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 5760
+ hash: "7680aca6b9feccc7e73efa79c1473ce8"
+ }
+ Frame {
+ msec: 5776
+ image: "usingLineEdit.6.png"
+ }
+ Key {
+ type: 7
+ key: 16777236
+ modifiers: 0
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Key {
+ type: 6
+ key: 16777236
+ modifiers: 0
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 5792
+ hash: "fbbc99bf6a697d60ef348148c0a48bc2"
+ }
+ Frame {
+ msec: 5808
+ hash: "fbbc99bf6a697d60ef348148c0a48bc2"
+ }
+ Key {
+ type: 7
+ key: 16777236
+ modifiers: 0
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Key {
+ type: 6
+ key: 16777236
+ modifiers: 0
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 5824
+ hash: "9550d8fab2512470dd9dde62f3494450"
+ }
+ Frame {
+ msec: 5840
+ hash: "9550d8fab2512470dd9dde62f3494450"
+ }
+ Key {
+ type: 7
+ key: 16777236
+ modifiers: 0
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 5856
+ hash: "9550d8fab2512470dd9dde62f3494450"
+ }
+ Key {
+ type: 6
+ key: 16777236
+ modifiers: 0
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 5872
+ hash: "ab79f5095d60f5cef526a074ef6d4e96"
+ }
+ Frame {
+ msec: 5888
+ hash: "ab79f5095d60f5cef526a074ef6d4e96"
+ }
+ Key {
+ type: 7
+ key: 16777236
+ modifiers: 0
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Key {
+ type: 6
+ key: 16777236
+ modifiers: 0
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 5904
+ hash: "4e6ef470ed2c2a2418a4838c6e4ae64b"
+ }
+ Key {
+ type: 7
+ key: 16777236
+ modifiers: 0
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 5920
+ hash: "4e6ef470ed2c2a2418a4838c6e4ae64b"
+ }
+ Frame {
+ msec: 5936
+ hash: "4e6ef470ed2c2a2418a4838c6e4ae64b"
+ }
+ Frame {
+ msec: 5952
+ hash: "4e6ef470ed2c2a2418a4838c6e4ae64b"
+ }
+ Frame {
+ msec: 5968
+ hash: "4e6ef470ed2c2a2418a4838c6e4ae64b"
+ }
+ Frame {
+ msec: 5984
+ hash: "4e6ef470ed2c2a2418a4838c6e4ae64b"
+ }
+ Frame {
+ msec: 6000
+ hash: "4e6ef470ed2c2a2418a4838c6e4ae64b"
+ }
+ Frame {
+ msec: 6016
+ hash: "4e6ef470ed2c2a2418a4838c6e4ae64b"
+ }
+ Frame {
+ msec: 6032
+ hash: "4e6ef470ed2c2a2418a4838c6e4ae64b"
+ }
+ Frame {
+ msec: 6048
+ hash: "4e6ef470ed2c2a2418a4838c6e4ae64b"
+ }
+ Key {
+ type: 6
+ key: 16777249
+ modifiers: 0
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 6064
+ hash: "4e6ef470ed2c2a2418a4838c6e4ae64b"
+ }
+ Frame {
+ msec: 6080
+ hash: "4e6ef470ed2c2a2418a4838c6e4ae64b"
+ }
+ Frame {
+ msec: 6096
+ hash: "4e6ef470ed2c2a2418a4838c6e4ae64b"
+ }
+ Frame {
+ msec: 6112
+ hash: "4e6ef470ed2c2a2418a4838c6e4ae64b"
+ }
+ Frame {
+ msec: 6128
+ hash: "4e6ef470ed2c2a2418a4838c6e4ae64b"
+ }
+ Frame {
+ msec: 6144
+ hash: "4e6ef470ed2c2a2418a4838c6e4ae64b"
+ }
+ Key {
+ type: 6
+ key: 16777234
+ modifiers: 67108864
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 6160
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6176
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6192
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6208
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6224
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6240
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6256
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6272
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6288
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6304
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6320
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6336
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6352
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6368
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6384
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6400
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Key {
+ type: 7
+ key: 16777234
+ modifiers: 67108864
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Key {
+ type: 6
+ key: 16777234
+ modifiers: 67108864
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 6416
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6432
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Key {
+ type: 7
+ key: 16777234
+ modifiers: 67108864
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Key {
+ type: 6
+ key: 16777234
+ modifiers: 67108864
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 6448
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6464
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Key {
+ type: 7
+ key: 16777234
+ modifiers: 67108864
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Key {
+ type: 6
+ key: 16777234
+ modifiers: 67108864
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Key {
+ type: 7
+ key: 16777234
+ modifiers: 67108864
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 6480
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6496
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6512
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6528
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6544
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6560
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6576
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6592
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6608
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6624
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6640
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6656
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6672
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6688
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6704
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6720
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6736
+ image: "usingLineEdit.7.png"
+ }
+ Frame {
+ msec: 6752
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6768
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6784
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Key {
+ type: 6
+ key: 16777234
+ modifiers: 67108864
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 6800
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Key {
+ type: 7
+ key: 16777234
+ modifiers: 67108864
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 6816
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6832
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6848
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6864
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6880
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6896
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6912
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6928
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Frame {
+ msec: 6944
+ hash: "ed2a8fae3e94e2f90232d172246d3783"
+ }
+ Key {
+ type: 6
+ key: 16777236
+ modifiers: 67108864
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 6960
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 6976
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 6992
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7008
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Key {
+ type: 7
+ key: 16777236
+ modifiers: 67108864
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 7024
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7040
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7056
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7072
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7088
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Key {
+ type: 6
+ key: 16777236
+ modifiers: 67108864
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 7104
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7120
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7136
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7152
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Key {
+ type: 7
+ key: 16777236
+ modifiers: 67108864
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 7168
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7184
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7200
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7216
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7232
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7248
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7264
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Key {
+ type: 6
+ key: 16777236
+ modifiers: 67108864
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 7280
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7296
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7312
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7328
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7344
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Key {
+ type: 7
+ key: 16777236
+ modifiers: 67108864
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 7360
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7376
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7392
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7408
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7424
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7440
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7456
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7472
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7488
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7504
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7520
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Key {
+ type: 7
+ key: 16777249
+ modifiers: 67108864
+ text: ""
+ autorep: false
+ count: 1
+ }
+ Frame {
+ msec: 7536
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7552
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7568
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7584
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7600
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7616
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7632
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7648
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7664
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7680
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7696
+ image: "usingLineEdit.8.png"
+ }
+ Frame {
+ msec: 7712
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7728
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7744
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7760
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7776
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7792
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7808
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7824
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7840
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7856
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7872
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7888
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7904
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7920
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7936
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7952
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7968
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 7984
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 8000
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 8016
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 8032
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 8048
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 8064
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 8080
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 8096
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 8112
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 8128
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 8144
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 8160
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 8176
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 8192
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 8208
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 8224
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 8240
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 8256
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 8272
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 8288
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 8304
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 8320
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 8336
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 8352
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 8368
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 8384
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 8400
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 8416
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 8432
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 8448
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 8464
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 8480
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Frame {
+ msec: 8496
+ hash: "f1c4f46ee86ce1eb24fcd72106da0248"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 61; y: 38
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 8512
+ hash: "e779fc73a3ca131452f62e889d5c96ea"
+ }
+ Frame {
+ msec: 8528
+ hash: "e779fc73a3ca131452f62e889d5c96ea"
+ }
+ Frame {
+ msec: 8544
+ hash: "e779fc73a3ca131452f62e889d5c96ea"
+ }
+ Frame {
+ msec: 8560
+ hash: "e779fc73a3ca131452f62e889d5c96ea"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 60; y: 38
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 58; y: 38
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 8576
+ hash: "e779fc73a3ca131452f62e889d5c96ea"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 46; y: 38
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 8592
+ hash: "400b446983d944bac62889fb47e8d405"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 41; y: 38
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 40; y: 38
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 8608
+ hash: "400b446983d944bac62889fb47e8d405"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 32; y: 38
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 8624
+ hash: "769278730ba7e2a31333496a0c99499f"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 31; y: 38
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 30; y: 38
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 8640
+ hash: "769278730ba7e2a31333496a0c99499f"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 29; y: 38
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 8656
+ image: "usingLineEdit.9.png"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 28; y: 38
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 27; y: 38
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 8672
+ hash: "c193a6f52a967c97961df08ebffe50c1"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 26; y: 38
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 8688
+ hash: "c193a6f52a967c97961df08ebffe50c1"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 25; y: 38
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 24; y: 38
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 8704
+ hash: "c193a6f52a967c97961df08ebffe50c1"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 23; y: 38
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 22; y: 38
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 8720
+ hash: "c193a6f52a967c97961df08ebffe50c1"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 20; y: 38
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 19; y: 38
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 8736
+ hash: "ce0d865bf18c5c3ff93bda82f95e97c2"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 18; y: 38
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 17; y: 38
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 8752
+ hash: "ce0d865bf18c5c3ff93bda82f95e97c2"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 16; y: 38
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 15; y: 37
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 8768
+ hash: "ce0d865bf18c5c3ff93bda82f95e97c2"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 14; y: 37
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 13; y: 37
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 8784
+ hash: "ce0d865bf18c5c3ff93bda82f95e97c2"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 12; y: 37
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 11; y: 37
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 8800
+ hash: "ce0d865bf18c5c3ff93bda82f95e97c2"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 10; y: 37
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 8; y: 37
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 8816
+ hash: "af2a9c17451a89153e04418e056d9ea5"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 6; y: 37
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 5; y: 36
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 8832
+ hash: "749a1ccf2050c809be5e3820d3b2fba9"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 3; y: 36
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 2; y: 36
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 8848
+ hash: "74f183256682200a804baa620a6ce978"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 0; y: 36
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: -1; y: 36
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 8864
+ hash: "9d837fb68c47ac3659b93e9f77cea0af"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: -2; y: 36
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: -3; y: 36
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 8880
+ hash: "2dc20ba694548e05c80383d0fcc429fc"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: -5; y: 36
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: -6; y: 36
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 8896
+ hash: "0f5b95fbbdd932c8dbfaffd0cdd44dec"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: -7; y: 36
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: -9; y: 36
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 8912
+ hash: "dd9e9d86eacd44b19c6c9c64c2abf007"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: -10; y: 36
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: -11; y: 36
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 8928
+ hash: "7c67140abcbe7b8a36a7324016377272"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: -12; y: 36
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: -13; y: 36
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 8944
+ hash: "a085e2633649f0328f109bc4143eaccc"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: -14; y: 36
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: -15; y: 36
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 8960
+ hash: "a085e2633649f0328f109bc4143eaccc"
+ }
+ Frame {
+ msec: 8976
+ hash: "a085e2633649f0328f109bc4143eaccc"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: -16; y: 36
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: -17; y: 36
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 8992
+ hash: "a085e2633649f0328f109bc4143eaccc"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: -18; y: 36
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9008
+ hash: "a085e2633649f0328f109bc4143eaccc"
+ }
+ Frame {
+ msec: 9024
+ hash: "a085e2633649f0328f109bc4143eaccc"
+ }
+ Frame {
+ msec: 9040
+ hash: "a085e2633649f0328f109bc4143eaccc"
+ }
+ Frame {
+ msec: 9056
+ hash: "a085e2633649f0328f109bc4143eaccc"
+ }
+ Frame {
+ msec: 9072
+ hash: "a085e2633649f0328f109bc4143eaccc"
+ }
+ Frame {
+ msec: 9088
+ hash: "a085e2633649f0328f109bc4143eaccc"
+ }
+ Frame {
+ msec: 9104
+ hash: "a085e2633649f0328f109bc4143eaccc"
+ }
+ Frame {
+ msec: 9120
+ hash: "a085e2633649f0328f109bc4143eaccc"
+ }
+ Frame {
+ msec: 9136
+ hash: "a085e2633649f0328f109bc4143eaccc"
+ }
+ Frame {
+ msec: 9152
+ hash: "a085e2633649f0328f109bc4143eaccc"
+ }
+ Frame {
+ msec: 9168
+ hash: "a085e2633649f0328f109bc4143eaccc"
+ }
+ Frame {
+ msec: 9184
+ hash: "a085e2633649f0328f109bc4143eaccc"
+ }
+ Frame {
+ msec: 9200
+ hash: "a085e2633649f0328f109bc4143eaccc"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: -17; y: 36
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9216
+ hash: "a085e2633649f0328f109bc4143eaccc"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: -16; y: 36
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9232
+ hash: "a085e2633649f0328f109bc4143eaccc"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: -14; y: 35
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: -13; y: 35
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9248
+ hash: "a085e2633649f0328f109bc4143eaccc"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: -11; y: 35
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: -10; y: 34
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9264
+ hash: "a085e2633649f0328f109bc4143eaccc"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: -8; y: 34
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: -7; y: 34
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9280
+ hash: "a085e2633649f0328f109bc4143eaccc"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: -6; y: 33
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: -5; y: 33
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9296
+ hash: "a085e2633649f0328f109bc4143eaccc"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: -3; y: 32
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: -1; y: 32
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9312
+ hash: "a085e2633649f0328f109bc4143eaccc"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 1; y: 31
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 3; y: 31
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9328
+ hash: "a085e2633649f0328f109bc4143eaccc"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 4; y: 31
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 6; y: 30
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9344
+ hash: "a085e2633649f0328f109bc4143eaccc"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 7; y: 30
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 8; y: 30
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9360
+ hash: "a085e2633649f0328f109bc4143eaccc"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 10; y: 30
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 11; y: 30
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9376
+ hash: "fe89231a1ac7f48eee7cea14167b6616"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 12; y: 30
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 14; y: 30
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9392
+ hash: "fe89231a1ac7f48eee7cea14167b6616"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 15; y: 30
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 17; y: 30
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9408
+ hash: "fe89231a1ac7f48eee7cea14167b6616"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 21; y: 30
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 24; y: 30
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9424
+ hash: "e816757e030c8927d6721295f8685162"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 27; y: 31
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 30; y: 31
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9440
+ hash: "48f3a7d217ff85ad6088e18c1b88d6d7"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 33; y: 32
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 35; y: 32
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9456
+ hash: "48f3a7d217ff85ad6088e18c1b88d6d7"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 38; y: 32
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 39; y: 33
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9472
+ hash: "6cb50f458ba606cc4204727a02e9191b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 43; y: 33
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 45; y: 33
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9488
+ hash: "6cb50f458ba606cc4204727a02e9191b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 48; y: 33
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 50; y: 33
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9504
+ hash: "936d1a2ceed861a48fb3dd0c54cb0982"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 51; y: 33
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 53; y: 33
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9520
+ hash: "936d1a2ceed861a48fb3dd0c54cb0982"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 55; y: 33
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9536
+ hash: "936d1a2ceed861a48fb3dd0c54cb0982"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 56; y: 33
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 58; y: 33
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9552
+ hash: "9fb9dbff35b91d65e1e7ce569baede55"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 61; y: 33
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 64; y: 33
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9568
+ hash: "9fb9dbff35b91d65e1e7ce569baede55"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 67; y: 33
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 70; y: 33
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9584
+ hash: "78038f8df4ef17a164172c5bce16527d"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 73; y: 33
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 74; y: 34
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9600
+ hash: "b390e534fe43678ff031ec9de32b50d0"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 76; y: 34
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9616
+ image: "usingLineEdit.10.png"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 77; y: 34
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 78; y: 34
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9632
+ hash: "b390e534fe43678ff031ec9de32b50d0"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 79; y: 34
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 80; y: 35
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9648
+ hash: "b390e534fe43678ff031ec9de32b50d0"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 81; y: 35
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 84; y: 35
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9664
+ hash: "94fa3848acc33accfb607ce31029f06d"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 85; y: 36
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 88; y: 36
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9680
+ hash: "b0f808e85cc5721473da7cd84b1987dc"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 89; y: 37
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 91; y: 37
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9696
+ hash: "7680aca6b9feccc7e73efa79c1473ce8"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 92; y: 37
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 94; y: 37
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9712
+ hash: "ab79f5095d60f5cef526a074ef6d4e96"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 95; y: 37
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 96; y: 37
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9728
+ hash: "35c718664fc8e817e26054c307f908f9"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 98; y: 38
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 100; y: 38
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9744
+ hash: "23267fdc8202daba400140e51f5e3bdc"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 102; y: 38
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 104; y: 38
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9760
+ hash: "0b2765ae503f0194e6e526ea6f9ed8f9"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 105; y: 39
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 108; y: 39
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9776
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 109; y: 39
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 110; y: 39
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9792
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 111; y: 39
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9808
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 112; y: 40
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9824
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 113; y: 40
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9840
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 114; y: 40
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9856
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 9872
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 115; y: 40
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9888
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 116; y: 40
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9904
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 117; y: 40
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9920
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 118; y: 40
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9936
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 9952
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 119; y: 40
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9968
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 120; y: 40
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 9984
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 121; y: 40
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 10000
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10016
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 122; y: 40
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 10032
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10048
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10064
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10080
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10096
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10112
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10128
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10144
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10160
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10176
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10192
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10208
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10224
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10240
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 122; y: 40
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 10256
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10272
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10288
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10304
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10320
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10336
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10352
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10368
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10384
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10400
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10416
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10432
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10448
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10464
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10480
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10496
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10512
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10528
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10544
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10560
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10576
+ image: "usingLineEdit.11.png"
+ }
+ Frame {
+ msec: 10592
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10608
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10624
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10640
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10656
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10672
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10688
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10704
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10720
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10736
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10752
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10768
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10784
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10800
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10816
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10832
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10848
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10864
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10880
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10896
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10912
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10928
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10944
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10960
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10976
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 10992
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 11008
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 11024
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 11040
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 11056
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 11072
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 11088
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 11104
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 11120
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 11136
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 11152
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 11168
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 11184
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 11200
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 11216
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 11232
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 11248
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+ Frame {
+ msec: 11264
+ hash: "6f6154528c95da216e1f3830de000195"
+ }
+}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.0.png
index 5ab78c0ea4..18dd55ea6c 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.1.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.1.png
index 3cd1c11149..9cc8b85c89 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.2.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.2.png
index c0e738e193..f7c23e2fd2 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.2.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.3.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.3.png
index a373ded9f9..a5bd6cce0d 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.3.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.4.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.4.png
index 647984d82b..fdcdf88ca5 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.4.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.5.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.5.png
new file mode 100644
index 0000000000..89fd161fad
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.qml b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.qml
index 6eb74eaf56..e14fb8269d 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/cursorDelegate.qml
@@ -6,115 +6,115 @@ VisualTest {
}
Frame {
msec: 16
- hash: "65bbc5da769f475d1c47bdedb92ba65e"
+ image: "cursorDelegate.0.png"
}
Frame {
msec: 32
- hash: "65bbc5da769f475d1c47bdedb92ba65e"
+ hash: "ea218f136c6c7a70f2a4da569fae92b0"
}
Frame {
msec: 48
- hash: "65bbc5da769f475d1c47bdedb92ba65e"
+ hash: "ea218f136c6c7a70f2a4da569fae92b0"
}
Frame {
msec: 64
- hash: "65bbc5da769f475d1c47bdedb92ba65e"
+ hash: "ea218f136c6c7a70f2a4da569fae92b0"
}
Frame {
msec: 80
- hash: "65bbc5da769f475d1c47bdedb92ba65e"
+ hash: "ea218f136c6c7a70f2a4da569fae92b0"
}
Frame {
msec: 96
- hash: "65bbc5da769f475d1c47bdedb92ba65e"
+ hash: "ea218f136c6c7a70f2a4da569fae92b0"
}
Frame {
msec: 112
- hash: "65bbc5da769f475d1c47bdedb92ba65e"
+ hash: "ea218f136c6c7a70f2a4da569fae92b0"
}
Frame {
msec: 128
- hash: "65bbc5da769f475d1c47bdedb92ba65e"
+ hash: "ea218f136c6c7a70f2a4da569fae92b0"
}
Frame {
msec: 144
- hash: "65bbc5da769f475d1c47bdedb92ba65e"
+ hash: "ea218f136c6c7a70f2a4da569fae92b0"
}
Frame {
msec: 160
- hash: "65bbc5da769f475d1c47bdedb92ba65e"
+ hash: "ea218f136c6c7a70f2a4da569fae92b0"
}
Frame {
msec: 176
- hash: "65bbc5da769f475d1c47bdedb92ba65e"
+ hash: "ea218f136c6c7a70f2a4da569fae92b0"
}
Frame {
msec: 192
- hash: "65bbc5da769f475d1c47bdedb92ba65e"
+ hash: "ea218f136c6c7a70f2a4da569fae92b0"
}
Frame {
msec: 208
- hash: "65bbc5da769f475d1c47bdedb92ba65e"
+ hash: "ea218f136c6c7a70f2a4da569fae92b0"
}
Frame {
msec: 224
- hash: "65bbc5da769f475d1c47bdedb92ba65e"
+ hash: "ea218f136c6c7a70f2a4da569fae92b0"
}
Frame {
msec: 240
- hash: "65bbc5da769f475d1c47bdedb92ba65e"
+ hash: "ea218f136c6c7a70f2a4da569fae92b0"
}
Frame {
msec: 256
- hash: "65bbc5da769f475d1c47bdedb92ba65e"
+ hash: "ea218f136c6c7a70f2a4da569fae92b0"
}
Frame {
msec: 272
- hash: "65bbc5da769f475d1c47bdedb92ba65e"
+ hash: "ea218f136c6c7a70f2a4da569fae92b0"
}
Frame {
msec: 288
- hash: "65bbc5da769f475d1c47bdedb92ba65e"
+ hash: "ea218f136c6c7a70f2a4da569fae92b0"
}
Frame {
msec: 304
- hash: "65bbc5da769f475d1c47bdedb92ba65e"
+ hash: "ea218f136c6c7a70f2a4da569fae92b0"
}
Frame {
msec: 320
- hash: "65bbc5da769f475d1c47bdedb92ba65e"
+ hash: "ea218f136c6c7a70f2a4da569fae92b0"
}
Frame {
msec: 336
- hash: "65bbc5da769f475d1c47bdedb92ba65e"
+ hash: "ea218f136c6c7a70f2a4da569fae92b0"
}
Frame {
msec: 352
- hash: "65bbc5da769f475d1c47bdedb92ba65e"
+ hash: "ea218f136c6c7a70f2a4da569fae92b0"
}
Frame {
msec: 368
- hash: "65bbc5da769f475d1c47bdedb92ba65e"
+ hash: "ea218f136c6c7a70f2a4da569fae92b0"
}
Frame {
msec: 384
- hash: "65bbc5da769f475d1c47bdedb92ba65e"
+ hash: "ea218f136c6c7a70f2a4da569fae92b0"
}
Frame {
msec: 400
- hash: "65bbc5da769f475d1c47bdedb92ba65e"
+ hash: "ea218f136c6c7a70f2a4da569fae92b0"
}
Frame {
msec: 416
- hash: "65bbc5da769f475d1c47bdedb92ba65e"
+ hash: "ea218f136c6c7a70f2a4da569fae92b0"
}
Frame {
msec: 432
- hash: "65bbc5da769f475d1c47bdedb92ba65e"
+ hash: "ea218f136c6c7a70f2a4da569fae92b0"
}
Frame {
msec: 448
- hash: "65bbc5da769f475d1c47bdedb92ba65e"
+ hash: "ea218f136c6c7a70f2a4da569fae92b0"
}
Key {
type: 6
@@ -126,23 +126,23 @@ VisualTest {
}
Frame {
msec: 464
- hash: "97eff9733db71f7c5d396969582c572b"
+ hash: "e0cce7628c07ad989161e77d87f7f511"
}
Frame {
msec: 480
- hash: "97eff9733db71f7c5d396969582c572b"
+ hash: "e0cce7628c07ad989161e77d87f7f511"
}
Frame {
msec: 496
- hash: "97eff9733db71f7c5d396969582c572b"
+ hash: "e0cce7628c07ad989161e77d87f7f511"
}
Frame {
msec: 512
- hash: "97eff9733db71f7c5d396969582c572b"
+ hash: "e0cce7628c07ad989161e77d87f7f511"
}
Frame {
msec: 528
- hash: "87902d32dba1439e71ce5f57f514748e"
+ hash: "b86c442f4a561503d34238465fd20aec"
}
Key {
type: 7
@@ -154,19 +154,19 @@ VisualTest {
}
Frame {
msec: 544
- hash: "cad95931a38718eb481a9175fdfec305"
+ hash: "36f5f4397549f151ebfc0295ca33f55f"
}
Frame {
msec: 560
- hash: "1dc99e5c7e4d2fa6b624b6df250b78fc"
+ hash: "1cc9682b652e65b547bbeb2b37f9d1e7"
}
Frame {
msec: 576
- hash: "5d5739beb039a83bebb2c41489166edf"
+ hash: "b3874acb58643e1bb70a0b579e517526"
}
Frame {
msec: 592
- hash: "6320c9a1c0013f5aa6180992b934ca59"
+ hash: "152b962f8a00b68459df073962a1a947"
}
Key {
type: 6
@@ -178,19 +178,19 @@ VisualTest {
}
Frame {
msec: 608
- hash: "9d9837c1f3779e5dab0dfeb1d11fdea1"
+ hash: "891f86211cdc5050881421613b199939"
}
Frame {
msec: 624
- hash: "9d868112eaf70ce02ce93603278a565d"
+ hash: "5862b5e1ed2d1905357adbc5a7f2ade9"
}
Frame {
msec: 640
- hash: "d2bccb3184d3bb42b91017410a8655b6"
+ hash: "2fd895e688fa1c8b2f0bbf6e7defdb2a"
}
Frame {
msec: 656
- hash: "68f8be3e16637fd39a35f0cebb62b74a"
+ hash: "66c31658d38604b3e2d424aea15b715d"
}
Key {
type: 7
@@ -202,19 +202,19 @@ VisualTest {
}
Frame {
msec: 672
- hash: "04f5781b57ed9fee32d5ef80dc33f4ff"
+ hash: "df5331bc225d5e6f443812d489b19324"
}
Frame {
msec: 688
- hash: "06cc2e24a848d441074de5ddff1c739a"
+ hash: "6ca6367bb314804598b6257fd8b49d28"
}
Frame {
msec: 704
- hash: "94526186deb7248ac9c747ede15b106d"
+ hash: "877f64d93ba9d0d31181c3600bc02f80"
}
Frame {
msec: 720
- hash: "1ac130517df314f4f44b9bde2d3dcc53"
+ hash: "6b3210a6e4f8c448e5d90c6dada7a114"
}
Key {
type: 6
@@ -226,19 +226,19 @@ VisualTest {
}
Frame {
msec: 736
- hash: "270ecf4900e94d60599ded230633aa02"
+ hash: "4e64391a8142f94cb1ae38082218af01"
}
Frame {
msec: 752
- hash: "ef2093584cbce9182b99f297fcd2465d"
+ hash: "7bc3285fc6a0275622a76e605e2f7609"
}
Frame {
msec: 768
- hash: "c445cf5f56213a712585934681d8af55"
+ hash: "895b45ca668e4fe112913d818f28631e"
}
Frame {
msec: 784
- hash: "9f0edb3871e015a549622e1b70d1b748"
+ hash: "98e49c0ade7408c3229489ba6681088b"
}
Key {
type: 7
@@ -250,23 +250,23 @@ VisualTest {
}
Frame {
msec: 800
- hash: "144c51d7aa47ea8cc8d79a97efa4b430"
+ hash: "98c7370ca0f570dbe23c2724cb4ddead"
}
Frame {
msec: 816
- hash: "34f768a7c99dfb3c8f0e1fb1a08a37ac"
+ hash: "a71a7684552b072754469f6ae16d18b6"
}
Frame {
msec: 832
- hash: "4f3970c4ad02b69f96c11610494e8a50"
+ hash: "9cf40ec30d20e2cf95de2bfede4e46c6"
}
Frame {
msec: 848
- hash: "815a1cf66f0c9eb47e244753eebb83ba"
+ hash: "ed1efc0873a05be9f0c001c9cab94414"
}
Frame {
msec: 864
- hash: "5db11f795c000b382fdc30726a711c65"
+ hash: "4909c38a27da00d9c6f0dafc52c45035"
}
Key {
type: 6
@@ -278,15 +278,15 @@ VisualTest {
}
Frame {
msec: 880
- hash: "67976ee172d0d55992c0e4734fbb7ccf"
+ hash: "81d4e7ca4265332555434fdd5f19c621"
}
Frame {
msec: 896
- hash: "c764e4d5317acbbf5118a08565e5d5fd"
+ hash: "c336bac65473a8b76cecca1854c94752"
}
Frame {
msec: 912
- hash: "a83f566d01b990e91f43bb63a58fb5b8"
+ hash: "8bf0b0c6bd2c0fbf7c9f3529a5b92ebc"
}
Key {
type: 7
@@ -298,23 +298,23 @@ VisualTest {
}
Frame {
msec: 928
- hash: "031282f352e01f23bc5f73bf8ce82c9a"
+ hash: "8b7f6b8eebd1d7648becb91d256ac475"
}
Frame {
msec: 944
- hash: "1f3dc1d3ad0304376eac5d60d3c226ee"
+ hash: "6fcc3b9dee14bcdd2b60a32f696eec05"
}
Frame {
msec: 960
- image: "cursorDelegate.0.png"
+ hash: "939ac75fa99f482509ee1bb6b93f2ed0"
}
Frame {
msec: 976
- hash: "7bae45481596788afde8866a3c97edd7"
+ image: "cursorDelegate.1.png"
}
Frame {
msec: 992
- hash: "7bae45481596788afde8866a3c97edd7"
+ hash: "87d666ee3bcf7a606e2aecb4954cfb28"
}
Key {
type: 6
@@ -326,15 +326,15 @@ VisualTest {
}
Frame {
msec: 1008
- hash: "7bae45481596788afde8866a3c97edd7"
+ hash: "87d666ee3bcf7a606e2aecb4954cfb28"
}
Frame {
msec: 1024
- hash: "7bae45481596788afde8866a3c97edd7"
+ hash: "87d666ee3bcf7a606e2aecb4954cfb28"
}
Frame {
msec: 1040
- hash: "7bae45481596788afde8866a3c97edd7"
+ hash: "87d666ee3bcf7a606e2aecb4954cfb28"
}
Key {
type: 7
@@ -346,23 +346,23 @@ VisualTest {
}
Frame {
msec: 1056
- hash: "7bae45481596788afde8866a3c97edd7"
+ hash: "87d666ee3bcf7a606e2aecb4954cfb28"
}
Frame {
msec: 1072
- hash: "a2ad07326fafcb3012cdb869f39af466"
+ hash: "3d6db6e3ee77ee75341ce16dc4a56c59"
}
Frame {
msec: 1088
- hash: "8622eb25a6da44926b5161bce213a483"
+ hash: "ff43ccdb14ae4d12ffead2eb261a5056"
}
Frame {
msec: 1104
- hash: "ccbd4d1e4865ebd9b0fe923e6ab05e5c"
+ hash: "cd14458426f94efbbc729112e6a481c5"
}
Frame {
msec: 1120
- hash: "775cd79b012f79b773449a0ad8457149"
+ hash: "6bd66d118ff27b0cea7944ea22c727c9"
}
Key {
type: 6
@@ -374,23 +374,23 @@ VisualTest {
}
Frame {
msec: 1136
- hash: "2a4ed061e512c5afd11072c4b707f707"
+ hash: "c294f1f7b7dd842d797ec5346f8794b3"
}
Frame {
msec: 1152
- hash: "c855df7b17811f25fd17e4fb108c02e1"
+ hash: "185228bb06e052a279bc0481760a1920"
}
Frame {
msec: 1168
- hash: "46c37d8e67ece5cae4f766acf50f3ca3"
+ hash: "81b01e755b7fcbda18634b88052326e4"
}
Frame {
msec: 1184
- hash: "95a70f14ce01aae61190080ed3d55c77"
+ hash: "ff16045d2ae8a5e48440fe5094780987"
}
Frame {
msec: 1200
- hash: "87da182d1285f3613bb2e4673e701757"
+ hash: "01b2a227010cba52952763cd9fbc8c94"
}
Key {
type: 7
@@ -402,27 +402,27 @@ VisualTest {
}
Frame {
msec: 1216
- hash: "5b97f13f43e713a6fbe96bdca8969191"
+ hash: "3c6ffa5250e90c994e334745efa15b19"
}
Frame {
msec: 1232
- hash: "4d003182e7b7b0a05413b80f82a0fc41"
+ hash: "9656663feae42fced5646d8c21ad05ec"
}
Frame {
msec: 1248
- hash: "dba09e038291a8dfdc61911d6b4b9bdf"
+ hash: "95ecea8c39c38c2319a8a0de1c3c97b1"
}
Frame {
msec: 1264
- hash: "a2ae1e5cc6cd72fae70804e07df5a8a1"
+ hash: "7bc610d4efadf5ef603d0c62e81021b2"
}
Frame {
msec: 1280
- hash: "f1c2a24b6f0ebcf98122e8db1cdcb66f"
+ hash: "b5343907926d112165a1e8914fa12383"
}
Frame {
msec: 1296
- hash: "142dade1639655132435ae260b7935a0"
+ hash: "7b1be2c0e963b92accd35606cd9521f5"
}
Key {
type: 6
@@ -434,7 +434,7 @@ VisualTest {
}
Frame {
msec: 1312
- hash: "e80c0175d947bceef4bf53b60bf7eac0"
+ hash: "2004b105d197f736f68eef070574767d"
}
Key {
type: 6
@@ -446,19 +446,19 @@ VisualTest {
}
Frame {
msec: 1328
- hash: "de912cd8bd2fe762ec6b1ec819732507"
+ hash: "dbafec45c35739835180f7644f4bf66c"
}
Frame {
msec: 1344
- hash: "d3fa9dfab37ee26572d25bcbe8c66b72"
+ hash: "ed86b86cc0eb1c8c05b0ddb063937270"
}
Frame {
msec: 1360
- hash: "33bdb2817a2858ce430813d0774f0172"
+ hash: "bdc640c90728a4f39c22e0a415c595b4"
}
Frame {
msec: 1376
- hash: "4f10f0ffb6b1c87155eedd53af36c74f"
+ hash: "2af0c828b767942ba1745dd9838a54b5"
}
Key {
type: 6
@@ -470,31 +470,31 @@ VisualTest {
}
Frame {
msec: 1392
- hash: "1b94be0de8412bd9380689895f290af7"
+ hash: "547f4cbf1637d997f50f755965dd4704"
}
Frame {
msec: 1408
- hash: "48b3a5e2b04c86a75f4b6595eb2c1f55"
+ hash: "ede46a74a6e5297454da63227684d6cf"
}
Frame {
msec: 1424
- hash: "d092fabd3dd51c718486e1e7dadaa0dc"
+ hash: "3a8747e0b26763c7bbc5ecd433c41d5a"
}
Frame {
msec: 1440
- hash: "243359437235563f1a60b8eaf63365b6"
+ hash: "0ae75d3cf890fe95e53f4c2c2eb0c660"
}
Frame {
msec: 1456
- hash: "a986c8ed8ad2d8b6aab2a001906ba2ad"
+ hash: "1014ed3a45803f4ca8dfd669137d3502"
}
Frame {
msec: 1472
- hash: "da5e06dc481e9cb7d9159a84d0cc150a"
+ hash: "0abf6b3183b4b85eabbcb3f2d4173473"
}
Frame {
msec: 1488
- hash: "1d70a05fce3a05477e21d22b127ae96a"
+ hash: "39dbf6788ad997531894fd5138953f21"
}
Key {
type: 7
@@ -506,51 +506,51 @@ VisualTest {
}
Frame {
msec: 1504
- hash: "913448213a07f6c8427c8e310d2026de"
+ hash: "0fd0841b32106155e25c274b47724d60"
}
Frame {
msec: 1520
- hash: "51bef5ae52977a935b66af4baf1da4e6"
+ hash: "9fa396cab1425ca03e394c681ccb798d"
}
Frame {
msec: 1536
- hash: "367bc25f868c23005d7fe903a9ea681b"
+ hash: "3c62d2a016bba6cd3f83982dcb7c1582"
}
Frame {
msec: 1552
- hash: "3c25181652e788d128ed571ca4fea0b1"
+ hash: "ee6f16b9165eb663ae78716f723e5b16"
}
Frame {
msec: 1568
- hash: "0218f939ff2b8c0bc22a537ed0f053f0"
+ hash: "dd2c49caa8b8f690fd8a29aac7f85dc8"
}
Frame {
msec: 1584
- hash: "a3b765a823b2b3811273a1be90850533"
+ hash: "79343bd1b7472d75daad9ae9848b89ba"
}
Frame {
msec: 1600
- hash: "2a42a29774eb4f962d299f8c2c213d55"
+ hash: "4c087ae0614e4736130235eea0af5267"
}
Frame {
msec: 1616
- hash: "1f0ad54d0fe8fc27cadbaaeaa37364e0"
+ hash: "87d75b0e3bd197084f8d8c0601ba195d"
}
Frame {
msec: 1632
- hash: "04d6028d1b1a1178e5bf774db8eef2c6"
+ hash: "ccd66bab965c78aa3b39728aef0648c6"
}
Frame {
msec: 1648
- hash: "c325e46e89e8df04e2c3d8bf111c5f09"
+ hash: "d311116fafc9693e6c55eb2c1273a487"
}
Frame {
msec: 1664
- hash: "70e6223ce16a797e2c56e21ad74b188b"
+ hash: "a4c1bc9c9f987bacfd19ea64f9a3ec2c"
}
Frame {
msec: 1680
- hash: "0fb8762fd28564b84b83c17d749a3645"
+ hash: "a6b86821b0563c06b478b62037edffe5"
}
Key {
type: 6
@@ -562,31 +562,31 @@ VisualTest {
}
Frame {
msec: 1696
- hash: "ef5d19b59792ea8822e2391fe0d91dbd"
+ hash: "30b8fd8f9d3e63c9101cf3558fc7f0d6"
}
Frame {
msec: 1712
- hash: "70ad15030164be8afbb4ab22d1ae5f5f"
+ hash: "8224ae61cfce9bbf9f69677071285ddc"
}
Frame {
msec: 1728
- hash: "a5dfb8bd4b681e0d8d2c082821a2a976"
+ hash: "1b7408ad665e5e316893397c9362e069"
}
Frame {
msec: 1744
- hash: "864781fbb8673b1e603df015f2d88601"
+ hash: "7ace1472840c3184263fe23cec5ba929"
}
Frame {
msec: 1760
- hash: "0bdb6a155cdd14f4dce9fde3c5116dde"
+ hash: "ea3f542c80564ad841675197b51272c9"
}
Frame {
msec: 1776
- hash: "5421f521a9bdccc8478fcee97e0dbc99"
+ hash: "0c4989dbd8d4008c1834140e28b98405"
}
Frame {
msec: 1792
- hash: "c5f29693dd017932767f37e2fb2f22f2"
+ hash: "337452c36385bebadb35498172eb82ef"
}
Key {
type: 7
@@ -598,19 +598,19 @@ VisualTest {
}
Frame {
msec: 1808
- hash: "b5e8abeaec33407e673f8021212528b1"
+ hash: "030ff7472ad4d566166e99aeb1daf1ad"
}
Frame {
msec: 1824
- hash: "917c968e5ee8f0b25fdb175719d7dbfa"
+ hash: "59f7bb68de85445bad114caca87ae859"
}
Frame {
msec: 1840
- hash: "56495c63676b9f73004e76e38d60567e"
+ hash: "5c0e8905d830357ca7bc26c6383a2dcc"
}
Frame {
msec: 1856
- hash: "86f1ccdd7ff408c5b141d79797eea1fa"
+ hash: "b00e889ee28556eaca18a6d52b8b4c0c"
}
Key {
type: 7
@@ -622,7 +622,7 @@ VisualTest {
}
Frame {
msec: 1872
- hash: "9e9b32a9f71ab1aa4e87ddc323ccda03"
+ hash: "07d4cc37e71ff6fb34c1370db27bd0f9"
}
Key {
type: 6
@@ -634,43 +634,43 @@ VisualTest {
}
Frame {
msec: 1888
- hash: "360aef37452ce8f045659c227285cb82"
+ hash: "86d74cd53c541fde95b36a3899859272"
}
Frame {
msec: 1904
- hash: "805949377c620fa4310aa4328eba1f23"
+ hash: "82457df6a73b8aa32b567cac53d19679"
}
Frame {
msec: 1920
- image: "cursorDelegate.1.png"
+ hash: "63be8d924bace20717f87f7d260060e5"
}
Frame {
msec: 1936
- hash: "00df8110a2008ba77b7e0bf2130e5319"
+ image: "cursorDelegate.2.png"
}
Frame {
msec: 1952
- hash: "835f6f723577071461e41da1fd2e990a"
+ hash: "d274989f514174cda3316fa6650aed05"
}
Frame {
msec: 1968
- hash: "6876cafa4d6d3a7d387602eba4d26db1"
+ hash: "f1cae5982318ec621423513f7a090adf"
}
Frame {
msec: 1984
- hash: "5570ae1e700cdf42ba516be69fbaadc0"
+ hash: "1b30dd4a817370d8b6f5908cef69eeb9"
}
Frame {
msec: 2000
- hash: "5570ae1e700cdf42ba516be69fbaadc0"
+ hash: "1b30dd4a817370d8b6f5908cef69eeb9"
}
Frame {
msec: 2016
- hash: "5570ae1e700cdf42ba516be69fbaadc0"
+ hash: "1b30dd4a817370d8b6f5908cef69eeb9"
}
Frame {
msec: 2032
- hash: "5570ae1e700cdf42ba516be69fbaadc0"
+ hash: "1b30dd4a817370d8b6f5908cef69eeb9"
}
Key {
type: 7
@@ -682,7 +682,7 @@ VisualTest {
}
Frame {
msec: 2048
- hash: "5570ae1e700cdf42ba516be69fbaadc0"
+ hash: "1b30dd4a817370d8b6f5908cef69eeb9"
}
Key {
type: 7
@@ -694,27 +694,27 @@ VisualTest {
}
Frame {
msec: 2064
- hash: "6876cafa4d6d3a7d387602eba4d26db1"
+ hash: "f1cae5982318ec621423513f7a090adf"
}
Frame {
msec: 2080
- hash: "835f6f723577071461e41da1fd2e990a"
+ hash: "d274989f514174cda3316fa6650aed05"
}
Frame {
msec: 2096
- hash: "00df8110a2008ba77b7e0bf2130e5319"
+ hash: "4c51c2e71ee1fef13b9ac5213b057cef"
}
Frame {
msec: 2112
- hash: "627206a252bd6fcbf57d9f1cde0506bb"
+ hash: "63be8d924bace20717f87f7d260060e5"
}
Frame {
msec: 2128
- hash: "805949377c620fa4310aa4328eba1f23"
+ hash: "82457df6a73b8aa32b567cac53d19679"
}
Frame {
msec: 2144
- hash: "360aef37452ce8f045659c227285cb82"
+ hash: "86d74cd53c541fde95b36a3899859272"
}
Key {
type: 6
@@ -726,27 +726,27 @@ VisualTest {
}
Frame {
msec: 2160
- hash: "0ac33070e0c736bc0fb5ab12fa444b5c"
+ hash: "9bfb6b9a2604b4c534539bc731abda10"
}
Frame {
msec: 2176
- hash: "520a544fd92f17a14380803e253b396f"
+ hash: "dfa52bb483388dfee56577968d013c8f"
}
Frame {
msec: 2192
- hash: "4a080a5154c517e6bcf24b3a1f1d7f2c"
+ hash: "ea77a49e7e246649248e19b72d6433c9"
}
Frame {
msec: 2208
- hash: "e83642b0793f5a790efca65ccf20a720"
+ hash: "348e6a82b1491739e72c5c361158a967"
}
Frame {
msec: 2224
- hash: "8210b9cbf19f519ee34f4bb1a6afce16"
+ hash: "bb52aa533659d770d01deb8bef5a8b4d"
}
Frame {
msec: 2240
- hash: "54d04e64af5c0a3d29f2dc8c0977ed3a"
+ hash: "082441b5fea02f2676ad4d53aefb6927"
}
Key {
type: 7
@@ -758,31 +758,31 @@ VisualTest {
}
Frame {
msec: 2256
- hash: "ae2a644f96bd7b2662ebcf4ebc33d930"
+ hash: "9194cd1399ceeda421944cd87182039b"
}
Frame {
msec: 2272
- hash: "718ac9cb5ef2992b06b34e957f987b7a"
+ hash: "edff1333eb3a0047c527503ab3dbe71c"
}
Frame {
msec: 2288
- hash: "a2e1dea5e5f37697c7ce1a9419b94f65"
+ hash: "e5c9931c8baf260d77f9cfcc1bb41101"
}
Frame {
msec: 2304
- hash: "c0eb56c72311263d892ce65331547531"
+ hash: "75c37de92c5af3305733a92d405a4ec8"
}
Frame {
msec: 2320
- hash: "585ad3efb7330de889b8cf56a51a0899"
+ hash: "f27082799d0860c660d16c3f9fe6e538"
}
Frame {
msec: 2336
- hash: "236e54ae31e5ee3d08a7bc9aeaef0d9b"
+ hash: "5d79ff6cac5bd6943b656964c1d78b00"
}
Frame {
msec: 2352
- hash: "d6218c8bb4da9d62bdb5d0cf5d7f8e37"
+ hash: "d58a1176858e49c89fc77bed260c6269"
}
Key {
type: 6
@@ -802,23 +802,23 @@ VisualTest {
}
Frame {
msec: 2368
- hash: "1dddd18a4ef66df9d9b431b2860e24d1"
+ hash: "70deb136fd364646e73390f0aa751baa"
}
Frame {
msec: 2384
- hash: "5b1b45e75f5a829b31c0b6eb0189da7c"
+ hash: "ed3bf83d975d6b8f830ce0b5a0ad64cc"
}
Frame {
msec: 2400
- hash: "062091bc7a5f3296c669614318b80fe7"
+ hash: "9007b93c9b9ae3612a0f97fe2e2ae825"
}
Frame {
msec: 2416
- hash: "836f37fe92a46233640e0bd2c0932fea"
+ hash: "c39f05a5471fb3a26f57feab2b99c8fa"
}
Frame {
msec: 2432
- hash: "f14ec1544a380fc9993b39754c23c2f4"
+ hash: "49cd710decb32599d7a9c8e0239bf9a5"
}
Key {
type: 6
@@ -830,23 +830,23 @@ VisualTest {
}
Frame {
msec: 2448
- hash: "2d549b5fea734e47682415df1717e6a6"
+ hash: "df3e2a44ed4e7cf6adb49f84b1d4fc53"
}
Frame {
msec: 2464
- hash: "824c5960260dd3ed7527709ebfb06d27"
+ hash: "5b7984204405b31a0262da011ff3903e"
}
Frame {
msec: 2480
- hash: "258f034fe1e71f25a92e667e05f53e82"
+ hash: "0dd2dc00c42eb7bb731d64e9a7188c83"
}
Frame {
msec: 2496
- hash: "c432e758e19c44d788cb38df6e4c6d69"
+ hash: "1b811aa744375668672fb8b4e0d75621"
}
Frame {
msec: 2512
- hash: "a1856592208f9a00385b13c44e1c4503"
+ hash: "f34c084f977a20fcf96eaf1e7b5423f7"
}
Key {
type: 7
@@ -858,23 +858,23 @@ VisualTest {
}
Frame {
msec: 2528
- hash: "2b4d40a0555df0b86f52d13790185459"
+ hash: "145b1c6526e04f02adf94eb5d0369ae0"
}
Frame {
msec: 2544
- hash: "b153143e6b16c47fa06663dc6b1034d6"
+ hash: "1b047f1cb4738188c10d8b05e636694a"
}
Frame {
msec: 2560
- hash: "ac52236c5d73aeae7c0834df1e6bd84e"
+ hash: "3f5921d19c63c7d434f0428cb155426e"
}
Frame {
msec: 2576
- hash: "136eeb348b0b96edc9aaf9fbea741973"
+ hash: "940a9ca625a813af3c9f74600b9dd668"
}
Frame {
msec: 2592
- hash: "4f8a1dfa8906de2bcdfbf5c3b29fbf9b"
+ hash: "3df53c013eae20a71e4337be5499ff65"
}
Key {
type: 6
@@ -886,15 +886,15 @@ VisualTest {
}
Frame {
msec: 2608
- hash: "7dc9726df2d112b46f4d9dbe66d534c7"
+ hash: "34e4524d132bbb2a9e4aaffa0982ad33"
}
Frame {
msec: 2624
- hash: "f64086ca0e83fa8bb0fae28065260fdc"
+ hash: "87942e371bd51726dbfa5a09fdd31631"
}
Frame {
msec: 2640
- hash: "5237dd2b79d71bbfa0a0d3963a7f42b7"
+ hash: "a2baf811e2b51215c4e5f88f0854f5a5"
}
Key {
type: 7
@@ -906,23 +906,23 @@ VisualTest {
}
Frame {
msec: 2656
- hash: "8dd435b577bb258979d33034885a8cd8"
+ hash: "cc12390ac2a3296c04f2538fb3b4cc00"
}
Frame {
msec: 2672
- hash: "2609c066b8f102b4189991bf7d01eaad"
+ hash: "f209d32ec1742194c8436c36230a8239"
}
Frame {
msec: 2688
- hash: "986fab22391264d04df9a55b18aee645"
+ hash: "444d87a6fc19b8f0e8dcda0615a484aa"
}
Frame {
msec: 2704
- hash: "0256423680aa0843fe8ec84f5e68fc9b"
+ hash: "2e492b973fffd68245c24d603d2a8221"
}
Frame {
msec: 2720
- hash: "b822bdcad69aa868f48b2bbf2d62e297"
+ hash: "742ab9c9d4d8e37337f237f792aba160"
}
Key {
type: 6
@@ -934,19 +934,19 @@ VisualTest {
}
Frame {
msec: 2736
- hash: "14effed70ca60233be9b2f6d0a1b5e6c"
+ hash: "74db3d75c0b30946b18edf5fc115dfce"
}
Frame {
msec: 2752
- hash: "1abaf2c36a0fb9f04606c0e191d113cf"
+ hash: "86685be3dbb2236676f767894c694a5a"
}
Frame {
msec: 2768
- hash: "cffb8ca29b0369d183d6461bf9e63fdf"
+ hash: "327351a6164fd566dd0f7ead05c7ea36"
}
Frame {
msec: 2784
- hash: "9378bebddb09036bec98ff7018dcf7c1"
+ hash: "ba9262ab3d8824e3a9cdcfe29059bbda"
}
Key {
type: 7
@@ -958,75 +958,75 @@ VisualTest {
}
Frame {
msec: 2800
- hash: "0c3823994ee8f838c26040118ba62622"
+ hash: "8c8aba2c44a7ea5b4d1e2206a3dbd6a2"
}
Frame {
msec: 2816
- hash: "d374547f47adc81a18428c7a79cb9cf2"
+ hash: "560067cbba922e2958bc7bae5ab93572"
}
Frame {
msec: 2832
- hash: "449c2996a2d0e74f2300adad619700bc"
+ hash: "566c84584e49c633fdada833ea386565"
}
Frame {
msec: 2848
- hash: "14379a320b6fc36de5d2a6776f1dc963"
+ hash: "615819749d92cb0b927e370c05321f5b"
}
Frame {
msec: 2864
- hash: "cb010a99ffa3b6df26c6cd263a21cfcd"
+ hash: "9f11ee25f10750cc2302e6b528ab68b9"
}
Frame {
msec: 2880
- image: "cursorDelegate.2.png"
+ hash: "5140d2ac5f1b361776fb335d43fcda1a"
}
Frame {
msec: 2896
- hash: "a445d23288d462009916e31f370a2068"
+ image: "cursorDelegate.3.png"
}
Frame {
msec: 2912
- hash: "8b3f2811300830e837797056f262bec2"
+ hash: "5fb75369681ac189b4de918dfa639f55"
}
Frame {
msec: 2928
- hash: "2303a27e72334cae84b4fe51a62974ba"
+ hash: "9da1688d1084f1588b6d203698c8a2b6"
}
Frame {
msec: 2944
- hash: "f3a9f3e74d2d83e38aee78cab7209bd6"
+ hash: "91bbae5a8fd04da71b1353f687c15d9f"
}
Frame {
msec: 2960
- hash: "ca4777127a535655f057af57cf3e8c7b"
+ hash: "d3c0a6ed0510abb6135fb2e61f8721d8"
}
Frame {
msec: 2976
- hash: "de2b65920fa9177a79019f33712c2275"
+ hash: "23e728398c03c805066766081e434d41"
}
Frame {
msec: 2992
- hash: "de2b65920fa9177a79019f33712c2275"
+ hash: "23e728398c03c805066766081e434d41"
}
Frame {
msec: 3008
- hash: "de2b65920fa9177a79019f33712c2275"
+ hash: "23e728398c03c805066766081e434d41"
}
Frame {
msec: 3024
- hash: "de2b65920fa9177a79019f33712c2275"
+ hash: "23e728398c03c805066766081e434d41"
}
Frame {
msec: 3040
- hash: "de2b65920fa9177a79019f33712c2275"
+ hash: "23e728398c03c805066766081e434d41"
}
Frame {
msec: 3056
- hash: "de2b65920fa9177a79019f33712c2275"
+ hash: "23e728398c03c805066766081e434d41"
}
Frame {
msec: 3072
- hash: "ca4777127a535655f057af57cf3e8c7b"
+ hash: "d3c0a6ed0510abb6135fb2e61f8721d8"
}
Key {
type: 6
@@ -1038,23 +1038,23 @@ VisualTest {
}
Frame {
msec: 3088
- hash: "83cfb141f6b77fa062443a442a5b2e9e"
+ hash: "d5519a015a697dcb1763748bd2789441"
}
Frame {
msec: 3104
- hash: "b3e262864238d03f988c9750cc74e48f"
+ hash: "d8ca000081bf565a4f3de5a5e94d894b"
}
Frame {
msec: 3120
- hash: "6ed2086ae01be46f0684bbecc05484c4"
+ hash: "03984ab7a25d80e24dd0650f881b8203"
}
Frame {
msec: 3136
- hash: "91f6dad8f05577af6e4f5f0aceb06b4b"
+ hash: "edfea780ea62d48ac69afa5e6cad00af"
}
Frame {
msec: 3152
- hash: "1bfb0c299c3c0db0518eaa54137c22b0"
+ hash: "b00a5d2424568d823eb7be0438dafa1f"
}
Key {
type: 7
@@ -1066,27 +1066,27 @@ VisualTest {
}
Frame {
msec: 3168
- hash: "37cc96ef4b760faadf76cc471f6ba49a"
+ hash: "76fda33dcea27a034ddfab61031d8de6"
}
Frame {
msec: 3184
- hash: "67c848bf93e845eaf5eebc9b8e57482c"
+ hash: "11b9e3a58fd2c6d86e61a5e3b7db04b4"
}
Frame {
msec: 3200
- hash: "e3906ad9b1dfbd1170364c11ff4b286f"
+ hash: "f7c583d00d7154d9e8af88bec706f97f"
}
Frame {
msec: 3216
- hash: "24dd59673c5659e3bf6f52723e1bcd07"
+ hash: "8680b8c69c544213fb8d55233bde4ce5"
}
Frame {
msec: 3232
- hash: "4b694f05f147bcf901a16807d4e3ec7c"
+ hash: "74fc148e3c466023e2449c6b1367bceb"
}
Frame {
msec: 3248
- hash: "9d9dbf34f6a67a49210caa249b8a1abb"
+ hash: "9495a0ffe7589351cfced8b26f6d64e4"
}
Key {
type: 6
@@ -1098,31 +1098,31 @@ VisualTest {
}
Frame {
msec: 3264
- hash: "5381cde4763aa45c97793124e42db6f5"
+ hash: "519c58c8c0f62d96005b49f68648565b"
}
Frame {
msec: 3280
- hash: "0f113c0263faa47428c4d16891ac4d4f"
+ hash: "609a2d8f02c8b42e0921a2a900edccbd"
}
Frame {
msec: 3296
- hash: "cc1767ec13803959333cd35bfb2d9119"
+ hash: "c54617fb7b21ef8dc2bc0d8492ec476e"
}
Frame {
msec: 3312
- hash: "ec1b4c71f9bd63ccf6d766b0b2f68b30"
+ hash: "096dc0d8b3ed47894ab0289bcfe3aa8f"
}
Frame {
msec: 3328
- hash: "114ad78597ede2afc4dd8bafa1d4df21"
+ hash: "5b725bb5951caa968d221fe7c5dd6370"
}
Frame {
msec: 3344
- hash: "d08dc22ddc707316483f09b796ea0380"
+ hash: "6733673178a1b85b22d22610a6f6c3d7"
}
Frame {
msec: 3360
- hash: "135b2b0f4e469b207e673d1e7086cd4f"
+ hash: "5efbed8f4de4387572c5a98ba14f3c27"
}
Key {
type: 7
@@ -1134,39 +1134,39 @@ VisualTest {
}
Frame {
msec: 3376
- hash: "4267354fe0d24597bdb5ee1a6e9affbb"
+ hash: "650a0792ee0025e12f7f0ce6df72df6c"
}
Frame {
msec: 3392
- hash: "700bd56ecea646bbec2017007bbb5b84"
+ hash: "0064815fa6e2bcbbe5f2ea8222ddd2b0"
}
Frame {
msec: 3408
- hash: "874a65c2069f4ba89301c129f884f217"
+ hash: "13ca683ddd0071771e853a09fc6e5842"
}
Frame {
msec: 3424
- hash: "b5ec22f95abb43c83533f7dc606667f6"
+ hash: "1625325eee9b4eaab2df135e0d2f0f14"
}
Frame {
msec: 3440
- hash: "445de6663e80d1fe1527ec5acf4ec1de"
+ hash: "9e3f1df1b243167b5470778e8c44f7d1"
}
Frame {
msec: 3456
- hash: "87c129a5bf08536d3fca90375283e26b"
+ hash: "493634fa37f10eb02d255253171d190d"
}
Frame {
msec: 3472
- hash: "a63e2438a9cd412c2b119cd42b11009f"
+ hash: "86ddfc357d158deae39a7565c512d0c0"
}
Frame {
msec: 3488
- hash: "61a3475bef5fd276b836cf3483526f57"
+ hash: "74486ca31cf165f0e55aacfae7af9e4c"
}
Frame {
msec: 3504
- hash: "097ab9a1a1fe9743f162f57b93599fe7"
+ hash: "3479f78faf16d4d07b6b44d7682ac016"
}
Key {
type: 7
@@ -1178,11 +1178,11 @@ VisualTest {
}
Frame {
msec: 3520
- hash: "ebae1fb540c6ff6b0bc9a951391e2e94"
+ hash: "cb35c6a887f191b2eb5de961912c94b8"
}
Frame {
msec: 3536
- hash: "ffc2da2e4c091eadaa9746b42b56d9e4"
+ hash: "53f5028e96fc65cc6171e78c31c16026"
}
Key {
type: 7
@@ -1194,358 +1194,358 @@ VisualTest {
}
Frame {
msec: 3552
- hash: "f243d823fc9977e69a008010d8db8a01"
+ hash: "c77e078983f12d8007c5509cd8b356f9"
}
Frame {
msec: 3568
- hash: "592ac5bbf1c4b3a360be4d76c40a2be2"
+ hash: "ec2da5c6869161936e2598961c605674"
}
Frame {
msec: 3584
- hash: "bd5b206097f30dfce884a8c74856857d"
+ hash: "bb9adcb5730aeafb2956e01d9aacaee1"
}
Frame {
msec: 3600
- hash: "f14ec1544a380fc9993b39754c23c2f4"
+ hash: "49cd710decb32599d7a9c8e0239bf9a5"
}
Frame {
msec: 3616
- hash: "836f37fe92a46233640e0bd2c0932fea"
+ hash: "c39f05a5471fb3a26f57feab2b99c8fa"
}
Frame {
msec: 3632
- hash: "062091bc7a5f3296c669614318b80fe7"
+ hash: "9007b93c9b9ae3612a0f97fe2e2ae825"
}
Frame {
msec: 3648
- hash: "5b1b45e75f5a829b31c0b6eb0189da7c"
+ hash: "ed3bf83d975d6b8f830ce0b5a0ad64cc"
}
Frame {
msec: 3664
- hash: "1dddd18a4ef66df9d9b431b2860e24d1"
+ hash: "70deb136fd364646e73390f0aa751baa"
}
Frame {
msec: 3680
- hash: "d6218c8bb4da9d62bdb5d0cf5d7f8e37"
+ hash: "d58a1176858e49c89fc77bed260c6269"
}
Frame {
msec: 3696
- hash: "236e54ae31e5ee3d08a7bc9aeaef0d9b"
+ hash: "5d79ff6cac5bd6943b656964c1d78b00"
}
Frame {
msec: 3712
- hash: "585ad3efb7330de889b8cf56a51a0899"
+ hash: "f27082799d0860c660d16c3f9fe6e538"
}
Frame {
msec: 3728
- hash: "c0eb56c72311263d892ce65331547531"
+ hash: "75c37de92c5af3305733a92d405a4ec8"
}
Frame {
msec: 3744
- hash: "a2e1dea5e5f37697c7ce1a9419b94f65"
+ hash: "e5c9931c8baf260d77f9cfcc1bb41101"
}
Frame {
msec: 3760
- hash: "718ac9cb5ef2992b06b34e957f987b7a"
+ hash: "edff1333eb3a0047c527503ab3dbe71c"
}
Frame {
msec: 3776
- hash: "ae2a644f96bd7b2662ebcf4ebc33d930"
+ hash: "9194cd1399ceeda421944cd87182039b"
}
Frame {
msec: 3792
- hash: "54d04e64af5c0a3d29f2dc8c0977ed3a"
+ hash: "082441b5fea02f2676ad4d53aefb6927"
}
Frame {
msec: 3808
- hash: "8210b9cbf19f519ee34f4bb1a6afce16"
+ hash: "bb52aa533659d770d01deb8bef5a8b4d"
}
Frame {
msec: 3824
- hash: "e83642b0793f5a790efca65ccf20a720"
+ hash: "348e6a82b1491739e72c5c361158a967"
}
Frame {
msec: 3840
- image: "cursorDelegate.3.png"
+ hash: "ea77a49e7e246649248e19b72d6433c9"
}
Frame {
msec: 3856
- hash: "520a544fd92f17a14380803e253b396f"
+ image: "cursorDelegate.4.png"
}
Frame {
msec: 3872
- hash: "0ac33070e0c736bc0fb5ab12fa444b5c"
+ hash: "9bfb6b9a2604b4c534539bc731abda10"
}
Frame {
msec: 3888
- hash: "5ee8c9dc7b238db131b3a078e46a8bbd"
+ hash: "02b01092c1f0e279872490306163647d"
}
Frame {
msec: 3904
- hash: "69720bcca91f99f229aebc74c5e74261"
+ hash: "acf688ab0ceba1d5d1e0225b90fd706f"
}
Frame {
msec: 3920
- hash: "41d8f4031223f7c833d50208e231964a"
+ hash: "5866ceee0fd72361dd490a2163b4fc55"
}
Frame {
msec: 3936
- hash: "6fa8fd3252f367f3fafea4e3c7317a48"
+ hash: "218083c830ad133e2aeb4692d2d1517d"
}
Frame {
msec: 3952
- hash: "8a1b63c42867f87a1cf4b47944b3860a"
+ hash: "3542537f0b0e1375d81c7f0365bbdf1d"
}
Frame {
msec: 3968
- hash: "8c6052eb4cf03d7742a73874d9f15285"
+ hash: "ca17401d638025fde8aad18b9a358029"
}
Frame {
msec: 3984
- hash: "7bae45481596788afde8866a3c97edd7"
+ hash: "87d666ee3bcf7a606e2aecb4954cfb28"
}
Frame {
msec: 4000
- hash: "7bae45481596788afde8866a3c97edd7"
+ hash: "87d666ee3bcf7a606e2aecb4954cfb28"
}
Frame {
msec: 4016
- hash: "7bae45481596788afde8866a3c97edd7"
+ hash: "87d666ee3bcf7a606e2aecb4954cfb28"
}
Frame {
msec: 4032
- hash: "7bae45481596788afde8866a3c97edd7"
+ hash: "87d666ee3bcf7a606e2aecb4954cfb28"
}
Frame {
msec: 4048
- hash: "7bae45481596788afde8866a3c97edd7"
+ hash: "87d666ee3bcf7a606e2aecb4954cfb28"
}
Frame {
msec: 4064
- hash: "8c6052eb4cf03d7742a73874d9f15285"
+ hash: "ca17401d638025fde8aad18b9a358029"
}
Frame {
msec: 4080
- hash: "8a1b63c42867f87a1cf4b47944b3860a"
+ hash: "3542537f0b0e1375d81c7f0365bbdf1d"
}
Frame {
msec: 4096
- hash: "6fa8fd3252f367f3fafea4e3c7317a48"
+ hash: "218083c830ad133e2aeb4692d2d1517d"
}
Frame {
msec: 4112
- hash: "41d8f4031223f7c833d50208e231964a"
+ hash: "5866ceee0fd72361dd490a2163b4fc55"
}
Frame {
msec: 4128
- hash: "69720bcca91f99f229aebc74c5e74261"
+ hash: "acf688ab0ceba1d5d1e0225b90fd706f"
}
Frame {
msec: 4144
- hash: "5ee8c9dc7b238db131b3a078e46a8bbd"
+ hash: "02b01092c1f0e279872490306163647d"
}
Frame {
msec: 4160
- hash: "0ac33070e0c736bc0fb5ab12fa444b5c"
+ hash: "9bfb6b9a2604b4c534539bc731abda10"
}
Frame {
msec: 4176
- hash: "520a544fd92f17a14380803e253b396f"
+ hash: "dfa52bb483388dfee56577968d013c8f"
}
Frame {
msec: 4192
- hash: "4a080a5154c517e6bcf24b3a1f1d7f2c"
+ hash: "ea77a49e7e246649248e19b72d6433c9"
}
Frame {
msec: 4208
- hash: "e83642b0793f5a790efca65ccf20a720"
+ hash: "348e6a82b1491739e72c5c361158a967"
}
Frame {
msec: 4224
- hash: "8210b9cbf19f519ee34f4bb1a6afce16"
+ hash: "bb52aa533659d770d01deb8bef5a8b4d"
}
Frame {
msec: 4240
- hash: "54d04e64af5c0a3d29f2dc8c0977ed3a"
+ hash: "082441b5fea02f2676ad4d53aefb6927"
}
Frame {
msec: 4256
- hash: "ae2a644f96bd7b2662ebcf4ebc33d930"
+ hash: "9194cd1399ceeda421944cd87182039b"
}
Frame {
msec: 4272
- hash: "718ac9cb5ef2992b06b34e957f987b7a"
+ hash: "edff1333eb3a0047c527503ab3dbe71c"
}
Frame {
msec: 4288
- hash: "a2e1dea5e5f37697c7ce1a9419b94f65"
+ hash: "e5c9931c8baf260d77f9cfcc1bb41101"
}
Frame {
msec: 4304
- hash: "c0eb56c72311263d892ce65331547531"
+ hash: "75c37de92c5af3305733a92d405a4ec8"
}
Frame {
msec: 4320
- hash: "585ad3efb7330de889b8cf56a51a0899"
+ hash: "f27082799d0860c660d16c3f9fe6e538"
}
Frame {
msec: 4336
- hash: "236e54ae31e5ee3d08a7bc9aeaef0d9b"
+ hash: "5d79ff6cac5bd6943b656964c1d78b00"
}
Frame {
msec: 4352
- hash: "d6218c8bb4da9d62bdb5d0cf5d7f8e37"
+ hash: "d58a1176858e49c89fc77bed260c6269"
}
Frame {
msec: 4368
- hash: "1dddd18a4ef66df9d9b431b2860e24d1"
+ hash: "70deb136fd364646e73390f0aa751baa"
}
Frame {
msec: 4384
- hash: "5b1b45e75f5a829b31c0b6eb0189da7c"
+ hash: "ed3bf83d975d6b8f830ce0b5a0ad64cc"
}
Frame {
msec: 4400
- hash: "062091bc7a5f3296c669614318b80fe7"
+ hash: "9007b93c9b9ae3612a0f97fe2e2ae825"
}
Frame {
msec: 4416
- hash: "836f37fe92a46233640e0bd2c0932fea"
+ hash: "c39f05a5471fb3a26f57feab2b99c8fa"
}
Frame {
msec: 4432
- hash: "f14ec1544a380fc9993b39754c23c2f4"
+ hash: "49cd710decb32599d7a9c8e0239bf9a5"
}
Frame {
msec: 4448
- hash: "bd5b206097f30dfce884a8c74856857d"
+ hash: "bb9adcb5730aeafb2956e01d9aacaee1"
}
Frame {
msec: 4464
- hash: "592ac5bbf1c4b3a360be4d76c40a2be2"
+ hash: "ec2da5c6869161936e2598961c605674"
}
Frame {
msec: 4480
- hash: "f243d823fc9977e69a008010d8db8a01"
+ hash: "c77e078983f12d8007c5509cd8b356f9"
}
Frame {
msec: 4496
- hash: "ffc2da2e4c091eadaa9746b42b56d9e4"
+ hash: "53f5028e96fc65cc6171e78c31c16026"
}
Frame {
msec: 4512
- hash: "ebae1fb540c6ff6b0bc9a951391e2e94"
+ hash: "cb35c6a887f191b2eb5de961912c94b8"
}
Frame {
msec: 4528
- hash: "097ab9a1a1fe9743f162f57b93599fe7"
+ hash: "3479f78faf16d4d07b6b44d7682ac016"
}
Frame {
msec: 4544
- hash: "61a3475bef5fd276b836cf3483526f57"
+ hash: "74486ca31cf165f0e55aacfae7af9e4c"
}
Frame {
msec: 4560
- hash: "a63e2438a9cd412c2b119cd42b11009f"
+ hash: "86ddfc357d158deae39a7565c512d0c0"
}
Frame {
msec: 4576
- hash: "87c129a5bf08536d3fca90375283e26b"
+ hash: "493634fa37f10eb02d255253171d190d"
}
Frame {
msec: 4592
- hash: "445de6663e80d1fe1527ec5acf4ec1de"
+ hash: "9e3f1df1b243167b5470778e8c44f7d1"
}
Frame {
msec: 4608
- hash: "b5ec22f95abb43c83533f7dc606667f6"
+ hash: "1625325eee9b4eaab2df135e0d2f0f14"
}
Frame {
msec: 4624
- hash: "874a65c2069f4ba89301c129f884f217"
+ hash: "13ca683ddd0071771e853a09fc6e5842"
}
Frame {
msec: 4640
- hash: "700bd56ecea646bbec2017007bbb5b84"
+ hash: "0064815fa6e2bcbbe5f2ea8222ddd2b0"
}
Frame {
msec: 4656
- hash: "4267354fe0d24597bdb5ee1a6e9affbb"
+ hash: "650a0792ee0025e12f7f0ce6df72df6c"
}
Frame {
msec: 4672
- hash: "135b2b0f4e469b207e673d1e7086cd4f"
+ hash: "5efbed8f4de4387572c5a98ba14f3c27"
}
Frame {
msec: 4688
- hash: "d08dc22ddc707316483f09b796ea0380"
+ hash: "6733673178a1b85b22d22610a6f6c3d7"
}
Frame {
msec: 4704
- hash: "114ad78597ede2afc4dd8bafa1d4df21"
+ hash: "5b725bb5951caa968d221fe7c5dd6370"
}
Frame {
msec: 4720
- hash: "ec1b4c71f9bd63ccf6d766b0b2f68b30"
+ hash: "096dc0d8b3ed47894ab0289bcfe3aa8f"
}
Frame {
msec: 4736
- hash: "cc1767ec13803959333cd35bfb2d9119"
+ hash: "c54617fb7b21ef8dc2bc0d8492ec476e"
}
Frame {
msec: 4752
- hash: "0f113c0263faa47428c4d16891ac4d4f"
+ hash: "609a2d8f02c8b42e0921a2a900edccbd"
}
Frame {
msec: 4768
- hash: "5381cde4763aa45c97793124e42db6f5"
+ hash: "519c58c8c0f62d96005b49f68648565b"
}
Frame {
msec: 4784
- hash: "99940d6744ac1245f82d62f08c371285"
+ hash: "5d1dd05aade754c204d13f5de03413dd"
}
Frame {
msec: 4800
- image: "cursorDelegate.4.png"
+ hash: "ceca317086930994c35b0ed08db71d64"
}
Frame {
msec: 4816
- hash: "77bbed46c7eb023252cdd80d0a15f38a"
+ image: "cursorDelegate.5.png"
}
Frame {
msec: 4832
- hash: "36ee4da72825e96d5f670c94865a30d8"
+ hash: "64fcbd6ba961634b0ba33ec5b6693945"
}
Frame {
msec: 4848
- hash: "c64d56c1b7df0a5c63ab8ff08ae6daf9"
+ hash: "48a6ced88807a05aea34b47d36261347"
}
Frame {
msec: 4864
- hash: "942e038a3426fa318212a8f245141225"
+ hash: "aafa7081d0f1a46478c0956ad5c56d1d"
}
Frame {
msec: 4880
- hash: "c033ebaee12dd8fe953e91160f986c3d"
+ hash: "6a9f14ec3fcd119afe68cbf372b13076"
}
Frame {
msec: 4896
- hash: "07e64024cf7eda082297f6f83dba8067"
+ hash: "927556bdf4e883c409ba8797001152ce"
}
Frame {
msec: 4912
- hash: "b33cd5bbb90d435dd7ea3ab67bef88ee"
+ hash: "b93878281f21c85c211908086f2899e7"
}
Frame {
msec: 4928
- hash: "90712efd7c17b0ad33d2c2c02e9eaa97"
+ hash: "235b68812a3cb48fc09bd8319aef40f1"
}
Frame {
msec: 4944
- hash: "7e2e55555ee2c7e172e61ddb6365355d"
+ hash: "8943d47912a4206e61836d99cca835da"
}
Frame {
msec: 4960
- hash: "87ca0584879b25336a1023ac3252fc9a"
+ hash: "4d06d264f71d75421c9a6d5a87d6a9ba"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/echoMode.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/echoMode.0.png
index 551a3de99e..63b177946b 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/echoMode.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/echoMode.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/echoMode.1.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/echoMode.1.png
index 826d99a044..79246521c3 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/echoMode.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/echoMode.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/echoMode.2.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/echoMode.2.png
index 727e873b5e..e77bfde06c 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/echoMode.2.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/echoMode.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/echoMode.3.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/echoMode.3.png
new file mode 100644
index 0000000000..67d7e52514
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/echoMode.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/echoMode.qml b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/echoMode.qml
index c8f1f2795f..ee29db6169 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/echoMode.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/echoMode.qml
@@ -6,11 +6,11 @@ VisualTest {
}
Frame {
msec: 16
- hash: "eff6a4491bc00e5570ea73a1371f63fc"
+ image: "echoMode.0.png"
}
Frame {
msec: 32
- hash: "eff6a4491bc00e5570ea73a1371f63fc"
+ hash: "75bcecaf83ffc9b851894db0be2c02bc"
}
Key {
type: 6
@@ -22,83 +22,83 @@ VisualTest {
}
Frame {
msec: 48
- hash: "eff6a4491bc00e5570ea73a1371f63fc"
+ hash: "75bcecaf83ffc9b851894db0be2c02bc"
}
Frame {
msec: 64
- hash: "eff6a4491bc00e5570ea73a1371f63fc"
+ hash: "75bcecaf83ffc9b851894db0be2c02bc"
}
Frame {
msec: 80
- hash: "eff6a4491bc00e5570ea73a1371f63fc"
+ hash: "75bcecaf83ffc9b851894db0be2c02bc"
}
Frame {
msec: 96
- hash: "eff6a4491bc00e5570ea73a1371f63fc"
+ hash: "75bcecaf83ffc9b851894db0be2c02bc"
}
Frame {
msec: 112
- hash: "eff6a4491bc00e5570ea73a1371f63fc"
+ hash: "75bcecaf83ffc9b851894db0be2c02bc"
}
Frame {
msec: 128
- hash: "eff6a4491bc00e5570ea73a1371f63fc"
+ hash: "75bcecaf83ffc9b851894db0be2c02bc"
}
Frame {
msec: 144
- hash: "eff6a4491bc00e5570ea73a1371f63fc"
+ hash: "75bcecaf83ffc9b851894db0be2c02bc"
}
Frame {
msec: 160
- hash: "eff6a4491bc00e5570ea73a1371f63fc"
+ hash: "75bcecaf83ffc9b851894db0be2c02bc"
}
Frame {
msec: 176
- hash: "eff6a4491bc00e5570ea73a1371f63fc"
+ hash: "75bcecaf83ffc9b851894db0be2c02bc"
}
Frame {
msec: 192
- hash: "eff6a4491bc00e5570ea73a1371f63fc"
+ hash: "75bcecaf83ffc9b851894db0be2c02bc"
}
Frame {
msec: 208
- hash: "eff6a4491bc00e5570ea73a1371f63fc"
+ hash: "75bcecaf83ffc9b851894db0be2c02bc"
}
Frame {
msec: 224
- hash: "eff6a4491bc00e5570ea73a1371f63fc"
+ hash: "75bcecaf83ffc9b851894db0be2c02bc"
}
Frame {
msec: 240
- hash: "eff6a4491bc00e5570ea73a1371f63fc"
+ hash: "75bcecaf83ffc9b851894db0be2c02bc"
}
Frame {
msec: 256
- hash: "eff6a4491bc00e5570ea73a1371f63fc"
+ hash: "75bcecaf83ffc9b851894db0be2c02bc"
}
Frame {
msec: 272
- hash: "eff6a4491bc00e5570ea73a1371f63fc"
+ hash: "75bcecaf83ffc9b851894db0be2c02bc"
}
Frame {
msec: 288
- hash: "eff6a4491bc00e5570ea73a1371f63fc"
+ hash: "75bcecaf83ffc9b851894db0be2c02bc"
}
Frame {
msec: 304
- hash: "eff6a4491bc00e5570ea73a1371f63fc"
+ hash: "75bcecaf83ffc9b851894db0be2c02bc"
}
Frame {
msec: 320
- hash: "eff6a4491bc00e5570ea73a1371f63fc"
+ hash: "75bcecaf83ffc9b851894db0be2c02bc"
}
Frame {
msec: 336
- hash: "eff6a4491bc00e5570ea73a1371f63fc"
+ hash: "75bcecaf83ffc9b851894db0be2c02bc"
}
Frame {
msec: 352
- hash: "eff6a4491bc00e5570ea73a1371f63fc"
+ hash: "75bcecaf83ffc9b851894db0be2c02bc"
}
Key {
type: 6
@@ -110,23 +110,23 @@ VisualTest {
}
Frame {
msec: 368
- hash: "86f9d315291a08f35f1c431ae802ada2"
+ hash: "1a9f4d47e3982ce68eee8446fd735487"
}
Frame {
msec: 384
- hash: "86f9d315291a08f35f1c431ae802ada2"
+ hash: "1a9f4d47e3982ce68eee8446fd735487"
}
Frame {
msec: 400
- hash: "86f9d315291a08f35f1c431ae802ada2"
+ hash: "1a9f4d47e3982ce68eee8446fd735487"
}
Frame {
msec: 416
- hash: "86f9d315291a08f35f1c431ae802ada2"
+ hash: "1a9f4d47e3982ce68eee8446fd735487"
}
Frame {
msec: 432
- hash: "86f9d315291a08f35f1c431ae802ada2"
+ hash: "1a9f4d47e3982ce68eee8446fd735487"
}
Key {
type: 7
@@ -138,27 +138,27 @@ VisualTest {
}
Frame {
msec: 448
- hash: "86f9d315291a08f35f1c431ae802ada2"
+ hash: "1a9f4d47e3982ce68eee8446fd735487"
}
Frame {
msec: 464
- hash: "86f9d315291a08f35f1c431ae802ada2"
+ hash: "1a9f4d47e3982ce68eee8446fd735487"
}
Frame {
msec: 480
- hash: "86f9d315291a08f35f1c431ae802ada2"
+ hash: "1a9f4d47e3982ce68eee8446fd735487"
}
Frame {
msec: 496
- hash: "86f9d315291a08f35f1c431ae802ada2"
+ hash: "1a9f4d47e3982ce68eee8446fd735487"
}
Frame {
msec: 512
- hash: "86f9d315291a08f35f1c431ae802ada2"
+ hash: "1a9f4d47e3982ce68eee8446fd735487"
}
Frame {
msec: 528
- hash: "86f9d315291a08f35f1c431ae802ada2"
+ hash: "1a9f4d47e3982ce68eee8446fd735487"
}
Key {
type: 7
@@ -170,43 +170,43 @@ VisualTest {
}
Frame {
msec: 544
- hash: "86f9d315291a08f35f1c431ae802ada2"
+ hash: "1a9f4d47e3982ce68eee8446fd735487"
}
Frame {
msec: 560
- hash: "86f9d315291a08f35f1c431ae802ada2"
+ hash: "1a9f4d47e3982ce68eee8446fd735487"
}
Frame {
msec: 576
- hash: "86f9d315291a08f35f1c431ae802ada2"
+ hash: "1a9f4d47e3982ce68eee8446fd735487"
}
Frame {
msec: 592
- hash: "86f9d315291a08f35f1c431ae802ada2"
+ hash: "1a9f4d47e3982ce68eee8446fd735487"
}
Frame {
msec: 608
- hash: "86f9d315291a08f35f1c431ae802ada2"
+ hash: "1a9f4d47e3982ce68eee8446fd735487"
}
Frame {
msec: 624
- hash: "86f9d315291a08f35f1c431ae802ada2"
+ hash: "1a9f4d47e3982ce68eee8446fd735487"
}
Frame {
msec: 640
- hash: "86f9d315291a08f35f1c431ae802ada2"
+ hash: "1a9f4d47e3982ce68eee8446fd735487"
}
Frame {
msec: 656
- hash: "86f9d315291a08f35f1c431ae802ada2"
+ hash: "1a9f4d47e3982ce68eee8446fd735487"
}
Frame {
msec: 672
- hash: "86f9d315291a08f35f1c431ae802ada2"
+ hash: "1a9f4d47e3982ce68eee8446fd735487"
}
Frame {
msec: 688
- hash: "86f9d315291a08f35f1c431ae802ada2"
+ hash: "1a9f4d47e3982ce68eee8446fd735487"
}
Key {
type: 6
@@ -218,23 +218,23 @@ VisualTest {
}
Frame {
msec: 704
- hash: "5c1e01a1dd3004ea3eff7ec215cc8fdc"
+ hash: "9ab137169f2ea0f4b140a6e668f59ad2"
}
Frame {
msec: 720
- hash: "5c1e01a1dd3004ea3eff7ec215cc8fdc"
+ hash: "9ab137169f2ea0f4b140a6e668f59ad2"
}
Frame {
msec: 736
- hash: "5c1e01a1dd3004ea3eff7ec215cc8fdc"
+ hash: "9ab137169f2ea0f4b140a6e668f59ad2"
}
Frame {
msec: 752
- hash: "5c1e01a1dd3004ea3eff7ec215cc8fdc"
+ hash: "9ab137169f2ea0f4b140a6e668f59ad2"
}
Frame {
msec: 768
- hash: "5c1e01a1dd3004ea3eff7ec215cc8fdc"
+ hash: "9ab137169f2ea0f4b140a6e668f59ad2"
}
Key {
type: 7
@@ -246,23 +246,23 @@ VisualTest {
}
Frame {
msec: 784
- hash: "5c1e01a1dd3004ea3eff7ec215cc8fdc"
+ hash: "9ab137169f2ea0f4b140a6e668f59ad2"
}
Frame {
msec: 800
- hash: "5c1e01a1dd3004ea3eff7ec215cc8fdc"
+ hash: "9ab137169f2ea0f4b140a6e668f59ad2"
}
Frame {
msec: 816
- hash: "5c1e01a1dd3004ea3eff7ec215cc8fdc"
+ hash: "9ab137169f2ea0f4b140a6e668f59ad2"
}
Frame {
msec: 832
- hash: "5c1e01a1dd3004ea3eff7ec215cc8fdc"
+ hash: "9ab137169f2ea0f4b140a6e668f59ad2"
}
Frame {
msec: 848
- hash: "5c1e01a1dd3004ea3eff7ec215cc8fdc"
+ hash: "9ab137169f2ea0f4b140a6e668f59ad2"
}
Key {
type: 6
@@ -274,15 +274,15 @@ VisualTest {
}
Frame {
msec: 864
- hash: "b3504e4dbb653a7c039dcf8ab0351055"
+ hash: "3080734a2da042b87ef9177cbb314835"
}
Frame {
msec: 880
- hash: "b3504e4dbb653a7c039dcf8ab0351055"
+ hash: "3080734a2da042b87ef9177cbb314835"
}
Frame {
msec: 896
- hash: "b3504e4dbb653a7c039dcf8ab0351055"
+ hash: "3080734a2da042b87ef9177cbb314835"
}
Key {
type: 7
@@ -294,23 +294,23 @@ VisualTest {
}
Frame {
msec: 912
- hash: "b3504e4dbb653a7c039dcf8ab0351055"
+ hash: "3080734a2da042b87ef9177cbb314835"
}
Frame {
msec: 928
- hash: "b3504e4dbb653a7c039dcf8ab0351055"
+ hash: "3080734a2da042b87ef9177cbb314835"
}
Frame {
msec: 944
- hash: "b3504e4dbb653a7c039dcf8ab0351055"
+ hash: "3080734a2da042b87ef9177cbb314835"
}
Frame {
msec: 960
- image: "echoMode.0.png"
+ hash: "3080734a2da042b87ef9177cbb314835"
}
Frame {
msec: 976
- hash: "b3504e4dbb653a7c039dcf8ab0351055"
+ image: "echoMode.1.png"
}
Key {
type: 6
@@ -322,19 +322,19 @@ VisualTest {
}
Frame {
msec: 992
- hash: "16069bd86f3b8a896087a455e76f1059"
+ hash: "e591963b05361595383b1a60eec289cb"
}
Frame {
msec: 1008
- hash: "16069bd86f3b8a896087a455e76f1059"
+ hash: "e591963b05361595383b1a60eec289cb"
}
Frame {
msec: 1024
- hash: "16069bd86f3b8a896087a455e76f1059"
+ hash: "e591963b05361595383b1a60eec289cb"
}
Frame {
msec: 1040
- hash: "16069bd86f3b8a896087a455e76f1059"
+ hash: "e591963b05361595383b1a60eec289cb"
}
Key {
type: 7
@@ -346,51 +346,51 @@ VisualTest {
}
Frame {
msec: 1056
- hash: "16069bd86f3b8a896087a455e76f1059"
+ hash: "e591963b05361595383b1a60eec289cb"
}
Frame {
msec: 1072
- hash: "16069bd86f3b8a896087a455e76f1059"
+ hash: "e591963b05361595383b1a60eec289cb"
}
Frame {
msec: 1088
- hash: "16069bd86f3b8a896087a455e76f1059"
+ hash: "e591963b05361595383b1a60eec289cb"
}
Frame {
msec: 1104
- hash: "16069bd86f3b8a896087a455e76f1059"
+ hash: "e591963b05361595383b1a60eec289cb"
}
Frame {
msec: 1120
- hash: "16069bd86f3b8a896087a455e76f1059"
+ hash: "e591963b05361595383b1a60eec289cb"
}
Frame {
msec: 1136
- hash: "16069bd86f3b8a896087a455e76f1059"
+ hash: "e591963b05361595383b1a60eec289cb"
}
Frame {
msec: 1152
- hash: "16069bd86f3b8a896087a455e76f1059"
+ hash: "e591963b05361595383b1a60eec289cb"
}
Frame {
msec: 1168
- hash: "16069bd86f3b8a896087a455e76f1059"
+ hash: "e591963b05361595383b1a60eec289cb"
}
Frame {
msec: 1184
- hash: "16069bd86f3b8a896087a455e76f1059"
+ hash: "e591963b05361595383b1a60eec289cb"
}
Frame {
msec: 1200
- hash: "16069bd86f3b8a896087a455e76f1059"
+ hash: "e591963b05361595383b1a60eec289cb"
}
Frame {
msec: 1216
- hash: "16069bd86f3b8a896087a455e76f1059"
+ hash: "e591963b05361595383b1a60eec289cb"
}
Frame {
msec: 1232
- hash: "16069bd86f3b8a896087a455e76f1059"
+ hash: "e591963b05361595383b1a60eec289cb"
}
Key {
type: 6
@@ -402,15 +402,15 @@ VisualTest {
}
Frame {
msec: 1248
- hash: "fd2dfea0c188c624ad6eec189d677d8e"
+ hash: "8a528bf3110bace8275f6fe33ce528b9"
}
Frame {
msec: 1264
- hash: "fd2dfea0c188c624ad6eec189d677d8e"
+ hash: "8a528bf3110bace8275f6fe33ce528b9"
}
Frame {
msec: 1280
- hash: "fd2dfea0c188c624ad6eec189d677d8e"
+ hash: "8a528bf3110bace8275f6fe33ce528b9"
}
Key {
type: 7
@@ -422,15 +422,15 @@ VisualTest {
}
Frame {
msec: 1296
- hash: "fd2dfea0c188c624ad6eec189d677d8e"
+ hash: "8a528bf3110bace8275f6fe33ce528b9"
}
Frame {
msec: 1312
- hash: "fd2dfea0c188c624ad6eec189d677d8e"
+ hash: "8a528bf3110bace8275f6fe33ce528b9"
}
Frame {
msec: 1328
- hash: "fd2dfea0c188c624ad6eec189d677d8e"
+ hash: "8a528bf3110bace8275f6fe33ce528b9"
}
Key {
type: 6
@@ -442,39 +442,39 @@ VisualTest {
}
Frame {
msec: 1344
- hash: "8c3642f420ecc94e77cbaee8b218bddb"
+ hash: "03d56caa0c86b5544d1f5148e0dccd92"
}
Frame {
msec: 1360
- hash: "8c3642f420ecc94e77cbaee8b218bddb"
+ hash: "03d56caa0c86b5544d1f5148e0dccd92"
}
Frame {
msec: 1376
- hash: "8c3642f420ecc94e77cbaee8b218bddb"
+ hash: "03d56caa0c86b5544d1f5148e0dccd92"
}
Frame {
msec: 1392
- hash: "8c3642f420ecc94e77cbaee8b218bddb"
+ hash: "03d56caa0c86b5544d1f5148e0dccd92"
}
Frame {
msec: 1408
- hash: "8c3642f420ecc94e77cbaee8b218bddb"
+ hash: "03d56caa0c86b5544d1f5148e0dccd92"
}
Frame {
msec: 1424
- hash: "8c3642f420ecc94e77cbaee8b218bddb"
+ hash: "03d56caa0c86b5544d1f5148e0dccd92"
}
Frame {
msec: 1440
- hash: "8c3642f420ecc94e77cbaee8b218bddb"
+ hash: "03d56caa0c86b5544d1f5148e0dccd92"
}
Frame {
msec: 1456
- hash: "8c3642f420ecc94e77cbaee8b218bddb"
+ hash: "03d56caa0c86b5544d1f5148e0dccd92"
}
Frame {
msec: 1472
- hash: "8c3642f420ecc94e77cbaee8b218bddb"
+ hash: "03d56caa0c86b5544d1f5148e0dccd92"
}
Key {
type: 7
@@ -486,7 +486,7 @@ VisualTest {
}
Frame {
msec: 1488
- hash: "8c3642f420ecc94e77cbaee8b218bddb"
+ hash: "03d56caa0c86b5544d1f5148e0dccd92"
}
Key {
type: 6
@@ -498,19 +498,19 @@ VisualTest {
}
Frame {
msec: 1504
- hash: "80685804ddaefa46508a3cbe4cd16f59"
+ hash: "d9aac9ed4ca0ad97b440db3ac7384001"
}
Frame {
msec: 1520
- hash: "80685804ddaefa46508a3cbe4cd16f59"
+ hash: "d9aac9ed4ca0ad97b440db3ac7384001"
}
Frame {
msec: 1536
- hash: "80685804ddaefa46508a3cbe4cd16f59"
+ hash: "d9aac9ed4ca0ad97b440db3ac7384001"
}
Frame {
msec: 1552
- hash: "80685804ddaefa46508a3cbe4cd16f59"
+ hash: "d9aac9ed4ca0ad97b440db3ac7384001"
}
Key {
type: 7
@@ -522,27 +522,27 @@ VisualTest {
}
Frame {
msec: 1568
- hash: "80685804ddaefa46508a3cbe4cd16f59"
+ hash: "d9aac9ed4ca0ad97b440db3ac7384001"
}
Frame {
msec: 1584
- hash: "80685804ddaefa46508a3cbe4cd16f59"
+ hash: "d9aac9ed4ca0ad97b440db3ac7384001"
}
Frame {
msec: 1600
- hash: "80685804ddaefa46508a3cbe4cd16f59"
+ hash: "d9aac9ed4ca0ad97b440db3ac7384001"
}
Frame {
msec: 1616
- hash: "80685804ddaefa46508a3cbe4cd16f59"
+ hash: "d9aac9ed4ca0ad97b440db3ac7384001"
}
Frame {
msec: 1632
- hash: "80685804ddaefa46508a3cbe4cd16f59"
+ hash: "d9aac9ed4ca0ad97b440db3ac7384001"
}
Frame {
msec: 1648
- hash: "80685804ddaefa46508a3cbe4cd16f59"
+ hash: "d9aac9ed4ca0ad97b440db3ac7384001"
}
Key {
type: 6
@@ -554,23 +554,23 @@ VisualTest {
}
Frame {
msec: 1664
- hash: "270f91762428ce515e0de44dea26d6ed"
+ hash: "a2e8a6a742b11b4f30a2d75df14d5f47"
}
Frame {
msec: 1680
- hash: "270f91762428ce515e0de44dea26d6ed"
+ hash: "a2e8a6a742b11b4f30a2d75df14d5f47"
}
Frame {
msec: 1696
- hash: "270f91762428ce515e0de44dea26d6ed"
+ hash: "a2e8a6a742b11b4f30a2d75df14d5f47"
}
Frame {
msec: 1712
- hash: "270f91762428ce515e0de44dea26d6ed"
+ hash: "a2e8a6a742b11b4f30a2d75df14d5f47"
}
Frame {
msec: 1728
- hash: "270f91762428ce515e0de44dea26d6ed"
+ hash: "a2e8a6a742b11b4f30a2d75df14d5f47"
}
Key {
type: 6
@@ -582,7 +582,7 @@ VisualTest {
}
Frame {
msec: 1744
- hash: "5ff3755b130835886503045e45700235"
+ hash: "021641e69fef4720acf6af15d4a2da82"
}
Key {
type: 7
@@ -594,15 +594,15 @@ VisualTest {
}
Frame {
msec: 1760
- hash: "5ff3755b130835886503045e45700235"
+ hash: "021641e69fef4720acf6af15d4a2da82"
}
Frame {
msec: 1776
- hash: "5ff3755b130835886503045e45700235"
+ hash: "021641e69fef4720acf6af15d4a2da82"
}
Frame {
msec: 1792
- hash: "5ff3755b130835886503045e45700235"
+ hash: "021641e69fef4720acf6af15d4a2da82"
}
Key {
type: 7
@@ -614,19 +614,19 @@ VisualTest {
}
Frame {
msec: 1808
- hash: "5ff3755b130835886503045e45700235"
+ hash: "021641e69fef4720acf6af15d4a2da82"
}
Frame {
msec: 1824
- hash: "5ff3755b130835886503045e45700235"
+ hash: "021641e69fef4720acf6af15d4a2da82"
}
Frame {
msec: 1840
- hash: "5ff3755b130835886503045e45700235"
+ hash: "021641e69fef4720acf6af15d4a2da82"
}
Frame {
msec: 1856
- hash: "5ff3755b130835886503045e45700235"
+ hash: "021641e69fef4720acf6af15d4a2da82"
}
Key {
type: 6
@@ -638,19 +638,19 @@ VisualTest {
}
Frame {
msec: 1872
- hash: "deab81e7fcc4ecc31d02fccc52a4cc17"
+ hash: "46ece14e3a61aefcb28b3c888ac7ea59"
}
Frame {
msec: 1888
- hash: "deab81e7fcc4ecc31d02fccc52a4cc17"
+ hash: "46ece14e3a61aefcb28b3c888ac7ea59"
}
Frame {
msec: 1904
- hash: "deab81e7fcc4ecc31d02fccc52a4cc17"
+ hash: "46ece14e3a61aefcb28b3c888ac7ea59"
}
Frame {
msec: 1920
- image: "echoMode.1.png"
+ hash: "46ece14e3a61aefcb28b3c888ac7ea59"
}
Key {
type: 7
@@ -662,27 +662,27 @@ VisualTest {
}
Frame {
msec: 1936
- hash: "deab81e7fcc4ecc31d02fccc52a4cc17"
+ image: "echoMode.2.png"
}
Frame {
msec: 1952
- hash: "deab81e7fcc4ecc31d02fccc52a4cc17"
+ hash: "46ece14e3a61aefcb28b3c888ac7ea59"
}
Frame {
msec: 1968
- hash: "deab81e7fcc4ecc31d02fccc52a4cc17"
+ hash: "46ece14e3a61aefcb28b3c888ac7ea59"
}
Frame {
msec: 1984
- hash: "deab81e7fcc4ecc31d02fccc52a4cc17"
+ hash: "46ece14e3a61aefcb28b3c888ac7ea59"
}
Frame {
msec: 2000
- hash: "deab81e7fcc4ecc31d02fccc52a4cc17"
+ hash: "46ece14e3a61aefcb28b3c888ac7ea59"
}
Frame {
msec: 2016
- hash: "deab81e7fcc4ecc31d02fccc52a4cc17"
+ hash: "46ece14e3a61aefcb28b3c888ac7ea59"
}
Key {
type: 6
@@ -694,11 +694,11 @@ VisualTest {
}
Frame {
msec: 2032
- hash: "f87d1f15df169e08cdd3dff50d596492"
+ hash: "ffa55ac51f20c82725cadbb445908fd2"
}
Frame {
msec: 2048
- hash: "f87d1f15df169e08cdd3dff50d596492"
+ hash: "ffa55ac51f20c82725cadbb445908fd2"
}
Key {
type: 7
@@ -710,11 +710,11 @@ VisualTest {
}
Frame {
msec: 2064
- hash: "f87d1f15df169e08cdd3dff50d596492"
+ hash: "ffa55ac51f20c82725cadbb445908fd2"
}
Frame {
msec: 2080
- hash: "f87d1f15df169e08cdd3dff50d596492"
+ hash: "ffa55ac51f20c82725cadbb445908fd2"
}
Key {
type: 6
@@ -726,19 +726,19 @@ VisualTest {
}
Frame {
msec: 2096
- hash: "a50ab62d526aef826ad883f712a22325"
+ hash: "e9e2edb9176cb57506a3f130fca15d1e"
}
Frame {
msec: 2112
- hash: "a50ab62d526aef826ad883f712a22325"
+ hash: "e9e2edb9176cb57506a3f130fca15d1e"
}
Frame {
msec: 2128
- hash: "a50ab62d526aef826ad883f712a22325"
+ hash: "e9e2edb9176cb57506a3f130fca15d1e"
}
Frame {
msec: 2144
- hash: "a50ab62d526aef826ad883f712a22325"
+ hash: "e9e2edb9176cb57506a3f130fca15d1e"
}
Key {
type: 6
@@ -758,19 +758,19 @@ VisualTest {
}
Frame {
msec: 2160
- hash: "f0c34703a0b5a0631654482fbc785b57"
+ hash: "87c3cf93b47a766d6373ecaec7239dd4"
}
Frame {
msec: 2176
- hash: "f0c34703a0b5a0631654482fbc785b57"
+ hash: "87c3cf93b47a766d6373ecaec7239dd4"
}
Frame {
msec: 2192
- hash: "f0c34703a0b5a0631654482fbc785b57"
+ hash: "87c3cf93b47a766d6373ecaec7239dd4"
}
Frame {
msec: 2208
- hash: "f0c34703a0b5a0631654482fbc785b57"
+ hash: "87c3cf93b47a766d6373ecaec7239dd4"
}
Key {
type: 6
@@ -782,7 +782,7 @@ VisualTest {
}
Frame {
msec: 2224
- hash: "0921766e0d224b70d2c3f9f282c51143"
+ hash: "1fb4aa190807d169d1ceaff7d9fa92ad"
}
Key {
type: 7
@@ -794,23 +794,23 @@ VisualTest {
}
Frame {
msec: 2240
- hash: "0921766e0d224b70d2c3f9f282c51143"
+ hash: "1fb4aa190807d169d1ceaff7d9fa92ad"
}
Frame {
msec: 2256
- hash: "0921766e0d224b70d2c3f9f282c51143"
+ hash: "1fb4aa190807d169d1ceaff7d9fa92ad"
}
Frame {
msec: 2272
- hash: "0921766e0d224b70d2c3f9f282c51143"
+ hash: "1fb4aa190807d169d1ceaff7d9fa92ad"
}
Frame {
msec: 2288
- hash: "0921766e0d224b70d2c3f9f282c51143"
+ hash: "1fb4aa190807d169d1ceaff7d9fa92ad"
}
Frame {
msec: 2304
- hash: "0921766e0d224b70d2c3f9f282c51143"
+ hash: "1fb4aa190807d169d1ceaff7d9fa92ad"
}
Key {
type: 7
@@ -822,11 +822,11 @@ VisualTest {
}
Frame {
msec: 2320
- hash: "0921766e0d224b70d2c3f9f282c51143"
+ hash: "1fb4aa190807d169d1ceaff7d9fa92ad"
}
Frame {
msec: 2336
- hash: "0921766e0d224b70d2c3f9f282c51143"
+ hash: "1fb4aa190807d169d1ceaff7d9fa92ad"
}
Key {
type: 6
@@ -838,27 +838,27 @@ VisualTest {
}
Frame {
msec: 2352
- hash: "91b44cdde36433cac6644c476e34d4f9"
+ hash: "e9cd789b114befb4637fcff39d4413b0"
}
Frame {
msec: 2368
- hash: "91b44cdde36433cac6644c476e34d4f9"
+ hash: "e9cd789b114befb4637fcff39d4413b0"
}
Frame {
msec: 2384
- hash: "91b44cdde36433cac6644c476e34d4f9"
+ hash: "e9cd789b114befb4637fcff39d4413b0"
}
Frame {
msec: 2400
- hash: "91b44cdde36433cac6644c476e34d4f9"
+ hash: "e9cd789b114befb4637fcff39d4413b0"
}
Frame {
msec: 2416
- hash: "91b44cdde36433cac6644c476e34d4f9"
+ hash: "e9cd789b114befb4637fcff39d4413b0"
}
Frame {
msec: 2432
- hash: "91b44cdde36433cac6644c476e34d4f9"
+ hash: "e9cd789b114befb4637fcff39d4413b0"
}
Key {
type: 7
@@ -870,19 +870,19 @@ VisualTest {
}
Frame {
msec: 2448
- hash: "91b44cdde36433cac6644c476e34d4f9"
+ hash: "e9cd789b114befb4637fcff39d4413b0"
}
Frame {
msec: 2464
- hash: "91b44cdde36433cac6644c476e34d4f9"
+ hash: "e9cd789b114befb4637fcff39d4413b0"
}
Frame {
msec: 2480
- hash: "91b44cdde36433cac6644c476e34d4f9"
+ hash: "e9cd789b114befb4637fcff39d4413b0"
}
Frame {
msec: 2496
- hash: "91b44cdde36433cac6644c476e34d4f9"
+ hash: "e9cd789b114befb4637fcff39d4413b0"
}
Key {
type: 6
@@ -894,15 +894,15 @@ VisualTest {
}
Frame {
msec: 2512
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
Frame {
msec: 2528
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
Frame {
msec: 2544
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
Key {
type: 7
@@ -914,130 +914,130 @@ VisualTest {
}
Frame {
msec: 2560
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
Frame {
msec: 2576
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
Frame {
msec: 2592
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
Frame {
msec: 2608
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
Frame {
msec: 2624
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
Frame {
msec: 2640
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
Frame {
msec: 2656
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
Frame {
msec: 2672
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
Frame {
msec: 2688
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
Frame {
msec: 2704
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
Frame {
msec: 2720
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
Frame {
msec: 2736
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
Frame {
msec: 2752
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
Frame {
msec: 2768
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
Frame {
msec: 2784
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
Frame {
msec: 2800
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
Frame {
msec: 2816
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
Frame {
msec: 2832
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
Frame {
msec: 2848
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
Frame {
msec: 2864
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
Frame {
msec: 2880
- image: "echoMode.2.png"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
Frame {
msec: 2896
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ image: "echoMode.3.png"
}
Frame {
msec: 2912
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
Frame {
msec: 2928
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
Frame {
msec: 2944
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
Frame {
msec: 2960
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
Frame {
msec: 2976
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
Frame {
msec: 2992
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
Frame {
msec: 3008
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
Frame {
msec: 3024
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
Frame {
msec: 3040
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
Frame {
msec: 3056
- hash: "34d00f787b814ad82c025c77d6be51a2"
+ hash: "15f91fda9bcc8a2a9ebf3b9c32f61efb"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/hAlign.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/hAlign.0.png
new file mode 100644
index 0000000000..4c04a1b20d
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/hAlign.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/hAlign.qml b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/hAlign.qml
index 32330f49bf..74ee95f659 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/hAlign.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/hAlign.qml
@@ -6,102 +6,102 @@ VisualTest {
}
Frame {
msec: 16
- hash: "09298802dfc053e2bb1b3bb2192ca5b2"
+ image: "hAlign.0.png"
}
Frame {
msec: 32
- hash: "09298802dfc053e2bb1b3bb2192ca5b2"
+ hash: "93758371bdc69b81077989e911f62fb0"
}
Frame {
msec: 48
- hash: "09298802dfc053e2bb1b3bb2192ca5b2"
+ hash: "93758371bdc69b81077989e911f62fb0"
}
Frame {
msec: 64
- hash: "09298802dfc053e2bb1b3bb2192ca5b2"
+ hash: "93758371bdc69b81077989e911f62fb0"
}
Frame {
msec: 80
- hash: "09298802dfc053e2bb1b3bb2192ca5b2"
+ hash: "93758371bdc69b81077989e911f62fb0"
}
Frame {
msec: 96
- hash: "09298802dfc053e2bb1b3bb2192ca5b2"
+ hash: "93758371bdc69b81077989e911f62fb0"
}
Frame {
msec: 112
- hash: "09298802dfc053e2bb1b3bb2192ca5b2"
+ hash: "93758371bdc69b81077989e911f62fb0"
}
Frame {
msec: 128
- hash: "09298802dfc053e2bb1b3bb2192ca5b2"
+ hash: "93758371bdc69b81077989e911f62fb0"
}
Frame {
msec: 144
- hash: "09298802dfc053e2bb1b3bb2192ca5b2"
+ hash: "93758371bdc69b81077989e911f62fb0"
}
Frame {
msec: 160
- hash: "09298802dfc053e2bb1b3bb2192ca5b2"
+ hash: "93758371bdc69b81077989e911f62fb0"
}
Frame {
msec: 176
- hash: "09298802dfc053e2bb1b3bb2192ca5b2"
+ hash: "93758371bdc69b81077989e911f62fb0"
}
Frame {
msec: 192
- hash: "09298802dfc053e2bb1b3bb2192ca5b2"
+ hash: "93758371bdc69b81077989e911f62fb0"
}
Frame {
msec: 208
- hash: "09298802dfc053e2bb1b3bb2192ca5b2"
+ hash: "93758371bdc69b81077989e911f62fb0"
}
Frame {
msec: 224
- hash: "09298802dfc053e2bb1b3bb2192ca5b2"
+ hash: "93758371bdc69b81077989e911f62fb0"
}
Frame {
msec: 240
- hash: "09298802dfc053e2bb1b3bb2192ca5b2"
+ hash: "93758371bdc69b81077989e911f62fb0"
}
Frame {
msec: 256
- hash: "09298802dfc053e2bb1b3bb2192ca5b2"
+ hash: "93758371bdc69b81077989e911f62fb0"
}
Frame {
msec: 272
- hash: "09298802dfc053e2bb1b3bb2192ca5b2"
+ hash: "93758371bdc69b81077989e911f62fb0"
}
Frame {
msec: 288
- hash: "09298802dfc053e2bb1b3bb2192ca5b2"
+ hash: "93758371bdc69b81077989e911f62fb0"
}
Frame {
msec: 304
- hash: "09298802dfc053e2bb1b3bb2192ca5b2"
+ hash: "93758371bdc69b81077989e911f62fb0"
}
Frame {
msec: 320
- hash: "09298802dfc053e2bb1b3bb2192ca5b2"
+ hash: "93758371bdc69b81077989e911f62fb0"
}
Frame {
msec: 336
- hash: "09298802dfc053e2bb1b3bb2192ca5b2"
+ hash: "93758371bdc69b81077989e911f62fb0"
}
Frame {
msec: 352
- hash: "09298802dfc053e2bb1b3bb2192ca5b2"
+ hash: "93758371bdc69b81077989e911f62fb0"
}
Frame {
msec: 368
- hash: "09298802dfc053e2bb1b3bb2192ca5b2"
+ hash: "93758371bdc69b81077989e911f62fb0"
}
Frame {
msec: 384
- hash: "09298802dfc053e2bb1b3bb2192ca5b2"
+ hash: "93758371bdc69b81077989e911f62fb0"
}
Frame {
msec: 400
- hash: "09298802dfc053e2bb1b3bb2192ca5b2"
+ hash: "93758371bdc69b81077989e911f62fb0"
}
}
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.0.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.0.png
index 313fcc20d9..fb0eb85e4c 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.0.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.1.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.1.png
index 81798cc02a..444ee34485 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.1.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.10.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.10.png
index 3e37ebb828..5f3668c7df 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.10.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.10.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.11.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.11.png
new file mode 100644
index 0000000000..0ea21f3b9b
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.11.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.2.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.2.png
index 313fcc20d9..444ee34485 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.2.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.3.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.3.png
index dc3abe66e1..9bcd6a7a8b 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.3.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.4.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.4.png
index 62b464a75a..04a1e66dc7 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.4.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.5.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.5.png
index ee26c353bb..716f59bbb0 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.5.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.6.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.6.png
index 2ea9142d94..f6b9fcea6d 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.6.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.6.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.7.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.7.png
index fb0be3ceb5..61430e8e0c 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.7.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.7.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.8.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.8.png
index 0122645353..be9691f6bd 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.8.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.8.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.9.png b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.9.png
index 24da450457..4f285b19cf 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.9.png
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.9.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.qml b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.qml
index f014a3034c..8957e39366 100644
--- a/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.qml
+++ b/tests/auto/declarative/qmlvisual/qdeclarativetextinput/data-X11/usingLineEdit.qml
@@ -6,235 +6,235 @@ VisualTest {
}
Frame {
msec: 16
- hash: "9d5b9f785409527b8f315fef560a4688"
+ image: "usingLineEdit.0.png"
}
Frame {
msec: 32
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 48
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 64
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 80
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 96
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 112
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 128
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 144
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 160
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 176
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 192
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 208
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 224
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 240
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 256
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 272
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 288
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 304
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 320
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 336
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 352
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 368
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 384
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 400
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 416
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 432
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 448
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 464
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 480
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 496
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 512
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 528
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 544
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 560
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 576
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 592
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 608
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 624
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 640
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 656
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 672
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 688
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 704
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 720
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 736
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 752
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 768
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 784
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 800
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 816
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 832
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 848
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 864
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 880
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 896
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 912
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Frame {
msec: 928
- hash: "9d5b9f785409527b8f315fef560a4688"
+ hash: "2e747d3e26cc85e4c36c42097ab3f379"
}
Mouse {
type: 2
@@ -246,7 +246,7 @@ VisualTest {
}
Frame {
msec: 944
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "227431895322480615fb61a635305230"
}
Mouse {
type: 3
@@ -258,7 +258,7 @@ VisualTest {
}
Frame {
msec: 960
- image: "usingLineEdit.0.png"
+ hash: "227431895322480615fb61a635305230"
}
Mouse {
type: 4
@@ -270,27 +270,27 @@ VisualTest {
}
Frame {
msec: 976
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ image: "usingLineEdit.1.png"
}
Frame {
msec: 992
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1008
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1024
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1040
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1056
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Mouse {
type: 3
@@ -302,79 +302,79 @@ VisualTest {
}
Frame {
msec: 1072
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1088
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1104
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1120
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1136
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1152
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1168
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1184
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1200
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1216
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1232
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1248
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1264
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1280
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1296
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1312
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1328
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1344
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1360
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Key {
type: 6
@@ -386,159 +386,159 @@ VisualTest {
}
Frame {
msec: 1376
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1392
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1408
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1424
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1440
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1456
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1472
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1488
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1504
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1520
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1536
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1552
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1568
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1584
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1600
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1616
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1632
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1648
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1664
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1680
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1696
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1712
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1728
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1744
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1760
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1776
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1792
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1808
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1824
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1840
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1856
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1872
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1888
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1904
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1920
- image: "usingLineEdit.1.png"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1936
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ image: "usingLineEdit.2.png"
}
Frame {
msec: 1952
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1968
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 1984
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Key {
type: 6
@@ -550,35 +550,35 @@ VisualTest {
}
Frame {
msec: 2000
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 2016
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 2032
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 2048
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 2064
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 2080
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 2096
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 2112
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Key {
type: 7
@@ -598,95 +598,95 @@ VisualTest {
}
Frame {
msec: 2128
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 2144
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 2160
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 2176
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 2192
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 2208
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 2224
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 2240
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 2256
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 2272
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 2288
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 2304
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 2320
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 2336
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 2352
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 2368
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 2384
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 2400
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 2416
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 2432
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 2448
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 2464
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Frame {
msec: 2480
- hash: "957c85bfa6586d5d92aa3689c178944f"
+ hash: "b888cf6d6e002e28690cff49726eea70"
}
Key {
type: 6
@@ -698,27 +698,27 @@ VisualTest {
}
Frame {
msec: 2496
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 2512
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 2528
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 2544
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 2560
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 2576
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Key {
type: 7
@@ -730,55 +730,55 @@ VisualTest {
}
Frame {
msec: 2592
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 2608
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 2624
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 2640
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 2656
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 2672
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 2688
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 2704
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 2720
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 2736
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 2752
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 2768
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 2784
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Key {
type: 6
@@ -790,111 +790,111 @@ VisualTest {
}
Frame {
msec: 2800
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 2816
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 2832
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 2848
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 2864
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 2880
- image: "usingLineEdit.2.png"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 2896
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ image: "usingLineEdit.3.png"
}
Frame {
msec: 2912
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 2928
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 2944
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 2960
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 2976
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 2992
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 3008
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 3024
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 3040
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 3056
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 3072
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 3088
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 3104
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 3120
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 3136
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 3152
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 3168
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 3184
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 3200
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Frame {
msec: 3216
- hash: "ebd6e6bbd0edaffed688dd5fa2328393"
+ hash: "62afc4e3874da1bcd7e86860bbf6db20"
}
Key {
type: 6
@@ -906,31 +906,31 @@ VisualTest {
}
Frame {
msec: 3232
- hash: "923335b8fdb038fe10c8c557845c2ae1"
+ hash: "dc7187f95e9f178cd5d5a0c4e0d637c3"
}
Frame {
msec: 3248
- hash: "923335b8fdb038fe10c8c557845c2ae1"
+ hash: "dc7187f95e9f178cd5d5a0c4e0d637c3"
}
Frame {
msec: 3264
- hash: "923335b8fdb038fe10c8c557845c2ae1"
+ hash: "dc7187f95e9f178cd5d5a0c4e0d637c3"
}
Frame {
msec: 3280
- hash: "923335b8fdb038fe10c8c557845c2ae1"
+ hash: "dc7187f95e9f178cd5d5a0c4e0d637c3"
}
Frame {
msec: 3296
- hash: "923335b8fdb038fe10c8c557845c2ae1"
+ hash: "dc7187f95e9f178cd5d5a0c4e0d637c3"
}
Frame {
msec: 3312
- hash: "923335b8fdb038fe10c8c557845c2ae1"
+ hash: "dc7187f95e9f178cd5d5a0c4e0d637c3"
}
Frame {
msec: 3328
- hash: "923335b8fdb038fe10c8c557845c2ae1"
+ hash: "dc7187f95e9f178cd5d5a0c4e0d637c3"
}
Key {
type: 7
@@ -942,59 +942,59 @@ VisualTest {
}
Frame {
msec: 3344
- hash: "923335b8fdb038fe10c8c557845c2ae1"
+ hash: "dc7187f95e9f178cd5d5a0c4e0d637c3"
}
Frame {
msec: 3360
- hash: "923335b8fdb038fe10c8c557845c2ae1"
+ hash: "dc7187f95e9f178cd5d5a0c4e0d637c3"
}
Frame {
msec: 3376
- hash: "923335b8fdb038fe10c8c557845c2ae1"
+ hash: "dc7187f95e9f178cd5d5a0c4e0d637c3"
}
Frame {
msec: 3392
- hash: "923335b8fdb038fe10c8c557845c2ae1"
+ hash: "dc7187f95e9f178cd5d5a0c4e0d637c3"
}
Frame {
msec: 3408
- hash: "923335b8fdb038fe10c8c557845c2ae1"
+ hash: "dc7187f95e9f178cd5d5a0c4e0d637c3"
}
Frame {
msec: 3424
- hash: "923335b8fdb038fe10c8c557845c2ae1"
+ hash: "dc7187f95e9f178cd5d5a0c4e0d637c3"
}
Frame {
msec: 3440
- hash: "923335b8fdb038fe10c8c557845c2ae1"
+ hash: "dc7187f95e9f178cd5d5a0c4e0d637c3"
}
Frame {
msec: 3456
- hash: "923335b8fdb038fe10c8c557845c2ae1"
+ hash: "dc7187f95e9f178cd5d5a0c4e0d637c3"
}
Frame {
msec: 3472
- hash: "923335b8fdb038fe10c8c557845c2ae1"
+ hash: "dc7187f95e9f178cd5d5a0c4e0d637c3"
}
Frame {
msec: 3488
- hash: "923335b8fdb038fe10c8c557845c2ae1"
+ hash: "dc7187f95e9f178cd5d5a0c4e0d637c3"
}
Frame {
msec: 3504
- hash: "923335b8fdb038fe10c8c557845c2ae1"
+ hash: "dc7187f95e9f178cd5d5a0c4e0d637c3"
}
Frame {
msec: 3520
- hash: "923335b8fdb038fe10c8c557845c2ae1"
+ hash: "dc7187f95e9f178cd5d5a0c4e0d637c3"
}
Frame {
msec: 3536
- hash: "923335b8fdb038fe10c8c557845c2ae1"
+ hash: "dc7187f95e9f178cd5d5a0c4e0d637c3"
}
Frame {
msec: 3552
- hash: "923335b8fdb038fe10c8c557845c2ae1"
+ hash: "dc7187f95e9f178cd5d5a0c4e0d637c3"
}
Key {
type: 6
@@ -1006,35 +1006,35 @@ VisualTest {
}
Frame {
msec: 3568
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 3584
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 3600
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 3616
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 3632
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 3648
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 3664
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 3680
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Key {
type: 7
@@ -1046,131 +1046,131 @@ VisualTest {
}
Frame {
msec: 3696
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 3712
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 3728
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 3744
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 3760
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 3776
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 3792
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 3808
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 3824
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 3840
- image: "usingLineEdit.3.png"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 3856
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ image: "usingLineEdit.4.png"
}
Frame {
msec: 3872
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 3888
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 3904
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 3920
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 3936
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 3952
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 3968
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 3984
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4000
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4016
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4032
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4048
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4064
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4080
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4096
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4112
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4128
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4144
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4160
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4176
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4192
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Key {
type: 7
@@ -1182,131 +1182,131 @@ VisualTest {
}
Frame {
msec: 4208
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4224
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4240
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4256
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4272
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4288
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4304
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4320
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4336
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4352
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4368
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4384
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4400
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4416
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4432
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4448
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4464
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4480
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4496
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4512
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4528
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4544
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4560
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4576
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4592
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4608
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4624
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4640
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4656
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4672
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4688
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Frame {
msec: 4704
- hash: "3e9cbf56be37f593e907759285ddebdb"
+ hash: "942d2dde9d40eb0864831831b9056525"
}
Mouse {
type: 2
@@ -1318,27 +1318,27 @@ VisualTest {
}
Frame {
msec: 4720
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 4736
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 4752
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 4768
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 4784
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 4800
- image: "usingLineEdit.4.png"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Mouse {
type: 3
@@ -1350,143 +1350,143 @@ VisualTest {
}
Frame {
msec: 4816
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ image: "usingLineEdit.5.png"
}
Frame {
msec: 4832
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 4848
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 4864
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 4880
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 4896
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 4912
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 4928
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 4944
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 4960
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 4976
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 4992
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 5008
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 5024
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 5040
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 5056
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 5072
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 5088
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 5104
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 5120
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 5136
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 5152
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 5168
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 5184
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 5200
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 5216
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 5232
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 5248
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 5264
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 5280
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 5296
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 5312
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 5328
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 5344
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Frame {
msec: 5360
- hash: "39ce4d31df138a329a21056b8d397fd7"
+ hash: "9103b19d12565b6d28380f48acfce3c3"
}
Key {
type: 6
@@ -1498,67 +1498,67 @@ VisualTest {
}
Frame {
msec: 5376
- hash: "ed58b79d6459243c991a2f941279f88e"
+ hash: "3c6258003fba9b4a61bde3a5eb2394d5"
}
Frame {
msec: 5392
- hash: "ed58b79d6459243c991a2f941279f88e"
+ hash: "3c6258003fba9b4a61bde3a5eb2394d5"
}
Frame {
msec: 5408
- hash: "ed58b79d6459243c991a2f941279f88e"
+ hash: "3c6258003fba9b4a61bde3a5eb2394d5"
}
Frame {
msec: 5424
- hash: "ed58b79d6459243c991a2f941279f88e"
+ hash: "3c6258003fba9b4a61bde3a5eb2394d5"
}
Frame {
msec: 5440
- hash: "ed58b79d6459243c991a2f941279f88e"
+ hash: "3c6258003fba9b4a61bde3a5eb2394d5"
}
Frame {
msec: 5456
- hash: "ed58b79d6459243c991a2f941279f88e"
+ hash: "3c6258003fba9b4a61bde3a5eb2394d5"
}
Frame {
msec: 5472
- hash: "ed58b79d6459243c991a2f941279f88e"
+ hash: "3c6258003fba9b4a61bde3a5eb2394d5"
}
Frame {
msec: 5488
- hash: "ed58b79d6459243c991a2f941279f88e"
+ hash: "3c6258003fba9b4a61bde3a5eb2394d5"
}
Frame {
msec: 5504
- hash: "ed58b79d6459243c991a2f941279f88e"
+ hash: "3c6258003fba9b4a61bde3a5eb2394d5"
}
Frame {
msec: 5520
- hash: "ed58b79d6459243c991a2f941279f88e"
+ hash: "3c6258003fba9b4a61bde3a5eb2394d5"
}
Frame {
msec: 5536
- hash: "ed58b79d6459243c991a2f941279f88e"
+ hash: "3c6258003fba9b4a61bde3a5eb2394d5"
}
Frame {
msec: 5552
- hash: "ed58b79d6459243c991a2f941279f88e"
+ hash: "3c6258003fba9b4a61bde3a5eb2394d5"
}
Frame {
msec: 5568
- hash: "ed58b79d6459243c991a2f941279f88e"
+ hash: "3c6258003fba9b4a61bde3a5eb2394d5"
}
Frame {
msec: 5584
- hash: "ed58b79d6459243c991a2f941279f88e"
+ hash: "3c6258003fba9b4a61bde3a5eb2394d5"
}
Frame {
msec: 5600
- hash: "ed58b79d6459243c991a2f941279f88e"
+ hash: "3c6258003fba9b4a61bde3a5eb2394d5"
}
Frame {
msec: 5616
- hash: "ed58b79d6459243c991a2f941279f88e"
+ hash: "3c6258003fba9b4a61bde3a5eb2394d5"
}
Key {
type: 7
@@ -1578,11 +1578,11 @@ VisualTest {
}
Frame {
msec: 5632
- hash: "c5d53d11b73e52746d8cdc7de15198cb"
+ hash: "f2c1bfd1a4ffb5bc0a5a354707a8ecf8"
}
Frame {
msec: 5648
- hash: "c5d53d11b73e52746d8cdc7de15198cb"
+ hash: "f2c1bfd1a4ffb5bc0a5a354707a8ecf8"
}
Key {
type: 7
@@ -1602,11 +1602,11 @@ VisualTest {
}
Frame {
msec: 5664
- hash: "ba3ef31e650737ec5b7477baa4ab5ecf"
+ hash: "9f4fc35d1b6f5984972da9f819a4031e"
}
Frame {
msec: 5680
- hash: "ba3ef31e650737ec5b7477baa4ab5ecf"
+ hash: "9f4fc35d1b6f5984972da9f819a4031e"
}
Key {
type: 7
@@ -1626,11 +1626,11 @@ VisualTest {
}
Frame {
msec: 5696
- hash: "59098eca4502479da33d40ec82896330"
+ hash: "68e84d0e6c0febe00cbc8ff13e7efae1"
}
Frame {
msec: 5712
- hash: "59098eca4502479da33d40ec82896330"
+ hash: "68e84d0e6c0febe00cbc8ff13e7efae1"
}
Key {
type: 7
@@ -1650,11 +1650,11 @@ VisualTest {
}
Frame {
msec: 5728
- hash: "9c1888b9575771f653d672c19ab4083f"
+ hash: "f0c61e706be86d31f124d6405c14c5b4"
}
Frame {
msec: 5744
- hash: "9c1888b9575771f653d672c19ab4083f"
+ hash: "f0c61e706be86d31f124d6405c14c5b4"
}
Key {
type: 7
@@ -1674,11 +1674,11 @@ VisualTest {
}
Frame {
msec: 5760
- image: "usingLineEdit.5.png"
+ hash: "dbca3c9292e2a6efac887a33b735607f"
}
Frame {
msec: 5776
- hash: "48bb05f44207f641b573d43043882aa2"
+ image: "usingLineEdit.6.png"
}
Key {
type: 7
@@ -1698,11 +1698,11 @@ VisualTest {
}
Frame {
msec: 5792
- hash: "f5cb70509c060343a8c9b57d26ecf4ea"
+ hash: "6cb5d4a9c79ac3dc6522c5a1022b2e6e"
}
Frame {
msec: 5808
- hash: "f5cb70509c060343a8c9b57d26ecf4ea"
+ hash: "6cb5d4a9c79ac3dc6522c5a1022b2e6e"
}
Key {
type: 7
@@ -1722,11 +1722,11 @@ VisualTest {
}
Frame {
msec: 5824
- hash: "5bdfe389421df56140d27a21bbcc10d4"
+ hash: "71d67363467f3053393382b887f43401"
}
Frame {
msec: 5840
- hash: "5bdfe389421df56140d27a21bbcc10d4"
+ hash: "71d67363467f3053393382b887f43401"
}
Key {
type: 7
@@ -1738,7 +1738,7 @@ VisualTest {
}
Frame {
msec: 5856
- hash: "5bdfe389421df56140d27a21bbcc10d4"
+ hash: "71d67363467f3053393382b887f43401"
}
Key {
type: 6
@@ -1750,11 +1750,11 @@ VisualTest {
}
Frame {
msec: 5872
- hash: "0f48c779e033240e87675b43cfca02c5"
+ hash: "db9175c9b81cb4b43f6d4d80549a5ae1"
}
Frame {
msec: 5888
- hash: "0f48c779e033240e87675b43cfca02c5"
+ hash: "db9175c9b81cb4b43f6d4d80549a5ae1"
}
Key {
type: 7
@@ -1774,7 +1774,7 @@ VisualTest {
}
Frame {
msec: 5904
- hash: "f5e148d32ec832bb9c4fb49016da7903"
+ hash: "535d1bbe1d2147d70bec0b7d932eff41"
}
Key {
type: 7
@@ -1786,39 +1786,39 @@ VisualTest {
}
Frame {
msec: 5920
- hash: "f5e148d32ec832bb9c4fb49016da7903"
+ hash: "535d1bbe1d2147d70bec0b7d932eff41"
}
Frame {
msec: 5936
- hash: "f5e148d32ec832bb9c4fb49016da7903"
+ hash: "535d1bbe1d2147d70bec0b7d932eff41"
}
Frame {
msec: 5952
- hash: "f5e148d32ec832bb9c4fb49016da7903"
+ hash: "535d1bbe1d2147d70bec0b7d932eff41"
}
Frame {
msec: 5968
- hash: "f5e148d32ec832bb9c4fb49016da7903"
+ hash: "535d1bbe1d2147d70bec0b7d932eff41"
}
Frame {
msec: 5984
- hash: "f5e148d32ec832bb9c4fb49016da7903"
+ hash: "535d1bbe1d2147d70bec0b7d932eff41"
}
Frame {
msec: 6000
- hash: "f5e148d32ec832bb9c4fb49016da7903"
+ hash: "535d1bbe1d2147d70bec0b7d932eff41"
}
Frame {
msec: 6016
- hash: "f5e148d32ec832bb9c4fb49016da7903"
+ hash: "535d1bbe1d2147d70bec0b7d932eff41"
}
Frame {
msec: 6032
- hash: "f5e148d32ec832bb9c4fb49016da7903"
+ hash: "535d1bbe1d2147d70bec0b7d932eff41"
}
Frame {
msec: 6048
- hash: "f5e148d32ec832bb9c4fb49016da7903"
+ hash: "535d1bbe1d2147d70bec0b7d932eff41"
}
Key {
type: 6
@@ -1830,27 +1830,27 @@ VisualTest {
}
Frame {
msec: 6064
- hash: "f5e148d32ec832bb9c4fb49016da7903"
+ hash: "535d1bbe1d2147d70bec0b7d932eff41"
}
Frame {
msec: 6080
- hash: "f5e148d32ec832bb9c4fb49016da7903"
+ hash: "535d1bbe1d2147d70bec0b7d932eff41"
}
Frame {
msec: 6096
- hash: "f5e148d32ec832bb9c4fb49016da7903"
+ hash: "535d1bbe1d2147d70bec0b7d932eff41"
}
Frame {
msec: 6112
- hash: "f5e148d32ec832bb9c4fb49016da7903"
+ hash: "535d1bbe1d2147d70bec0b7d932eff41"
}
Frame {
msec: 6128
- hash: "f5e148d32ec832bb9c4fb49016da7903"
+ hash: "535d1bbe1d2147d70bec0b7d932eff41"
}
Frame {
msec: 6144
- hash: "f5e148d32ec832bb9c4fb49016da7903"
+ hash: "535d1bbe1d2147d70bec0b7d932eff41"
}
Key {
type: 6
@@ -1862,67 +1862,67 @@ VisualTest {
}
Frame {
msec: 6160
- hash: "ac4c53142eea27d7148c74de76cdc4d4"
+ hash: "63132fa980a9fdcce415af1503f34ca6"
}
Frame {
msec: 6176
- hash: "ac4c53142eea27d7148c74de76cdc4d4"
+ hash: "63132fa980a9fdcce415af1503f34ca6"
}
Frame {
msec: 6192
- hash: "ac4c53142eea27d7148c74de76cdc4d4"
+ hash: "63132fa980a9fdcce415af1503f34ca6"
}
Frame {
msec: 6208
- hash: "ac4c53142eea27d7148c74de76cdc4d4"
+ hash: "63132fa980a9fdcce415af1503f34ca6"
}
Frame {
msec: 6224
- hash: "ac4c53142eea27d7148c74de76cdc4d4"
+ hash: "63132fa980a9fdcce415af1503f34ca6"
}
Frame {
msec: 6240
- hash: "ac4c53142eea27d7148c74de76cdc4d4"
+ hash: "63132fa980a9fdcce415af1503f34ca6"
}
Frame {
msec: 6256
- hash: "ac4c53142eea27d7148c74de76cdc4d4"
+ hash: "63132fa980a9fdcce415af1503f34ca6"
}
Frame {
msec: 6272
- hash: "ac4c53142eea27d7148c74de76cdc4d4"
+ hash: "63132fa980a9fdcce415af1503f34ca6"
}
Frame {
msec: 6288
- hash: "ac4c53142eea27d7148c74de76cdc4d4"
+ hash: "63132fa980a9fdcce415af1503f34ca6"
}
Frame {
msec: 6304
- hash: "ac4c53142eea27d7148c74de76cdc4d4"
+ hash: "63132fa980a9fdcce415af1503f34ca6"
}
Frame {
msec: 6320
- hash: "ac4c53142eea27d7148c74de76cdc4d4"
+ hash: "63132fa980a9fdcce415af1503f34ca6"
}
Frame {
msec: 6336
- hash: "ac4c53142eea27d7148c74de76cdc4d4"
+ hash: "63132fa980a9fdcce415af1503f34ca6"
}
Frame {
msec: 6352
- hash: "ac4c53142eea27d7148c74de76cdc4d4"
+ hash: "63132fa980a9fdcce415af1503f34ca6"
}
Frame {
msec: 6368
- hash: "ac4c53142eea27d7148c74de76cdc4d4"
+ hash: "63132fa980a9fdcce415af1503f34ca6"
}
Frame {
msec: 6384
- hash: "ac4c53142eea27d7148c74de76cdc4d4"
+ hash: "63132fa980a9fdcce415af1503f34ca6"
}
Frame {
msec: 6400
- hash: "ac4c53142eea27d7148c74de76cdc4d4"
+ hash: "63132fa980a9fdcce415af1503f34ca6"
}
Key {
type: 7
@@ -1942,11 +1942,11 @@ VisualTest {
}
Frame {
msec: 6416
- hash: "ecfa95feb59486098b758894cba272c8"
+ hash: "cf2ccad24e42d8764c1395e076f3a0df"
}
Frame {
msec: 6432
- hash: "ecfa95feb59486098b758894cba272c8"
+ hash: "cf2ccad24e42d8764c1395e076f3a0df"
}
Key {
type: 7
@@ -1966,11 +1966,11 @@ VisualTest {
}
Frame {
msec: 6448
- hash: "ecfa95feb59486098b758894cba272c8"
+ hash: "cf2ccad24e42d8764c1395e076f3a0df"
}
Frame {
msec: 6464
- hash: "ecfa95feb59486098b758894cba272c8"
+ hash: "cf2ccad24e42d8764c1395e076f3a0df"
}
Key {
type: 7
@@ -1998,83 +1998,83 @@ VisualTest {
}
Frame {
msec: 6480
- hash: "ecfa95feb59486098b758894cba272c8"
+ hash: "cf2ccad24e42d8764c1395e076f3a0df"
}
Frame {
msec: 6496
- hash: "ecfa95feb59486098b758894cba272c8"
+ hash: "cf2ccad24e42d8764c1395e076f3a0df"
}
Frame {
msec: 6512
- hash: "ecfa95feb59486098b758894cba272c8"
+ hash: "cf2ccad24e42d8764c1395e076f3a0df"
}
Frame {
msec: 6528
- hash: "ecfa95feb59486098b758894cba272c8"
+ hash: "cf2ccad24e42d8764c1395e076f3a0df"
}
Frame {
msec: 6544
- hash: "ecfa95feb59486098b758894cba272c8"
+ hash: "cf2ccad24e42d8764c1395e076f3a0df"
}
Frame {
msec: 6560
- hash: "ecfa95feb59486098b758894cba272c8"
+ hash: "cf2ccad24e42d8764c1395e076f3a0df"
}
Frame {
msec: 6576
- hash: "ecfa95feb59486098b758894cba272c8"
+ hash: "cf2ccad24e42d8764c1395e076f3a0df"
}
Frame {
msec: 6592
- hash: "ecfa95feb59486098b758894cba272c8"
+ hash: "cf2ccad24e42d8764c1395e076f3a0df"
}
Frame {
msec: 6608
- hash: "ecfa95feb59486098b758894cba272c8"
+ hash: "cf2ccad24e42d8764c1395e076f3a0df"
}
Frame {
msec: 6624
- hash: "ecfa95feb59486098b758894cba272c8"
+ hash: "cf2ccad24e42d8764c1395e076f3a0df"
}
Frame {
msec: 6640
- hash: "ecfa95feb59486098b758894cba272c8"
+ hash: "cf2ccad24e42d8764c1395e076f3a0df"
}
Frame {
msec: 6656
- hash: "ecfa95feb59486098b758894cba272c8"
+ hash: "cf2ccad24e42d8764c1395e076f3a0df"
}
Frame {
msec: 6672
- hash: "ecfa95feb59486098b758894cba272c8"
+ hash: "cf2ccad24e42d8764c1395e076f3a0df"
}
Frame {
msec: 6688
- hash: "ecfa95feb59486098b758894cba272c8"
+ hash: "cf2ccad24e42d8764c1395e076f3a0df"
}
Frame {
msec: 6704
- hash: "ecfa95feb59486098b758894cba272c8"
+ hash: "cf2ccad24e42d8764c1395e076f3a0df"
}
Frame {
msec: 6720
- image: "usingLineEdit.6.png"
+ hash: "cf2ccad24e42d8764c1395e076f3a0df"
}
Frame {
msec: 6736
- hash: "ecfa95feb59486098b758894cba272c8"
+ image: "usingLineEdit.7.png"
}
Frame {
msec: 6752
- hash: "ecfa95feb59486098b758894cba272c8"
+ hash: "cf2ccad24e42d8764c1395e076f3a0df"
}
Frame {
msec: 6768
- hash: "ecfa95feb59486098b758894cba272c8"
+ hash: "cf2ccad24e42d8764c1395e076f3a0df"
}
Frame {
msec: 6784
- hash: "ecfa95feb59486098b758894cba272c8"
+ hash: "cf2ccad24e42d8764c1395e076f3a0df"
}
Key {
type: 6
@@ -2086,7 +2086,7 @@ VisualTest {
}
Frame {
msec: 6800
- hash: "ecfa95feb59486098b758894cba272c8"
+ hash: "cf2ccad24e42d8764c1395e076f3a0df"
}
Key {
type: 7
@@ -2098,39 +2098,39 @@ VisualTest {
}
Frame {
msec: 6816
- hash: "ecfa95feb59486098b758894cba272c8"
+ hash: "cf2ccad24e42d8764c1395e076f3a0df"
}
Frame {
msec: 6832
- hash: "ecfa95feb59486098b758894cba272c8"
+ hash: "cf2ccad24e42d8764c1395e076f3a0df"
}
Frame {
msec: 6848
- hash: "ecfa95feb59486098b758894cba272c8"
+ hash: "cf2ccad24e42d8764c1395e076f3a0df"
}
Frame {
msec: 6864
- hash: "ecfa95feb59486098b758894cba272c8"
+ hash: "cf2ccad24e42d8764c1395e076f3a0df"
}
Frame {
msec: 6880
- hash: "ecfa95feb59486098b758894cba272c8"
+ hash: "cf2ccad24e42d8764c1395e076f3a0df"
}
Frame {
msec: 6896
- hash: "ecfa95feb59486098b758894cba272c8"
+ hash: "cf2ccad24e42d8764c1395e076f3a0df"
}
Frame {
msec: 6912
- hash: "ecfa95feb59486098b758894cba272c8"
+ hash: "cf2ccad24e42d8764c1395e076f3a0df"
}
Frame {
msec: 6928
- hash: "ecfa95feb59486098b758894cba272c8"
+ hash: "cf2ccad24e42d8764c1395e076f3a0df"
}
Frame {
msec: 6944
- hash: "ecfa95feb59486098b758894cba272c8"
+ hash: "cf2ccad24e42d8764c1395e076f3a0df"
}
Key {
type: 6
@@ -2142,19 +2142,19 @@ VisualTest {
}
Frame {
msec: 6960
- hash: "012fbe791afb6bb8b97091fbec1b0add"
+ hash: "43217b3192aea23b17e2a2e7d820def8"
}
Frame {
msec: 6976
- hash: "012fbe791afb6bb8b97091fbec1b0add"
+ hash: "43217b3192aea23b17e2a2e7d820def8"
}
Frame {
msec: 6992
- hash: "012fbe791afb6bb8b97091fbec1b0add"
+ hash: "43217b3192aea23b17e2a2e7d820def8"
}
Frame {
msec: 7008
- hash: "012fbe791afb6bb8b97091fbec1b0add"
+ hash: "43217b3192aea23b17e2a2e7d820def8"
}
Key {
type: 7
@@ -2166,23 +2166,23 @@ VisualTest {
}
Frame {
msec: 7024
- hash: "012fbe791afb6bb8b97091fbec1b0add"
+ hash: "43217b3192aea23b17e2a2e7d820def8"
}
Frame {
msec: 7040
- hash: "012fbe791afb6bb8b97091fbec1b0add"
+ hash: "43217b3192aea23b17e2a2e7d820def8"
}
Frame {
msec: 7056
- hash: "012fbe791afb6bb8b97091fbec1b0add"
+ hash: "43217b3192aea23b17e2a2e7d820def8"
}
Frame {
msec: 7072
- hash: "012fbe791afb6bb8b97091fbec1b0add"
+ hash: "43217b3192aea23b17e2a2e7d820def8"
}
Frame {
msec: 7088
- hash: "012fbe791afb6bb8b97091fbec1b0add"
+ hash: "43217b3192aea23b17e2a2e7d820def8"
}
Key {
type: 6
@@ -2194,19 +2194,19 @@ VisualTest {
}
Frame {
msec: 7104
- hash: "d1246ecb1e587b9618d4affb6303581b"
+ hash: "02dceb1b71d82bfbea5fcfb630fef22d"
}
Frame {
msec: 7120
- hash: "d1246ecb1e587b9618d4affb6303581b"
+ hash: "02dceb1b71d82bfbea5fcfb630fef22d"
}
Frame {
msec: 7136
- hash: "d1246ecb1e587b9618d4affb6303581b"
+ hash: "02dceb1b71d82bfbea5fcfb630fef22d"
}
Frame {
msec: 7152
- hash: "d1246ecb1e587b9618d4affb6303581b"
+ hash: "02dceb1b71d82bfbea5fcfb630fef22d"
}
Key {
type: 7
@@ -2218,31 +2218,31 @@ VisualTest {
}
Frame {
msec: 7168
- hash: "d1246ecb1e587b9618d4affb6303581b"
+ hash: "02dceb1b71d82bfbea5fcfb630fef22d"
}
Frame {
msec: 7184
- hash: "d1246ecb1e587b9618d4affb6303581b"
+ hash: "02dceb1b71d82bfbea5fcfb630fef22d"
}
Frame {
msec: 7200
- hash: "d1246ecb1e587b9618d4affb6303581b"
+ hash: "02dceb1b71d82bfbea5fcfb630fef22d"
}
Frame {
msec: 7216
- hash: "d1246ecb1e587b9618d4affb6303581b"
+ hash: "02dceb1b71d82bfbea5fcfb630fef22d"
}
Frame {
msec: 7232
- hash: "d1246ecb1e587b9618d4affb6303581b"
+ hash: "02dceb1b71d82bfbea5fcfb630fef22d"
}
Frame {
msec: 7248
- hash: "d1246ecb1e587b9618d4affb6303581b"
+ hash: "02dceb1b71d82bfbea5fcfb630fef22d"
}
Frame {
msec: 7264
- hash: "d1246ecb1e587b9618d4affb6303581b"
+ hash: "02dceb1b71d82bfbea5fcfb630fef22d"
}
Key {
type: 6
@@ -2254,23 +2254,23 @@ VisualTest {
}
Frame {
msec: 7280
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7296
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7312
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7328
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7344
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Key {
type: 7
@@ -2282,47 +2282,47 @@ VisualTest {
}
Frame {
msec: 7360
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7376
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7392
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7408
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7424
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7440
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7456
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7472
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7488
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7504
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7520
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Key {
type: 7
@@ -2334,247 +2334,247 @@ VisualTest {
}
Frame {
msec: 7536
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7552
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7568
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7584
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7600
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7616
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7632
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7648
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7664
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7680
- image: "usingLineEdit.7.png"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7696
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ image: "usingLineEdit.8.png"
}
Frame {
msec: 7712
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7728
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7744
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7760
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7776
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7792
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7808
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7824
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7840
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7856
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7872
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7888
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7904
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7920
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7936
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7952
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7968
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 7984
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 8000
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 8016
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 8032
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 8048
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 8064
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 8080
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 8096
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 8112
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 8128
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 8144
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 8160
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 8176
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 8192
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 8208
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 8224
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 8240
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 8256
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 8272
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 8288
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 8304
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 8320
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 8336
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 8352
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 8368
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 8384
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 8400
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 8416
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 8432
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 8448
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 8464
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 8480
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Frame {
msec: 8496
- hash: "28b1455bb7b150afb4bec88f3328a1f6"
+ hash: "cff8ff96fe5f67faac7a04805d2a945b"
}
Mouse {
type: 2
@@ -2586,19 +2586,19 @@ VisualTest {
}
Frame {
msec: 8512
- hash: "edb037dfb1fe973df3896e4a2d649b8c"
+ hash: "b901d339089fccecd217f562e3b0253a"
}
Frame {
msec: 8528
- hash: "edb037dfb1fe973df3896e4a2d649b8c"
+ hash: "b901d339089fccecd217f562e3b0253a"
}
Frame {
msec: 8544
- hash: "edb037dfb1fe973df3896e4a2d649b8c"
+ hash: "b901d339089fccecd217f562e3b0253a"
}
Frame {
msec: 8560
- hash: "edb037dfb1fe973df3896e4a2d649b8c"
+ hash: "b901d339089fccecd217f562e3b0253a"
}
Mouse {
type: 5
@@ -2618,7 +2618,7 @@ VisualTest {
}
Frame {
msec: 8576
- hash: "edb037dfb1fe973df3896e4a2d649b8c"
+ hash: "b901d339089fccecd217f562e3b0253a"
}
Mouse {
type: 5
@@ -2630,7 +2630,7 @@ VisualTest {
}
Frame {
msec: 8592
- hash: "56e3c2d792e204e7d9758263edb6ab24"
+ hash: "8173ad74ad73a8061af3edb8322b3e28"
}
Mouse {
type: 5
@@ -2650,7 +2650,7 @@ VisualTest {
}
Frame {
msec: 8608
- hash: "74b47cf865838cdb3b29cd2104d990fe"
+ hash: "8173ad74ad73a8061af3edb8322b3e28"
}
Mouse {
type: 5
@@ -2662,7 +2662,7 @@ VisualTest {
}
Frame {
msec: 8624
- hash: "b7f624c97fc369c66314ecbb86549686"
+ hash: "a470057b75a1aade3945dbb61526ae50"
}
Mouse {
type: 5
@@ -2682,7 +2682,7 @@ VisualTest {
}
Frame {
msec: 8640
- image: "usingLineEdit.8.png"
+ hash: "a470057b75a1aade3945dbb61526ae50"
}
Mouse {
type: 5
@@ -2694,7 +2694,7 @@ VisualTest {
}
Frame {
msec: 8656
- hash: "b7f624c97fc369c66314ecbb86549686"
+ image: "usingLineEdit.9.png"
}
Mouse {
type: 5
@@ -2714,7 +2714,7 @@ VisualTest {
}
Frame {
msec: 8672
- hash: "51219dfa7fc899bdba40d50b90ca3ca6"
+ hash: "74c1edc228a7c4ba1c0adab9ed7dd086"
}
Mouse {
type: 5
@@ -2726,7 +2726,7 @@ VisualTest {
}
Frame {
msec: 8688
- hash: "51219dfa7fc899bdba40d50b90ca3ca6"
+ hash: "74c1edc228a7c4ba1c0adab9ed7dd086"
}
Mouse {
type: 5
@@ -2746,7 +2746,7 @@ VisualTest {
}
Frame {
msec: 8704
- hash: "51219dfa7fc899bdba40d50b90ca3ca6"
+ hash: "74c1edc228a7c4ba1c0adab9ed7dd086"
}
Mouse {
type: 5
@@ -2766,7 +2766,7 @@ VisualTest {
}
Frame {
msec: 8720
- hash: "51219dfa7fc899bdba40d50b90ca3ca6"
+ hash: "74c1edc228a7c4ba1c0adab9ed7dd086"
}
Mouse {
type: 5
@@ -2786,7 +2786,7 @@ VisualTest {
}
Frame {
msec: 8736
- hash: "9320132e49323d536d435ce4f2263502"
+ hash: "11e31d23d38f163c2c28ca042af7f9f6"
}
Mouse {
type: 5
@@ -2806,7 +2806,7 @@ VisualTest {
}
Frame {
msec: 8752
- hash: "9320132e49323d536d435ce4f2263502"
+ hash: "11e31d23d38f163c2c28ca042af7f9f6"
}
Mouse {
type: 5
@@ -2826,7 +2826,7 @@ VisualTest {
}
Frame {
msec: 8768
- hash: "9320132e49323d536d435ce4f2263502"
+ hash: "11e31d23d38f163c2c28ca042af7f9f6"
}
Mouse {
type: 5
@@ -2846,7 +2846,7 @@ VisualTest {
}
Frame {
msec: 8784
- hash: "ad318ee661054ed3b628c312467dc789"
+ hash: "11e31d23d38f163c2c28ca042af7f9f6"
}
Mouse {
type: 5
@@ -2866,7 +2866,7 @@ VisualTest {
}
Frame {
msec: 8800
- hash: "ad318ee661054ed3b628c312467dc789"
+ hash: "045f891731548aae37090e0cefb62170"
}
Mouse {
type: 5
@@ -2886,7 +2886,7 @@ VisualTest {
}
Frame {
msec: 8816
- hash: "ad318ee661054ed3b628c312467dc789"
+ hash: "045f891731548aae37090e0cefb62170"
}
Mouse {
type: 5
@@ -2906,7 +2906,7 @@ VisualTest {
}
Frame {
msec: 8832
- hash: "6916d64662dd8accaa2c70cbd9b94af9"
+ hash: "3b6f55bc49e7e326e40b0f3faae71a8b"
}
Mouse {
type: 5
@@ -2926,7 +2926,7 @@ VisualTest {
}
Frame {
msec: 8848
- hash: "dd995b598e90d482291b94f9cbebace9"
+ hash: "abc04cd8ca8759f981f8e2c3b30a33ac"
}
Mouse {
type: 5
@@ -2946,7 +2946,7 @@ VisualTest {
}
Frame {
msec: 8864
- hash: "8fb2e565879fdb7ef5ca53a142c1ea45"
+ hash: "f96cc6aa0a38639146d8d691d699946b"
}
Mouse {
type: 5
@@ -2966,7 +2966,7 @@ VisualTest {
}
Frame {
msec: 8880
- hash: "6cdab9c68965444420401bb95c2d059b"
+ hash: "483743419cee348e8f6e24fd1e900ae6"
}
Mouse {
type: 5
@@ -2986,7 +2986,7 @@ VisualTest {
}
Frame {
msec: 8896
- hash: "d11156abb2ef56ef6b8c4e78e2391d8a"
+ hash: "50292f48ceeaee5f55795aea736631d0"
}
Mouse {
type: 5
@@ -3006,7 +3006,7 @@ VisualTest {
}
Frame {
msec: 8912
- hash: "2390c7bfd983c14a6ff4c3573741e2fa"
+ hash: "9739b19d1496baabad1a01cf35c90374"
}
Mouse {
type: 5
@@ -3026,7 +3026,7 @@ VisualTest {
}
Frame {
msec: 8928
- hash: "e7442142350b9fdaf7fc7e763cafbaf5"
+ hash: "bcf1719dc1ec19d3cca83e41ffd4ba0d"
}
Mouse {
type: 5
@@ -3046,7 +3046,7 @@ VisualTest {
}
Frame {
msec: 8944
- hash: "e7442142350b9fdaf7fc7e763cafbaf5"
+ hash: "192a6cf285d42c7a2996bf0342e69c97"
}
Mouse {
type: 5
@@ -3066,11 +3066,11 @@ VisualTest {
}
Frame {
msec: 8960
- hash: "e7442142350b9fdaf7fc7e763cafbaf5"
+ hash: "192a6cf285d42c7a2996bf0342e69c97"
}
Frame {
msec: 8976
- hash: "e7442142350b9fdaf7fc7e763cafbaf5"
+ hash: "192a6cf285d42c7a2996bf0342e69c97"
}
Mouse {
type: 5
@@ -3090,7 +3090,7 @@ VisualTest {
}
Frame {
msec: 8992
- hash: "e7442142350b9fdaf7fc7e763cafbaf5"
+ hash: "192a6cf285d42c7a2996bf0342e69c97"
}
Mouse {
type: 5
@@ -3102,55 +3102,55 @@ VisualTest {
}
Frame {
msec: 9008
- hash: "e7442142350b9fdaf7fc7e763cafbaf5"
+ hash: "192a6cf285d42c7a2996bf0342e69c97"
}
Frame {
msec: 9024
- hash: "e7442142350b9fdaf7fc7e763cafbaf5"
+ hash: "192a6cf285d42c7a2996bf0342e69c97"
}
Frame {
msec: 9040
- hash: "e7442142350b9fdaf7fc7e763cafbaf5"
+ hash: "192a6cf285d42c7a2996bf0342e69c97"
}
Frame {
msec: 9056
- hash: "e7442142350b9fdaf7fc7e763cafbaf5"
+ hash: "192a6cf285d42c7a2996bf0342e69c97"
}
Frame {
msec: 9072
- hash: "e7442142350b9fdaf7fc7e763cafbaf5"
+ hash: "192a6cf285d42c7a2996bf0342e69c97"
}
Frame {
msec: 9088
- hash: "e7442142350b9fdaf7fc7e763cafbaf5"
+ hash: "192a6cf285d42c7a2996bf0342e69c97"
}
Frame {
msec: 9104
- hash: "e7442142350b9fdaf7fc7e763cafbaf5"
+ hash: "192a6cf285d42c7a2996bf0342e69c97"
}
Frame {
msec: 9120
- hash: "e7442142350b9fdaf7fc7e763cafbaf5"
+ hash: "192a6cf285d42c7a2996bf0342e69c97"
}
Frame {
msec: 9136
- hash: "e7442142350b9fdaf7fc7e763cafbaf5"
+ hash: "192a6cf285d42c7a2996bf0342e69c97"
}
Frame {
msec: 9152
- hash: "e7442142350b9fdaf7fc7e763cafbaf5"
+ hash: "192a6cf285d42c7a2996bf0342e69c97"
}
Frame {
msec: 9168
- hash: "e7442142350b9fdaf7fc7e763cafbaf5"
+ hash: "192a6cf285d42c7a2996bf0342e69c97"
}
Frame {
msec: 9184
- hash: "e7442142350b9fdaf7fc7e763cafbaf5"
+ hash: "192a6cf285d42c7a2996bf0342e69c97"
}
Frame {
msec: 9200
- hash: "e7442142350b9fdaf7fc7e763cafbaf5"
+ hash: "192a6cf285d42c7a2996bf0342e69c97"
}
Mouse {
type: 5
@@ -3162,7 +3162,7 @@ VisualTest {
}
Frame {
msec: 9216
- hash: "e7442142350b9fdaf7fc7e763cafbaf5"
+ hash: "192a6cf285d42c7a2996bf0342e69c97"
}
Mouse {
type: 5
@@ -3174,7 +3174,7 @@ VisualTest {
}
Frame {
msec: 9232
- hash: "e7442142350b9fdaf7fc7e763cafbaf5"
+ hash: "192a6cf285d42c7a2996bf0342e69c97"
}
Mouse {
type: 5
@@ -3194,7 +3194,7 @@ VisualTest {
}
Frame {
msec: 9248
- hash: "e7442142350b9fdaf7fc7e763cafbaf5"
+ hash: "192a6cf285d42c7a2996bf0342e69c97"
}
Mouse {
type: 5
@@ -3214,7 +3214,7 @@ VisualTest {
}
Frame {
msec: 9264
- hash: "e7442142350b9fdaf7fc7e763cafbaf5"
+ hash: "192a6cf285d42c7a2996bf0342e69c97"
}
Mouse {
type: 5
@@ -3234,7 +3234,7 @@ VisualTest {
}
Frame {
msec: 9280
- hash: "e7442142350b9fdaf7fc7e763cafbaf5"
+ hash: "192a6cf285d42c7a2996bf0342e69c97"
}
Mouse {
type: 5
@@ -3254,7 +3254,7 @@ VisualTest {
}
Frame {
msec: 9296
- hash: "e7442142350b9fdaf7fc7e763cafbaf5"
+ hash: "192a6cf285d42c7a2996bf0342e69c97"
}
Mouse {
type: 5
@@ -3274,7 +3274,7 @@ VisualTest {
}
Frame {
msec: 9312
- hash: "e7442142350b9fdaf7fc7e763cafbaf5"
+ hash: "192a6cf285d42c7a2996bf0342e69c97"
}
Mouse {
type: 5
@@ -3294,7 +3294,7 @@ VisualTest {
}
Frame {
msec: 9328
- hash: "e7442142350b9fdaf7fc7e763cafbaf5"
+ hash: "192a6cf285d42c7a2996bf0342e69c97"
}
Mouse {
type: 5
@@ -3314,7 +3314,7 @@ VisualTest {
}
Frame {
msec: 9344
- hash: "e7442142350b9fdaf7fc7e763cafbaf5"
+ hash: "192a6cf285d42c7a2996bf0342e69c97"
}
Mouse {
type: 5
@@ -3334,7 +3334,7 @@ VisualTest {
}
Frame {
msec: 9360
- hash: "e7442142350b9fdaf7fc7e763cafbaf5"
+ hash: "192a6cf285d42c7a2996bf0342e69c97"
}
Mouse {
type: 5
@@ -3354,7 +3354,7 @@ VisualTest {
}
Frame {
msec: 9376
- hash: "e7442142350b9fdaf7fc7e763cafbaf5"
+ hash: "b79a6b6b2a670212a0f4310323352862"
}
Mouse {
type: 5
@@ -3374,7 +3374,7 @@ VisualTest {
}
Frame {
msec: 9392
- hash: "934022d70c2d094d6463d895803f2a79"
+ hash: "b79a6b6b2a670212a0f4310323352862"
}
Mouse {
type: 5
@@ -3394,7 +3394,7 @@ VisualTest {
}
Frame {
msec: 9408
- hash: "934022d70c2d094d6463d895803f2a79"
+ hash: "b79a6b6b2a670212a0f4310323352862"
}
Mouse {
type: 5
@@ -3414,7 +3414,7 @@ VisualTest {
}
Frame {
msec: 9424
- hash: "48caf4c2d3a5a6058b1ffa221ee77d83"
+ hash: "82ad8cef2dc81cf061785c211f1b2233"
}
Mouse {
type: 5
@@ -3434,7 +3434,7 @@ VisualTest {
}
Frame {
msec: 9440
- hash: "8e22c6013721d350acf1635f1c00488d"
+ hash: "dc5c2e4ac2c51ac7b84a527a77313ff5"
}
Mouse {
type: 5
@@ -3454,7 +3454,7 @@ VisualTest {
}
Frame {
msec: 9456
- hash: "c8dd72bfeec38d825dc7832f8bf7116d"
+ hash: "dc5c2e4ac2c51ac7b84a527a77313ff5"
}
Mouse {
type: 5
@@ -3474,7 +3474,7 @@ VisualTest {
}
Frame {
msec: 9472
- hash: "f3e934f22fead73fd52ab26d4f3fd480"
+ hash: "dceeee37f46351f54a6dbf9e1d304017"
}
Mouse {
type: 5
@@ -3494,7 +3494,7 @@ VisualTest {
}
Frame {
msec: 9488
- hash: "7fc03d3341860a984be91feec0b67da2"
+ hash: "dceeee37f46351f54a6dbf9e1d304017"
}
Mouse {
type: 5
@@ -3514,7 +3514,7 @@ VisualTest {
}
Frame {
msec: 9504
- hash: "7fc03d3341860a984be91feec0b67da2"
+ hash: "b5b370f86804d875363c8aa9fa53c0fe"
}
Mouse {
type: 5
@@ -3534,7 +3534,7 @@ VisualTest {
}
Frame {
msec: 9520
- hash: "a1eacc5be14a2c411660662dd9e78b2f"
+ hash: "b5b370f86804d875363c8aa9fa53c0fe"
}
Mouse {
type: 5
@@ -3546,7 +3546,7 @@ VisualTest {
}
Frame {
msec: 9536
- hash: "a1eacc5be14a2c411660662dd9e78b2f"
+ hash: "b5b370f86804d875363c8aa9fa53c0fe"
}
Mouse {
type: 5
@@ -3566,7 +3566,7 @@ VisualTest {
}
Frame {
msec: 9552
- hash: "a1eacc5be14a2c411660662dd9e78b2f"
+ hash: "8ae0e57709d94c27ecf34f9e76623ba8"
}
Mouse {
type: 5
@@ -3586,7 +3586,7 @@ VisualTest {
}
Frame {
msec: 9568
- hash: "6808d46fa17f9e359c38aeca72466c97"
+ hash: "8ae0e57709d94c27ecf34f9e76623ba8"
}
Mouse {
type: 5
@@ -3606,7 +3606,7 @@ VisualTest {
}
Frame {
msec: 9584
- hash: "0b4b632291769b48d942f5aea91a8ae5"
+ hash: "a29b5440525c9fbed90096f287396c91"
}
Mouse {
type: 5
@@ -3626,7 +3626,7 @@ VisualTest {
}
Frame {
msec: 9600
- image: "usingLineEdit.9.png"
+ hash: "d1091d48e0875fec9372c382c6961562"
}
Mouse {
type: 5
@@ -3638,7 +3638,7 @@ VisualTest {
}
Frame {
msec: 9616
- hash: "0b4b632291769b48d942f5aea91a8ae5"
+ image: "usingLineEdit.10.png"
}
Mouse {
type: 5
@@ -3658,7 +3658,7 @@ VisualTest {
}
Frame {
msec: 9632
- hash: "d730471882eacaf3280295d902c3927f"
+ hash: "d1091d48e0875fec9372c382c6961562"
}
Mouse {
type: 5
@@ -3678,7 +3678,7 @@ VisualTest {
}
Frame {
msec: 9648
- hash: "d730471882eacaf3280295d902c3927f"
+ hash: "d1091d48e0875fec9372c382c6961562"
}
Mouse {
type: 5
@@ -3698,7 +3698,7 @@ VisualTest {
}
Frame {
msec: 9664
- hash: "f2a17005ff90345b440475a772277495"
+ hash: "e1ac646b512dec95946fb52811c269da"
}
Mouse {
type: 5
@@ -3718,7 +3718,7 @@ VisualTest {
}
Frame {
msec: 9680
- hash: "62edb249cc9fcb08e5426f9acd54ad36"
+ hash: "29dfbe2f8ecee4ff5ecdf358a94f35f8"
}
Mouse {
type: 5
@@ -3738,7 +3738,7 @@ VisualTest {
}
Frame {
msec: 9696
- hash: "ef6497718983eb548ec2aa43781d2555"
+ hash: "2ce02f81e21d4f9a3fd8d78fc8182898"
}
Mouse {
type: 5
@@ -3758,7 +3758,7 @@ VisualTest {
}
Frame {
msec: 9712
- hash: "d5b90efb68335fc4aa1fc222c67d1f53"
+ hash: "09e41ca9d2286e99cdecb446a33cbf99"
}
Mouse {
type: 5
@@ -3778,7 +3778,7 @@ VisualTest {
}
Frame {
msec: 9728
- hash: "a8cbbbe9cffd27002e8a1b3851b23bb0"
+ hash: "6d780f15bc7597420fc10b1a2f1c7f7f"
}
Mouse {
type: 5
@@ -3798,7 +3798,7 @@ VisualTest {
}
Frame {
msec: 9744
- hash: "a448d8d01e84961098d6b86319013d5f"
+ hash: "afb956a94411eba22a0257faa5cbc57f"
}
Mouse {
type: 5
@@ -3818,7 +3818,7 @@ VisualTest {
}
Frame {
msec: 9760
- hash: "afa98074edfb7b0e904f5645f592efae"
+ hash: "8739d2d2f9d96f0bce61ce95bf1e6062"
}
Mouse {
type: 5
@@ -3838,7 +3838,7 @@ VisualTest {
}
Frame {
msec: 9776
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Mouse {
type: 5
@@ -3858,7 +3858,7 @@ VisualTest {
}
Frame {
msec: 9792
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Mouse {
type: 5
@@ -3870,7 +3870,7 @@ VisualTest {
}
Frame {
msec: 9808
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Mouse {
type: 5
@@ -3882,7 +3882,7 @@ VisualTest {
}
Frame {
msec: 9824
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Mouse {
type: 5
@@ -3894,7 +3894,7 @@ VisualTest {
}
Frame {
msec: 9840
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Mouse {
type: 5
@@ -3906,11 +3906,11 @@ VisualTest {
}
Frame {
msec: 9856
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 9872
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Mouse {
type: 5
@@ -3922,7 +3922,7 @@ VisualTest {
}
Frame {
msec: 9888
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Mouse {
type: 5
@@ -3934,7 +3934,7 @@ VisualTest {
}
Frame {
msec: 9904
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Mouse {
type: 5
@@ -3946,7 +3946,7 @@ VisualTest {
}
Frame {
msec: 9920
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Mouse {
type: 5
@@ -3958,11 +3958,11 @@ VisualTest {
}
Frame {
msec: 9936
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 9952
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Mouse {
type: 5
@@ -3974,7 +3974,7 @@ VisualTest {
}
Frame {
msec: 9968
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Mouse {
type: 5
@@ -3986,7 +3986,7 @@ VisualTest {
}
Frame {
msec: 9984
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Mouse {
type: 5
@@ -3998,11 +3998,11 @@ VisualTest {
}
Frame {
msec: 10000
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10016
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Mouse {
type: 5
@@ -4014,59 +4014,59 @@ VisualTest {
}
Frame {
msec: 10032
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10048
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10064
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10080
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10096
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10112
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10128
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10144
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10160
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10176
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10192
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10208
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10224
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10240
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Mouse {
type: 3
@@ -4078,258 +4078,258 @@ VisualTest {
}
Frame {
msec: 10256
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10272
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10288
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10304
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10320
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10336
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10352
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10368
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10384
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10400
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10416
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10432
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10448
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10464
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10480
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10496
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10512
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10528
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10544
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10560
- image: "usingLineEdit.10.png"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10576
- hash: "020ac5797abe98f97c4839afc67aac18"
+ image: "usingLineEdit.11.png"
}
Frame {
msec: 10592
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10608
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10624
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10640
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10656
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10672
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10688
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10704
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10720
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10736
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10752
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10768
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10784
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10800
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10816
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10832
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10848
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10864
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10880
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10896
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10912
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10928
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10944
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10960
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10976
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 10992
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 11008
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 11024
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 11040
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 11056
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 11072
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 11088
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 11104
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 11120
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 11136
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 11152
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 11168
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 11184
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 11200
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 11216
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 11232
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 11248
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
Frame {
msec: 11264
- hash: "020ac5797abe98f97c4839afc67aac18"
+ hash: "4e2cb8e4cedab8df2ff823e18b17e575"
}
}
diff --git a/tests/auto/declarative/qmlvisual/rect/GradientRect.qml b/tests/auto/declarative/qmlvisual/rect/GradientRect.qml
index dea53778a7..5ac7dcf239 100644
--- a/tests/auto/declarative/qmlvisual/rect/GradientRect.qml
+++ b/tests/auto/declarative/qmlvisual/rect/GradientRect.qml
@@ -9,11 +9,11 @@ Item {
property int borderWidth
property bool smooth: false
- width: 80; height: 80
+ width: 40; height: 40
Item {
anchors.centerIn: parent; rotation: rect.rotation;
Rectangle {
- anchors.centerIn: parent; width: 80; height: 80
+ anchors.centerIn: parent; width: 40; height: 40
border.color: rect.border; border.width: rect.border != Qt.rgba(0,0,0,0) ? 2 : 0
radius: rect.radius; smooth: rect.smooth
gradient: Gradient {
diff --git a/tests/auto/declarative/qmlvisual/rect/MyRect.qml b/tests/auto/declarative/qmlvisual/rect/MyRect.qml
index a595f7dbc0..99226d35d4 100644
--- a/tests/auto/declarative/qmlvisual/rect/MyRect.qml
+++ b/tests/auto/declarative/qmlvisual/rect/MyRect.qml
@@ -9,11 +9,11 @@ Item {
property int borderWidth
property bool smooth: false
- width: 80; height: 80
+ width: 40; height: 40
Item {
anchors.centerIn: parent; rotation: rect.rotation;
Rectangle {
- anchors.centerIn: parent; width: 80; height: 80
+ anchors.centerIn: parent; width: 40; height: 40
color: rect.color; border.color: rect.border; border.width: rect.border != Qt.rgba(0,0,0,0) ? 2 : 0
radius: rect.radius; smooth: rect.smooth
}
diff --git a/tests/auto/declarative/qmlvisual/rect/data/rect-painting.0.png b/tests/auto/declarative/qmlvisual/rect/data/rect-painting.0.png
index 391e76051a..1dc9372dc1 100644
--- a/tests/auto/declarative/qmlvisual/rect/data/rect-painting.0.png
+++ b/tests/auto/declarative/qmlvisual/rect/data/rect-painting.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/rect/rect-painting.qml b/tests/auto/declarative/qmlvisual/rect/rect-painting.qml
index 3c5d90c266..2de414dbf8 100644
--- a/tests/auto/declarative/qmlvisual/rect/rect-painting.qml
+++ b/tests/auto/declarative/qmlvisual/rect/rect-painting.qml
@@ -1,7 +1,7 @@
import QtQuick 1.0
Rectangle {
- width: 900; height: 500
+ width: 450; height: 250
color: "white"
Rectangle {
@@ -14,7 +14,7 @@ Rectangle {
Grid {
anchors.centerIn: parent
- columns: 8; rows:4; spacing: 30
+ columns: 8; rows:4; spacing: 15
MyRect { color: "lightsteelblue" }
MyRect { color: "lightsteelblue"; border: "gray" }
diff --git a/tests/auto/declarative/qmlvisual/shared/DejaVuSansMono.ttf b/tests/auto/declarative/qmlvisual/shared/DejaVuSansMono.ttf
new file mode 100644
index 0000000000..029fcac35f
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/shared/DejaVuSansMono.ttf
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/shared/TestText.qml b/tests/auto/declarative/qmlvisual/shared/TestText.qml
index be401124ba..ab624c319e 100644
--- a/tests/auto/declarative/qmlvisual/shared/TestText.qml
+++ b/tests/auto/declarative/qmlvisual/shared/TestText.qml
@@ -2,7 +2,7 @@ import QtQuick 1.0
import "../shared" 1.0
Text{
- FontLoader { id: fixedFont; source: "Vera.ttf" }
+ FontLoader { id: fixedFont; source: "DejaVuSansMono.ttf" }
font.family: fixedFont.name
font.pixelSize: 12
}
diff --git a/tests/auto/declarative/qmlvisual/shared/TestTextEdit.qml b/tests/auto/declarative/qmlvisual/shared/TestTextEdit.qml
index e19e4187e5..e7c5bc1b10 100644
--- a/tests/auto/declarative/qmlvisual/shared/TestTextEdit.qml
+++ b/tests/auto/declarative/qmlvisual/shared/TestTextEdit.qml
@@ -3,7 +3,7 @@ import "../shared" 1.0
TextEdit {
id: edit
- FontLoader { id: fixedFont; source: "Vera.ttf" }
+ FontLoader { id: fixedFont; source: "DejaVuSansMono.ttf" }
font.family: fixedFont.name
font.pixelSize: 12
cursorDelegate: Rectangle {
diff --git a/tests/auto/declarative/qmlvisual/shared/TestTextInput.qml b/tests/auto/declarative/qmlvisual/shared/TestTextInput.qml
index e01c2c2d03..64938e043c 100644
--- a/tests/auto/declarative/qmlvisual/shared/TestTextInput.qml
+++ b/tests/auto/declarative/qmlvisual/shared/TestTextInput.qml
@@ -3,7 +3,7 @@ import "../shared" 1.0
TextInput {
id: inp
- FontLoader { id: fixedFont; source: "Vera.ttf" }
+ FontLoader { id: fixedFont; source: "DejaVuSansMono.ttf" }
font.family: fixedFont.name
font.pixelSize: 12
cursorDelegate: Rectangle {
diff --git a/tests/auto/declarative/qmlvisual/shared/Vera.ttf b/tests/auto/declarative/qmlvisual/shared/Vera.ttf
deleted file mode 100644
index 58cd6b5e61..0000000000
--- a/tests/auto/declarative/qmlvisual/shared/Vera.ttf
+++ /dev/null
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/tst_qmlvisual.cpp b/tests/auto/declarative/qmlvisual/tst_qmlvisual.cpp
index ce08eabe89..3ca6d93208 100644
--- a/tests/auto/declarative/qmlvisual/tst_qmlvisual.cpp
+++ b/tests/auto/declarative/qmlvisual/tst_qmlvisual.cpp
@@ -102,43 +102,20 @@ void tst_qmlvisual::visual_data()
QTest::addColumn<QString>("testdata");
QStringList files;
- if (qgetenv("QMLVISUAL_ALL") != "0")
- files << findQmlFiles(QDir(QT_TEST_SOURCE_DIR));
- else {
- //these are newly added tests we want to try out in CI (then move to the stable list)
- files << QT_TEST_SOURCE_DIR "/animation/qtbug10586/qtbug10586.qml";
- files << QT_TEST_SOURCE_DIR "/qdeclarativeborderimage/animated.qml";
- files << QT_TEST_SOURCE_DIR "/qdeclarativeflipable/test-flipable.qml";
- files << QT_TEST_SOURCE_DIR "/qdeclarativepositioners/usingRepeater.qml";
- files << QT_TEST_SOURCE_DIR "/animation/parentAnimation2/parentAnimation2.qml";
-
- //these are tests we think are stable and useful enough to be run by the CI system
- files << QT_TEST_SOURCE_DIR "/animation/bindinganimation/bindinganimation.qml";
- files << QT_TEST_SOURCE_DIR "/animation/loop/loop.qml";
- files << QT_TEST_SOURCE_DIR "/animation/parallelAnimation/parallelAnimation-visual.qml";
- files << QT_TEST_SOURCE_DIR "/animation/parentAnimation/parentAnimation-visual.qml";
- files << QT_TEST_SOURCE_DIR "/animation/reanchor/reanchor.qml";
- files << QT_TEST_SOURCE_DIR "/animation/scriptAction/scriptAction-visual.qml";
- files << QT_TEST_SOURCE_DIR "/qdeclarativemousearea/drag.qml";
- files << QT_TEST_SOURCE_DIR "/fillmode/fillmode.qml";
-
- // new tests
- files << QT_TEST_SOURCE_DIR "/qdeclarativemousearea/mousearea-flickable.qml";
-
- //these reliably fail in CI, for unknown reasons
- //files << QT_TEST_SOURCE_DIR "/animation/easing/easing.qml";
- //files << QT_TEST_SOURCE_DIR "/animation/pauseAnimation/pauseAnimation-visual.qml";
- //files << QT_TEST_SOURCE_DIR "/qdeclarativeborderimage/borders.qml";
- //files << QT_TEST_SOURCE_DIR "/qdeclarativeborderimage/animated-smooth.qml";
-
- //these reliably fail on Linux because of color interpolation (different float rounding)
-#if !defined(Q_WS_X11) && !defined(Q_WS_QWS)
- files << QT_TEST_SOURCE_DIR "/animation/colorAnimation/colorAnimation-visual.qml";
- files << QT_TEST_SOURCE_DIR "/animation/propertyAction/propertyAction-visual.qml";
+ files << findQmlFiles(QDir(QT_TEST_SOURCE_DIR));
+ if (qgetenv("QMLVISUAL_ALL") != "1") {
+#if defined(Q_WS_MAC)
+ //Text on Mac varies per version. Only check the text on 10.6
+ if(QSysInfo::MacintoshVersion != QSysInfo::MV_10_6)
+ foreach(const QString &str, files.filter(QRegExp(".*text.*")))
+ files.removeAll(str);
+#endif
+#if defined(Q_WS_QWS)
+ //We don't want QWS test results to mire down the CI system
+ files.clear();
+ //Needs at least one test data or it fails anyways
+ files << QT_TEST_SOURCE_DIR "/selftest_noimages/selftest_noimages.qml";
#endif
-
- //this is unstable because the MouseArea press-and-hold timer is not synchronized to the animation framework.
- //files << QT_TEST_SOURCE_DIR "/qdeclarativemousearea/mousearea-visual.qml";
}
foreach (const QString &file, files) {
@@ -156,6 +133,9 @@ void tst_qmlvisual::visual()
QFETCH(QString, testdata);
QStringList arguments;
+#ifdef Q_WS_MAC
+ arguments << "-no-opengl";
+#endif
arguments << "-script" << testdata
<< "-scriptopts" << "play,testimages,testerror,testskip,exitoncomplete,exitonfailure"
<< file;
@@ -165,9 +145,11 @@ void tst_qmlvisual::visual()
QProcess p;
p.start(qmlruntime, arguments);
- QVERIFY(p.waitForFinished());
+ bool finished = p.waitForFinished();
+ QByteArray output = p.readAllStandardOutput() + p.readAllStandardError();
+ QVERIFY2(finished, output.data());
if (p.exitCode() != 0)
- qDebug() << p.readAllStandardError();
+ qDebug() << output;
QCOMPARE(p.exitStatus(), QProcess::NormalExit);
QCOMPARE(p.exitCode(), 0);
}
@@ -257,6 +239,9 @@ void action(Mode mode, const QString &file)
QString testdata = tst_qmlvisual::toTestScript(file,mode);
QStringList arguments;
+#ifdef Q_WS_MAC
+ arguments << "-no-opengl";
+#endif
switch (mode) {
case Test:
// Don't run qml
diff --git a/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.0.png b/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.0.png
new file mode 100644
index 0000000000..513aab69ec
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.0.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.1.png b/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.1.png
new file mode 100644
index 0000000000..513aab69ec
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.1.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.10.png b/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.10.png
new file mode 100644
index 0000000000..bb22d01d17
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.10.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.2.png b/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.2.png
new file mode 100644
index 0000000000..1357551f75
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.2.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.3.png b/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.3.png
new file mode 100644
index 0000000000..513aab69ec
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.3.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.4.png b/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.4.png
new file mode 100644
index 0000000000..bb22d01d17
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.4.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.5.png b/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.5.png
new file mode 100644
index 0000000000..bb22d01d17
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.5.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.6.png b/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.6.png
new file mode 100644
index 0000000000..c61ae3fda0
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.6.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.7.png b/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.7.png
new file mode 100644
index 0000000000..bb22d01d17
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.7.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.8.png b/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.8.png
new file mode 100644
index 0000000000..bb22d01d17
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.8.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.9.png b/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.9.png
new file mode 100644
index 0000000000..bb22d01d17
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.9.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.qml b/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.qml
new file mode 100644
index 0000000000..c248167fb0
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/webview/flickable/data/flickweb.qml
@@ -0,0 +1,6083 @@
+import Qt.VisualTest 4.7
+
+VisualTest {
+ Frame {
+ msec: 0
+ }
+ Frame {
+ msec: 16
+ image: "flickweb.0.png"
+ }
+ Frame {
+ msec: 32
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 48
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 64
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 80
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 96
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 112
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 128
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 144
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 160
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 176
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 192
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 208
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 224
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 240
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 256
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 272
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 288
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 304
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 320
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 336
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 352
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 368
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 384
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 400
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 416
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 432
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 448
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 464
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 480
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 496
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 512
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 528
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 544
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 0; y: 7
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 0; y: 7
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 560
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 12; y: 10
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 576
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 15; y: 11
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 592
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 608
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 624
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 640
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 12; y: 10
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 11; y: 10
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 656
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 9; y: 10
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 672
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 688
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 9; y: 11
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 704
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 9; y: 12
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 9; y: 15
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 720
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 9; y: 18
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 12; y: 24
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 736
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 14; y: 28
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 18; y: 35
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 752
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 19; y: 39
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 22; y: 43
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 768
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 22; y: 44
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 23; y: 44
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 784
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 800
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 23; y: 43
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 816
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 24; y: 45
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 832
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 26; y: 47
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 28; y: 49
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 848
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 29; y: 51
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 32; y: 55
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 864
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 34; y: 57
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 36; y: 61
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 880
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 38; y: 62
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 41; y: 66
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 896
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 43; y: 68
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 48; y: 73
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 912
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 50; y: 76
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 57; y: 80
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 928
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 63; y: 85
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 66; y: 87
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 944
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 72; y: 91
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 74; y: 93
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 960
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 80; y: 97
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 82; y: 99
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 976
+ image: "flickweb.1.png"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 86; y: 102
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 88; y: 103
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 992
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 91; y: 103
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 92; y: 104
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1008
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 1024
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 1040
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 92; y: 105
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1056
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 92; y: 106
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1072
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 92; y: 107
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 92; y: 108
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1088
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 92; y: 109
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1104
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 92; y: 110
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 92; y: 111
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1120
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 92; y: 112
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1136
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 92; y: 113
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 92; y: 114
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1152
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 92; y: 115
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 92; y: 116
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1168
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 92; y: 117
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1184
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 1200
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 92; y: 117
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1216
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 92; y: 116
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 92; y: 115
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1232
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 91; y: 112
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 91; y: 111
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1248
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 90; y: 107
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 90; y: 104
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1264
+ hash: "e891b00cd44578b4a8e635ffe4c6d3fd"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 90; y: 101
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 89; y: 96
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1280
+ hash: "61a543282ffb5e751ea1d97f0c95b208"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 89; y: 93
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 89; y: 85
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1296
+ hash: "102e4b664bade46ab3bbb611acee22c9"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 89; y: 81
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 87; y: 70
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1312
+ hash: "6bf42ac28a14db681442aeb7ed0c7610"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 85; y: 60
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 85; y: 60
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 84; y: 56
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1328
+ hash: "ef531060d6b75cec8a6e3c01b3f69cc0"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 84; y: 51
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 84; y: 49
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1344
+ hash: "e839af9d67f6214f0901977b3aa96d1a"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 84; y: 46
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 84; y: 43
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1360
+ hash: "b2d6b68f1f7229e8e65bb37e4c418a1b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 84; y: 41
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 85; y: 39
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1376
+ hash: "e4a562aa35aa532d15c9b129e22797bb"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 83; y: 38
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1392
+ hash: "029d347e9c99dd4a9cec5120ac7fc25e"
+ }
+ Frame {
+ msec: 1408
+ hash: "3c16a74e18a59630f35511ab5514c769"
+ }
+ Frame {
+ msec: 1424
+ hash: "5dc472d6c5198d5a628510bd45a61a11"
+ }
+ Frame {
+ msec: 1440
+ hash: "430d60127ed59dbc5904647424ead40d"
+ }
+ Frame {
+ msec: 1456
+ hash: "cb27cfcfbbb77b55c2a8bf7e51c0af07"
+ }
+ Frame {
+ msec: 1472
+ hash: "46f2eb33b0e8316c4123ddbee2f60ae2"
+ }
+ Frame {
+ msec: 1488
+ hash: "1df306111ca012c9f405018778c0a12b"
+ }
+ Frame {
+ msec: 1504
+ hash: "1eafab8fd457ad9acda068344178b4a8"
+ }
+ Frame {
+ msec: 1520
+ hash: "286656898100e53d6d7728b51ce93df5"
+ }
+ Frame {
+ msec: 1536
+ hash: "e2a88f0ba3030a430028147930989bbb"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 84; y: 38
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1552
+ hash: "fb23cf265c4d253470c2515043bc5dd8"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 83; y: 38
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1568
+ hash: "1dba4f0e5e5948b7133725ea8bbef3e7"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 83; y: 37
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 84; y: 38
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1584
+ hash: "8578965c5ad012284e4e0a14a42da25e"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 84; y: 34
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1600
+ hash: "3ef187decae08baa2ec92998c2cbb7f7"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 83; y: 31
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1616
+ hash: "4e0491128eac0bbfa7a131b1f18f243c"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 83; y: 26
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1632
+ hash: "c2d0799526e908204efbd3aa980e086c"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 83; y: 23
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1648
+ hash: "cc87e09a6784d61680f8c6ab0d6a38fa"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 84; y: 22
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 85; y: 16
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1664
+ hash: "13dec7e835b4f26970f98b66533f84f1"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 85; y: 14
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1680
+ hash: "e5d2862bee024b64326b7d85e5e45399"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 85; y: 12
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1696
+ hash: "0b1401ce4a91811ac9c3eec5f94b380d"
+ }
+ Frame {
+ msec: 1712
+ hash: "0de290542c9d3e03ed78f51423011c16"
+ }
+ Frame {
+ msec: 1728
+ hash: "4c9aa06ad1e246b4b026742fc8cf37bc"
+ }
+ Frame {
+ msec: 1744
+ hash: "c33003a8262c2ba25510ece181e61bc9"
+ }
+ Frame {
+ msec: 1760
+ hash: "c33003a8262c2ba25510ece181e61bc9"
+ }
+ Frame {
+ msec: 1776
+ hash: "ad184fa88c4299b8911c9b7ada5b3736"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 85; y: 12
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 85; y: 13
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 85; y: 15
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1792
+ hash: "ad184fa88c4299b8911c9b7ada5b3736"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 85; y: 17
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 85; y: 23
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1808
+ hash: "c2d0799526e908204efbd3aa980e086c"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 85; y: 30
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 85; y: 34
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1824
+ hash: "b343a9ed7e9740ec1725837fad766745"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 85; y: 41
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 85; y: 44
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1840
+ hash: "b33260ad955474452f204ed5d468ef78"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 85; y: 51
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 86; y: 55
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1856
+ hash: "9a647c54e378bd0ee35ef4164892722c"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 87; y: 61
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 88; y: 67
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 88; y: 67
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 89; y: 73
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1872
+ hash: "dc553d1a7b678dffea41147fc6b841f6"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 89; y: 74
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 89; y: 78
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1888
+ hash: "2d61b4fb1e5a8beb6e3c3cb53c21db42"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 89; y: 79
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 89; y: 82
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1904
+ hash: "209faf0b20fd53d9a1c261c8cae9666f"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 90; y: 82
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 91; y: 83
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 1920
+ hash: "3497258aa07c76f0e31b5a492ee7e7cb"
+ }
+ Frame {
+ msec: 1936
+ image: "flickweb.2.png"
+ }
+ Frame {
+ msec: 1952
+ hash: "64c677ac4fea0e525279e86bf831d5d3"
+ }
+ Frame {
+ msec: 1968
+ hash: "76c6c887fea94288e9fd975655e5181c"
+ }
+ Frame {
+ msec: 1984
+ hash: "71b85e596c88b84a851a52aa3389e63a"
+ }
+ Frame {
+ msec: 2000
+ hash: "e4a562aa35aa532d15c9b129e22797bb"
+ }
+ Frame {
+ msec: 2016
+ hash: "148484dd95c88720cc5ef196334cb9a8"
+ }
+ Frame {
+ msec: 2032
+ hash: "924c6254ffa1707b69174f49e4e95213"
+ }
+ Frame {
+ msec: 2048
+ hash: "9e61907acedb27941d8be2befa364cfb"
+ }
+ Frame {
+ msec: 2064
+ hash: "9e61907acedb27941d8be2befa364cfb"
+ }
+ Frame {
+ msec: 2080
+ hash: "f2c4e99db1bb087a40b277ce8ce628f6"
+ }
+ Frame {
+ msec: 2096
+ hash: "f2c4e99db1bb087a40b277ce8ce628f6"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 91; y: 82
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2112
+ hash: "b2d6b68f1f7229e8e65bb37e4c418a1b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 90; y: 82
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2128
+ hash: "b2d6b68f1f7229e8e65bb37e4c418a1b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 89; y: 81
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 88; y: 80
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2144
+ hash: "b2d6b68f1f7229e8e65bb37e4c418a1b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 87; y: 79
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 86; y: 77
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2160
+ hash: "b2d6b68f1f7229e8e65bb37e4c418a1b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 86; y: 76
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 86; y: 75
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2176
+ hash: "b2d6b68f1f7229e8e65bb37e4c418a1b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 85; y: 73
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 84; y: 71
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2192
+ hash: "b2d6b68f1f7229e8e65bb37e4c418a1b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 82; y: 68
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 81; y: 67
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2208
+ hash: "b2d6b68f1f7229e8e65bb37e4c418a1b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 76; y: 61
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 75; y: 59
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2224
+ hash: "b2d6b68f1f7229e8e65bb37e4c418a1b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 71; y: 54
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 70; y: 51
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2240
+ hash: "b2d6b68f1f7229e8e65bb37e4c418a1b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 70; y: 50
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 70; y: 49
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2256
+ hash: "b2d6b68f1f7229e8e65bb37e4c418a1b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 70; y: 47
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 69; y: 46
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2272
+ hash: "b2d6b68f1f7229e8e65bb37e4c418a1b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 68; y: 45
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 67; y: 43
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2288
+ hash: "b2d6b68f1f7229e8e65bb37e4c418a1b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 66; y: 43
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 65; y: 41
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2304
+ hash: "b2d6b68f1f7229e8e65bb37e4c418a1b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 64; y: 40
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 64; y: 39
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2320
+ hash: "b2d6b68f1f7229e8e65bb37e4c418a1b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 63; y: 38
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 63; y: 37
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2336
+ hash: "b2d6b68f1f7229e8e65bb37e4c418a1b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 63; y: 35
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 63; y: 34
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2352
+ hash: "b2d6b68f1f7229e8e65bb37e4c418a1b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 63; y: 33
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2368
+ hash: "b2d6b68f1f7229e8e65bb37e4c418a1b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 64; y: 32
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2384
+ hash: "b2d6b68f1f7229e8e65bb37e4c418a1b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 65; y: 32
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 65; y: 31
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2400
+ hash: "b2d6b68f1f7229e8e65bb37e4c418a1b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 66; y: 31
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 68; y: 31
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2416
+ hash: "b2d6b68f1f7229e8e65bb37e4c418a1b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 69; y: 30
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 71; y: 29
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2432
+ hash: "b2d6b68f1f7229e8e65bb37e4c418a1b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 73; y: 27
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 73; y: 26
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2448
+ hash: "b2d6b68f1f7229e8e65bb37e4c418a1b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 74; y: 24
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 74; y: 22
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2464
+ hash: "b2d6b68f1f7229e8e65bb37e4c418a1b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 74; y: 21
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 74; y: 20
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2480
+ hash: "b2d6b68f1f7229e8e65bb37e4c418a1b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 74; y: 18
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 74; y: 17
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2496
+ hash: "b2d6b68f1f7229e8e65bb37e4c418a1b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 74; y: 16
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 73; y: 15
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2512
+ hash: "b2d6b68f1f7229e8e65bb37e4c418a1b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 73; y: 14
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2528
+ hash: "b2d6b68f1f7229e8e65bb37e4c418a1b"
+ }
+ Frame {
+ msec: 2544
+ hash: "b2d6b68f1f7229e8e65bb37e4c418a1b"
+ }
+ Frame {
+ msec: 2560
+ hash: "b2d6b68f1f7229e8e65bb37e4c418a1b"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 73; y: 14
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2576
+ hash: "b2d6b68f1f7229e8e65bb37e4c418a1b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 73; y: 15
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 72; y: 17
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2592
+ hash: "b2d6b68f1f7229e8e65bb37e4c418a1b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 72; y: 24
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 72; y: 29
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2608
+ hash: "b2d6b68f1f7229e8e65bb37e4c418a1b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 72; y: 40
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 71; y: 47
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2624
+ hash: "c4dd48fca556c2760c8f81db7fea6938"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 70; y: 60
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 70; y: 78
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2640
+ hash: "9dbad8cb2692807d67f74e7ac4a4a70e"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 70; y: 88
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 70; y: 96
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 70; y: 96
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2656
+ hash: "152648affe4045a81f0d6ff9150889f1"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 70; y: 99
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 70; y: 102
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2672
+ hash: "152648affe4045a81f0d6ff9150889f1"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 73; y: 103
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 74; y: 103
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2688
+ hash: "152648affe4045a81f0d6ff9150889f1"
+ }
+ Frame {
+ msec: 2704
+ hash: "152648affe4045a81f0d6ff9150889f1"
+ }
+ Frame {
+ msec: 2720
+ hash: "152648affe4045a81f0d6ff9150889f1"
+ }
+ Frame {
+ msec: 2736
+ hash: "152648affe4045a81f0d6ff9150889f1"
+ }
+ Frame {
+ msec: 2752
+ hash: "152648affe4045a81f0d6ff9150889f1"
+ }
+ Frame {
+ msec: 2768
+ hash: "c9eee2b7529b07a17151e7140444c099"
+ }
+ Frame {
+ msec: 2784
+ hash: "c9eee2b7529b07a17151e7140444c099"
+ }
+ Frame {
+ msec: 2800
+ hash: "c9eee2b7529b07a17151e7140444c099"
+ }
+ Frame {
+ msec: 2816
+ hash: "c9eee2b7529b07a17151e7140444c099"
+ }
+ Frame {
+ msec: 2832
+ hash: "c9eee2b7529b07a17151e7140444c099"
+ }
+ Frame {
+ msec: 2848
+ hash: "c9eee2b7529b07a17151e7140444c099"
+ }
+ Frame {
+ msec: 2864
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 2880
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 2896
+ image: "flickweb.3.png"
+ }
+ Frame {
+ msec: 2912
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 2928
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 74; y: 102
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2944
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 74; y: 101
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 73; y: 98
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2960
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 69; y: 93
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 67; y: 91
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2976
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 62; y: 85
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 60; y: 83
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 2992
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 56; y: 77
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 55; y: 75
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3008
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 52; y: 70
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 49; y: 67
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3024
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 49; y: 65
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 48; y: 61
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3040
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 48; y: 60
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 46; y: 56
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3056
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 45; y: 54
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 42; y: 50
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3072
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 39; y: 47
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 38; y: 45
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3088
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 37; y: 44
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 36; y: 43
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3104
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 35; y: 41
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 35; y: 40
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3120
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 33; y: 39
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 33; y: 38
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3136
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 32; y: 37
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3152
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 32; y: 36
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 31; y: 36
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3168
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 31; y: 35
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3184
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 30; y: 35
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 30; y: 33
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3200
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 28; y: 32
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 28; y: 31
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3216
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 26; y: 29
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 26; y: 28
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3232
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 25; y: 27
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3248
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 25; y: 26
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3264
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 3280
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 3296
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 3312
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 25; y: 26
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3328
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 3344
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 3360
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Frame {
+ msec: 3376
+ hash: "d045839439e4091210c745f0ea173e52"
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 25; y: 26
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3392
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 25; y: 27
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3408
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 26; y: 27
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 26; y: 28
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3424
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 27; y: 28
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 27; y: 29
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3440
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 3456
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 3472
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 3488
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 3504
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 27; y: 30
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3520
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 28; y: 31
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 29; y: 34
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3536
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 31; y: 36
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 37; y: 43
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3552
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 40; y: 48
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 50; y: 59
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3568
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 55; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 65; y: 73
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3584
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 69; y: 77
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 75; y: 83
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3600
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 78; y: 85
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 80; y: 86
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3616
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 82; y: 88
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 83; y: 89
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3632
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 85; y: 90
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3648
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 3664
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 3680
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 3696
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 3712
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 3728
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 3744
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 3760
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 85; y: 89
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3776
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 3792
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 84; y: 88
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 84; y: 87
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3808
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 85; y: 85
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 84; y: 83
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 3824
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 3840
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 3856
+ image: "flickweb.4.png"
+ }
+ Frame {
+ msec: 3872
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 3888
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 3904
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 3920
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 3936
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 3952
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 3968
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 3984
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4000
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4016
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 84; y: 84
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4032
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 84; y: 87
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4048
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 83; y: 88
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4064
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4080
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4096
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4112
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4128
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 83; y: 89
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4144
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 82; y: 90
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4160
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 82; y: 91
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 82; y: 92
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4176
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 82; y: 93
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 82; y: 95
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4192
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 82; y: 97
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 83; y: 100
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4208
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 83; y: 101
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 83; y: 105
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4224
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 83; y: 107
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 83; y: 110
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4240
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 83; y: 113
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 83; y: 114
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4256
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 83; y: 115
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 83; y: 116
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4272
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 83; y: 117
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4288
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4304
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4320
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4336
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4352
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4368
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4384
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4400
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4416
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4432
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4448
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4464
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4480
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 83; y: 116
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4496
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4512
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4528
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4544
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4560
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4576
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4592
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4608
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 82; y: 116
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4624
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4640
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 82; y: 117
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4656
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4672
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4688
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 82; y: 118
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4704
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4720
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4736
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4752
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4768
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4784
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 83; y: 119
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4800
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4816
+ image: "flickweb.5.png"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 83; y: 119
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4832
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 4848
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 84; y: 119
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4864
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 85; y: 118
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 85; y: 117
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4880
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 86; y: 113
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 87; y: 111
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4896
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 89; y: 107
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 90; y: 104
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4912
+ hash: "f10fa114e248809ed280788d03a3e234"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 92; y: 99
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 93; y: 95
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4928
+ hash: "442357340d9690811d582f548f933d92"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 95; y: 88
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 98; y: 81
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 98; y: 81
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4944
+ hash: "188b8f78b2a2180a8e96a8a05bb20fe2"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 98; y: 77
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 99; y: 69
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4960
+ hash: "2b8ee42c5660f4f938cf10507690abbe"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 100; y: 66
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 101; y: 60
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4976
+ hash: "3d4aab388f62e64c5f72c631fb8584aa"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 103; y: 59
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 104; y: 56
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 4992
+ hash: "439364cea3330411f526093d58ece463"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 104; y: 55
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 104; y: 53
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5008
+ hash: "27653ec59651e6b3cb2ebf2bc81a975a"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 104; y: 52
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 104; y: 51
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5024
+ hash: "d9c0fb2cbf968e0524291ae2570ca585"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 105; y: 50
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 105; y: 49
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5040
+ hash: "ef75df694a972985f410e21182dbb12b"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 105; y: 48
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5056
+ hash: "adda6aa851c1587c1bb2605809348725"
+ }
+ Frame {
+ msec: 5072
+ hash: "196c12052069f0f8c775aa38d3291bef"
+ }
+ Frame {
+ msec: 5088
+ hash: "eaa025b6aee87edf95643cc46880d0db"
+ }
+ Frame {
+ msec: 5104
+ hash: "edeab897b82df47ae6deb858eca3087e"
+ }
+ Frame {
+ msec: 5120
+ hash: "46e3b5da149cfc40036a860e74e0cd78"
+ }
+ Frame {
+ msec: 5136
+ hash: "46e3b5da149cfc40036a860e74e0cd78"
+ }
+ Frame {
+ msec: 5152
+ hash: "0fe9b13b9b0752ab4ad74f4e43f94d86"
+ }
+ Frame {
+ msec: 5168
+ hash: "0fe9b13b9b0752ab4ad74f4e43f94d86"
+ }
+ Frame {
+ msec: 5184
+ hash: "695e9c7292475cad011ca76799452042"
+ }
+ Frame {
+ msec: 5200
+ hash: "695e9c7292475cad011ca76799452042"
+ }
+ Frame {
+ msec: 5216
+ hash: "695e9c7292475cad011ca76799452042"
+ }
+ Frame {
+ msec: 5232
+ hash: "695e9c7292475cad011ca76799452042"
+ }
+ Frame {
+ msec: 5248
+ hash: "695e9c7292475cad011ca76799452042"
+ }
+ Frame {
+ msec: 5264
+ hash: "695e9c7292475cad011ca76799452042"
+ }
+ Frame {
+ msec: 5280
+ hash: "695e9c7292475cad011ca76799452042"
+ }
+ Frame {
+ msec: 5296
+ hash: "695e9c7292475cad011ca76799452042"
+ }
+ Frame {
+ msec: 5312
+ hash: "695e9c7292475cad011ca76799452042"
+ }
+ Frame {
+ msec: 5328
+ hash: "695e9c7292475cad011ca76799452042"
+ }
+ Frame {
+ msec: 5344
+ hash: "695e9c7292475cad011ca76799452042"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 105; y: 47
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 104; y: 46
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5360
+ hash: "695e9c7292475cad011ca76799452042"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 103; y: 45
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 102; y: 45
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5376
+ hash: "695e9c7292475cad011ca76799452042"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 102; y: 44
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5392
+ hash: "695e9c7292475cad011ca76799452042"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 101; y: 43
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5408
+ hash: "695e9c7292475cad011ca76799452042"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 101; y: 42
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 100; y: 42
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5424
+ hash: "695e9c7292475cad011ca76799452042"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 99; y: 41
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 98; y: 40
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5440
+ hash: "695e9c7292475cad011ca76799452042"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 98; y: 39
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5456
+ hash: "695e9c7292475cad011ca76799452042"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 98; y: 38
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 98; y: 37
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5472
+ hash: "695e9c7292475cad011ca76799452042"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 98; y: 36
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 98; y: 35
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5488
+ hash: "695e9c7292475cad011ca76799452042"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 98; y: 33
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 98; y: 30
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5504
+ hash: "695e9c7292475cad011ca76799452042"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 98; y: 29
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 98; y: 28
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5520
+ hash: "695e9c7292475cad011ca76799452042"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 98; y: 26
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 98; y: 25
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5536
+ hash: "695e9c7292475cad011ca76799452042"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 98; y: 24
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 98; y: 23
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5552
+ hash: "695e9c7292475cad011ca76799452042"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 97; y: 23
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 97; y: 22
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5568
+ hash: "695e9c7292475cad011ca76799452042"
+ }
+ Frame {
+ msec: 5584
+ hash: "695e9c7292475cad011ca76799452042"
+ }
+ Frame {
+ msec: 5600
+ hash: "695e9c7292475cad011ca76799452042"
+ }
+ Frame {
+ msec: 5616
+ hash: "695e9c7292475cad011ca76799452042"
+ }
+ Frame {
+ msec: 5632
+ hash: "695e9c7292475cad011ca76799452042"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 97; y: 22
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5648
+ hash: "695e9c7292475cad011ca76799452042"
+ }
+ Frame {
+ msec: 5664
+ hash: "695e9c7292475cad011ca76799452042"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 97; y: 24
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 97; y: 26
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5680
+ hash: "695e9c7292475cad011ca76799452042"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 97; y: 28
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 97; y: 31
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5696
+ hash: "695e9c7292475cad011ca76799452042"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 97; y: 37
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 97; y: 42
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5712
+ hash: "27653ec59651e6b3cb2ebf2bc81a975a"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 97; y: 50
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 97; y: 58
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5728
+ hash: "f2a68c3a60002a796b0cd595ae89e477"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 97; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 97; y: 71
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5744
+ hash: "2628ffe66f06c997d9c9b66febc04ce8"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 97; y: 75
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 98; y: 83
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5760
+ hash: "9b68c76d622f7b883a13927a112179f0"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 99; y: 86
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 1
+ x: 101; y: 91
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 101; y: 91
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5776
+ image: "flickweb.6.png"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 103; y: 95
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 104; y: 95
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5792
+ hash: "6d6d87355037ec4a15b2a81c8d48b74d"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 107; y: 95
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 107; y: 94
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5808
+ hash: "6d6d87355037ec4a15b2a81c8d48b74d"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 107; y: 93
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5824
+ hash: "6d6d87355037ec4a15b2a81c8d48b74d"
+ }
+ Frame {
+ msec: 5840
+ hash: "6d6d87355037ec4a15b2a81c8d48b74d"
+ }
+ Frame {
+ msec: 5856
+ hash: "34c3edc4500a268a326b5c2156c12f09"
+ }
+ Frame {
+ msec: 5872
+ hash: "34c3edc4500a268a326b5c2156c12f09"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 106; y: 92
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 105; y: 91
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5888
+ hash: "34c3edc4500a268a326b5c2156c12f09"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 104; y: 91
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 103; y: 90
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5904
+ hash: "ac600900160ab37ec8a3e67eb82d0259"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 101; y: 89
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 100; y: 88
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5920
+ hash: "ac600900160ab37ec8a3e67eb82d0259"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 99; y: 86
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 98; y: 86
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5936
+ hash: "dc3cef419e3b7d59f450d3307aeebefa"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 97; y: 85
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 96; y: 85
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5952
+ hash: "dc3cef419e3b7d59f450d3307aeebefa"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 94; y: 84
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 93; y: 83
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5968
+ hash: "9b68c76d622f7b883a13927a112179f0"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 90; y: 82
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 86; y: 81
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 5984
+ hash: "9b68c76d622f7b883a13927a112179f0"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 85; y: 80
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 81; y: 79
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6000
+ hash: "9b68c76d622f7b883a13927a112179f0"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 79; y: 78
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 76; y: 76
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6016
+ hash: "9b68c76d622f7b883a13927a112179f0"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 75; y: 76
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 72; y: 73
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6032
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 68; y: 70
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 66; y: 68
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6048
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 63; y: 65
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 61; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6064
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 58; y: 60
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 57; y: 59
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6080
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 54; y: 56
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 53; y: 54
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6096
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 51; y: 50
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 48; y: 46
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6112
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 48; y: 45
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 46; y: 41
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6128
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 45; y: 39
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 43; y: 36
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6144
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 43; y: 35
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 41; y: 32
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6160
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 40; y: 30
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 38; y: 28
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6176
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 36; y: 26
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 35; y: 24
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6192
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 33; y: 22
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 32; y: 21
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6208
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 31; y: 20
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 30; y: 19
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6224
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 29; y: 19
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 28; y: 18
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6240
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 27; y: 18
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 26; y: 17
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6256
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 25; y: 17
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6272
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 24; y: 17
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6288
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 6304
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 6320
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 6336
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 6352
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 2
+ button: 1
+ buttons: 1
+ x: 24; y: 17
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6368
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 6384
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 6400
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 6416
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 3
+ button: 1
+ buttons: 0
+ x: 24; y: 17
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6432
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 24; y: 18
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6448
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 25; y: 18
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 25; y: 19
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6464
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 26; y: 19
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 27; y: 20
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6480
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 28; y: 21
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6496
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 6512
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 6528
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 29; y: 22
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6544
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 30; y: 23
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 31; y: 24
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6560
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 32; y: 25
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 33; y: 25
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6576
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 34; y: 26
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 34; y: 27
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6592
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 37; y: 30
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 38; y: 31
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6608
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 41; y: 35
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 42; y: 37
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6624
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 45; y: 42
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 50; y: 46
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6640
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 52; y: 49
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 57; y: 53
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6656
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 60; y: 55
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 65; y: 58
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6672
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 66; y: 59
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 71; y: 61
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6688
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 75; y: 62
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 77; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6704
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 80; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 81; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6720
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 83; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 84; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6736
+ image: "flickweb.7.png"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 85; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 86; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6752
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 87; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 88; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6768
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 90; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 93; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6784
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 94; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 99; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6800
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 102; y: 63
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 106; y: 62
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6816
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 110; y: 62
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 116; y: 62
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6832
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 122; y: 62
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 124; y: 62
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6848
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 125; y: 62
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 6864
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 6880
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 6896
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 6912
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 6928
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 6944
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 6960
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 6976
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 6992
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7008
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7024
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7040
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7056
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7072
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7088
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 126; y: 62
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7104
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 127; y: 62
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 129; y: 64
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7120
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 132; y: 65
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 134; y: 66
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7136
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 139; y: 68
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 144; y: 69
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7152
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 148; y: 69
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 154; y: 69
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7168
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 158; y: 68
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 162; y: 66
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7184
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 164; y: 65
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 165; y: 62
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7200
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 165; y: 60
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 165; y: 54
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7216
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 162; y: 45
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 159; y: 39
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7232
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 151; y: 27
+ modifiers: 0
+ sendToViewport: true
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 146; y: 22
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7248
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Mouse {
+ type: 5
+ button: 0
+ buttons: 0
+ x: 129; y: 3
+ modifiers: 0
+ sendToViewport: true
+ }
+ Frame {
+ msec: 7264
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7280
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7296
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7312
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7328
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7344
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7360
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7376
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7392
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7408
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7424
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7440
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7456
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7472
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7488
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7504
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7520
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7536
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7552
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7568
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7584
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7600
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7616
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7632
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7648
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7664
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7680
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7696
+ image: "flickweb.8.png"
+ }
+ Frame {
+ msec: 7712
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7728
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7744
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7760
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7776
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7792
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7808
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7824
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7840
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7856
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7872
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7888
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7904
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7920
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7936
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7952
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7968
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 7984
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8000
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8016
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8032
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8048
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8064
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8080
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8096
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8112
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8128
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8144
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8160
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8176
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8192
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8208
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8224
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8240
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8256
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8272
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8288
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8304
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8320
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8336
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8352
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8368
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8384
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8400
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8416
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8432
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8448
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8464
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8480
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8496
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8512
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8528
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8544
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8560
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8576
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8592
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8608
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8624
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8640
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8656
+ image: "flickweb.9.png"
+ }
+ Frame {
+ msec: 8672
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8688
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8704
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8720
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8736
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8752
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8768
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8784
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8800
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8816
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8832
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8848
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8864
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8880
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8896
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8912
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8928
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8944
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8960
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8976
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 8992
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9008
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9024
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9040
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9056
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9072
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9088
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9104
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9120
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9136
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9152
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9168
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9184
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9200
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9216
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9232
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9248
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9264
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9280
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9296
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9312
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9328
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9344
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9360
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9376
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9392
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9408
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9424
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9440
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9456
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9472
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9488
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9504
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9520
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9536
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9552
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9568
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9584
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9600
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9616
+ image: "flickweb.10.png"
+ }
+ Frame {
+ msec: 9632
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9648
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9664
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9680
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9696
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+ Frame {
+ msec: 9712
+ hash: "98990f624351f88347b2eb010bb5cd13"
+ }
+}
diff --git a/tests/auto/declarative/qmlvisual/webview/flickable/flickweb.qml b/tests/auto/declarative/qmlvisual/webview/flickable/flickweb.qml
new file mode 100644
index 0000000000..af09389f45
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/webview/flickable/flickweb.qml
@@ -0,0 +1,35 @@
+import QtQuick 1.0
+import QtWebKit 1.0
+
+Flickable {
+ id: flickable
+ width: 320
+ height: 200
+ contentWidth: Math.max(flickable.width,webView.width)
+ contentHeight: Math.max(flickable.height,webView.height)
+ pressDelay: 100
+
+ WebView {
+ id: webView
+ transformOrigin: Item.TopLeft
+ smooth: false // We don't want smooth scaling, since we only scale during (fast) transitions
+ url: "test.html"
+ preferredWidth: flickable.width
+ preferredHeight: flickable.height
+ contentsScale: 1
+ onContentsSizeChanged: {
+ // zoom out
+ contentsScale = Math.min(1,flickable.width / contentsSize.width)
+ }
+ }
+
+ Rectangle {
+ id: button
+ width: 50; height: 50; color: "red"
+ MouseArea {
+ anchors.fill: parent
+ onPressed: button.color = "blue"
+ onReleased: button.color = "green"
+ }
+ }
+}
diff --git a/tests/auto/declarative/qmlvisual/webview/flickable/qtlogo.png b/tests/auto/declarative/qmlvisual/webview/flickable/qtlogo.png
new file mode 100644
index 0000000000..399bd0b1d9
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/webview/flickable/qtlogo.png
Binary files differ
diff --git a/tests/auto/declarative/qmlvisual/webview/flickable/test.html b/tests/auto/declarative/qmlvisual/webview/flickable/test.html
new file mode 100644
index 0000000000..35eb7184e8
--- /dev/null
+++ b/tests/auto/declarative/qmlvisual/webview/flickable/test.html
@@ -0,0 +1,3 @@
+<html>
+ <img width="400" height="400" src="qtlogo.png">
+</html>
diff --git a/tests/auto/gestures/tst_gestures.cpp b/tests/auto/gestures/tst_gestures.cpp
index 667cdd3726..ee19125971 100644
--- a/tests/auto/gestures/tst_gestures.cpp
+++ b/tests/auto/gestures/tst_gestures.cpp
@@ -1486,13 +1486,15 @@ void tst_Gestures::ungrabGesture() // a method on QWidget
QVERIFY(customGestureA.data() != customGestureB.data());
a->ungrabGesture(CustomGesture::GestureType);
- QVERIFY(customGestureA.isNull());
+ //We changed the deletion of Gestures to lazy during QT-4022, so we can't ensure the QGesture is deleted until now
QVERIFY(!customGestureB.isNull());
a->gestures.clear();
a->reset();
// send again to 'b' and make sure a never gets it.
sendCustomGesture(&event, b);
+ //After all Gestures are processed in the QGestureManager, we can ensure the QGesture is now deleted
+ QVERIFY(customGestureA.isNull());
QCOMPARE(a->gestureEventsReceived, 0);
QCOMPARE(a->gestureOverrideEventsReceived, 0);
}
diff --git a/tests/auto/qabstractnetworkcache/tst_qabstractnetworkcache.cpp b/tests/auto/qabstractnetworkcache/tst_qabstractnetworkcache.cpp
index 04bd4329bc..fc8a126f5e 100644
--- a/tests/auto/qabstractnetworkcache/tst_qabstractnetworkcache.cpp
+++ b/tests/auto/qabstractnetworkcache/tst_qabstractnetworkcache.cpp
@@ -58,20 +58,29 @@ public:
private slots:
void expires_data();
void expires();
+ void expiresSynchronous_data();
+ void expiresSynchronous();
void lastModified_data();
void lastModified();
+ void lastModifiedSynchronous_data();
+ void lastModifiedSynchronous();
void etag_data();
void etag();
+ void etagSynchronous_data();
+ void etagSynchronous();
void cacheControl_data();
void cacheControl();
+ void cacheControlSynchronous_data();
+ void cacheControlSynchronous();
void deleteCache();
private:
void check();
+ void checkSynchronous();
};
class NetworkDiskCache : public QNetworkDiskCache
@@ -142,6 +151,16 @@ void tst_QAbstractNetworkCache::expires()
check();
}
+void tst_QAbstractNetworkCache::expiresSynchronous_data()
+{
+ expires_data();
+}
+
+void tst_QAbstractNetworkCache::expiresSynchronous()
+{
+ checkSynchronous();
+}
+
void tst_QAbstractNetworkCache::lastModified_data()
{
QTest::addColumn<QNetworkRequest::CacheLoadControl>("cacheLoadControl");
@@ -164,6 +183,16 @@ void tst_QAbstractNetworkCache::lastModified()
check();
}
+void tst_QAbstractNetworkCache::lastModifiedSynchronous_data()
+{
+ tst_QAbstractNetworkCache::lastModified_data();
+}
+
+void tst_QAbstractNetworkCache::lastModifiedSynchronous()
+{
+ checkSynchronous();
+}
+
void tst_QAbstractNetworkCache::etag_data()
{
QTest::addColumn<QNetworkRequest::CacheLoadControl>("cacheLoadControl");
@@ -186,6 +215,16 @@ void tst_QAbstractNetworkCache::etag()
check();
}
+void tst_QAbstractNetworkCache::etagSynchronous_data()
+{
+ tst_QAbstractNetworkCache::etag_data();
+}
+
+void tst_QAbstractNetworkCache::etagSynchronous()
+{
+ checkSynchronous();
+}
+
void tst_QAbstractNetworkCache::cacheControl_data()
{
QTest::addColumn<QNetworkRequest::CacheLoadControl>("cacheLoadControl");
@@ -217,6 +256,16 @@ void tst_QAbstractNetworkCache::cacheControl()
check();
}
+void tst_QAbstractNetworkCache::cacheControlSynchronous_data()
+{
+ tst_QAbstractNetworkCache::cacheControl_data();
+}
+
+void tst_QAbstractNetworkCache::cacheControlSynchronous()
+{
+ checkSynchronous();
+}
+
void tst_QAbstractNetworkCache::check()
{
QFETCH(QNetworkRequest::CacheLoadControl, cacheLoadControl);
@@ -250,8 +299,6 @@ void tst_QAbstractNetworkCache::check()
QCOMPARE(reply2->error(), QNetworkReply::ContentNotFoundError);
QCOMPARE(secondData, QByteArray());
} else {
- if (reply2->error() != QNetworkReply::NoError)
- qDebug() << reply2->errorString();
QCOMPARE(reply2->error(), QNetworkReply::NoError);
QCOMPARE(QString(secondData), QString(goodData));
QCOMPARE(secondData, goodData);
@@ -263,16 +310,60 @@ void tst_QAbstractNetworkCache::check()
QList<QByteArray> rawHeaderList2 = reply2->rawHeaderList();
qSort(rawHeaderList);
qSort(rawHeaderList2);
+ }
+ QCOMPARE(diskCache->gotData, fetchFromCache);
+}
- // headers can change
- for (int i = 0; i < rawHeaderList.count(); ++i) {
- //qDebug() << i << rawHeaderList.value(i) << reply->rawHeader(rawHeaderList.value(i));
- //qDebug() << i << rawHeaderList2.value(i) << reply2->rawHeader(rawHeaderList2.value(i));
- //QCOMPARE(QString(rawHeaderList.value(i)), QString(rawHeaderList2.value(i)));
- //QCOMPARE(QString(reply->rawHeader(rawHeaderList.value(i))), QString(reply2->rawHeader(rawHeaderList2.value(i))));
- }
- //QCOMPARE(rawHeaderList.count(), rawHeaderList2.count());
+void tst_QAbstractNetworkCache::checkSynchronous()
+{
+ QSKIP("not working yet, see QTBUG-15221", SkipAll);
+ QFETCH(QNetworkRequest::CacheLoadControl, cacheLoadControl);
+ QFETCH(QString, url);
+ QFETCH(bool, fetchFromCache);
+
+ QNetworkAccessManager manager;
+ NetworkDiskCache *diskCache = new NetworkDiskCache(&manager);
+ manager.setCache(diskCache);
+ QCOMPARE(diskCache->gotData, false);
+
+ QUrl realUrl = url.contains("://") ? url : TESTFILE + url;
+ QNetworkRequest request(realUrl);
+
+ request.setAttribute(
+ static_cast<QNetworkRequest::Attribute>(QNetworkRequest::DownloadBufferAttribute + 1),
+ true);
+
+ // prime the cache
+ QNetworkReply *reply = manager.get(request);
+ QVERIFY(reply->isFinished()); // synchronous
+ QCOMPARE(diskCache->gotData, false);
+ QByteArray goodData = reply->readAll();
+
+ request.setAttribute(QNetworkRequest::CacheLoadControlAttribute, cacheLoadControl);
+
+ // should be in the cache now
+ QNetworkReply *reply2 = manager.get(request);
+ QVERIFY(reply2->isFinished()); // synchronous
+
+ QByteArray secondData = reply2->readAll();
+ if (!fetchFromCache && cacheLoadControl == QNetworkRequest::AlwaysCache) {
+ QCOMPARE(reply2->error(), QNetworkReply::ContentNotFoundError);
+ QCOMPARE(secondData, QByteArray());
+ } else {
+ if (reply2->error() != QNetworkReply::NoError)
+ qDebug() << reply2->errorString();
+ QCOMPARE(reply2->error(), QNetworkReply::NoError);
+ QCOMPARE(QString(secondData), QString(goodData));
+ QCOMPARE(secondData, goodData);
+ QCOMPARE(reply2->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt(), 200);
+ }
+
+ if (fetchFromCache) {
+ QList<QByteArray> rawHeaderList = reply->rawHeaderList();
+ QList<QByteArray> rawHeaderList2 = reply2->rawHeaderList();
+ qSort(rawHeaderList);
+ qSort(rawHeaderList2);
}
QCOMPARE(diskCache->gotData, fetchFromCache);
}
diff --git a/tests/auto/qdbusconnection/tst_qdbusconnection.cpp b/tests/auto/qdbusconnection/tst_qdbusconnection.cpp
index 96209b1ecc..4494d6fa44 100644
--- a/tests/auto/qdbusconnection/tst_qdbusconnection.cpp
+++ b/tests/auto/qdbusconnection/tst_qdbusconnection.cpp
@@ -106,6 +106,8 @@ private slots:
void slotsWithLessParameters();
void nestedCallWithCallback();
+ void serviceRegistrationRaceCondition();
+
public:
QString serviceName() const { return "com.trolltech.Qt.Autotests.QDBusConnection"; }
bool callMethod(const QDBusConnection &conn, const QString &path);
@@ -298,7 +300,7 @@ void tst_QDBusConnection::registerObject()
// register one object at root:
MyObject obj;
QVERIFY(con.registerObject(path, &obj, QDBusConnection::ExportAllSlots));
- QCOMPARE(con.objectRegisteredAt(path), &obj);
+ QCOMPARE(con.objectRegisteredAt(path), static_cast<QObject *>(&obj));
QVERIFY(callMethod(con, path));
QCOMPARE(obj.path, path);
}
@@ -495,7 +497,7 @@ void tst_QDBusConnection::callSelf()
QDBusConnection connection = QDBusConnection::sessionBus();
QVERIFY(connection.registerObject("/test", &testObject,
QDBusConnection::ExportAllContents));
- QCOMPARE(connection.objectRegisteredAt("/test"), &testObject);
+ QCOMPARE(connection.objectRegisteredAt("/test"), static_cast<QObject *>(&testObject));
QVERIFY(connection.registerService(serviceName()));
QDBusInterface interface(serviceName(), "/test");
QVERIFY(interface.isValid());
@@ -647,6 +649,73 @@ void tst_QDBusConnection::nestedCallWithCallback()
QCOMPARE(signalsReceived, 1);
}
+class RaceConditionSignalWaiter : public QObject
+{
+ Q_OBJECT
+public:
+ int count;
+ RaceConditionSignalWaiter() : count (0) {}
+ virtual ~RaceConditionSignalWaiter() {}
+
+public slots:
+ void countUp() { ++count; emit done(); }
+signals:
+ void done();
+};
+
+void tst_QDBusConnection::serviceRegistrationRaceCondition()
+{
+ // There was a race condition in the updating of list of name owners in
+ // QtDBus. When the user connects to a signal coming from a given
+ // service, we must listen for NameOwnerChanged signals relevant to that
+ // name and update when the owner changes. However, it's possible that we
+ // receive in one chunk from the server both the NameOwnerChanged signal
+ // about the service and the signal we're interested in. Since QtDBus
+ // posts events in order to handle the incoming signals, the update
+ // happens too late.
+
+ const QString connectionName = "testConnectionName";
+ const QString serviceName = "org.example.SecondaryName";
+
+ QDBusConnection session = QDBusConnection::sessionBus();
+ QVERIFY(!session.interface()->isServiceRegistered(serviceName));
+
+ // connect to the signal:
+ RaceConditionSignalWaiter recv;
+ session.connect(serviceName, "/", "com.trolltech.TestCase", "oneSignal", &recv, SLOT(countUp()));
+
+ // create a secondary connection and register a name
+ QDBusConnection connection = QDBusConnection::connectToBus(QDBusConnection::SessionBus, connectionName);
+ QDBusConnection::disconnectFromBus(connectionName); // disconnection happens when "connection" goes out of scope
+ QVERIFY(connection.isConnected());
+ QVERIFY(connection.registerService(serviceName));
+
+ // send a signal
+ QDBusMessage msg = QDBusMessage::createSignal("/", "com.trolltech.TestCase", "oneSignal");
+ connection.send(msg);
+
+ // make a blocking call just to be sure that the buffer was flushed
+ msg = QDBusMessage::createMethodCall("org.freedesktop.DBus", "/org/freedesktop/DBus", "org.freedesktop.DBus",
+ "NameHasOwner");
+ msg << connectionName;
+ connection.call(msg); // ignore result
+
+ // Now here's the race condition (more info on task QTBUG-15651):
+ // the bus has most likely queued three signals for us to work on:
+ // 1) NameOwnerChanged for the connection we created above
+ // 2) NameOwnerChanged for the service we registered above
+ // 3) The "oneSignal" signal we sent
+ //
+ // We'll most likely receive all three in one go from the server. We must
+ // update the owner of serviceName before we start processing the
+ // "oneSignal" signal.
+
+ QTestEventLoop::instance().connect(&recv, SIGNAL(done()), SLOT(exitLoop()));
+ QTestEventLoop::instance().enterLoop(1);
+ QVERIFY(!QTestEventLoop::instance().timeout());
+ QCOMPARE(recv.count, 1);
+}
+
QString MyObject::path;
QTEST_MAIN(tst_QDBusConnection)
diff --git a/tests/auto/qfilesystemwatcher/tst_qfilesystemwatcher.cpp b/tests/auto/qfilesystemwatcher/tst_qfilesystemwatcher.cpp
index a26e34d79f..1feaceda8b 100644
--- a/tests/auto/qfilesystemwatcher/tst_qfilesystemwatcher.cpp
+++ b/tests/auto/qfilesystemwatcher/tst_qfilesystemwatcher.cpp
@@ -135,14 +135,11 @@ void tst_QFileSystemWatcher::basicTest()
// create watcher, forcing it to use a specific backend
QFileSystemWatcher watcher;
watcher.setObjectName(QLatin1String("_qt_autotest_force_engine_") + backend);
+ watcher.removePath(testFile.fileName());
watcher.addPath(testFile.fileName());
QSignalSpy changedSpy(&watcher, SIGNAL(fileChanged(const QString &)));
QEventLoop eventLoop;
- connect(&watcher,
- SIGNAL(fileChanged(const QString &)),
- &eventLoop,
- SLOT(quit()));
QTimer timer;
connect(&timer, SIGNAL(timeout()), &eventLoop, SLOT(quit()));
@@ -278,10 +275,6 @@ void tst_QFileSystemWatcher::watchDirectory()
QSignalSpy changedSpy(&watcher, SIGNAL(directoryChanged(const QString &)));
QEventLoop eventLoop;
- connect(&watcher,
- SIGNAL(directoryChanged(const QString &)),
- &eventLoop,
- SLOT(quit()));
QTimer timer;
connect(&timer, SIGNAL(timeout()), &eventLoop, SLOT(quit()));
diff --git a/tests/auto/qgl/tst_qgl.cpp b/tests/auto/qgl/tst_qgl.cpp
index e38bf427e2..cc2cac979a 100644
--- a/tests/auto/qgl/tst_qgl.cpp
+++ b/tests/auto/qgl/tst_qgl.cpp
@@ -97,6 +97,7 @@ private slots:
void qglContextDefaultBindTexture();
void textureCleanup();
void threadImages();
+ void nullRectCrash();
};
tst_QGL::tst_QGL()
@@ -2375,6 +2376,28 @@ void tst_QGL::threadImages()
delete widget;
}
+void tst_QGL::nullRectCrash()
+{
+ if (!QGLFramebufferObject::hasOpenGLFramebufferObjects())
+ QSKIP("QGLFramebufferObject not supported on this platform", SkipSingle);
+
+ QGLWidget glw;
+ glw.makeCurrent();
+
+ QGLFramebufferObjectFormat fboFormat;
+ fboFormat.setAttachment(QGLFramebufferObject::CombinedDepthStencil);
+
+ QGLFramebufferObject *fbo = new QGLFramebufferObject(128, 128, fboFormat);
+
+ QPainter fboPainter(fbo);
+
+ fboPainter.setPen(QPen(QColor(255, 127, 127, 127), 2));
+ fboPainter.setBrush(QColor(127, 255, 127, 127));
+ fboPainter.drawRect(QRectF());
+
+ fboPainter.end();
+}
+
class tst_QGLDummy : public QObject
{
Q_OBJECT
diff --git a/tests/auto/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp b/tests/auto/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp
index 174e4aa15e..35ea059864 100644
--- a/tests/auto/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp
+++ b/tests/auto/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp
@@ -122,6 +122,8 @@ private slots:
void task236367_maxSizeHint();
void heightForWidth();
void heightForWidthWithSpanning();
+ void stretchAndHeightForWidth();
+ void testDefaultAlignment();
};
class RectWidget : public QGraphicsWidget
@@ -699,6 +701,10 @@ void tst_QGraphicsGridLayout::columnMaximumWidth()
layout->setContentsMargins(0, 0, 0, 0);
layout->setSpacing(0);
+ QCOMPARE(layout->minimumSize(), QSizeF(10+10+10, 10+10));
+ QCOMPARE(layout->preferredSize(), QSizeF(25+25+25, 25+25));
+ QCOMPARE(layout->maximumSize(), QSizeF(50+50+50, 50+50));
+
// should at least be a very large number
QVERIFY(layout->columnMaximumWidth(0) >= 10000);
QCOMPARE(layout->columnMaximumWidth(0), layout->columnMaximumWidth(1));
@@ -706,17 +712,65 @@ void tst_QGraphicsGridLayout::columnMaximumWidth()
layout->setColumnMaximumWidth(0, 20);
layout->setColumnMaximumWidth(2, 60);
- view.show();
- widget->show();
+ QCOMPARE(layout->minimumSize(), QSizeF(10+10+10, 10+10));
+ QCOMPARE(layout->preferredSize(), QSizeF(20+25+25, 25+25));
+ QCOMPARE(layout->maximumSize(), QSizeF(20+50+60, 50+50));
+ QCOMPARE(layout->maximumSize(), widget->maximumSize());
+
widget->resize(widget->effectiveSizeHint(Qt::PreferredSize));
- QApplication::processEvents();
+ layout->activate();
- QCOMPARE(layout->itemAt(0,0)->geometry().width(), 20.0);
- QCOMPARE(layout->itemAt(1,0)->geometry().width(), 20.0);
- QCOMPARE(layout->itemAt(0,1)->geometry().width(), 25.0);
- QCOMPARE(layout->itemAt(1,1)->geometry().width(), 25.0);
- QCOMPARE(layout->itemAt(0,2)->geometry().width(), 25.0);
- QCOMPARE(layout->itemAt(1,2)->geometry().width(), 25.0);
+ QCOMPARE(layout->itemAt(0,0)->geometry(), QRectF(0, 0, 20, 25));
+ QCOMPARE(layout->itemAt(1,0)->geometry(), QRectF(0, 25, 20, 25));
+ QCOMPARE(layout->itemAt(0,1)->geometry(), QRectF(20, 0, 25, 25));
+ QCOMPARE(layout->itemAt(1,1)->geometry(), QRectF(20, 25, 25, 25));
+ QCOMPARE(layout->itemAt(0,2)->geometry(), QRectF(45, 0, 25, 25));
+ QCOMPARE(layout->itemAt(1,2)->geometry(), QRectF(45, 25, 25, 25));
+
+ layout->setColumnAlignment(2, Qt::AlignCenter);
+ widget->resize(widget->effectiveSizeHint(Qt::MaximumSize));
+ layout->activate();
+ QCOMPARE(layout->geometry(), QRectF(0,0,20+50+60, 50+50));
+ QCOMPARE(layout->itemAt(0,0)->geometry(), QRectF(0, 0, 20, 50));
+ QCOMPARE(layout->itemAt(1,0)->geometry(), QRectF(0, 50, 20, 50));
+ QCOMPARE(layout->itemAt(0,1)->geometry(), QRectF(20, 0, 50, 50));
+ QCOMPARE(layout->itemAt(1,1)->geometry(), QRectF(20, 50, 50, 50));
+ QCOMPARE(layout->itemAt(0,2)->geometry(), QRectF(75, 0, 50, 50));
+ QCOMPARE(layout->itemAt(1,2)->geometry(), QRectF(75, 50, 50, 50));
+
+ for (int i = 0; i < layout->count(); i++)
+ layout->setAlignment(layout->itemAt(i), Qt::AlignRight | Qt::AlignBottom);
+ layout->activate();
+ QCOMPARE(layout->itemAt(0,0)->geometry(), QRectF(0, 0, 20, 50));
+ QCOMPARE(layout->itemAt(1,0)->geometry(), QRectF(0, 50, 20, 50));
+ QCOMPARE(layout->itemAt(0,1)->geometry(), QRectF(20, 0, 50, 50));
+ QCOMPARE(layout->itemAt(1,1)->geometry(), QRectF(20, 50, 50, 50));
+ QCOMPARE(layout->itemAt(0,2)->geometry(), QRectF(80, 0, 50, 50));
+ QCOMPARE(layout->itemAt(1,2)->geometry(), QRectF(80, 50, 50, 50));
+ for (int i = 0; i < layout->count(); i++)
+ layout->setAlignment(layout->itemAt(i), Qt::AlignCenter);
+
+ layout->setMaximumSize(layout->maximumSize() + QSizeF(60,60));
+ widget->resize(widget->effectiveSizeHint(Qt::MaximumSize));
+ layout->activate();
+
+ QCOMPARE(layout->itemAt(0,0)->geometry(), QRectF(0, 15, 20, 50));
+ QCOMPARE(layout->itemAt(1,0)->geometry(), QRectF(0, 95, 20, 50));
+ QCOMPARE(layout->itemAt(0,1)->geometry(), QRectF(20+30, 15, 50, 50));
+ QCOMPARE(layout->itemAt(1,1)->geometry(), QRectF(20+30, 95, 50, 50));
+ QCOMPARE(layout->itemAt(0,2)->geometry(), QRectF(20+60+50+5, 15, 50, 50));
+ QCOMPARE(layout->itemAt(1,2)->geometry(), QRectF(20+60+50+5, 95, 50, 50));
+
+ layout->setMaximumSize(layout->preferredSize() + QSizeF(20,20));
+ widget->resize(widget->effectiveSizeHint(Qt::MaximumSize));
+ layout->activate();
+
+ QCOMPARE(layout->itemAt(0,0)->geometry(), QRectF(0, 0, 20, 35));
+ QCOMPARE(layout->itemAt(1,0)->geometry(), QRectF(0, 35, 20, 35));
+ QCOMPARE(layout->itemAt(0,1)->geometry(), QRectF(20, 0, 35, 35));
+ QCOMPARE(layout->itemAt(1,1)->geometry(), QRectF(20, 35, 35, 35));
+ QCOMPARE(layout->itemAt(0,2)->geometry(), QRectF(55, 0, 35, 35));
+ QCOMPARE(layout->itemAt(1,2)->geometry(), QRectF(55, 35, 35, 35));
delete widget;
}
@@ -2306,6 +2360,11 @@ static QSizeF hfw1(Qt::SizeHint, const QSizeF &constraint)
return result;
}
+static QSizeF hfw2(Qt::SizeHint /*which*/, const QSizeF &constraint)
+{
+ return QSizeF(constraint.width(), constraint.width());
+}
+
void tst_QGraphicsGridLayout::geometries_data()
{
@@ -2361,6 +2420,31 @@ void tst_QGraphicsGridLayout::geometries_data()
<< QRectF(0, 1, 50,100) << QRectF(50, 1, 50,400)
);
+
+ QTest::newRow("hfw-h408") << (ItemList()
+ << ItemDesc(0,0)
+ .minSize(QSizeF(1,1))
+ .preferredSize(QSizeF(50,10))
+ .maxSize(QSizeF(100, 100))
+ << ItemDesc(0,1)
+ .minSize(QSizeF(1,1))
+ .preferredSize(QSizeF(50,10))
+ .maxSize(QSizeF(100, 100))
+ << ItemDesc(1,0)
+ .minSize(QSizeF(1,1))
+ .preferredSize(QSizeF(50,10))
+ .maxSize(QSizeF(100, 100))
+ << ItemDesc(1,1)
+ .sizeHint(Qt::MinimumSize, QSizeF(40,40))
+ .sizeHint(Qt::PreferredSize, QSizeF(50,400))
+ .sizeHint(Qt::MaximumSize, QSizeF(500, 500))
+ .heightForWidth(hfw1)
+ )
+ << QSizeF(100, 408)
+ << (RectList()
+ << QRectF(0, 0, 50, 8) << QRectF(50, 0, 50, 8)
+ << QRectF(0, 8, 50,100) << QRectF(50, 8, 50,400)
+ );
QTest::newRow("hfw-h410") << (ItemList()
<< ItemDesc(0,0)
.minSize(QSizeF(1,1))
@@ -2386,6 +2470,150 @@ void tst_QGraphicsGridLayout::geometries_data()
<< QRectF(0, 10, 50,100) << QRectF(50, 10, 50,400)
);
+ QTest::newRow("hfw-h470") << (ItemList()
+ << ItemDesc(0,0)
+ .minSize(QSizeF(1,1))
+ .preferredSize(QSizeF(50,10))
+ .maxSize(QSizeF(100, 100))
+ << ItemDesc(0,1)
+ .minSize(QSizeF(1,1))
+ .preferredSize(QSizeF(50,10))
+ .maxSize(QSizeF(100, 100))
+ << ItemDesc(1,0)
+ .minSize(QSizeF(1,1))
+ .preferredSize(QSizeF(50,10))
+ .maxSize(QSizeF(100, 100))
+ << ItemDesc(1,1)
+ .sizeHint(Qt::MinimumSize, QSizeF(40,40))
+ .sizeHint(Qt::PreferredSize, QSizeF(50,400))
+ .sizeHint(Qt::MaximumSize, QSizeF(500,500))
+ .heightForWidth(hfw1)
+ )
+ << QSizeF(100, 470)
+ << (RectList()
+ << QRectF(0, 0, 50,70) << QRectF(50, 0, 50,70)
+ << QRectF(0, 70, 50,100) << QRectF(50, 70, 50,400)
+ );
+
+
+ // change layout width and verify
+ QTest::newRow("hfw-w100") << (ItemList()
+ << ItemDesc(0,0)
+ .minSize(QSizeF(1,1))
+ .preferredSize(QSizeF(50,10))
+ .maxSize(QSizeF(100, 100))
+ << ItemDesc(0,1)
+ .minSize(QSizeF(1,1))
+ .preferredSize(QSizeF(50,10))
+ .maxSize(QSizeF(100, 100))
+ << ItemDesc(1,0)
+ .minSize(QSizeF(1,1))
+ .preferredSize(QSizeF(50,10))
+ .maxSize(QSizeF(100, 100))
+ << ItemDesc(1,1)
+ .sizeHint(Qt::MinimumSize, QSizeF(40,40))
+ .sizeHint(Qt::PreferredSize, QSizeF(50,400))
+ .sizeHint(Qt::MaximumSize, QSizeF(5000,5000))
+ .heightForWidth(hfw1)
+ )
+ << QSizeF(100, 401)
+ << (RectList()
+ << QRectF( 0, 0, 50, 1) << QRectF( 50, 0, 50, 1)
+ << QRectF( 0, 1, 50, 100) << QRectF( 50, 1, 50, 400)
+ );
+
+ QTest::newRow("hfw-w160") << (ItemList()
+ << ItemDesc(0,0)
+ .minSize(QSizeF(1,1))
+ .preferredSize(QSizeF(50,10))
+ .maxSize(QSizeF(100, 100))
+ << ItemDesc(0,1)
+ .minSize(QSizeF(1,1))
+ .preferredSize(QSizeF(50,10))
+ .maxSize(QSizeF(100, 100))
+ << ItemDesc(1,0)
+ .minSize(QSizeF(1,1))
+ .preferredSize(QSizeF(50,10))
+ .maxSize(QSizeF(100, 100))
+ << ItemDesc(1,1)
+ .sizeHint(Qt::MinimumSize, QSizeF(40,40))
+ .sizeHint(Qt::PreferredSize, QSizeF(50,400))
+ .sizeHint(Qt::MaximumSize, QSizeF(5000,5000))
+ .heightForWidth(hfw1)
+ )
+ << QSizeF(160, 350)
+ << (RectList()
+ << QRectF( 0, 0, 80, 100) << QRectF( 80, 0, 80, 100)
+ << QRectF( 0, 100, 80, 100) << QRectF( 80, 100, 80, 250)
+ );
+
+ QTest::newRow("hfw-w500") << (ItemList()
+ << ItemDesc(0,0)
+ .minSize(QSizeF(1,1))
+ .preferredSize(QSizeF(50,10))
+ .maxSize(QSizeF(100, 100))
+ << ItemDesc(0,1)
+ .minSize(QSizeF(1,1))
+ .preferredSize(QSizeF(50,10))
+ .maxSize(QSizeF(100, 100))
+ << ItemDesc(1,0)
+ .minSize(QSizeF(1,1))
+ .preferredSize(QSizeF(50,10))
+ .maxSize(QSizeF(100, 100))
+ << ItemDesc(1,1)
+ .sizeHint(Qt::MinimumSize, QSizeF(40,40))
+ .sizeHint(Qt::PreferredSize, QSizeF(50,400))
+ .sizeHint(Qt::MaximumSize, QSizeF(5000,5000))
+ .heightForWidth(hfw1)
+ )
+ << QSizeF(500, 200)
+ << (RectList()
+ << QRectF( 0, 0, 100, 100) << QRectF(100, 0, 100, 100)
+ << QRectF( 0, 100, 100, 100) << QRectF(100, 100, 400, 50)
+ );
+
+ QTest::newRow("hfw-alignment-defaults") << (ItemList()
+ << ItemDesc(0,0)
+ .minSize(QSizeF(100, 100))
+ .maxSize(QSizeF(100, 100))
+ .heightForWidth(hfw2)
+ << ItemDesc(1,0)
+ .minSize(QSizeF(200, 200))
+ .maxSize(QSizeF(200, 200))
+ .heightForWidth(hfw2)
+ << ItemDesc(2,0)
+ .minSize(QSizeF(300, 300))
+ .maxSize(QSizeF(300, 300))
+ )
+ << QSizeF(300, 600)
+ << (RectList()
+ << QRectF(0, 0, 100, 100)
+ << QRectF(0, 100, 200, 200)
+ << QRectF(0, 300, 300, 300)
+ );
+
+ QTest::newRow("hfw-alignment2") << (ItemList()
+ << ItemDesc(0,0)
+ .minSize(QSizeF(100, 100))
+ .maxSize(QSizeF(100, 100))
+ .heightForWidth(hfw2)
+ .alignment(Qt::AlignRight)
+ << ItemDesc(1,0)
+ .minSize(QSizeF(200, 200))
+ .maxSize(QSizeF(200, 200))
+ .heightForWidth(hfw2)
+ .alignment(Qt::AlignHCenter)
+ << ItemDesc(2,0)
+ .minSize(QSizeF(300, 300))
+ .maxSize(QSizeF(300, 300))
+ )
+ << QSizeF(300, 600)
+ << (RectList()
+ << QRectF(200, 0, 100, 100)
+ << QRectF( 50, 100, 200, 200)
+ << QRectF( 0, 300, 300, 300)
+ );
+
}
void tst_QGraphicsGridLayout::geometries()
@@ -2556,8 +2784,9 @@ void tst_QGraphicsGridLayout::heightForWidth()
w11->setSizePolicy(sp);
layout->addItem(w11, 1, 1);
- QSizeF prefSize = layout->effectiveSizeHint(Qt::PreferredSize, QSizeF(-1, -1));
- QCOMPARE(prefSize, QSizeF(10+200, 10+100));
+ QCOMPARE(layout->effectiveSizeHint(Qt::MinimumSize, QSizeF(-1, -1)), QSizeF(2, 2));
+ QCOMPARE(layout->effectiveSizeHint(Qt::PreferredSize, QSizeF(-1, -1)), QSizeF(210, 110));
+ QCOMPARE(layout->effectiveSizeHint(Qt::MaximumSize, QSizeF(-1, -1)), QSizeF(30100, 30100));
QCOMPARE(layout->effectiveSizeHint(Qt::MinimumSize, QSizeF(2, -1)), QSizeF(2, 20001));
QCOMPARE(layout->effectiveSizeHint(Qt::PreferredSize, QSizeF(2, -1)), QSizeF(2, 20010));
@@ -2610,23 +2839,128 @@ void tst_QGraphicsGridLayout::heightForWidthWithSpanning()
w->setSizePolicy(sp);
layout->addItem(w, 0,0,2,2);
- QCOMPARE(layout->effectiveSizeHint(Qt::MinimumSize, QSizeF(-1, -1)), QSizeF(1, 100));
+ QCOMPARE(layout->effectiveSizeHint(Qt::MinimumSize, QSizeF(-1, -1)), QSizeF(1, 1));
QCOMPARE(layout->effectiveSizeHint(Qt::PreferredSize, QSizeF(-1, -1)), QSizeF(200, 100));
- QCOMPARE(layout->effectiveSizeHint(Qt::MaximumSize, QSizeF(-1, -1)), QSizeF(QWIDGETSIZE_MAX, QWIDGETSIZE_MAX));
+ QEXPECT_FAIL("", "Due to an old bug this wrongly returns QWIDGETSIZE_MAX", Continue);
+ QCOMPARE(layout->effectiveSizeHint(Qt::MaximumSize, QSizeF(-1, -1)), QSizeF(30000, 30000));
QCOMPARE(layout->effectiveSizeHint(Qt::MinimumSize, QSizeF(200, -1)), QSizeF(200, 100));
QCOMPARE(layout->effectiveSizeHint(Qt::PreferredSize, QSizeF(200, -1)), QSizeF(200, 100));
- QCOMPARE(layout->effectiveSizeHint(Qt::MaximumSize, QSizeF(200, -1)), QSizeF(200, QWIDGETSIZE_MAX));
+ QEXPECT_FAIL("", "Due to an old bug this wrongly returns QWIDGETSIZE_MAX", Continue);
+ QCOMPARE(layout->effectiveSizeHint(Qt::MaximumSize, QSizeF(200, -1)), QSizeF(200, 100));
QCOMPARE(layout->effectiveSizeHint(Qt::MinimumSize, QSizeF(2, -1)), QSizeF(2, 10000));
QCOMPARE(layout->effectiveSizeHint(Qt::PreferredSize, QSizeF(2, -1)), QSizeF(2, 10000));
- QCOMPARE(layout->effectiveSizeHint(Qt::MaximumSize, QSizeF(2, -1)), QSizeF(2, QWIDGETSIZE_MAX));
+ QEXPECT_FAIL("", "Due to an old bug this wrongly returns QWIDGETSIZE_MAX", Continue);
+ QCOMPARE(layout->effectiveSizeHint(Qt::MaximumSize, QSizeF(2, -1)), QSizeF(2, 10000));
QCOMPARE(layout->effectiveSizeHint(Qt::MinimumSize, QSizeF(200, -1)), QSizeF(200, 100));
QCOMPARE(layout->effectiveSizeHint(Qt::PreferredSize, QSizeF(200, -1)), QSizeF(200, 100));
- QCOMPARE(layout->effectiveSizeHint(Qt::MaximumSize, QSizeF(200, -1)), QSizeF(200, QWIDGETSIZE_MAX));
+ QEXPECT_FAIL("", "Due to an old bug this wrongly returns QWIDGETSIZE_MAX", Continue);
+ QCOMPARE(layout->effectiveSizeHint(Qt::MaximumSize, QSizeF(200, -1)), QSizeF(200, 10000));
+}
+
+void tst_QGraphicsGridLayout::stretchAndHeightForWidth()
+{
+ QGraphicsWidget *widget = new QGraphicsWidget(0, Qt::Window);
+ QGraphicsGridLayout *layout = new QGraphicsGridLayout;
+ widget->setLayout(layout);
+ layout->setContentsMargins(0, 0, 0, 0);
+ layout->setSpacing(0);
+
+ RectWidget *w1 = new RectWidget;
+ w1->setSizeHint(Qt::MinimumSize, QSizeF(10, 10));
+ w1->setSizeHint(Qt::PreferredSize, QSizeF(100, 100));
+ w1->setSizeHint(Qt::MaximumSize, QSizeF(500, 500));
+ layout->addItem(w1, 0,0,1,1);
+
+ RectWidget *w2 = new RectWidget;
+ w2->setSizeHint(Qt::MinimumSize, QSizeF(10, 10));
+ w2->setSizeHint(Qt::PreferredSize, QSizeF(100, 100));
+ w2->setSizeHint(Qt::MaximumSize, QSizeF(500, 500));
+ layout->addItem(w2, 0,1,1,1);
+ layout->setColumnStretchFactor(1, 2);
+
+ QApplication::sendPostedEvents();
+ QGraphicsScene scene;
+ QGraphicsView *view = new QGraphicsView(&scene);
+
+ scene.addItem(widget);
+
+ view->show();
+
+ widget->resize(500, 100);
+ // w1 should stay at its preferred size
+ QCOMPARE(w1->geometry(), QRectF(0, 0, 100, 100));
+ QCOMPARE(w2->geometry(), QRectF(100, 0, 400, 100));
+
+
+ // only w1 has hfw
+ w1->setConstraintFunction(hfw);
+ QSizePolicy sp(QSizePolicy::Preferred, QSizePolicy::Preferred);
+ sp.setHeightForWidth(true);
+ w1->setSizePolicy(sp);
+ QApplication::sendPostedEvents();
+
+ QCOMPARE(w1->geometry(), QRectF(0, 0, 100, 200));
+ QCOMPARE(w2->geometry(), QRectF(100, 0, 400, 200));
+
+ // only w2 has hfw
+ w2->setConstraintFunction(hfw);
+ w2->setSizePolicy(sp);
+
+ w1->setConstraintFunction(0);
+ sp.setHeightForWidth(false);
+ w1->setSizePolicy(sp);
+ QApplication::sendPostedEvents();
+
+ QCOMPARE(w1->geometry(), QRectF(0, 0, 100, 100));
+ QCOMPARE(w2->geometry(), QRectF(100, 0, 400, 50));
+
}
+void tst_QGraphicsGridLayout::testDefaultAlignment()
+{
+ QGraphicsWidget *widget = new QGraphicsWidget;
+ QGraphicsGridLayout *layout = new QGraphicsGridLayout(widget);
+ layout->setContentsMargins(0, 0, 0, 0);
+ layout->setSpacing(0);
+
+ QGraphicsWidget *w = new QGraphicsWidget;
+ w->setMinimumSize(50,50);
+ w->setMaximumSize(50,50);
+ layout->addItem(w,0,0);
+
+ //Default alignment should be to the top-left
+
+ //First, check by forcing the layout to be bigger
+ layout->setMinimumSize(100,100);
+ layout->activate();
+ QCOMPARE(layout->geometry(), QRectF(0,0,100,100));
+ QCOMPARE(w->geometry(), QRectF(0,0,50,50));
+ layout->setMinimumSize(-1,-1);
+
+ //Second, check by forcing the column and row to be bigger instead
+ layout->setColumnMinimumWidth(0, 100);
+ layout->setRowMinimumHeight(0, 100);
+ layout->activate();
+ QCOMPARE(layout->geometry(), QRectF(0,0,100,100));
+ QCOMPARE(w->geometry(), QRectF(0,0,50,50));
+ layout->setMinimumSize(-1,-1);
+ layout->setColumnMinimumWidth(0, 0);
+ layout->setRowMinimumHeight(0, 0);
+
+
+ //Third, check by adding a larger item in the column
+ QGraphicsWidget *w2 = new QGraphicsWidget;
+ w2->setMinimumSize(100,100);
+ w2->setMaximumSize(100,100);
+ layout->addItem(w2,1,0);
+ layout->activate();
+ QCOMPARE(layout->geometry(), QRectF(0,0,100,150));
+ QCOMPARE(w->geometry(), QRectF(0,0,50,50));
+ QCOMPARE(w2->geometry(), QRectF(0,50,100,100));
+}
QTEST_MAIN(tst_QGraphicsGridLayout)
#include "tst_qgraphicsgridlayout.moc"
diff --git a/tests/auto/qgraphicslinearlayout/tst_qgraphicslinearlayout.cpp b/tests/auto/qgraphicslinearlayout/tst_qgraphicslinearlayout.cpp
index 6107fa11e7..965e340e75 100644
--- a/tests/auto/qgraphicslinearlayout/tst_qgraphicslinearlayout.cpp
+++ b/tests/auto/qgraphicslinearlayout/tst_qgraphicslinearlayout.cpp
@@ -103,6 +103,9 @@ private slots:
void removeLayout();
void avoidRecursionInInsertItem();
void styleInfoLeak();
+ void testAlignmentInLargerLayout();
+ void testOffByOneInLargerLayout();
+ void testDefaultAlignment();
// Task specific tests
void task218400_insertStretchCrash();
@@ -1465,6 +1468,121 @@ void tst_QGraphicsLinearLayout::task218400_insertStretchCrash()
form->setLayout(layout); // crash
}
+void tst_QGraphicsLinearLayout::testAlignmentInLargerLayout()
+{
+ QGraphicsScene *scene = new QGraphicsScene;
+ QGraphicsWidget *form = new QGraphicsWidget;
+ scene->addItem(form);
+ QGraphicsLinearLayout *layout = new QGraphicsLinearLayout(Qt::Vertical, form);
+ layout->setSpacing(0);
+ layout->setContentsMargins(0,0,0,0);
+
+ QGraphicsWidget *a = new QGraphicsWidget;
+ a->setMaximumSize(100,100);
+ layout->addItem(a);
+
+ QCOMPARE(form->maximumSize(), QSizeF(100,100));
+ QCOMPARE(layout->maximumSize(), QSizeF(100,100));
+ layout->setMinimumSize(QSizeF(200,200));
+ layout->setMaximumSize(QSizeF(200,200));
+
+ layout->setAlignment(a, Qt::AlignCenter);
+ layout->activate();
+ QCOMPARE(a->geometry(), QRectF(50,50,100,100));
+
+ layout->setAlignment(a, Qt::AlignRight | Qt::AlignBottom);
+ layout->activate();
+ QCOMPARE(a->geometry(), QRectF(100,100,100,100));
+
+ layout->setAlignment(a, Qt::AlignHCenter | Qt::AlignTop);
+ layout->activate();
+ QCOMPARE(a->geometry(), QRectF(50,0,100,100));
+
+ QGraphicsWidget *b = new QGraphicsWidget;
+ b->setMaximumSize(100,100);
+ layout->addItem(b);
+
+ layout->setAlignment(a, Qt::AlignCenter);
+ layout->setAlignment(b, Qt::AlignCenter);
+ layout->activate();
+ QCOMPARE(a->geometry(), QRectF(50,0,100,100));
+ QCOMPARE(b->geometry(), QRectF(50,100,100,100));
+
+ layout->setAlignment(a, Qt::AlignRight | Qt::AlignBottom);
+ layout->setAlignment(b, Qt::AlignLeft | Qt::AlignTop);
+ layout->activate();
+ QCOMPARE(a->geometry(), QRectF(100,0,100,100));
+ QCOMPARE(b->geometry(), QRectF(0,100,100,100));
+}
+
+void tst_QGraphicsLinearLayout::testOffByOneInLargerLayout() {
+ QGraphicsScene *scene = new QGraphicsScene;
+ QGraphicsWidget *form = new QGraphicsWidget;
+ scene->addItem(form);
+ QGraphicsLinearLayout *layout = new QGraphicsLinearLayout(Qt::Vertical, form);
+ layout->setSpacing(0);
+ layout->setContentsMargins(0,0,0,0);
+
+ QGraphicsWidget *a = new QGraphicsWidget;
+ QGraphicsWidget *b = new QGraphicsWidget;
+ a->setMaximumSize(100,100);
+ b->setMaximumSize(100,100);
+ layout->addItem(a);
+ layout->addItem(b);
+
+ layout->setAlignment(a, Qt::AlignRight | Qt::AlignBottom);
+ layout->setAlignment(b, Qt::AlignLeft | Qt::AlignTop);
+ layout->setMinimumSize(QSizeF(101,201));
+ layout->setMaximumSize(QSizeF(101,201));
+ layout->activate();
+ QCOMPARE(a->geometry(), QRectF(1,0.5,100,100));
+ QCOMPARE(b->geometry(), QRectF(0,100.5,100,100));
+
+ layout->setMinimumSize(QSizeF(100,200));
+ layout->setMaximumSize(QSizeF(100,200));
+ layout->activate();
+ QCOMPARE(a->geometry(), QRectF(0,0,100,100));
+ QCOMPARE(b->geometry(), QRectF(0,100,100,100));
+
+ layout->setMinimumSize(QSizeF(99,199));
+ layout->setMaximumSize(QSizeF(99,199));
+ layout->activate();
+ QCOMPARE(a->geometry(), QRectF(0,0,99,99.5));
+ QCOMPARE(b->geometry(), QRectF(0,99.5,99,99.5));
+}
+void tst_QGraphicsLinearLayout::testDefaultAlignment()
+{
+ QGraphicsWidget *widget = new QGraphicsWidget;
+ QGraphicsLinearLayout *layout = new QGraphicsLinearLayout(Qt::Vertical, widget);
+ layout->setContentsMargins(0, 0, 0, 0);
+ layout->setSpacing(0);
+
+ QGraphicsWidget *w = new QGraphicsWidget;
+ w->setMinimumSize(50,50);
+ w->setMaximumSize(50,50);
+ layout->addItem(w);
+
+ //Default alignment should be to the top-left
+ QCOMPARE(layout->alignment(w), 0);
+
+ //First, check by forcing the layout to be bigger
+ layout->setMinimumSize(100,100);
+ layout->activate();
+ QCOMPARE(layout->geometry(), QRectF(0,0,100,100));
+ QCOMPARE(w->geometry(), QRectF(0,0,50,50));
+ layout->setMinimumSize(-1,-1);
+
+ //Second, check by adding a larger item in the column
+ QGraphicsWidget *w2 = new QGraphicsWidget;
+ w2->setMinimumSize(100,100);
+ w2->setMaximumSize(100,100);
+ layout->addItem(w2);
+ layout->activate();
+ QCOMPARE(layout->geometry(), QRectF(0,0,100,150));
+ QCOMPARE(w->geometry(), QRectF(0,0,50,50));
+ QCOMPARE(w2->geometry(), QRectF(0,50,100,100));
+}
+
QTEST_MAIN(tst_QGraphicsLinearLayout)
#include "tst_qgraphicslinearlayout.moc"
diff --git a/tests/auto/qimage/tst_qimage.cpp b/tests/auto/qimage/tst_qimage.cpp
index b4469416c5..b2c59fc698 100644
--- a/tests/auto/qimage/tst_qimage.cpp
+++ b/tests/auto/qimage/tst_qimage.cpp
@@ -142,6 +142,8 @@ private slots:
void rgbSwapped_data();
void rgbSwapped();
+
+ void deepCopyWhenPaintingActive();
};
tst_QImage::tst_QImage()
@@ -1886,5 +1888,19 @@ void tst_QImage::rgbSwapped()
QCOMPARE(memcmp(image.constBits(), imageSwappedTwice.constBits(), image.numBytes()), 0);
}
+void tst_QImage::deepCopyWhenPaintingActive()
+{
+ QImage image(64, 64, QImage::Format_ARGB32_Premultiplied);
+ image.fill(0);
+
+ QPainter painter(&image);
+ QImage copy = image;
+
+ painter.setBrush(Qt::black);
+ painter.drawEllipse(image.rect());
+
+ QVERIFY(copy != image);
+}
+
QTEST_MAIN(tst_QImage)
#include "tst_qimage.moc"
diff --git a/tests/auto/qkeysequence/tst_qkeysequence.cpp b/tests/auto/qkeysequence/tst_qkeysequence.cpp
index 60f022fc46..55c7edf191 100644
--- a/tests/auto/qkeysequence/tst_qkeysequence.cpp
+++ b/tests/auto/qkeysequence/tst_qkeysequence.cpp
@@ -405,7 +405,7 @@ void tst_QKeySequence::mnemonic()
#ifndef QT_NO_DEBUG
if (warning) {
- QString str = QString::fromLatin1("QKeySequence::mnemonic: \"%1\" contains multiple occurences of '&'").arg(string);
+ QString str = QString::fromLatin1("QKeySequence::mnemonic: \"%1\" contains multiple occurrences of '&'").arg(string);
QTest::ignoreMessage(QtWarningMsg, qPrintable(str));
// qWarning(qPrintable(str));
}
diff --git a/tests/auto/qnetworkreply/tst_qnetworkreply.cpp b/tests/auto/qnetworkreply/tst_qnetworkreply.cpp
index a9864384d1..9cf61f94d6 100644
--- a/tests/auto/qnetworkreply/tst_qnetworkreply.cpp
+++ b/tests/auto/qnetworkreply/tst_qnetworkreply.cpp
@@ -75,7 +75,6 @@
#include "../network-settings.h"
-
Q_DECLARE_METATYPE(QNetworkReply*)
Q_DECLARE_METATYPE(QAuthenticator*)
Q_DECLARE_METATYPE(QNetworkProxy)
@@ -84,6 +83,8 @@ Q_DECLARE_METATYPE(QList<QNetworkProxy>)
Q_DECLARE_METATYPE(QNetworkReply::NetworkError)
Q_DECLARE_METATYPE(QBuffer*)
+const int SynchronousRequestAttribute = QNetworkRequest::DownloadBufferAttribute + 1;
+
class QNetworkReplyPtr: public QSharedPointer<QNetworkReply>
{
public:
@@ -108,6 +109,16 @@ class tst_QNetworkReply: public QObject
bool requiresAuthentication;
};
+ static bool seedCreated;
+ static QString createUniqueExtension() {
+ if (!seedCreated) {
+ qsrand(QTime(0,0,0).msecsTo(QTime::currentTime()) + QCoreApplication::applicationPid());
+ seedCreated = true; // not thread-safe, but who cares
+ }
+ QString s = QString("%1-%2-%3").arg(QTime(0,0,0).msecsTo(QTime::currentTime())).arg(QCoreApplication::applicationPid()).arg(qrand());
+ return s;
+ };
+
QEventLoop *loop;
enum RunSimpleRequestReturn { Timeout = 0, Success, Failure };
int returnCode;
@@ -173,8 +184,12 @@ private Q_SLOTS:
void putToFtp();
void putToHttp_data();
void putToHttp();
+ void putToHttpSynchronous_data();
+ void putToHttpSynchronous();
void postToHttp_data();
void postToHttp();
+ void postToHttpSynchronous_data();
+ void postToHttpSynchronous();
void deleteFromHttp_data();
void deleteFromHttp();
void putGetDeleteGetFromHttp_data();
@@ -198,7 +213,9 @@ private Q_SLOTS:
void ioGetFromHttpWithReuseParallel();
void ioGetFromHttpWithReuseSequential();
void ioGetFromHttpWithAuth();
+ void ioGetFromHttpWithAuthSynchronous();
void ioGetFromHttpWithProxyAuth();
+ void ioGetFromHttpWithProxyAuthSynchronous();
void ioGetFromHttpWithSocksProxy();
#ifndef QT_NO_OPENSSL
void ioGetFromHttpsWithSslErrors();
@@ -233,6 +250,8 @@ private Q_SLOTS:
void ioPostToHttpFromFile();
void ioPostToHttpFromSocket_data();
void ioPostToHttpFromSocket();
+ void ioPostToHttpFromSocketSynchronous();
+ void ioPostToHttpFromSocketSynchronous_data();
void ioPostToHttpFromMiddleOfFileToEnd();
void ioPostToHttpFromMiddleOfFileFiveBytes();
void ioPostToHttpFromMiddleOfQBufferFiveBytes();
@@ -258,13 +277,19 @@ private Q_SLOTS:
void receiveCookiesFromHttp_data();
void receiveCookiesFromHttp();
+ void receiveCookiesFromHttpSynchronous_data();
+ void receiveCookiesFromHttpSynchronous();
void sendCookies_data();
void sendCookies();
+ void sendCookiesSynchronous_data();
+ void sendCookiesSynchronous();
void nestedEventLoops();
void httpProxyCommands_data();
void httpProxyCommands();
+ void httpProxyCommandsSynchronous_data();
+ void httpProxyCommandsSynchronous();
void proxyChange();
void authorizationError_data();
void authorizationError();
@@ -301,12 +326,20 @@ private Q_SLOTS:
void httpWithNoCredentialUsage();
+ void qtbug15311doubleContentLength();
+
+ void synchronousRequest_data();
+ void synchronousRequest();
+ void synchronousRequestSslFailure();
+
// NOTE: This test must be last!
void parentingRepliesToTheApp();
};
QT_BEGIN_NAMESPACE
+bool tst_QNetworkReply::seedCreated = false;
+
namespace QTest {
template<>
char *toString(const QNetworkReply::NetworkError& code)
@@ -913,14 +946,15 @@ protected:
tst_QNetworkReply::tst_QNetworkReply()
{
+ qRegisterMetaType<QNetworkReply *>(); // for QSignalSpy
+ qRegisterMetaType<QAuthenticator *>();
+ qRegisterMetaType<QNetworkProxy>();
+ qRegisterMetaType<QList<QSslError> >();
+
Q_SET_DEFAULT_IAP
testFileName = QDir::currentPath() + "/testfile";
-#ifndef Q_OS_WINCE
- uniqueExtension = QString("%1%2%3").arg((qulonglong)this).arg(rand()).arg((qulonglong)time(0));
-#else
- uniqueExtension = QString("%1%2").arg((qulonglong)this).arg(rand());
-#endif
+ uniqueExtension = createUniqueExtension();
cookieJar = new MyCookieJar;
manager.setCookieJar(cookieJar);
@@ -1007,15 +1041,25 @@ QString tst_QNetworkReply::runSimpleRequest(QNetworkAccessManager::Operation op,
Q_ASSERT_X(false, "tst_QNetworkReply", "Invalid/unknown operation requested");
}
reply->setParent(this);
- connect(reply, SIGNAL(finished()), SLOT(finished()));
- connect(reply, SIGNAL(error(QNetworkReply::NetworkError)), SLOT(gotError()));
returnCode = Timeout;
- loop = new QEventLoop;
- QTimer::singleShot(20000, loop, SLOT(quit()));
- int code = returnCode == Timeout ? loop->exec() : returnCode;
- delete loop;
- loop = 0;
+ int code = Success;
+
+ if (request.attribute(static_cast<QNetworkRequest::Attribute>(SynchronousRequestAttribute)).toBool()) {
+ if (reply->isFinished())
+ code = reply->error() != QNetworkReply::NoError ? Failure : Success;
+ else
+ code = Failure;
+ } else {
+ connect(reply, SIGNAL(finished()), SLOT(finished()));
+ connect(reply, SIGNAL(error(QNetworkReply::NetworkError)), SLOT(gotError()));
+
+ loop = new QEventLoop;
+ QTimer::singleShot(20000, loop, SLOT(quit()));
+ code = returnCode == Timeout ? loop->exec() : returnCode;
+ delete loop;
+ loop = 0;
+ }
switch (code) {
case Failure:
@@ -1490,6 +1534,9 @@ void tst_QNetworkReply::putToFile_data()
data = QByteArray(128*1024+1, '\177');
QTest::newRow("128k+1") << data << md5sum(data);
+
+ data = QByteArray(2*1024*1024+1, '\177');
+ QTest::newRow("2MB+1") << data << md5sum(data);
}
void tst_QNetworkReply::putToFile()
@@ -1596,6 +1643,47 @@ void tst_QNetworkReply::putToHttp()
QCOMPARE(uploadedData, data);
}
+void tst_QNetworkReply::putToHttpSynchronous_data()
+{
+ uniqueExtension = createUniqueExtension();
+ putToFile_data();
+}
+
+void tst_QNetworkReply::putToHttpSynchronous()
+{
+ QUrl url("http://" + QtNetworkSettings::serverName());
+ url.setPath(QString("/dav/qnetworkaccess-putToHttp-%1-%2")
+ .arg(QTest::currentDataTag())
+ .arg(uniqueExtension));
+
+ QNetworkRequest request(url);
+ QNetworkReplyPtr reply;
+
+ QFETCH(QByteArray, data);
+
+ request.setAttribute(
+ static_cast<QNetworkRequest::Attribute>(SynchronousRequestAttribute),
+ true);
+
+ RUN_REQUEST(runSimpleRequest(QNetworkAccessManager::PutOperation, request, reply, data));
+
+ QCOMPARE(reply->url(), url);
+ QCOMPARE(reply->error(), QNetworkReply::NoError);
+
+ QCOMPARE(reply->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt(), 201); // 201 Created
+
+ // download the file again from HTTP to make sure it was uploaded
+ // correctly. HTTP/0.9 is enough
+ QTcpSocket socket;
+ socket.connectToHost(QtNetworkSettings::serverName(), 80);
+ socket.write("GET " + url.toEncoded(QUrl::RemoveScheme | QUrl::RemoveAuthority) + "\r\n");
+ if (!socket.waitForDisconnected(10000))
+ QFAIL("Network timeout");
+
+ QByteArray uploadedData = socket.readAll();
+ QCOMPARE(uploadedData, data);
+}
+
void tst_QNetworkReply::postToHttp_data()
{
putToFile_data();
@@ -1622,6 +1710,37 @@ void tst_QNetworkReply::postToHttp()
QCOMPARE(uploadedData, md5sum.toHex());
}
+void tst_QNetworkReply::postToHttpSynchronous_data()
+{
+ putToFile_data();
+}
+
+void tst_QNetworkReply::postToHttpSynchronous()
+{
+ QUrl url("http://" + QtNetworkSettings::serverName() + "/qtest/cgi-bin/md5sum.cgi");
+
+ QNetworkRequest request(url);
+
+ request.setAttribute(
+ static_cast<QNetworkRequest::Attribute>(SynchronousRequestAttribute),
+ true);
+
+ QNetworkReplyPtr reply;
+
+ QFETCH(QByteArray, data);
+
+ RUN_REQUEST(runSimpleRequest(QNetworkAccessManager::PostOperation, request, reply, data));
+
+ QCOMPARE(reply->url(), url);
+ QCOMPARE(reply->error(), QNetworkReply::NoError);
+
+ QCOMPARE(reply->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt(), 200); // 200 Ok
+
+ QFETCH(QByteArray, md5sum);
+ QByteArray uploadedData = reply->readAll().trimmed();
+ QCOMPARE(uploadedData, md5sum.toHex());
+}
+
void tst_QNetworkReply::deleteFromHttp_data()
{
QTest::addColumn<QUrl>("url");
@@ -2046,9 +2165,6 @@ void tst_QNetworkReply::ioGetFromHttpWithReuseSequential()
void tst_QNetworkReply::ioGetFromHttpWithAuth()
{
- qRegisterMetaType<QNetworkReply *>(); // for QSignalSpy
- qRegisterMetaType<QAuthenticator *>();
-
// This test sends three requests
// The first two in parallel
// The third after the first two finished
@@ -2107,6 +2223,44 @@ void tst_QNetworkReply::ioGetFromHttpWithAuth()
QCOMPARE(authspy.count(), 0);
}
+
+ // now check with synchronous calls:
+ reference.seek(0);
+ {
+ request.setAttribute(
+ static_cast<QNetworkRequest::Attribute>(SynchronousRequestAttribute),
+ true);
+
+ QSignalSpy authspy(&manager, SIGNAL(authenticationRequired(QNetworkReply*,QAuthenticator*)));
+ QNetworkReplyPtr replySync = manager.get(request);
+ QVERIFY(replySync->isFinished()); // synchronous
+ QCOMPARE(authspy.count(), 0);
+
+ // we cannot use a data reader here, since that connects to the readyRead signal,
+ // just use readAll()
+
+ // the only thing we check here is that the auth cache was used when using synchronous requests
+ QCOMPARE(replySync->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt(), 200);
+ QCOMPARE(replySync->readAll(), reference.readAll());
+ }
+}
+
+void tst_QNetworkReply::ioGetFromHttpWithAuthSynchronous()
+{
+ // verify that we do not enter an endless loop with synchronous calls and wrong credentials
+ // the case when we succed with the login is tested in ioGetFromHttpWithAuth()
+
+ QNetworkRequest request(QUrl("http://" + QtNetworkSettings::serverName() + "/qtest/rfcs-auth/rfc3252.txt"));
+ request.setAttribute(
+ static_cast<QNetworkRequest::Attribute>(SynchronousRequestAttribute),
+ true);
+
+ QSignalSpy authspy(&manager, SIGNAL(authenticationRequired(QNetworkReply*,QAuthenticator*)));
+ QNetworkReplyPtr replySync = manager.get(request);
+ QVERIFY(replySync->isFinished()); // synchronous
+ QCOMPARE(replySync->error(), QNetworkReply::AuthenticationRequiredError);
+ QCOMPARE(authspy.count(), 0);
+ QCOMPARE(replySync->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt(), 401);
}
void tst_QNetworkReply::ioGetFromHttpWithProxyAuth()
@@ -2178,6 +2332,47 @@ void tst_QNetworkReply::ioGetFromHttpWithProxyAuth()
QCOMPARE(authspy.count(), 0);
}
+
+ // now check with synchronous calls:
+ reference.seek(0);
+ {
+ request.setAttribute(
+ static_cast<QNetworkRequest::Attribute>(SynchronousRequestAttribute),
+ true);
+
+ QSignalSpy authspy(&manager, SIGNAL(proxyAuthenticationRequired(QNetworkProxy,QAuthenticator*)));
+ QNetworkReplyPtr replySync = manager.get(request);
+ QVERIFY(replySync->isFinished()); // synchronous
+ QCOMPARE(authspy.count(), 0);
+
+ // we cannot use a data reader here, since that connects to the readyRead signal,
+ // just use readAll()
+
+ // the only thing we check here is that the proxy auth cache was used when using synchronous requests
+ QCOMPARE(replySync->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt(), 200);
+ QCOMPARE(replySync->readAll(), reference.readAll());
+ }
+}
+
+void tst_QNetworkReply::ioGetFromHttpWithProxyAuthSynchronous()
+{
+ // verify that we do not enter an endless loop with synchronous calls and wrong credentials
+ // the case when we succed with the login is tested in ioGetFromHttpWithAuth()
+
+ QNetworkProxy proxy(QNetworkProxy::HttpCachingProxy, QtNetworkSettings::serverName(), 3129);
+ QNetworkRequest request(QUrl("http://" + QtNetworkSettings::serverName() + "/qtest/rfc3252.txt"));
+ manager.setProxy(proxy);
+ request.setAttribute(
+ static_cast<QNetworkRequest::Attribute>(SynchronousRequestAttribute),
+ true);
+
+ QSignalSpy authspy(&manager, SIGNAL(proxyAuthenticationRequired(QNetworkProxy,QAuthenticator*)));
+ QNetworkReplyPtr replySync = manager.get(request);
+ manager.setProxy(QNetworkProxy()); // reset
+ QVERIFY(replySync->isFinished()); // synchronous
+ QCOMPARE(replySync->error(), QNetworkReply::ProxyAuthenticationRequiredError);
+ QCOMPARE(authspy.count(), 0);
+ QCOMPARE(replySync->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt(), 407);
}
void tst_QNetworkReply::ioGetFromHttpWithSocksProxy()
@@ -3236,7 +3431,67 @@ void tst_QNetworkReply::ioPostToHttpFromSocket()
QTEST(authenticationRequiredSpy.count(), "authenticationRequiredCount");
QTEST(proxyAuthenticationRequiredSpy.count(), "proxyAuthenticationRequiredCount");
- }
+}
+
+void tst_QNetworkReply::ioPostToHttpFromSocketSynchronous_data()
+{
+ QTest::addColumn<QByteArray>("data");
+ QTest::addColumn<QByteArray>("md5sum");
+
+ QByteArray data;
+ data = "";
+ QTest::newRow("empty") << data << md5sum(data);
+
+ data = "This is a normal message.";
+ QTest::newRow("generic") << data << md5sum(data);
+
+ data = "This is a message to show that Qt rocks!\r\n\n";
+ QTest::newRow("small") << data << md5sum(data);
+
+ data = QByteArray("abcd\0\1\2\abcd",12);
+ QTest::newRow("with-nul") << data << md5sum(data);
+
+ data = QByteArray(4097, '\4');
+ QTest::newRow("4k+1") << data << md5sum(data);
+
+ data = QByteArray(128*1024+1, '\177');
+ QTest::newRow("128k+1") << data << md5sum(data);
+
+ data = QByteArray(2*1024*1024+1, '\177');
+ QTest::newRow("2MB+1") << data << md5sum(data);
+}
+
+void tst_QNetworkReply::ioPostToHttpFromSocketSynchronous()
+{
+ QFETCH(QByteArray, data);
+
+ SocketPair socketpair;
+ QVERIFY(socketpair.create());
+ QVERIFY(socketpair.endPoints[0] && socketpair.endPoints[1]);
+ socketpair.endPoints[0]->write(data);
+ socketpair.endPoints[0]->waitForBytesWritten(5000);
+ // ### for 4.8: make the socket pair unbuffered, to not read everything in one go in QNetworkReplyImplPrivate::setup()
+ QTestEventLoop::instance().enterLoop(3);
+
+ QUrl url("http://" + QtNetworkSettings::serverName() + "/qtest/cgi-bin/md5sum.cgi");
+ QNetworkRequest request(url);
+ request.setAttribute(
+ static_cast<QNetworkRequest::Attribute>(SynchronousRequestAttribute),
+ true);
+
+ QNetworkReplyPtr reply = manager.post(request, socketpair.endPoints[1]);
+ QVERIFY(reply->isFinished());
+ socketpair.endPoints[0]->close();
+
+ QCOMPARE(reply->error(), QNetworkReply::NoError);
+
+ QCOMPARE(reply->url(), url);
+ QCOMPARE(reply->error(), QNetworkReply::NoError);
+ // verify that the HTTP status code is 200 Ok
+ QCOMPARE(reply->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt(), 200);
+
+ QCOMPARE(reply->readAll().trimmed(), md5sum(data).toHex());
+}
// this tests checks if rewinding the POST-data to some place in the middle
// worked.
@@ -3979,6 +4234,38 @@ void tst_QNetworkReply::receiveCookiesFromHttp()
QTEST(cookieJar->allCookies(), "expectedCookiesInJar");
}
+void tst_QNetworkReply::receiveCookiesFromHttpSynchronous_data()
+{
+ tst_QNetworkReply::receiveCookiesFromHttp_data();
+}
+
+void tst_QNetworkReply::receiveCookiesFromHttpSynchronous()
+{
+ QFETCH(QString, cookieString);
+
+ QByteArray data = cookieString.toLatin1() + '\n';
+ QUrl url("http://" + QtNetworkSettings::serverName() + "/qtest/cgi-bin/set-cookie.cgi");
+
+ QNetworkRequest request(url);
+
+ request.setAttribute(
+ static_cast<QNetworkRequest::Attribute>(SynchronousRequestAttribute),
+ true);
+
+ QNetworkReplyPtr reply;
+ RUN_REQUEST(runSimpleRequest(QNetworkAccessManager::PostOperation, request, reply, data));
+
+ QCOMPARE(reply->url(), url);
+ QCOMPARE(reply->error(), QNetworkReply::NoError);
+
+ QCOMPARE(reply->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt(), 200); // 200 Ok
+
+ QList<QNetworkCookie> setCookies =
+ qvariant_cast<QList<QNetworkCookie> >(reply->header(QNetworkRequest::SetCookieHeader));
+ QTEST(setCookies, "expectedCookiesFromHttp");
+ QTEST(cookieJar->allCookies(), "expectedCookiesInJar");
+}
+
void tst_QNetworkReply::sendCookies_data()
{
QTest::addColumn<QList<QNetworkCookie> >("cookiesToSet");
@@ -4039,6 +4326,35 @@ void tst_QNetworkReply::sendCookies()
QCOMPARE(QString::fromLatin1(reply->readAll()).trimmed(), expectedCookieString);
}
+void tst_QNetworkReply::sendCookiesSynchronous_data()
+{
+ tst_QNetworkReply::sendCookies_data();
+}
+
+void tst_QNetworkReply::sendCookiesSynchronous()
+{
+ QFETCH(QString, expectedCookieString);
+ QFETCH(QList<QNetworkCookie>, cookiesToSet);
+ cookieJar->setAllCookies(cookiesToSet);
+
+ QUrl url("http://" + QtNetworkSettings::serverName() + "/qtest/cgi-bin/get-cookie.cgi");
+ QNetworkRequest request(url);
+
+ request.setAttribute(
+ static_cast<QNetworkRequest::Attribute>(SynchronousRequestAttribute),
+ true);
+
+ QNetworkReplyPtr reply;
+ RUN_REQUEST(runSimpleRequest(QNetworkAccessManager::GetOperation, request, reply));
+
+ QCOMPARE(reply->url(), url);
+ QCOMPARE(reply->error(), QNetworkReply::NoError);
+
+ QCOMPARE(reply->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt(), 200); // 200 Ok
+
+ QCOMPARE(QString::fromLatin1(reply->readAll()).trimmed(), expectedCookieString);
+}
+
void tst_QNetworkReply::nestedEventLoops_slot()
{
QEventLoop subloop;
@@ -4128,8 +4444,67 @@ void tst_QNetworkReply::httpProxyCommands()
QCOMPARE(receivedHeader, expectedCommand);
}
+class ProxyChangeHelper : public QObject {
+ Q_OBJECT
+public:
+ ProxyChangeHelper() : QObject(), signalCount(0) {};
+public slots:
+ void finishedSlot() {
+ signalCount++;
+ if (signalCount == 2)
+ QMetaObject::invokeMethod(&QTestEventLoop::instance(), "exitLoop", Qt::QueuedConnection);
+ }
+private:
+ int signalCount;
+};
+
+void tst_QNetworkReply::httpProxyCommandsSynchronous_data()
+{
+ httpProxyCommands_data();
+}
+
+void tst_QNetworkReply::httpProxyCommandsSynchronous()
+{
+ QFETCH(QUrl, url);
+ QFETCH(QByteArray, responseToSend);
+ QFETCH(QString, expectedCommand);
+
+ // when using synchronous commands, we need a different event loop for
+ // the server thread, because the client is never returning to the
+ // event loop
+ MiniHttpServer proxyServer(responseToSend);
+ QThread serverThread;
+ proxyServer.moveToThread(&serverThread);
+ serverThread.start();
+ QNetworkProxy proxy(QNetworkProxy::HttpProxy, "127.0.0.1", proxyServer.serverPort());
+
+ manager.setProxy(proxy);
+ QNetworkRequest request(url);
+
+ // send synchronous request
+ request.setAttribute(
+ static_cast<QNetworkRequest::Attribute>(SynchronousRequestAttribute),
+ true);
+
+ QNetworkReplyPtr reply = manager.get(request);
+ QVERIFY(reply->isFinished()); // synchronous
+ manager.setProxy(QNetworkProxy());
+ serverThread.quit();
+ serverThread.wait(3000);
+
+ //qDebug() << reply->error() << reply->errorString();
+
+ // we don't really care if the request succeeded
+ // especially since it won't succeed in the HTTPS case
+ // so just check that the command was correct
+
+ QString receivedHeader = proxyServer.receivedData.left(expectedCommand.length());
+ QCOMPARE(receivedHeader, expectedCommand);
+}
+
void tst_QNetworkReply::proxyChange()
{
+ ProxyChangeHelper helper;
MiniHttpServer proxyServer(
"HTTP/1.0 200 OK\r\nProxy-Connection: keep-alive\r\n"
"Content-Length: 1\r\n\r\n1");
@@ -4139,30 +4514,15 @@ void tst_QNetworkReply::proxyChange()
manager.setProxy(dummyProxy);
QNetworkReplyPtr reply1 = manager.get(req);
- QSignalSpy finishedspy(reply1, SIGNAL(finished()));
+ connect(reply1, SIGNAL(finished()), &helper, SLOT(finishedSlot()));
manager.setProxy(QNetworkProxy());
QNetworkReplyPtr reply2 = manager.get(req);
+ connect(reply2, SIGNAL(finished()), &helper, SLOT(finishedSlot()));
- connect(reply2, SIGNAL(finished()), &QTestEventLoop::instance(), SLOT(exitLoop()));
-#ifdef Q_OS_SYMBIAN
- // we need more time as:
- // 1. running from the emulator
- // 2. not perfect POSIX implementation
- // 3. embedded device
QTestEventLoop::instance().enterLoop(20);
-#else
- QTestEventLoop::instance().enterLoop(10);
-#endif
QVERIFY(!QTestEventLoop::instance().timeout());
- if (finishedspy.count() == 0) {
- // wait for the second reply as well
- connect(reply1, SIGNAL(finished()), &QTestEventLoop::instance(), SLOT(exitLoop()));
- QTestEventLoop::instance().enterLoop(1);
- QVERIFY(!QTestEventLoop::instance().timeout());
- }
-
// verify that the replies succeeded
QCOMPARE(reply1->error(), QNetworkReply::NoError);
QCOMPARE(reply1->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt(), 200);
@@ -4724,7 +5084,142 @@ void tst_QNetworkReply::httpWithNoCredentialUsage()
QCOMPARE(reply->error(), QNetworkReply::AuthenticationRequiredError);
}
+void tst_QNetworkReply::qtbug15311doubleContentLength()
+{
+ QByteArray response("HTTP/1.0 200 OK\r\nContent-Length: 3\r\nServer: bogus\r\nContent-Length: 3\r\n\r\nABC");
+ MiniHttpServer server(response);
+ server.doClose = true;
+
+ QNetworkRequest request(QUrl("http://localhost:" + QString::number(server.serverPort())));
+ QNetworkReplyPtr reply = manager.get(request);
+
+ connect(reply, SIGNAL(finished()), &QTestEventLoop::instance(), SLOT(exitLoop()));
+ QTestEventLoop::instance().enterLoop(10);
+ QVERIFY(!QTestEventLoop::instance().timeout());
+ QVERIFY(reply->isFinished());
+ QCOMPARE(reply->error(), QNetworkReply::NoError);
+ QCOMPARE(reply->size(), qint64(3));
+ QCOMPARE(reply->header(QNetworkRequest::ContentLengthHeader).toLongLong(), qint64(3));
+ QCOMPARE(reply->rawHeader("Content-length"), QByteArray("3, 3"));
+ QCOMPARE(reply->readAll(), QByteArray("ABC"));
+}
+
+void tst_QNetworkReply::synchronousRequest_data()
+{
+ QTest::addColumn<QUrl>("url");
+ QTest::addColumn<QString>("expected");
+ QTest::addColumn<bool>("checkContentLength");
+ QTest::addColumn<QString>("mimeType");
+ // ### cache, auth, proxies
+
+ QTest::newRow("http")
+ << QUrl("http://" + QtNetworkSettings::serverName() + "/qtest/rfc3252.txt")
+ << QString("file:" SRCDIR "/rfc3252.txt")
+ << true
+ << QString("text/plain");
+
+ QTest::newRow("http-gzip")
+ << QUrl("http://" + QtNetworkSettings::serverName() + "/qtest/deflate/rfc3252.txt")
+ << QString("file:" SRCDIR "/rfc3252.txt")
+ << false // don't check content length, because it's gzip encoded
+ // ### we would need to enflate (un-deflate) the file content and compare the sizes
+ << QString("text/plain");
+
+#ifndef QT_NO_OPENSSL
+ QTest::newRow("https")
+ << QUrl("https://" + QtNetworkSettings::serverName() + "/qtest/rfc3252.txt")
+ << QString("file:" SRCDIR "/rfc3252.txt")
+ << true
+ << QString("text/plain");
+#endif
+
+ QTest::newRow("data")
+ << QUrl(QString::fromLatin1("data:text/plain,hello world"))
+ << QString("data:hello world")
+ << true // check content length
+ << QString("text/plain");
+
+ QTest::newRow("simple-file")
+ << QUrl(QString::fromLatin1("file:///" SRCDIR "/rfc3252.txt"))
+ << QString("file:" SRCDIR "/rfc3252.txt")
+ << true
+ << QString();
+}
+
+// FIXME add testcase for failing network etc
+void tst_QNetworkReply::synchronousRequest()
+{
+ QFETCH(QUrl, url);
+ QFETCH(QString, expected);
+ QFETCH(bool, checkContentLength);
+ QFETCH(QString, mimeType);
+
+ QNetworkRequest request(url);
+
+#ifndef QT_NO_OPENSSL
+ // workaround for HTTPS requests: add self-signed server cert to list of CA certs,
+ // since we cannot react to the sslErrors() signal
+ // to fix this properly we would need to have an ignoreSslErrors() method in the
+ // QNetworkRequest, see http://bugreports.qt.nokia.com/browse/QTBUG-14774
+ if (url.scheme() == "https") {
+ QSslConfiguration sslConf;
+ QList<QSslCertificate> certs = QSslCertificate::fromPath(SRCDIR "/certs/qt-test-server-cacert.pem");
+ sslConf.setCaCertificates(certs);
+ request.setSslConfiguration(sslConf);
+ }
+#endif
+
+ request.setAttribute(
+ static_cast<QNetworkRequest::Attribute>(SynchronousRequestAttribute),
+ true);
+
+ QNetworkReplyPtr reply;
+ QSignalSpy finishedSpy(&manager, SIGNAL(finished(QNetworkReply*)));
+ QSignalSpy sslErrorsSpy(&manager, SIGNAL(sslErrors(QNetworkReply*,QList<QSslError>)));
+ RUN_REQUEST(runSimpleRequest(QNetworkAccessManager::GetOperation, request, reply, 0));
+ QVERIFY(reply->isFinished());
+ QCOMPARE(finishedSpy.count(), 0);
+ QCOMPARE(sslErrorsSpy.count(), 0);
+
+ QCOMPARE(reply->header(QNetworkRequest::ContentTypeHeader).toString(), mimeType);
+
+ QByteArray expectedContent;
+
+ if (expected.startsWith("file:")) {
+ QString path = expected.mid(5);
+ QFile file(path);
+ file.open(QIODevice::ReadOnly);
+ expectedContent = file.readAll();
+ } else if (expected.startsWith("data:")) {
+ expectedContent = expected.mid(5).toUtf8();
+ }
+
+ if (checkContentLength)
+ QCOMPARE(reply->header(QNetworkRequest::ContentLengthHeader).toLongLong(), qint64(expectedContent.size()));
+ QCOMPARE(reply->readAll(), expectedContent);
+
+ reply->deleteLater();
+}
+
+void tst_QNetworkReply::synchronousRequestSslFailure()
+{
+ // test that SSL won't be accepted with self-signed certificate,
+ // and that we do not emit the sslError signal (in the manager that is,
+ // in the reply we don't care)
+
+ QUrl url("https://" + QtNetworkSettings::serverName() + "/qtest/rfc3252.txt");
+ QNetworkRequest request(url);
+ request.setAttribute(
+ static_cast<QNetworkRequest::Attribute>(SynchronousRequestAttribute),
+ true);
+ QNetworkReplyPtr reply;
+ QSignalSpy sslErrorsSpy(&manager, SIGNAL(sslErrors(QNetworkReply *, const QList<QSslError> &)));
+ runSimpleRequest(QNetworkAccessManager::GetOperation, request, reply, 0);
+ QVERIFY(reply->isFinished());
+ QCOMPARE(reply->error(), QNetworkReply::SslHandshakeFailedError);
+ QCOMPARE(sslErrorsSpy.count(), 0);
+}
// NOTE: This test must be last testcase in tst_qnetworkreply!
void tst_QNetworkReply::parentingRepliesToTheApp()
diff --git a/tests/auto/qpixmap/tst_qpixmap.cpp b/tests/auto/qpixmap/tst_qpixmap.cpp
index 51e6cf5f00..419518a101 100644
--- a/tests/auto/qpixmap/tst_qpixmap.cpp
+++ b/tests/auto/qpixmap/tst_qpixmap.cpp
@@ -129,10 +129,7 @@ private slots:
void isNull();
void task_246446();
-#ifdef Q_WS_QWS
void convertFromImageNoDetach();
-#endif
-
void convertFromImageDetach();
#if defined(Q_WS_WIN)
@@ -185,6 +182,8 @@ private slots:
void preserveDepth();
void splash_crash();
+ void toImageDeepCopy();
+
void loadAsBitmapOrPixmap();
};
@@ -911,11 +910,13 @@ void tst_QPixmap::isNull()
}
}
-#ifdef Q_WS_QWS
void tst_QPixmap::convertFromImageNoDetach()
{
+ QPixmap randomPixmap(10, 10);
+ if (randomPixmap.pixmapData()->classId() != QPixmapData::RasterClass)
+ QSKIP("Test only valid for raster pixmaps", SkipAll);
+
//first get the screen format
- QPixmap randomPixmap(10,10);
QImage::Format screenFormat = randomPixmap.toImage().format();
QVERIFY(screenFormat != QImage::Format_Invalid);
@@ -930,7 +931,6 @@ void tst_QPixmap::convertFromImageNoDetach()
const QImage constCopy = copy;
QVERIFY(constOrig.bits() == constCopy.bits());
}
-#endif //Q_WS_QWS
void tst_QPixmap::convertFromImageDetach()
{
@@ -1751,6 +1751,21 @@ void tst_QPixmap::loadAsBitmapOrPixmap()
QVERIFY(bitmap.isQBitmap());
}
+void tst_QPixmap::toImageDeepCopy()
+{
+ QPixmap pixmap(64, 64);
+ pixmap.fill(Qt::white);
+
+ QPainter painter(&pixmap);
+ QImage first = pixmap.toImage();
+
+ painter.setBrush(Qt::black);
+ painter.drawEllipse(pixmap.rect());
+
+ QImage second = pixmap.toImage();
+
+ QVERIFY(first != second);
+}
QTEST_MAIN(tst_QPixmap)
diff --git a/tests/auto/qsettings/tst_qsettings.cpp b/tests/auto/qsettings/tst_qsettings.cpp
index 0395eff4a8..0813e28667 100644
--- a/tests/auto/qsettings/tst_qsettings.cpp
+++ b/tests/auto/qsettings/tst_qsettings.cpp
@@ -51,6 +51,7 @@
#include <QtCore/QMetaType>
#include <QtCore/QtDebug>
#include <QtCore/QString>
+#include "../../shared/util.h"
#if !defined(Q_OS_SYMBIAN)
# include <cctype>
@@ -1726,26 +1727,22 @@ void tst_QSettings::testUpdateRequestEvent()
settings1.setValue("key1", 1);
QVERIFY(QFileInfo("foo").size() == 0);
- qApp->processEvents();
- QVERIFY(QFileInfo("foo").size() > 0);
+ QTRY_VERIFY(QFileInfo("foo").size() > 0);
settings1.remove("key1");
QVERIFY(QFileInfo("foo").size() > 0);
- qApp->processEvents();
- QVERIFY(QFileInfo("foo").size() == 0);
+ QTRY_VERIFY(QFileInfo("foo").size() == 0);
settings1.setValue("key2", 2);
QVERIFY(QFileInfo("foo").size() == 0);
- qApp->processEvents();
- QVERIFY(QFileInfo("foo").size() > 0);
+ QTRY_VERIFY(QFileInfo("foo").size() > 0);
settings1.clear();
QVERIFY(QFileInfo("foo").size() > 0);
- qApp->processEvents();
- QVERIFY(QFileInfo("foo").size() == 0);
+ QTRY_VERIFY(QFileInfo("foo").size() == 0);
}
const int NumIterations = 5;
diff --git a/tests/auto/qsharedpointer/tst_qsharedpointer.cpp b/tests/auto/qsharedpointer/tst_qsharedpointer.cpp
index 6b4904f964..a05aa97a57 100644
--- a/tests/auto/qsharedpointer/tst_qsharedpointer.cpp
+++ b/tests/auto/qsharedpointer/tst_qsharedpointer.cpp
@@ -283,8 +283,8 @@ void tst_QSharedPointer::operators()
QSharedPointer<char> p1;
QSharedPointer<char> p2(new char);
qptrdiff diff = p2.data() - p1.data();
- Q_ASSERT(p1.data() < p2.data());
- Q_ASSERT(diff > 0);
+ Q_ASSERT(p1.data() != p2.data());
+ Q_ASSERT(diff != 0);
// operator-
QCOMPARE(p2 - p1.data(), diff);
diff --git a/tests/auto/qthread/tst_qthread.cpp b/tests/auto/qthread/tst_qthread.cpp
index 843749a31b..b0efb5a869 100644
--- a/tests/auto/qthread/tst_qthread.cpp
+++ b/tests/auto/qthread/tst_qthread.cpp
@@ -106,6 +106,7 @@ private slots:
void adoptMultipleThreads();
void QTBUG13810_exitAndStart();
+ void QTBUG15378_exitAndExec();
void stressTest();
};
@@ -976,5 +977,45 @@ void tst_QThread::QTBUG13810_exitAndStart()
}
+void tst_QThread::QTBUG15378_exitAndExec()
+{
+ class Thread : public QThread {
+ public:
+ QSemaphore sem1;
+ QSemaphore sem2;
+ volatile int value;
+ void run() {
+ sem1.acquire();
+ value = exec(); //First entrence
+ sem2.release();
+ value = exec(); // Second loop
+ }
+ };
+ Thread thread;
+ thread.value = 0;
+ thread.start();
+ thread.exit(556);
+ thread.sem1.release(); //should exit the first loop
+ thread.sem2.acquire();
+ int v = thread.value;
+ QCOMPARE(v, 556);
+
+ //test that the thread is running by executing queued connected signal there
+ Syncronizer sync1;
+ sync1.moveToThread(&thread);
+ Syncronizer sync2;
+ sync2.moveToThread(&thread);
+ connect(&sync2, SIGNAL(propChanged(int)), &sync1, SLOT(setProp(int)), Qt::QueuedConnection);
+ connect(&sync1, SIGNAL(propChanged(int)), &thread, SLOT(quit()), Qt::QueuedConnection);
+ QMetaObject::invokeMethod(&sync2, "setProp", Qt::QueuedConnection , Q_ARG(int, 89));
+ QTest::qWait(50);
+ while(!thread.wait(10))
+ QTest::qWait(10);
+ QCOMPARE(sync2.m_prop, 89);
+ QCOMPARE(sync1.m_prop, 89);
+}
+
+
+
QTEST_MAIN(tst_QThread)
#include "tst_qthread.moc"
diff --git a/tests/auto/qwidget/tst_qwidget.cpp b/tests/auto/qwidget/tst_qwidget.cpp
index 09af9411af..5521873e67 100644
--- a/tests/auto/qwidget/tst_qwidget.cpp
+++ b/tests/auto/qwidget/tst_qwidget.cpp
@@ -4389,7 +4389,6 @@ class WinIdChangeWidget : public QWidget {
public:
WinIdChangeWidget(QWidget *p = 0)
: QWidget(p)
- , m_winIdChangeEventCount(0)
{
}
@@ -4397,13 +4396,14 @@ protected:
bool event(QEvent *e)
{
if (e->type() == QEvent::WinIdChange) {
- ++m_winIdChangeEventCount;
+ m_winIdList.append(internalWinId());
return true;
}
return QWidget::event(e);
}
public:
- int m_winIdChangeEventCount;
+ QList<WId> m_winIdList;
+ int winIdChangeEventCount() const { return m_winIdList.count(); }
};
void tst_QWidget::winIdChangeEvent()
@@ -4414,7 +4414,7 @@ void tst_QWidget::winIdChangeEvent()
const WId winIdBefore = widget.internalWinId();
const WId winIdAfter = widget.winId();
QVERIFY(winIdBefore != winIdAfter);
- QCOMPARE(widget.m_winIdChangeEventCount, 1);
+ QCOMPARE(widget.winIdChangeEventCount(), 1);
}
{
@@ -4423,11 +4423,13 @@ void tst_QWidget::winIdChangeEvent()
QWidget parent1, parent2;
WinIdChangeWidget child(&parent1);
const WId winIdBefore = child.winId();
- QCOMPARE(child.m_winIdChangeEventCount, 1);
+ QCOMPARE(child.winIdChangeEventCount(), 1);
child.setParent(&parent2);
const WId winIdAfter = child.internalWinId();
QVERIFY(winIdBefore != winIdAfter);
- QCOMPARE(child.m_winIdChangeEventCount, 2);
+ QCOMPARE(child.winIdChangeEventCount(), 3);
+ // winId is set to zero during reparenting
+ QVERIFY(0 == child.m_winIdList[1]);
}
{
@@ -4437,15 +4439,16 @@ void tst_QWidget::winIdChangeEvent()
QWidget parent(&grandparent1);
WinIdChangeWidget child(&parent);
const WId winIdBefore = child.winId();
- QCOMPARE(child.m_winIdChangeEventCount, 1);
+ QCOMPARE(child.winIdChangeEventCount(), 1);
parent.setParent(&grandparent2);
const WId winIdAfter = child.internalWinId();
#ifdef Q_OS_SYMBIAN
QVERIFY(winIdBefore != winIdAfter);
- QCOMPARE(child.m_winIdChangeEventCount, 2);
+ QVERIFY(winIdAfter != 0);
+ QCOMPARE(child.winIdChangeEventCount(), 2);
#else
QCOMPARE(winIdBefore, winIdAfter);
- QCOMPARE(child.m_winIdChangeEventCount, 1);
+ QCOMPARE(child.winIdChangeEventCount(), 1);
#endif
}
@@ -4457,7 +4460,7 @@ void tst_QWidget::winIdChangeEvent()
child.setParent(&parent2);
const WId winIdAfter = child.internalWinId();
QCOMPARE(winIdBefore, winIdAfter);
- QCOMPARE(child.m_winIdChangeEventCount, 0);
+ QCOMPARE(child.winIdChangeEventCount(), 0);
}
{
@@ -4466,12 +4469,14 @@ void tst_QWidget::winIdChangeEvent()
WinIdChangeWidget child(&parent);
child.winId();
const WId winIdBefore = child.internalWinId();
- QCOMPARE(child.m_winIdChangeEventCount, 1);
+ QCOMPARE(child.winIdChangeEventCount(), 1);
const Qt::WindowFlags flags = child.windowFlags();
child.setWindowFlags(flags | Qt::Window);
const WId winIdAfter = child.internalWinId();
QVERIFY(winIdBefore != winIdAfter);
- QCOMPARE(child.m_winIdChangeEventCount, 2);
+ QCOMPARE(child.winIdChangeEventCount(), 3);
+ // winId is set to zero during reparenting
+ QVERIFY(0 == child.m_winIdList[1]);
}
}
diff --git a/tests/auto/selftests/expected_cmptest.txt b/tests/auto/selftests/expected_cmptest.txt
index 7f3aa9a635..fccaca36d3 100644
--- a/tests/auto/selftests/expected_cmptest.txt
+++ b/tests/auto/selftests/expected_cmptest.txt
@@ -1,5 +1,5 @@
********* Start testing of tst_Cmptest *********
-Config: Using QTest library 4.7.1, Qt 4.7.1
+Config: Using QTest library 4.7.2, Qt 4.7.2
PASS : tst_Cmptest::initTestCase()
PASS : tst_Cmptest::compare_boolfuncs()
PASS : tst_Cmptest::compare_pointerfuncs()
diff --git a/tests/auto/selftests/expected_crashes_3.txt b/tests/auto/selftests/expected_crashes_3.txt
index 7ded52520a..2558f680d2 100644
--- a/tests/auto/selftests/expected_crashes_3.txt
+++ b/tests/auto/selftests/expected_crashes_3.txt
@@ -1,5 +1,5 @@
********* Start testing of tst_Crashes *********
-Config: Using QTest library 4.7.1, Qt 4.7.1
+Config: Using QTest library 4.7.2, Qt 4.7.2
PASS : tst_Crashes::initTestCase()
QFATAL : tst_Crashes::crash() Received signal 11
FAIL! : tst_Crashes::crash() Received a fatal error.
diff --git a/tests/auto/selftests/expected_longstring.txt b/tests/auto/selftests/expected_longstring.txt
index 9ad6f5660f..c56244b1ef 100644
--- a/tests/auto/selftests/expected_longstring.txt
+++ b/tests/auto/selftests/expected_longstring.txt
@@ -1,5 +1,5 @@
********* Start testing of tst_LongString *********
-Config: Using QTest library 4.7.1, Qt 4.7.1
+Config: Using QTest library 4.7.2, Qt 4.7.2
PASS : tst_LongString::initTestCase()
FAIL! : tst_LongString::failWithLongString() Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. Nulla consequat massa quis enim. Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim justo, rhoncus ut, imperdiet a, venenatis vitae, justo. Nullam dictum felis eu pede mollis pretium. Integer tincidunt. Cras dapibus. Vivamus elementum semper nisi. Aenean vulputate eleifend tellus. Aenean leo ligula, porttitor eu, consequat vitae, eleifend ac, enim. Aliquam lorem ante, dapibus in, viverra quis, feugiat a, tellus. Phasellus viverra nulla ut metus varius laoreet. Quisque rutrum. Aenean imperdiet. Etiam ultricies nisi vel augue. Curabitur ullamcorper ultricies nisi. Nam eget dui.
diff --git a/tests/auto/selftests/expected_maxwarnings.txt b/tests/auto/selftests/expected_maxwarnings.txt
index 949da1306f..7846435bb3 100644
--- a/tests/auto/selftests/expected_maxwarnings.txt
+++ b/tests/auto/selftests/expected_maxwarnings.txt
@@ -1,5 +1,5 @@
********* Start testing of MaxWarnings *********
-Config: Using QTest library 4.7.1, Qt 4.7.1
+Config: Using QTest library 4.7.2, Qt 4.7.2
PASS : MaxWarnings::initTestCase()
QWARN : MaxWarnings::warn() 0
QWARN : MaxWarnings::warn() 1
diff --git a/tests/auto/selftests/expected_skip.txt b/tests/auto/selftests/expected_skip.txt
index 1f5bf7bc3c..5c9e497c39 100644
--- a/tests/auto/selftests/expected_skip.txt
+++ b/tests/auto/selftests/expected_skip.txt
@@ -1,5 +1,5 @@
********* Start testing of tst_Skip *********
-Config: Using QTest library 4.7.1, Qt 4.7.1
+Config: Using QTest library 4.7.2, Qt 4.7.2
PASS : tst_Skip::initTestCase()
SKIP : tst_Skip::test() skipping all
Loc: [/home/user/depot/qt-git/mainline/tests/auto/selftests/skip/tst_skip.cpp(68)]
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicslinearlayout/qgraphicslinearlayout.pro b/tests/benchmarks/gui/graphicsview/qgraphicslinearlayout/qgraphicslinearlayout.pro
new file mode 100644
index 0000000000..ff85fe8e00
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicslinearlayout/qgraphicslinearlayout.pro
@@ -0,0 +1,6 @@
+load(qttest_p4)
+TEMPLATE = app
+TARGET = tst_bench_qgraphicslinearlayout
+
+SOURCES += tst_qgraphicslinearlayout.cpp
+
diff --git a/tests/benchmarks/gui/graphicsview/qgraphicslinearlayout/tst_qgraphicslinearlayout.cpp b/tests/benchmarks/gui/graphicsview/qgraphicslinearlayout/tst_qgraphicslinearlayout.cpp
new file mode 100644
index 0000000000..dc415fb5d1
--- /dev/null
+++ b/tests/benchmarks/gui/graphicsview/qgraphicslinearlayout/tst_qgraphicslinearlayout.cpp
@@ -0,0 +1,133 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 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 <QtGui/qgraphicslinearlayout.h>
+#include <QtGui/qgraphicswidget.h>
+#include <QtGui/qgraphicsview.h>
+
+class tst_QGraphicsLinearLayout : public QObject
+{
+ Q_OBJECT
+public:
+ tst_QGraphicsLinearLayout() {}
+ ~tst_QGraphicsLinearLayout() {}
+
+private slots:
+ void heightForWidth_data();
+ void heightForWidth();
+};
+
+
+struct MySquareWidget : public QGraphicsWidget
+{
+ MySquareWidget() {}
+ virtual QSizeF sizeHint ( Qt::SizeHint which, const QSizeF & constraint = QSizeF() ) const
+ {
+ if (which != Qt::PreferredSize)
+ return QGraphicsWidget::sizeHint(which, constraint);
+ if (constraint.width() < 0)
+ return QGraphicsWidget::sizeHint(which, constraint);
+ return QSizeF(constraint.width(), constraint.width());
+ }
+};
+
+void tst_QGraphicsLinearLayout::heightForWidth_data()
+{
+ QTest::addColumn<bool>("hfw");
+ QTest::addColumn<bool>("nested");
+
+ QTest::newRow("hfw") << true << false;
+ QTest::newRow("hfw, nested") << true << true;
+ QTest::newRow("not hfw") << false << false;
+ QTest::newRow("not hfw, nested") << false << true;
+}
+
+void tst_QGraphicsLinearLayout::heightForWidth()
+{
+ QFETCH(bool, hfw);
+ QFETCH(bool, nested);
+
+ QGraphicsScene scene;
+ QGraphicsWidget *form = new QGraphicsWidget;
+ scene.addItem(form);
+
+ QGraphicsLinearLayout *outerlayout = 0;
+ if (nested) {
+ outerlayout = new QGraphicsLinearLayout(form);
+ for (int i = 0; i < 8; i++) {
+ QGraphicsLinearLayout *layout = new QGraphicsLinearLayout(Qt::Vertical);
+ outerlayout->addItem(layout);
+ outerlayout = layout;
+ }
+ }
+
+ QGraphicsLinearLayout *qlayout = 0;
+ qlayout = new QGraphicsLinearLayout(Qt::Vertical);
+ if (nested)
+ outerlayout->addItem(qlayout);
+ else
+ form->setLayout(qlayout);
+
+ MySquareWidget *widget = new MySquareWidget;
+ for (int i = 0; i < 1; i++) {
+ widget = new MySquareWidget;
+ QSizePolicy sizepolicy = widget->sizePolicy();
+ sizepolicy.setHeightForWidth(hfw);
+ widget->setSizePolicy(sizepolicy);
+ qlayout->addItem(widget);
+ }
+ // make sure only one iteration is done.
+ // run with tst_QGraphicsLinearLayout.exe "heightForWidth" -tickcounter -iterations 6
+ // this will iterate 6 times the whole test, (not only the benchmark)
+ // which should reduce warmup time and give a realistic picture of the performance of
+ // effectiveSizeHint()
+ QSizeF constraint(hfw ? 100 : -1, -1);
+ QBENCHMARK {
+ (void)form->effectiveSizeHint(Qt::PreferredSize, constraint);
+ }
+
+}
+
+
+QTEST_MAIN(tst_QGraphicsLinearLayout)
+
+#include "tst_qgraphicslinearlayout.moc"
diff --git a/tools/assistant/tools/assistant/doc/assistant.qdocconf b/tools/assistant/tools/assistant/doc/assistant.qdocconf
index 26cdafbdf1..57abeae1de 100644
--- a/tools/assistant/tools/assistant/doc/assistant.qdocconf
+++ b/tools/assistant/tools/assistant/doc/assistant.qdocconf
@@ -12,5 +12,5 @@ HTML.footer = "<p /><address><hr /><div align=\"center\">\n" \
"<table width=\"100%\" cellspacing=\"0\" border=\"0\"><tr class=\"address\">\n" \
"<td width=\"30%\" align=\"left\">Copyright &copy; 2010 Nokia Corporation and/or its subsidiary(-ies)</td>\n" \
"<td width=\"40%\" align=\"center\">Trademarks</td>\n" \
- "<td width=\"30%\" align=\"right\"><div align=\"right\">Qt 4.7.1</div></td>\n" \
+ "<td width=\"30%\" align=\"right\"><div align=\"right\">Qt 4.7.2</div></td>\n" \
"</tr></table></div></address>"
diff --git a/tools/assistant/tools/assistant/helpenginewrapper.cpp b/tools/assistant/tools/assistant/helpenginewrapper.cpp
index a53a9eeaac..748ad2c29d 100644
--- a/tools/assistant/tools/assistant/helpenginewrapper.cpp
+++ b/tools/assistant/tools/assistant/helpenginewrapper.cpp
@@ -144,7 +144,7 @@ HelpEngineWrapper::HelpEngineWrapper(const QString &collectionFile)
/*
* Otherwise we will waste time if several new docs are found,
- * because we will start to index them, only to be interupted
+ * because we will start to index them, only to be interrupted
* by the next request. Also, there is a nasty SQLITE bug that will
* cause the application to hang for minutes in that case.
* This call is reverted by initalDocSetupDone(), which must be
diff --git a/tools/configure/configure.pro b/tools/configure/configure.pro
index 810f00603d..0a49fbecc7 100644
--- a/tools/configure/configure.pro
+++ b/tools/configure/configure.pro
@@ -63,8 +63,8 @@ HEADERS = configureapp.h environment.h tools.h\
$$QT_SOURCE_TREE/src/corelib/tools/qunicodetables_p.h \
$$QT_SOURCE_TREE/src/corelib/xml/qxmlstream.h \
$$QT_SOURCE_TREE/src/corelib/xml/qxmlutils_p.h \
- $$QT_SOURCE_TREE/tools/shared/symbian/epocroot.h \
- $$QT_SOURCE_TREE/tools/shared/windows/registry.h
+ $$QT_SOURCE_TREE/tools/shared/symbian/epocroot_p.h \
+ $$QT_SOURCE_TREE/tools/shared/windows/registry_p.h
SOURCES = main.cpp configureapp.cpp environment.cpp tools.cpp \
diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp
index 3808c4e2ee..050ad62726 100644
--- a/tools/configure/configureapp.cpp
+++ b/tools/configure/configureapp.cpp
@@ -741,6 +741,23 @@ void Configure::parseCmdLine()
} else if (configCmdLine.at(i) == "-opengl-es-2") {
dictionary[ "OPENGL" ] = "yes";
dictionary[ "OPENGL_ES_2" ] = "yes";
+ } else if (configCmdLine.at(i) == "-opengl") {
+ dictionary[ "OPENGL" ] = "yes";
+ i++;
+ if (i == argCount)
+ break;
+
+ if (configCmdLine.at(i) == "es1") {
+ dictionary[ "OPENGL_ES_CM" ] = "yes";
+ } else if ( configCmdLine.at(i) == "es2" ) {
+ dictionary[ "OPENGL_ES_2" ] = "yes";
+ } else if ( configCmdLine.at(i) == "desktop" ) {
+ dictionary[ "OPENGL_ES_2" ] = "yes";
+ } else {
+ cout << "Argument passed to -opengl option is not valid." << endl;
+ dictionary[ "DONE" ] = "error";
+ break;
+ }
}
// OpenVG Support -------------------------------------------
@@ -1735,6 +1752,11 @@ bool Configure::displayHelp()
desc("QT3SUPPORT", "no","-no-qt3support", "Disables the Qt 3 support functionality.\n");
desc("OPENGL", "no","-no-opengl", "Disables OpenGL functionality\n");
+ desc("OPENGL", "no","-opengl <api>", "Enable OpenGL support with specified API version.\n"
+ "Available values for <api>:");
+ desc("", "", "", " desktop - Enable support for Desktop OpenGL", ' ');
+ desc("OPENGL_ES_CM", "no", "", " es1 - Enable support for OpenGL ES Common Profile", ' ');
+ desc("OPENGL_ES_2", "no", "", " es2 - Enable support for OpenGL ES 2.0", ' ');
desc("OPENVG", "no","-no-openvg", "Disables OpenVG functionality\n");
desc("OPENVG", "yes","-openvg", "Enables OpenVG functionality");
@@ -1895,8 +1917,7 @@ bool Configure::displayHelp()
desc("CETEST", "no", "-no-cetest", "Do not compile Windows CE remote test application");
desc("CETEST", "yes", "-cetest", "Compile Windows CE remote test application");
desc( "-signature <file>", "Use file for signing the target project");
- desc("OPENGL_ES_CM", "no", "-opengl-es-cm", "Enable support for OpenGL ES Common");
- desc("OPENGL_ES_2", "no", "-opengl-es-2", "Enable support for OpenGL ES 2.0");
+
desc("DIRECTSHOW", "no", "-phonon-wince-ds9", "Enable Phonon Direct Show 9 backend for Windows CE");
// Qt\Symbian only options go below here -----------------------------------------------------------------------------
@@ -2471,15 +2492,11 @@ void Configure::generateOutputVars()
qtConfig += "no-gif";
else if (dictionary[ "GIF" ] == "yes")
qtConfig += "gif";
- else if (dictionary[ "GIF" ] == "plugin")
- qmakeFormatPlugins += "gif";
if (dictionary[ "TIFF" ] == "no")
qtConfig += "no-tiff";
else if (dictionary[ "TIFF" ] == "yes")
qtConfig += "tiff";
- else if (dictionary[ "TIFF" ] == "plugin")
- qmakeFormatPlugins += "tiff";
if (dictionary[ "LIBTIFF" ] == "system")
qtConfig += "system-tiff";
@@ -2487,8 +2504,6 @@ void Configure::generateOutputVars()
qtConfig += "no-jpeg";
else if (dictionary[ "JPEG" ] == "yes")
qtConfig += "jpeg";
- else if (dictionary[ "JPEG" ] == "plugin")
- qmakeFormatPlugins += "jpeg";
if (dictionary[ "LIBJPEG" ] == "system")
qtConfig += "system-jpeg";
@@ -2807,8 +2822,6 @@ void Configure::generateOutputVars()
qmakeVars += QString("styles += ") + qmakeStyles.join(" ");
if (!qmakeStylePlugins.isEmpty())
qmakeVars += QString("style-plugins += ") + qmakeStylePlugins.join(" ");
- if (!qmakeFormatPlugins.isEmpty())
- qmakeVars += QString("imageformat-plugins += ") + qmakeFormatPlugins.join(" ");
if (dictionary["QMAKESPEC"].endsWith("-g++")) {
QString includepath = qgetenv("INCLUDE");
@@ -3227,7 +3240,8 @@ void Configure::generateConfigfiles()
}
// Copy configured mkspec to default directory, but remove the old one first, if there is any
- QString defSpec = buildPath + "/mkspecs/default";
+ QString mkspecsPath = buildPath + "/mkspecs";
+ QString defSpec = mkspecsPath + "/default";
QFileInfo defSpecInfo(defSpec);
if (defSpecInfo.exists()) {
if (!Environment::rmdir(defSpec)) {
@@ -3237,21 +3251,22 @@ void Configure::generateConfigfiles()
}
}
- QString spec = dictionary.contains("XQMAKESPEC") ? dictionary["XQMAKESPEC"] : dictionary["QMAKESPEC"];
- QString pltSpec = sourcePath + "/mkspecs/" + spec;
- if (!Environment::cpdir(pltSpec, defSpec)) {
- cout << "Couldn't update default mkspec! Does " << qPrintable(pltSpec) << " exist?" << endl;
+ QDir mkspecsDir(mkspecsPath);
+ if (!mkspecsDir.mkdir("default")) {
+ cout << "Couldn't create default mkspec dir!" << endl;
dictionary["DONE"] = "error";
return;
}
+ QString spec = dictionary.contains("XQMAKESPEC") ? dictionary["XQMAKESPEC"] : dictionary["QMAKESPEC"];
+ QString pltSpec = sourcePath + "/mkspecs/" + spec;
outName = defSpec + "/qmake.conf";
- ::SetFileAttributes((wchar_t*)outName.utf16(), FILE_ATTRIBUTE_NORMAL);
QFile qmakeConfFile(outName);
- if (qmakeConfFile.open(QFile::Append | QFile::WriteOnly | QFile::Text)) {
+ if (qmakeConfFile.open(QFile::WriteOnly | QFile::Text)) {
QTextStream qmakeConfStream;
qmakeConfStream.setDevice(&qmakeConfFile);
- qmakeConfStream << endl << "QMAKESPEC_ORIGINAL=" << pltSpec << endl;
+ qmakeConfStream << "QMAKESPEC_ORIGINAL=" << pltSpec << endl << endl;
+ qmakeConfStream << "include(" << pltSpec << "/qmake.conf)" << endl;
qmakeConfStream.flush();
qmakeConfFile.close();
}
@@ -3331,7 +3346,7 @@ void Configure::generateConfigfiles()
if (tmpFile3.open()) {
tmpStream.setDevice(&tmpFile3);
tmpStream << "/* Evaluation license key */" << endl
- << "static const char qt_eval_key_data [512 + 12] = \"qt_qevalkey=" << licenseInfo["LICENSEKEYEXT"] << "\";" << endl;
+ << "static const volatile char qt_eval_key_data [512 + 12] = \"qt_qevalkey=" << licenseInfo["LICENSEKEYEXT"] << "\";" << endl;
tmpStream.flush();
tmpFile3.flush();
@@ -3415,7 +3430,7 @@ void Configure::displayConfig()
QString webkit = dictionary[ "WEBKIT" ];
if (webkit == "debug")
webkit = "yes (debug)";
- cout << "WebKit support.............." << webkit;
+ cout << "WebKit support.............." << webkit << endl;
}
cout << "Declarative support........." << dictionary[ "DECLARATIVE" ] << endl;
cout << "Declarative debugging......." << dictionary[ "DECLARATIVE_DEBUG" ] << endl;
diff --git a/tools/configure/configureapp.h b/tools/configure/configureapp.h
index b3c07f73ce..32d186002f 100644
--- a/tools/configure/configureapp.h
+++ b/tools/configure/configureapp.h
@@ -122,8 +122,6 @@ private:
QStringList qmakeStyles;
QStringList qmakeStylePlugins;
- QStringList qmakeFormatPlugins;
-
QStringList qmakeVars;
QStringList qmakeDefines;
// makeList[0] for qt and qtmain
diff --git a/tools/configure/environment.cpp b/tools/configure/environment.cpp
index 03fd0cc120..1866ef4123 100644
--- a/tools/configure/environment.cpp
+++ b/tools/configure/environment.cpp
@@ -60,8 +60,8 @@ using namespace std;
#include <qt_windows.h>
#endif
-#include <symbian/epocroot.h> // from tools/shared
-#include <windows/registry.h> // from tools/shared
+#include <symbian/epocroot_p.h> // from tools/shared
+#include <windows/registry_p.h> // from tools/shared
QT_BEGIN_NAMESPACE
@@ -163,7 +163,7 @@ Compiler Environment::detectCompiler()
QString paths = qgetenv("PATH");
QStringList pathlist = paths.toLower().split(";");
for(int i = 0; compiler_info[i].compiler; ++i) {
- QString productPath = readRegistryKey(HKEY_LOCAL_MACHINE, compiler_info[i].regKey).toLower();
+ QString productPath = qt_readRegistryKey(HKEY_LOCAL_MACHINE, compiler_info[i].regKey).toLower();
if (productPath.length()) {
QStringList::iterator it;
for(it = pathlist.begin(); it != pathlist.end(); ++it) {
@@ -466,8 +466,8 @@ bool Environment::rmdir(const QString &name)
QString Environment::symbianEpocRoot()
{
- // Call function defined in tools/shared/symbian/epocroot.h
- return ::epocRoot();
+ // Call function defined in tools/shared/symbian/epocroot_p.h
+ return ::qt_epocRoot();
}
QT_END_NAMESPACE
diff --git a/tools/linguist/lrelease/lrelease.pro b/tools/linguist/lrelease/lrelease.pro
index 6beafa3a18..89694be6e6 100644
--- a/tools/linguist/lrelease/lrelease.pro
+++ b/tools/linguist/lrelease/lrelease.pro
@@ -15,6 +15,7 @@ macx:SOURCES += $$QT_SOURCE_TREE/src/corelib/io/qsettings_mac.cpp
include(../../../src/tools/bootstrap/bootstrap.pri)
include(../shared/formats.pri)
include(../shared/proparser.pri)
+include(../../shared/symbian/epocroot.pri)
win32:LIBS += -ladvapi32 # for qsettings_win.cpp
diff --git a/tools/linguist/lupdate/main.cpp b/tools/linguist/lupdate/main.cpp
index 49906e0356..76a875631b 100644
--- a/tools/linguist/lupdate/main.cpp
+++ b/tools/linguist/lupdate/main.cpp
@@ -350,6 +350,10 @@ static void processProjects(
ProFileEvaluator visitor;
visitor.setVerbose(options & Verbose);
+ QHash<QString, QStringList> lupdateConfig;
+ lupdateConfig.insert(QLatin1String("CONFIG"), QStringList(QLatin1String("lupdate_run")));
+ visitor.addVariables(lupdateConfig);
+
QFileInfo pfi(proFile);
ProFile pro(pfi.absoluteFilePath());
if (!visitor.queryProFile(&pro) || !visitor.accept(&pro)) {
diff --git a/tools/qdoc3/doc/files/qt.qdocconf b/tools/qdoc3/doc/files/qt.qdocconf
index 4546c7a881..44cfbc1a7c 100644
--- a/tools/qdoc3/doc/files/qt.qdocconf
+++ b/tools/qdoc3/doc/files/qt.qdocconf
@@ -22,7 +22,7 @@ edition.DesktopLight.groups = -graphicsview-api
qhp.projects = Qt
qhp.Qt.file = qt.qhp
-qhp.Qt.namespace = com.trolltech.qt.471
+qhp.Qt.namespace = com.trolltech.qt.472
qhp.Qt.virtualFolder = qdoc
qhp.Qt.indexTitle = Qt Reference Documentation
qhp.Qt.indexRoot =
@@ -36,9 +36,9 @@ qhp.Qt.extraFiles = classic.css \
images/dynamiclayouts-example.png \
images/stylesheet-coffee-plastique.png
-qhp.Qt.filterAttributes = qt 4.7.1 qtrefdoc
-qhp.Qt.customFilters.Qt.name = Qt 4.7.1
-qhp.Qt.customFilters.Qt.filterAttributes = qt 4.7.1
+qhp.Qt.filterAttributes = qt 4.7.2 qtrefdoc
+qhp.Qt.customFilters.Qt.name = Qt 4.7.2
+qhp.Qt.customFilters.Qt.filterAttributes = qt 4.7.2
qhp.Qt.subprojects = classes overviews examples
qhp.Qt.subprojects.classes.title = Classes
qhp.Qt.subprojects.classes.indexTitle = Qt's Classes
diff --git a/tools/qdoc3/test/assistant.qdocconf b/tools/qdoc3/test/assistant.qdocconf
index 74b68df3cc..0e9a2a86aa 100644
--- a/tools/qdoc3/test/assistant.qdocconf
+++ b/tools/qdoc3/test/assistant.qdocconf
@@ -13,7 +13,7 @@ indexes = $QT_BUILD_TREE/doc-build/html-qt/qt.index
qhp.projects = Assistant
qhp.Assistant.file = assistant.qhp
-qhp.Assistant.namespace = com.trolltech.assistant.471
+qhp.Assistant.namespace = com.trolltech.assistant.472
qhp.Assistant.virtualFolder = qdoc
qhp.Assistant.indexTitle = Qt Assistant Manual
qhp.Assistant.extraFiles = images/bg_l.png \
@@ -50,7 +50,7 @@ qhp.Assistant.extraFiles = images/bg_l.png \
style/style_ie8.css \
style/style.css
-qhp.Assistant.filterAttributes = qt 4.7.1 tools assistant
+qhp.Assistant.filterAttributes = qt 4.7.2 tools assistant
qhp.Assistant.customFilters.Assistant.name = Qt Assistant Manual
qhp.Assistant.customFilters.Assistant.filterAttributes = qt tools assistant
qhp.Assistant.subprojects = manual examples
diff --git a/tools/qdoc3/test/designer.qdocconf b/tools/qdoc3/test/designer.qdocconf
index ab66792910..637399bf2f 100644
--- a/tools/qdoc3/test/designer.qdocconf
+++ b/tools/qdoc3/test/designer.qdocconf
@@ -13,7 +13,7 @@ indexes = $QT_BUILD_TREE/doc-build/html-qt/qt.index
qhp.projects = Designer
qhp.Designer.file = designer.qhp
-qhp.Designer.namespace = com.trolltech.designer.471
+qhp.Designer.namespace = com.trolltech.designer.472
qhp.Designer.virtualFolder = qdoc
qhp.Designer.indexTitle = Qt Designer Manual
qhp.Designer.extraFiles = images/bg_l.png \
@@ -50,7 +50,7 @@ qhp.Designer.extraFiles = images/bg_l.png \
style/style_ie8.css \
style/style.css
-qhp.Designer.filterAttributes = qt 4.7.1 tools designer
+qhp.Designer.filterAttributes = qt 4.7.2 tools designer
qhp.Designer.customFilters.Designer.name = Qt Designer Manual
qhp.Designer.customFilters.Designer.filterAttributes = qt tools designer
qhp.Designer.subprojects = manual examples
diff --git a/tools/qdoc3/test/linguist.qdocconf b/tools/qdoc3/test/linguist.qdocconf
index 0d920e2517..8ee298ece9 100644
--- a/tools/qdoc3/test/linguist.qdocconf
+++ b/tools/qdoc3/test/linguist.qdocconf
@@ -13,7 +13,7 @@ indexes = $QT_BUILD_TREE/doc-build/html-qt/qt.index
qhp.projects = Linguist
qhp.Linguist.file = linguist.qhp
-qhp.Linguist.namespace = com.trolltech.linguist.471
+qhp.Linguist.namespace = com.trolltech.linguist.472
qhp.Linguist.virtualFolder = qdoc
qhp.Linguist.indexTitle = Qt Linguist Manual
qhp.Linguist.extraFiles = images/bg_l.png \
@@ -50,7 +50,7 @@ qhp.Linguist.extraFiles = images/bg_l.png \
style/style_ie8.css \
style/style.css
-qhp.Linguist.filterAttributes = qt 4.7.1 tools linguist
+qhp.Linguist.filterAttributes = qt 4.7.2 tools linguist
qhp.Linguist.customFilters.Linguist.name = Qt Linguist Manual
qhp.Linguist.customFilters.Linguist.filterAttributes = qt tools linguist
qhp.Linguist.subprojects = manual examples
diff --git a/tools/qdoc3/test/qdeclarative.qdocconf b/tools/qdoc3/test/qdeclarative.qdocconf
index 9aaebcbf6c..e68a935fec 100644
--- a/tools/qdoc3/test/qdeclarative.qdocconf
+++ b/tools/qdoc3/test/qdeclarative.qdocconf
@@ -21,7 +21,7 @@ edition.DesktopLight.groups = -graphicsview-api
qhp.projects = Qml
qhp.Qml.file = qml.qhp
-qhp.Qml.namespace = com.trolltech.qml.471
+qhp.Qml.namespace = com.trolltech.qml.472
qhp.Qml.virtualFolder = qdoc
qhp.Qml.indexTitle = Qml Reference
@@ -61,9 +61,9 @@ qhp.Qml.extraFiles = images/bg_l.png \
style/style_ie8.css \
style/style.css
-qhp.Qml.filterAttributes = qt 4.7.1 qtrefdoc
-qhp.Qml.customFilters.Qt.name = Qt 4.7.1
-qhp.Qml.customFilters.Qt.filterAttributes = qt 4.7.1
+qhp.Qml.filterAttributes = qt 4.7.2 qtrefdoc
+qhp.Qml.customFilters.Qt.name = Qt 4.7.2
+qhp.Qml.customFilters.Qt.filterAttributes = qt 4.7.2
qhp.Qml.subprojects = classes
qhp.Qml.subprojects.classes.title = Elements
qhp.Qml.subprojects.classes.indexTitle = Qml Elements
diff --git a/tools/qdoc3/test/qmake.qdocconf b/tools/qdoc3/test/qmake.qdocconf
index be2e9d38d3..b5bc96c6e5 100644
--- a/tools/qdoc3/test/qmake.qdocconf
+++ b/tools/qdoc3/test/qmake.qdocconf
@@ -13,7 +13,7 @@ indexes = $QT_BUILD_TREE/doc-build/html-qt/qt.index
qhp.projects = qmake
qhp.qmake.file = qmake.qhp
-qhp.qmake.namespace = com.trolltech.qmake.471
+qhp.qmake.namespace = com.trolltech.qmake.472
qhp.qmake.virtualFolder = qdoc
qhp.qmake.indexTitle = QMake Manual
qhp.qmake.extraFiles = images/bg_l.png \
@@ -50,7 +50,7 @@ qhp.qmake.extraFiles = images/bg_l.png \
style/style_ie8.css \
style/style.css
-qhp.qmake.filterAttributes = qt 4.7.1 tools qmake
+qhp.qmake.filterAttributes = qt 4.7.2 tools qmake
qhp.qmake.customFilters.qmake.name = qmake Manual
qhp.qmake.customFilters.qmake.filterAttributes = qt tools qmake
qhp.qmake.subprojects = manual
diff --git a/tools/qdoc3/test/qt-build-docs.qdocconf b/tools/qdoc3/test/qt-build-docs.qdocconf
index 358f17f9a1..12dac9c727 100644
--- a/tools/qdoc3/test/qt-build-docs.qdocconf
+++ b/tools/qdoc3/test/qt-build-docs.qdocconf
@@ -15,7 +15,7 @@ naturallanguage = en_US
qhp.projects = Qt
qhp.Qt.file = qt.qhp
-qhp.Qt.namespace = com.trolltech.qt.471
+qhp.Qt.namespace = com.trolltech.qt.472
qhp.Qt.virtualFolder = qdoc
qhp.Qt.indexTitle = Qt Reference Documentation
qhp.Qt.indexRoot =
@@ -59,9 +59,9 @@ qhp.Qt.extraFiles = index.html \
-qhp.Qt.filterAttributes = qt 4.7.1 qtrefdoc
-qhp.Qt.customFilters.Qt.name = Qt 4.7.1
-qhp.Qt.customFilters.Qt.filterAttributes = qt 4.7.1
+qhp.Qt.filterAttributes = qt 4.7.2 qtrefdoc
+qhp.Qt.customFilters.Qt.name = Qt 4.7.2
+qhp.Qt.customFilters.Qt.filterAttributes = qt 4.7.2
qhp.Qt.subprojects = classes qmlelements overviews examples
qhp.Qt.subprojects.classes.title = Classes
qhp.Qt.subprojects.classes.indexTitle = All Classes
diff --git a/tools/qdoc3/test/qt-build-docs_ja_JP.qdocconf b/tools/qdoc3/test/qt-build-docs_ja_JP.qdocconf
index 7e28fa244c..24696d5b84 100644
--- a/tools/qdoc3/test/qt-build-docs_ja_JP.qdocconf
+++ b/tools/qdoc3/test/qt-build-docs_ja_JP.qdocconf
@@ -17,15 +17,15 @@ indexes = $QT_BUILD_TREE/doc-build/html-qt/qt.index
qhp.projects = Qt
qhp.Qt.file = qt.qhp
-qhp.Qt.namespace = com.trolltech.qt.471
+qhp.Qt.namespace = com.trolltech.qt.472
qhp.Qt.virtualFolder = qdoc
qhp.Qt.title = Qt
qhp.Qt.indexTitle = Qt
qhp.Qt.selectors = fake:example
-qhp.Qt.filterAttributes = qt 4.7.1 qtrefdoc ja_JP
-qhp.Qt.customFilters.Qt.name = Qt 4.7.1
-qhp.Qt.customFilters.Qt.filterAttributes = qt 4.7.1
+qhp.Qt.filterAttributes = qt 4.7.2 qtrefdoc ja_JP
+qhp.Qt.customFilters.Qt.name = Qt 4.7.2
+qhp.Qt.customFilters.Qt.filterAttributes = qt 4.7.2
# Files not referenced in any qdoc file (last four are needed by qtdemo)
# See also extraimages.HTML
diff --git a/tools/qdoc3/test/qt-build-docs_zh_CN.qdocconf b/tools/qdoc3/test/qt-build-docs_zh_CN.qdocconf
index cfcc76d533..7789bf7ca8 100644
--- a/tools/qdoc3/test/qt-build-docs_zh_CN.qdocconf
+++ b/tools/qdoc3/test/qt-build-docs_zh_CN.qdocconf
@@ -17,15 +17,15 @@ indexes = $QT_BUILD_TREE/doc-build/html-qt/qt.index
qhp.projects = Qt
qhp.Qt.file = qt.qhp
-qhp.Qt.namespace = com.trolltech.qt.471
+qhp.Qt.namespace = com.trolltech.qt.472
qhp.Qt.virtualFolder = qdoc
qhp.Qt.title = 教程
qhp.Qt.indexTitle = 教程
qhp.Qt.selectors = fake:example
-qhp.Qt.filterAttributes = qt 4.7.1 qtrefdoc zh_CN
-qhp.Qt.customFilters.Qt.name = Qt 4.7.1
-qhp.Qt.customFilters.Qt.filterAttributes = qt 4.7.1
+qhp.Qt.filterAttributes = qt 4.7.2 qtrefdoc zh_CN
+qhp.Qt.customFilters.Qt.name = Qt 4.7.2
+qhp.Qt.customFilters.Qt.filterAttributes = qt 4.7.2
# Files not referenced in any qdoc file (last four are needed by qtdemo)
# See also extraimages.HTML
diff --git a/tools/qdoc3/test/qt.qdocconf b/tools/qdoc3/test/qt.qdocconf
index 947beb25e1..66f62adf9c 100644
--- a/tools/qdoc3/test/qt.qdocconf
+++ b/tools/qdoc3/test/qt.qdocconf
@@ -17,7 +17,7 @@ naturallanguage = en_US
qhp.projects = Qt
qhp.Qt.file = qt.qhp
-qhp.Qt.namespace = com.trolltech.qt.471
+qhp.Qt.namespace = com.trolltech.qt.472
qhp.Qt.virtualFolder = qdoc
qhp.Qt.indexTitle = Qt Reference Documentation
qhp.Qt.indexRoot =
@@ -59,9 +59,9 @@ qhp.Qt.extraFiles = index.html \
style/style_ie8.css \
style/style.css
-qhp.Qt.filterAttributes = qt 4.7.1 qtrefdoc
-qhp.Qt.customFilters.Qt.name = Qt 4.7.1
-qhp.Qt.customFilters.Qt.filterAttributes = qt 4.7.1
+qhp.Qt.filterAttributes = qt 4.7.2 qtrefdoc
+qhp.Qt.customFilters.Qt.name = Qt 4.7.2
+qhp.Qt.customFilters.Qt.filterAttributes = qt 4.7.2
qhp.Qt.subprojects = classes qmlelements overviews examples
qhp.Qt.subprojects.classes.title = Classes
qhp.Qt.subprojects.classes.indexTitle = Qt's Classes
diff --git a/tools/qdoc3/test/qt_ja_JP.qdocconf b/tools/qdoc3/test/qt_ja_JP.qdocconf
index 32bba064a1..a5c348c097 100644
--- a/tools/qdoc3/test/qt_ja_JP.qdocconf
+++ b/tools/qdoc3/test/qt_ja_JP.qdocconf
@@ -19,15 +19,15 @@ indexes = $QTDIR/doc/html/qt.index
qhp.projects = Qt
qhp.Qt.file = qt.qhp
-qhp.Qt.namespace = com.trolltech.qt.471
+qhp.Qt.namespace = com.trolltech.qt.472
qhp.Qt.virtualFolder = qdoc
qhp.Qt.title = Qt
qhp.Qt.indexTitle = Qt
qhp.Qt.selectors = fake:example
-qhp.Qt.filterAttributes = qt 4.7.1 qtrefdoc ja_JP
-qhp.Qt.customFilters.Qt.name = Qt 4.7.1
-qhp.Qt.customFilters.Qt.filterAttributes = qt 4.7.1
+qhp.Qt.filterAttributes = qt 4.7.2 qtrefdoc ja_JP
+qhp.Qt.customFilters.Qt.name = Qt 4.7.2
+qhp.Qt.customFilters.Qt.filterAttributes = qt 4.7.2
# Files not referenced in any qdoc file (last four are needed by qtdemo)
# See also extraimages.HTML
diff --git a/tools/qdoc3/test/qt_zh_CN.qdocconf b/tools/qdoc3/test/qt_zh_CN.qdocconf
index 40d3d5a060..25f96b8aa0 100644
--- a/tools/qdoc3/test/qt_zh_CN.qdocconf
+++ b/tools/qdoc3/test/qt_zh_CN.qdocconf
@@ -19,15 +19,15 @@ indexes = $QTDIR/doc/html/qt.index
qhp.projects = Qt
qhp.Qt.file = qt.qhp
-qhp.Qt.namespace = com.trolltech.qt.471
+qhp.Qt.namespace = com.trolltech.qt.472
qhp.Qt.virtualFolder = qdoc
qhp.Qt.title = 教程
qhp.Qt.indexTitle = 教程
qhp.Qt.selectors = fake:example
-qhp.Qt.filterAttributes = qt 4.7.1 qtrefdoc zh_CN
-qhp.Qt.customFilters.Qt.name = Qt 4.7.1
-qhp.Qt.customFilters.Qt.filterAttributes = qt 4.7.1
+qhp.Qt.filterAttributes = qt 4.7.2 qtrefdoc zh_CN
+qhp.Qt.customFilters.Qt.name = Qt 4.7.2
+qhp.Qt.customFilters.Qt.filterAttributes = qt 4.7.2
# Files not referenced in any qdoc file (last four are needed by qtdemo)
# See also extraimages.HTML
diff --git a/tools/qmeegographicssystemhelper/qmeegographicssystemhelper.cpp b/tools/qmeegographicssystemhelper/qmeegographicssystemhelper.cpp
index d348e70c9d..b660eb37ea 100644
--- a/tools/qmeegographicssystemhelper/qmeegographicssystemhelper.cpp
+++ b/tools/qmeegographicssystemhelper/qmeegographicssystemhelper.cpp
@@ -46,6 +46,7 @@
#include <private/qgraphicssystem_runtime_p.h>
#include <private/qpixmap_raster_p.h>
#include "qmeegoruntime.h"
+#include "qmeegoswitchevent.h"
QString QMeeGoGraphicsSystemHelper::runningGraphicsSystemName()
{
@@ -81,8 +82,16 @@ void QMeeGoGraphicsSystemHelper::switchToMeeGo()
if (QApplicationPrivate::instance()->graphics_system_name != QLatin1String("runtime"))
qWarning("Can't switch to meego - switching only supported with 'runtime' graphics system.");
else {
+ QMeeGoSwitchEvent willSwitchEvent(QLatin1String("meego"), QMeeGoSwitchEvent::WillSwitch);
+ foreach (QWidget *widget, QApplication::topLevelWidgets())
+ QCoreApplication::sendEvent(widget, &willSwitchEvent);
+
QApplication *app = static_cast<QApplication *>(QCoreApplication::instance());
app->setGraphicsSystem(QLatin1String("meego"));
+
+ QMeeGoSwitchEvent didSwitchEvent(QLatin1String("meego"), QMeeGoSwitchEvent::DidSwitch);
+ foreach (QWidget *widget, QApplication::topLevelWidgets())
+ QCoreApplication::sendEvent(widget, &didSwitchEvent);
}
}
@@ -94,8 +103,16 @@ void QMeeGoGraphicsSystemHelper::switchToRaster()
if (QApplicationPrivate::instance()->graphics_system_name != QLatin1String("runtime"))
qWarning("Can't switch to raster - switching only supported with 'runtime' graphics system.");
else {
+ QMeeGoSwitchEvent willSwitchEvent(QLatin1String("raster"), QMeeGoSwitchEvent::WillSwitch);
+ foreach (QWidget *widget, QApplication::topLevelWidgets())
+ QCoreApplication::sendEvent(widget, &willSwitchEvent);
+
QApplication *app = static_cast<QApplication *>(QCoreApplication::instance());
app->setGraphicsSystem(QLatin1String("raster"));
+
+ QMeeGoSwitchEvent didSwitchEvent(QLatin1String("raster"), QMeeGoSwitchEvent::DidSwitch);
+ foreach (QWidget *widget, QApplication::topLevelWidgets())
+ QCoreApplication::sendEvent(widget, &didSwitchEvent);
}
}
diff --git a/tools/qmeegographicssystemhelper/qmeegographicssystemhelper.h b/tools/qmeegographicssystemhelper/qmeegographicssystemhelper.h
index 2baacbbe1a..6df3c22931 100644
--- a/tools/qmeegographicssystemhelper/qmeegographicssystemhelper.h
+++ b/tools/qmeegographicssystemhelper/qmeegographicssystemhelper.h
@@ -102,6 +102,9 @@ public:
When running with the 'runtime' graphics system, sets the currently active
system to 'meego'. The window surface and all the resources are automatically
migrated to OpenGL. Will fail if the active graphics system is not 'runtime'.
+ Calling this function will emit QMeeGoSwitchEvent to the top level widgets.
+ Two events will be emitted for each switch -- one before the switch (QMeeGoSwitchEvent::WillSwitch)
+ and one after the switch (QMeeGoSwitchEvent::DidSwitch).
*/
static void switchToMeeGo();
@@ -111,6 +114,9 @@ public:
system to 'raster'. The window surface and the graphics resources (including the
EGL shared image resources) are automatically migrated back to the CPU. All OpenGL
resources (surface, context, cache, font cache) are automaticall anihilated.
+ Calling this function will emit QMeeGoSwitchEvent to the top level widgets.
+ Two events will be emitted for each switch -- one before the switch (QMeeGoSwitchEvent::WillSwitch)
+ and one after the switch (QMeeGoSwitchEvent::DidSwitch).
*/
static void switchToRaster();
@@ -175,6 +181,9 @@ public:
This function needs to be called *before* any widget/content is created.
When called with true, the base window surface will be translucent and initialized
with QGLFormat.alpha == true.
+
+ This function is *deprecated*. Set Qt::WA_TranslucentBackground attribute
+ on the top-level widget *before* you show it instead.
*/
static void setTranslucent(bool translucent);
};
diff --git a/tools/qmeegographicssystemhelper/qmeegographicssystemhelper.pro b/tools/qmeegographicssystemhelper/qmeegographicssystemhelper.pro
index 161a31bfbd..360847ee21 100644
--- a/tools/qmeegographicssystemhelper/qmeegographicssystemhelper.pro
+++ b/tools/qmeegographicssystemhelper/qmeegographicssystemhelper.pro
@@ -6,5 +6,5 @@ include(../../src/qbase.pri)
QT += gui
INCLUDEPATH += '../../src/plugins/graphicssystems/meego'
-HEADERS = qmeegographicssystemhelper.h qmeegooverlaywidget.h qmeegolivepixmap.h qmeegoruntime.h qmeegolivepixmap_p.h qmeegofencesync.h qmeegofencesync_p.h
-SOURCES = qmeegographicssystemhelper.cpp qmeegooverlaywidget.cpp qmeegoruntime.cpp qmeegolivepixmap.cpp qmeegographicssystemhelper.h qmeegooverlaywidget.h qmeegolivepixmap.h qmeegoruntime.h qmeegolivepixmap_p.h qmeegofencesync.h qmeegofencesync_p.h qmeegofencesync.cpp
+HEADERS = qmeegographicssystemhelper.h qmeegooverlaywidget.h qmeegolivepixmap.h qmeegoruntime.h qmeegolivepixmap_p.h qmeegofencesync.h qmeegofencesync_p.h qmeegoswitchevent.h
+SOURCES = qmeegographicssystemhelper.cpp qmeegooverlaywidget.cpp qmeegoruntime.cpp qmeegolivepixmap.cpp qmeegographicssystemhelper.h qmeegooverlaywidget.h qmeegolivepixmap.h qmeegoruntime.h qmeegolivepixmap_p.h qmeegofencesync.h qmeegofencesync_p.h qmeegofencesync.cpp qmeegoswitchevent.cpp qmeegoswitchevent.h
diff --git a/tools/qmeegographicssystemhelper/qmeegoswitchevent.cpp b/tools/qmeegographicssystemhelper/qmeegoswitchevent.cpp
new file mode 100644
index 0000000000..22ea0fe7a2
--- /dev/null
+++ b/tools/qmeegographicssystemhelper/qmeegoswitchevent.cpp
@@ -0,0 +1,68 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the plugins 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 "qmeegoswitchevent.h"
+
+static int switchEventNumber = -1;
+
+QMeeGoSwitchEvent::QMeeGoSwitchEvent(const QString &graphicsSystemName, QMeeGoSwitchEvent::State s) : QEvent(QMeeGoSwitchEvent::eventNumber())
+{
+ name = graphicsSystemName;
+ switchState = s;
+}
+
+QString QMeeGoSwitchEvent::graphicsSystemName() const
+{
+ return name;
+}
+
+QMeeGoSwitchEvent::State QMeeGoSwitchEvent::state() const
+{
+ return switchState;
+}
+
+QEvent::Type QMeeGoSwitchEvent::eventNumber()
+{
+ if (switchEventNumber < 0)
+ switchEventNumber = QEvent::registerEventType();
+
+ return (QEvent::Type) switchEventNumber;
+} \ No newline at end of file
diff --git a/tools/qmeegographicssystemhelper/qmeegoswitchevent.h b/tools/qmeegographicssystemhelper/qmeegoswitchevent.h
new file mode 100644
index 0000000000..0ddbd3d814
--- /dev/null
+++ b/tools/qmeegographicssystemhelper/qmeegoswitchevent.h
@@ -0,0 +1,91 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the plugins 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 <QEvent>
+#include <QString>
+
+//! A custom event representing a graphics system switch.
+/*!
+ This event is sent two times -- before the actual switch and after the switch.
+ The current mode of the event can be detected by looking at the State of the
+ event.
+
+ The end-user application can use the event to drop it's own allocated GL resources
+ when going to software mode.
+*/
+
+class QMeeGoSwitchEvent : public QEvent
+{
+public:
+
+ //! The state represented by this event.
+ enum State {
+ WillSwitch,
+ DidSwitch
+ };
+
+ //! Constructor for the event.
+ /*!
+ Creates a new event with the given name and the given state.
+ */
+ QMeeGoSwitchEvent(const QString &graphicsSystemName, State s);
+
+ //! Returns the name of the target graphics system.
+ /*!
+ Depending on the state, the name represents the system we're about to swtich to,
+ or the system we just switched to.
+ */
+ QString graphicsSystemName() const;
+
+ //! Returns the state represented by this event.
+ State state() const;
+
+ //! Returns the event type/number for QMeeGoSwitchEvent.
+ /*!
+ The type is registered on first access. Use this to detect incoming
+ QMeeGoSwitchEvents.
+ */
+ QEvent::Type eventNumber();
+
+private:
+ QString name;
+ State switchState;
+};
diff --git a/tools/qml/browser/Browser.qml b/tools/qml/browser/Browser.qml
index ebed72f927..b9573da334 100644
--- a/tools/qml/browser/Browser.qml
+++ b/tools/qml/browser/Browser.qml
@@ -180,7 +180,7 @@ Rectangle {
GradientStop { id: t1; position: 0.0; color: palette.highlight }
GradientStop { id: t2; position: 1.0; color: Qt.lighter(palette.highlight) }
}
- width: view1.currentItem.width
+ width: view1.currentItem == null ? 0 : view1.currentItem.width
}
highlightMoveSpeed: 1000
pressDelay: 100
@@ -230,7 +230,7 @@ Rectangle {
GradientStop { id: t1; position: 0.0; color: palette.highlight }
GradientStop { id: t2; position: 1.0; color: Qt.lighter(palette.highlight) }
}
- width: view1.currentItem.width
+ width: view1.currentItem == null ? 0 : view1.currentItem.width
}
highlightMoveSpeed: 1000
pressDelay: 100
diff --git a/tools/qml/main.cpp b/tools/qml/main.cpp
index 579f1abf6f..209c72fa8a 100644
--- a/tools/qml/main.cpp
+++ b/tools/qml/main.cpp
@@ -155,7 +155,11 @@ void usage()
qWarning(" -I <directory> ........................... prepend to the module import search path,");
qWarning(" display path if <directory> is empty");
qWarning(" -P <directory> ........................... prepend to the plugin search path");
+#if defined(Q_WS_MAC)
+ qWarning(" -no-opengl ............................... don't use a QGLWidget for the viewport");
+#else
qWarning(" -opengl .................................. use a QGLWidget for the viewport");
+#endif
qWarning(" -script <path> ........................... set the script to use");
qWarning(" -scriptopts <options>|help ............... set the script options to use");
@@ -370,8 +374,13 @@ static void parseCommandLineOptions(const QStringList &arguments)
} else if (arg == "-translation") {
if (lastArg) usage();
opts.translationFile = arguments.at(++i);
+#if defined(Q_WS_MAC)
+ } else if (arg == "-no-opengl") {
+ opts.useGL = false;
+#else
} else if (arg == "-opengl") {
opts.useGL = true;
+#endif
} else if (arg == "-qmlbrowser") {
opts.useNativeFileBrowser = false;
} else if (arg == "-warnings") {
diff --git a/tools/qml/qdeclarativetester.cpp b/tools/qml/qdeclarativetester.cpp
index eaf3403a66..e3a1f596fb 100644
--- a/tools/qml/qdeclarativetester.cpp
+++ b/tools/qml/qdeclarativetester.cpp
@@ -62,6 +62,12 @@ QDeclarativeTester::QDeclarativeTester(const QString &script, QDeclarativeViewer
parent->viewport()->installEventFilter(this);
parent->installEventFilter(this);
QUnifiedTimer::instance()->setConsistentTiming(true);
+
+ //Font antialiasing makes tests system-specific, so disable it
+ QFont noAA = QApplication::font();
+ noAA.setStyleStrategy(QFont::NoAntialias);
+ QApplication::setFont(noAA);
+
if (options & QDeclarativeViewer::Play)
this->run();
start();
@@ -268,6 +274,7 @@ void QDeclarativeTester::updateCurrentTime(int msec)
if (options & QDeclarativeViewer::TestImages) {
img.fill(qRgb(255,255,255));
+
#ifdef Q_WS_MAC
bool oldSmooth = qt_applefontsmoothing_enabled;
qt_applefontsmoothing_enabled = false;
@@ -276,6 +283,7 @@ void QDeclarativeTester::updateCurrentTime(int msec)
#ifdef Q_WS_MAC
qt_applefontsmoothing_enabled = oldSmooth;
#endif
+
m_view->render(&p);
}
@@ -286,7 +294,7 @@ void QDeclarativeTester::updateCurrentTime(int msec)
fe.msec = msec;
if (msec == 0 || !(options & QDeclarativeViewer::TestImages)) {
// Skip first frame, skip if not doing images
- } else if (0 == (m_savedFrameEvents.count() % 60) || snapshot) {
+ } else if (0 == ((m_savedFrameEvents.count()-1) % 60) || snapshot) {
fe.image = img;
} else {
QCryptographicHash hash(QCryptographicHash::Md5);
@@ -337,14 +345,14 @@ void QDeclarativeTester::updateCurrentTime(int msec)
if (QDeclarativeVisualTestFrame *frame = qobject_cast<QDeclarativeVisualTestFrame *>(event)) {
if (frame->msec() < msec) {
if (options & QDeclarativeViewer::TestImages && !(options & QDeclarativeViewer::Record)) {
- qWarning() << "QDeclarativeTester: Extra frame. Seen:"
+ qWarning() << "QDeclarativeTester(" << m_script << "): Extra frame. Seen:"
<< msec << "Expected:" << frame->msec();
imagefailure();
}
} else if (frame->msec() == msec) {
if (!frame->hash().isEmpty() && frame->hash().toUtf8() != fe.hash.toHex()) {
if (options & QDeclarativeViewer::TestImages && !(options & QDeclarativeViewer::Record)) {
- qWarning() << "QDeclarativeTester: Mismatched frame hash at" << msec
+ qWarning() << "QDeclarativeTester(" << m_script << "): Mismatched frame hash at" << msec
<< ". Seen:" << fe.hash.toHex()
<< "Expected:" << frame->hash().toUtf8();
imagefailure();
@@ -356,9 +364,14 @@ void QDeclarativeTester::updateCurrentTime(int msec)
if (options & QDeclarativeViewer::TestImages && !(options & QDeclarativeViewer::Record) && !frame->image().isEmpty()) {
QImage goodImage(frame->image().toLocalFile());
+ if (frame->msec() == 16 && goodImage.size() != img.size()){
+ //Also an image mismatch, but this warning is more informative. Only checked at start though.
+ qWarning() << "QDeclarativeTester(" << m_script << "): Size mismatch. This test must be run at " << goodImage.size();
+ imagefailure();
+ }
if (goodImage != img) {
QString reject(frame->image().toLocalFile() + ".reject.png");
- qWarning() << "QDeclarativeTester: Image mismatch. Reject saved to:"
+ qWarning() << "QDeclarativeTester(" << m_script << "): Image mismatch. Reject saved to:"
<< reject;
img.save(reject);
bool doDiff = (goodImage.size() == img.size());
diff --git a/tools/qml/qmlruntime.cpp b/tools/qml/qmlruntime.cpp
index 78bc409785..a368bc1a2c 100644
--- a/tools/qml/qmlruntime.cpp
+++ b/tools/qml/qmlruntime.cpp
@@ -1012,7 +1012,7 @@ void QDeclarativeViewer::addPluginPath(const QString& plugin)
void QDeclarativeViewer::reload()
{
- open(currentFileOrUrl);
+ launch(currentFileOrUrl);
}
void QDeclarativeViewer::openFile()
@@ -1520,7 +1520,7 @@ void QDeclarativeViewer::updateSizeHints(bool initial)
//qWarning() << "USH: R2V: setting free size ";
layout()->setSizeConstraint(QLayout::SetNoConstraint);
layout()->activate();
- setMinimumSize(QSize(1,1));
+ setMinimumSize(minimumSizeHint());
setMaximumSize(QSize(QWIDGETSIZE_MAX, QWIDGETSIZE_MAX));
canvas->setMinimumSize(QSize(0,0));
canvas->setMaximumSize(QSize(QWIDGETSIZE_MAX, QWIDGETSIZE_MAX));
diff --git a/tools/shared/symbian/epocroot.cpp b/tools/shared/symbian/epocroot.cpp
index ae1dcb1ec0..eabae98276 100644
--- a/tools/shared/symbian/epocroot.cpp
+++ b/tools/shared/symbian/epocroot.cpp
@@ -39,13 +39,13 @@
**
****************************************************************************/
-#include <iostream>
-
#include <QtCore/qdir.h>
#include <QtCore/qxmlstream.h>
-#include "epocroot.h"
-#include "../windows/registry.h"
+#include "epocroot_p.h"
+#include "../windows/registry_p.h"
+
+QT_BEGIN_NAMESPACE
// Registry key under which the location of the Symbian devices.xml file is
// stored.
@@ -64,35 +64,26 @@
// Stored as a static value in order to avoid unnecessary re-evaluation.
static QString epocRootValue;
-#ifdef QT_BUILD_QMAKE
-std::ostream &operator<<(std::ostream &s, const QString &val) {
- s << val.toLocal8Bit().data();
- return s;
-}
-#else
-// Operator implemented in configureapp.cpp
-std::ostream &operator<<(std::ostream &s, const QString &val);
-#endif
-
-QString getDevicesXmlPath()
+static QString getDevicesXmlPath()
{
// Note that the following call will return a null string on platforms other
// than Windows. If support is required on other platforms for devices.xml,
// an alternative mechanism for retrieving the location of this file will
// be required.
- return readRegistryKey(SYMBIAN_SDKS_REG_HANDLE, SYMBIAN_SDKS_REG_SUBKEY);
+ return qt_readRegistryKey(SYMBIAN_SDKS_REG_HANDLE, QLatin1String(SYMBIAN_SDKS_REG_SUBKEY));
}
/**
* Checks whether epocRootValue points to an existent directory.
* If not, epocRootValue is set to an empty string and an error message is printed.
*/
-void checkEpocRootExists(const QString &source)
+static void checkEpocRootExists(const QString &source)
{
if (!epocRootValue.isEmpty()) {
QDir dir(epocRootValue);
if (!dir.exists()) {
- std::cerr << "Warning: " << source << " is set to an invalid path: " << epocRootValue << std::endl;
+ qWarning("Warning: %s is set to an invalid path: '%s'", qPrintable(source),
+ qPrintable(epocRootValue));
epocRootValue = QString();
}
}
@@ -103,32 +94,30 @@ void checkEpocRootExists(const QString &source)
*/
static void fixEpocRoot(QString &path)
{
- path.replace("\\", "/");
+ path.replace(QLatin1Char('\\'), QLatin1Char('/'));
- if (!path.size() || path[path.size()-1] != QChar('/')) {
- path += QChar('/');
+ if (!path.size() || path[path.size()-1] != QLatin1Char('/')) {
+ path += QLatin1Char('/');
}
}
/**
* Determine the epoc root for the currently active SDK.
*/
-QString epocRoot()
+QString qt_epocRoot()
{
if (epocRootValue.isEmpty()) {
// 1. If environment variable EPOCROOT is set and points to an existent
// directory, this is returned.
- epocRootValue = qgetenv("EPOCROOT");
- checkEpocRootExists("EPOCROOT");
+ epocRootValue = QString::fromLocal8Bit(qgetenv("EPOCROOT").constData());
+ checkEpocRootExists(QLatin1String("EPOCROOT environment variable"));
if (epocRootValue.isEmpty()) {
// 2. The location of devices.xml is specified by a registry key. If this
// file exists, it is parsed.
QString devicesXmlPath = getDevicesXmlPath();
- if (devicesXmlPath.isEmpty()) {
- std::cerr << "Error: Symbian SDK registry key not found" << std::endl;
- } else {
- devicesXmlPath += "/devices.xml";
+ if (!devicesXmlPath.isEmpty()) {
+ devicesXmlPath += QLatin1String("/devices.xml");
QFile devicesFile(devicesXmlPath);
if (devicesFile.open(QIODevice::ReadOnly)) {
@@ -138,87 +127,90 @@ QString epocRoot()
// 4. If a device element marked as default is found in devices.xml and its
// epocroot value points to an existent directory, this is returned.
- const QString epocDeviceValue = qgetenv("EPOCDEVICE");
+ const QString epocDeviceValue = QString::fromLocal8Bit(qgetenv("EPOCDEVICE").constData());
bool epocDeviceFound = false;
QXmlStreamReader xml(&devicesFile);
while (!xml.atEnd()) {
xml.readNext();
- if (xml.isStartElement() && xml.name() == "devices") {
- if (xml.attributes().value("version") == "1.0") {
- while (!(xml.isEndElement() && xml.name() == "devices") && !xml.atEnd()) {
+ if (xml.isStartElement() && xml.name() == QLatin1String("devices")) {
+ if (xml.attributes().value(QLatin1String("version")) == QLatin1String("1.0")) {
+ while (!(xml.isEndElement() && xml.name() == QLatin1String("devices")) && !xml.atEnd()) {
xml.readNext();
- if (xml.isStartElement() && xml.name() == "device") {
- const bool isDefault = xml.attributes().value("default") == "yes";
- const QString id = xml.attributes().value("id").toString();
- const QString name = xml.attributes().value("name").toString();
- const QString alias = xml.attributes().value("alias").toString();
- bool epocDeviceMatch = (id + ":" + name) == epocDeviceValue;
+ if (xml.isStartElement() && xml.name() == QLatin1String("device")) {
+ const bool isDefault = xml.attributes().value(QLatin1String("default")) == QLatin1String("yes");
+ const QString id = xml.attributes().value(QLatin1String("id")).toString();
+ const QString name = xml.attributes().value(QLatin1String("name")).toString();
+ const QString alias = xml.attributes().value(QLatin1String("alias")).toString();
+ bool epocDeviceMatch = QString(id + QLatin1String(":") + name) == epocDeviceValue;
if (!alias.isEmpty())
epocDeviceMatch |= alias == epocDeviceValue;
epocDeviceFound |= epocDeviceMatch;
if((epocDeviceValue.isEmpty() && isDefault) || epocDeviceMatch) {
// Found a matching device
- while (!(xml.isEndElement() && xml.name() == "device") && !xml.atEnd()) {
+ while (!(xml.isEndElement() && xml.name() == QLatin1String("device")) && !xml.atEnd()) {
xml.readNext();
- if (xml.isStartElement() && xml.name() == "epocroot") {
+ if (xml.isStartElement() && xml.name() == QLatin1String("epocroot")) {
epocRootValue = xml.readElementText();
const QString deviceSource = epocDeviceValue.isEmpty()
- ? "default device"
- : "EPOCDEVICE (" + epocDeviceValue + ")";
+ ? QLatin1String("default device")
+ : QString(QLatin1String("EPOCDEVICE (") + epocDeviceValue + QLatin1String(")"));
checkEpocRootExists(deviceSource);
}
}
if (epocRootValue.isEmpty())
- xml.raiseError("No epocroot element found");
+ xml.raiseError(QLatin1String("No epocroot element found"));
}
}
}
} else {
- xml.raiseError("Invalid 'devices' element version");
+ xml.raiseError(QLatin1String("Invalid 'devices' element version"));
}
}
}
if (xml.hasError()) {
- std::cerr << "Error: \"" << xml.errorString() << "\" when parsing devices.xml" << std::endl;
+ qWarning("Warning: Error \"%s\" when parsing devices.xml",
+ qPrintable(xml.errorString()));
} else {
if (epocRootValue.isEmpty()) {
if (!epocDeviceValue.isEmpty()) {
if (epocDeviceFound) {
- std::cerr << "Error: missing or invalid epocroot attribute "
- << "in device '" << epocDeviceValue << "'";
+ qWarning("Warning: Missing or invalid epocroot attribute in device '%s' in devices.xml.",
+ qPrintable(epocDeviceValue));
} else {
- std::cerr << "Error: no device matching EPOCDEVICE ("
- << epocDeviceValue << ")";
+ qWarning("Warning: No device matching EPOCDEVICE (%s) in devices.xml.",
+ qPrintable(epocDeviceValue));
}
} else {
if (epocDeviceFound) {
- std::cerr << "Error: missing or invalid epocroot attribute "
- << "in default device";
+ qWarning("Warning: Missing or invalid epocroot attribute in default device in devices.xml.");
} else {
- std::cerr << "Error: no default device";
+ qWarning("Warning: No default device set in devices.xml.");
}
}
- std::cerr << " found in devices.xml file." << std::endl;
}
}
} else {
- std::cerr << "Error: could not open file " << devicesXmlPath << std::endl;
+ qWarning("Warning: Could not open file: '%s'.", qPrintable(devicesXmlPath));
}
}
}
if (epocRootValue.isEmpty()) {
// 5. An empty string is returned.
- std::cerr << "Error: failed to find epoc root" << std::endl
- << "Either" << std::endl
- << " 1. Set EPOCROOT environment variable to a valid value" << std::endl
- << " or 2. Ensure that the HKEY_LOCAL_MACHINE\\" SYMBIAN_SDKS_REG_SUBKEY
- " registry key is set, and then" << std::endl
- << " a. Set EPOCDEVICE environment variable to a valid device" << std::endl
- << " or b. Specify a default device in the devices.xml file." << std::endl;
+ qWarning("Warning: failed to resolve epocroot."
+#ifdef Q_OS_WIN32
+ "\nEither\n"
+ " 1. Set EPOCROOT environment variable to a valid value.\n"
+ " or 2. Ensure that the HKEY_LOCAL_MACHINE\\" SYMBIAN_SDKS_REG_SUBKEY
+ " registry key is set, and then\n"
+ " a. Set EPOCDEVICE environment variable to a valid device\n"
+ " or b. Specify a default device in the devices.xml file.");
+#else
+ " Set EPOCROOT environment variable to a valid value.");
+#endif
} else {
fixEpocRoot(epocRootValue);
}
@@ -227,3 +219,4 @@ QString epocRoot()
return epocRootValue;
}
+QT_END_NAMESPACE
diff --git a/tools/shared/symbian/epocroot.pri b/tools/shared/symbian/epocroot.pri
new file mode 100644
index 0000000000..f0f0dab535
--- /dev/null
+++ b/tools/shared/symbian/epocroot.pri
@@ -0,0 +1,11 @@
+# Epocroot resolving is only required for tools, so omit it from all mobile/embedded builds
+!symbian:!wince*:!embedded {
+HEADERS += \
+ $$QT_SOURCE_TREE/tools/shared/symbian/epocroot_p.h \
+ $$QT_SOURCE_TREE/tools/shared/windows/registry_p.h
+SOURCES += \
+ $$QT_SOURCE_TREE/tools/shared/symbian/epocroot.cpp \
+ $$QT_SOURCE_TREE/tools/shared/windows/registry.cpp
+INCLUDEPATH += $$QT_SOURCE_TREE/tools/shared
+DEFINES += QLIBRARYINFO_EPOCROOT
+}
diff --git a/tools/shared/symbian/epocroot.h b/tools/shared/symbian/epocroot_p.h
index 9846485aab..c97b5938b6 100644
--- a/tools/shared/symbian/epocroot.h
+++ b/tools/shared/symbian/epocroot_p.h
@@ -39,11 +39,24 @@
**
****************************************************************************/
-#ifndef SYMBIAN_EPOCROOT_H
-#define SYMBIAN_EPOCROOT_H
+#ifndef QT_SYMBIAN_EPOCROOT_H
+#define QT_SYMBIAN_EPOCROOT_H
+
+//
+// W A R N I N G
+// -------------
+//
+// This file is not part of the Qt API. It exists purely as an
+// implementation detail. This header file may change from version to
+// version without notice, or even be removed.
+//
+// We mean it.
+//
#include <QtCore/qstring.h>
+QT_BEGIN_NAMESPACE
+
/**
* Determine the epoc root for the currently active SDK.
*
@@ -62,6 +75,9 @@
* Any return value other than the empty string therefore is guaranteed to
* point to an existent directory.
*/
-QString epocRoot();
+QString qt_epocRoot();
+
+QT_END_NAMESPACE
+
+#endif // QT_SYMBIAN_EPOCROOT_H
-#endif // EPOCROOT_H
diff --git a/tools/shared/windows/registry.cpp b/tools/shared/windows/registry.cpp
index 67d9b563cb..f520910377 100644
--- a/tools/shared/windows/registry.cpp
+++ b/tools/shared/windows/registry.cpp
@@ -40,8 +40,11 @@
****************************************************************************/
#include <QtCore/qstringlist.h>
-#include "registry.h"
+#include "registry_p.h"
+QT_BEGIN_NAMESPACE
+
+#ifdef Q_OS_WIN32
/*!
Returns the path part of a registry key.
e.g.
@@ -73,12 +76,13 @@ static QString keyName(const QString &rKey)
return rKey;
QString res(rKey.mid(idx + 1));
- if (res == "Default" || res == ".")
- res = "";
+ if (res == QLatin1String("Default") || res == QLatin1String("."))
+ res = QString();
return res;
}
+#endif
-QString readRegistryKey(HKEY parentHandle, const QString &rSubkey)
+QString qt_readRegistryKey(HKEY parentHandle, const QString &rSubkey)
{
QString result;
@@ -128,7 +132,7 @@ QString readRegistryKey(HKEY parentHandle, const QString &rSubkey)
break;
l.append(s);
}
- result = l.join(", ");
+ result = l.join(QLatin1String(", "));
break;
}
@@ -153,9 +157,13 @@ QString readRegistryKey(HKEY parentHandle, const QString &rSubkey)
}
RegCloseKey(handle);
+#else
+ Q_UNUSED(parentHandle);
+ Q_UNUSED(rSubkey)
#endif
return result;
}
+QT_END_NAMESPACE
diff --git a/tools/shared/windows/registry.h b/tools/shared/windows/registry_p.h
index 3896527cb2..4aae5f93e3 100644
--- a/tools/shared/windows/registry.h
+++ b/tools/shared/windows/registry_p.h
@@ -39,8 +39,21 @@
**
****************************************************************************/
-#ifndef WINDOWS_REGISTRY_H
-#define WINDOWS_REGISTRY_H
+#ifndef QT_WINDOWS_REGISTRY_H
+#define QT_WINDOWS_REGISTRY_H
+
+//
+// W A R N I N G
+// -------------
+//
+// This file is not part of the Qt API. It exists purely as an
+// implementation detail. This header file may change from version to
+// version without notice, or even be removed.
+//
+// We mean it.
+//
+
+QT_BEGIN_NAMESPACE
#include <QtCore/qglobal.h>
@@ -59,6 +72,9 @@
* if this code is compiled for a platform other than Windows), a null
* string is returned.
*/
-QString readRegistryKey(HKEY parentHandle, const QString &rSubkey);
+QString qt_readRegistryKey(HKEY parentHandle, const QString &rSubkey);
+
+QT_END_NAMESPACE
+
+#endif // QT_WINDOWS_REGISTRY_H
-#endif // WINDOWS_REGISTRY_H