diff --git a/src/rendervulkan.cpp b/src/rendervulkan.cpp index 941c152..bbba3b1 100644 --- a/src/rendervulkan.cpp +++ b/src/rendervulkan.cpp @@ -2156,6 +2156,24 @@ static struct wlr_texture *renderer_texture_from_dmabuf( struct wlr_renderer *wl return wlr_texture_from_dmabuf( renderer->parent, dmabuf ); } +static bool renderer_resource_is_wl_drm_buffer( struct wlr_renderer *wlr_renderer, struct wl_resource *resource ) +{ + VulkanRenderer_t *renderer = (VulkanRenderer_t *) wlr_renderer; + return wlr_renderer_resource_is_wl_drm_buffer( renderer->parent, resource ); +} + +static void renderer_wl_drm_buffer_get_size( struct wlr_renderer *wlr_renderer, struct wl_resource *resource, int *width, int *height ) +{ + VulkanRenderer_t *renderer = (VulkanRenderer_t *) wlr_renderer; + return wlr_renderer_wl_drm_buffer_get_size( renderer->parent, resource, width, height ); +} + +struct wlr_texture *renderer_texture_from_wl_drm( struct wlr_renderer *wlr_renderer, struct wl_resource *resource ) +{ + VulkanRenderer_t *renderer = (VulkanRenderer_t *) wlr_renderer; + return wlr_texture_from_wl_drm( renderer->parent, resource ); +} + static const struct wlr_renderer_impl renderer_impl = { .begin = renderer_begin, .end = renderer_end, @@ -2165,8 +2183,11 @@ static const struct wlr_renderer_impl renderer_impl = { .render_quad_with_matrix = renderer_render_quad_with_matrix, .render_ellipse_with_matrix = renderer_render_ellipse_with_matrix, .get_shm_texture_formats = renderer_get_shm_texture_formats, + .resource_is_wl_drm_buffer = renderer_resource_is_wl_drm_buffer, + .wl_drm_buffer_get_size = renderer_wl_drm_buffer_get_size, .get_dmabuf_texture_formats = renderer_get_dmabuf_texture_formats, .texture_from_pixels = renderer_texture_from_pixels, + .texture_from_wl_drm = renderer_texture_from_wl_drm, .texture_from_dmabuf = renderer_texture_from_dmabuf, .init_wl_display = renderer_init_wl_display, };