aboutsummaryrefslogtreecommitdiffstats
path: root/tests
Commit message (Collapse)AuthorAgeFilesLines
* testbench: add MenuBarJ-P Nurmi2017-09-272-0/+80
| | | | | Change-Id: I51adbdce78e535294faac33ba73a99149ef63f19 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* testbench: allow focus in delegatesJ-P Nurmi2017-09-275-0/+10
| | | | | | | | QQuickItemDelegate sets Qt.NoFocus by default, but in testbench it's useful to be able see keyboard focus. Change-Id: I7a33cd5087279d111831d489cab1be8d93b60ec7 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* testbench: fix Switch labelJ-P Nurmi2017-09-271-1/+1
| | | | | Change-Id: I12fac13118cf27d7ed391df33a5a0a551a8764ef Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* testbench: move the scrollbar on the window edgeJ-P Nurmi2017-09-261-1/+6
| | | | | Change-Id: I52af7be7cbd838108cd9e18366afea90e26387a3 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* testbench: make the search case-insensitiveJ-P Nurmi2017-09-261-1/+2
| | | | | Change-Id: Ib14404986acd377ad00f19d8b7ec719dd0deeb16 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* testbench: ensure that assets are reloaded properlyMitch Curtis2017-09-262-6/+22
| | | | | | | | Clear the view's model, otherwise it will keep the old items around with the old assets, even after clearing the pixmap cache. Change-Id: If27400c0940448b337d1a4cd3ce0d6c99e2d9ddd Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* testbench: add modal and dim states for DialogMitch Curtis2017-09-261-1/+5
| | | | | Change-Id: Ic7ed3b9712bb0e0e3e3eaa74ab10877b9ed86069 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Replace testbench with newer "style testbench"Mitch Curtis2017-09-2553-940/+4970
| | | | | | | | | | | | The style testbench was developed to provide a way for designers to test out their Imagine style assets, but since it is now more feature-rich than the old testbench, it seems like a good idea to replace it. The tool is described in README.md. Change-Id: I9abec1bc294fd176e2255e067af280b378961551 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Fix tst_paletteJ-P Nurmi2017-09-221-2/+18
| | | | | | | | | | | | | The Default is being ported to use palettes. tst_palette starts failing as soon as QQuickDefaultTheme::palette() returns a custom palette, because the expected palette in tst_palette's comparison was the default platform palette, not the default style palette. First of all, the expected palette was constructed before any QtQuick Controls were imported. Secondly, it was not queried from the platform theme as appropriate. Change-Id: Ia28872fb2769c6cd5ff0159077769951def17f43 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Imagine: fix QRC pathsMitch Curtis2017-09-146-0/+154
| | | | | | | | | | | | | | | | | | | | | Using ApplicationWindow as an example, its NinePatchImage url is assigned like so: source: Imagine.path + "applicationwindow-background" If Imagine.path is set to ":/images" by the user, then the final URL would be: QUrl("file:///home/user/qt/qtbase/qml/QtQuick/Controls.2/Imagine/:/images/applicationwindow-background") We could use a QUrl for QQuickImagineStyle::path, but we don't want to support anything other than local paths. Instead, we add a private "url" property that returns a URL that we construct correctly in C++ ourselves, and then the Imagine QML controls files use that property. Change-Id: Ic4d1910bbc7f7b6f80f257496ae6131777a19401 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* QQuickComboBox: fix attached Keys signal handlers when editableJ-P Nurmi2017-09-111-1/+0
| | | | | | Task-number: QTBUG-61135 Change-Id: I3f00cb81eeacbbddecc04d206bf13e602de15af7 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Extend tst_paletteJ-P Nurmi2017-09-112-0/+123
| | | | | | | | | | The inheritance issue was first fixed for fonts in 5.9 (d3aef72) and then the merge commit (c32c776) fixed it for palettes too. This patch just adds the respective test case for palettes. Task-number: QTBUG-63119 Change-Id: I21d18f140878a72ee889d868c79b4694ab28431c Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Merge remote-tracking branch 'origin/5.9' into 5.10J-P Nurmi2017-09-115-0/+228
|\ | | | | | | | | | | | | | | | | Conflicts: src/quicktemplates2/qquicklabel.cpp src/quicktemplates2/qquicktextarea.cpp src/quicktemplates2/qquicktextfield.cpp Change-Id: Ibbf6bc48972f58fbc6779a87ac9e2434c56c4db8
| * Fix font inheritanceJ-P Nurmi2017-09-112-0/+123
| | | | | | | | | | | | | | | | | | | | In item views, it can happen during incubation that a control doesn't yet have a window associated when the parent item changes. Therefore we must make sure to resolve the font when the window changes. Task-number: QTBUG-63119 Change-Id: I890f70ae6faa232dcc2c094ccec02e76b371d2cb Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * Fix non-modal drawer drag/swipe open and closeMichal Policht2017-09-061-0/+83
| | | | | | | | | | | | | | | | | | | | Function QQuickPopupPrivate::blockInput() has been overridden in QQuickDrawerPrivate to accept events that occur while mouse/touch is grabbed and events within drag area. Task-number: QTBUG-59652 Change-Id: Icf4129e702a351b266ea9c4544830185c315fc37 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
| * QQuickSpinBox: fix initial value validationJ-P Nurmi2017-08-291-0/+6
| | | | | | | | | | | | Task-number: QTBUG-62508 Change-Id: I8981968c02b65d4b005eb9b54b0228fd51a3abda Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * Fix a crash with ScrollView + TextAreaJ-P Nurmi2017-08-291-0/+16
| | | | | | | | | | | | | | | | | | TextArea was not cleaning up its geometry change listener on the Flickable it was attached to. Task-number: QTBUG-62292 Change-Id: I31223d4fcf0b46235b18e8eb05bab686a32f5481 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Update benchmarks for the new stylesJ-P Nurmi2017-09-114-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fusion was missing from tst_creationtime, and Imagine was missing from tst_objectcount. Furthermore, they were both missing from the list of dependencies declared in data/dependencies.qml, which is necessary in static builds and also expected to help with a random failure spotted in the CI logs: QWARN : tst_ObjectCount::qobjects(fusion/ApplicationWindow.qml) QQmlComponent: Component is not ready FAIL! : tst_ObjectCount::qobjects(fusion/ApplicationWindow.qml) 'object.data()' returned FALSE. (file:///C:/Users/qt/work/install/qml/QtQuick/Controls.2/Fusion/ApplicationWindow.qml:40 module "QtQuick.Controls.Fusion" version 2.3 is not installed) tst_objectcount.cpp(141) : failure location Change-Id: Ibb85b3024f1bb9d1e2a9654aeba39adb378fdec6 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | benchmarks: avoid "Empty filename passed to function" warningsJ-P Nurmi2017-09-072-6/+12
| | | | | | | | | | | | | | | | Add isEmpty() checks to avoid annoying warnings from QFileSystemEngine for Unix. Change-Id: I20b4f07605692271468dfc26b3c968406323de98 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | tst_creationtime: exclude ApplicationWindowJ-P Nurmi2017-09-071-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | Creating huge amounts of Q(Quick)Window instances puts an unreasonable stress on the system and we start facing issues such as that OpenGL context creation starts failing and things explode: qt.scenegraph.renderloop QSGGuiThreadRenderLoop::windowDestroyed - cleanup without an OpenGL context Change-Id: Iaf4725633af5def7fbb2df1f12ff61e4b543e5e2 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Bump QtQuick 2.9 imports to 2.10Mitch Curtis2017-09-0654-55/+55
| | | | | | | | | | Change-Id: I274146911cd8a204fcbf439da9259b0a38c8092e Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | Merge "Merge remote-tracking branch 'origin/5.10' into dev" into ↵J-P Nurmi2017-09-011-1/+15
|\ \ | | | | | | | | | refs/staging/dev
| * \ Merge remote-tracking branch 'origin/5.10' into devJ-P Nurmi2017-09-011-1/+15
| |\ \ | | | | | | | | | | | | Change-Id: I581d64b0c3fbf98750756c9386c6166051834252
| | * | Fix accessibility-related performance regressionsJ-P Nurmi2017-08-311-1/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before 089dd16f, we had a QQuickControlPrivate::accessibleAttached member that indicated whether accessibility was active. Since 4be38ab in qtdeclarative, it was possible to access QQuickAccessibleAttached:: attachedProperties() directly, but we ended up accidentally accessing it even when accessibility was not active, which added noticeable overhead. This improves those qmlbench test cases that call accessibility-aware setters such as QQuickAbstractButton::setChecked() a lot. For example, the test cases for CheckBox and RadioButton create large amounts of controls with a "checked: index % 2" binding. - CheckBox: 84 => 93 frames - RadioButton: 98 => 113 frames QAccessible::setActive(true) only notifies the observers, but does not really make accessibility active in the sense that the consequent calls to QAccessible::isActive() still return false. tst_accessible had to be changed to use QPlatformAccessible::setActive() instead. Change-Id: I8fd0fe2dddfd5633ce22a080bcda459f2d6e443e Reviewed-by: Liang Qi <liang.qi@qt.io>
* | | | tst_combobox: remove bogus mouse highlight checksJ-P Nurmi2017-09-011-12/+0
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ComboBox gained mouse hover support in Qt 5.9. The highlighted() signal is now emitted during the test, because 4c46dce8f in qtdeclarative made QuickTest use QTest::mouseXxx(), which in turn calls the window system interface to deliver mouse events, and consequently, items in the combo box receive hover events. Before, QuickTest was sending mouse events directly, so there were no hover events involved. There is a separate test_mouseHighlight() function for the mouse highlighting functionality, so these tests can be simply removed. Task-number: QTBUG-62926 Change-Id: I7e5e0df993a9c2f78bae641bdfa9189f3cd0cc67 Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* / / Add ApplicationWindow::menuBarJ-P Nurmi2017-08-312-1/+15
|/ / | | | | | | | | | | | | A follow-up commit to 66faa149. Change-Id: I94c92752d54ae0ca4878da72915b3d83461a4124 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | SwipeDelegate: grab the mouse when accepting a press eventShawn Rutledge2017-08-255-100/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After 1f4bfc099b7e48e2cc3dd9488b7b42a96122b299 in qtdeclarative, QQuickWindow does not cause the Item to which it's about to attempt to deliver an event to pre-grab. (That caused a lot of thrashing of the grabber, so not doing that is a nice simplification, and also avoids the need to ungrab later, and also makes mouse event handling more like touch event handling.) So whenever SwipeDelegate knows at the time of mouse press that it wants to see the release too, it should grab. The grabber can be either the Item for which it's filtering events, or the SwipeDelegate itself, whichever is more appropriate in any given scenario. For now I assume it should be the delivery-target Item, because that's what would have had the grab before. Task-number: QTBUG-62412 Task-number: QTBUG-62631 Change-Id: Ie01276508c6602b10f9d7996a748ffe90efa36b5 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* | Blacklist tst_popup temporarilyFrederik Gladhorn2017-08-231-0/+10
| | | | | | | | | | | | | | | | We need to get the 5.10 alpha out and know that there are issues with the pointer handlers. Let's fix them while letting everyone else progress. Change-Id: I3624a7548d9a4fd00b8ef473d2b7a64302552cbe Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | tst_Drawer: blacklist several test functionsLiang Qi2017-08-221-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | This test started failing after the recent wip/pointerhandler to dev merge in declarative. Until a fix can be found, we'll blacklist the test so that integration isn't blocked. The issue will need to be fixed before the release. Task-number: QTBUG-62628 Change-Id: I1be77c6b2080f388ecd36aeb502e36e448c5ad62 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Fix tests for boot2qtSami Nurmenniemi2017-08-227-6/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The tests for boot2qt were disabled with commit 28063805bf22b77a93f22a4289ca8afa9f1cb201. The tests can be enabled since qtdeclarative now fallbacks to software renderer if OpenGL is not supported. Some tests involving mouse behavior and window grabbing need to be skipped on minimal/offscreen platforms. Task-number: QTBUG-60268 Change-Id: Ib468638df8d5001bf127dd17aee7dcfe38b11780 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | skip tst_dialog::reject() instead of blacklisting itMitch Curtis2017-08-226-20/+2
| | | | | | | | | | | | | | | | | | | | | | | | Running this test causes tests after it to fail, mainly those related to hover. Since we need to fix the root cause of the recent failures before the release, it shouldn’t matter too much that this test isn’t run for a bit. Task-number: QTBUG-62549 Change-Id: Id8fd00e9049890ae47504c3e4b4ea3dda8ac60ef Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | tst_dialog: blacklist test_reject()Mitch Curtis2017-08-195-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | This test started failing after the recent wip/pointerhandler to dev merge in declarative. Until a fix can be found, we'll blacklist the test so that integration isn't blocked. The issue will need to be fixed before the release. Task-number: QTBUG-62549 Change-Id: Ib72c39ca74c69cf33bd995f9572bf4a9a5b2f680 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | tst_swipedelegate: blacklist failing testsMitch Curtis2017-08-195-0/+100
| | | | | | | | | | | | | | | | | | | | | | | | Some tests started failing after the recent wip/pointerhandler to dev merge in declarative. Until a fix can be found, we'll blacklist the tests so that integration isn't blocked. The issues will need to be fixed before the release. Task-number: QTBUG-62412 Change-Id: Idfa887f979c946311136a4ee1438ee2921267214 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | Merge remote-tracking branch 'origin/5.9' into devLiang Qi2017-08-153-0/+127
|\| | | | | | | | | | | | | Conflicts: tests/auto/popup/tst_popup.cpp Change-Id: I32e6c6b646a00f8805cb82d181417db60a6fe6c8
| * StackView: Resolve relative urls in initialItemAlessandro Portale2017-08-071-0/+6
| | | | | | | | | | | | | | Check whether a URL is relative and try to resolve that. Change-Id: I6b0f7bca2011356aca5071d20dbd270eb5d115bf Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * Popups: take Window::contentOrientation into accountJ-P Nurmi2017-07-272-0/+108
| | | | | | | | | | | | Task-number: QTBUG-62158 Change-Id: I0bcf5b02da6a3500e4324462d5f1249a6178c9fd Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * Fix QQuickStackViewPrivate::viewItemTransitionFinished()J-P Nurmi2017-07-261-0/+13
| | | | | | | | | | | | | | | | | | | | | | ~QQuickStackElement() emits QQuickStackViewAttached::removed(), which may be used to modify the stack. Set the status first and make a copy of the destroyable stack elements to exclude any modifications that may happen during the loop. Task-number: QTBUG-62153 Change-Id: I144acd693519e637b78f9a2d910e83da8f2d779e Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Fix failing tests in tst_menu and tst_qquickmenubarMitch Curtis2017-08-096-11/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As mentioned in the bug report for the failing tst_qquickmenubar test, the window is sometimes opened at the bottom right corner of the screen on the Ubuntu CI machines. However, even after centering the window on the screen, the old setPos() call still caused the tests to fail. So, we position the cursor past a different corner of the window, which works.. though I don't know why. Task-number: QTBUG-62363 Task-number: QTBUG-62383 Change-Id: I3649230002eaac5a6391daff24427e6f9f58cfa5 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | Blacklist tst_menu::mouse on Ubuntu 16.04 CI machinesMitch Curtis2017-08-081-0/+5
| | | | | | | | | | | | | | Task-number: QTBUG-62383 Change-Id: Icabecdeebf1e00a5828dc16a091ca9503202bb1a Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | Blacklist qquickmenubar::mouse on Ubuntu 16.04 CI machinesMitch Curtis2017-08-071-0/+5
| | | | | | | | | | | | | | Task-number: QTBUG-62363 Change-Id: I325b567ed32d6d584d31466fa67479b253ca5a66 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | tst_switch: fix test_mouse/test_touch failuresMitch Curtis2017-08-021-4/+4
| | | | | | | | | | | | | | | | Use the correct coordinates for the middle of the switch. Task-number: QTBUG-62241 Change-Id: Ibb3f21d72731d0d1a227a0af98e537cc80536953 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* | Add Imagine styleJ-P Nurmi2017-07-3131-5/+354
| | | | | | | | | | | | | | | | | | | | | | | | | | The Imagine style is based on image assets. The style comes with a default set of images, but the images can be easily changed by providing a directory with images using a predefined naming convention. [ChangeLog][Controls] Added the Imagine style, which is based on image assets that can be provided using a predefined naming convention. Task-number: QTPM-517 Change-Id: I550d7dac9a9686d60bec15655ac92dea9f36149c Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Introduce MenuBarJ-P Nurmi2017-07-265-1/+738
| | | | | | | | | | | | | | | | | | | | | | | | | | | | MenuBar is an ordinary Item. It can be located basically anywhere, but the idea is to introduce a new ApplicationWindow::menuBar property in a follow-up commit. Currently the example snippets are using the header property. [ChangeLog][Controls][MenuBar] Introduced a MenuBar control. Task-number: QTBUG-60350 Change-Id: Ie66dc457a3d8edbe8362fab2a591dc49442c95e2 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | tst_popup::test_margins(): use T.PopupJ-P Nurmi2017-07-211-1/+1
| | | | | | | | | | | | | | | | The test assumes that the background doesn't have implicit size => doesn't pass with the Imagine style that uses an image element. Change-Id: Id40eb9b7093fdd6ef80c474c97a18d8cea27a493 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Auto tests: incorporate the QEvent::Leave trick to moveMouseAway()J-P Nurmi2017-07-212-6/+7
| | | | | | | | | | | | | | | | | | | | | | 6f1eba89 used QEvent::Leave to make QQuickWindow clear its last known mouse position, which ensures that QQuickWindow won't send unexpected hover events from flushFrameSynchronousEvents(). The same hover events are causing trouble in tst_qquickmenubar too, so incorporate the leave event trick to moveMouseAway() to benefit from it in other tests too. Change-Id: I25a285d008d1cb639c7be09d714e482d472b4e50 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Merge remote-tracking branch 'origin/5.9' into devJ-P Nurmi2017-07-212-0/+197
|\| | | | | | | Change-Id: Idb1895dae2870dbed860ba3106fe52b01d733504
| * QQuickDrawer: fix multi-touch leaking through modal overlayJ-P Nurmi2017-07-142-0/+197
| | | | | | | | | | | | | | | | | | | | The first touch point was blocked as appropriate, but the consequent touch points were leaking through to other popups below Drawers' modal overlay. Task-number: QTBUG-61581 Change-Id: I1c3e28e3d25b7489c4a9b684107fd1b5158e1674 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Fix tst_pageindicator::test_interactive()J-P Nurmi2017-07-211-1/+1
| | | | | | | | | | | | | | | | | | | | The Imagine style has to set top/left/right/bottom paddings separately. When the individual paddings are explicitly set, the generic padding property has no effect. Make the test set the required paddings so that it works also with the Imagine style. Change-Id: I8c4139917f397c8729817a54ad68c88d960dd479 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Fix tst_popup::test_size()J-P Nurmi2017-07-211-0/+4
| | | | | | | | | | | | | | The same fix we applied to tst_tabbar::test_layout() earlier. Change-Id: Id6d67aef66f01c14275c86dbd9ed0a7fa4244640 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Fix tst_tumblerJ-P Nurmi2017-07-201-1/+3
| | | | | | | | | | | | | | | | | | findView() was iterating recursively the children of the control's first child, but excluding the siblings. If the background item was the first child, the contentItem was ignored. Change-Id: I570361e65fc649234b25eb869c6533660a79a2c7 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>