diff options
Diffstat (limited to 'config/picom')
| -rwxr-xr-x | config/picom/picom-animations.conf | 310 | ||||
| -rwxr-xr-x | config/picom/picom.conf | 151 |
2 files changed, 461 insertions, 0 deletions
diff --git a/config/picom/picom-animations.conf b/config/picom/picom-animations.conf new file mode 100755 index 0000000..b59cfcb --- /dev/null +++ b/config/picom/picom-animations.conf @@ -0,0 +1,310 @@ +{ + match = "window_type = 'normal'"; + animations = ( + { + triggers = ["close"]; + opacity = { + curve = "cubic-bezier(0,1,1,1)"; + duration = 0.3; + start = "window-raw-opacity-before"; + end = 0; + }; + blur-opacity = "opacity"; + shadow-opacity = "opacity"; + + scale-x = { + curve = "cubic-bezier(0,1.3,1,1)"; + duration = 0.3; + start = 1; + end = 0.6; + }; + scale-y = "scale-x"; + + offset-x = "(1 - scale-x) / 2 * window-width"; + offset-y = "(1 - scale-y) / 2 * window-height"; + + shadow-scale-x = "scale-x"; + shadow-scale-y = "scale-y"; + shadow-offset-x = "offset-x"; + shadow-offset-y = "offset-y"; + }, + + { + triggers = ["open"]; + opacity = { + curve = "cubic-bezier(0,1,1,1)"; + duration = 0.3; + start = 0; + end = "window-raw-opacity"; + }; + blur-opacity = "opacity"; + shadow-opacity = "opacity"; + + scale-x = { + curve = "cubic-bezier(0,1.3,1,1)"; + duration = 0.3; + start = 0.6; + end = 1; + }; + scale-y = "scale-x"; + + offset-x = "(1 - scale-x) / 2 * window-width"; + offset-y = "(1 - scale-y) / 2 * window-height"; + + shadow-scale-x = "scale-x"; + shadow-scale-y = "scale-y"; + shadow-offset-x = "offset-x"; + shadow-offset-y = "offset-y"; + }, + + { + triggers = ["geometry"]; + scale-x = { + curve = "cubic-bezier(0,0,0,1.28)"; + duration = 0.3; + start = "window-width-before / window-width"; + end = 1; + }; + + scale-x-reverse = { + curve = "cubic-bezier(0,0,0,1.28)"; + duration = 0.4; + start = "window-width / window-width-before"; + end = 1; + }; + scale-y = { + curve = "cubic-bezier(0,0,0,1.28)"; + duration = 0.3; + start = "window-height-before / window-height"; + end = 1; + }; + scale-y-reverse = { + curve = "cubic-bezier(0,0,0,1.28)"; + duration = 0.4; + start = "window-height / window-height-before"; + end = 1; + }; + offset-x = { + curve = "cubic-bezier(0,0,0,1.28)"; + duration = 0.3; + start = "window-x-before - window-x"; + end = 0; + }; + offset-y = { + curve = "cubic-bezier(0,0,0,1.28)"; + duration = 0.3; + start = "window-y-before - window-y"; + end = 0; + }; + shadow-scale-x = "scale-x"; + shadow-scale-y = "scale-y"; + shadow-offset-x = "offset-x"; + shadow-offset-y = "offset-y"; + } + ) +}, + +{ + match = "class_g = 'Rofi'"; + animations = ( + { + triggers = ["close", "hide"]; + preset = "disappear"; + duration = 0.05; + scale = 0.4; + }, + { + triggers = ["open", "show"]; + preset = "appear"; + duration = 0.15; + scale = 0.4; + } + ) +}, + +{ + match = "class_g = 'dunst'"; + animations = ( + { + triggers = ["close", "hide"]; + preset = "fly-out"; + direction = "up"; + duration = 0.15; + }, + { + triggers = ["open", "show"]; + preset = "fly-in"; + direction = "up"; + duration = 0.15; + } + ) +}, + +{ + match = "class_g = 'jgmenu'"; + animations = ( + { + triggers = ["close", "hide"]; + preset = "disappear"; + duration = 0.05; + scale = 0.4; + }, + { + triggers = ["open", "show"]; + preset = "appear"; + duration = 0.1; + scale = 0.4; + } + ) +}, + +{ + match = "class_g = 'bspwm-scratch'"; + animations = ( + { + triggers = ["close", "hide"]; + preset = "fly-out"; + direction = "up"; + duration = 0.15; + }, + { + triggers = ["open", "show"]; + preset = "fly-in"; + direction = "up"; + duration = 0.15; + } + ) +}, + +{ + match = "name = 'Eww - launchermenu'"; + animations = ( + { + triggers = ["close", "hide"]; + preset = "slide-out"; + direction = "right"; + duration = 0.15; + }, + { + triggers = ["open", "show"]; + preset = "slide-in"; + direction = "right"; + duration = 0.15; + } + ) +}, + +{ + match = "name = 'Eww - music'"; + animations = ( + { + triggers = ["close", "hide"]; + preset = "slide-out"; + direction = "up"; + duration = 0.15; + }, + { + triggers = ["open", "show"]; + preset = "slide-in"; + direction = "up"; + duration = 0.15; + } + ) +}, + +{ + match = "name = 'Eww - date'"; + animations = ( + { + triggers = ["close", "hide"]; + preset = "fly-out"; + direction = "up"; + duration = 0.15; + }, + { + triggers = ["open", "show"]; + preset = "fly-in"; + direction = "up"; + duration = 0.15; + } + ) +}, + +{ + match = "name = 'Eww - csheet'"; + animations = ( + { + triggers = ["close", "hide"]; + preset = "disappear"; + duration = 0.05; + scale = 0.4; + }, + { + triggers = ["open", "show"]; + preset = "appear"; + duration = 0.1; + scale = 0.4; + } + ) +}, + +{ + match = "window_type = 'dock'"; + animations = ( + { + triggers = ["focus-in", "focus-out"]; + opacity = { + curve = "cubic-bezier(0, 0, 0, 1)"; + duration = 0.1; + start = 0; + end = 1; + }; + blur-opacity = "opacity"; + shadow-opacity = "opacity"; + + scale-x = { + curve = "cubic-bezier(0, 0, 0, 1)"; + duration = 0.15; + start = 0.9; + end = 1; + }; + scale-y = "scale-x"; + + offset-x = "(1 - scale-x) / 2 * window-width"; + offset-y = "(1 - scale-y) / 2 * window-height"; + + shadow-scale-x = "scale-x"; + shadow-scale-y = "scale-y"; + shadow-offset-x = "offset-x"; + shadow-offset-y = "offset-y"; + }, + + { + triggers = ["focus-out"]; + opacity = { + curve = "cubic-bezier(0, 0, 0, 1)"; + duration = 0.1; + start = 1; + end = 0; + }; + blur-opacity = "opacity"; + shadow-opacity = "opacity"; + + scale-x = { + curve = "cubic-bezier(0, 0, 0, 1)"; + duration = 0.15; + start = 1; + end = 0.9; + }; + scale-y = "scale-x"; + + offset-x = "(1 - scale-x) / 2 * window-width"; + offset-y = "(1 - scale-y) / 2 * window-height"; + + shadow-scale-x = "scale-x"; + shadow-scale-y = "scale-y"; + shadow-offset-x = "offset-x"; + shadow-offset-y = "offset-y"; + } + ) +} diff --git a/config/picom/picom.conf b/config/picom/picom.conf new file mode 100755 index 0000000..29f35a2 --- /dev/null +++ b/config/picom/picom.conf @@ -0,0 +1,151 @@ +shadow-radius = 1; +shadow-opacity = .1; +shadow-offset-x = -7; +shadow-offset-y = -7; +shadow-color = "#000000" + +fading = true; +fade-in-step = 0.03; +fade-out-step = 0.03; +fade-delta = 5 +no-fading-openclose = false; +no-fading-destroyed-argb = false + +frame-opacity = 1.0; + +backend = "glx" +dithered-present = false; +vsync = true; + +detect-rounded-corners = true; +detect-client-opacity = true; +detect-transient = true; + +use-damage = true; + +blur: + { + method = "dual_kawase"; + size = 10; + deviation = 2.5; + } + +rules: ( + { + blur-background = true; + blur-background-fixed = true; + fade = false; + }, + { + match = "window_type = 'dock'"; + corner-radius = 0; + shadow = false; + }, + { + match = "class_g = 'dwm' || class_g = 'Polybar' || class_g = 'dmenu'"; + corner-radius = 0; + blur-background = true; + opacity = 0.80; + shadow = false; + }, + { + match = "fullscreen = true"; + corner-radius = 0; + }, + { + match = "window_type = 'normal'"; + fade = true; + shadow = true; + }, + { + match = "window_type = 'dialog'"; + shadow = true; + }, + { + match = "window_type = 'tooltip'"; + corner-radius = 0; + opacity = 0.90; + }, + { + match = "window_type = 'dock'"; + corner-radius = 0; + fade = true; + }, + { + match = "window_type = 'dropdown_menu' || window_type = 'menu' || window_type = 'popup' || window_type = 'popup_menu'"; + corner-radius = 0; + }, + { + match = "class_g = 'Alacritty' || class_g = 'kitty' || class_g = 'FloaTerm'"; + opacity = 0.8; + blur-background = true; + }, + { + match = "class_g = 'Polybar' || class_g = 'eww-bar' || class_g = 'Viewnior' || class_g = 'Rofi' || class_g = 'mpv' || class_g = 'bspwm-scratch' || class_g = 'Dunst' || class_g = 'retroarch'"; + corner-radius = 0; + }, + { + match = "name = 'Notification' || class_g ?= 'Notify-osd' || class_g = 'Dunst' || class_g = 'Polybar' || class_g = 'Eww' || class_g = 'jgmenu' || class_g = 'scratch' || class_g = 'Spotify' || class_g = 'retroarch' || class_g = 'firefox' || class_g = 'Rofi' || class_g = 'Screenkey' || class_g = 'mpv' || class_g = 'Viewnior' || _GTK_FRAME_EXTENTS@"; + shadow = false; + }, + { + match = "window_type = 'normal'"; + animations = ( + { + triggers = ["open"]; + opacity = { + curve = "cubic-bezier(0,1,1,1)"; + duration = 0.3; + start = 0; + end = "window-raw-opacity"; + }; + blur-opacity = "opacity"; + shadow-opacity = "opacity"; + + scale-x = { + curve = "cubic-bezier(0,1.3,1,1)"; + duration = 0.3; + start = 0.6; + end = 1; + }; + scale-y = "scale-x"; + + offset-x = "(1 - scale-x) / 2 * window-width"; + offset-y = "(1 - scale-y) / 2 * window-height"; + + shadow-scale-x = "scale-x"; + shadow-scale-y = "scale-y"; + shadow-offset-x = "offset-x"; + shadow-offset-y = "offset-y"; + }, + { + triggers = ["close"]; + opacity = { + curve = "cubic-bezier(0,1,1,1)"; + duration = 0.3; + start = "window-raw-opacity-before"; + end = 0; + }; + blur-opacity = "opacity"; + shadow-opacity = "opacity"; + + scale-x = { + curve = "cubic-bezier(0,1.3,1,1)"; + duration = 0.3; + start = 1; + end = 0.6; + }; + scale-y = "scale-x"; + + offset-x = "(1 - scale-x) / 2 * window-width"; + offset-y = "(1 - scale-y) / 2 * window-height"; + + shadow-scale-x = "scale-x"; + shadow-scale-y = "scale-y"; + shadow-offset-x = "offset-x"; + shadow-offset-y = "offset-y"; + } + ) + }, + @include "picom-animations.conf" +) |
