apply dynamic-cursor-color patch

Makes the cursor match the underlying text. Very pretty.
x11
Ryan 2023-09-11 22:28:03 -04:00
parent 611b6dde7e
commit a24deef995
Signed by: ryan
GPG Key ID: 7D7E2E94267DAD95
1 changed files with 15 additions and 4 deletions

19
x.c
View File

@ -1524,6 +1524,7 @@ void
xdrawcursor(int cx, int cy, Glyph g, int ox, int oy, Glyph og)
{
Color drawcol;
XRenderColor colbg;
/* remove the old cursor */
if (selected(ox, oy))
@ -1552,11 +1553,21 @@ xdrawcursor(int cx, int cy, Glyph g, int ox, int oy, Glyph og)
if (selected(cx, cy)) {
g.fg = defaultfg;
g.bg = defaultrcs;
} else {
g.fg = defaultbg;
g.bg = defaultcs;
} else if (!(og.mode & ATTR_REVERSE)) {
unsigned long col = g.bg;
g.bg = g.fg;
g.fg = col;
}
if (IS_TRUECOL(g.bg)) {
colbg.alpha = 0xffff;
colbg.red = TRUERED(g.bg);
colbg.green = TRUEGREEN(g.bg);
colbg.blue = TRUEBLUE(g.bg);
XftColorAllocValue(xw.dpy, xw.vis, xw.cmap, &colbg, &drawcol);
} else {
drawcol = dc.col[g.bg];
}
drawcol = dc.col[g.bg];
}
/* draw the new one */