nix-config/modules/wm/hyprland/animations.nix

103 lines
2.1 KiB
Nix

{
lib,
config,
...
}: let
inherit (lib) mkIf;
cfg = config.horseman.wm.hyprland;
in {
config = mkIf cfg.enable {
nix-hyprland = {
animations = {
enabled = true;
beziers = [
{
name = "easeOut";
startX = 0.23;
startY = 1.0;
endX = 0.32;
endY = 1.0;
}
{
name = "easeInOut";
startX = 0.65;
startY = 0.05;
endX = 0.36;
endY = 1.0;
}
{
name = "linear";
startX = 0.0;
startY = 0.0;
endX = 1.0;
endY = 1.0;
}
{
name = "bounce";
startX = 0.6;
startY = 1.5;
endX = 0.8;
endY = 1;
}
{
name = "slowFade";
startX = 0.4;
startY = 1.0;
endX = 0.4;
endY = 1.0;
}
];
animations = [
{
name = "global";
enabled = false;
}
{
name = "border";
speed = 3;
curve = "linear";
}
{
name = "workspaces";
speed = 1.5;
curve = "easeInOut";
style = "fade";
}
{
name = "specialWorkspace";
speed = 1.5;
curve = "easeOut";
style = "slidevert";
}
{
name = "fadeDpms";
speed = 20;
curve = "slowFade";
}
{
name = "windows";
speed = 2;
curve = "bounce";
style = "gnomed";
}
{
name = "windowsOut";
enabled = false;
}
{
name = "layers";
speed = 1.5;
curve = "slowFade";
style = "popin";
}
{
name = "fadeLayers";
speed = 1.5;
curve = "linear";
}
];
};
};
};
}