st

personal fork of st
git clone git://git.alexkarle.com.com/st
Log | Files | Refs | README | LICENSE

commit 57f39defaf3f84b5d9efb3e7a8494cc7ff09e7af (patch)
parent 3036051fb18addd8ac15eac9e0ef3ee6aeb8bbc6
Author: Christoph Lohmann <20h@r-36.net>
Date:   Sun, 20 Jan 2013 17:12:41 +0100

Fixing the clipboard copying to st itself.

Diffstat:
Mst.c | 11+++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/st.c b/st.c @@ -793,6 +793,7 @@ void selclear(XEvent *e) { void selrequest(XEvent *e) { + fprintf(stderr, "selrequest\n"); XSelectionRequestEvent *xsre; XSelectionEvent xev; Atom xa_targets, string; @@ -828,6 +829,7 @@ selrequest(XEvent *e) { void xsetsel(char *str) { + fprintf(stderr, "xsetsel: %s\n", str); /* register the selection for both the clipboard and the primary */ Atom clipboard; @@ -842,6 +844,7 @@ xsetsel(char *str) { void brelease(XEvent *e) { + fprintf(stderr, "brelease\n"); struct timeval now; if(IS_SET(MODE_MOUSE)) { @@ -2479,6 +2482,7 @@ xzoom(const Arg *arg) void xinit(void) { XSetWindowAttributes attrs; + XGCValues gcvalues; Cursor cursor; Window parent; int sw, sh, major, minor; @@ -2544,7 +2548,10 @@ xinit(void) { usedbe = True; } else { */ - dc.gc = XCreateGC(xw.dpy, parent, 0, 0); + memset(&gcvalues, 0, sizeof(gcvalues)); + gcvalues.graphics_exposures = False; + dc.gc = XCreateGC(xw.dpy, parent, GCGraphicsExposures, + &gcvalues); xw.buf = XCreatePixmap(xw.dpy, xw.win, xw.w, xw.h, DefaultDepth(xw.dpy, xw.scr)); XSetForeground(xw.dpy, dc.gc, 0); @@ -2872,7 +2879,6 @@ draw(void) { XCopyArea(xw.dpy, xw.buf, xw.win, dc.gc, 0, 0, xw.w, xw.h, 0, 0); XSetForeground(xw.dpy, dc.gc, 0); - XSync(xw.dpy, False); } } @@ -3169,6 +3175,7 @@ run(void) { XNextEvent(xw.dpy, &ev); if(XFilterEvent(&ev, None)) continue; + fprintf(stderr, "ev.type = %d\n", ev.type); if(handler[ev.type]) (handler[ev.type])(&ev); }