aboutsummaryrefslogtreecommitdiff
path: root/debian/patches/207_nxagent_fix-xfixes-selection.full.patch
diff options
context:
space:
mode:
Diffstat (limited to 'debian/patches/207_nxagent_fix-xfixes-selection.full.patch')
-rw-r--r--debian/patches/207_nxagent_fix-xfixes-selection.full.patch33
1 files changed, 33 insertions, 0 deletions
diff --git a/debian/patches/207_nxagent_fix-xfixes-selection.full.patch b/debian/patches/207_nxagent_fix-xfixes-selection.full.patch
new file mode 100644
index 000000000..712b36914
--- /dev/null
+++ b/debian/patches/207_nxagent_fix-xfixes-selection.full.patch
@@ -0,0 +1,33 @@
+Description: Fix XFIXES selection handling (copy and paste via middle mouse button).
+Abstract:
+ 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 Bug
+ #585.
+Author: Ulrich Sibiller <uli42@gmx.de>
+
+Index: nx-libs/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c
+===================================================================
+--- nx-libs.orig/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c 2014-11-04 22:42:50.893569624 +0100
++++ nx-libs/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c 2014-11-04 22:42:50.893569624 +0100
+@@ -1556,10 +1556,14 @@
+ 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;
+ }