… | |
… | |
3395 | void |
3395 | void |
3396 | rxvt_term::process_color_seq (int report, int color, const char *str, char resp) |
3396 | rxvt_term::process_color_seq (int report, int color, const char *str, char resp) |
3397 | { |
3397 | { |
3398 | if (str[0] == '?' && !str[1]) |
3398 | if (str[0] == '?' && !str[1]) |
3399 | { |
3399 | { |
|
|
3400 | if (!IN_RANGE_INC (color, minCOLOR, maxTermCOLOR)) |
|
|
3401 | return; |
|
|
3402 | |
3400 | rgba c; |
3403 | rgba c; |
3401 | pix_colors_focused[color].get (c); |
3404 | pix_colors_focused[color].get (c); |
|
|
3405 | color -= minCOLOR; |
3402 | |
3406 | |
3403 | #if XFT |
3407 | #if XFT |
3404 | if (c.a != rgba::MAX_CC) |
3408 | if (c.a != rgba::MAX_CC) |
3405 | tt_printf ("\033]%d;rgba:%04x/%04x/%04x/%04x%c", report, c.r, c.g, c.b, c.a, resp); |
3409 | tt_printf ("\033]%d;%d;rgba:%04x/%04x/%04x/%04x%c", report, color, c.r, c.g, c.b, c.a, resp); |
3406 | else |
3410 | else |
3407 | #endif |
3411 | #endif |
3408 | tt_printf ("\033]%d;rgb:%04x/%04x/%04x%c", report, c.r, c.g, c.b, resp); |
3412 | tt_printf ("\033]%d;%d;rgb:%04x/%04x/%04x%c", report, color, c.r, c.g, c.b, resp); |
3409 | } |
3413 | } |
3410 | else |
3414 | else |
3411 | set_window_color (color, str); |
3415 | set_window_color (color, str); |
3412 | } |
3416 | } |
3413 | |
3417 | |