# Picom Configuration, courtesy of Xubuntu Developers
# https://raw.githubusercontent.com/Xubuntu/xubuntu-default-settings/master/etc/xdg/xdg-xubuntu/picom.conf
#
# About Picom: https://github.com/yshui/picom
# Heavily based on: https://bit.ly/1l5OrzL
# Sample settings: https://github.com/chjj/compton/blob/master/compton.sample.conf

# --- Backend (OpenGL used by default)
# Related Links
# https://github.com/chjj/compton/wiki/perf-guide
# https://github.com/chjj/compton/wiki/vsync-guide

#backend = "glx";
paint-on-overlay = true;
glx-no-stencil = true;
glx-no-rebind-pixmap = true;
unredir-if-possible = true;
#vsync = true; 


# --- Shadows (Disable with shadow = false;)
# The shadow exclude options are helpful if you have shadows enabled.
# Due to the way compton draws its shadows, certain applications (Such as
# shaped windows, custom popups, non-standard toolkits) will have visual glitches.

shadow = true;				# Enabled client-side shadows on windows.
no-dock-shadow = true;		# Avoid drawing shadows on dock/panel windows.
no-dnd-shadow = true;		# Don't draw shadows on DND windows.
shadow-radius = 10;			# The blur radius for shadows. (default 10)
shadow-offset-x = -15;		# The left offset for shadows. (default -15)
shadow-offset-y = -12;		# The top offset for shadows. (default -12)
shadow-opacity = 0.4;
shadow-exclude = [
 "! name~=''",				# "Unknown" windows, including xfwm4 alt-tab
 "n:e:Notification",
 "n:e:Plank",
 "n:e:Docky",
 "g:e:Synapse",
 "g:e:Kupfer",
 "g:e:Conky",
 "n:w:*Firefox*",
 "n:w:*Chrome*",
 "n:w:*Chromium*",
 "class_g ?= 'Notify-osd'",
 "class_g ?= 'plank'",
 "class_g ?= 'Cairo-dock'",
 "class_g ?= 'Xfce4-notifyd'",
 "class_g ?= 'Xfce4-power-manager'",
 "class_g ?= 'Xfwm4'",		# For the "new" xfwm4 alt-tab
 "_GTK_FRAME_EXTENTS@:c"	# GTK+ 3 CSD windows https://github.com/chjj/compton/issues/189
];


# --- Fading (Disable with fading = false;)

fading = true;				# Fade windows during opacity changes.
fade-delta = 5;				# The time between steps in a fade in milliseconds. (default 5).
fade-in-step = 0.03;		# Opacity change between steps while fading in. (default 0.03).
fade-out-step = 0.03;		# Opacity change between steps while fading out. (default 0.03).


# --- Additional Settings
detect-client-opacity = true;


# --- Window type settings
wintypes:
{
  tooltip = { fade = true; shadow = false; opacity = 0.9; focus = true; };
};
