sway/window: include floating_nodes when considering window count for class

This commit is contained in:
Rene D. Obermueller 2021-10-02 18:35:38 +02:00
parent 7af6e8413c
commit 9972384597

View File

@ -68,15 +68,22 @@ auto Window::update() -> void {
int leafNodesInWorkspace(const Json::Value& node) { int leafNodesInWorkspace(const Json::Value& node) {
auto const& nodes = node["nodes"]; auto const& nodes = node["nodes"];
if(nodes.empty()) { auto const& floating_nodes = node["floating_nodes"];
if(nodes.empty() && floating_nodes.empty()) {
if(node["type"] == "workspace") if(node["type"] == "workspace")
return 0; return 0;
else else
return 1; return 1;
} }
int sum = 0; int sum = 0;
for(auto const& node : nodes) if (!nodes.empty()) {
sum += leafNodesInWorkspace(node); for(auto const& node : nodes)
sum += leafNodesInWorkspace(node);
}
if (!floating_nodes.empty()) {
for(auto const& node : floating_nodes)
sum += leafNodesInWorkspace(node);
}
return sum; return sum;
} }