mirror of
https://github.com/irssi/irssi.git
synced 2026-08-09 03:40:16 +02:00
invalidate startline and bottom_startline when hidden
this was overlooked when adding hidden line support. if the lines are removed, Irssi has to update the startline. It does that by "scrolling" the lines to the proper place. The scroll function was adjusted to calculate 0 for hidden lines, thus it would miss them.
This commit is contained in:
parent
cdfd75da98
commit
8684ccb45c
1 changed files with 10 additions and 0 deletions
|
|
@ -1230,6 +1230,11 @@ static void view_remove_line(TEXT_BUFFER_VIEW_REC *view, LINE_REC *line,
|
|||
if (is_last == 1)
|
||||
view->startline = NULL;
|
||||
}
|
||||
|
||||
if (view->startline == line) {
|
||||
view->startline = line->next;
|
||||
view->subline = 0;
|
||||
}
|
||||
} else {
|
||||
if (textbuffer_line_exists_after(view->bottom_startline,
|
||||
line)) {
|
||||
|
|
@ -1239,6 +1244,11 @@ static void view_remove_line(TEXT_BUFFER_VIEW_REC *view, LINE_REC *line,
|
|||
view->empty_linecount += linecount-realcount;
|
||||
}
|
||||
|
||||
if (view->bottom_startline == line) {
|
||||
view->bottom_startline = view->bottom_startline->next;
|
||||
view->bottom_subline = 0;
|
||||
}
|
||||
|
||||
if (textbuffer_line_exists_after(view->startline,
|
||||
line)) {
|
||||
view_remove_line_update_startline(view, line,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue