From 56a6d08fc0ade1141c5c1c1b9c0e6238262ff891 Mon Sep 17 00:00:00 2001 From: Consolatis <35009135+Consolatis@users.noreply.github.com> Date: Fri, 17 Jun 2022 02:53:08 +0200 Subject: [PATCH] src/debug.c: Sync with workspaces --- src/debug.c | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/src/debug.c b/src/debug.c index 5698664b..8c336ec4 100644 --- a/src/debug.c +++ b/src/debug.c @@ -93,6 +93,16 @@ get_special(struct server *server, struct wlr_scene_node *node, if (node == &server->menu_tree->node) { return "server->menu_tree"; } + if (node == &server->view_tree->node) { + return "server->view_tree"; + } + if (node == &server->view_tree_always_on_top->node) { + return "server->view_tree_always_on_top"; + } + if (node->parent == server->view_tree) { + /* Add node_descriptor just to get the name here? */ + return "workspace"; + } if (node->parent == &server->scene->tree) { struct output *output; wl_list_for_each(output, &server->outputs, link) { @@ -111,15 +121,13 @@ get_special(struct server *server, struct wlr_scene_node *node, return "server->unmanaged_tree"; } #endif - if (node == &server->view_tree->node) { - return "server->view_tree"; + struct wlr_scene_tree *grand_parent = + node->parent ? node->parent->node.parent : NULL; + if (grand_parent == server->view_tree) { + *last_view = node_view_from_node(node); } - if (node == &server->view_tree_always_on_top->node) { - return "server->view_tree_always_on_top"; - } - if (node->parent == server->view_tree || - node->parent == server->view_tree_always_on_top) { - *last_view = node_view_from_node(node); + if (node->parent == server->view_tree_always_on_top) { + *last_view = node_view_from_node(node); } const char *view_part = get_view_part(*last_view, node); if (view_part) {