tFixing the clipboard copying to st itself. - st - [fork] customized build of st, the simple terminal (HTM) git clone git://src.adamsgaard.dk/st (DIR) Log (DIR) Files (DIR) Refs (DIR) README (DIR) LICENSE --- (DIR) commit 57f39defaf3f84b5d9efb3e7a8494cc7ff09e7af (DIR) parent 3036051fb18addd8ac15eac9e0ef3ee6aeb8bbc6 (HTM) Author: Christoph Lohmann <20h@r-36.net> Date: Sun, 20 Jan 2013 17:12:41 +0100 Fixing the clipboard copying to st itself. Diffstat: M st.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) --- (DIR) diff --git a/st.c b/st.c t@@ -793,6 +793,7 @@ void selclear(XEvent *e) { void selrequest(XEvent *e) { + fprintf(stderr, "selrequest\n"); XSelectionRequestEvent *xsre; XSelectionEvent xev; Atom xa_targets, string; t@@ -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; t@@ -842,6 +844,7 @@ xsetsel(char *str) { void brelease(XEvent *e) { + fprintf(stderr, "brelease\n"); struct timeval now; if(IS_SET(MODE_MOUSE)) { t@@ -2479,6 +2482,7 @@ xzoom(const Arg *arg) void xinit(void) { XSetWindowAttributes attrs; + XGCValues gcvalues; Cursor cursor; Window parent; int sw, sh, major, minor; t@@ -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); t@@ -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); } } t@@ -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); }