diff --git a/picom.conf b/picom.conf new file mode 100644 index 00000000..7a55d4a0 --- /dev/null +++ b/picom.conf @@ -0,0 +1,84 @@ +# Rabbithole's picom config by LycanDarko + +# Fading options +fading = true; +fade-in-step = 0.025; # Controls the speed of fade-in animation. The larger the number, the faster the fade in. (250ms duration by Material Design 3) +fade-out-step = 0.03; # Controls the speed of fade-out animation. The larger the number, the faster the fade out. (300ms duration by Material Design 3) +fade-delta = 10; # The difference in opacity between each step during the fade. The higher the number, the larger the difference. + +# Animation options +animations = true; +animation-length = 250; # Set the duration of animations in milliseconds. Material Design 3 recommends 250ms. +animation-for-open-window = "zoom"; # Animation for opening a window. Options are: auto, zoom, slide-left/right, slide-down/up, fly-in, none +animation-for-transient-window = "zoom"; # Animation for transient windows (e.g., dialogs, minimizing windows). Options are same as above. +animation-for-unmap-window = "zoom"; # Animation for closing a window. Options are same as above, but animations are reversed +animation-for-workspace-switch-in = "zoom"; +animation-for-workspace-switch-out = "zoom"; +animation-stiffness = 300.0; # (tension)Controls the stiffness of the animations. The higher the value, the stiffer (less bouncy) the animation. +animation-window_mass = 0.4; # Controls the mass of the windows during animations. Higher value results in heavier window, which takes more force to animate. +animation-dampening = 40; # (friction) Controls the dampening of the animations. Higher value results in less oscillation. +animation-delta = 10; # The difference in animation steps. The higher the number, the larger the difference. +animation-force_steps = true; # Enable or disable the use of force steps. When enabled, it ensures that animations will always complete in the specified number of steps. +animation-clamping = false; # Enable or disable animation clamping. When enabled, it ensures that animations don't go beyond their start/end states. + +# Custom cubic Bézier curve (x1, y1, x2, y2) to control animation easing. Material Design 3 recommends "0.4, 0.0, 0.2, 1" for standard easing. +cubic_bezier = "0.4, 0.0, 0.2, 1"; + +# Blur options +blur = { + method = "gaussian"; # Choose the blur method (e.g., "dual_kawase", "gaussian", "kawase") + strength = 2; # Set the desired blur strength +}; + +# Opacity options +#inactive-opacity = 0.90; # Set the desired opacity for inactive windows +#active-opacity = 1.00; # Set the desired opacity for active windows + +# Opacity rules for specific applications +opacity-rule = [ + "90:class_g = 'URxvt'", # Set custom opacity for specific applications (e.g., URxvt, Alacritty, kitty) + "90:class_g = 'Alacritty'", + "90:class_g = 'kitty'" +]; + +# Shadow options +shadow = true; +shadow-radius = 12; # Set the desired shadow radius +shadow-offset-x = -12; # Set the desired shadow X-offset +shadow-offset-y = -12; # Set the desired shadow Y-offset +shadow-opacity = 0.65; # Set the desired shadow opacity + +# Exclude applications from having shadows +shadow-exclude = [ + "class_g ?= 'Conky'", + "class_g ?= 'Polybar'" +]; + +# Rounded corners options +corner-radius = 8; # Set the desired corner radius + +# Exclude applications from having rounded corners +rounded-corners-exclude = [ + "class_g = 'Conky'", + "class_g = 'Polybar'" +]; + +# Focus-related options +focus-fade = true; # Enable or disable fade effect when focusing windows + +# Window type-specific options +wintypes: +{ + tooltip = { fade = true; shadow = true; opacity = 0.9; focus = false; }; + dock = { shadow = false; }; + dnd = { shadow = false; }; + popup_menu = { opacity = 0.95; }; + dropdown_menu = { opacity = 0.95; }; +}; + +# Compositor backend options +backend = "xrender"; # Choose between "xrender","glx", and xr_glx_hybrid +vsync = true; # Enable or disable vertical synchronization +vsync_use_glfinish = true; + +# Additional configurations can be added below this line