185 lines
8 KiB
Text
185 lines
8 KiB
Text
####################################
|
|
####### BACK-END ########
|
|
####################################
|
|
|
|
# Backend to use: "xrender" or "glx".
|
|
# GLX backend is typically much faster but depends on a sane driver.
|
|
|
|
#backend = "glx";
|
|
backend = "xrender";
|
|
|
|
|
|
####################################
|
|
####### GLX ########
|
|
####################################
|
|
|
|
#glx-no-stencil = true; # Recommended.
|
|
|
|
# GLX backend: Copy unmodified regions from front buffer instead of redrawing them all.
|
|
# My tests with nvidia-drivers show a 10% decrease in performance when the whole screen is modified,
|
|
# but a 20% increase when only 1/4 is.
|
|
# My tests on nouveau show terrible slowdown.
|
|
# Useful with --glx-swap-method, as well.
|
|
|
|
glx-copy-from-front = false;
|
|
|
|
# GLX backend: Use MESA_copy_sub_buffer to do partial screen update.
|
|
# My tests on nouveau shows a 200% performance boost when only 1/4 of the screen is updated.
|
|
# May break VSync and is not available on some drivers.
|
|
# Overrides --glx-copy-from-front.
|
|
|
|
# glx-use-copysubbuffermesa = true;
|
|
|
|
# GLX backend: Avoid rebinding pixmap on window damage.
|
|
# Probably could improve performance on rapid window content changes, but is known to break things on some drivers (LLVMpipe).
|
|
# Recommended if it works.
|
|
|
|
# glx-no-rebind-pixmap = true;
|
|
|
|
# GLX backend: GLX buffer swap method we assume.
|
|
# Could be undefined (0), copy (1), exchange (2), 3-6, or buffer-age (-1).
|
|
# undefined is the slowest and the safest, and the default value.
|
|
# copy is fastest, but may fail on some drivers,
|
|
# 2-6 are gradually slower but safer (6 is still faster than 0).
|
|
# Usually, double buffer means 2, triple buffer means 3.
|
|
# buffer-age means auto-detect using GLX_EXT_buffer_age, supported by some drivers.
|
|
# Useless with --glx-use-copysubbuffermesa.
|
|
# Partially breaks --resize-damage.
|
|
# Defaults to undefined.
|
|
|
|
glx-swap-method = "undefined";
|
|
|
|
# glx-use-gpushader4 = true;
|
|
|
|
# xrender-sync = true;
|
|
# xrender-sync-fence = true;
|
|
|
|
####################################
|
|
####### Shadow ########
|
|
####################################
|
|
shadow = false; # Enabled client-side shadows on windows.
|
|
no-dnd-shadow = true; # Don't draw shadows on DND windows.
|
|
no-dock-shadow = true; # Avoid drawing shadows on dock/panel windows.
|
|
clear-shadow = true; # Zero the part of the shadow's mask behind the
|
|
# window. Fix some weirdness with ARGB windows.
|
|
shadow-radius = 7; # The blur radius for shadows. (default 12)
|
|
shadow-offset-x = -7; # The left offset for shadows. (default -15)
|
|
shadow-offset-y = -7; # The top offset for shadows. (default -15)
|
|
# shadow-opacity = 0.5; # The translucency for shadows. (default .75)
|
|
# shadow-red = 0.0; # Red color value of shadow. (0.0 - 1.0, defaults to 0)
|
|
# shadow-green = 0.0; # Green color value of shadow. (0.0 - 1.0, defaults to 0)
|
|
# shadow-blue = 0.0; # Blue color value of shadow. (0.0 - 1.0, defaults to 0)
|
|
|
|
# Exclude conditions for shadows.
|
|
shadow-exclude = [
|
|
"name = 'Notification'",
|
|
"class_g ?= 'Notify-osd'",
|
|
"class_g = 'VirtualBox'",
|
|
"class_g = 'Conky'",
|
|
"_GTK_FRAME_EXTENTS@:c",
|
|
"class_g = 'Cairo-clock'",
|
|
"class_g = 'i3-frame'",
|
|
"window_type *= 'normal' && ! name ~= ''"
|
|
];
|
|
|
|
# shadow-exclude-reg = "x10+0+0";
|
|
# xinerama-shadow-crop = true;
|
|
shadow-ignore-shaped = true; # Avoid drawing shadow on all shaped windows
|
|
# (see also: --detect-rounded-corners)
|
|
|
|
####################################
|
|
####### Opacity ########
|
|
####################################
|
|
#menu-opacity = 0.9; # The opacity for menus. (default 1.0)
|
|
#inactive-opacity = 0.9; # Default opacity of inactive windows. (0.0 - 1.0)
|
|
# active-opacity = 0.8; # Default opacity for active windows. (0.0 - 1.0)
|
|
# frame-opacity = 0.9; # Opacity of window titlebars and borders. (0.1 - 1.0)
|
|
# inactive-opacity-override = true; # Let inactive opacity set by 'inactive-opacity' overrides
|
|
# value of _NET_WM_OPACITY. Bad choice.
|
|
alpha-step = 0.06; # XRender backend: Step size for alpha pictures. Increasing
|
|
# it may result in less X resource usage,
|
|
# Yet fading may look bad.
|
|
# inactive-dim = 0.2; # Dim inactive windows. (0.0 - 1.0)
|
|
# inactive-dim-fixed = true; # Do not let dimness adjust based on window opacity.
|
|
# blur-background = true; # Blur background of transparent windows.
|
|
# Bad performance with X Render backend.
|
|
# GLX backend is an alternative.
|
|
# blur-background-frame = true; # Blur background of opaque windows with transparent
|
|
# frames as well.
|
|
blur-background-fixed = false; # Do not let blur radius adjust based on window opacity.
|
|
#blur-kern = "3x3box";
|
|
# 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";
|
|
# Exclude conditions for background blur.
|
|
# find the names with xwininfo
|
|
blur-background-exclude = [
|
|
"window_type = 'dock'",
|
|
"class_g = 'Peek'",
|
|
"window_type = 'desktop'",
|
|
"window_type = 'tooltip'",
|
|
"_GTK_FRAME_EXTENTS@:c"
|
|
];
|
|
|
|
opacity-rule = [ "80:class_g = 'XTerm'" ];
|
|
#opacity-rule = [ "80:class_g = 'UXTerm'" ];
|
|
#opacity-rule = [ "99:class_g = 'VirtualBox'" ];
|
|
|
|
####################################
|
|
####### Fading ########
|
|
####################################
|
|
#fading = true; # Fade windows during opacity changes.
|
|
# fade-delta = 10; # The time between steps in a fade in milliseconds. (default 10).
|
|
#fade-in-step = 0.03; # Opacity change between steps while fading in. (default 0.028).
|
|
#fade-out-step = 0.03; # Opacity change between steps while fading out. (default 0.03).
|
|
# no-fading-openclose = true; # Avoid fade windows in/out when opening/closing.
|
|
# no-fading-destroyed-argb = true;
|
|
focus-exclude = [
|
|
"class_g = 'Cairo-clock'",
|
|
"name *?= 'Steam'",
|
|
"class_g *?= 'Steam'",
|
|
"class_g *?= 'Virtualbox'"
|
|
];
|
|
|
|
####################################
|
|
####### Other ########
|
|
####################################
|
|
|
|
mark-wmwin-focused = true; # Try to detect WM windows and mark them as active.
|
|
mark-ovredir-focused = true; # Mark all non-WM but override-redirect windows active (e.g. menus).
|
|
use-ewmh-active-win = false; # Use EWMH _NET_WM_ACTIVE_WINDOW to determine which window is focused
|
|
# instead of using FocusIn/Out events. Usually more reliable but
|
|
# depends on a EWMH-compliant WM.
|
|
detect-rounded-corners = true; # Detect rounded corners and treat them as rectangular when --shadow-ignore- shaped is on.
|
|
detect-client-opacity = true; # Detect _NET_WM_OPACITY on client windows, useful for window
|
|
# managers not passing _NET_WM_OPACITY of client windows to frame
|
|
# windows.
|
|
refresh-rate = 0; # For --sw-opti: Specify refresh rate of the screen. 0 for auto.
|
|
vsync = "none"; # "none", "drm", "opengl", "opengl-oml", "opengl-swc", "opengl-mswc"
|
|
# See man page for more details.
|
|
dbe = false; # Enable DBE painting mode. Rarely needed.
|
|
paint-on-overlay = false; # Painting on X Composite overlay window. Recommended.
|
|
sw-opti = false; # Limit compton to repaint at most once every 1 / refresh_rate.
|
|
# Incompatible with certain VSync methods.
|
|
unredir-if-possible = false; # Unredirect all windows if a full-screen opaque window is
|
|
# detected, to maximize performance for full-screen windows.
|
|
# unredir-if-possible-delay = 5000;
|
|
# unredir-if-possible-exclude = [ ];
|
|
|
|
detect-transient = true; # Use WM_TRANSIENT_FOR to group windows, and consider windows in
|
|
# the same group focused at the same time.
|
|
detect-client-leader = true; # Use WM_CLIENT_LEADER to group windows.
|
|
invert-color-include = [ ]; # Conditions for windows to be painted with inverted color.
|
|
|
|
# resize-damage = 1;
|
|
|
|
|
|
####################################
|
|
###### Window type settings ########
|
|
####################################
|
|
wintypes:
|
|
{
|
|
tooltip = { fade = true; shadow = true; opacity = 0.75; focus = true; };
|
|
# fade: Fade the particular type of windows.
|
|
# shadow: Give those windows shadow
|
|
# opacity: Default opacity for the type of windows.
|
|
# focus: Whether to always consider windows of this type focused.
|
|
};
|