diff options
author | Liang Qi <liang.qi@qt.io> | 2017-07-03 08:41:03 +0200 |
---|---|---|
committer | Liang Qi <liang.qi@qt.io> | 2017-11-03 13:30:56 +0000 |
commit | 047bdf90db4d00d0462b9faf2044070be4a0e682 (patch) | |
tree | 159aaf286c3e94d2a32e8ab2bca55b391c565bc1 /src/qmltest/quicktestevent.cpp | |
parent | 0821180dc833376a738742e33f728983b9ca6f84 (diff) |
testlib: add key sequence function
[ChangeLog][QtQuick][QtTest] Added keySequence() function in TestCase.
Task-number: QTBUG-53381
Change-Id: Iea25410d40fc0745e16a10c1af35ec81c4c83668
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Diffstat (limited to 'src/qmltest/quicktestevent.cpp')
-rw-r--r-- | src/qmltest/quicktestevent.cpp | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/qmltest/quicktestevent.cpp b/src/qmltest/quicktestevent.cpp index 663d3c64e1..bf255e9cda 100644 --- a/src/qmltest/quicktestevent.cpp +++ b/src/qmltest/quicktestevent.cpp @@ -121,6 +121,23 @@ bool QuickTestEvent::keyClickChar(const QString &character, int modifiers, int d return true; } +// valueToKeySequence() is copied from qquickshortcut.cpp +static QKeySequence valueToKeySequence(const QVariant &value) +{ + if (value.type() == QVariant::Int) + return QKeySequence(static_cast<QKeySequence::StandardKey>(value.toInt())); + return QKeySequence::fromString(value.toString()); +} + +bool QuickTestEvent::keySequence(const QVariant &keySequence) +{ + QWindow *window = activeWindow(); + if (!window) + return false; + QTest::keySequence(window, valueToKeySequence(keySequence)); + return true; +} + namespace QtQuickTest { enum MouseAction { MousePress, MouseRelease, MouseClick, MouseDoubleClick, MouseMove, MouseDoubleClickSequence }; |