Sophie

Sophie

distrib > Arklinux > devel > i586 > by-pkgid > f28e7997eb17095dceeb0b1abcdc3774 > files > 2

xvkbd-2.7a-2ark.src.rpm

diff -urN xvkbd-2.7a/xvkbd.c xvkbd-2.7a-ark/xvkbd.c
--- xvkbd-2.7a/xvkbd.c	2005-05-06 22:46:02.000000000 +0000
+++ xvkbd-2.7a-ark/xvkbd.c	2005-06-09 16:34:30.000000000 +0000
@@ -2498,6 +2498,31 @@
 
   XtMapWidget(toplevel);
 
+  if(appres.always_on_top){
+    XEvent e;
+    e.xany.type = ClientMessage;
+    e.xany.window = XtWindow(toplevel);
+    e.xclient.message_type = XInternAtom(dpy, "_NET_WM_STATE", False);
+    e.xclient.format = 32;
+    e.xclient.data.l[0] = 1 /* NET_WM_STATE_ADD */;
+    e.xclient.data.l[1] = XInternAtom(dpy, "_NET_WM_STATE_ABOVE", False);
+    e.xclient.data.l[2] = 0l;
+    e.xclient.data.l[3] = 0l;
+    e.xclient.data.l[4] = 0l;
+    XSendEvent(dpy, DefaultRootWindow(dpy), 0, SubstructureNotifyMask|SubstructureRedirectMask, &e);
+
+    e.xany.type = ClientMessage;
+    e.xany.window = XtWindow(toplevel);
+    e.xclient.message_type = XInternAtom(dpy, "_NET_WM_STATE", False);
+    e.xclient.format = 32;
+    e.xclient.data.l[0] = 1 /* NET_WM_STATE_ADD */;
+    e.xclient.data.l[1] = XInternAtom(dpy, "_NET_WM_STATE_STAYS_ON_TOP", False);
+    e.xclient.data.l[2] = 0l;
+    e.xclient.data.l[3] = 0l;
+    e.xclient.data.l[4] = 0l;
+    XSendEvent(dpy, DefaultRootWindow(dpy), 0, SubstructureNotifyMask|SubstructureRedirectMask, &e);
+  }
+
   if (wm_delete_window == None)
     wm_delete_window = XInternAtom(dpy, "WM_DELETE_WINDOW", FALSE);
   XSetWMProtocols(dpy, XtWindow(toplevel), &wm_delete_window, 1);