summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorErik Reider <[email protected]>2023-04-28 00:50:36 +0200
committerGitHub <[email protected]>2023-04-27 18:50:36 -0400
commit5366c49b56ed8335a957482ed40de3eb021929fb (patch)
tree33d15c8041c16cfed7c4b33159383824baeeb90a /include
parent3d1b294cc078c96120a4fb44a885a0eebe07ba96 (diff)
Fix: rotated outputs (#112)
Diffstat (limited to 'include')
-rw-r--r--include/sway/desktop/fx_renderer/fx_renderer.h15
1 files changed, 10 insertions, 5 deletions
diff --git a/include/sway/desktop/fx_renderer/fx_renderer.h b/include/sway/desktop/fx_renderer/fx_renderer.h
index 200ecb7b..109351e2 100644
--- a/include/sway/desktop/fx_renderer/fx_renderer.h
+++ b/include/sway/desktop/fx_renderer/fx_renderer.h
@@ -9,7 +9,7 @@
#include "sway/desktop/fx_renderer/fx_framebuffer.h"
#include "sway/desktop/fx_renderer/fx_texture.h"
-enum corner_location { ALL, TOP_LEFT, TOP_RIGHT, BOTTOM_LEFT, BOTTOM_RIGHT, NONE };
+enum corner_location { TOP_LEFT, TOP_RIGHT, BOTTOM_RIGHT, BOTTOM_LEFT, ALL, NONE };
enum fx_tex_shader_source {
SHADER_SOURCE_TEXTURE_RGBA = 1,
@@ -21,6 +21,8 @@ enum fx_rounded_quad_shader_source {
SHADER_SOURCE_QUAD_ROUND = 1,
SHADER_SOURCE_QUAD_ROUND_TOP_LEFT = 2,
SHADER_SOURCE_QUAD_ROUND_TOP_RIGHT = 3,
+ SHADER_SOURCE_QUAD_ROUND_BOTTOM_RIGHT = 4,
+ SHADER_SOURCE_QUAD_ROUND_BOTTOM_LEFT = 5,
};
struct decoration_data {
@@ -106,6 +108,8 @@ struct fx_renderer {
struct rounded_quad_shader rounded_quad;
struct rounded_quad_shader rounded_tl_quad;
struct rounded_quad_shader rounded_tr_quad;
+ struct rounded_quad_shader rounded_bl_quad;
+ struct rounded_quad_shader rounded_br_quad;
struct blur_shader blur1;
struct blur_shader blur2;
@@ -165,15 +169,16 @@ void fx_render_rect(struct fx_renderer *renderer, const struct wlr_box *box,
const float color[static 4], const float projection[static 9]);
void fx_render_rounded_rect(struct fx_renderer *renderer, const struct wlr_box *box,
- const float color[static 4], const float projection[static 9],
- int radius, enum corner_location corner_location);
+ const float color[static 4], const float matrix[static 9], int radius,
+ enum corner_location corner_location);
void fx_render_border_corner(struct fx_renderer *renderer, const struct wlr_box *box,
- const float color[static 4], const float projection[static 9],
+ const float color[static 4], const float matrix[static 9],
enum corner_location corner_location, int radius, int border_thickness);
void fx_render_box_shadow(struct fx_renderer *renderer, const struct wlr_box *box,
- const float color[static 4], const float projection[static 9], int radius, float blur_sigma);
+ const float color[static 4], const float matrix[static 9], int radius,
+ float blur_sigma);
void fx_render_blur(struct fx_renderer *renderer, const float matrix[static 9],
struct fx_framebuffer **buffer, struct blur_shader *shader, const struct wlr_box *box,