1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
|
Description: X2Go icon when run with x2goagent flavour
Depending on the binary name of the agent either nxagent.xpm
or x2go.xpm is used as window icon.
Forwarded: not-needed
Author: Oleksandr Shneyder <oleksandr.shneyder@obviously-nice.de>
Last-Update: 2012-01-11
--- a/nx-X11/programs/Xserver/hw/nxagent/Display.c
+++ b/nx-X11/programs/Xserver/hw/nxagent/Display.c
@@ -77,6 +77,7 @@ is" without express or implied warranty.
#include "NXlib.h"
#include NXAGENT_ICON_NAME
+#include X2GOAGENT_ICON_NAME
/*
* Set here the required log level.
@@ -1941,12 +1942,29 @@ Bool nxagentMakeIcon(Display *display, P
Bool success = False;
XlibPixmap IconPixmap;
XlibPixmap IconShape;
+ char* agent_icon_name;
+ char* agentIconData;
- snprintf(default_path, PATH_MAX-1, "/usr/NX/share/images/%s", NXAGENT_ICON_NAME);
+ /*
+ * selecting x2go icon when running as X2Go agent
+ */
+ if(nxagentX2go)
+ {
+ agent_icon_name=X2GOAGENT_ICON_NAME;
+ agentIconData=x2goagentIconData;
+ }
+ else
+ {
+ agent_icon_name=NXAGENT_ICON_NAME;
+ agentIconData=nxagentIconData;
+ }
+
+
+ snprintf(default_path, PATH_MAX-1, "/usr/NX/share/images/%s", agent_icon_name);
if ((icon_fp = fopen(default_path, "r")) == NULL)
{
- icon_fp = nxagentLookForIconFile(NXAGENT_ICON_NAME, "r", icon_path);
+ icon_fp = nxagentLookForIconFile(agent_icon_name, "r", icon_path);
if (icon_fp != NULL)
{
@@ -1985,7 +2003,7 @@ Bool nxagentMakeIcon(Display *display, P
{
status = XpmCreatePixmapFromData(display,
DefaultRootWindow(display),
- nxagentIconData,
+ agentIconData,
&IconPixmap,
&IconShape,
NULL);
--- a/nx-X11/programs/Xserver/hw/nxagent/Icons.h
+++ b/nx-X11/programs/Xserver/hw/nxagent/Icons.h
@@ -24,6 +24,8 @@
#define NXAGENT_ICON_NAME "nxagent.xpm"
+#define X2GOAGENT_ICON_NAME "x2go.xpm"
+
#define NXAGENT_PLACEHOLDER_NAME "nxmissing.xpm"
#endif /* __Icons_H__ */
--- /dev/null
+++ b/nx-X11/programs/Xserver/hw/nxagent/x2go.xpm
@@ -0,0 +1,148 @@
+/* XPM */
+static char *x2goagentIconData[]={
+"128 128 17 1",
+". c None",
+"m c #323232",
+"l c #323232",
+"f c #323232",
+"e c #323232",
+"o c #323232",
+"# c #323232",
+"h c #323232",
+"i c #323232",
+"n c #323232",
+"d c #323232",
+"a c #323232",
+"g c #323232",
+"j c #323232",
+"b c #323232",
+"k c #323232",
+"c c #323232",
+".....#abccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbde.....",
+"...fbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccgf...",
+"..#ccccaheeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeijccckf..",
+".ecccgl..................................................................................................................ejcckf.",
+".bccd.....................................................................................................................mdccg.",
+"#cca.......................................................................................................................mjcce",
+"gckm........................................................................................................................eccd",
+"ccn..........................................................................................................................jcb",
+"cce..........................................................................................................................icc",
+"ccm..........................................................................................................................ecc",
+"cc...........................................................................................................................ecc",
+"cc...........................................................................................................................ecc",
+"cc...........................................................................................................................ecc",
+"cc...........................................................................................................................ecc",
+"cc............................................meeee..........................................................................ecc",
+"cc.........eeeeeeeeoiiiiiiiinggggggggjccccccccccccc....#ggggggggggggggggggggggggggggf.............ggggggggggggggggggggggf....ecc",
+"cc....meeeeoiiiiiiiinggggggggjccccccccccccccccccccc....icccccccccccccccccccccccccccce.............cccccccccccccccccccccce....ecc",
+"cc....................................meeeeeeeeoiii....icccccccccccccccccccccccccccce.............cccccccccccccccccccccce....ecc",
+"cc.......................................................menbccccccccccccccccccbhe..................logccccccccccccghe.......ecc",
+"cc...........................................................iccccccccccccccccdm.......................#cccccccccke..........ecc",
+"cc..............................................lee...........#cccccccccccccckm.........................jccccccckm...........ecc",
+"cc........feeeeeeeeoiiiiiiiiiaggggggggjcccccccccccc............icccccccccccccd..........................icccccccf............ecc",
+"cc....meeeeeoiiiiiiiinggggggggjcccccccccccccccccccciiiiii#m.....jcccccccccccci..........................icccccci.............ecc",
+"cc......................................eeeeeeeeeiiiiiiiiigl....eccccccccccccd..........................dcccccj..............ecc",
+"cc...............................................................dcccccccccccj..........................bccccce..............ecc",
+"cc...............................................................lccccccccccccl........................lccccca...............ecc",
+"cc.............................................meeeeeeee#iiiie....dccccccccccch........................icccccl...............ecc",
+"cc.........meeeeeeeeoiiiiiiiinggggggggjccccccccccccccccccccccb....ecccccccccccb........................bccccn................ecc",
+"cc....meeeeiiiiiiiiiaggggggggbcccccccccccccccccccccccccccccccc#....gccccccccccco......................#cccckm................ecc",
+"cc....................................meeeeeeeeeiiiiiiiiiaggggd....#cccccccccccg......................bcccci.................ecc",
+"cc..................................................................bcccccccccccf....................#cccckm.................ecc",
+"cc..................................................................hcccccccccccd...................mkcccci..................ecc",
+"cc............................................meeeeeeeeoiiiiiiiil...mkcccccccccccl..................icccckm..................ecc",
+"cc.........eeeeeeeeoiiiiiiiinggggggggjccccccccccccccccccccccccccn....dccccccccccci.................mkcccci...................ecc",
+"cc....meeeeeiiiiiiiiiaggggggggbccccccccccccccccccccccccccccccccckm...lccccccccccck.................icccckm...................ecc",
+"cc.....................................leeeeeeeeoiiiiiiiiigggggggo....accccccccccc#...............mkcccch....................ecc",
+"cc....................................................................ecccccccccccb...............iccccb.....................ecc",
+"cc.....................................................................jccccccccccce.............mkcccc#.....................ecc",
+"cc.............................................meeeeeeeeehiiiiiiii#....#ccccccccccca.............nccccb......................ecc",
+"cc........feeeeeeee#iiiiiiiiigggggggggkccccccccccccccccccccccccccccl....kcccccccccccl...........lccccc#......................ecc",
+"cc....meeeeeoiiiiiiiiigggggggggkcccccccccccccccccccccccccccccccccccd....icccccccccccd...........dccccb.......................ecc",
+"cc......................................leeeeeeeeoiiiiiiiingggggggga....mccccccccccckm.........lccccc#.......................ecc",
+"cc.......................................................................dccccccccccch.........dccccb........................ecc",
+"cc.......................................................................lcccccccccccb........lccccc#........................ecc",
+"cc.............................................meeeeeeeeoiiiiiiiingggo....gccccccccccc#.......dccccg.........................ecc",
+"cc.........meeeeeeeeoiiiiiiiinggggggggjccccccccccccccccccccccccccccccg....occcccccccccg......lccccce.........................ecc",
+"cc....meeeeiiiiiiiiiaggggggggbcccccccccccccccccccccccccccccccccccccccce....bccccccccccce.....gccccg..........................ecc",
+"cc....................................meeeeeeeeeiiiiiiiiigggggggggkcccd....#cccccccccccd....eccccce..........................ecc",
+"cc.........................................................................mkcccccccccccl...gccccg...........................ecc",
+"cc..........................................................................nccccccccccci..eccccce...........................ecc",
+"cc............................................meeeeeeeeoiiiiiiiingggggggm...lccccccccccckm.gccccg............................ecc",
+"cc.........eeeeeeeeoiiiiiiiinggggggggjcccccccccccccccccccccccccccccccccc#....dccccccccccc#eccccce............................ecc",
+"cc....meeeeeiiiiiiiiiaggggggggkcccccccccccccccccccccccccccccccccccccccccb....ecccccccccccbgccccg.............................ecc",
+"cc.....................................leeeeeeeeoiiiiiiiiigggggggggkccccco....gccccccccccccccccl.............................ecc",
+"cc............................................................................#cccccccccccccccd..............................ecc",
+"cc.............................................................................bccccccccccccccl..............................ecc",
+"cc.............................................leeeeeeeeeiiiiiiiiiagggggggi....icccccccccccccd...............................ecc",
+"cc........feeeeeeee#iiiiiiiingggggggggkccccccccccccccccccccccccccccccccccckm...mkccccccccccccl...............................ecc",
+"cc....meeeeeoiiiiiiiiigggggggggkccccccccccccccccccccccccccccccccccccccccccci....dccccccccccca................................ecc",
+"cc......................................leeeeeeeeoiiiiiiiiigggggggggccccccck....lccccccccccckm...............................ecc",
+"cc...............................................................................accccccccccc#...............................ecc",
+"cc...............................................................................ecccccccccccb...............................ecc",
+"cc............................................leeeeeeeeeiiiiiiiiiaggggggggbcce....bccccccccccce..............................ecc",
+"cc.......feeeeeeee#iiiiiiiiigggggggggkcccccccccccccccccccccccccccccccccccccccd....#cccccccccccg..............................ecc",
+"cc....meeeeeeoiiiiiiiingggggggggccccccccccccccccccccccccccccccccccccccccccccccl....kcccccccccccl.............................ecc",
+"cc.......................................feeeeeeeehiiiiiiiidggggggggbccccccccci....ncccccccccccd.............................ecc",
+"cc...........................................................................mm....bccccccccccccm............................ecc",
+"cc................................................................................#ccccccccccccci............................ecc",
+"cc..........................................leeeeeeee#iiiiiiiidggggggggbcccccl....bccccccccccccck............................ecc",
+"cc......feeeeeeeehiiiiiiiiaggggggggkccccccccccccccccccccccccccccccccccccccccd....#ccccccccccccccc#...........................ecc",
+"cc....meeeeeee#iiiiiiiidggggggggjcccccccccccccccccccccccccccccccccccccccccccl....bcccccccccccccccb...........................ecc",
+"cc.......................................meeeeeeeeeiiiiiiiiigggggggggkcccccd....#cccccbccccccccccce..........................ecc",
+"cc..............................................................................bccccdhcccccccccccg..........................ecc",
+"cc.............................................................................#ccccclmkcccccccccccl.........................ecc",
+"cc..........................................meeeeeeeeeiiiiiiiiiaggggggggbkm....bccccd..ncccccccccccd.........................ecc",
+"cc.....leeeeeeeeoiiiiiiiiigggggggggkccccccccccccccccccccccccccccccccccccci....hcccckl..lccccccccccccm........................ecc",
+"cc....meeeeeeeehiiiiiiiidggggggggbcccccccccccccccccccccccccccccccccccccckm...mkcccci....dccccccccccci........................ecc",
+"cc........................................leeeeeeee#iiiiiiiinggggggggjcci....icccckm....eccccccccccck........................ecc",
+"cc..........................................................................mkcccci......gccccccccccc#.......................ecc",
+"cc..........................................................................icccckm......#cccccccccccb.......................ecc",
+"cc.........................................leeeeeeeeoiiiiiiiiigggggggga....mkcccci........bccccccccccce......................ecc",
+"cc....meeeeeeeeoiiiiiiiiigggggggggkccccccccccccccccccccccccccccccccccci....icccckm........hcccccccccccg......................ecc",
+"cc.....feeeeeeeehiiiiiiiiaggggggggkcccccccccccccccccccccccccccccccccckm...mkcccci.........mkcccccccccccl.....................ecc",
+"cc.........................................feeeeeeeehiiiiiiiiagggggggh....icccckm..........icccccccccccd.....................ecc",
+"cc.......................................................................mkcccci...........lccccccccccccm....................ecc",
+"cc.......................................................................icccckm............dccccccccccci....................ecc",
+"cc...........................................eeeeeeeeehiiiiiiiidggga....mkcccci.............fccccccccccck....................ecc",
+"cc......feeeeeeee#iiiiiiiingggggggggccccccccccccccccccccccccccccccci....iccccb...............gccccccccccc#...................ecc",
+"cc....meeeeeeeoiiiiiiiiigggggggggbcccccccccccccccccccccccccccccccckm...mkcccc#...............occcccccccccb...................ecc",
+"cc........................................meeeeeeeeeiiiiiiiiidgggg#....iccccb.................bccccccccccce..................ecc",
+"cc....................................................................mkcccc#.................#cccccccccccg..................ecc",
+"cc....................................................................iccccb..................mkcccccccccccl.................ecc",
+"cc..........................................eeeeeeeeeiiiiiiiiiaga....mkcccc#...................icccccccccccd.................ecc",
+"cc.....leeeeeeee#iiiiiiiinggggggggjccccccccccccccccccccccccccccci....iccccb....................lccccccccccccm................ecc",
+"cc....meeeeeeee#iiiiiiiiigggggggggkcccccccccccccccccccccccccccckm...mkcccc#.....................dccccccccccci................ecc",
+"cc.........................................leeeeeeeeoiiiiiiiiiah....iccccb......................lccccccccccck................ecc",
+"cc.................................................................mkcccc#.......................gccccccccccc#...............ecc",
+"cc.................................................................dccccj........................ecccccccccccj...............ecc",
+"cc..........................................leeeeeeeeeiiiiiiih....lccccce.........................bccccccccccce..............ecc",
+"cc....meeeeeeeeeiiiiiiiiidgggggggggcccccccccccccccccccccccccci....dccccg..........................#ccccccccccca..............ecc",
+"cc.....feeeeeeeeiiiiiiiinggggggggbcccccccccccccccccccccccccckm...lccccce...........................kcccccccccccl.............ecc",
+"cc........................................leeeeeeeehiiiiiiiih....dccccg............................ncccccccccccd.............ecc",
+"cc..............................................................lccccce............................fccccccccccccf............ecc",
+"cc..............................................................dccccb..............................jcccccccccccg............ecc",
+"cc.........................................meeeeeeeeoiiiiil....lcccccn..............................icccccccccccce...........ecc",
+"cc......feeeeeeeehiiiiiiiigggggggggccccccccccccccccjgggggo.....gccccc#..............................eccccccccccccbm..........ecc",
+"cc....meeeeeeeoiiiiiiiiidgggggggggccccccccccccccccc...........hcccccco...............................cccccccccccccn..........ecc",
+"cc.........................................leeeeeee..........ecccccccn..............................lcccccccccccccc#.........ecc",
+"cc..........................................................#kccccccckf.............................nccccccccccccccc#........ecc",
+"cc........................................................ldcccccccccck#m.........................lncccccccccccccccccdl......ecc",
+"cc.........................................feeeeeee....ogjcccccccccccccccggi..................oggbcccccccccccccccccccccja....ecc",
+"cc.....leeeeeeee#iiiiiiiidggggggggbcccccccccccccccc....icccccccccccccccccccg..................icccccccccccccccccccccccccc....ecc",
+"cc....meeeeeeeehiiiiiiiiaggggggggkccccccccccccccccc....icccccccccccccccccccg..................icccccccccccccccccccccccccc....ecc",
+"cc........................................feeeeeeee..........................................................................ecc",
+"cc...........................................................................................................................ecc",
+"cc...........................................................................................................................ecc",
+"cc...........................................................................................................................ecc",
+"cc...........................................................................................................................ecc",
+"cc...........................................................................................................................ecc",
+"cce..........................................................................................................................hcc",
+"ccn..........................................................................................................................acb",
+"jcb.........................................................................................................................lcca",
+"hcci........................................................................................................................acc#",
+"mkcc#......................................................................................................................dccb.",
+".occci...................................................................................................................macccf.",
+"..#cccbne.............................................................................................................menkccc#..",
+"...okccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbe...",
+"....mhjccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccg#....."};
|