diff --git a/types/wlr_output.c b/types/wlr_output.c index 15b2f402..08d32963 100644 --- a/types/wlr_output.c +++ b/types/wlr_output.c @@ -503,21 +503,12 @@ void wlr_output_cursor_destroy(struct wlr_output_cursor *cursor) { void wlr_output_transform_apply_to_box(enum wl_output_transform transform, struct wlr_box *box, struct wlr_box *dest) { - switch (transform) { - case WL_OUTPUT_TRANSFORM_NORMAL: - case WL_OUTPUT_TRANSFORM_180: - case WL_OUTPUT_TRANSFORM_FLIPPED: - case WL_OUTPUT_TRANSFORM_FLIPPED_180: + if (transform % 2 == 0) { dest->width = box->width; dest->height = box->height; - break; - case WL_OUTPUT_TRANSFORM_90: - case WL_OUTPUT_TRANSFORM_270: - case WL_OUTPUT_TRANSFORM_FLIPPED_90: - case WL_OUTPUT_TRANSFORM_FLIPPED_270: + } else { dest->width = box->height; dest->height = box->width; - break; } switch (transform) { @@ -552,5 +543,6 @@ void wlr_output_transform_apply_to_box(enum wl_output_transform transform, case WL_OUTPUT_TRANSFORM_FLIPPED_270: dest->x = box->height - box->y; dest->y = box->width - box->x; + break; } }