From fa294cc020d285df6286195fd435c5c386257711 Mon Sep 17 00:00:00 2001 From: Ulrich Sibiller Date: Tue, 4 Nov 2014 22:24:19 +0100 Subject: [PATCH] Add 207_nxagent_fix-xfixes-selection.full.patch. Fix selection handling when XFIXES is enabled. (Fixes: #585). --- debian/changelog | 4 +++ .../207_nxagent_fix-xfixes-selection.full.patch | 32 ++++++++++++++++++++++ debian/patches/series | 1 + 3 files changed, 37 insertions(+) create mode 100644 debian/patches/207_nxagent_fix-xfixes-selection.full.patch diff --git a/debian/changelog b/debian/changelog index 766db52..0356bf8 100644 --- a/debian/changelog +++ b/debian/changelog @@ -37,6 +37,10 @@ nx-libs (2:3.5.0.28-0x2go1) UNRELEASED; urgency=medium * Add 400_nxcomp-version.full+lite.patch. Allow 4-digit version comparison during NX session handshake. (Fixes: #610). + [ Ulrich Sibiller ] + * Add 207_nxagent_fix-xfixes-selection.full.patch. Fix selection handling + when XFIXES is enabled. (Fixes: #585) + -- Mike Gabriel Mon, 30 Jun 2014 15:05:54 +0200 nx-libs (2:3.5.0.27-0x2go1) unstable; urgency=medium 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 0000000..0ee74e5 --- /dev/null +++ b/debian/patches/207_nxagent_fix-xfixes-selection.full.patch @@ -0,0 +1,32 @@ +Description: Fix XFIXES selection handling (copy and paste via middle + mouse button). 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 + +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; + } diff --git a/debian/patches/series b/debian/patches/series index 3a37ac5..4e792a2 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -50,6 +50,7 @@ 204_nxagent_repaint-solidpict.full.patch 205_nxagent_refresh-adsl.full.patch 206_nxagent_clipboard-as-nxoption.full.patch +207_nxagent_fix-xfixes-selection.full.patch 209_x2goagent_add-man-page.full.patch 210_nxagent_save_session_state.full.patch 210_nxcomp_save_session_state.full+lite.patch -- 1.9.1