nano

nano with my custom patches
git clone git://bsandro.tech/nano
Log | Files | Refs | README | LICENSE

commit 3422ec34190a350b7bbf8db1b8dc5a4f09b8ad21
parent 5f1d9af375c9a37b8e8e8b56d390d8a08a99a5b1
Author: Benno Schulenberg <bensberg@telfort.nl>
Date:   Tue, 25 Jun 2019 11:23:15 +0200

browser: draw a bar of spaces only where needed -- for the selected item

The edit window has been fully cleared just before the list-drawing
loop has started, so there is no need to wipe anything.  Only for the
highlighting bar all its characters need to be drawn with the correct
attributes.

Diffstat:
Msrc/browser.c | 5++---
1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/src/browser.c b/src/browser.c @@ -524,16 +524,15 @@ void browser_refresh(void) /* The filename (or a fragment of it) in displayable format. * When a fragment, account for dots plus one space padding. */ - /* If this is the selected item, start its highlighting, and + /* If this is the selected item, draw its highlighted bar upfront, and * remember its location to be able to place the cursor on it. */ if (i == selected) { wattron(edit, interface_color_pair[SELECTED_TEXT]); + mvwprintw(edit, row, col, "%*s", longest, " "); the_row = row; the_column = col; } - mvwprintw(edit, row, col, "%*s", longest, " "); - /* If the name is too long, we display something like "...ename". */ if (dots) mvwaddstr(edit, row, col, "...");