aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorclarkzjw <[email protected]>2022-11-17 10:56:25 -0800
committerclarkzjw <[email protected]>2022-11-17 10:56:25 -0800
commitd2d735742ca61b211c9b48a2209d36395daebcf4 (patch)
treebda27729a1bbac3ab354a1f10d4885899cdbf967 /dot_config/picom.conf
parenta6d2e5e6fb9adc84c32e86630b4846b1765c7d77 (diff)
downloaddotfiles-d2d735742ca61b211c9b48a2209d36395daebcf4.tar.gz
+ add existing config
Diffstat (limited to 'dot_config/picom.conf')
-rw-r--r--dot_config/picom.conf230
1 files changed, 230 insertions, 0 deletions
diff --git a/dot_config/picom.conf b/dot_config/picom.conf
new file mode 100644
index 0000000..2ec14a9
--- /dev/null
+++ b/dot_config/picom.conf
@@ -0,0 +1,230 @@
1# Thank you code_nomad: http://9m.no/ꪯ鵞
2# and Arch Wiki contributors: https://wiki.archlinux.org/index.php/Compton
3# and picom Github: https://github.com/yshui/picom
4#################################
5#
6# Backend
7#
8#################################
9
10# Specify the backend to use: `xrender`, `glx`, or `xr_glx_hybrid`.
11# `xrender` is the default one.
12# GLX backend is typically much faster but depends on a sane driver.
13#backend = "xrender";
14backend = "glx";
15#backend = "xr_glx_hybrid"
16
17#################################
18#
19# GLX backend
20#
21#################################
22
23# GLX backend: Avoid using stencil buffer, useful if you don't have a stencil buffer.
24# Might cause incorrect opacity when rendering transparent content (but never
25# practically happened) and may not work with blur-background.
26# My tests show a 15% performance boost. Recommended.
27glx-no-stencil = true;
28
29# GLX backend: Use MESA_copy_sub_buffer to do partial screen update.
30# My tests on nouveau shows a 200% performance boost when only 1/4 of the screen is updated.
31# May break VSync and is not available on some drivers.
32# glx-use-copysubbuffermesa = true;
33
34# GLX backend: Avoid rebinding pixmap on window damage.
35# Probably could improve performance on rapid window content changes, but is known to break things on some drivers (LLVMpipe).
36# Recommended if it works.
37# glx-no-rebind-pixmap = true;
38
39# Disable the use of damage information.
40# This cause the whole screen to be redrawn everytime, instead of the part of the screen
41# has actually changed. Potentially degrades the performance, but might fix some artifacts.
42# The opposing option is use-damage
43# no-use-damage = false
44# use-damage = true;
45
46# Use X Sync fence to sync clients' draw calls, to make sure all draw
47# calls are finished before picom starts drawing. Needed on nvidia-drivers
48# with GLX backend for some users.
49xrender-sync-fence = false;
50
51# GLX backend: GLX buffer swap method we assume.
52# Could be undefined (0), copy (1), exchange (2), 3-6, or buffer-age (-1).
53# undefined is the slowest and the safest, and the default value.
54# copy is fastest, but may fail on some drivers,
55# 2-6 are gradually slower but safer (6 is still faster than 0).
56# Usually, double buffer means 2, triple buffer means 3.
57# buffer-age means auto-detect using GLX_EXT_buffer_age, supported by some drivers.
58# Useless with --glx-use-copysubbuffermesa.
59# Partially breaks --resize-damage.
60# Defaults to undefined.
61#glx-swap-method = "undefined";
62
63#################################
64#
65# Shadows
66#
67#################################
68
69# Enabled client-side shadows on windows.
70shadow = false;
71# The blur radius for shadows. (default 12)
72shadow-radius = 5;
73# The left offset for shadows. (default -15)
74shadow-offset-x = -5;
75# The top offset for shadows. (default -15)
76shadow-offset-y = -5;
77# The translucency for shadows. (default .75)
78shadow-opacity = 0.5;
79
80# Set if you want different colour shadows
81# shadow-red = 0.0;
82# shadow-green = 0.0;
83# shadow-blue = 0.0;
84
85# The shadow exclude options are helpful if you have shadows enabled. Due to the way picom draws its shadows, certain applications will have visual glitches
86# (most applications are fine, only apps that do weird things with xshapes or argb are affected).
87# 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.
88shadow-exclude = [
89 "! name~=''",
90 "name = 'Notification'",
91 "name = 'Plank'",
92 "name = 'Docky'",
93 "name = 'Kupfer'",
94 "name = 'xfce4-notifyd'",
95 "name *= 'VLC'",
96 "name *= 'compton'",
97 "name *= 'picom'",
98 "name *= 'Chromium'",
99 "name *= 'Chrome'",
100 "class_g = 'Conky'",
101 "class_g = 'Kupfer'",
102 "class_g = 'Synapse'",
103 "class_g ?= 'Notify-osd'",
104 "class_g ?= 'Cairo-dock'",
105 "class_g ?= 'Xfce4-notifyd'",
106 "class_g ?= 'Xfce4-power-manager'",
107 "(class_g = 'firefox' || class_g = 'Thunderbird') && (window_type = 'utility' || window_type = 'popup_menu') && argb",
108 "_GTK_FRAME_EXTENTS@:c",
109 "_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'",
110 "_NET_WM_WINDOW_TYPE:a *= '_KDE_NET_WM_WINDOW_TYPE_OVERRIDE'"
111];
112
113# Avoid drawing shadow on all shaped windows (see also: --detect-rounded-corners)
114shadow-ignore-shaped = false;
115
116#################################
117#
118# Opacity
119#
120#################################
121
122inactive-opacity = 1;
123active-opacity = 1;
124frame-opacity = 1;
125inactive-opacity-override = false;
126
127# Dim inactive windows. (0.0 - 1.0)
128# inactive-dim = 0.2;
129# Do not let dimness adjust based on window opacity.
130# inactive-dim-fixed = true;
131# Blur background of transparent windows. Bad performance with X Render backend. GLX backend is preferred.
132# blur-background = true;
133# Blur background of opaque windows with transparent frames as well.
134# blur-background-frame = true;
135# Do not let blur radius adjust based on window opacity.
136blur-background-fixed = false;
137blur-background-exclude = [
138 "window_type = 'dock'",
139 "window_type = 'desktop'"
140];
141
142#################################
143#
144# Fading
145#
146#################################
147
148# Fade windows during opacity changes.
149fading = true;
150# The time between steps in a fade in milliseconds. (default 10).
151fade-delta = 4;
152# Opacity change between steps while fading in. (default 0.028).
153fade-in-step = 0.03;
154# Opacity change between steps while fading out. (default 0.03).
155fade-out-step = 0.03;
156# Fade windows in/out when opening/closing
157# no-fading-openclose = true;
158
159# Specify a list of conditions of windows that should not be faded.
160fade-exclude = [ ];
161
162#################################
163#
164# Other
165#
166#################################
167
168# Try to detect WM windows and mark them as active.
169mark-wmwin-focused = true;
170# Mark all non-WM but override-redirect windows active (e.g. menus).
171mark-ovredir-focused = true;
172# Use EWMH _NET_WM_ACTIVE_WINDOW to determine which window is focused instead of using FocusIn/Out events.
173# Usually more reliable but depends on a EWMH-compliant WM.
174use-ewmh-active-win = true;
175# Detect rounded corners and treat them as rectangular when --shadow-ignore-shaped is on.
176detect-rounded-corners = true;
177
178# Detect _NET_WM_OPACITY on client windows, useful for window managers not passing _NET_WM_OPACITY of client windows to frame windows.
179# This prevents opacity being ignored for some apps.
180# For example without this enabled my xfce4-notifyd is 100% opacity no matter what.
181detect-client-opacity = true;
182
183# Specify refresh rate of the screen.
184# If not specified or 0, picom will try detecting this with X RandR extension.
185refresh-rate = 0;
186
187# Vertical synchronization: match the refresh rate of the monitor
188# Enable/disable VSync.
189#vsync = false; (fixes screen tearing in browsers if true)
190vsync = true;
191
192# Limit picom to repaint at most once every 1 / refresh_rate second to boost performance.
193# This should not be used with --vsync drm/opengl/opengl-oml as they essentially does --sw-opti's job already,
194# unless you wish to specify a lower refresh rate than the actual value.
195#sw-opti = true;
196
197# Unredirect all windows if a full-screen opaque window is detected, to maximize performance for full-screen windows, like games.
198# Known to cause flickering when redirecting/unredirecting windows.
199# unredir-if-possible = false; (fullscreen games behave better if true)
200unredir-if-possible = false;
201
202# Specify a list of conditions of windows that should always be considered focused.
203focus-exclude = [ ];
204
205# Use WM_TRANSIENT_FOR to group windows, and consider windows in the same group focused at the same time.
206detect-transient = true;
207# Use WM_CLIENT_LEADER to group windows, and consider windows in the same group focused at the same time.
208# WM_TRANSIENT_FOR has higher priority if --detect-transient is enabled, too.
209detect-client-leader = true;
210
211#################################
212#
213# Window type settings
214#
215#################################
216
217wintypes:
218{
219 tooltip =
220 {
221 # fade: Fade the particular type of windows.
222 fade = true;
223 # shadow: Give those windows shadow
224 shadow = false;
225 # opacity: Default opacity for the type of windows.
226 opacity = 0.85;
227 # focus: Whether to always consider windows of this type focused.
228 focus = true;
229 };
230};
Powered by cgit v1.2.3 (git 2.41.0)