From 710f27d0d2a33e937d5b8dd8c9342b19fa04ebe9 Mon Sep 17 00:00:00 2001 From: Ian Fan Date: Sun, 29 Jul 2018 10:33:21 +0100 Subject: [PATCH] commands: allow "first", "last", "newest" and "recent" as values for urgent criteria --- sway/criteria.c | 11 ++++++++--- sway/sway.5.scd | 3 ++- 2 files changed, 10 insertions(+), 4 deletions(-) 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