wlroots/types/scene
Kirill Primak 0c2eed533e scene/output-layout: improve ownership logic
This commit ensures that outputs that weren't created by the output
layout helper aren't destroyed on the output layout change.

Consider the following piece of logic:

// struct wlr_output *o1, *o2;
// struct wlr_scene *scene;
// struct wlr_output_layout *layout;
wlr_scene_attach_output_layout(scene, layout);
wlr_output_layout_add_auto(layout, o1);
struct wlr_scene_output *so2 = wlr_scene_output_create(scene, o2);
wlr_output_layout_move(layout, o1, 100, 200);
// so2 is invalid now
2022-06-01 09:49:25 +00:00
..
layer_shell_v1.c wlr_scene: Only allow parenting on a wlr_scene_tree 2022-05-31 09:14:28 +00:00
output_layout.c scene/output-layout: improve ownership logic 2022-06-01 09:49:25 +00:00
subsurface_tree.c wlr_scene: Only allow parenting on a wlr_scene_tree 2022-05-31 09:14:28 +00:00
surface.c wlr_scene: Only allow parenting on a wlr_scene_tree 2022-05-31 09:14:28 +00:00
wlr_scene.c scene: add wlr_scene_output.events.destroy 2022-06-01 09:49:25 +00:00
xdg_shell.c wlr_scene: Only allow parenting on a wlr_scene_tree 2022-05-31 09:14:28 +00:00