aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto/controls
Commit message (Collapse)AuthorAgeFilesLines
* TextField: fix implicit sizeJ-P Nurmi2015-10-041-0/+10
| | | | | Change-Id: Iceaa5af83b2a9f0eb03829829fcfc4e4a6261100 Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
* Fix Slider position calculation to take paddings into accountJ-P Nurmi2015-10-031-0/+73
| | | | | | | | | When Slider had paddings set, the handle didn't follow the touch point / mouse cursor. The larger paddings were set, the more the handle was "off". Change-Id: I82d97092a2c3fc99cba108fe011a463a571e5507 Reviewed-by: Liang Qi <liang.qi@theqtcompany.com>
* Rename QtQuick.Controls 2.0 to Qt.labs.controls 1.0J-P Nurmi2015-10-0127-28/+28
| | | | | 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-016-6/+6
| | | | | | Change-Id: I3263a600065dfa2bfe7334ec44a74e2dca83aa36 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com> Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
* Add PageIndicator::interactiveJ-P Nurmi2015-09-301-0/+19
| | | | | Change-Id: Iecb6d855d1c7710901925097ad4e03006d58309c Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
* Remove ToggleButtonJ-P Nurmi2015-09-252-270/+0
| | | | | | | | We don't have a sensible design. It's better not to have it at all than to have a confusing tiny bit tweaked clone of Switch. Change-Id: Ib0eabd075590100e9e49846c7172909525b54a57 Reviewed-by: Liang Qi <liang.qi@theqtcompany.com>
* Templatize the former extrasJ-P Nurmi2015-09-232-13/+15
| | | | | Change-Id: Ief9ee07d1f5f6c80500bfa611bace860481e2a3f Reviewed-by: Liang Qi <liang.qi@theqtcompany.com>
* Doc: Replaced the module name qualifier used for QML docsVenugopal Shivashankar2015-09-231-3/+2
| | | | | | | | Also made changes to avoid qdoc warnings about qml snippets. Change-Id: Ide047fe7a4901fcf4b03efdccf457662e60585d2 Reviewed-by: Topi Reiniƶ <topi.reinio@digia.com> Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
* Enums are now available using the QML composite type nameJ-P Nurmi2015-09-232-66/+65
| | | | | | | Change-Id: I90cf20d57ee433c1c9319c7a947ac91558775bb7 Task-number: QTBUG-43582 Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com> Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
* Merge Qt Quick Extras into Qt Quick ControlsMitch Curtis2015-09-185-0/+1626
| | | | | | | | | | | | The original split existed because the public and enterprise controls were developed separately. Now that all controls are public and developed together, the split no longer makes sense and is difficult for users to understand. Change-Id: I00420f4d09f8c837232231d03fe818b7b3403fab Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com> Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
* Ensure press-and-hold event keeps selectionGabriel de Dietrich2015-09-153-90/+153
| | | | | | | | | | | | | | | | | | | | This concerns TextField and TextArea. It is an almost universal UX pattern on touch platforms where the user long presses to pop the context menu up. In many cases the context menu is used for copy and cut operations, which means that poping it up should keep the selection. The implementation works by not forwarding the initial mouse press event to the parent class until we're sure it's not going to be a long press. If the long press timer is cancelled for any reason, we will then send the delayed mouse press event to the parent class followed by whichever event triggered the cancellation. Auto-tests refactored and updated. Change-Id: If3aa8075f07a80929f4bd723895d9599bf8d169e Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
* Apply QQuickControl font behavior to QQuickLabelLiang Qi2015-09-141-0/+44
| | | | | | | In 0addfd5d, we missed QQuickLabel. Change-Id: Icc352f8db04b2b981d386513454650e376f0a955 Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
* Add ExclusiveGroup::checkablesJ-P Nurmi2015-09-101-4/+89
| | | | | | | | | | | | | | | | | | | | | | | | | | Exclusive checkables typically share the same parent item. For example, a row or column positioner or layout. This change makes it convenient to handle such cases so that one can add the whole list of children to an exclusive group, without the need of creating any attached objects. Column { id: column ExclusiveGroup { id: eg checkables: column.children } Switch { id: s1; text: qsTr("First") } Switch { id: s2; text: qsTr("Second") } Switch { id: s3; text: qsTr("Third") } } Last but not least, this allows breaking the C++ dependency between QQuickTabBar and QQuickExclusiveGroup. Change-Id: Ic75065b87ef8fa532f77118d740f04484994bbf0 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com>
* Add QQuickContainer::contentChildrenChanged() notifierJ-P Nurmi2015-09-091-0/+36
| | | | | | | Makes possible to bind contentChildren to ExclusiveGroup::checkables. Change-Id: Idf9afabb93f78b012d2ca5c77fe79f34bf76e584 Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
* Use QtQuick.TemplatesJ-P Nurmi2015-09-095-96/+101
| | | | | Change-Id: I3d1822457efd740e7c9d91747e978d787c0dd4b8 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com>
* QQuickControl: add font propertyLiang Qi2015-09-021-0/+250
| | | | | | | | | When the font of a QQuickControl subclass is set, it will propagate it to all children that are also derived from QQuickControl, as well as TextField and TextArea. Change-Id: I7c851f84b89609094d9a81d239ade0f0ac212985 Reviewed-by: J-P Nurmi <jpnurmi@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-282-0/+97
| | | | | | | | | | | | | | | | | | | 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>
* Fix tst_textfield test_pressAndHold() skipJ-P Nurmi2015-08-281-1/+1
| | | | | | | Change-Id: I1ceb0d2bd269c66a5663dab258698e1eddbd7d25 Task-number: QTBUG-47963 Reviewed-by: Liang Qi <liang.qi@theqtcompany.com> 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>
* Skip tst_textfield::test_pressAndHold failing test on OS X.Mitch Curtis2015-08-271-0/+3
| | | | | | Change-Id: I479704184ceff878a239c2ee72d0c0929859b97b Task-number: QTBUG-47963 Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
* Stabilize pressAndHold auto-tests for TextField, TextAreaGabriel de Dietrich2015-08-212-4/+4
| | | | | | | | | | | We just extend the wait interval. This is to make sure the control's press-and-hold timer will timeout before the wait. Since we're probably not using the most accurate timers, adding 20% to something that's around one second remains acceptable. Change-Id: I1d10c88a168e882c9069f9345e896c1aab2f2bda Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
* TextArea: Add pressAndHold signalGabriel de Dietrich2015-08-031-0/+52
| | | | | | | | We factorize the feature code identical to TextField's into a helper class. Change-Id: I4496f2d192a023f6a6c03ed81d81bca4c08a59d0 Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
* Add pressAndHold support for TextFieldGabriel de Dietrich2015-07-241-0/+52
| | | | | Change-Id: I634da6568a456a5f21e30e6295d139a4e1a89e75 Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
* Add tst_label, tst_textfield, tst_textarea stubsJ-P Nurmi2015-07-163-0/+189
| | | | | | | Not so much to test there, but test that at least creation succeeds. Change-Id: I81aa3e43602b511d12ca9bb017e8df7452f9eaf3 Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
* tst_pageindicatorJ-P Nurmi2015-07-161-0/+79
| | | | | Change-Id: I42f5a2f8d2c2f59d64bd2fcff4433de3fc5b9ad8 Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
* tst_stackview: ignore warningsJ-P Nurmi2015-07-081-5/+10
| | | | | Change-Id: I6fb8e1b238a087f8775df87e63ffa515b626226d Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
* Remove non-color properties from ThemeJ-P Nurmi2015-07-061-28/+1
| | | | | | | | Better start with a minimal set. It will be also easier to transition from Theme to Palette if it gets done. Change-Id: Ic9951ac5b913f99a84e2b8efb9ae7f8d61177aee Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
* Remove Theme.disabledOpacityJ-P Nurmi2015-06-301-10/+1
| | | | | | | Use Theme.disabledColor instead. Change-Id: I76311d6c6b573b01a26ee2b8d434a841c4d86292 Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
* Refactor ExclusiveGroupJ-P Nurmi2015-06-301-13/+13
| | | | | | | | | | | | | Add support for toggled() and toggled(bool) signals to bring ExclusiveGroup 2.0 on par with ExclusiveGroup 1.0. Furthermore, the attached property is now "ExclusiveGroup.group" to be consistent with all other attached properties like StackView.view, TabView.view, and others. It looks clumsy to repeat, but it's better to keep the type names to the minimum, and the documentation also stays in one place. Change-Id: Ic46f8d2ec4b58c5056e8b2bbca5c9f88968bfb80 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-2917-153/+162
| | | | | | | | | - 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>
* Frame, GroupBox, ToolBar: restore contentWidth & contentHeightJ-P Nurmi2015-06-183-6/+24
| | | | | Change-Id: I79a974c64f6ec57ebfa83cea0857b2a1590af61f Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
* Revert "Rename Control::availableWidth/Height to contentWidth/Height"J-P Nurmi2015-06-181-16/+16
| | | | | | | | | | | TextField and TextArea have different semantics for contentWidth and contentHeight. In addition, it looks like we need to restore contentWidth and contentHeight for Frame & GroupBox. This reverts commit 6941b934bdf5f3c7b65f682c8dfc5c6562292351. Change-Id: Ia115025a67b472ac67fbbc915b80312e4b4a7431 Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
* TabBar: implement contentData & contentChildrenJ-P Nurmi2015-06-151-0/+420
| | | | | Change-Id: I61d077758c83027cbfc1b99d32cb68efc0829ffd Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
* Rename Control::availableWidth/Height to contentWidth/HeightJ-P Nurmi2015-06-151-16/+16
| | | | | Change-Id: Ia39a52e7e8d968b05fd7a2d64ab3b3030a9f528e Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
* GroupBox/Frame/ToolBar: use positioners as content itemJ-P Nurmi2015-06-153-24/+6
| | | | | Change-Id: I8f883dd0fd06172032dd78ff60437c906c2fe8dd Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
* Slider: add from & to propertiesJ-P Nurmi2015-06-111-0/+78
| | | | | Change-Id: Iee61e89d8519e7e3d27f1bf1c35af210f48bc7c9 Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
* ProgressBar: add from, to & position propertiesJ-P Nurmi2015-06-101-0/+66
| | | | | Change-Id: I1bf29fab227f1f2642994f9167c9a6957abcbb65 Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
* Control::availableWidth & availableHeightJ-P Nurmi2015-06-031-0/+93
| | | | | | | | | The recently introduced contentWidth/Height was ambiguous. It had even different semantics than in Containers, TextXxx & Flickable etc. Thus, replace with availableWidth/Height. Change-Id: Iaeef25ec82b395c602724d222ca73666460ffd29 Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
* Improve Control::background automatic resizingJ-P Nurmi2015-05-231-0/+46
| | | | | | | | - width follows only if x and width are both not specified - height follows only if y and height are both not specified Change-Id: Ib881daa9da339baac53f7f9d4de6e5bdad7723e2 Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
* Fix Control::mirroredChanged() emissionJ-P Nurmi2015-05-231-0/+35
| | | | | | | | It was emitted only when LayoutMirroring.enabled changed, but it also needs to be emitted when layoutDirection changes... Change-Id: I9424fdf232c11669780c9abace5c162a0df69dbe Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
* Expose read-only bool Control::mirrored property for convenienceJ-P Nurmi2015-05-221-0/+6
| | | | | Change-Id: Icbb39aa1c3ac6f4b00adbc59c09a6c79e99bafd3 Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
* Promote layoutDirection & effectiveLayoutDirection to ControlJ-P Nurmi2015-05-227-168/+91
| | | | | Change-Id: I44df09c17d6d20cfd929af4e331e15f48b19587e Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
* Update tst_radiobutton to use ControlSpyGabriel de Dietrich2015-05-041-68/+56
| | | | | Change-Id: If10ef6f111b4a91216bbb2d0b52bc182533edaa8 Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
* ControlSpy: Accept a list of signals to spy onGabriel de Dietrich2015-05-043-32/+54
| | | | | | | | | | | | | | | | | | This API is cleaner than having to connect to each signal handler namually. We solve the 'pressed' signal problem by connecting to the other signal accessor, namely 'onPressed'. And we do so for all signals. We also lay foundation to capture the signal parameters as each signal is emitted. What we may do with those values is not clear yet. Auto-tests updated accordingly. Change-Id: Ieda96a43072ca7dff2b183e07f6f67aa49c8cf5d Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
* Update tst_checkbox to use ControlSpyGabriel de Dietrich2015-04-302-74/+76
| | | | | | | Also made a few cosmetic changes to the output of ControlSpy. Change-Id: Iec6982b3de3dda3aaa312e29801d0708ef8d739e Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
* Introducing ControlSpyGabriel de Dietrich2015-04-293-93/+128
| | | | | | | | | | | Allows specifying expected sequences on signals for a control, and optionally test for property values when each signal is emitted. Rewrote Button auto-test suite using ControlSpy. Change-Id: Id27c1b9ca7ee070898bcd008379e06959341ee04 Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
* QQuickButton: Add canceled signalGabriel de Dietrich2015-04-291-3/+18
| | | | | | | | | | | | | | We now support the following pattern: 1. Press the mouse button => emit pressed 2. Move the mouse cursor outside the button => pressed = false 3. Release the mouse button => emit canceled Note that getting the mouse grabbed away by another item, at any stage, will also emit the canceled signal. Change-Id: I97e485327370ea47943dfef75553000cee449a01 Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>