aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Ser <contact@emersion.fr>2023-12-05 16:09:16 +0100
committerSimon Ser <contact@emersion.fr>2023-12-27 13:41:20 +0100
commitab924064f230cce2aea2e45bd113adea9d37f286 (patch)
tree5aeec3dc8dd51987f939c5da6ec9aa7d406c73dd
parentd68ba9d6c2bca6c5e9f7db1b6043d6e742b77bbd (diff)
scene: drop wlr_scene_set_presentation()
-rw-r--r--include/wlr/types/wlr_scene.h11
-rw-r--r--types/scene/surface.c5
-rw-r--r--types/scene/wlr_scene.c19
3 files changed, 0 insertions, 35 deletions
diff --git a/include/wlr/types/wlr_scene.h b/include/wlr/types/wlr_scene.h
index 2811e95b..76ac32ec 100644
--- a/include/wlr/types/wlr_scene.h
+++ b/include/wlr/types/wlr_scene.h
@@ -99,12 +99,10 @@ struct wlr_scene {
struct wl_list outputs; // wlr_scene_output.link
// May be NULL
- struct wlr_presentation *presentation;
struct wlr_linux_dmabuf_v1 *linux_dmabuf_v1;
// private state
- struct wl_listener presentation_destroy;
struct wl_listener linux_dmabuf_v1_destroy;
enum wlr_scene_debug_damage_option debug_damage_option;
@@ -304,15 +302,6 @@ struct wlr_scene_node *wlr_scene_node_at(struct wlr_scene_node *node,
struct wlr_scene *wlr_scene_create(void);
/**
- * Handle presentation feedback for all surfaces in the scene, assuming that
- * scene outputs and the scene rendering functions are used.
- *
- * Asserts that a struct wlr_presentation hasn't already been set for the scene.
- */
-void wlr_scene_set_presentation(struct wlr_scene *scene,
- struct wlr_presentation *presentation);
-
-/**
* Handles linux_dmabuf_v1 feedback for all surfaces in the scene.
*
* Asserts that a struct wlr_linux_dmabuf_v1 hasn't already been set for the scene.
diff --git a/types/scene/surface.c b/types/scene/surface.c
index c5963afe..11396e2f 100644
--- a/types/scene/surface.c
+++ b/types/scene/surface.c
@@ -48,11 +48,6 @@ static void handle_scene_buffer_output_sample(
return;
}
- struct wlr_scene *root = scene_node_get_root(&surface->buffer->node);
- if (!root->presentation) {
- return;
- }
-
if (event->direct_scanout) {
wlr_presentation_surface_scanned_out_on_output(surface->surface, scene_output->output);
} else {
diff --git a/types/scene/wlr_scene.c b/types/scene/wlr_scene.c
index eebadec8..d5aba68e 100644
--- a/types/scene/wlr_scene.c
+++ b/types/scene/wlr_scene.c
@@ -123,7 +123,6 @@ void wlr_scene_node_destroy(struct wlr_scene_node *node) {
wlr_scene_output_destroy(scene_output);
}
- wl_list_remove(&scene->presentation_destroy.link);
wl_list_remove(&scene->linux_dmabuf_v1_destroy.link);
} else {
assert(node->parent);
@@ -157,7 +156,6 @@ struct wlr_scene *wlr_scene_create(void) {
scene_tree_init(&scene->tree, NULL);
wl_list_init(&scene->outputs);
- wl_list_init(&scene->presentation_destroy.link);
wl_list_init(&scene->linux_dmabuf_v1_destroy.link);
const char *debug_damage_options[] = {
@@ -1193,23 +1191,6 @@ static void scene_entry_render(struct render_list_entry *entry, const struct ren
pixman_region32_fini(&render_region);
}
-static void scene_handle_presentation_destroy(struct wl_listener *listener,
- void *data) {
- struct wlr_scene *scene =
- wl_container_of(listener, scene, presentation_destroy);
- wl_list_remove(&scene->presentation_destroy.link);
- wl_list_init(&scene->presentation_destroy.link);
- scene->presentation = NULL;
-}
-
-void wlr_scene_set_presentation(struct wlr_scene *scene,
- struct wlr_presentation *presentation) {
- assert(scene->presentation == NULL);
- scene->presentation = presentation;
- scene->presentation_destroy.notify = scene_handle_presentation_destroy;
- wl_signal_add(&presentation->events.destroy, &scene->presentation_destroy);
-}
-
static void scene_handle_linux_dmabuf_v1_destroy(struct wl_listener *listener,
void *data) {
struct wlr_scene *scene =