--- rxvt-unicode/src/screen.C 2006/01/28 14:23:16 1.254 +++ rxvt-unicode/src/screen.C 2006/01/30 20:12:37 1.256 @@ -1116,7 +1116,7 @@ * Move cursor left in row. If we're at the left boundary, shift everything * in that row right. Clear left column. */ -#if ENABLE_FRILLS +#if !ENABLE_MINIMAL void rxvt_term::scr_backindex () NOTHROW { @@ -1133,7 +1133,7 @@ * Move cursor right in row. If we're at the right boundary, shift everything * in that row left. Clear right column. */ -#if ENABLE_FRILLS +#if !ENABLE_MINIMAL void rxvt_term::scr_forwardindex () NOTHROW { @@ -1357,7 +1357,7 @@ } } -#if ENABLE_FRILLS +#if !ENABLE_MINIMAL void rxvt_term::scr_erase_savelines () NOTHROW { @@ -1756,10 +1756,9 @@ for (int i = 0; i < nrow; i++) { - int col = 0; rend_t *drp = drawn_buf[i].r; - for (; col < ncol; col++, drp++) + for (int col = 0; col < ncol; col++, drp++) if ((*drp & mask) == value) { found = true; @@ -2260,11 +2259,11 @@ // force redraw after "careful" characters to avoid pixel droppings for (int i = 0; srp[col + i] & RS_Careful && col + i < ncol - 1; i++) - drp[col + i + 1] = ~srp[col + i + 1]; + drp[col + i + 1] = srp[col + i + 1] ^ RS_redraw; // force redraw before "careful" characters to avoid pixel droppings for (int i = 0; srp[text - stp - i] & RS_Careful && text - i > stp; i++) - drp[text - stp - i - 1] = ~srp[text - stp - i - 1]; + drp[text - stp - i - 1] = srp[text - stp - i - 1] ^ RS_redraw; #endif bool invert = rend & RS_RVid; @@ -2551,7 +2550,7 @@ && current_screen == selection.screen && selection.end.row >= view_start) { -#if ENABLE_FRILLS +#if !ENABLE_MINIMAL if (selection.rect) scr_xor_rect (selection.beg.row, selection.beg.col, selection.end.row, selection.end.col, @@ -2776,7 +2775,7 @@ char **cl; int cr; -#if ENABLE_FRILLS +#if !ENABLE_MINIMAL // xlib is horribly broken with respect to UTF8_STRING, and nobody cares to fix it // so recode it manually if (ct.encoding == xa[XA_UTF8_STRING]) @@ -2957,7 +2956,7 @@ for (; row <= selection.end.row; row++, col = 0) { -#if ENABLE_FRILLS +#if !ENABLE_MINIMAL if (selection.rect) { col = selection.beg.col; @@ -2970,7 +2969,7 @@ col = max (col, 0); if (row == selection.end.row -#if ENABLE_FRILLS +#if !ENABLE_MINIMAL || selection.rect #endif ) @@ -3003,7 +3002,7 @@ new_selection_text[ofs++] = *t++; } -#if ENABLE_FRILLS +#if !ENABLE_MINIMAL if (selection.rect) { while (ofs @@ -3374,7 +3373,7 @@ { if (selection.beg.col > ROW(selection.beg.row).l //TODO//FIXME//LEN && !ROW(selection.beg.row).is_longer () -#if ENABLE_FRILLS +#if !ENABLE_MINIMAL && !selection.rect #endif ) @@ -3383,7 +3382,7 @@ if ( selection.end.col > ROW(selection.end.row).l //TODO//FIXME//LEN && !ROW(selection.end.row).is_longer () -#if ENABLE_FRILLS +#if !ENABLE_MINIMAL && !selection.rect #endif ) @@ -3410,7 +3409,9 @@ { selection.end.row = end_row; selection.end.col = ROW(end_row).l; +# if !ENABLE_MINIMAL selection_remove_trailing_spaces (); +# endif break; } } @@ -3449,13 +3450,13 @@ } } -#if ENABLE_FRILLS +#if !ENABLE_MINIMAL if (selection.rect && selection.beg.col > selection.end.col) ::swap (selection.beg.col, selection.end.col); #endif } -#if ENABLE_FRILLS +#if !ENABLE_MINIMAL void rxvt_term::selection_remove_trailing_spaces () NOTHROW { @@ -3590,7 +3591,7 @@ style = enc_text; else if (target == xa[XA_COMPOUND_TEXT]) style = enc_compound_text; -#if ENABLE_FRILLS +#if !ENABLE_MINIMAL else if (target == xa[XA_UTF8_STRING]) style = enc_utf8; #endif @@ -3611,7 +3612,7 @@ selectlen = 0; } -#if ENABLE_FRILLS +#if !ENABLE_MINIMAL // xlib is horribly broken with respect to UTF8_STRING, and nobody cares to fix it // so recode it manually if (style == enc_utf8)