diff options
author | Alexander Orzechowski <alex@ozal.ski> | 2023-11-23 10:09:48 -0500 |
---|---|---|
committer | Kirill Primak <vyivel@eclair.cafe> | 2024-01-18 18:36:54 +0300 |
commit | 5b8b505af5d5925ae9e617ee8f3c7a0f9c43409d (patch) | |
tree | f420022ad3a48215f9182505c0060d91edcd848e /include/sway/tree | |
parent | Introduce sway_text_node (diff) | |
download | sway-5b8b505af5d5925ae9e617ee8f3c7a0f9c43409d.tar.gz sway-5b8b505af5d5925ae9e617ee8f3c7a0f9c43409d.tar.zst sway-5b8b505af5d5925ae9e617ee8f3c7a0f9c43409d.zip |
input: Query scene graph for relevant surface/node intersections
Diffstat (limited to 'include/sway/tree')
-rw-r--r-- | include/sway/tree/container.h | 13 | ||||
-rw-r--r-- | include/sway/tree/root.h | 4 |
2 files changed, 4 insertions, 13 deletions
diff --git a/include/sway/tree/container.h b/include/sway/tree/container.h index ee22a0d0..6f72439c 100644 --- a/include/sway/tree/container.h +++ b/include/sway/tree/container.h | |||
@@ -172,19 +172,6 @@ void container_begin_destroy(struct sway_container *con); | |||
172 | struct sway_container *container_find_child(struct sway_container *container, | 172 | struct sway_container *container_find_child(struct sway_container *container, |
173 | bool (*test)(struct sway_container *view, void *data), void *data); | 173 | bool (*test)(struct sway_container *view, void *data), void *data); |
174 | 174 | ||
175 | /** | ||
176 | * Find a container at the given coordinates. Returns the surface and | ||
177 | * surface-local coordinates of the given layout coordinates if the container | ||
178 | * is a view and the view contains a surface at those coordinates. | ||
179 | */ | ||
180 | struct sway_container *container_at(struct sway_workspace *workspace, | ||
181 | double lx, double ly, struct wlr_surface **surface, | ||
182 | double *sx, double *sy); | ||
183 | |||
184 | struct sway_container *tiling_container_at( | ||
185 | struct sway_node *parent, double lx, double ly, | ||
186 | struct wlr_surface **surface, double *sx, double *sy); | ||
187 | |||
188 | void container_for_each_child(struct sway_container *container, | 175 | void container_for_each_child(struct sway_container *container, |
189 | void (*f)(struct sway_container *container, void *data), void *data); | 176 | void (*f)(struct sway_container *container, void *data), void *data); |
190 | 177 | ||
diff --git a/include/sway/tree/root.h b/include/sway/tree/root.h index 0aae8938..003606aa 100644 --- a/include/sway/tree/root.h +++ b/include/sway/tree/root.h | |||
@@ -35,6 +35,10 @@ struct sway_root { | |||
35 | // staging node will be visible. | 35 | // staging node will be visible. |
36 | struct wlr_scene_tree *staging; | 36 | struct wlr_scene_tree *staging; |
37 | 37 | ||
38 | // tree containing all layers the compositor will render. Cursor handling | ||
39 | // will end up iterating this tree. | ||
40 | struct wlr_scene_tree *layer_tree; | ||
41 | |||
38 | struct { | 42 | struct { |
39 | struct wlr_scene_tree *tiling; | 43 | struct wlr_scene_tree *tiling; |
40 | struct wlr_scene_tree *floating; | 44 | struct wlr_scene_tree *floating; |