Skip to content

Commit

Permalink
Don't refresh in filter mode
Browse files Browse the repository at this point in the history
  • Loading branch information
jarun committed Mar 12, 2019
1 parent a747a1e commit ffc4b7e
Showing 1 changed file with 19 additions and 13 deletions.
32 changes: 19 additions & 13 deletions src/nnn.c
Original file line number Diff line number Diff line change
Expand Up @@ -581,7 +581,8 @@ static inline void printmsg(const char *msg)
static void printwait(const char *msg, int *presel)
{
printmsg(msg);
*presel = MSGWAIT;
if (presel)
*presel = MSGWAIT;
}

/* Kill curses and display error before exiting */
Expand Down Expand Up @@ -1473,12 +1474,16 @@ static int nextsel(int presel)
#endif
c = presel;

if (c == 0 || c == '$') {
if (c == 0 || c == MSGWAIT) {
c = getch();
DPRINTF_D(c);

if (presel == '$')
c = CONTROL('L');
if (presel == MSGWAIT) {
if (cfg.filtermode)
c = FILTER;
else
c = CONTROL('L');
}
}

if (c == -1) {
Expand Down Expand Up @@ -3261,7 +3266,7 @@ static void browse(char *ipath)
case SEL_DETAIL:
cfg.showdetail ^= 1;
cfg.showdetail ? (printptr = &printent_long) : (printptr = &printent);
break;
continue;
case SEL_FSIZE:
cfg.sizeorder ^= 1;
cfg.mtimeorder = 0;
Expand Down Expand Up @@ -3467,8 +3472,9 @@ static void browse(char *ipath)
g_crc = crc8fast((uchar *)dents, ndents * sizeof(struct entry));
copystartid = cur;
ncp = 0;
printwait("selection on", &presel);
goto nochange;
mvprintw(xlines - 1, 0, "selection on");
getch();
continue;
}

if (!ncp) { /* Handle range selection */
Expand Down Expand Up @@ -3504,10 +3510,9 @@ static void browse(char *ipath)
dents[r].flags |= FILE_COPIED;
}

mvprintw(xlines - 1, 0, "%d files selected\n",
copyendid - copystartid + 1);
ncp = copyendid - copystartid + 1;
mvprintw(xlines - 1, 0, "%d files selected\n", ncp);
getch();
continue; /* delayed message shown, now redraw */
}

if (copybufpos) { /* File path(s) written to the buffer */
Expand All @@ -3518,11 +3523,12 @@ static void browse(char *ipath)
if (ncp) { /* Some files cherry picked */
mvprintw(xlines - 1, 0, "%d files selected\n", ncp);
getch();
continue; /* delayed message shown, now redraw */
}
} else
} else {
printwait("selection off", &presel);
goto nochange;
goto nochange;
}
continue;
case SEL_COPYLIST:
if (copybufpos) {
showcplist();
Expand Down

0 comments on commit ffc4b7e

Please sign in to comment.