config (7184B)
1 ################################# 2 # 3 # Adapted for Regolith from 4 # https://gist.github.com/vemacs/458d101ad0bfb79ab70792ecb977c40c 5 # 6 ################################# 7 8 ################################# 9 # 10 # Backend 11 # 12 ################################# 13 14 # Backend to use: "xrender" or "glx". 15 # GLX backend is typically much faster but depends on a sane driver. 16 backend = "xrender"; 17 18 ################################# 19 # 20 # GLX backend 21 # 22 ################################# 23 24 glx-no-stencil = true; 25 26 # GLX backend: Copy unmodified regions from front buffer instead of redrawing them all. 27 # My tests with nvidia-drivers show a 10% decrease in performance when the whole screen is modified, 28 # but a 20% increase when only 1/4 is. 29 # My tests on nouveau show terrible slowdown. 30 # Useful with --glx-swap-method, as well. 31 glx-copy-from-front = false; 32 33 # GLX backend: Use MESA_copy_sub_buffer to do partial screen update. 34 # My tests on nouveau shows a 200% performance boost when only 1/4 of the screen is updated. 35 # May break VSync and is not available on some drivers. 36 # Overrides --glx-copy-from-front. 37 # glx-use-copysubbuffermesa = true; 38 39 # GLX backend: Avoid rebinding pixmap on window damage. 40 # Probably could improve performance on rapid window content changes, but is known to break things on some drivers (LLVMpipe). 41 # Recommended if it works. 42 glx-no-rebind-pixmap = true; 43 44 45 use-damage = true; 46 47 48 ################################# 49 # 50 # Shadows 51 # 52 ################################# 53 54 # Enabled client-side shadows on windows. 55 shadow = true; 56 # The blur radius for shadows. (default 12) 57 shadow-radius = 7; 58 # The left offset for shadows. (default -15) 59 shadow-offset-x = -5; 60 # The top offset for shadows. (default -15) 61 shadow-offset-y = -5; 62 # The translucency for shadows. (default .75) 63 shadow-opacity = 0.8; 64 65 # Set if you want different colour shadows 66 # shadow-red = 0.0; 67 # shadow-green = 0.0; 68 # shadow-blue = 0.0; 69 70 # The shadow exclude options are helpful if you have shadows enabled. Due to the way compton draws its shadows, certain applications will have visual glitches 71 # (most applications are fine, only apps that do weird things with xshapes or argb are affected). 72 # This list includes all the affected apps I found in my testing. The "! name~=''" part excludes shadows on any "Unknown" windows, this prevents a visual glitch with the XFWM alt tab switcher. 73 shadow-exclude = [ 74 "! name~=''", 75 "name = 'Notification'", 76 "name = 'Plank'", 77 "name = 'Docky'", 78 "name = 'Kupfer'", 79 "name = 'xfce4-notifyd'", 80 "name *= 'VLC'", 81 "name *= 'compton'", 82 "name *= 'polybar'", 83 "name *= 'Chromium'", 84 "name *= 'Chrome'", 85 "name *= 'wrapper-2.0'", 86 "class_g = 'Firefox' && argb", 87 "class_g = 'Conky'", 88 "class_g = 'Kupfer'", 89 "class_g = 'Synapse'", 90 "class_g ?= 'Notify-osd'", 91 "class_g ?= 'Cairo-dock'", 92 "_GTK_FRAME_EXTENTS@:c" 93 ]; 94 # Avoid drawing shadow on all shaped windows (see also: --detect-rounded-corners) 95 shadow-ignore-shaped = false; 96 no-dock-shadow = true; 97 98 ################################# 99 # 100 # Opacity 101 # 102 ################################# 103 104 inactive-opacity = 1; 105 active-opacity = 1; 106 frame-opacity = 1; 107 inactive-opacity-override = false; 108 109 # Dim inactive windows. (0.0 - 1.0) 110 inactive-dim = 0.05; 111 # Do not let dimness adjust based on window opacity. 112 inactive-dim-fixed = true; 113 # Blur background of transparent windows. Bad performance with X Render backend. GLX backend is preferred. 114 # blur-background = true; 115 # Blur background of opaque windows with transparent frames as well. 116 # blur-background-frame = true; 117 # Do not let blur radius adjust based on window opacity. 118 blur-background-fixed = false; 119 blur-background-exclude = [ 120 "window_type = 'dock'", 121 "window_type = 'desktop'" 122 ]; 123 124 ################################# 125 # 126 # Fading 127 # 128 ################################# 129 130 # Fade windows during opacity changes. 131 fading = true; 132 # The time between steps in a fade in milliseconds. (default 10). 133 fade-delta = 2; 134 # Opacity change between steps while fading in. (default 0.028). 135 fade-in-step = 0.05; 136 # Opacity change between steps while fading out. (default 0.03). 137 fade-out-step = 0.05; 138 # Fade windows in/out when opening/closing 139 no-fading-openclose = true; 140 141 # Specify a list of conditions of windows that should not be faded. 142 fade-exclude = [ ]; 143 144 ################################# 145 # 146 # Other 147 # 148 ################################# 149 150 # Try to detect WM windows and mark them as active. 151 mark-wmwin-focused = true; 152 # Mark all non-WM but override-redirect windows active (e.g. menus). 153 mark-ovredir-focused = true; 154 # Use EWMH _NET_WM_ACTIVE_WINDOW to determine which window is focused instead of using FocusIn/Out events. 155 # Usually more reliable but depends on a EWMH-compliant WM. 156 use-ewmh-active-win = true; 157 # Detect rounded corners and treat them as rectangular when --shadow-ignore-shaped is on. 158 detect-rounded-corners = true; 159 160 # Detect _NET_WM_OPACITY on client windows, useful for window managers not passing _NET_WM_OPACITY of client windows to frame windows. 161 # This prevents opacity being ignored for some apps. 162 # For example without this enabled my xfce4-notifyd is 100% opacity no matter what. 163 detect-client-opacity = true; 164 165 # Specify refresh rate of the screen. 166 # If not specified or 0, compton will try detecting this with X RandR extension. 167 refresh-rate = 0; 168 169 # Enable/disable vsync 170 #vsync = true; 171 172 # Enable DBE painting mode, intended to use with VSync to (hopefully) eliminate tearing. 173 # Reported to have no effect, though. 174 dbe = false; 175 176 # Limit compton to repaint at most once every 1 / refresh_rate second to boost performance. 177 # This should not be used with --vsync drm/opengl/opengl-oml as they essentially does --sw-opti's job already, 178 # unless you wish to specify a lower refresh rate than the actual value. 179 sw-opti = false; 180 181 # Unredirect all windows if a full-screen opaque window is detected, to maximize performance for full-screen windows, like games. 182 # Known to cause flickering when redirecting/unredirecting windows. 183 # paint-on-overlay may make the flickering less obvious. 184 unredir-if-possible = true; 185 186 # Specify a list of conditions of windows that should always be considered focused. 187 focus-exclude = [ ]; 188 189 # Use WM_TRANSIENT_FOR to group windows, and consider windows in the same group focused at the same time. 190 detect-transient = true; 191 # Use WM_CLIENT_LEADER to group windows, and consider windows in the same group focused at the same time. 192 # WM_TRANSIENT_FOR has higher priority if --detect-transient is enabled, too. 193 detect-client-leader = true; 194 195 # Prevent shadows from drawing across displays. 196 xinerama-shadow-crop = true; 197 ################################# 198 # 199 # Window type settings 200 # 201 ################################# 202 203 wintypes: 204 { 205 tooltip = 206 { 207 # fade: Fade the particular type of windows. 208 fade = true; 209 # shadow: Give those windows shadow 210 shadow = false; 211 # opacity: Default opacity for the type of windows. 212 opacity = 0.85; 213 # focus: Whether to always consider windows of this type focused. 214 focus = true; 215 }; 216 dock = { shadow = true; } 217 dnd = { shadow = false; } 218 popup_menu = { opacity = 1.0; } 219 dropdown_menu = { opacity = 1.0; } 220 };