diff options
author | Mike Gabriel <mike.gabriel@das-netzwerkteam.de> | 2015-02-10 19:00:06 +0100 |
---|---|---|
committer | Mike Gabriel <mike.gabriel@das-netzwerkteam.de> | 2015-02-10 19:40:43 +0100 |
commit | 9674c43460e69eb88fa97f6b69911d61d0f767cd (patch) | |
tree | 51ab8a87d8d1e1c1c6b59af3d929ad18a46f4e65 /nx-X11/programs/Xserver/hw/nxagent | |
parent | c91fe980b952d4d357a291fcda89f35ea1a83993 (diff) | |
download | nx-libs-9674c43460e69eb88fa97f6b69911d61d0f767cd.tar.gz nx-libs-9674c43460e69eb88fa97f6b69911d61d0f767cd.tar.bz2 nx-libs-9674c43460e69eb88fa97f6b69911d61d0f767cd.zip |
UTF-8 Clipboard copying (106_nxagent_utf8-copy-clipboard.full.patch).
Enable UTF-8 clipboard copies.
Originally contributed by FreeNX Team (dimbor).
Diffstat (limited to 'nx-X11/programs/Xserver/hw/nxagent')
-rw-r--r-- | nx-X11/programs/Xserver/hw/nxagent/Clipboard.c | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c b/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c index 2742e147f..d17f154cd 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c +++ b/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c @@ -166,6 +166,8 @@ Bool nxagentValidServerTargets(Atom target) if (target == XA_STRING) return True; if (target == serverTEXT) return True; + /* by dimbor */ + if (target == serverUTF8_STRING) return True; return False; } @@ -402,6 +404,11 @@ FIXME: Do we need this? lastServerProperty = X->xselectionrequest.property; lastServerRequestor = X->xselectionrequest.requestor; lastServerTarget = X->xselectionrequest.target; + + /* by dimbor */ + if (lastServerTarget != XA_STRING) + lastServerTarget = serverUTF8_STRING; + lastServerTime = X->xselectionrequest.time; x.u.u.type = SelectionRequest; @@ -424,11 +431,12 @@ FIXME: Do we need this? x.u.selectionRequest.selection = CurrentSelections[i].selection; - /* - * x.u.selectionRequest.target = X->xselectionrequest.target; - */ + /* by dimbor (idea from zahvatov) */ + if (X->xselectionrequest.target != XA_STRING) + x.u.selectionRequest.target = clientUTF8_STRING; + else + x.u.selectionRequest.target = XA_STRING; - x.u.selectionRequest.target = XA_STRING; x.u.selectionRequest.property = clientCutProperty; (void) TryClientEvents(lastSelectionOwner[i].client, &x, 1, |