Allow to quit hint mode via <CTRL-C> #349.
authorDaniel Carl <danielcarl@gmx.de>
Sat, 6 May 2017 22:34:51 +0000 (00:34 +0200)
committerDaniel Carl <danielcarl@gmx.de>
Sat, 6 May 2017 23:31:56 +0000 (01:31 +0200)
There are some pages where the hinting could not be started and the
input box is filled with ';o'. If the user uses <Esc> this key is also
given to the hinting mode which can't handle this so the user has no way
to get back to normal mode.
Moved the <CTRL-C> case to the beginning of the key handler to make sure
the user can abort the current mode by <CTRL-C>.

src/ex.c

index f558e4c..fde1bb7 100644 (file)
--- a/src/ex.c
+++ b/src/ex.c
@@ -241,6 +241,11 @@ VbResult ex_keypress(Client *c, int key)
     VbResult res;
     const char *text;
 
+    if (key == CTRL('C')) {
+        vb_enter(c, 'n');
+        return RESULT_COMPLETE;
+    }
+
     /* delegate call to hint mode if this is active */
     if (c->mode->flags & FLAG_HINTING
         && RESULT_COMPLETE == hints_keypress(c, key)) {
@@ -286,7 +291,6 @@ VbResult ex_keypress(Client *c, int key)
                 break;
 
             case CTRL('['):
-            case CTRL('C'):
                 vb_enter(c, 'n');
                 vb_input_set_text(c, "");
                 break;