#include <stdio.h>
#include <stdlib.h>
+#include <unistd.h>
#include <string.h>
#include <ncurses.h>
#include <fcntl.h>
//////////////////////////////////////////////////////////////////////
// The value passed to this routine in current_focus_line is the index
-// of the line to highlight if it matches the matcher. The line
-// highlighted is the first one matching the matcher in that order:
-// (1) current_focus_line after motion, (2) the first with a greater
+// of the line we should have highlited if there was no motion and if
+// it matched the matcher. So, the line actually highlighted is the
+// first one matching the matcher in that order: (1)
+// current_focus_line after motion, (2) the first with a greater
// index, (3) the first with a lesser index.
// The index of the line actually shown highlighted is written in
// displayed_focus_line (it can be -1)
// If there is a motion and a line is actually shown highlighted, its
-// value is written in current_focus_line
+// value is written in current_focus_line.
void update_screen(int *current_focus_line, int *displayed_focus_line,
int motion,
int console_width = getmaxx(stdscr);
int console_height = getmaxy(stdscr);
- // First, we find a visible line. In priority: The current, or the
- // first visible after it, or the first visible before it.
+ // First, we find a visible line.
int nb_printed_lines = 0;