#define NUM_ATOMS 9
+extern char *application_path;
extern Display *xkbdpy;
extern TAILQ_HEAD(bindings_head, Binding) bindings;
extern SLIST_HEAD(stack_wins_head, Stack_Window) stack_wins;
return;
}
+ /* Is it <restart>? */
+ if (strncmp(command, "restart", strlen("restart")) == 0) {
+ printf("restarting \"%s\"...\n", application_path);
+ execl(application_path, application_path, NULL);
+ /* not reached */
+ }
+
/* Is it 'f' for fullscreen? */
if (command[0] == 'f') {
if (CUR_CELL->currently_focused == NULL)
#include "xinerama.h"
#include "i3.h"
+/* This is the path to i3, copied from argv[0] when starting up */
+char *application_path;
+
/* This is our connection to X11 for use with XKB */
Display *xkbdpy;
xcb_window_t root;
xcb_intern_atom_cookie_t atom_cookies[NUM_ATOMS];
+ application_path = sstrdup(argv[0]);
+
/* Initialize the table data structures for each workspace */
init_table();