diff options
author | J-P Nurmi <jpnurmi@theqtcompany.com> | 2015-11-29 23:35:17 +0100 |
---|---|---|
committer | J-P Nurmi <jpnurmi@theqtcompany.com> | 2015-12-12 17:47:21 +0000 |
commit | 691366a678640448c1dcb04f5297f637919aa220 (patch) | |
tree | 8931979e244b489d4e1bb60d7d79c80e561871e5 /tests | |
parent | 0cb8763ca7dc3190a797563ff64c35f9208aa9c8 (diff) |
Add QQuickControl::focusReason
This allows the Universal style ApplicationWindow to visualize key/tab
focus with a focus rectangle, but hide the focus rectangle when the
focus moves around for other reasons (mouse, active window, popups...)
Change-Id: I5c5b43d7c4c051679e34b806ee43cd80180d7ab8
Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/auto/controls/data/tst_control.qml | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/tests/auto/controls/data/tst_control.qml b/tests/auto/controls/data/tst_control.qml index 3bfc5e63..ea1e58df 100644 --- a/tests/auto/controls/data/tst_control.qml +++ b/tests/auto/controls/data/tst_control.qml @@ -638,4 +638,30 @@ TestCase { control.destroy() } + + function test_focusReason_data() { + return [ + { tag: "Control", qml: "import Qt.labs.controls 1.0; Control { }" }, + { tag: "TextField", qml: "import Qt.labs.controls 1.0; TextField { }" }, + { tag: "TextArea", qml: "import Qt.labs.controls 1.0; TextArea { }" }, + { tag: "SpinBox", qml: "import Qt.labs.controls 1.0; SpinBox { }" }, + { tag: "ComboBox", qml: "import Qt.labs.controls 1.0; ComboBox { }" } + ] + } + + function test_focusReason(data) { + var control = Qt.createQmlObject(data.qml, testCase) + verify(control) + + compare(control.focusReason, Qt.OtherFocusReason) + control.forceActiveFocus(Qt.MouseFocusReason) + compare(control.activeFocus, true) + compare(control.focusReason, Qt.MouseFocusReason) + + testCase.forceActiveFocus(Qt.TabFocusReason) + compare(control.activeFocus, false) + compare(control.focusReason, Qt.TabFocusReason) + + control.destroy() + } } |