diff options
author | llyyr <llyyr@yukari.in> | 2024-02-27 02:06:27 +0530 |
---|---|---|
committer | Simon Ser <contact@emersion.fr> | 2024-02-29 00:51:43 +0100 |
commit | 0b84d82b9aad05010479140774ac5ee1fea8ea97 (patch) | |
tree | 1265eda82806b43ec1b294110af82bbc62476461 | |
parent | 2867ef646b67138a796b7d5ae46428c255cc928f (diff) |
ipc: add `scratchpad_state` property to GET_TREE
See previous commit. This restores ipc parity with i3.
-rw-r--r-- | sway/ipc-json.c | 5 | ||||
-rw-r--r-- | sway/sway-ipc.7.scd | 3 |
2 files changed, 8 insertions, 0 deletions
diff --git a/sway/ipc-json.c b/sway/ipc-json.c index 84e164e4..dfbb7a6e 100644 --- a/sway/ipc-json.c +++ b/sway/ipc-json.c @@ -289,6 +289,7 @@ static json_object *ipc_json_create_node(int id, const char* type, char *name, json_object_object_add(object, "fullscreen_mode", json_object_new_int(0)); json_object_object_add(object, "sticky", json_object_new_boolean(false)); json_object_object_add(object, "floating", NULL); + json_object_object_add(object, "scratchpad_state", NULL); return object; } @@ -702,6 +703,10 @@ static void ipc_json_describe_container(struct sway_container *c, json_object *o json_object_object_add(object, "fullscreen_mode", json_object_new_int(c->pending.fullscreen_mode)); + // sway doesn't track if window was resized in scratchpad, so we can't use "changed" + json_object_object_add(object, "scratchpad_state", + json_object_new_string(!c->scratchpad ? "none" : "fresh")); + struct sway_node *parent = node_get_parent(&c->node); struct wlr_box parent_box = {0, 0, 0, 0}; diff --git a/sway/sway-ipc.7.scd b/sway/sway-ipc.7.scd index 5859558f..c9895e52 100644 --- a/sway/sway-ipc.7.scd +++ b/sway/sway-ipc.7.scd @@ -379,6 +379,9 @@ node and will have the following properties: |- floating : string : Floating state of container. Can be either "auto_off" or "user_on" +|- scratchpad_state +: string +: Whether the window is in the scratchpad. Can be either "none" or "fresh" |- app_id : string : (Only views) For an xdg-shell view, the name of the application, if set. |