2 Commits

Author SHA1 Message Date
8444a15bc9 Added dynamic-cursor-color v0.9 patch 2023-06-27 22:31:03 +02:00
71d1f725b3 feat/clipboard (#6)
Reviewed-on: #6
2023-06-27 22:30:31 +02:00

23
x.c
View File

@ -689,6 +689,8 @@ setsel(char *str, Time t)
XSetSelectionOwner(xw.dpy, XA_PRIMARY, xw.win, t); XSetSelectionOwner(xw.dpy, XA_PRIMARY, xw.win, t);
if (XGetSelectionOwner(xw.dpy, XA_PRIMARY) != xw.win) if (XGetSelectionOwner(xw.dpy, XA_PRIMARY) != xw.win)
selclear(); selclear();
xclipcopy();
} }
void void
@ -712,7 +714,9 @@ brelease(XEvent *e)
if (mouseaction(e, 1)) if (mouseaction(e, 1))
return; return;
if (btn == Button1) if (btn == Button3)
selpaste(NULL);
else if (btn == Button1)
mousesel(e, 1); mousesel(e, 1);
} }
@ -1537,6 +1541,7 @@ void
xdrawcursor(int cx, int cy, Glyph g, int ox, int oy, Glyph og) xdrawcursor(int cx, int cy, Glyph g, int ox, int oy, Glyph og)
{ {
Color drawcol; Color drawcol;
XRenderColor colbg;
/* remove the old cursor */ /* remove the old cursor */
if (selected(ox, oy)) if (selected(ox, oy))
@ -1565,12 +1570,22 @@ xdrawcursor(int cx, int cy, Glyph g, int ox, int oy, Glyph og)
if (selected(cx, cy)) { if (selected(cx, cy)) {
g.fg = defaultfg; g.fg = defaultfg;
g.bg = defaultrcs; g.bg = defaultrcs;
} else { } else if (!(og.mode & ATTR_REVERSE)) {
g.fg = defaultbg; unsigned long col = g.bg;
g.bg = defaultcs; 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 */ /* draw the new one */
if (IS_SET(MODE_FOCUSED)) { if (IS_SET(MODE_FOCUSED)) {