From 498454aee899a7fa5a89fdf15676ab39af910b34 Mon Sep 17 00:00:00 2001 From: Francesco Galizzi Date: Sun, 26 Apr 2020 17:58:58 +0200 Subject: [PATCH] Add parsing of floating_nodes to container_t --- include/i3ipc++/ipc.hpp | 1 + src/ipc.cpp | 8 ++++++++ 2 files changed, 9 insertions(+) diff --git a/include/i3ipc++/ipc.hpp b/include/i3ipc++/ipc.hpp index edbe6b4..2ae412f 100644 --- a/include/i3ipc++/ipc.hpp +++ b/include/i3ipc++/ipc.hpp @@ -202,6 +202,7 @@ struct container_t { window_properties_t window_properties; /// X11 window properties std::list< std::shared_ptr > nodes; + std::list< std::shared_ptr > floating_nodes; }; diff --git a/src/ipc.cpp b/src/ipc.cpp index b0b8fbb..e4f06bd 100644 --- a/src/ipc.cpp +++ b/src/ipc.cpp @@ -136,6 +136,14 @@ static std::shared_ptr parse_container_from_json(const Json::Value } } + Json::Value floating_nodes = o["floating_nodes"]; + if (!floating_nodes.isNull()) { + IPC_JSON_ASSERT_TYPE_ARRAY(floating_nodes, "floating_nodes") + for (Json::ArrayIndex i = 0; i < floating_nodes.size(); i++) { + container->floating_nodes.push_back(parse_container_from_json(floating_nodes[i])); + } + } + container->window_properties = parse_window_props_from_json(o["window_properties"]); return container;