dotfiles

Linux and macOS dotfiles
git clone https://github.com/michaelneuper/dotfiles.git
README | Files | Log | Refs

dotfiles/.config/picom/picom.conf (5074B)


#################################
#          Transitions          #
#         Fork: Arian8j2        #
#################################

transition = true;

transition-rule = [
  "none: window_type = 'dropdown_menu'",
  "none: window_type = 'popup_menu'",
  "none: window_type = 'dialog'",
  "none: window_type = 'menu'",
  "none: window_type = 'tooltip'",
  "smart-x: class_g  = 'Dunst'",
  "smart-y: class_g ?= 'rofi'"   
];

#################################
#             Corners           #
#################################

corner-radius = 7;
rounded-corners-exclude = [
#  "window_type = 'normal'",
#  "window_type = 'dropdown_menu'",
#  "window_type = 'popup_menu'",
#  "window_type = 'popup'",
 "class_g = 'Polybar'",
#  "class_g = 'firefox'",
  "class_g = 'Viewnior'",
#  "class_g = 'Rofi'",
  "class_g = 'mpv'",
  "class_g = 'Retroarch'",
  "class_g = 'retroarch'"
];

round-borders = 1;
#round-borders-exclude = [
#"class_g = 'TelegramDesktop'",
#];

#################################
#             Shadows           #
#################################

shadow = true;
shadow-radius = 8;
shadow-opacity = .6;
shadow-offset-x = -3;
shadow-offset-y = -3;

shadow-exclude = [
  "name = 'Notification'",
  "class_g = 'Conky'",
  "class_g ?= 'Notify-osd'",
  "class_g = 'Cairo-clock'",
  "class_g = 'slop'",
  "class_g = 'Polybar'",
  "class_g = 'Retroarch'",
  "class_g = 'Rofi'",
  "_GTK_FRAME_EXTENTS@:c"
];

#################################
#           Fading              #
#################################

fading = true;
# Opacity change between steps while fading in. (0.01 - 1.0, defaults to 0.028)
# fade-in-step = 0.5;
# Opacity change between steps while fading out. (0.01 - 1.0, defaults to 0.03)
# fade-out-step = 0.5;
# no-fading-openclose = false
# no-fading-destroyed-argb = false
# The time between steps in fade step, in milliseconds. (> 0, defaults to 10)
# fade-delta = 10

fade-exclude = [
  "class_g = 'slop'",
	"name = 'bar'",
	"class_g = 'maim'",
	"class_g = 'mpv'",
	# "class_g = 'bspwm'"
]

#################################
#   Transparency / Opacity      #
#################################

inactive-opacity = 0.95;
inactive-opacity-override = false;
active-opacity = 1.0;

# Dim inactive windows. (0.0 - 1.0, defaults to 0.0)
inactive-dim = 1.0

focus-exclude = [
  "class_g = 'Cairo-clock'",
  "class_g = 'Polybar'",
  "class_g = 'slop'",
  "class_g = 'ranger'"
];

opacity-rule = [
  "100:class_g     = 'Emacs'",
  "90:class_g     = 'Alacritty'",
  "95:class_g     = 'Polybar'",
  "95:class_g     = 'Rofi'",
  "95:class_g     = 'obsidian'",
  "100:class_g    = 'firefox'",
  "95:class_g     = 'Code'",
];

#################################
#     Background-Blurring       #
#################################


# Parameters for background blurring, see the *BLUR* section for more information.
# blur-method = 
# blur-size = 12
#
# blur-deviation = false

# Blur background of semi-transparent / ARGB windows. 
# Bad in performance, with driver-dependent behavior. 
# The name of the switch may change without prior notifications.
#
# blur-background = true;

# Blur background of windows when the window frame is not opaque. 
# Implies:
#    blur-background 
# Bad in performance, with driver-dependent behavior. The name may change.
#
# blur-background-frame = false;


# Use fixed blur strength rather than adjusting according to window opacity.
# blur-background-fixed = false;


# Specify the blur convolution kernel, with the following format:
# example:
#   blur-kern = "5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1";
#
# blur-kern = ''
# blur-kern = "3x3box";

blur: {
  # requires: https://github.com/ibhagwan/picom
  method = "kawase";
  #method = "kernel";
  strength = 7;
  # deviation = 1.0;
  # kernel = "11x11gaussian";
  background = false;
  background-frame = false;
  background-fixed = false;
  kern = "3x3box";
}

# Exclude conditions for background blur.
blur-background-exclude = [
  #"window_type = 'dock'",
  #"window_type = 'desktop'",
  #"class_g = 'URxvt'",
  #
  # prevents picom from blurring the background
  # when taking selection screenshot with `main`
  # https://github.com/naelstrof/maim/issues/130
  "class_g = 'slop'",
  "_GTK_FRAME_EXTENTS@:c",
  "class_g ?= 'zoom'"
];

#################################
#       General Settings        #
#################################

experimental-backends = true;
backend = "glx";
# backend = "xrender";
vsync = true;
mark-wmwin-focused = true;
mark-ovredir-focused = true;

#use-damage = false;
detect-rounded-corners = true;
detect-client-opacity = true;
#glx-no-stencil = false;
detect-transient = true;
unredir-if-possible = false;
log-level = "warn";

#################################

wintypes:
{
  normal = { fade = false; shadow = true; }
  tooltip = { fade = true; shadow = true; focus = true; full-shadow = false; }
  dock = { shadow = false; }
  dnd = { shadow = true; }
  popup_menu = { opacity = 0.97; fade = false; shadow = false; }
  dropdown_menu = { opacity = 0.97; }
  menu = { fade = false; }
  dialog = { fade = false; }
};