10 chars are printed in for contexts

This commit is contained in:
Arun Prakash Jana 2019-09-11 00:02:38 +05:30
parent d33f469296
commit 8d283886b0
No known key found for this signature in database
GPG Key ID: A75979F35C080412
1 changed files with 15 additions and 9 deletions

View File

@ -131,6 +131,7 @@
#define ASCII_MAX 128
#define EXEC_ARGS_MAX 8
#define SCROLLOFF 3
#define MIN_DISPLAY_COLS 10
#define LONG_SIZE sizeof(ulong)
#define ARCHIVE_CMD_LEN 16
@ -3172,8 +3173,8 @@ static void redraw(char *path)
}
#endif
/* Fail redraw if < than 11 columns, context info prints 10 chars */
if (ncols < 11) {
/* Fail redraw if < than 10 columns, context info prints 10 chars */
if (ncols < MIN_DISPLAY_COLS) {
printmsg("too few columns!");
return;
}
@ -3207,25 +3208,30 @@ static void redraw(char *path)
/* Print path */
i = (int)strlen(path);
if ((i + 11) <= ncols)
addnstr(path, ncols - 11);
if ((i + MIN_DISPLAY_COLS) <= ncols)
addnstr(path, ncols - MIN_DISPLAY_COLS);
else {
base = xbasename(path);
if ((base - ptr) <= 1)
addnstr(path, ncols - 11);
addnstr(path, ncols - MIN_DISPLAY_COLS);
else {
i = 0;
--base;
while (ptr < base) {
if (*ptr == '/') {
i += 2; /* 2 characters added */
if (ncols < i + MIN_DISPLAY_COLS) {
base = NULL; /* Can't print more characters */
break;
}
addch(*ptr);
addch(*(++ptr));
i += 2; /* 2 characters added */
}
++ptr;
}
addnstr(base, ncols - (11 + i));
addnstr(base, ncols - (MIN_DISPLAY_COLS + i));
}
}
@ -3240,11 +3246,11 @@ static void redraw(char *path)
if (ncols < 36) {
cfg.showdetail ^= 1;
printptr = &printent;
ncols -= 5;
ncols -= 3; /* Preceding space, indicator, newline */
} else
ncols -= 35;
} else
ncols -= 3;
ncols -= 3; /* Preceding space, indicator, newline */
attron(COLOR_PAIR(cfg.curctx + 1) | A_BOLD);
cfg.dircolor = 1;