aboutsummaryrefslogtreecommitdiff
path: root/sway
diff options
context:
space:
mode:
Diffstat (limited to 'sway')
-rw-r--r--sway/ipc-json.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/sway/ipc-json.c b/sway/ipc-json.c
index f0afdc9f..213c8fb6 100644
--- a/sway/ipc-json.c
+++ b/sway/ipc-json.c
@@ -5,6 +5,8 @@
#include "sway/ipc-json.h"
#include "sway/container.h"
#include "sway/output.h"
+#include "sway/input/input-manager.h"
+#include "sway/input/seat.h"
#include <wlr/types/wlr_box.h>
#include <wlr/types/wlr_output.h>
@@ -95,11 +97,15 @@ json_object *ipc_json_describe_container(swayc_t *c) {
return NULL;
}
+ struct sway_seat *seat = sway_input_manager_get_default_seat(input_manager);
+ bool focused = sway_seat_get_focus(seat) == c;
+
json_object *object = json_object_new_object();
json_object_object_add(object, "id", json_object_new_int((int)c->id));
json_object_object_add(object, "name", (c->name) ? json_object_new_string(c->name) : NULL);
json_object_object_add(object, "rect", ipc_json_create_rect(c));
+ json_object_object_add(object, "focused", json_object_new_boolean(focused));
switch (c->type) {
case C_ROOT: