… | |
… | |
559 | kbuf[0] = (!! (priv_modes & PrivMode_BackSpace) |
559 | kbuf[0] = (!! (priv_modes & PrivMode_BackSpace) |
560 | ^ !!ctrl) ? '\b' : '\177'; |
560 | ^ !!ctrl) ? '\b' : '\177'; |
561 | kbuf[1] = '\0'; |
561 | kbuf[1] = '\0'; |
562 | } |
562 | } |
563 | else |
563 | else |
564 | strcpy (kbuf, key_backspace); |
564 | strcpy (kbuf, rs[Rs_backspace_key]); |
565 | break; |
565 | break; |
566 | #endif |
566 | #endif |
567 | #ifndef NO_DELETE_KEY |
567 | #ifndef NO_DELETE_KEY |
568 | # ifdef XK_KP_Prior |
568 | # ifdef XK_KP_Delete |
569 | case XK_KP_Delete: |
569 | case XK_KP_Delete: |
570 | /* allow shift to override */ |
570 | /* allow shift to override */ |
571 | if ((priv_modes & PrivMode_aplKP) ? !shft : shft) |
571 | if ((priv_modes & PrivMode_aplKP) ? !shft : shft) |
572 | { |
572 | { |
573 | strcpy (kbuf, "\033On"); |
573 | strcpy (kbuf, "\033On"); |
574 | break; |
574 | break; |
575 | } |
575 | } |
576 | /* FALLTHROUGH */ |
576 | /* FALLTHROUGH */ |
577 | # endif |
577 | # endif |
578 | case XK_Delete: |
578 | case XK_Delete: |
579 | strcpy (kbuf, key_delete); |
579 | strcpy (kbuf, rs[Rs_delete_key]); |
580 | break; |
580 | break; |
581 | #endif |
581 | #endif |
582 | case XK_Tab: |
582 | case XK_Tab: |
583 | if (shft) |
583 | if (shft) |
584 | strcpy (kbuf, "\033[Z"); |
584 | strcpy (kbuf, "\033[Z"); |
… | |
… | |
1474 | && ev.xfocus.mode != NotifyGrab) |
1474 | && ev.xfocus.mode != NotifyGrab) |
1475 | focus_out (); |
1475 | focus_out (); |
1476 | break; |
1476 | break; |
1477 | |
1477 | |
1478 | case ConfigureNotify: |
1478 | case ConfigureNotify: |
|
|
1479 | /* fprintf (stderr, "ConfigureNotify for %X, parent is %X, geom is %dx%d%+d%+d, old geom was %dx%d\n", |
|
|
1480 | ev.xconfigure.window, parent[0], ev.xconfigure.width, ev.xconfigure.height, ev.xconfigure.x, ev.xconfigure.y, |
|
|
1481 | szHint.width, szHint.height);*/ |
1479 | if (ev.xconfigure.window == parent[0]) |
1482 | if (ev.xconfigure.window == parent[0]) |
1480 | { |
1483 | { |
1481 | while (XCheckTypedWindowEvent (dpy, ev.xconfigure.window, ConfigureNotify, &ev)) |
1484 | while (XCheckTypedWindowEvent (dpy, ev.xconfigure.window, ConfigureNotify, &ev)) |
1482 | ; |
1485 | ; |
1483 | |
1486 | |
… | |
… | |
1488 | } |
1491 | } |
1489 | else |
1492 | else |
1490 | { |
1493 | { |
1491 | #ifdef ENABLE_TRANSPARENCY |
1494 | #ifdef ENABLE_TRANSPARENCY |
1492 | if (option (Opt_transparent)) |
1495 | if (option (Opt_transparent)) |
1493 | if (bgPixmap.render ()) |
1496 | update_background (); |
1494 | scr_touch (false); |
|
|
1495 | #endif |
1497 | #endif |
1496 | } |
1498 | } |
1497 | HOOK_INVOKE ((this, HOOK_CONFIGURE_NOTIFY, DT_XEVENT, &ev, DT_END)); |
1499 | HOOK_INVOKE ((this, HOOK_CONFIGURE_NOTIFY, DT_XEVENT, &ev, DT_END)); |
1498 | } |
1500 | } |
1499 | break; |
1501 | break; |
… | |
… | |
1827 | */ |
1829 | */ |
1828 | if (ev.xproperty.atom == xa[XA_XROOTPMAP_ID] |
1830 | if (ev.xproperty.atom == xa[XA_XROOTPMAP_ID] |
1829 | || ev.xproperty.atom == xa[XA_ESETROOT_PMAP_ID]) |
1831 | || ev.xproperty.atom == xa[XA_ESETROOT_PMAP_ID]) |
1830 | { |
1832 | { |
1831 | bgPixmap.set_root_pixmap (); |
1833 | bgPixmap.set_root_pixmap (); |
1832 | bgPixmap.render (); |
1834 | update_background (); |
1833 | } |
1835 | } |
1834 | break; |
1836 | break; |
1835 | } |
1837 | } |
1836 | # endif |
1838 | # endif |
1837 | } |
1839 | } |
… | |
… | |
2793 | rxvt_term::process_csi_seq () |
2795 | rxvt_term::process_csi_seq () |
2794 | { |
2796 | { |
2795 | unicode_t ch, priv, i; |
2797 | unicode_t ch, priv, i; |
2796 | unsigned int nargs, p; |
2798 | unsigned int nargs, p; |
2797 | int n, ndef; |
2799 | int n, ndef; |
2798 | int arg[ESC_ARGS]; |
2800 | int arg[ESC_ARGS] = { }; |
2799 | |
2801 | |
2800 | memset (arg, 0, sizeof (arg)); |
|
|
2801 | nargs = 0; |
2802 | nargs = 0; |
2802 | |
2803 | |
2803 | priv = 0; |
2804 | priv = 0; |
2804 | ch = cmd_getc (); |
2805 | ch = cmd_getc (); |
2805 | if (ch >= '<' && ch <= '?') |
2806 | if (ch >= '<' && ch <= '?') |
… | |
… | |
3428 | if (ISSET_PIXCOLOR (Color_tint)) |
3429 | if (ISSET_PIXCOLOR (Color_tint)) |
3429 | changed = bgPixmap.set_tint (pix_colors_focused [Color_tint]); |
3430 | changed = bgPixmap.set_tint (pix_colors_focused [Color_tint]); |
3430 | else |
3431 | else |
3431 | changed = bgPixmap.unset_tint (); |
3432 | changed = bgPixmap.unset_tint (); |
3432 | if (changed) |
3433 | if (changed) |
3433 | bgPixmap.render (); |
3434 | update_background (); |
3434 | } |
3435 | } |
3435 | |
3436 | |
3436 | break; |
3437 | break; |
3437 | #endif |
3438 | #endif |
3438 | |
3439 | |
… | |
… | |
3467 | if (bgPixmap.set_geometry (str)) |
3468 | if (bgPixmap.set_geometry (str)) |
3468 | changed++; |
3469 | changed++; |
3469 | str = strchr (str, ';'); |
3470 | str = strchr (str, ';'); |
3470 | } |
3471 | } |
3471 | if (changed) |
3472 | if (changed) |
3472 | { |
3473 | update_background (); |
3473 | bgPixmap.render (); |
|
|
3474 | scr_touch (true); |
|
|
3475 | } |
|
|
3476 | } |
3474 | } |
3477 | break; |
3475 | break; |
3478 | #endif |
3476 | #endif |
3479 | |
3477 | |
3480 | case Rxvt_restoreFG: |
3478 | case Rxvt_restoreFG: |