aboutsummaryrefslogtreecommitdiff
path: root/debian/patches/0108_nxagent_wine-close-delay.full.patch
diff options
context:
space:
mode:
authorMike Gabriel <mike.gabriel@das-netzwerkteam.de>2015-02-14 16:23:43 +0100
committerMike Gabriel <mike.gabriel@das-netzwerkteam.de>2015-02-14 16:23:43 +0100
commit09d2732b4e299eaa06c64b7a683529e337691c59 (patch)
tree3a07c4a95980c0f34b1d3ce2f55388dd7677c685 /debian/patches/0108_nxagent_wine-close-delay.full.patch
parent8c98a401b49506f969dc9263d9bd566e5b31a572 (diff)
downloadnx-libs-09d2732b4e299eaa06c64b7a683529e337691c59.tar.gz
nx-libs-09d2732b4e299eaa06c64b7a683529e337691c59.tar.bz2
nx-libs-09d2732b4e299eaa06c64b7a683529e337691c59.zip
Patch system: Prepend a "0" to every patch file name in debian/patches/. Adapt only this changelog stanza to this modification.
Diffstat (limited to 'debian/patches/0108_nxagent_wine-close-delay.full.patch')
-rw-r--r--debian/patches/0108_nxagent_wine-close-delay.full.patch60
1 files changed, 60 insertions, 0 deletions
diff --git a/debian/patches/0108_nxagent_wine-close-delay.full.patch b/debian/patches/0108_nxagent_wine-close-delay.full.patch
new file mode 100644
index 000000000..7a9c18cf2
--- /dev/null
+++ b/debian/patches/0108_nxagent_wine-close-delay.full.patch
@@ -0,0 +1,60 @@
+Description: Wine Close Delay
+ Wine close delay.
+ .
+ Originally contributed by FreeNX Team (dimbor).
+Forwarded: not-yet
+Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
+Last-Update: 2011-12-31
+--- a/nx-X11/programs/Xserver/hw/nxagent/Window.c
++++ b/nx-X11/programs/Xserver/hw/nxagent/Window.c
+@@ -176,6 +176,14 @@
+
+ static int nxagentForceExposure(WindowPtr pWin, pointer ptr);
+
++/* by dimbor */
++typedef struct
++{
++ CARD32 state;
++ Window icon;
++}
++nxagentWMStateRec;
++
+ /*
+ * This is currently unused.
+ */
+@@ -1861,6 +1869,17 @@
+ nxagentAddConfiguredWindow(pWin, CWStackingOrder);
+ nxagentAddConfiguredWindow(pWin, CW_Shape);
+
++ /* add by dimbor */
++ if (nxagentOption(Rootless) && nxagentWindowTopLevel(pWin))
++ {
++ Atom prop = MakeAtom("WM_STATE", strlen("WM_STATE"), True);
++ nxagentWMStateRec wmState;
++ wmState.state = 1; /* NormalState */
++ wmState.icon = None;
++ if (ChangeWindowProperty(pWin, prop, prop, 32, 0, 2, &wmState, 1) != Success)
++ fprintf(stderr, "nxagentRealizeWindow: Additing WM_STATE fail.\n");
++ }
++
+ #ifdef SHAPE
+
+ /*
+@@ -1907,6 +1926,17 @@
+ return True;
+ }
+
++ /* add by dimbor */
++ if (nxagentOption(Rootless) && nxagentWindowTopLevel(pWin))
++ {
++ Atom prop = MakeAtom("WM_STATE", strlen("WM_STATE"), True);
++ nxagentWMStateRec wmState;
++ wmState.state = 3; /* WithdrawnState */
++ wmState.icon = None;
++ if (ChangeWindowProperty(pWin, prop, prop, 32, 0, 2, &wmState, 1) != Success)
++ fprintf(stderr, "nxagentUnRealizeWindow: Changing WM_STATE failed.\n");
++ }
++
+ XUnmapWindow(nxagentDisplay, nxagentWindow(pWin));
+
+ return True;