node.c: use wlr_scene_node instead of node_descriptor

This commit is contained in:
Johan Malm 2022-03-02 22:24:30 +00:00
parent b4cbc20e8c
commit eb7645d0e0
3 changed files with 16 additions and 10 deletions

View file

@ -36,22 +36,22 @@ void node_descriptor_create(struct wlr_scene_node *scene_node,
/**
* node_view_from_node - return view struct from node
* @node_descriptor: node_descriptor from which to return data
* @wlr_scene_node: wlr_scene_node from which to return data
*/
struct view *node_view_from_node(struct node_descriptor *node_descriptor);
struct view *node_view_from_node(struct wlr_scene_node *wlr_scene_node);
/**
* node_lab_surface_from_node - return lab_layer_surface struct from node
* @node_descriptor: node_descriptor from which to return data
* @wlr_scene_node: wlr_scene_node from which to return data
*/
struct lab_layer_surface *node_layer_surface_from_node(
struct node_descriptor *node_descriptor);
struct wlr_scene_node *wlr_scene_node);
/**
* node_layer_popup_from_node - return lab_layer_popup struct from node
* @node_descriptor: node_descriptor from which to return data
* @wlr_scene_node: wlr_scene_node from which to return data
*/
struct lab_layer_popup *node_layer_popup_from_node(
struct node_descriptor *node_descriptor);
struct wlr_scene_node *wlr_scene_node);
#endif /* __LABWC_NODE_DESCRIPTOR_H */

View file

@ -112,7 +112,7 @@ get_special(struct server *server, struct wlr_scene_node *node,
return "server->view_tree";
}
if (node->parent == &server->view_tree->node) {
*last_view = node_view_from_node(node->data);
*last_view = node_view_from_node(node);
}
const char *view_part = get_view_part(*last_view, node);
if (view_part) {

View file

@ -38,23 +38,29 @@ node_descriptor_create(struct wlr_scene_node *scene_node,
}
struct view *
node_view_from_node(struct node_descriptor *node_descriptor)
node_view_from_node(struct wlr_scene_node *wlr_scene_node)
{
assert(wlr_scene_node->data);
struct node_descriptor *node_descriptor = wlr_scene_node->data;
assert(node_descriptor->type == LAB_NODE_DESC_VIEW
|| node_descriptor->type == LAB_NODE_DESC_XDG_POPUP);
return (struct view *)node_descriptor->data;
}
struct lab_layer_surface *
node_layer_surface_from_node(struct node_descriptor *node_descriptor)
node_layer_surface_from_node(struct wlr_scene_node *wlr_scene_node)
{
assert(wlr_scene_node->data);
struct node_descriptor *node_descriptor = wlr_scene_node->data;
assert(node_descriptor->type == LAB_NODE_DESC_LAYER_SURFACE);
return (struct lab_layer_surface *)node_descriptor->data;
}
struct lab_layer_popup *
node_layer_popup_from_node(struct node_descriptor *node_descriptor)
node_layer_popup_from_node(struct wlr_scene_node *wlr_scene_node)
{
assert(wlr_scene_node->data);
struct node_descriptor *node_descriptor = wlr_scene_node->data;
assert(node_descriptor->type == LAB_NODE_DESC_LAYER_POPUP);
return (struct lab_layer_popup *)node_descriptor->data;
}