From 0e1a02bf0aad3d743985602b55043c5de019d1f0 Mon Sep 17 00:00:00 2001 From: Alexander Orzechowski Date: Tue, 21 Nov 2023 19:05:37 -0500 Subject: scene_graph: Introduce sway_scene_descriptor Across a wayland compositor, there are multiple shells: It can be a toplevel, or a layer_shell, or even something more meta like a drag icon or highlight indicators when dragging windows around. This object lets us store values that represent these modes of operation and keep track of what object is being represented. --- include/sway/scene_descriptor.h | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 include/sway/scene_descriptor.h (limited to 'include/sway') diff --git a/include/sway/scene_descriptor.h b/include/sway/scene_descriptor.h new file mode 100644 index 00000000..13ae81a3 --- /dev/null +++ b/include/sway/scene_descriptor.h @@ -0,0 +1,25 @@ +/** + * Across a wayland compositor, there are multiple shells: It can be + * a toplevel, or a layer_shell, or even something more meta like a drag + * icon or highlight indicators when dragging windows around. + * + * This object lets us store values that represent these modes of operation + * and keep track of what object is being represented. + */ +#ifndef _SWAY_SCENE_DESCRIPTOR_H +#define _SWAY_SCENE_DESCRIPTOR_H +#include + +enum sway_scene_descriptor_type { +}; + +bool scene_descriptor_assign(struct wlr_scene_node *node, + enum sway_scene_descriptor_type type, void *data); + +void *scene_descriptor_try_get(struct wlr_scene_node *node, + enum sway_scene_descriptor_type type); + +void scene_descriptor_destroy(struct wlr_scene_node *node, + enum sway_scene_descriptor_type type); + +#endif -- cgit v1.2.3