dotfiles/home/.config/picom/picom.conf
Sarthak 7f41cf7a82 replace the old dotfiles with the sakura line rice
The bare $HOME repo is gone. This is now the rice: install.sh, rice-*
scripts in bin/, configs in home/ linked into $HOME, theme templates, st
and the particle wallpaper. Clone to ~/rice and run install.sh.
2026-09-14 19:44:44 +05:30

60 lines
2.2 KiB
Text

# Sakura Line - picom 13.
# One motion language for everything: windows, rofi, eww popups and dunst
# all appear with the same short scale-and-fade.
backend = "glx";
vsync = true;
use-damage = true;
detect-client-opacity = true;
detect-transient = true;
unredir-if-possible = true;
log-level = "warn";
shadow = false;
blur-background = false;
fading = true;
fade-in-step = 0.08;
fade-out-step = 0.08;
fade-delta = 8;
corner-radius = 12;
animations = (
{ triggers = [ "open", "show" ]; preset = "appear"; scale = 0.94; duration = 0.16; },
{ triggers = [ "close", "hide" ]; preset = "disappear"; scale = 0.96; duration = 0.12; }
);
rules = (
# The bar and desktop layer draw their own shape and never animate.
{ match = "window_type = 'dock' || window_type = 'desktop'"; corner-radius = 0; fade = false; animations = (); },
# Fullscreen video and games: square, and let them unredirect.
{ match = "fullscreen"; corner-radius = 0; },
# Toolkit menus and tooltips pop instantly.
{ match = "window_type = 'tooltip' || window_type = 'popup_menu' || window_type = 'dropdown_menu' || window_type = 'menu'"; corner-radius = 0; animations = (); },
# dunst rounds its own corners; picom rounding on top leaves a halo.
{ match = "class_g = 'Dunst'"; corner-radius = 0; },
# Menus and popups share a quicker, flatter version of the window motion.
{ match = "class_g = 'Rofi' || class_g ~= '^eww'";
animations = (
{ triggers = [ "open", "show" ]; preset = "appear"; scale = 0.98; duration = 0.10; },
{ triggers = [ "close", "hide" ]; preset = "disappear"; scale = 0.98; duration = 0.08; }
);
},
# The drop-down terminal slides from the top edge.
{ match = "class_g = 'rice-scratchpad'";
animations = (
{ triggers = [ "open", "show" ]; preset = "slide-in"; direction = "down"; duration = 0.18; },
{ triggers = [ "close", "hide" ]; preset = "slide-out"; direction = "up"; duration = 0.14; }
);
},
# Capture overlays must not move or fade while you aim.
{ match = "class_g = 'flameshot' || class_g = 'boomer' || class_g = 'slop'"; corner-radius = 0; fade = false; animations = (); },
# The webcam overlay stays a clean rounded tile.
{ match = "class_i = 'rice-webcam'"; corner-radius = 16; }
);