aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto/controls/data/tst_stackview.qml
Commit message (Collapse)AuthorAgeFilesLines
* Update license headers to silence qtqa/tst_license warningsJ-P Nurmi2017-02-241-9/+19
| | | | | | | | | | Sync with the qtbase/header.XXX. The license headers were matching qtbase/header.XXX-OLD, which makes qtqa/tst_license flood warnings: Old license being used for foo.qdoc Change-Id: I199bf303a2d648e0d5f7bc01cb0814a5f945eeff Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* QQuickStackView: fix pop/replace exit leakJ-P Nurmi2017-02-241-2/+0
| | | | | | | | | | | | | | QQuickStackView did not keep track of the element that was exiting the view during a pop/replace exit transition, but it was expecting viewItemTransitionFinished() to be called and cleaned up the element there. If a pop/replace exit transition was running at the destruction time, QQuickStackView did not clean up the element at all (because it had been already removed from the internal stack of elements) and thus the transition was left running. Task-number: QTBUG-59034 Change-Id: I3cd7c761fab79574b9a7cc849788f36765def45b Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Prevent StackView filtering of UngrabMouse eventMichael Dippold2017-02-231-0/+20
| | | | | | | | | | | Currently the StackView is filtering the UngrabMouse event during transitions. If a MouseArea is still in the pressed state during this time it will forever be in the pressed state as the ungrab event is filtered. Task-number: QTBUG-59098 Change-Id: I7effdad6a36b64336b4770a1dca61ba47998b787 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Attempt to stabilize StackView::test_statusMitch Curtis2017-02-211-0/+2
| | | | | | | Task-number: QTBUG-59034 Change-Id: I736bd57ba18b3a8d8c4550e89aba462e559597a6 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* tst_stackview: use TestCase's new createTemporaryObject functionsMitch Curtis2017-01-241-73/+27
| | | | | | | | This ensures that the appropriate objects are destroyed at the end of each test function, even if the test fails. Change-Id: I2e29bdcb7099875b3b746f930e94107c46e0a2e5 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* tst_controls: update import versions for controls and templatesJ-P Nurmi2017-01-121-1/+1
| | | | | Change-Id: I104bc44c361351719449cab94dcb14c96e91e32f Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Add attached StackView.visible propertyJ-P Nurmi2017-01-121-0/+53
| | | | | | | | | | [ChangeLog][Controls][StackView] Added attached StackView.visible property that can be used to control whether items below the top- most item are kept visible. Task-number: QTBUG-56801 Change-Id: Ieead0d476f254886cff5f8457bb5c5d23cb7de8a Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Welcome to 2017J-P Nurmi2017-01-091-1/+1
| | | | | Change-Id: If68cff4efacc7dc5719c8b8e61937e85e9076870 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* StackView: don’t push duplicate itemsMitch Curtis2016-12-061-3/+31
| | | | | | | | It doesn’t make sense to do this. Task-number: QTBUG-57266 Change-Id: I23f740356f2727a59aa0a68cb57d2c44edfb6046 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Merge remote-tracking branch 'origin/5.7' into 5.8J-P Nurmi2016-10-071-6/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/imports/controls/doc/snippets/screenshots/qtquickcontrols2-progressbar-disabled.qml src/imports/controls/doc/snippets/screenshots/qtquickcontrols2-progressbar-normal.qml src/imports/controls/doc/snippets/screenshots/qtquickcontrols2-radiobutton-checked.qml src/imports/controls/doc/snippets/screenshots/qtquickcontrols2-radiobutton-disabled.qml src/imports/controls/doc/snippets/screenshots/qtquickcontrols2-radiobutton-focused.qml src/imports/controls/doc/snippets/screenshots/qtquickcontrols2-radiobutton-normal.qml src/imports/controls/doc/snippets/screenshots/qtquickcontrols2-rangeslider-disabled.qml src/imports/controls/doc/snippets/screenshots/qtquickcontrols2-rangeslider-first-handle-focused.qml src/imports/controls/doc/snippets/screenshots/qtquickcontrols2-rangeslider-normal.qml src/imports/controls/doc/snippets/screenshots/qtquickcontrols2-rangeslider-second-handle-focused.qml src/imports/controls/doc/snippets/screenshots/qtquickcontrols2-rangeslider-second-handle.qml src/imports/controls/doc/snippets/screenshots/qtquickcontrols2-slider-disabled.qml src/imports/controls/doc/snippets/screenshots/qtquickcontrols2-slider-focused.qml src/imports/controls/doc/snippets/screenshots/qtquickcontrols2-slider-normal.qml src/imports/controls/doc/snippets/screenshots/qtquickcontrols2-tabbar-explicit.qml src/quicktemplates2/qquickmenu.cpp tests/auto/controls/data/tst_buttongroup.qml tests/auto/controls/data/tst_swipedelegate.qml Change-Id: Ib6042a0ad716f557927e7412d17ea8957d06c015
| * auto tests: prefer creating signal spies locally where neededJ-P Nurmi2016-10-071-6/+6
| | | | | | | | | | | | | | | | | | | | | | It is tedious to always add new static SignalSpy instances for each tested signal. Just create signal spies locally in the same place where they are used. This makes it much more convenient to create more signal spies to achieve better coverage. This practice has been already used in newly written tests. Change-Id: I7f56c4b3cea0c55c34b85254f69a88ec73b8607f Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Merge remote-tracking branch 'origin/5.7' into 5.8J-P Nurmi2016-09-261-0/+18
|\| | | | | | | | | | | | | | | | | | | | | Conflicts: examples/quickcontrols2/gallery/gallery.qrc src/imports/controls/doc/src/qtquickcontrols2-styles.qdoc src/quicktemplates2/qquickstackview_p.cpp src/quicktemplates2/qquickstackview_p_p.h tests/auto/controls/data/tst_stackview.qml Change-Id: If451fe0e5653572d305b4de90a6d5cb878463e8d
| * Fix a crash in StackView::pop()J-P Nurmi2016-09-261-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If an item is still activating (from a previous pop) when it gets already popped out, we must not set the deactivating status before calling prepareTransition(). This method cancels and finishes the ongoing activation transition, and if the status says that the item was deactivating, the item gets destroyed in the middle of preparing for the deactivation transition. Let prepareTransition() cancel any ongoing transition first, and then set the status after the preparation. The cleanest way is to pass the target status to startTransition() and completeTransition(). Task-number: QTBUG-56158 Change-Id: Id52752200b650ea9f84659bbf43431f8a8b22f1e Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | StackView: add removed() attached signalMitch Curtis2016-09-021-0/+54
| | | | | | | | | | | | | | | | | | | | | | | | This provides an opportunity for users to destroy items that StackView doesn't, like objects that are pushed as Items. [ChangeLog][Controls][StackView] Added StackView.removed() attached signal to provide a way to delete items that StackView won't. Task-number: QTBUG-55405 Change-Id: I59096efaf1a95d36451fbf1f46b8f68ee96c20de Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | StackView: allow choosing which transition to runJ-P Nurmi2016-07-141-15/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is mostly useful for being able to use either push or pop transition for replace operations, but there doesn't seem to be any reason to limit the others. So, now it's able to run any of the push/pop/replace transitions (or none with "immediate") for any push/pop/replace operation. [ChangeLog][StackView] Made it possible to choose the visual transition type for any operation. This allows using for example push and pop transitions with replace(), which allows implementing an "infinite" back and forward navigation pattern while keeping the amount of instantiated items constant. Change-Id: I93b87cf854c3d6e2f33ef73ef25ffb3456ec27f4 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Bump up all controls and templates imports to version 2.1J-P Nurmi2016-07-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Controls must import templates version 2.1 in order to "inherit" 1-revisioned properties, methods, and signals. So far, this has been done case by case, but it's less error prone and more clear to change them all. For example, if you ever see a source file pasted/linked somewhere, it's easy to identify the version it belongs to. Change-Id: I41609ec1a22bc05ac3e79f953a147ca42d9e0786 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Merge remote-tracking branch 'origin/5.7' into devJ-P Nurmi2016-06-201-0/+5
|\| | | | | | | | | | | | | Conflicts: src/quicktemplates2/qquickcontainer.cpp Change-Id: I7c41619a81b4fdd0d8ccaa4f0bb489a9b84e3865
| * StackView: Fix warning when popping down to the current itemKonstantin Ritt2016-06-161-0/+5
| | | | | | | | | | | | | | | | | | findElement() is unable to find currentItem cause the most top element has been popped just few lines above, leading to "pop: unknown argument: .." warning where it shouldn't really do. Change-Id: I90d4ea6acaf09b861af281d9c0e23bc42a6eb503 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | tst_stackview: update file error messageJ-P Nurmi2016-06-201-2/+2
| | | | | | | | | | | | | | The error message was changed in qtdeclarative commit 156d10e. Change-Id: Ie12cc3803a83961f59da6f9b72de445f9f436039 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | StackView: add attached activated() etc. signalsJ-P Nurmi2016-06-061-0/+61
|/ | | | | | | | | | | | For initializing and cleaning up item-specific resources, these are much more convenient than a StackView.onStatusChanged handler. [ChangeLog][StackView] Added attached activated(), deactivated(), activating(), and deactivating() signals that are convenient for initializing and cleaning up item-specific resources. Change-Id: If8df45b31a14cd2491db2c87eeb1c071af4e695f Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* StackView: reset size of the content without explicit one on pop()Nikita Krupenko2016-05-181-0/+21
| | | | | | | | | This allows for item to be properly risezed by StackView when it'd be pushed onto stack again. Task-number: QTBUG-53067 Change-Id: I911026022a987ed5632ae5411d63221d743a6aca Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* import Qt.labs.controls 1.0 => QtQuick.Controls 2.0J-P Nurmi2016-04-211-1/+1
| | | | | | | | | Docs, resources, .metainfo and plugins.qmltypes will be updated in follow up commits. Change-Id: I4438c5bfb8802bff0fa15c56431cfd288f179861 Task-number: QTBUG-52549 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* StackView: fix overly zealous child mouse event filterJ-P Nurmi2016-01-221-0/+39
| | | | | | | Change-Id: Ife8ec7e14f940068a809cdf7a715a1790cce3f66 Task-number: QTBUG-50305 Reviewed-by: Nikita Krupenko <krnekit@gmail.com> Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
* StackView: fix stack clear on replace of the topmost itemNikita Krupenko2016-01-041-0/+16
| | | | | | | | | | | | | | | On item replace, StackView pops the topmost item (to use in transition) and call QQuickStackViewPrivate::replaceElements(), which delete items until it find the target item. When replacing the topmost item, it just clear the whole stack, as the target item not in the stack already and it procced to the bottom of the stack. This commit changes StackView to use pushElements() for replacing the topmost item, as there is nothing to replace. Task-number: QTBUG-50274 Change-Id: Iff2e1177ee2f8b2d4518b519b450ae4e89a4c963 Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
* StackView: print better error messagesJ-P Nurmi2015-12-161-2/+6
| | | | | | | | | "QQmlComponent: Component is not ready" alone is not too descriptive. Now StackView prints also the actual error string from QQmlComponent. Change-Id: I3d8a379f0565d1cc0f66e622c93de2a2dec87bcb Task-number: QTBUG-49957 Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
* StackView: fix property initializationJ-P Nurmi2015-12-091-0/+19
| | | | | | | | | | | When pushing a url or component, ensure that properties passed to push() are initialized during the incubation. When pushing an item, the properties are set the same way than before, at stack element initialization phase. Change-Id: I19ca10baae43857e1349486059a3317d68d3b2d4 Reviewed-by: Liang Qi <liang.qi@theqtcompany.com> Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
* StackView: fix crash when attempting to transition null itemsJ-P Nurmi2015-12-041-0/+13
| | | | | | | | Don't attempt to kick off view transitions for stack elements that have failed to load. Change-Id: I6e42785a30abc815d14a07e7d16aad5bde66391d Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
* Fix StackView::busy and child event filteringJ-P Nurmi2015-11-021-0/+154
| | | | | | | | | | | 1) renamed busy() to isBusy() to follow the Qt convention :) 2) fixed spurious busyChanged() emissions (it was always emitted on push/replace/pop even when the state didn't change (null transitions) 3) with null transitions, the child event filter was never turned off and therefore StackView "froze" after the first push/replace/pop Change-Id: I07fffa73db5a182865c7b2779641e1f95ed8b30b Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
* StackView: add dedicated replace transitionsJ-P Nurmi2015-10-231-0/+15
| | | | | | Change-Id: I614d11bb566c96166ebf8bc0d2f5d4286d823a5f Reviewed-by: Kai Uwe Broulik <kde@privat.broulik.de> Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
* Fix StackView attached propertyJ-P Nurmi2015-10-111-0/+35
| | | | | | | | | The attached properties weren't initialized at all for the initial item. Furthermore, the properties were initialized lazily, which made them work for imperative tests, but not correctly in bindings. Change-Id: I783c406dcf4e1cf27a6b4e6ddd43214cb06a3c7a Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
* Attached properties are now available using the QML composite type nameJ-P Nurmi2015-10-091-32/+31
| | | | | | Change-Id: I8cfbd420cea4e01528d2f289cfc5989268d8718a Task-number: QTBUG-43581 Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
* Rename QtQuick.Controls 2.0 to Qt.labs.controls 1.0J-P Nurmi2015-10-011-1/+1
| | | | | Change-Id: I142622dd85e95ef70b11132e77ccf48701f2cabc Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
* Rename QtQuick.Templates 2.0 to Qt.labs.templates 1.0J-P Nurmi2015-10-011-1/+1
| | | | | | Change-Id: I3263a600065dfa2bfe7334ec44a74e2dca83aa36 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com> Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
* Enums are now available using the QML composite type nameJ-P Nurmi2015-09-231-64/+64
| | | | | | | Change-Id: I90cf20d57ee433c1c9319c7a947ac91558775bb7 Task-number: QTBUG-43582 Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com> Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
* Use QtQuick.TemplatesJ-P Nurmi2015-09-091-84/+85
| | | | | Change-Id: I3d1822457efd740e7c9d91747e978d787c0dd4b8 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com>
* tst_StackView: verify created control instancesJ-P Nurmi2015-08-311-0/+17
| | | | | | | ...like in all other tests. Change-Id: Ia713226f535bca3b6ab731d9441bb5d1b7f9c6f2 Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
* StackView: fix ownership issuesJ-P Nurmi2015-08-281-0/+48
| | | | | | | | | | | | | | | | | | | QTBUG-47317 revealed that dynamically created items remained visible after popping, so they were not only kept visible but also weren't properly destroyed. The visibility issue had to be fixed so that "indestructible" (not owned by StackView) were hid. This change tackles the destruction part, and marks pop-exit items for removal so they get destroyed when transitions are finished. Now that the transitionable items are actually destroyed, a new problem was releaved. We must not delete transitionable items until both enter & exit transitions have been finished. If we did that, the finished() callback would not get called for the pop-exit transition and tst_StackView::test_transitions() would fail (yay). Change-Id: Ie2eedf99d0366820260776591ad1f8b5b68e2ec3 Task-number: QTBUG-47317 Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
* StackView: fix transitionsJ-P Nurmi2015-08-271-0/+47
| | | | | | | | | | | Passing null view bounds for the transitionable exit item helps to kick off the transition as appropriate. Otherwise the view transition item determines in QQuickItemViewTransitionableItem::prepareTransition() that no transition is necessary. Change-Id: Icb664725c4393ef3bb894b71a5912652f82c9da0 Task-number: QTBUG-47949 Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
* Fix StackView: pushed items still showed up after being poppedJ-P Nurmi2015-08-271-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | This is a partial revert of 6ee9612. The idea was to keep items visible until both transitions had finished. StackView { pushExit: null pushEnter: Transition { ... } } When both transitions had finished, all stack elements (except the current one) were hid. The problem was that in pop & replace operations the exiting item was no longer part of the stack (because it had been already popped out) and therefore was never hid. This change restores the original (intended) behavior that a null transition would equal to an immediate operation. This keeps the code simpler, and makes the behavior consistent in a sense that all items are hidden as soon the respective transition finishes. PauseAnimation can be used to wait if desired. Change-Id: Ia9e78506754bdc18949676f061dbfff28a7128b7 Task-number: QTBUG-47317 Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
* tst_stackview: ignore warningsJ-P Nurmi2015-07-081-5/+10
| | | | | Change-Id: I6fb8e1b238a087f8775df87e63ffa515b626226d Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
* Add missing StackView::view attached propertyJ-P Nurmi2015-06-301-0/+21
| | | | | Change-Id: Ie2e5e09e906b2886525a986bccbd1b2722a0a795 Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
* Cleanup & improve auto testsJ-P Nurmi2015-06-291-18/+11
| | | | | | | | | - always verify component creation to catch errors early - remove empty init() and cleanup() functions - remove redundant "defaults" checks Change-Id: I39f16404fa2e3d3e38348742afd8f51ea36b2f05 Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
* Implement StackView in C++J-P Nurmi2015-04-091-66/+164
| | | | | Change-Id: Ia5387aa16325453c676a2542f80c827d4c069ca9 Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
* BSD license for QML code in testsJ-P Nurmi2015-03-041-22/+26
| | | | | Change-Id: Ia1556502ece0bc385375e61653169bdc855f592e Reviewed-by: Jari-Pekka Nurmi <jpnurmi@theqtcompany.com>
* Import the Qt Quick Controls 2 prototypeJ-P Nurmi2015-02-051-0/+284
Change-Id: Ib8c0c4160958e5cfea29a6e9df1b3f1fb19715fc Reviewed-by: Jari-Pekka Nurmi <jpnurmi@theqtcompany.com>