]> git.sur5r.net Git - i3/i3/commitdiff
Set the I3_SOCKET_PATH and I3_CONFIG_PATH atoms on the X11 root window
authorMichael Stapelberg <michael@stapelberg.de>
Sat, 19 Mar 2011 20:20:38 +0000 (21:20 +0100)
committerMichael Stapelberg <michael@stapelberg.de>
Sat, 19 Mar 2011 20:20:38 +0000 (21:20 +0100)
include/atoms.xmacro
include/config.h
src/config.c
src/main.c

index 2543ffd286d5b6ebac823a4025b2bfa6f59e8521..2114bc3ee1914c2af27be6d40e4d12b187b89f3b 100644 (file)
@@ -29,3 +29,5 @@ xmacro(WM_NAME)
 xmacro(WM_CLASS)
 xmacro(STRING)
 xmacro(CARDINAL)
+xmacro(I3_SOCKET_PATH)
+xmacro(I3_CONFIG_PATH)
index f639df36f0ee39d17eb5ce6a500b7a0dbc316c60..57970e285c281823f3d2354dfac4d8f2b0593921 100644 (file)
@@ -22,6 +22,7 @@
 #include "i3.h"
 
 typedef struct Config Config;
+extern const char *saved_configpath;
 extern Config config;
 extern SLIST_HEAD(modes_head, Mode) modes;
 
index 8f8790eba554ab00291ee22e18a2975869f51c81..e4a4cac990a47e0eabe540df724554385c34e812 100644 (file)
@@ -19,6 +19,7 @@
 
 #include "all.h"
 
+const char *saved_configpath = NULL;
 Config config;
 struct modes_head modes;
 
@@ -232,7 +233,6 @@ static char *get_config_path() {
  *
  */
 static void parse_configuration(const char *override_configpath) {
-    static const char *saved_configpath = NULL;
 
     if (override_configpath != NULL) {
         saved_configpath = override_configpath;
index 16df027bcc4690df0043af1b0becff16866df30d..e3b2613ba7c3fa16b4e94419d3ae352a90dfca2e 100644 (file)
@@ -350,6 +350,10 @@ int main(int argc, char *argv[]) {
     xcb_change_property(conn, XCB_PROP_MODE_REPLACE, root, A__NET_SUPPORTING_WM_CHECK, A_WINDOW, 32, 1, &root);
     xcb_change_property(conn, XCB_PROP_MODE_REPLACE, root, A__NET_WM_NAME, A_UTF8_STRING, 8, strlen("i3"), "i3");
 
+    /* Set up i3 specific atoms like I3_SOCKET_PATH and I3_CONFIG_PATH */
+    xcb_change_property(conn, XCB_PROP_MODE_REPLACE, root, A_I3_SOCKET_PATH, A_UTF8_STRING, 8, strlen(config.ipc_socket_path), config.ipc_socket_path);
+    xcb_change_property(conn, XCB_PROP_MODE_REPLACE, root, A_I3_CONFIG_PATH, A_UTF8_STRING, 8, strlen(saved_configpath), saved_configpath);
+
     keysyms = xcb_key_symbols_alloc(conn);
 
     xcb_get_numlock_mask(conn);