From: Dana Jansens Date: Thu, 31 May 2007 17:15:56 +0000 (+0000) Subject: use _OB_CONTROL to reconfigure openbox X-Git-Tag: release-2.0.2~92 X-Git-Url: http://git.openbox.org/?a=commitdiff_plain;h=9db2d9c80d82580fba2f660ef90e63bd6908666f;p=dana%2Fobconf.git use _OB_CONTROL to reconfigure openbox --- diff --git a/src/tree.c b/src/tree.c index 6760fbd..9877bc3 100644 --- a/src/tree.c +++ b/src/tree.c @@ -18,10 +18,11 @@ #include "tree.h" #include "main.h" -#include "openbox/parse.h" +#include #include #include +#include xmlNodePtr tree_get_node(const gchar *path, const gchar *def) { @@ -99,19 +100,21 @@ void tree_apply() g_free(p); if (!err) { - GdkAtom type; - gint format; - gint length; - guint *pid; - - if (gdk_property_get - (gdk_screen_get_root_window(gdk_screen_get_default()), - gdk_atom_intern("_OPENBOX_PID", FALSE), - gdk_atom_intern("CARDINAL", FALSE), - 0, 4, FALSE, &type, &format, &length, (guchar**)&pid)) { - kill(*pid, SIGUSR2); - g_free(pid); - } + XEvent ce; + + ce.xclient.type = ClientMessage; + ce.xclient.message_type = gdk_x11_get_xatom_by_name("_OB_CONTROL"); + ce.xclient.display = GDK_DISPLAY(); + ce.xclient.window = GDK_ROOT_WINDOW(); + ce.xclient.format = 32; + ce.xclient.data.l[0] = 1; + ce.xclient.data.l[1] = 0; + ce.xclient.data.l[2] = 0; + ce.xclient.data.l[3] = 0; + ce.xclient.data.l[4] = 0; + XSendEvent(GDK_DISPLAY(), GDK_ROOT_WINDOW(), FALSE, + SubstructureNotifyMask | SubstructureRedirectMask, + &ce); } }