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

Comparing rxvt-unicode/src/command.C (file contents):
Revision 1.381 by root, Fri Dec 14 05:25:23 2007 UTC vs.
Revision 1.388 by ayin, Mon Dec 31 01:16:47 2007 UTC

26 * Copyright (c) 1998 Alfredo K. Kojima <kojima@windowmaker.org> 26 * Copyright (c) 1998 Alfredo K. Kojima <kojima@windowmaker.org>
27 * Copyright (c) 2001 Marius Gedminas 27 * Copyright (c) 2001 Marius Gedminas
28 * - Ctrl/Mod4+Tab works like Meta+Tab (options) 28 * - Ctrl/Mod4+Tab works like Meta+Tab (options)
29 * Copyright (c) 2003 Rob McMullen <robm@flipturn.org> 29 * Copyright (c) 2003 Rob McMullen <robm@flipturn.org>
30 * Copyright (c) 2003-2007 Marc Lehmann <pcg@goof.com> 30 * Copyright (c) 2003-2007 Marc Lehmann <pcg@goof.com>
31 * Copyright (c) 2007 Emanuele Giaquinta <e.giaquinta@glauco.it>
31 * 32 *
32 * This program is free software; you can redistribute it and/or modify 33 * This program is free software; you can redistribute it and/or modify
33 * it under the terms of the GNU General Public License as published by 34 * it under the terms of the GNU General Public License as published by
34 * the Free Software Foundation; either version 2 of the License, or 35 * the Free Software Foundation; either version 2 of the License, or
35 * (at your option) any later version. 36 * (at your option) any later version.
198 r & RS_Uline ? " uline" : "", 199 r & RS_Uline ? " uline" : "",
199 r & RS_Careful ? " careful" : ""); 200 r & RS_Careful ? " careful" : "");
200 201
201 int width = wcswidth (fname, wcslen (fname)); 202 int width = wcswidth (fname, wcslen (fname));
202 203
203 max_it (width, 8+5); // for char + hey 204 max_it (width, 8+5); // for char + hex
204 max_it (width, strlen (attr)); 205 max_it (width, strlen (attr));
205 206
206 if (y >= 0) 207 if (y >= 0)
207 { 208 {
208 y = (y >= nrow - len - 4 && x < width + 2) ? 0 : -1; 209 y = (y >= nrow - len - 4 && x < width + 2) ? 0 : -1;
220 ch = *chr++; 221 ch = *chr++;
221 222
222 sprintf (buf, "%8x", ch); 223 sprintf (buf, "%8x", ch);
223 scr_overlay_set (0, y, buf); 224 scr_overlay_set (0, y, buf);
224 scr_overlay_set (9, y, '='); 225 scr_overlay_set (9, y, '=');
225# if !UNICODE3 226# if !UNICODE_3
226 if (ch >= 0x10000) 227 if (ch >= 0x10000)
227 ch = 0xfffd; 228 ch = 0xfffd;
228# endif 229# endif
229 scr_overlay_set (11, y, ch, r); 230 scr_overlay_set (11, y, ch, r);
230 231
1047void 1048void
1048rxvt_term::refresh_check () 1049rxvt_term::refresh_check ()
1049{ 1050{
1050 if (want_refresh && !flush_ev.is_active ()) 1051 if (want_refresh && !flush_ev.is_active ())
1051 flush_ev.start (1. / 60.); // refresh at max. 60 Hz normally 1052 flush_ev.start (1. / 60.); // refresh at max. 60 Hz normally
1053
1054 display->flush ();
1052} 1055}
1053 1056
1054void 1057void
1055rxvt_term::flush_cb (ev::timer &w, int revents) 1058rxvt_term::flush_cb (ev::timer &w, int revents)
1056{ 1059{
1209 if (cmd_parse ()) 1212 if (cmd_parse ())
1210 break; 1213 break;
1211 1214
1212 if (revents & ev::WRITE) 1215 if (revents & ev::WRITE)
1213 pty_write (); 1216 pty_write ();
1217
1218 refresh_check ();
1214} 1219}
1215 1220
1216void 1221void
1217rxvt_term::pointer_unblank () 1222rxvt_term::pointer_unblank ()
1218{ 1223{
1453#ifdef HAVE_BG_PIXMAP 1458#ifdef HAVE_BG_PIXMAP
1454 if (bgPixmap.window_position_sensitive ()) 1459 if (bgPixmap.window_position_sensitive ())
1455 update_background (); 1460 update_background ();
1456#endif 1461#endif
1457 } 1462 }
1463
1458 HOOK_INVOKE ((this, HOOK_CONFIGURE_NOTIFY, DT_XEVENT, &ev, DT_END)); 1464 HOOK_INVOKE ((this, HOOK_CONFIGURE_NOTIFY, DT_XEVENT, &ev, DT_END));
1459 } 1465 }
1460 break; 1466 break;
1461 1467
1462 case PropertyNotify: 1468 case PropertyNotify:
1790 || ev.xproperty.atom == xa[XA_ESETROOT_PMAP_ID]) 1796 || ev.xproperty.atom == xa[XA_ESETROOT_PMAP_ID])
1791 { 1797 {
1792 bgPixmap.set_root_pixmap (); 1798 bgPixmap.set_root_pixmap ();
1793 update_background (); 1799 update_background ();
1794 } 1800 }
1801
1795 break; 1802 break;
1796 } 1803 }
1797# endif 1804# endif
1798 1805
1799 refresh_check (); 1806 refresh_check ();
2001 } 2008 }
2002 else 2009 else
2003 switch (ev.button) 2010 switch (ev.button)
2004 { 2011 {
2005 case Button2: 2012 case Button2:
2006 switch (scrollbar_align) 2013 switch (scrollBar.align)
2007 { 2014 {
2008 case R_SB_ALIGN_TOP: 2015 case R_SB_ALIGN_TOP:
2009 csrO = 0; 2016 csrO = 0;
2010 break; 2017 break;
2011 case R_SB_ALIGN_CENTRE: 2018 case R_SB_ALIGN_CENTRE:
2023 2030
2024 scrollBar.setMotion (); 2031 scrollBar.setMotion ();
2025 break; 2032 break;
2026 2033
2027 case Button1: 2034 case Button1:
2028 if (scrollbar_align == R_SB_ALIGN_CENTRE) 2035 if (scrollBar.align == R_SB_ALIGN_CENTRE)
2029 csrO = ev.y - scrollBar.top; 2036 csrO = ev.y - scrollBar.top;
2030 /* FALLTHROUGH */ 2037 /* FALLTHROUGH */
2031 2038
2032 case Button3: 2039 case Button3:
2033 if (scrollBar.style != R_SB_XTERM) 2040 if (scrollBar.style != R_SB_XTERM)
2309 2316
2310 ch = NOCHAR; 2317 ch = NOCHAR;
2311 } 2318 }
2312 } 2319 }
2313 2320
2314 refresh_check ();
2315
2316 return flag; 2321 return flag;
2317} 2322}
2318 2323
2319// read the next character 2324// read the next character
2320wchar_t 2325wchar_t
3387#if ENABLE_TRANSPARENCY 3392#if ENABLE_TRANSPARENCY
3388 case URxvt_Color_tint: 3393 case URxvt_Color_tint:
3389 process_color_seq (op, Color_tint, str, resp); 3394 process_color_seq (op, Color_tint, str, resp);
3390 { 3395 {
3391 bool changed = false; 3396 bool changed = false;
3397
3392 if (ISSET_PIXCOLOR (Color_tint)) 3398 if (ISSET_PIXCOLOR (Color_tint))
3393 changed = bgPixmap.set_tint (pix_colors_focused [Color_tint]); 3399 changed = bgPixmap.set_tint (pix_colors_focused [Color_tint]);
3394 else 3400 else
3395 changed = bgPixmap.unset_tint (); 3401 changed = bgPixmap.unset_tint ();
3402
3396 if (changed) 3403 if (changed)
3397 update_background (); 3404 update_background ();
3398 } 3405 }
3399 3406
3400 break; 3407 break;
3423 changed++; 3430 changed++;
3424 str = strchr (str, ';'); 3431 str = strchr (str, ';');
3425 if (str == NULL) 3432 if (str == NULL)
3426 bgPixmap.set_defaultGeometry (); 3433 bgPixmap.set_defaultGeometry ();
3427 } 3434 }
3435
3428 while (str) 3436 while (str)
3429 { 3437 {
3430 str++; 3438 str++;
3431 if (bgPixmap.set_geometry (str)) 3439 if (bgPixmap.set_geometry (str))
3432 changed++; 3440 changed++;
3433 str = strchr (str, ';'); 3441 str = strchr (str, ';');
3434 } 3442 }
3443
3435 if (changed) 3444 if (changed)
3436 update_background (); 3445 update_background ();
3437 } 3446 }
3438 break; 3447 break;
3439#endif 3448#endif
3440 3449
3441 case Rxvt_restoreFG: 3450 case Rxvt_restoreFG:

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines