--- rxvt-unicode/src/command.C 2004/01/16 22:11:09 1.28 +++ rxvt-unicode/src/command.C 2004/01/29 23:26:01 1.31 @@ -1,7 +1,7 @@ /*--------------------------------*-C-*---------------------------------* * File: command.c *----------------------------------------------------------------------* - * $Id: command.C,v 1.28 2004/01/16 22:11:09 pcg Exp $ + * $Id: command.C,v 1.31 2004/01/29 23:26:01 pcg Exp $ * * All portions of code are copyright by their respective author/s. * Copyright (c) 1992 John Bovey, University of Kent at Canterbury @@ -718,8 +718,7 @@ XNextEvent (Xdisplay, &xev); #if defined(CURSOR_BLINK) - if ((Options & Opt_cursorBlink) - && xev.type == KeyPress) + if ((Options & Opt_cursorBlink) && xev.type == KeyPress) { if (hidden_cursor) { @@ -727,13 +726,12 @@ want_refresh = 1; } - blink_ev.start (NOW + BLINK_INTERVAL); + cursor_blink_ev.start (NOW + BLINK_INTERVAL); } #endif #if defined(POINTER_BLANK) - if ((Options & Opt_pointerBlank) - && (pointerBlankDelay > 0)) + if ((Options & Opt_pointerBlank) && pointerBlankDelay > 0) { if (xev.type == MotionNotify || xev.type == ButtonPress @@ -756,7 +754,7 @@ #ifdef CURSOR_BLINK void -rxvt_term::blink_cb (time_watcher &w) +rxvt_term::cursor_blink_cb (time_watcher &w) { hidden_cursor = !hidden_cursor; want_refresh = 1; @@ -765,6 +763,19 @@ } #endif +#ifdef TEXT_BLINK +void +rxvt_term::text_blink_cb (time_watcher &w) +{ + if (scr_refresh_rend (RS_Blink, RS_Blink)) + { + hidden_text = !hidden_text; + want_refresh = 1; + w.start (w.at + TEXT_BLINK_INTERVAL); + } +} +#endif + void rxvt_term::x_cb (io_watcher &w, short revents) { @@ -1022,21 +1033,19 @@ #endif } +#ifdef POINTER_BLANK void rxvt_term::pointer_unblank () { XDefineCursor (Xdisplay, TermWin.vt, TermWin_cursor); recolour_cursor (); -#ifdef POINTER_BLANK hidden_pointer = 0; if (Options & Opt_pointerBlank) pointer_ev.start (NOW + pointerBlankDelay); -#endif } -#ifdef POINTER_BLANK void rxvt_term::pointer_blank () { @@ -1296,7 +1305,7 @@ #endif #ifdef CURSOR_BLINK if (R->Options & Opt_cursorBlink) - R->blink_ev.start (NOW + BLINK_INTERVAL); + R->cursor_blink_ev.start (NOW + BLINK_INTERVAL); #endif } break; @@ -1311,7 +1320,7 @@ #endif #ifdef CURSOR_BLINK if (R->Options & Opt_cursorBlink) - R->blink_ev.stop (); + R->cursor_blink_ev.stop (); R->hidden_cursor = 0; #endif } @@ -1362,10 +1371,16 @@ case UnmapNotify: R->TermWin.mapped = 0; +#ifdef TEXT_BLINK + R->text_blink_ev.stop (); +#endif break; case MapNotify: R->TermWin.mapped = 1; +#ifdef TEXT_BLINK + R->text_blink_ev.start (NOW + TEXT_BLINK_INTERVAL); +#endif break; case PropertyNotify: @@ -2695,7 +2710,7 @@ case CSI_78: /* DECREQTPARM */ if (arg[0] == 0 || arg[0] == 1) - R->tt_printf("\033[%d;1;1;112;112;1;0x", arg[0] + 2); + R->tt_printf("\033[%d;1;1;128;128;1;0x", arg[0] + 2); /* FALLTHROUGH */ default: