feat: new ipc impl

This commit is contained in:
DreamMaoMao 2026-05-24 13:31:31 +08:00
parent c9ac0582e2
commit 324d29e68c
13 changed files with 1205 additions and 1020 deletions

View file

@ -946,6 +946,8 @@ FuncType parse_func_name(char *func_name, Arg *arg, char *arg_value,
} else if (strcmp(func_name, "focusdir") == 0) {
func = focusdir;
(*arg).i = parse_direction(arg_value);
} else if (strcmp(func_name, "focusid") == 0) {
func = focusid;
} else if (strcmp(func_name, "incnmaster") == 0) {
func = incnmaster;
(*arg).i = atoi(arg_value);
@ -2356,6 +2358,7 @@ bool parse_option(Config *config, char *key, char *value) {
binding->arg.v = NULL;
binding->arg.v2 = NULL;
binding->arg.v3 = NULL;
binding->arg.tc = NULL;
binding->func =
parse_func_name(func_name, &binding->arg, arg_value, arg_value2,
arg_value3, arg_value4, arg_value5);
@ -2437,6 +2440,7 @@ bool parse_option(Config *config, char *key, char *value) {
binding->arg.v = NULL;
binding->arg.v2 = NULL;
binding->arg.v3 = NULL;
binding->arg.tc = NULL;
// TODO: remove this in next version
if (binding->mod == 0 &&
@ -2522,6 +2526,7 @@ bool parse_option(Config *config, char *key, char *value) {
binding->arg.v = NULL;
binding->arg.v2 = NULL;
binding->arg.v3 = NULL;
binding->arg.tc = NULL;
binding->func =
parse_func_name(func_name, &binding->arg, arg_value, arg_value2,
arg_value3, arg_value4, arg_value5);
@ -2672,6 +2677,7 @@ bool parse_option(Config *config, char *key, char *value) {
binding->arg.v = NULL;
binding->arg.v2 = NULL;
binding->arg.v3 = NULL;
binding->arg.tc = NULL;
binding->func =
parse_func_name(func_name, &binding->arg, arg_value, arg_value2,
arg_value3, arg_value4, arg_value5);