diff --git a/sway/criteria.c b/sway/criteria.c index 39d300ea..dd995c4b 100644 --- a/sway/criteria.c +++ b/sway/criteria.c @@ -452,13 +452,18 @@ static bool parse_token(struct criteria *criteria, char *name, char *value) { criteria->tiling = true; break; 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'; - } else if (strcmp(effective_value, "oldest") == 0) { + } else if (strcmp(effective_value, "oldest") == 0 || + strcmp(effective_value, "first") == 0) { criteria->urgent = 'o'; } else { 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; case T_WORKSPACE: diff --git a/sway/sway.5.scd b/sway/sway.5.scd index 82df38e3..2d35f5d0 100644 --- a/sway/sway.5.scd +++ b/sway/sway.5.scd @@ -612,7 +612,8 @@ The following attributes may be matched with: currently focused window. *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* Compare against the window role (WM\_WINDOW\_ROLE). Can be a regular