util/transform: move over wl_output_transform helpers

These aren't really tied to wlr_output.
This commit is contained in:
Simon Ser 2023-05-03 12:32:44 +02:00
parent a3d22dbe97
commit 9e702e9cfe
13 changed files with 38 additions and 18 deletions

View file

@ -729,19 +729,4 @@ bool wlr_output_configure_primary_swapchain(struct wlr_output *output,
struct wlr_render_pass *wlr_output_begin_render_pass(struct wlr_output *output,
struct wlr_output_state *state, int *buffer_age, struct wlr_render_timer *timer);
/**
* Returns the transform that, when composed with `tr`, gives
* `WL_OUTPUT_TRANSFORM_NORMAL`.
*/
enum wl_output_transform wlr_output_transform_invert(
enum wl_output_transform tr);
/**
* Returns a transform that, when applied, has the same effect as applying
* sequentially `tr_a` and `tr_b`.
*/
enum wl_output_transform wlr_output_transform_compose(
enum wl_output_transform tr_a, enum wl_output_transform tr_b);
#endif

View file

@ -0,0 +1,28 @@
/*
* This an unstable interface of wlroots. No guarantees are made regarding the
* future consistency of this API.
*/
#ifndef WLR_USE_UNSTABLE
#error "Add -DWLR_USE_UNSTABLE to enable unstable wlroots features"
#endif
#ifndef WLR_UTIL_TRANSFORM_H
#define WLR_UTIL_TRANSFORM_H
#include <wayland-server-protocol.h>
/**
* Returns the transform that, when composed with `tr`, gives
* `WL_OUTPUT_TRANSFORM_NORMAL`.
*/
enum wl_output_transform wlr_output_transform_invert(
enum wl_output_transform tr);
/**
* Returns a transform that, when applied, has the same effect as applying
* sequentially `tr_a` and `tr_b`.
*/
enum wl_output_transform wlr_output_transform_compose(
enum wl_output_transform tr_a, enum wl_output_transform tr_b);
#endif