diff options
| -rw-r--r-- | src/keymap.cpp | 5 | ||||
| -rw-r--r-- | tests/test_keymap.cpp | 8 |
2 files changed, 13 insertions, 0 deletions
diff --git a/src/keymap.cpp b/src/keymap.cpp index 22c8da1..d8aacc5 100644 --- a/src/keymap.cpp +++ b/src/keymap.cpp @@ -33,6 +33,7 @@ QStringList KeyMap::knownActions() QStringLiteral("toggle_unread"), QStringLiteral("flag"), QStringLiteral("focus_query"), + QStringLiteral("complete_query"), QStringLiteral("toggle_html"), QStringLiteral("load_remote"), QStringLiteral("zoom_in"), @@ -64,6 +65,10 @@ QList<QPair<QString, QString>> KeyMap::defaultBindings() { QStringLiteral("Ctrl+U"), QStringLiteral("toggle_unread") }, { QStringLiteral("Ctrl+I"), QStringLiteral("flag") }, { QStringLiteral("Ctrl+L"), QStringLiteral("focus_query") }, + // Ctrl+Space is the completion idiom users already carry over from + // shells and editors, and it is a named key rather than a symbol, so + // no layout has to shift it. + { QStringLiteral("Ctrl+Space"), QStringLiteral("complete_query") }, { QStringLiteral("Ctrl+H"), QStringLiteral("toggle_html") }, { QStringLiteral("Ctrl+M"), QStringLiteral("load_remote") }, // Ctrl++ is what the '+' key really delivers on a layout where '+' is diff --git a/tests/test_keymap.cpp b/tests/test_keymap.cpp index 0fb4f57..8f6a6af 100644 --- a/tests/test_keymap.cpp +++ b/tests/test_keymap.cpp @@ -37,8 +37,16 @@ private slots: void defaultsDoNotCollide(); void everyDefaultIsAKnownAction(); void everyDefaultParses(); + void completeQueryIsBoundByDefault(); }; +void TestKeyMap::completeQueryIsBoundByDefault() +{ + QVERIFY(KeyMap::knownActions().contains(QStringLiteral("complete_query"))); + QCOMPARE(KeyMap::defaultSequenceFor(QStringLiteral("complete_query")), + QKeySequence(QStringLiteral("Ctrl+Space"))); +} + void TestKeyMap::everyDefaultParses() { // A default that does not parse is a dead binding, the failure mode |
