From 82af6e720870e66a49c5e514468ffea71742b280 Mon Sep 17 00:00:00 2001 From: Simon Ser Date: Thu, 1 Jul 2021 10:45:25 +0200 Subject: [PATCH] region: stabilize interface References: https://github.com/swaywm/wlroots/issues/1008 --- include/wlr/types/wlr_region.h | 26 ++++++++++++++++++++------ types/wlr_region.c | 2 +- 2 files changed, 21 insertions(+), 7 deletions(-) diff --git a/include/wlr/types/wlr_region.h b/include/wlr/types/wlr_region.h index 532f86df..45da8880 100644 --- a/include/wlr/types/wlr_region.h +++ b/include/wlr/types/wlr_region.h @@ -1,17 +1,31 @@ /* - * This an unstable interface of wlroots. No guarantees are made regarding the - * future consistency of this API. + * This is a stable interface of wlroots. Future changes will be limited to: + * + * - New functions + * - New struct members + * - New enum members + * + * Note that wlroots does not make an ABI compatibility promise - in the future, + * the layout and size of structs used by wlroots may change, requiring code + * depending on this header to be recompiled (but not edited). + * + * Breaking changes are announced by email and follow a 1-year deprecation + * schedule. Send an email to ~sircmpwn/wlroots-announce+subscribe@lists.sr.ht + * to receive these announcements. */ -#ifndef WLR_USE_UNSTABLE -#error "Add -DWLR_USE_UNSTABLE to enable unstable wlroots features" -#endif #ifndef WLR_TYPES_WLR_REGION_H #define WLR_TYPES_WLR_REGION_H #include -#include +struct wl_resource; + +/** + * Obtain a Pixman region from a wl_region resource. + * + * To allow clients to create wl_region objects, call wlr_compositor_create(). + */ pixman_region32_t *wlr_region_from_resource(struct wl_resource *resource); #endif diff --git a/types/wlr_region.c b/types/wlr_region.c index de14315d..db4f09a3 100644 --- a/types/wlr_region.c +++ b/types/wlr_region.c @@ -2,7 +2,7 @@ #include #include #include -#include +#include #include #include "types/wlr_region.h"