summaryrefslogtreecommitdiff
path: root/home-configuration/config/picom/picom-animations.conf
diff options
context:
space:
mode:
Diffstat (limited to 'home-configuration/config/picom/picom-animations.conf')
-rw-r--r--home-configuration/config/picom/picom-animations.conf262
1 files changed, 262 insertions, 0 deletions
diff --git a/home-configuration/config/picom/picom-animations.conf b/home-configuration/config/picom/picom-animations.conf
new file mode 100644
index 0000000..b101824
--- /dev/null
+++ b/home-configuration/config/picom/picom-animations.conf
@@ -0,0 +1,262 @@
+# Animations for NORMAL windows.
+ {
+ match = "window_type = 'normal'";
+ animations = (
+ {
+ triggers = ["close"];
+ opacity = {
+ curve = "cubic-bezier(0,1,1,1)";
+ duration = 0.6;
+ 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.6;
+ 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";
+ },
+
+ # Animación de APERTURA
+ {
+ triggers = ["open"];
+ opacity = {
+ curve = "cubic-bezier(0,1,1,1)";
+ duration = 0.5;
+ start = 0;
+ end = "window-raw-opacity";
+ };
+ blur-opacity = "opacity";
+ shadow-opacity = "opacity";
+
+ scale-x = {
+ curve = "cubic-bezier(0,1.3,1,1)";
+ duration = 0.5;
+ 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";
+ },
+
+ # Animación de GEOMETRÍA (modificada para ambos casos)
+ {
+ triggers = ["geometry"];
+ # Cuando la ventana CRECE (abrir/mover/redimensionar)
+ scale-x = {
+ curve = "cubic-bezier(0,0,0,1.28)";
+ duration = 0.5;
+ start = "window-width-before / window-width";
+ end = 1;
+ };
+
+ # Cuando la ventana ENCOGE (cerrar/mover/redimensionar)
+ scale-x-reverse = {
+ curve = "cubic-bezier(0,0,0,1.28)";
+ duration = 0.6;
+ start = "window-width / window-width-before";
+ end = 1;
+ };
+ scale-y = {
+ curve = "cubic-bezier(0,0,0,1.28)";
+ duration = 0.5;
+ start = "window-height-before / window-height";
+ end = 1;
+ };
+ scale-y-reverse = {
+ curve = "cubic-bezier(0,0,0,1.28)";
+ duration = 0.6;
+ start = "window-height / window-height-before";
+ end = 1;
+ };
+ offset-x = {
+ curve = "cubic-bezier(0,0,0,1.28)";
+ duration = 0.5;
+ start = "window-x-before - window-x";
+ end = 0;
+ };
+ offset-y = {
+ curve = "cubic-bezier(0,0,0,1.28)";
+ duration = 0.5;
+ 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";
+ }
+ )
+ },
+
+# Animations for Rofi launchers.
+ {
+ match = "class_g = 'Rofi'";
+ animations = (
+ {
+ triggers = ["close", "hide"];
+ preset = "disappear";
+ duration = 0.05;
+ scale = 0.5;
+ },
+ {
+ triggers = ["open", "show"];
+ preset = "appear";
+ duration = 0.2;
+ scale = 0.5;
+ }
+ )
+ },
+
+# Animations for Dunst notifications.
+ {
+ match = "class_g = 'dunst'";
+ animations = (
+ {
+ triggers = ["close", "hide"];
+ preset = "fly-out"; #-dunst-close-preset
+ direction = "up"; #-dunst-close-direction
+ duration = 0.2;
+ },
+ {
+ triggers = ["open", "show"];
+ preset = "fly-in"; #-dunst-open-preset
+ direction = "up"; #-dunst-open-direction
+ duration = 0.2;
+ }
+ )
+ },
+
+# Animations for Jgmenu.
+ {
+ match = "class_g = 'jgmenu'";
+ animations = (
+ {
+ triggers = ["close", "hide"];
+ preset = "disappear";
+ duration = 0.08;
+ scale = 0.5;
+ },
+ {
+ triggers = ["open", "show"];
+ preset = "appear";
+ duration = 0.15;
+ scale = 0.5;
+ }
+ )
+ },
+
+# Animations for Scratchpad.
+ {
+ match = "class_g = 'bspwm-scratch'";
+ animations = (
+ {
+ triggers = ["close", "hide"];
+ preset = "fly-out";
+ direction = "up";
+ duration = 0.2;
+ },
+ {
+ triggers = ["open", "show"];
+ preset = "fly-in";
+ direction = "up";
+ duration = 0.2;
+ }
+ )
+ },
+
+# Animations for Eww Profile card.
+ {
+ match = "name = 'Eww - launchermenu'";
+ animations = (
+ {
+ triggers = ["close", "hide"];
+ preset = "slide-out";
+ direction = "right";
+ duration = 0.2;
+ },
+ {
+ triggers = ["open", "show"];
+ preset = "slide-in";
+ direction = "right";
+ duration = 0.2;
+ }
+ )
+ },
+
+# Animations for Eww Music player.
+ {
+ match = "name = 'Eww - music'";
+ animations = (
+ {
+ triggers = ["close", "hide"];
+ preset = "slide-out";
+ direction = "up";
+ duration = 0.2;
+ },
+ {
+ triggers = ["open", "show"];
+ preset = "slide-in";
+ direction = "up";
+ duration = 0.2;
+ }
+ )
+ },
+
+# Animations for Eww calendar.
+ {
+ match = "name = 'Eww - date'";
+ animations = (
+ {
+ triggers = ["close", "hide"];
+ preset = "fly-out";
+ direction = "up";
+ duration = 0.2;
+ },
+ {
+ triggers = ["open", "show"];
+ preset = "fly-in";
+ direction = "up";
+ duration = 0.2;
+ }
+ )
+ },
+
+# Animations for Eww Cheatsheet.
+ {
+ match = "name = 'Eww - csheet'";
+ animations = (
+ {
+ triggers = ["close", "hide"];
+ preset = "disappear";
+ duration = 0.08;
+ scale = 0.5;
+ },
+ {
+ triggers = ["open", "show"];
+ preset = "appear";
+ duration = 0.15;
+ scale = 0.5;
+ }
+ )
+ }