Ensure cursor position is correct when filling line buffer
This commit is contained in:
parent
4a996c1f76
commit
ccafdacc6f
2 changed files with 3 additions and 0 deletions
|
|
@ -330,6 +330,7 @@ screen_resize(Screen *self, unsigned int lines, unsigned int columns) {
|
|||
if (!historybuf_pop_line(self->historybuf, self->alt_linebuf->line)) break;
|
||||
INDEX_DOWN;
|
||||
linebuf_copy_line_to(self->main_linebuf, self->alt_linebuf->line, 0);
|
||||
self->cursor->y++;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
|
|
|
|||
|
|
@ -318,8 +318,10 @@ def assert_lines(*lines):
|
|||
# Height increased, width unchanged → pull down lines to fill new space at the top
|
||||
s = prepare_screen(map(str, range(6)))
|
||||
assert_lines('2', '3', '4', '5', '')
|
||||
dist_from_bottom = s.lines - s.cursor.y
|
||||
s.resize(7, s.columns)
|
||||
assert_lines('0', '1', '2', '3', '4', '5', '')
|
||||
self.ae(dist_from_bottom, s.lines - s.cursor.y)
|
||||
|
||||
# Height increased, width increased → rewrap, pull down
|
||||
s = prepare_screen(['0', '1', '2', '3' * 15])
|
||||
|
|
|
|||
Loading…
Reference in a new issue