… | |
… | |
620 | top_row = max (top_row - count, -saveLines); |
620 | top_row = max (top_row - count, -saveLines); |
621 | |
621 | |
622 | // scroll everything up 'count' lines |
622 | // scroll everything up 'count' lines |
623 | term_start = (term_start + count) % total_rows; |
623 | term_start = (term_start + count) % total_rows; |
624 | |
624 | |
|
|
625 | // sever bottommost line |
625 | { |
626 | { |
626 | // severe bottommost scrolled line |
|
|
627 | line_t &l = ROW(row2 - count); |
627 | line_t &l = ROW(row2 - count); |
|
|
628 | l.is_longer (0); |
628 | l.touch (); |
629 | l.touch (); |
629 | l.is_longer (0); |
|
|
630 | } |
630 | } |
631 | |
631 | |
632 | // erase newly scorlled-in lines |
632 | // erase newly scrolled-in lines |
633 | for (int i = count; i; --i ) |
633 | for (int i = count; i--; ) |
634 | { |
634 | { |
635 | // basically this is a slightly optimized scr_blank_screen_mem |
635 | // basically this is a slightly optimized scr_blank_screen_mem |
636 | // it is worth the effort on slower machines |
636 | // it is worth the effort on slower machines |
637 | line_t &l = ROW(nrow - i); |
637 | line_t &l = ROW(row2 - i); |
638 | |
638 | |
639 | scr_blank_line (l, 0, l.l, rstyle); |
639 | scr_blank_line (l, 0, l.l, rstyle); |
640 | |
640 | |
641 | l.l = 0; |
641 | l.l = 0; |
642 | l.f = 0; |
642 | l.f = 0; |
… | |
… | |
817 | CLEAR_SELECTION (); |
817 | CLEAR_SELECTION (); |
818 | } |
818 | } |
819 | |
819 | |
820 | if (screen.flags & Screen_WrapNext) |
820 | if (screen.flags & Screen_WrapNext) |
821 | { |
821 | { |
822 | max_it (line->l, ncol); |
|
|
823 | line->is_longer (1); |
|
|
824 | |
|
|
825 | scr_do_wrap (); |
822 | scr_do_wrap (); |
826 | |
823 | |
|
|
824 | line->l = ncol; |
|
|
825 | line->is_longer (1); |
|
|
826 | |
827 | row = screen.cur.row; |
827 | row = screen.cur.row; |
828 | line = &ROW(row); /* _must_ refresh */ |
828 | line = &ROW(row); /* _must_ refresh */ |
829 | } |
829 | } |
830 | |
830 | |
831 | // some utf-8 decoders "decode" surrogate characters: let's fix this. |
831 | // some utf-8 decoders "decode" surrogate characters: let's fix this. |