aboutsummaryrefslogtreecommitdiff
path: root/nx-X11
diff options
context:
space:
mode:
authorUlrich Sibiller <uli42@gmx.de>2015-02-10 19:36:57 +0100
committerMike Gabriel <mike.gabriel@das-netzwerkteam.de>2015-02-10 19:40:56 +0100
commit57a58c73cfe91c94d8a18a6e823bc687fab45d8f (patch)
tree8003a62350a786c771f0a931bbd9fe43929a5244 /nx-X11
parent4ef611eea9b10ed5851abb990835ce73bbac6a9f (diff)
downloadnx-libs-57a58c73cfe91c94d8a18a6e823bc687fab45d8f.tar.gz
nx-libs-57a58c73cfe91c94d8a18a6e823bc687fab45d8f.tar.bz2
nx-libs-57a58c73cfe91c94d8a18a6e823bc687fab45d8f.zip
Fix XFIXES selection handling (copy and paste via middle mouse button) (207_nxagent_fix-xfixes-selection.full.patch).
When nxagent has the XFIXES extension enabled copy and paste from outside applications to applications within the session that rely on XFixesSelectSelectionInput (e.g. qt applications like konsole) did never receive any notifications because the nxagent did not register itself at the real X server to receive them. Fixes X2Go Bug #585 (http://bugs.x2go.org/585).
Diffstat (limited to 'nx-X11')
-rw-r--r--nx-X11/programs/Xserver/hw/nxagent/Clipboard.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c b/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c
index 2e409e41c..557798e7f 100644
--- a/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c
+++ b/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c
@@ -1556,10 +1556,14 @@ int nxagentInitClipboard(WindowPtr pWin)
fprintf(stderr, "nxagentInitClipboard: Registering for XFixesSelectionNotify events.\n");
#endif
- XFixesSelectSelectionInput(nxagentDisplay, iWindow, nxagentClipboardAtom,
- XFixesSetSelectionOwnerNotifyMask |
- XFixesSelectionWindowDestroyNotifyMask |
- XFixesSelectionClientCloseNotifyMask);
+ for (i = 0; i < nxagentMaxSelections; i++)
+ {
+ XFixesSelectSelectionInput(nxagentDisplay, iWindow,
+ lastSelectionOwner[i].selection,
+ XFixesSetSelectionOwnerNotifyMask |
+ XFixesSelectionWindowDestroyNotifyMask |
+ XFixesSelectionClientCloseNotifyMask);
+ }
nxagentXFixesInfo.Initialized = 1;
}