ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/src/screen.C
(Generate patch)

Comparing rxvt-unicode/src/screen.C (file contents):
Revision 1.327 by root, Wed Nov 5 14:43:54 2008 UTC vs.
Revision 1.331 by sf-exg, Wed Jan 6 17:52:43 2010 UTC

286 ocur.row = MOD (term_start + ocur.row, prev_total_rows); 286 ocur.row = MOD (term_start + ocur.row, prev_total_rows);
287 287
288 do 288 do
289 { 289 {
290 p = MOD (p - 1, prev_total_rows); 290 p = MOD (p - 1, prev_total_rows);
291#ifdef DEBUG_STRICT
292 assert (old_buf [MOD (p, prev_total_rows)].t); 291 assert (old_buf [MOD (p, prev_total_rows)].t);
293#endif
294 int plines = 1; 292 int plines = 1;
295 int llen = old_buf [MOD (p, prev_total_rows)].l; 293 int llen = old_buf [MOD (p, prev_total_rows)].l;
296 294
297 while (p != pend && old_buf [MOD (p - 1, prev_total_rows)].is_longer ()) 295 while (p != pend && old_buf [MOD (p - 1, prev_total_rows)].is_longer ())
298 { 296 {
510 } 508 }
511 509
512 /* boundary check in case screen size changed between SAVE and RESTORE */ 510 /* boundary check in case screen size changed between SAVE and RESTORE */
513 min_it (s->cur.row, nrow - 1); 511 min_it (s->cur.row, nrow - 1);
514 min_it (s->cur.col, ncol - 1); 512 min_it (s->cur.col, ncol - 1);
515#ifdef DEBUG_STRICT
516 assert (s->cur.row >= 0); 513 assert (s->cur.row >= 0);
517 assert (s->cur.col >= 0); 514 assert (s->cur.col >= 0);
518#endif
519} 515}
520 516
521void 517void
522rxvt_term::scr_swap_screen () 518rxvt_term::scr_swap_screen ()
523{ 519{
783 scr_scroll_text (screen.tscroll, screen.bscroll, minlines); 779 scr_scroll_text (screen.tscroll, screen.bscroll, minlines);
784 screen.cur.row -= minlines; 780 screen.cur.row -= minlines;
785 } 781 }
786 } 782 }
787 783
788#ifdef DEBUG_STRICT
789 assert (screen.cur.col < ncol); 784 assert (screen.cur.col < ncol);
790 assert (screen.cur.row < nrow 785 assert (screen.cur.row < nrow
791 && screen.cur.row >= top_row); 786 && screen.cur.row >= top_row);
792#endif
793 int row = screen.cur.row; 787 int row = screen.cur.row;
794 788
795 checksel = selection.op && current_screen == selection.screen ? 1 : 0; 789 checksel = selection.op && current_screen == selection.screen ? 1 : 0;
796 790
797 line_t *line = &ROW(row); 791 line_t *line = &ROW(row);
1001#endif 995#endif
1002 } 996 }
1003 997
1004 max_it (line->l, screen.cur.col); 998 max_it (line->l, screen.cur.col);
1005 999
1006#ifdef DEBUG_STRICT
1007 assert (screen.cur.row >= 0); 1000 assert (screen.cur.row >= 0);
1008#endif
1009} 1001}
1010 1002
1011/* ------------------------------------------------------------------------- */ 1003/* ------------------------------------------------------------------------- */
1012/* 1004/*
1013 * Process Backspace. Move back the cursor back a position, wrap if have to 1005 * Process Backspace. Move back the cursor back a position, wrap if have to
1941 1933
1942 bell_ev.start (VISUAL_BELL_DURATION); 1934 bell_ev.start (VISUAL_BELL_DURATION);
1943 } 1935 }
1944 else 1936 else
1945 XBell (dpy, 0); 1937 XBell (dpy, 0);
1938 HOOK_INVOKE ((this, HOOK_BELL, DT_END));
1946#endif 1939#endif
1947} 1940}
1948 1941
1949/* ------------------------------------------------------------------------- */ 1942/* ------------------------------------------------------------------------- */
1950/* ARGSUSED */ 1943/* ARGSUSED */
1969 row_start = view_start; 1962 row_start = view_start;
1970 } 1963 }
1971 1964
1972 wctomb (0, 0); 1965 wctomb (0, 0);
1973 1966
1974 for (int r1 = 0; r1 < nrows; r1++) 1967 for (int r1 = row_start; r1 < row_start + nrows; r1++)
1975 { 1968 {
1976 text_t *tp = ROW(r1).t; 1969 text_t *tp = ROW(r1).t;
1977 int len = ROW(r1).l; 1970 int len = ROW(r1).l;
1978 1971
1979 for (int i = len >= 0 ? len : ncol - 1; i--; ) //TODO//FIXME//LEN 1972 for (int i = len >= 0 ? len : ncol - 1; i--; ) //TODO//FIXME//LEN
2250 for (i = 0; ++col < ncol; ) 2243 for (i = 0; ++col < ncol; )
2251 { 2244 {
2252 if (stp[col] == NOCHAR) 2245 if (stp[col] == NOCHAR)
2253 { 2246 {
2254 dtp[col] = stp[col]; 2247 dtp[col] = stp[col];
2255 drp[col] = rend; 2248 drp[col] = srp[col];
2249
2256 count++; 2250 count++;
2257 i++; 2251 i++;
2258 2252
2259 continue; 2253 continue;
2260 } 2254 }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines