diff --git a/src/plugins/fakevim/fakevimhandler.cpp b/src/plugins/fakevim/fakevimhandler.cpp index 7d0cd8c867d9c462f27921f8d60f80a7bc555e48..b45d1510dbe3010a7ded2f163f13bb7a9151d7f4 100644 --- a/src/plugins/fakevim/fakevimhandler.cpp +++ b/src/plugins/fakevim/fakevimhandler.cpp @@ -589,7 +589,7 @@ bool FakeVimHandler::Private::wantsOverride(QKeyEvent *ev) const int mods = ev->modifiers(); KEY_DEBUG("SHORTCUT OVERRIDE" << key << " PASSING: " << m_passing); - if (key == Key_Escape || (mods == Qt::ControlModifier && key == Key_BracketLeft)) { + if (key == Key_Escape) { // Not sure this feels good. People often hit Esc several times if (isNoVisualMode() && m_mode == CommandMode) return false; @@ -597,7 +597,9 @@ bool FakeVimHandler::Private::wantsOverride(QKeyEvent *ev) } // We are interested in overriding most Ctrl key combinations - if (mods == Qt::ControlModifier && key >= Key_A && key <= Key_Z && key != Key_K) { + if (mods == Qt::ControlModifier + && ((key >= Key_A && key <= Key_Z && key != Key_K) + || key == Key_BracketLeft || key == Key_BracketRight)) { // Ctrl-K is special as it is the Core's default notion of Locator if (m_passing) { KEY_DEBUG(" PASSING CTRL KEY");