y(map_close);
}
-static void dump_mouse_commands(yajl_gen gen, Barconfig *config) {
- ystr("mouse_commands");
- y(map_open);
+static void dump_bar_bindings(yajl_gen gen, Barconfig *config) {
+ if (TAILQ_EMPTY(&(config->bar_bindings)))
+ return;
+
+ ystr("bindings");
+ y(array_open);
- struct Mousecommand *current;
- TAILQ_FOREACH(current, &(config->mouse_commands), commands) {
- ystr(current->button);
+ struct Barbinding *current;
+ TAILQ_FOREACH(current, &(config->bar_bindings), bindings) {
+ y(map_open);
+
+ ystr("input_code");
+ y(integer, current->input_code);
+ ystr("command");
ystr(current->command);
+
+ y(map_close);
}
- y(map_close);
+ y(array_close);
}
static void dump_bar_config(yajl_gen gen, Barconfig *config) {
} while (0)
YSTR_IF_SET(tray_output);
+
+ ystr("tray_padding");
+ y(integer, config->tray_padding);
+
YSTR_IF_SET(socket_path);
ystr("mode");
break;
}
- dump_mouse_commands(gen, config);
+ dump_bar_bindings(gen, config);
ystr("position");
if (config->position == P_BOTTOM)
ystr("human_readable");
ystr(i3_version);
+ ystr("loaded_config_file_name");
+ ystr(current_configpath);
+
y(map_close);
const unsigned char *payload;
char *copy = sstrdup(resolved);
const char *dir = dirname(copy);
if (!path_exists(dir))
- mkdirp(dir);
+ mkdirp(dir, DEFAULT_DIR_MODE);
free(copy);
/* Unlink the unix domain socket before */