aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorSimon Ser <contact@emersion.fr>2020-06-08 17:35:21 +0200
committerDrew DeVault <sir@cmpwn.com>2020-06-17 09:10:54 -0600
commitc618a765403c4edaa6a46c32f72fab16cec48197 (patch)
tree05240070da4c515bf88e32e0abf5745d1c67061b /include
parenteb22ae97b01e26f2a64f81c0e34ef7ad1f870ac4 (diff)
surface: introduce wlr_surface_get_buffer_source_box
This helper allows compositors to retrieve the buffer source box in buffer-local coordinates.
Diffstat (limited to 'include')
-rw-r--r--include/wlr/types/wlr_surface.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/include/wlr/types/wlr_surface.h b/include/wlr/types/wlr_surface.h
index 250d28dd..2cd4ac5d 100644
--- a/include/wlr/types/wlr_surface.h
+++ b/include/wlr/types/wlr_surface.h
@@ -262,4 +262,15 @@ void wlr_surface_for_each_surface(struct wlr_surface *surface,
void wlr_surface_get_effective_damage(struct wlr_surface *surface,
pixman_region32_t *damage);
+/**
+ * Get the source rectangle describing the region of the buffer that needs to
+ * be sampled to render this surface's current state. The box is in
+ * buffer-local coordinates.
+ *
+ * If the viewport's source rectangle is unset, the position is zero and the
+ * size is the buffer's.
+ */
+void wlr_surface_get_buffer_source_box(struct wlr_surface *surface,
+ struct wlr_fbox *box);
+
#endif