aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authoremersion <contact@emersion.fr>2018-04-26 00:11:36 +0100
committeremersion <contact@emersion.fr>2018-04-26 00:11:36 +0100
commit449f06556aa9550540c37af0cae0d6902b29f204 (patch)
tree9c61f8e9b5a463f5f320ac203b1e2615585c348f /include
parentd47713ac0f28e9dcc85f8aa40a0372381730d43b (diff)
Destroy wlr_surface with wlr_renderer
Diffstat (limited to 'include')
-rw-r--r--include/wlr/render/interface.h6
-rw-r--r--include/wlr/render/wlr_renderer.h10
-rw-r--r--include/wlr/types/wlr_surface.h2
3 files changed, 10 insertions, 8 deletions
diff --git a/include/wlr/render/interface.h b/include/wlr/render/interface.h
index 9dbe7247..e7cdce0a 100644
--- a/include/wlr/render/interface.h
+++ b/include/wlr/render/interface.h
@@ -11,12 +11,6 @@
#include <wlr/types/wlr_linux_dmabuf.h>
#include <wlr/types/wlr_output.h>
-struct wlr_renderer_impl;
-
-struct wlr_renderer {
- const struct wlr_renderer_impl *impl;
-};
-
struct wlr_renderer_impl {
void (*begin)(struct wlr_renderer *renderer, uint32_t width,
uint32_t height);
diff --git a/include/wlr/render/wlr_renderer.h b/include/wlr/render/wlr_renderer.h
index eb365762..21f9c16c 100644
--- a/include/wlr/render/wlr_renderer.h
+++ b/include/wlr/render/wlr_renderer.h
@@ -6,9 +6,15 @@
#include <wlr/render/wlr_texture.h>
#include <wlr/types/wlr_box.h>
-struct wlr_output;
+struct wlr_renderer_impl;
-struct wlr_renderer;
+struct wlr_renderer {
+ const struct wlr_renderer_impl *impl;
+
+ struct {
+ struct wl_signal destroy;
+ } events;
+};
void wlr_renderer_begin(struct wlr_renderer *r, int width, int height);
void wlr_renderer_end(struct wlr_renderer *r);
diff --git a/include/wlr/types/wlr_surface.h b/include/wlr/types/wlr_surface.h
index f799b28a..5ff9996d 100644
--- a/include/wlr/types/wlr_surface.h
+++ b/include/wlr/types/wlr_surface.h
@@ -93,6 +93,8 @@ struct wlr_surface {
// wlr_subsurface::parent_pending_link
struct wl_list subsurface_pending_list;
+ struct wl_listener renderer_destroy;
+
void *data;
};