scene: add wlr_scene_buffer_set_texture()

This commit is contained in:
Simon Ser 2024-02-01 16:20:13 +01:00
parent c9e1cb660d
commit e3b74b8ff9
2 changed files with 11 additions and 0 deletions

View file

@ -401,6 +401,12 @@ void wlr_scene_buffer_set_buffer(struct wlr_scene_buffer *scene_buffer,
void wlr_scene_buffer_set_buffer_with_damage(struct wlr_scene_buffer *scene_buffer,
struct wlr_buffer *buffer, const pixman_region32_t *region);
/**
* Sets the buffer's backing texture.
*/
void wlr_scene_buffer_set_texture(struct wlr_scene_buffer *scene_buffer,
struct wlr_texture *texture);
/**
* Sets the buffer's opaque region. This is an optimization hint used to
* determine if buffers which reside under this one need to be rendered or not.

View file

@ -837,6 +837,11 @@ void wlr_scene_buffer_set_buffer(struct wlr_scene_buffer *scene_buffer,
wlr_scene_buffer_set_buffer_with_damage(scene_buffer, buffer, NULL);
}
void wlr_scene_buffer_set_texture(struct wlr_scene_buffer *scene_buffer,
struct wlr_texture *texture) {
scene_buffer_set_buffer_and_texture(scene_buffer, NULL, texture, NULL);
}
void wlr_scene_buffer_set_opaque_region(struct wlr_scene_buffer *scene_buffer,
const pixman_region32_t *region) {
if (pixman_region32_equal(&scene_buffer->opaque_region, region)) {