summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorErik Reider <[email protected]>2024-02-15 09:48:31 +0100
committerGitHub <[email protected]>2024-02-15 09:48:31 +0100
commit2bd366f3372d6f94f6633e62b7f7b06fcf316943 (patch)
treec3361e15ba86b73f37d0a442da84312ce4c666af /include
parentd1482ad992001facc89c4bd93ee7fb6995bc134c (diff)
Add blur to tiling indicator (#252)
Diffstat (limited to 'include')
-rw-r--r--include/sway/desktop/fx_renderer/fx_renderer.h2
-rw-r--r--include/sway/output.h11
2 files changed, 13 insertions, 0 deletions
diff --git a/include/sway/desktop/fx_renderer/fx_renderer.h b/include/sway/desktop/fx_renderer/fx_renderer.h
index 924d9951..7643caaf 100644
--- a/include/sway/desktop/fx_renderer/fx_renderer.h
+++ b/include/sway/desktop/fx_renderer/fx_renderer.h
@@ -180,6 +180,8 @@ struct fx_renderer {
} shaders;
};
+struct decoration_data get_undecorated_decoration_data();
+
struct fx_renderer *fx_renderer_create(struct wlr_egl *egl, struct wlr_output *output);
void fx_renderer_fini(struct fx_renderer *renderer);
diff --git a/include/sway/output.h b/include/sway/output.h
index 3215c853..bd65237e 100644
--- a/include/sway/output.h
+++ b/include/sway/output.h
@@ -19,6 +19,12 @@ struct render_data {
struct decoration_data deco_data;
};
+struct blur_stencil_data {
+ struct fx_texture *stencil_texture;
+ const struct wlr_fbox *stencil_src_box;
+ float *stencil_matrix;
+};
+
struct sway_output_state {
list_t *workspaces;
struct sway_workspace *active_workspace;
@@ -184,6 +190,11 @@ void render_rounded_rect(struct sway_output *output,
float color[static 4], int corner_radius,
enum corner_location corner_location);
+void render_blur(bool optimized, struct sway_output *output,
+ pixman_region32_t *output_damage, const struct wlr_box *dst_box,
+ pixman_region32_t *opaque_region, struct decoration_data *deco_data,
+ struct blur_stencil_data *stencil_data);
+
void premultiply_alpha(float color[4], float opacity);