aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/wlr/render/interface.h6
-rw-r--r--include/wlr/render/wlr_renderer.h7
2 files changed, 10 insertions, 3 deletions
diff --git a/include/wlr/render/interface.h b/include/wlr/render/interface.h
index 6eb6c22f..93c987b7 100644
--- a/include/wlr/render/interface.h
+++ b/include/wlr/render/interface.h
@@ -32,9 +32,9 @@ struct wlr_renderer_impl {
void (*end)(struct wlr_renderer *renderer);
void (*clear)(struct wlr_renderer *renderer, const float color[static 4]);
void (*scissor)(struct wlr_renderer *renderer, struct wlr_box *box);
- bool (*render_texture_with_matrix)(struct wlr_renderer *renderer,
- struct wlr_texture *texture, const float matrix[static 9],
- float alpha);
+ bool (*render_subtexture_with_matrix)(struct wlr_renderer *renderer,
+ struct wlr_texture *texture, const struct wlr_fbox *box,
+ const float matrix[static 9], float alpha);
void (*render_quad_with_matrix)(struct wlr_renderer *renderer,
const float color[static 4], const float matrix[static 9]);
void (*render_ellipse_with_matrix)(struct wlr_renderer *renderer,
diff --git a/include/wlr/render/wlr_renderer.h b/include/wlr/render/wlr_renderer.h
index e6140f3e..513f412a 100644
--- a/include/wlr/render/wlr_renderer.h
+++ b/include/wlr/render/wlr_renderer.h
@@ -55,6 +55,13 @@ bool wlr_render_texture(struct wlr_renderer *r, struct wlr_texture *texture,
bool wlr_render_texture_with_matrix(struct wlr_renderer *r,
struct wlr_texture *texture, const float matrix[static 9], float alpha);
/**
+ * Renders the requested texture using the provided matrix, after cropping it
+ * to the provided rectangle.
+ */
+bool wlr_render_subtexture_with_matrix(struct wlr_renderer *r,
+ struct wlr_texture *texture, const struct wlr_fbox *box,
+ const float matrix[static 9], float alpha);
+/**
* Renders a solid rectangle in the specified color.
*/
void wlr_render_rect(struct wlr_renderer *r, const struct wlr_box *box,