mirror of
https://github.com/jarun/nnn.git
synced 2024-11-24 03:41:27 +00:00
Experimental: guards to reduce repeat screen redraws
This commit is contained in:
parent
37ebf8054f
commit
ddaddcaf21
14
src/nnn.c
14
src/nnn.c
|
@ -4917,8 +4917,6 @@ static void redraw(char *path)
|
|||
xlines = LINES;
|
||||
xcols = COLS;
|
||||
|
||||
DPRINTF_S(__FUNCTION__);
|
||||
|
||||
int ncols = (xcols <= PATH_MAX) ? xcols : PATH_MAX;
|
||||
int onscreen = xlines - 4;
|
||||
int i;
|
||||
|
@ -4932,6 +4930,8 @@ static void redraw(char *path)
|
|||
return draw_line(path, ncols);
|
||||
}
|
||||
|
||||
DPRINTF_S(__FUNCTION__);
|
||||
|
||||
/* Clear screen */
|
||||
erase();
|
||||
|
||||
|
@ -5141,7 +5141,9 @@ begin:
|
|||
#endif
|
||||
|
||||
while (1) {
|
||||
redraw(path);
|
||||
/* Do not do a double redraw in filterentries */
|
||||
if ((presel != FILTER) || !filterset())
|
||||
redraw(path);
|
||||
|
||||
/* Display a one-time message */
|
||||
if (listpath && (g_states & STATE_MSG)) {
|
||||
|
@ -5667,8 +5669,10 @@ nochange:
|
|||
/* In case of successful operation, reload contents */
|
||||
|
||||
/* Continue in type-to-nav mode, if enabled */
|
||||
if ((cfg.filtermode || filterset()) && !refresh)
|
||||
break;
|
||||
if ((cfg.filtermode || filterset()) && !refresh) {
|
||||
presel = FILTER;
|
||||
goto nochange;
|
||||
}
|
||||
|
||||
/* Save current */
|
||||
if (ndents)
|
||||
|
|
Loading…
Reference in a new issue