aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorJ-P Nurmi <jpnurmi@theqtcompany.com>2015-11-29 23:35:17 +0100
committerJ-P Nurmi <jpnurmi@theqtcompany.com>2015-12-12 17:47:21 +0000
commit691366a678640448c1dcb04f5297f637919aa220 (patch)
tree8931979e244b489d4e1bb60d7d79c80e561871e5 /tests
parent0cb8763ca7dc3190a797563ff64c35f9208aa9c8 (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.qml26
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()
+ }
}