… | |
… | |
260 | |
260 | |
261 | if (nrow < prev_nrow) |
261 | if (nrow < prev_nrow) |
262 | { |
262 | { |
263 | /* delete rows */ |
263 | /* delete rows */ |
264 | k = min (TermWin.nscrolled, prev_nrow - nrow); |
264 | k = min (TermWin.nscrolled, prev_nrow - nrow); |
|
|
265 | // k = max (0, - ( (nrow - 1) - r->screen.cur.row)); // mmc's http://maruska.dyndns.org/wiki/scrolling-bug //make configurable? //D TODO |
265 | scr_scroll_text (0, (int)prev_nrow - 1, k, 1); |
266 | scr_scroll_text (0, (int)prev_nrow - 1, k, 1); |
266 | |
267 | |
267 | for (p = nrow; p < prev_nrow; p++) |
268 | for (p = nrow; p < prev_nrow; p++) |
268 | { |
269 | { |
269 | q = p + TermWin.saveLines; |
270 | q = p + TermWin.saveLines; |
… | |
… | |
441 | */ |
442 | */ |
442 | void |
443 | void |
443 | rxvt_term::scr_release () |
444 | rxvt_term::scr_release () |
444 | { |
445 | { |
445 | unsigned int total_rows; |
446 | unsigned int total_rows; |
446 | int i; |
|
|
447 | |
447 | |
448 | total_rows = TermWin.nrow + TermWin.saveLines; |
448 | total_rows = TermWin.nrow + TermWin.saveLines; |
449 | |
449 | |
450 | delete talloc; talloc = 0; |
450 | delete talloc; talloc = 0; |
451 | delete ralloc; ralloc = 0; |
451 | delete ralloc; ralloc = 0; |
… | |
… | |
778 | if (len <= 0) /* sanity */ |
778 | if (len <= 0) /* sanity */ |
779 | return; |
779 | return; |
780 | |
780 | |
781 | unsigned char checksel; |
781 | unsigned char checksel; |
782 | unicode_t c; |
782 | unicode_t c; |
783 | int i, row, last_col; |
783 | int row, last_col; |
784 | text_t *stp; |
784 | text_t *stp; |
785 | rend_t *srp; |
785 | rend_t *srp; |
786 | const unicode_t *strend = str + len; |
786 | const unicode_t *strend = str + len; |
787 | |
787 | |
788 | want_refresh = 1; |
788 | want_refresh = 1; |
… | |
… | |
2161 | |
2161 | |
2162 | #if ENABLE_OVERLAY |
2162 | #if ENABLE_OVERLAY |
2163 | scr_swap_overlay (); |
2163 | scr_swap_overlay (); |
2164 | #endif |
2164 | #endif |
2165 | |
2165 | |
2166 | rend_t *drp, *srp; /* drawn-rend-pointer, screen-rend-pointer */ |
|
|
2167 | text_t *dtp, *stp; /* drawn-text-pointer, screen-text-pointer */ |
|
|
2168 | |
|
|
2169 | #ifndef NO_SLOW_LINK_SUPPORT |
2166 | #ifndef NO_SLOW_LINK_SUPPORT |
2170 | /* |
2167 | /* |
2171 | * D: CopyArea pass - very useful for slower links |
2168 | * D: CopyArea pass - very useful for slower links |
2172 | * This has been deliberately kept simple. |
2169 | * This has been deliberately kept simple. |
2173 | */ |
2170 | */ |
… | |
… | |
2552 | if (!TermWin.mapped) |
2549 | if (!TermWin.mapped) |
2553 | return; |
2550 | return; |
2554 | |
2551 | |
2555 | num_scr_allow = 0; |
2552 | num_scr_allow = 0; |
2556 | want_refresh = 1; |
2553 | want_refresh = 1; |
2557 | |
|
|
2558 | #if TRANSPARENT |
|
|
2559 | if ((options & Opt_transparent) && (am_pixmap_trans == 0)) |
|
|
2560 | { |
|
|
2561 | int i; |
|
|
2562 | |
|
|
2563 | if (!(options & Opt_transparent_all)) |
|
|
2564 | i = 0; |
|
|
2565 | else |
|
|
2566 | i = (int) (sizeof (TermWin.parent) / sizeof (Window)); |
|
|
2567 | |
|
|
2568 | while (i--) |
|
|
2569 | if (TermWin.parent[i] != None) |
|
|
2570 | XClearWindow (display->display, TermWin.parent[i]); |
|
|
2571 | } |
|
|
2572 | #endif |
|
|
2573 | |
2554 | |
2574 | if (really) |
2555 | if (really) |
2575 | XClearWindow (display->display, TermWin.vt); |
2556 | XClearWindow (display->display, TermWin.vt); |
2576 | } |
2557 | } |
2577 | |
2558 | |