summaryrefslogtreecommitdiff
path: root/sway/config.c
diff options
context:
space:
mode:
Diffstat (limited to 'sway/config.c')
-rw-r--r--sway/config.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/sway/config.c b/sway/config.c
index 04c75171..fbcf94a4 100644
--- a/sway/config.c
+++ b/sway/config.c
@@ -21,6 +21,7 @@
#include "sway/commands.h"
#include "sway/config.h"
#include "sway/criteria.h"
+#include "sway/layer_criteria.h"
#include "sway/desktop/transaction.h"
#include "sway/swaynag.h"
#include "sway/tree/arrange.h"
@@ -157,6 +158,12 @@ void free_config(struct sway_config *config) {
}
list_free(config->criteria);
}
+ if (config->layer_criteria) {
+ for (int i = 0; i < config->layer_criteria->length; ++i) {
+ layer_criteria_destroy(config->layer_criteria->items[i]);
+ }
+ list_free(config->layer_criteria);
+ }
list_free(config->no_focus);
list_free(config->active_bar_modifiers);
list_free_items_and_destroy(config->config_chain);
@@ -354,6 +361,8 @@ static void config_defaults(struct sway_config *config) {
config->titlebar_separator = true;
config->scratchpad_minimize = true;
+ if (!(config->layer_criteria = create_list())) goto cleanup;
+
// The keysym to keycode translation
struct xkb_rule_names rules = {0};
config->keysym_translation_state =
@@ -1092,3 +1101,7 @@ int config_get_blur_size() {
bool config_should_parameters_blur() {
return config->blur_params.radius > 0 && config->blur_params.num_passes > 0;
}
+
+bool config_should_parameters_shadow() {
+ return config->shadow_blur_sigma > 0 && config->shadow_color[3] > 0.0;
+}