aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--README.md3
-rw-r--r--src/nnn.c21
2 files changed, 20 insertions, 4 deletions
diff --git a/README.md b/README.md
index cfb7ab9..14232cf 100644
--- a/README.md
+++ b/README.md
@@ -267,8 +267,9 @@ Note: Help & settings, file details, media info and archive listing are shown in
|---| --- |
| Left single on context number | Visit context |
| Left single on top row after context numbers | Visit parent |
+| Left single/double after last entry | Toggle nav-as-you-type |
| Left single | Select context or entry |
-| Left double | Select context or open file/directory |
+| Left double | Select context or open entry |
##### Leader key
diff --git a/src/nnn.c b/src/nnn.c
index d5262a5..03c60db 100644
--- a/src/nnn.c
+++ b/src/nnn.c
@@ -1696,6 +1696,7 @@ static int filterentries(char *path)
printprompt(ln);
continue;
+ case KEY_MOUSE: // fallthrough
case 27: /* Exit filter mode on Escape */
if (len == 1)
cur = oldcur;
@@ -3392,13 +3393,27 @@ nochange:
}
#endif
- /* Handle clicking on a file */
- if (2 <= event.y && event.y < xlines - 2) {
+ if (2 <= event.y && event.y < xlines - 2)
r = curscroll + (event.y - 2);
- if (r >= ndents)
+ /* Toggle filter mode on left click on last line */
+ if (event.y >= xlines - 2 || r >= ndents) {
+ cfg.filtermode ^= 1;
+ if (cfg.filtermode) {
+ presel = FILTER;
goto nochange;
+ }
+
+ /* Start watching the directory */
+ dir_changed = TRUE;
+
+ if (ndents)
+ copycurname();
+ goto begin;
+ }
+ /* Handle clicking on a file */
+ if (2 <= event.y && event.y < xlines - 2) {
move_cursor(r, 1);
/*Single click just selects, double click also opens */