diff options
| -rw-r--r-- | meson.build | 4 | ||||
| -rw-r--r-- | picom.sample.conf | 2 | ||||
| -rw-r--r-- | src/config_libconfig.c | 2 | ||||
| -rw-r--r-- | src/options.c | 2 | ||||
| -rw-r--r-- | src/win.c | 14 |
5 files changed, 16 insertions, 8 deletions
diff --git a/meson.build b/meson.build index 95cb3f0..22db958 100644 --- a/meson.build +++ b/meson.build @@ -1,10 +1,10 @@ -project('picom', 'c', version: '1.3.1', +project('picom', 'c', version: '1.3.2', default_options: ['c_std=c11', 'warning_level=1']) cc = meson.get_compiler('c') # use project version by default -version = 'v1.3.1' +version = 'v1.3.2' # use git describe if that's available # git = find_program('git', required: false) diff --git a/picom.sample.conf b/picom.sample.conf index 61bc10b..0fb8bb2 100644 --- a/picom.sample.conf +++ b/picom.sample.conf @@ -150,7 +150,7 @@ active-opacity = 1.0 # Unless the window is also in active-opacity-exclude then it will be set to 1.0 or if it is set in "opacity-rule", # it will use the opacity set there as the inactive-opacity # -# inactive-opacity-exclude = [ +# inactive-exclude = [ # "class_g = 'dwm'" # ]; diff --git a/src/config_libconfig.c b/src/config_libconfig.c index 57a3bf7..1b81a50 100644 --- a/src/config_libconfig.c +++ b/src/config_libconfig.c @@ -589,7 +589,7 @@ char *parse_config_libconfig(options_t *opt, const char *config_file, bool *shad // active opacity exclude parse_cfg_condlst(&cfg, &opt->active_opacity_blacklist, "active-opacity-exclude"); // inactive opacity exclude - parse_cfg_condlst(&cfg, &opt->inactive_opacity_blacklist, "inactive-opacity-exclude"); + parse_cfg_condlst(&cfg, &opt->inactive_opacity_blacklist, "inactive-exclude"); // corners-rule parse_cfg_condlst_corner(opt, &cfg, "corners-rule"); // blur-rule diff --git a/src/options.c b/src/options.c index 6bdfa0e..c98a77e 100644 --- a/src/options.c +++ b/src/options.c @@ -189,7 +189,7 @@ static const struct picom_option picom_options[] = { {"animation-unmap-exclude", required_argument, 815, NULL, "animation unmap exclude list"}, {"wm-support", required_argument, 816, NULL, "Set specific window manager support"}, {"active-opacity-exclude", required_argument, 817, NULL, "Exclude windows from being affected by active opacity"}, - {"inactive-opacity-exclude", required_argument, 818, NULL, "Exclude windows from being affected by inactive opacity"}, + {"inactive-exclude", required_argument, 818, NULL, "Exclude windows from being affected by inactive opacity"}, }; // clang-format on @@ -1212,13 +1212,21 @@ bool win_should_dim(session_t *ps, const struct managed_win *w) { if (ps->o.support_for_wm == WM_SUPPORT_DWM) { if (ps->o.inactive_dim > 0 && !win_is_focused_raw(ps, w)) { - return true; + if (c2_match(ps, w, ps->o.inactive_opacity_blacklist, NULL)) { + return false; + } else { + return true; + } } else { return false; } } else { - if (ps->o.inactive_dim > 0 && !w->focused) { - return true; + if (ps->o.inactive_dim > 0 && !win_is_focused_raw(ps, w)) { + if (c2_match(ps, w, ps->o.inactive_opacity_blacklist, NULL)) { + return false; + } else { + return true; + } } else { return false; } |