Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
N
nx-libs
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
1
Issues
1
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
dimbor
nx-libs
Commits
e89fb895
Unverified
Commit
e89fb895
authored
Jan 05, 2020
by
Mike Gabriel
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'uli42-pr/more_clipboard_improvements' into 3.6.x
Attributes GH PR #877:
https://github.com/ArcticaProject/nx-libs/pull/877
parents
057ce728
30fb45b2
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
33 additions
and
12 deletions
+33
-12
Atoms.c
nx-X11/programs/Xserver/hw/nxagent/Atoms.c
+5
-1
Atoms.h
nx-X11/programs/Xserver/hw/nxagent/Atoms.h
+1
-1
Clipboard.c
nx-X11/programs/Xserver/hw/nxagent/Clipboard.c
+0
-0
Clipboard.h
nx-X11/programs/Xserver/hw/nxagent/Clipboard.h
+2
-3
NXproperty.c
nx-X11/programs/Xserver/hw/nxagent/NXproperty.c
+2
-2
Options.h
nx-X11/programs/Xserver/hw/nxagent/Options.h
+18
-0
Splash.c
nx-X11/programs/Xserver/hw/nxagent/Splash.c
+2
-2
Window.c
nx-X11/programs/Xserver/hw/nxagent/Window.c
+2
-2
Windows.h
nx-X11/programs/Xserver/hw/nxagent/Windows.h
+1
-1
No files found.
nx-X11/programs/Xserver/hw/nxagent/Atoms.c
View file @
e89fb895
...
...
@@ -81,6 +81,9 @@ static char *nxagentAtomNames[NXAGENT_NUMBER_OF_ATOMS + 1] =
"WM_NX_READY"
,
/* 3 */
"MCOPGLOBALS"
,
/* 4 */
"NX_CUT_BUFFER_SERVER"
,
/* 5 */
/* Unfortunately we cannot rename this to NX_SELTRANS_TO_AGENT
because nomachine's nxclient is depending on this
selection */
"TARGETS"
,
/* 6 */
"TEXT"
,
/* 7 */
"NX_AGENT_SIGNATURE"
,
/* 8 */
...
...
@@ -90,7 +93,8 @@ static char *nxagentAtomNames[NXAGENT_NUMBER_OF_ATOMS + 1] =
"UTF8_STRING"
,
/* 12 */
"_NET_WM_STATE"
,
/* 13 */
"_NET_WM_STATE_FULLSCREEN"
,
/* 14 */
"NX_CUT_BUFFER_CLIENT"
,
/* 15 */
"NX_SELTRANS_FROM_AGENT"
,
/* 15 */
"COMPOUND_TEXT"
,
/* 16 */
NULL
,
NULL
};
...
...
nx-X11/programs/Xserver/hw/nxagent/Atoms.h
View file @
e89fb895
...
...
@@ -30,7 +30,7 @@
#include "../../include/window.h"
#include "screenint.h"
#define NXAGENT_NUMBER_OF_ATOMS 1
7
#define NXAGENT_NUMBER_OF_ATOMS 1
8
extern
Atom
nxagentAtoms
[
NXAGENT_NUMBER_OF_ATOMS
];
...
...
nx-X11/programs/Xserver/hw/nxagent/Clipboard.c
View file @
e89fb895
This diff is collapsed.
Click to expand it.
nx-X11/programs/Xserver/hw/nxagent/Clipboard.h
View file @
e89fb895
...
...
@@ -36,18 +36,17 @@ typedef struct _XFixesAgentInfo
int
EventBase
;
int
ErrorBase
;
int
Initialized
;
}
XFixesAgentInfoRec
;
extern
XFixesAgentInfoRec
nxagentXFixesInfo
;
/*
* Create the NX_
CUT_BUFFER_CLI
ENT atom and
* Create the NX_
SELTRANS_FROM_AG
ENT atom and
* initialize the required property to exchange
* data with the X server.
*/
extern
int
nxagentInitClipboard
(
WindowPtr
pWindow
);
extern
Bool
nxagentInitClipboard
(
WindowPtr
pWindow
);
/*
* Called whenever a client or a window is
...
...
nx-X11/programs/Xserver/hw/nxagent/NXproperty.c
View file @
e89fb895
...
...
@@ -94,7 +94,7 @@ nxagentWMStateRec;
#undef DEBUG
#ifdef NXAGENT_CLIPBOARD
extern
WindowPtr
nxagentGetClipboardWindow
(
Atom
,
WindowPtr
);
extern
WindowPtr
nxagentGetClipboardWindow
(
Atom
);
#endif
#ifdef NXAGENT_ARTSD
...
...
@@ -135,7 +135,7 @@ ProcChangeProperty(ClientPtr client)
REQUEST_FIXED_SIZE
(
xChangePropertyReq
,
totalSize
);
#ifdef NXAGENT_CLIPBOARD
pWin
=
nxagentGetClipboardWindow
(
stuff
->
property
,
NULL
);
pWin
=
nxagentGetClipboardWindow
(
stuff
->
property
);
if
(
pWin
==
NULL
)
#endif
...
...
nx-X11/programs/Xserver/hw/nxagent/Options.h
View file @
e89fb895
...
...
@@ -49,6 +49,24 @@ typedef enum _BackingStoreMode
}
BackingStoreMode
;
/* since nx 2.0.0-32 clipboard data exchange can be limited. Client
here means "nxclient":
Enable or disable copy and paste operations from the user's desktop
to the NX session or vice versa. This option can take four values:
client The content copied on the client can be pasted inside the
NX session.
server The content copied inside the NX session can be pasted
on the client.
both The copy & paste operations are allowed both between the
client and the NX session and viceversa.
none The copy&paste operations between the client and the NX
session are never allowed.
*/
typedef
enum
_ClipboardMode
{
ClipboardBoth
,
...
...
nx-X11/programs/Xserver/hw/nxagent/Splash.c
View file @
e89fb895
...
...
@@ -412,10 +412,10 @@ void nxagentRemoveSplashWindow(void)
#ifdef TEST
fprintf
(
stderr
,
"%s: setting the ownership of %s (%d) on window 0x%lx
\n
"
,
__func__
"NX_CUT_BUFFER_SERVER"
,
(
int
)
server
Cu
tProperty
,
nxagentWindow
(
screenInfo
.
screens
[
0
]
->
root
));
"NX_CUT_BUFFER_SERVER"
,
(
int
)
server
TransToAgen
tProperty
,
nxagentWindow
(
screenInfo
.
screens
[
0
]
->
root
));
#endif
XSetSelectionOwner
(
nxagentDisplay
,
server
Cu
tProperty
,
XSetSelectionOwner
(
nxagentDisplay
,
server
TransToAgen
tProperty
,
nxagentWindow
(
screenInfo
.
screens
[
0
]
->
root
),
CurrentTime
);
}
...
...
nx-X11/programs/Xserver/hw/nxagent/Window.c
View file @
e89fb895
...
...
@@ -2602,7 +2602,7 @@ void nxagentMapDefaultWindows(void)
* to notify of the agent start.
*/
XSetSelectionOwner
(
nxagentDisplay
,
server
Cu
tProperty
,
XSetSelectionOwner
(
nxagentDisplay
,
server
TransToAgen
tProperty
,
nxagentDefaultWindows
[
i
],
CurrentTime
);
}
...
...
@@ -2802,7 +2802,7 @@ Bool nxagentReconnectAllWindows(void *p0)
fprintf
(
stderr
,
"nxagentReconnectAllWindows: All windows reconfigured.
\n
"
);
#endif
if
(
nxagentInitClipboard
(
screenInfo
.
screens
[
0
]
->
root
)
==
-
1
)
if
(
!
nxagentInitClipboard
(
screenInfo
.
screens
[
0
]
->
root
)
)
{
#ifdef WARNING
fprintf
(
stderr
,
"nxagentReconnectAllWindows: WARNING! Couldn't initialize the clipboard.
\n
"
);
...
...
nx-X11/programs/Xserver/hw/nxagent/Windows.h
View file @
e89fb895
...
...
@@ -178,7 +178,7 @@ do\
WindowPtr
nxagentWindowPtr
(
Window
window
);
#ifdef XlibAtom
extern
XlibAtom
server
Cu
tProperty
;
extern
XlibAtom
server
TransToAgen
tProperty
;
#endif
/*
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment