diff options
Diffstat (limited to 'src/keymap/KeySeqParser.cpp')
| -rw-r--r-- | src/keymap/KeySeqParser.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/keymap/KeySeqParser.cpp b/src/keymap/KeySeqParser.cpp index 555e955..192f436 100644 --- a/src/keymap/KeySeqParser.cpp +++ b/src/keymap/KeySeqParser.cpp @@ -80,3 +80,16 @@ Qt::Key KeySeqParser::parse_key(const QString &key_name) { return Qt::Key_T; } + +KeyMatchType KeySeqParser::key_sequence_match(const KeySequence &target, + const KeySequence ¤t) { + for (int i = 0; i < target.length(); i++) { + if (current.length() <= i) + return KeyMatchType::Pending; + + if (target[i].key != current[i].key || !target[i].mod.testFlags(current[i].mod)) + return KeyMatchType::NoMatch; + } + + return KeyMatchType::Match; +} |
