aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Ser <contact@emersion.fr>2022-06-07 23:15:34 +0200
committerIsaac Freund <mail@isaacfreund.com>2022-06-08 19:27:36 +0000
commit96b594110ddbb4ab133ef4c9030a7c416175b20e (patch)
treec7fafbe43abbbb90246448661b7c9f09159233db
parentc2e046022f36001fd2b9fd369ac14acf73a20e23 (diff)
matrix: remove wlr_matrix_projection()
69477051ccff ("matrix: deprecate wlr_matrix_projection") marked it as deprecated. 1 year later, we can now remove it from our public API.
-rw-r--r--include/types/wlr_matrix.h15
-rw-r--r--include/wlr/types/wlr_matrix.h8
-rw-r--r--render/gles2/renderer.c3
-rw-r--r--render/vulkan/renderer.c5
-rw-r--r--types/wlr_matrix.c4
5 files changed, 22 insertions, 13 deletions
diff --git a/include/types/wlr_matrix.h b/include/types/wlr_matrix.h
new file mode 100644
index 00000000..ce599dc1
--- /dev/null
+++ b/include/types/wlr_matrix.h
@@ -0,0 +1,15 @@
+#ifndef TYPES_WLR_MATRIX_H
+#define TYPES_WLR_MATRIX_H
+
+#include <wlr/types/wlr_matrix.h>
+
+/**
+ * Writes a 2D orthographic projection matrix to mat of (width, height) with a
+ * specified wl_output_transform.
+ *
+ * Equivalent to glOrtho(0, width, 0, height, 1, -1) with the transform applied.
+ */
+void matrix_projection(float mat[static 9], int width, int height,
+ enum wl_output_transform transform);
+
+#endif
diff --git a/include/wlr/types/wlr_matrix.h b/include/wlr/types/wlr_matrix.h
index 1a8b5be5..043cf6d3 100644
--- a/include/wlr/types/wlr_matrix.h
+++ b/include/wlr/types/wlr_matrix.h
@@ -43,14 +43,6 @@ void wlr_matrix_rotate(float mat[static 9], float rad);
void wlr_matrix_transform(float mat[static 9],
enum wl_output_transform transform);
-/** Writes a 2D orthographic projection matrix to mat of (width, height) with a
- * specified wl_output_transform.
- *
- * Deprecated: this function is deprecated and will be removed in a future
- * version of wlroots. */
-void wlr_matrix_projection(float mat[static 9], int width, int height,
- enum wl_output_transform transform);
-
/** Shortcut for the various matrix operations involved in projecting the
* specified wlr_box onto a given orthographic projection with a given
* rotation. The result is written to mat, which can be applied to each
diff --git a/render/gles2/renderer.c b/render/gles2/renderer.c
index c47081ae..5a2f31b5 100644
--- a/render/gles2/renderer.c
+++ b/render/gles2/renderer.c
@@ -17,6 +17,7 @@
#include "render/egl.h"
#include "render/gles2.h"
#include "render/pixel_format.h"
+#include "types/wlr_matrix.h"
static const GLfloat verts[] = {
1, 0, // top right
@@ -203,7 +204,7 @@ static void gles2_begin(struct wlr_renderer *wlr_renderer, uint32_t width,
renderer->viewport_height = height;
// refresh projection matrix
- wlr_matrix_projection(renderer->projection, width, height,
+ matrix_projection(renderer->projection, width, height,
WL_OUTPUT_TRANSFORM_FLIPPED_180);
glBlendFunc(GL_ONE, GL_ONE_MINUS_SRC_ALPHA);
diff --git a/render/vulkan/renderer.c b/render/vulkan/renderer.c
index 21b36bdd..c373269d 100644
--- a/render/vulkan/renderer.c
+++ b/render/vulkan/renderer.c
@@ -23,6 +23,7 @@
#include "render/vulkan/shaders/texture.frag.h"
#include "render/vulkan/shaders/quad.frag.h"
#include "types/wlr_buffer.h"
+#include "types/wlr_matrix.h"
// TODO:
// - simplify stage allocation, don't track allocations but use ringbuffer-like
@@ -564,9 +565,9 @@ static void vulkan_begin(struct wlr_renderer *wlr_renderer,
vkCmdSetScissor(cb, 0, 1, &rect);
// Refresh projection matrix.
- // wlr_matrix_projection assumes a GL corrdinate system so we need
+ // matrix_projection() assumes a GL coordinate system so we need
// to pass WL_OUTPUT_TRANSFORM_FLIPPED_180 to adjust it for vulkan.
- wlr_matrix_projection(renderer->projection, width, height,
+ matrix_projection(renderer->projection, width, height,
WL_OUTPUT_TRANSFORM_FLIPPED_180);
renderer->render_width = width;
diff --git a/types/wlr_matrix.c b/types/wlr_matrix.c
index a1b2b31a..7b6671f5 100644
--- a/types/wlr_matrix.c
+++ b/types/wlr_matrix.c
@@ -4,6 +4,7 @@
#include <wlr/types/wlr_matrix.h>
#include <wlr/types/wlr_output.h>
#include <wlr/util/box.h>
+#include "types/wlr_matrix.h"
void wlr_matrix_identity(float mat[static 9]) {
static const float identity[9] = {
@@ -117,8 +118,7 @@ void wlr_matrix_transform(float mat[static 9],
wlr_matrix_multiply(mat, mat, transforms[transform]);
}
-// Equivalent to glOrtho(0, width, 0, height, 1, -1) with the transform applied
-void wlr_matrix_projection(float mat[static 9], int width, int height,
+void matrix_projection(float mat[static 9], int width, int height,
enum wl_output_transform transform) {
memset(mat, 0, sizeof(*mat) * 9);