commit 99a649ddf6ff09bc24bd902917a4dc6c258d482c
parent ca9abd82165bd055f0a3e8857062e013336e3126
Author: Benno Schulenberg <bensberg@justemail.net>
Date: Mon, 16 Jun 2014 12:30:35 +0000
Avoiding an "Unknown Command" on every cursor-positioning mouse click.
git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@4968 35c25a1d-7b9e-4130-9fde-d3aeb78583b8
Diffstat:
2 files changed, 10 insertions(+), 9 deletions(-)
diff --git a/ChangeLog b/ChangeLog
@@ -2,6 +2,9 @@
* configure.ac: For the sake of statically linked systems, make sure
the compiler also links against libz, which is used by libmagic.
This fixes Savannah bug #38378, reported by Alan Hourihane.
+ * src/nano.c (do_mouse, do_input): Don't bother returning zero when
+ the cursor moved, just reset the cutbuffer directly. This avoids an
+ "Unknown Command" message on every cursor-positioning mouse click.
2014-06-14 Mark Majeres <mark@engine12.com>
* src/nano.h, src/text.c (undo_cut, update_undo): When undoing a
diff --git a/src/nano.c b/src/nano.c
@@ -1584,14 +1584,12 @@ int do_input(bool *meta_key, bool *func_key, bool allow_funcs)
#ifndef DISABLE_MOUSE
if (*func_key && input == KEY_MOUSE) {
/* We received a mouse click. */
- int result = do_mouse();
-
- if (result == 1)
+ if (do_mouse() == 1)
/* The click was on a shortcut -- read in the character
* that it was converted into. */
input = get_kbinput(edit, meta_key, func_key);
- else if (result != 0)
- /* The click was invalid -- get out. */
+ else
+ /* The click was invalid or has been handled -- get out. */
return ERR;
}
#endif
@@ -1810,15 +1808,15 @@ int do_mouse(void)
* the line. */
if (sameline && openfile->current_x == current_x_save)
do_mark();
+ else
#endif
+ /* The cursor moved; clean the cutbuffer on the next cut. */
+ cutbuffer_reset();
edit_redraw(current_save, pww_save);
-
- /* The click influenced the cursor. */
- return 0;
}
- /* The click was elsewhere, ignore it. */
+ /* No more handling is needed. */
return 2;
}
#endif /* !DISABLE_MOUSE */