diff options
author | Isaac Freund <ifreund@ifreund.xyz> | 2021-01-07 14:41:24 +0100 |
---|---|---|
committer | Simon Ser <contact@emersion.fr> | 2021-01-08 10:33:16 +0100 |
commit | c5c5ab97249861ae1d17cad382e001646f27486d (patch) | |
tree | 1f8aa5ade5ad6f4924ee765c07aa6d10d53bfb43 /include | |
parent | 129e02b57d95c979ec230f115b510559102606cf (diff) |
xdg shell: add wlr_xdg_surface_for_each_popup_surface()
When rendering, it is necessary to iterate the subsurfaces as well,
so add a function that makes this easy.
Diffstat (limited to 'include')
-rw-r--r-- | include/wlr/types/wlr_xdg_shell.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/include/wlr/types/wlr_xdg_shell.h b/include/wlr/types/wlr_xdg_shell.h index 04addfe1..a519ed8b 100644 --- a/include/wlr/types/wlr_xdg_shell.h +++ b/include/wlr/types/wlr_xdg_shell.h @@ -393,6 +393,14 @@ void wlr_xdg_surface_for_each_surface(struct wlr_xdg_surface *surface, wlr_surface_iterator_func_t iterator, void *user_data); /** + * Call `iterator` on each popup's surface and popup's subsurface in the + * xdg-surface tree, with the surfaces's position relative to the root + * xdg-surface. The function is called from root to leaves (in rendering order). + */ +void wlr_xdg_surface_for_each_popup_surface(struct wlr_xdg_surface *surface, + wlr_surface_iterator_func_t iterator, void *user_data); + +/** * Schedule a surface configuration. This should only be called by protocols * extending the shell. */ |