commands: allow "first", "last", "newest" and "recent" as values for urgent criteria

This commit is contained in:
Ian Fan 2018-07-29 10:33:21 +01:00
parent 0cd418ba42
commit 710f27d0d2
2 changed files with 10 additions and 4 deletions

View file

@ -452,13 +452,18 @@ static bool parse_token(struct criteria *criteria, char *name, char *value) {
criteria->tiling = true; criteria->tiling = true;
break; break;
case T_URGENT: case T_URGENT:
if (strcmp(effective_value, "latest") == 0) { if (strcmp(effective_value, "latest") == 0 ||
strcmp(effective_value, "newest") == 0 ||
strcmp(effective_value, "last") == 0 ||
strcmp(effective_value, "recent") == 0) {
criteria->urgent = 'l'; criteria->urgent = 'l';
} else if (strcmp(effective_value, "oldest") == 0) { } else if (strcmp(effective_value, "oldest") == 0 ||
strcmp(effective_value, "first") == 0) {
criteria->urgent = 'o'; criteria->urgent = 'o';
} else { } else {
error = error =
strdup("The value for 'urgent' must be 'latest' or 'oldest'"); strdup("The value for 'urgent' must be 'first', 'last', "
"'latest', 'newest', 'oldest' or 'recent'");
} }
break; break;
case T_WORKSPACE: case T_WORKSPACE:

View file

@ -612,7 +612,8 @@ The following attributes may be matched with:
currently focused window. currently focused window.
*urgent* *urgent*
Compares the urgent state of the window. Can be "latest" or "oldest". Compares the urgent state of the window. Can be "first", "last", "latest",
"newest", "oldest" or "recent".
*window\_role* *window\_role*
Compare against the window role (WM\_WINDOW\_ROLE). Can be a regular Compare against the window role (WM\_WINDOW\_ROLE). Can be a regular