]> git.wh0rd.org Git - nano.git/commitdiff
in do_(statusbar_)?input(), if we get NANO_CONTROL_8, handle it instead
authorDavid Lawrence Ramsey <pooka109@gmail.com>
Fri, 28 Apr 2006 18:59:34 +0000 (18:59 +0000)
committerDavid Lawrence Ramsey <pooka109@gmail.com>
Fri, 28 Apr 2006 18:59:34 +0000 (18:59 +0000)
of ignoring it, for consistency

git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@3451 35c25a1d-7b9e-4130-9fde-d3aeb78583b8

ChangeLog
src/nano.c
src/prompt.c

index b446d1d2f436e6905b6c01179598e2a8663efe69..2eaf100fea4418f5b27ca3ce3cc05e48b95d8e59 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -133,10 +133,16 @@ CVS code -
 - nano.c:
   renumber()
        - Remove invalid assert. (DLR, found by Filipe Moreira)
+  do_input()
+       - If we get NANO_CONTROL_8, handle it instead of ignoring it,
+         for consistency. (DLR)
 - nano.h:
        - Reorder the toggle #defines to match their corresponding order
          in toggle_init(). (DLR)
 - prompt.c:
+  do_statusbar_input()
+       - If we get NANO_CONTROL_8, handle it instead of ignoring it,
+         for consistency. (DLR)
   get_prompt_string()
        - Include the handling of the help key even when help is
          disabled, so that we aren't erroneously kicked out of the
index 5886adac6ebc97cef8addf6e59f4d9d33012cffc..a8dc9a04ac66010c9b4e6691f5ce0b43dc401533 100644 (file)
@@ -1281,16 +1281,20 @@ int do_input(bool *meta_key, bool *func_key, bool *s_or_t, bool
     /* Read in a character. */
     input = get_kbinput(edit, meta_key, func_key);
 
+    if (allow_funcs) {
 #ifndef DISABLE_MOUSE
-    /* If we got a mouse click and it was on a shortcut, read in the
-     * shortcut character. */
-    if (allow_funcs && *func_key == TRUE && input == KEY_MOUSE) {
-       if (do_mouse())
-           input = get_kbinput(edit, meta_key, func_key);
+       /* If we got a mouse click and it was on a shortcut, read in the
+        * shortcut character. */
+       if (*func_key == TRUE && input == KEY_MOUSE)
+           input = do_mouse() ? get_kbinput(edit, meta_key, func_key) :
+               ERR;
        else
-           input = ERR;
-    }
 #endif
+       if (input == NANO_CONTROL_8 && *meta_key == FALSE &&
+               *func_key == FALSE)
+           input = ISSET(REBIND_DELETE) ? NANO_BACKSPACE_KEY :
+               NANO_DELETE_KEY;
+    }
 
     /* Check for a shortcut in the main list. */
     s = get_shortcut(main_list, &input, meta_key, func_key);
index ed9c3c40749ae59126faaef8c1dca9fea87f378b..c153d4b5eb7655fc7b8a4a9af4fef39bbd61e98b 100644 (file)
@@ -68,16 +68,20 @@ int do_statusbar_input(bool *meta_key, bool *func_key, bool *s_or_t,
     /* Read in a character. */
     input = get_kbinput(bottomwin, meta_key, func_key);
 
+    if (allow_funcs) {
 #ifndef DISABLE_MOUSE
-    /* If we got a mouse click and it was on a shortcut, read in the
-     * shortcut character. */
-    if (allow_funcs && *func_key == TRUE && input == KEY_MOUSE) {
-       if (do_statusbar_mouse())
-           input = get_kbinput(bottomwin, meta_key, func_key);
+       /* If we got a mouse click and it was on a shortcut, read in the
+        * shortcut character. */
+       if (*func_key == TRUE && input == KEY_MOUSE)
+           input = do_statusbar_mouse() ? get_kbinput(bottomwin,
+               meta_key, func_key) : ERR;
        else
-           input = ERR;
-    }
 #endif
+       if (input == NANO_CONTROL_8 && *meta_key == FALSE &&
+               *func_key == FALSE)
+           input = ISSET(REBIND_DELETE) ? NANO_BACKSPACE_KEY :
+               NANO_DELETE_KEY;
+    }
 
     /* Check for a shortcut in the current list. */
     s = get_shortcut(currshortcut, &input, meta_key, func_key);