mirror of
https://github.com/neovim/neovim.git
synced 2025-09-17 00:38:17 +00:00
UI/TUI: improvements and cleanups for scrolling and clearing
- TUI: _never_ rely on BCE for implicit clearing, only explicit commands. - TUI: use unibi_erase_chars when possible. - TUI: use end-exclusive ranges for invalid and cleared areas - screen: scrolling leaves scrolled in aree undefined. This is a conservative change, a client assuming the old semantics will still behave correctly. - screen: factor out vsep handling from line drawing. This is needed anyway for the multigrid refactor. - screen: simplifications of win_do_lines
This commit is contained in:
@@ -1896,6 +1896,9 @@ static void msg_scroll_up(void)
|
||||
} else {
|
||||
screen_del_lines(0, 1, (int)Rows, 0, Columns);
|
||||
}
|
||||
// TODO(bfredl): when msgsep display is properly batched, this fill should be
|
||||
// eliminated.
|
||||
screen_fill(Rows-1, Rows, 0, (int)Columns, ' ', ' ', 0);
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -2311,6 +2314,7 @@ static int do_more_prompt(int typed_char)
|
||||
|
||||
if (toscroll == -1
|
||||
&& screen_ins_lines(0, 1, (int)Rows, 0, (int)Columns) == OK) {
|
||||
screen_fill(0, 1, 0, (int)Columns, ' ', ' ', 0);
|
||||
// display line at top
|
||||
(void)disp_sb_line(0, mp);
|
||||
} else {
|
||||
|
Reference in New Issue
Block a user