diff options
Diffstat (limited to 'x.c')
-rw-r--r-- | x.c | 12 |
1 files changed, 7 insertions, 5 deletions
@@ -1419,13 +1419,15 @@ xdrawcursor(int cx, int cy, Glyph g, int ox, int oy, Glyph og) g.mode &= ATTR_BOLD|ATTR_ITALIC|ATTR_UNDERLINE|ATTR_STRUCK|ATTR_WIDE; if (selected(cx, cy)) { - g.bg = defaultrcs; - g.fg = defaultfg; + drawcol = dc.col[g.bg]; } else { - g.bg = defaultcs; - g.fg = defaultbg; + g.mode |= ATTR_REVERSE; + + if (g.mode & ATTR_BOLD && BETWEEN(g.fg, 0, 7)) + drawcol = dc.col[g.fg + 8]; + else + drawcol = dc.col[g.fg]; } - drawcol = dc.col[g.bg]; if (IS_SET(MODE_REVERSE)) { drawcol.color.red = ~drawcol.color.red; |