summaryrefslogtreecommitdiff
path: root/sway/ipc-json.c
diff options
context:
space:
mode:
authorBrian Ashworth <[email protected]>2018-06-05 17:56:32 -0400
committerBrian Ashworth <[email protected]>2018-06-06 20:11:24 -0400
commita1b5b93d299bfe129f2b3409a7f642049fcce1d6 (patch)
tree4d87f5ab8f0f18ada1fc12a4eb4ba3b5d0350527 /sway/ipc-json.c
parent22c1c4beb4baa369f883fb5360c40158513c8e10 (diff)
Store sway_outputs so that they can be reenabled
Diffstat (limited to 'sway/ipc-json.c')
-rw-r--r--sway/ipc-json.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/sway/ipc-json.c b/sway/ipc-json.c
index 6d185449..5d402d1b 100644
--- a/sway/ipc-json.c
+++ b/sway/ipc-json.c
@@ -139,6 +139,26 @@ static void ipc_json_describe_output(struct sway_container *container, json_obje
json_object_object_add(object, "layout", json_object_new_string("output"));
}
+json_object *ipc_json_describe_disabled_output(struct sway_output *output) {
+ struct wlr_output *wlr_output = output->wlr_output;
+
+ json_object *object = json_object_new_object();
+
+ json_object_object_add(object, "type", json_object_new_string("output"));
+ json_object_object_add(object, "name",
+ wlr_output->name ? json_object_new_string(wlr_output->name) : NULL);
+ json_object_object_add(object, "active", json_object_new_boolean(false));
+ json_object_object_add(object, "make",
+ json_object_new_string(wlr_output->make));
+ json_object_object_add(object, "model",
+ json_object_new_string(wlr_output->model));
+ json_object_object_add(object, "serial",
+ json_object_new_string(wlr_output->serial));
+ json_object_object_add(object, "modes", json_object_new_array());
+
+ return object;
+}
+
static void ipc_json_describe_workspace(struct sway_container *workspace,
json_object *object) {
int num = isdigit(workspace->name[0]) ? atoi(workspace->name) : -1;