nnn

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

commit 7ec524c231b6ee043062844a4c975bae6f2d0a1e
parent 2e3f013ce33fc1b37252e409fa4a778ddd3116e5
Author: Arun Prakash Jana <engineerarun@gmail.com>
Date:   Fri,  1 Sep 2017 18:58:32 +0530

Change to light mode if < 35 columns are available

Diffstat:
Mnnn.c | 24+++++++++++++++++++++++-
1 file changed, 23 insertions(+), 1 deletion(-)

diff --git a/nnn.c b/nnn.c @@ -1919,12 +1919,20 @@ redraw(char *path) { static int nlines, i; static size_t ncols; + static bool mode_changed; + mode_changed = FALSE; nlines = MIN(LINES - 4, ndents); /* Clean screen */ erase(); + /* Fail redraw if < than 10 columns */ + if (COLS < 10) { + printmsg("Too few columns!"); + return; + } + /* Strip trailing slashes */ for (i = xstrlen(path) - 1; i > 0; --i) if (path[i] == '/') @@ -1944,7 +1952,16 @@ redraw(char *path) ncols = COLS; if (ncols > PATH_MAX) ncols = PATH_MAX; - /* - xstrlen(CWD) - 1 = 6 */ + + /* Fallback to light mode if less than 35 columns */ + if (ncols < 35 && cfg.showdetail) { + cfg.showdetail ^= 1; + printptr = &printent; + mode_changed = TRUE; + } + + + /* Show CWD: - xstrlen(CWD) - 1 = 6 */ g_buf[ncols - 6] = '\0'; printw(CWD "%s\n\n", g_buf); @@ -2014,6 +2031,11 @@ redraw(char *path) } else printmsg("0 items"); } + + if (mode_changed) { + cfg.showdetail ^= 1; + printptr = &printent_long; + } } static void