-
-
Notifications
You must be signed in to change notification settings - Fork 149
/
Copy pathpicom.conf
197 lines (190 loc) · 7.57 KB
/
picom.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
# User's picom configuration.
# https://github.com/owl4ce/dotfiles
# SHADOWS
# ---
# Enabled client-side shadows on windows.
shadow = true;
# The blur radius for shadows, in pixels.
shadow-radius = 40;
# The opacity of shadows.
shadow-opacity = 0.1;
# The left offset for shadows, in pixels.
shadow-offset-x = -27;
# The top offset for shadows, in pixels.
shadow-offset-y = -27;
# Specify a list of conditions of windows that should have no shadows.
shadow-exclude = [
# "! name ~= ''",
"class_g = 'Conky'",
"class_g = 'GLava'",
"class_g ?= 'Notify-osd'",
"_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'",
"_GTK_FRAME_EXTENTS@:c"
];
# Crop shadows of a window fully on a particular Xinerama screen to the screen.
xinerama-shadow-crop = true;
# FADING
# ---
# Fade windows in/out when opening/closing and when opacity changes.
fading = true;
# Opacity change between steps while fading in.
fade-in-step = 0.025;
# Opacity change between steps while fading out.
fade-out-step = 0.025;
# The time between steps in fade step, in milliseconds.
fade-delta = 4;
# Do not fade destroyed ARGB windows with WM frame.
# Workaround of bugs in Openbox, Fluxbox, etc.
no-fading-destroyed-argb = true;
# OPACITY
# ---
# Let inactive opacity set by -i override the '_NET_WM_WINDOW_OPACITY' values of windows.
inactive-opacity-override = false;
# CORNERS
# ---
# Sets the radius of rounded window corners.
# When > 0, the compositor will round the corners of windows.
corner-radius = 8;
# Exclude conditions for rounded corners.
rounded-corners-exclude = [
"name *= 'rofi'",
"name *= 'screenkey'",
"name *= 'tint2'",
"class_g = 'Conky'",
"class_g = 'GLava'",
"window_type = 'dock'",
"window_type = 'desktop'",
# "window_type = 'tooltip'",
"_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'",
"_GTK_FRAME_EXTENTS@:c"
];
# BACKGROUND BLURRING
# ---
# Parameters for background blurring, see the *BLUR* section for more information.
# Specify the background blurring blur method to use.
blur-method = "none";
# Exclude conditions for background blur.
blur-background-exclude = [
"! name ~= ''",
" name *= 'jgmenu'",
" name *= 'tint2'",
"class_g = 'Conky'",
"class_g = 'GLava'",
"window_type = 'dock'",
"window_type = 'desktop'",
"_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'",
"_GTK_FRAME_EXTENTS@:c"
];
# GENERAL
# ---
# Specify the backend to use: `xrender`, `glx`, or `xr_glx_hybrid`.
backend = "glx";
# Enable or disable VSync.
vsync = true;
# Try to detect WM windows and mark them as active.
mark-wmwin-focused = true;
# Mark override-redirect windows that doesn't have a child window with 'WM_STATE' focused.
mark-ovredir-focused = true;
# Try to detect windows with rounded corners and don't consider them shaped windows.
detect-rounded-corners = true;
# Detect '_NET_WM_WINDOW_OPACITY' on client windows,
# useful for window managers not passing '_NET_WM_WINDOW_OPACITY' of client windows to frame windows.
detect-client-opacity = true;
# Use EWMH '_NET_ACTIVE_WINDOW' to determine currently focused window,
# rather than listening to 'FocusIn'/'FocusOut' event.
# Might have more accuracy, provided that the WM supports it.
use-ewmh-active-win = true;
# Unredirect all windows if a full-screen opaque window is detected,
# to maximize performance for full-screen windows.
# Known to cause flickering when redirecting/unredirecting windows.
unredir-if-possible = false;
# Use 'WM_TRANSIENT_FOR' to group windows,
# and consider windows in the same group focused at the same time.
detect-transient = true;
# Use 'WM_CLIENT_LEADER' to group windows, and consider windows in the same group focused at the same time.
# This usually means windows from the same application will be considered focused or unfocused at the same time.
# 'WM_TRANSIENT_FOR' has higher priority if detect-transient is enabled, too.
detect-client-leader = true;
# GLX backend: Avoid using stencil buffer, useful if you don't have a stencil buffer.
# Might cause incorrect opacity when rendering transparent content and may not work with blur-background.
# My tests show a 15% performance boost. Recommended.
glx-no-stencil = 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, xf86-video-intel, etc.).
# Recommended if it works.
glx-no-rebind-pixmap = true;
# Use X Sync fence to sync clients' draw calls,
# to make sure all draw calls are finished before picom starts drawing.
# Needed on nvidia-drivers with GLX backend for some users.
xrender-sync-fence = true;
# Set the log level.
# Possible values are: "trace", "debug", "info", "warn", "error" in increasing level of importance.
# Case doesn't matter. If using the "TRACE" log level, it's better to log into a file using *--log-file*,
# since it can generate a huge stream of logs.
log-level = "warn";
# Set the log file.
# If *--log-file* is never specified, logs will be written to stderr.
# Otherwise, logs will to written to the given file,
# though some of the early logs might still be written to the stderr.
# When setting this option from the config file, it is recommended to use an absolute path.
log-file = "/dev/null"
# WINDOW-TYPE
# ---
#
# 'WINDOW_TYPE' is one of the 15 window types defined in EWMH standard:
#
# "unknown",
# "desktop",
# "dock",
# "toolbar",
# "menu",
# "utility",
# "splash",
# "dialog",
# "normal",
# "dropdown_menu",
# "popup_menu",
# "tooltip",
# "notification",
# "combo",
# "dnd".
#
# Following per window-type options are available:
#
# fade, shadow:
# Controls window-type-specific shadow and fade settings.
#
# opacity:
# Controls default opacity of the window type.
#
# focus:
# Controls whether the window of this type is to be always considered focused.
# (By default, all window types except "normal" and "dialog" has this on.)
#
# full-shadow:
# Controls whether shadow is drawn under the parts of the window that you normally won't be able to see.
# Useful when the window has parts of it transparent, and you want shadows in those areas.
#
# clip-shadow-above:
# Controls wether shadows that would have been drawn above the window should be clipped.
# Useful for dock windows that should have no shadow painted on top.
#
# redir-ignore:
# Controls whether this type of windows should cause screen to become redirected again after been unredirected.
# If you have unredir-if-possible set, and doesn't want certain window to cause unnecessary screen redirection,
# you can set this to `true`.
#
wintypes:
{
tooltip = { fade = true; shadow = true; opacity = 1.00; };
menu = { fade = true; shadow = true; opacity = 1.00; };
popup_menu = { fade = true; shadow = true; opacity = 1.00; };
dropdown_menu = { fade = true; shadow = true; opacity = 1.00; };
utility = { fade = true; shadow = true; opacity = 1.00; };
dialog = { fade = true; shadow = true; opacity = 1.00; };
notify = { fade = true; shadow = true; opacity = 1.00; };
dock = { fade = true; shadow = false; clip-shadow-above = true; };
dnd = { fade = true; shadow = false; };
unknown = { fade = true; shadow = true; opacity = 1.00; };
};