feat: add blur_layer option
This commit is contained in:
@@ -197,6 +197,7 @@ typedef struct {
|
|||||||
double accel_speed;
|
double accel_speed;
|
||||||
|
|
||||||
int blur;
|
int blur;
|
||||||
|
int blur_layer;
|
||||||
int border_radius;
|
int border_radius;
|
||||||
struct blur_data blur_params;
|
struct blur_data blur_params;
|
||||||
int shadows;
|
int shadows;
|
||||||
@@ -891,6 +892,8 @@ void parse_config_line(Config *config, const char *line) {
|
|||||||
config->focus_cross_tag = atoi(value);
|
config->focus_cross_tag = atoi(value);
|
||||||
} else if (strcmp(key, "blur") == 0) {
|
} else if (strcmp(key, "blur") == 0) {
|
||||||
config->blur = atoi(value);
|
config->blur = atoi(value);
|
||||||
|
} else if (strcmp(key, "blur_layer") == 0) {
|
||||||
|
config->blur_layer = atoi(value);
|
||||||
} else if (strcmp(key, "border_radius") == 0) {
|
} else if (strcmp(key, "border_radius") == 0) {
|
||||||
config->border_radius = atoi(value);
|
config->border_radius = atoi(value);
|
||||||
} else if (strcmp(key, "blur_params_num_passes") == 0) {
|
} else if (strcmp(key, "blur_params_num_passes") == 0) {
|
||||||
@@ -2081,6 +2084,7 @@ void override_config(void) {
|
|||||||
smartgaps = CLAMP_INT(config.smartgaps, 0, 1);
|
smartgaps = CLAMP_INT(config.smartgaps, 0, 1);
|
||||||
|
|
||||||
blur = CLAMP_INT(config.blur, 0, 1);
|
blur = CLAMP_INT(config.blur, 0, 1);
|
||||||
|
blur_layer = CLAMP_INT(config.blur_layer, 0, 1);
|
||||||
border_radius = CLAMP_INT(config.border_radius, 0, 100);
|
border_radius = CLAMP_INT(config.border_radius, 0, 100);
|
||||||
blur_params.num_passes = CLAMP_INT(config.blur_params.num_passes, 0, 10);
|
blur_params.num_passes = CLAMP_INT(config.blur_params.num_passes, 0, 10);
|
||||||
blur_params.radius = CLAMP_INT(config.blur_params.radius, 0, 100);
|
blur_params.radius = CLAMP_INT(config.blur_params.radius, 0, 100);
|
||||||
@@ -2209,6 +2213,7 @@ void set_value_default() {
|
|||||||
config.accel_speed = accel_speed;
|
config.accel_speed = accel_speed;
|
||||||
|
|
||||||
config.blur = blur;
|
config.blur = blur;
|
||||||
|
config.blur_layer = blur_layer;
|
||||||
config.border_radius = border_radius;
|
config.border_radius = border_radius;
|
||||||
config.blur_params.num_passes = blur_params_num_passes;
|
config.blur_params.num_passes = blur_params_num_passes;
|
||||||
config.blur_params.radius = blur_params_radius;
|
config.blur_params.radius = blur_params_radius;
|
||||||
|
|||||||
@@ -187,6 +187,7 @@ float unfocused_opacity = 0.8;
|
|||||||
int border_radius = 0;
|
int border_radius = 0;
|
||||||
int border_radius_location_default = CORNER_LOCATION_ALL;
|
int border_radius_location_default = CORNER_LOCATION_ALL;
|
||||||
int blur = 0;
|
int blur = 0;
|
||||||
|
int blur_layer = 0;
|
||||||
|
|
||||||
struct blur_data {
|
struct blur_data {
|
||||||
int num_passes;
|
int num_passes;
|
||||||
|
|||||||
@@ -3129,7 +3129,7 @@ static void iter_layer_scene_buffers(struct wlr_scene_buffer *buffer, int sx,
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (blur && l) {
|
if (blur && blur_layer && l) {
|
||||||
wlr_scene_buffer_set_backdrop_blur(buffer, true);
|
wlr_scene_buffer_set_backdrop_blur(buffer, true);
|
||||||
wlr_scene_buffer_set_backdrop_blur_optimized(buffer, true);
|
wlr_scene_buffer_set_backdrop_blur_optimized(buffer, true);
|
||||||
wlr_scene_buffer_set_backdrop_blur_ignore_transparent(buffer, true);
|
wlr_scene_buffer_set_backdrop_blur_ignore_transparent(buffer, true);
|
||||||
|
|||||||
Reference in New Issue
Block a user