query: add window type filter for if-actions

This commit is contained in:
Tobias Bengfort 2024-04-20 07:57:35 +02:00 committed by Johan Malm
parent b9b870cfa7
commit 7bc3cae91a
4 changed files with 12 additions and 0 deletions

View file

@ -316,6 +316,8 @@ fill_action_query(char *nodename, char *content, struct action *action)
current_view_query->identifier = xstrdup(content);
} else if (!strcasecmp(nodename, "title")) {
current_view_query->title = xstrdup(content);
} else if (!strcmp(nodename, "type")) {
current_view_query->window_type = parse_window_type(content);
}
}

View file

@ -80,6 +80,11 @@ view_matches_query(struct view *view, struct view_query *query)
match &= match_glob(query->title, title);
}
if (match && query->window_type >= 0) {
empty = false;
match &= view_contains_window_type(view, query->window_type);
}
return !empty && match;
}