]> git.wh0rd.org Git - nano.git/commitdiff
in get_mouseinput(), make clicking on meta shortcuts work properly
authorDavid Lawrence Ramsey <pooka109@gmail.com>
Thu, 26 Aug 2004 01:43:16 +0000 (01:43 +0000)
committerDavid Lawrence Ramsey <pooka109@gmail.com>
Thu, 26 Aug 2004 01:43:16 +0000 (01:43 +0000)
again, and properly handle the case of whereis_list's being longer than
MAIN_VISIBLE as bottombars() does

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

ChangeLog
src/winio.c

index 76b4e37127228913e027df1377bfd9cca4d99499..de692f1f54876515b9a9bf26cc9030e3fc561edd 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -23,6 +23,11 @@ CVS code -
        - New function used as a wrapper for ungetch(). (DLR)
   get_mouseinput()
        - Consolidate two if statements to increase efficiency. (DLR)
+       - Check kbinput against metaval instead of (erroneously) ctrlval
+         when putting back a meta sequence. (DLR)
+       - If there are more than MAIN_VISIBLE shortcuts available, only
+         register clicks on the first MAIN_VISIBLE shortcuts, since
+         bottombars() only shows that many shortcuts. (DLR)
   do_yesno()
        - Don't bother assigning the value of get_mouseinput() to
          anything.  Since allow_shortcuts is FALSE, its return value
index 024646699df91682e5c1f382e9bd869dfb098f8e..4e155e3733f3d46ccf78ebef31a01f89881c70bb 100644 (file)
@@ -1287,9 +1287,15 @@ bool get_mouseinput(int *mouse_x, int *mouse_y, bool allow_shortcuts)
        /* Get the shortcut lists' length. */
        if (currshortcut == main_list)
            currslen = MAIN_VISIBLE;
-       else
+       else {
            currslen = length_of_list(currshortcut);
 
+           /* We don't show any more shortcuts than the main list
+            * does. */
+           if (currslen > MAIN_VISIBLE)
+               currslen = MAIN_VISIBLE;
+       }
+
        /* Calculate the width of each shortcut in the list (it's the
         * same for all of them). */
        if (currslen < 2)
@@ -1319,7 +1325,7 @@ bool get_mouseinput(int *mouse_x, int *mouse_y, bool allow_shortcuts)
         * has an equivalent control key, meta key sequence, or both. */
        if (s->ctrlval != NANO_NO_KEY)
            unget_kbinput(s->ctrlval, FALSE);
-       else if (s->ctrlval != NANO_NO_KEY)
+       else if (s->metaval != NANO_NO_KEY)
            unget_kbinput(s->metaval, TRUE);
 
        return TRUE;