WISH: http://www120.pair.com/mccarthy/nextstep/intro.htmld/Workspace.html is the correct nextstep look.
DUMB: support tex fonts
-7.4pre
- - screen background wasn't always erased properly when scrolling.
+7.4
+ - screen background wasn't always erased properly when scrolling,
+ - re-enabled clearing optimisation disabled in 7.4pre.
7.3a Thu Jan 26 01:08:25 CET 2006
- removed stoopid debugging message.
l.touch ();
- efs &= ~RS_baseattrMask;
+ efs &= ~RS_baseattrMask; // remove italic etc. fontstyles
efs = SET_FONT (efs, FONTSET (efs)->find_font (' '));
text_t *et = l.t + col;
// erase newly scrolled-in lines
for (int i = count; i--; )
- scr_blank_screen_mem (ROW(nrow - 1 - i), rstyle);
+ {
+ line_t &l = ROW(nrow - 1 - i);
+
+ // optimize if already cleared, can be significant on slow machines
+ // could be rolled into scr_blank_screen_mem
+ if (l.r && l.l < ncol - 1 && !((l.r[l.l + 1] ^ rstyle) & RS_bgMask))
+ {
+ scr_blank_line (l, 0, l.l, rstyle);
+ l.l = 0;
+ l.f = 0;
+ }
+ else
+ scr_blank_screen_mem (l, rstyle);
+ }
// now copy lines below the scroll region bottom to the
// bottom of the screen again, so they look as if they