aboutsummaryrefslogtreecommitdiff
path: root/sway
diff options
context:
space:
mode:
authorIan Fan <ianfan0@gmail.com>2018-07-29 10:33:21 +0100
committerIan Fan <ianfan0@gmail.com>2018-08-06 14:17:45 +0100
commit710f27d0d2a33e937d5b8dd8c9342b19fa04ebe9 (patch)
treee04ce9ee56ec3b489050ec9db01bad4e4a0c6be2 /sway
parent0cd418ba42bf7fa9570a2c1c09cea153d3337c7a (diff)
downloadsway-710f27d0d2a33e937d5b8dd8c9342b19fa04ebe9.tar.xz
commands: allow "first", "last", "newest" and "recent" as values for urgent criteria
Diffstat (limited to 'sway')
-rw-r--r--sway/criteria.c11
-rw-r--r--sway/sway.5.scd3
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