From b9b653584e8622fc5d23e8f761a88b415f2f0167 Mon Sep 17 00:00:00 2001 From: rsc Date: Fri, 10 Mar 2006 00:37:15 +0000 Subject: synergy (paul lalonde) --- src/libdraw/x11-itrans.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'src/libdraw') diff --git a/src/libdraw/x11-itrans.c b/src/libdraw/x11-itrans.c index bc8dc218..538028da 100644 --- a/src/libdraw/x11-itrans.c +++ b/src/libdraw/x11-itrans.c @@ -516,14 +516,18 @@ if(0) fprint(2, "xselect target=%d requestor=%d property=%d selection=%d\n", XChangeProperty(xd, xe->requestor, xe->property, xe->target, 8, PropModeReplace, (uchar*)a, sizeof a); - }else if(xe->target == XA_STRING || xe->target == _x.utf8string || xe->target == _x.text || xe->target == _x.compoundtext){ + }else if(xe->target == XA_STRING + || xe->target == _x.utf8string + || xe->target == _x.text + || xe->target == _x.compoundtext + || ((name = XGetAtomName(xd, xe->target)) && strcmp(name, "text/plain;charset=UTF-8") == 0)){ + /* text/plain;charset=UTF-8 seems nonstandard but is used by Synergy */ /* if the target is STRING we're supposed to reply with Latin1 XXX */ qlock(&clip.lk); XChangeProperty(xd, xe->requestor, xe->property, xe->target, 8, PropModeReplace, (uchar*)clip.buf, strlen(clip.buf)); qunlock(&clip.lk); }else{ - name = XGetAtomName(xd, xe->target); if(strcmp(name, "TIMESTAMP") != 0) fprint(2, "%s: cannot handle selection request for '%s' (%d)\n", argv0, name, (int)xe->target); r.xselection.property = None; -- cgit v1.2.3