mirror of
https://gitlab.freedesktop.org/wlroots/wlroots.git
synced 2025-11-02 09:01:38 -05:00
scene: add wlr_scene_node_coords
This commit is contained in:
parent
04d105760d
commit
9195b77e14
2 changed files with 22 additions and 0 deletions
|
|
@ -193,6 +193,22 @@ void wlr_scene_node_reparent(struct wlr_scene_node *node,
|
|||
wl_list_insert(new_parent->state.children.prev, &node->state.link);
|
||||
}
|
||||
|
||||
bool wlr_scene_node_coords(struct wlr_scene_node *node,
|
||||
int *lx_ptr, int *ly_ptr) {
|
||||
int lx = 0, ly = 0;
|
||||
bool enabled = true;
|
||||
while (node != NULL) {
|
||||
lx += node->state.x;
|
||||
ly += node->state.y;
|
||||
enabled = enabled && node->state.enabled;
|
||||
node = node->parent;
|
||||
}
|
||||
|
||||
*lx_ptr = lx;
|
||||
*ly_ptr = ly;
|
||||
return enabled;
|
||||
}
|
||||
|
||||
static void scene_node_for_each_surface(struct wlr_scene_node *node,
|
||||
int lx, int ly, wlr_surface_iterator_func_t user_iterator,
|
||||
void *user_data) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue