summaryrefslogtreecommitdiff
path: root/sway/desktop/fx_renderer.c
diff options
context:
space:
mode:
authorWill McKinnon <[email protected]>2022-11-11 20:05:05 -0500
committerWill McKinnon <[email protected]>2022-11-11 20:05:17 -0500
commit6ca742d4f2408e2277b98825206ed9d7e6cf41b1 (patch)
tree66c86680d3b44a36772ac7cea7469ca19c9d9247 /sway/desktop/fx_renderer.c
parent1881b01d3fe1805d371589969b4a75b9cccd8d26 (diff)
feat: render tiling move indicator with round corners
Diffstat (limited to 'sway/desktop/fx_renderer.c')
-rw-r--r--sway/desktop/fx_renderer.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/sway/desktop/fx_renderer.c b/sway/desktop/fx_renderer.c
index 8963f06e..970da9b3 100644
--- a/sway/desktop/fx_renderer.c
+++ b/sway/desktop/fx_renderer.c
@@ -20,6 +20,7 @@
// shaders
#include "quad_vert_src.h"
#include "quad_frag_src.h"
+#include "quad_round_frag_src.h"
#include "quad_round_tl_frag_src.h"
#include "quad_round_tr_frag_src.h"
#include "corner_frag_src.h"
@@ -163,6 +164,10 @@ struct fx_renderer *fx_renderer_create(struct wlr_egl *egl) {
renderer->shaders.quad.pos_attrib = glGetAttribLocation(prog, "pos");
// rounded quad fragment shaders
+ prog = link_program(quad_vert_src, quad_round_frag_src);
+ if (!init_rounded_quad_shader(&renderer->shaders.rounded_quad, prog)) {
+ goto error;
+ }
prog = link_program(quad_vert_src, quad_round_tl_frag_src);
if (!init_rounded_quad_shader(&renderer->shaders.rounded_tl_quad, prog)) {
goto error;
@@ -407,6 +412,9 @@ void fx_render_rounded_rect(struct fx_renderer *renderer, const struct wlr_box *
struct rounded_quad_shader *shader = NULL;
switch (corner_location) {
+ case ALL:
+ shader = &renderer->shaders.rounded_quad;
+ break;
case TOP_LEFT:
shader = &renderer->shaders.rounded_tl_quad;
break;