2023-03-25 00:44:19 +01:00
|
|
|
backend = "egl";
|
2021-07-05 18:20:36 +02:00
|
|
|
vsync = true;
|
2024-11-11 00:18:06 +01:00
|
|
|
no-frame-pacing = true; # see https://github.com/yshui/picom/issues/1345
|
2024-09-08 18:58:51 +02:00
|
|
|
# These two are recommended if they work.
|
2021-07-28 08:23:03 +02:00
|
|
|
glx-no-stencil = true;
|
|
|
|
glx-no-rebind-pixmap = true;
|
|
|
|
|
2021-07-05 18:20:36 +02:00
|
|
|
mark-ovredir-focused = true;
|
2021-07-05 18:50:45 +02:00
|
|
|
use-ewmh-active-win = true;
|
|
|
|
|
2021-07-07 11:10:21 +02:00
|
|
|
# Opacity rules (first rule match)
|
2021-07-11 08:51:28 +02:00
|
|
|
# Cannot use override-redirect:
|
|
|
|
# https://github.com/yshui/picom/issues/625
|
2021-07-07 11:10:21 +02:00
|
|
|
opacity-rule = [
|
2021-11-16 21:06:49 +01:00
|
|
|
"0:_NET_WM_STATE@[*]:32a = '_NET_WM_STATE_HIDDEN'",
|
2022-01-03 20:04:58 +01:00
|
|
|
# GTK frame extents are used for client-side shadows, we shouldn't have that as i3 does not support them.
|
2021-10-24 14:54:43 +02:00
|
|
|
"100:_GTK_FRAME_EXTENTS@:c",
|
2021-07-07 11:10:21 +02:00
|
|
|
"100:fullscreen",
|
|
|
|
"100:name = 'Zoom Meeting'",
|
2021-07-07 11:38:50 +02:00
|
|
|
"100:name = 'zoom_linux_float_video_window'",
|
2022-04-14 14:40:13 +02:00
|
|
|
"100:class_i = 'jitsi meet'",
|
2021-07-20 19:49:11 +02:00
|
|
|
"100:class_g = 'Rofi'",
|
2021-08-17 11:25:32 +02:00
|
|
|
"100:class_g = 'mpv'",
|
2021-12-13 18:33:36 +01:00
|
|
|
"100:class_g = 'Xss-dimmer'",
|
2022-12-01 13:37:56 +01:00
|
|
|
"100:class_g = 'scummvm'",
|
2021-08-03 11:05:31 +02:00
|
|
|
"100:window_type = 'dock'",
|
|
|
|
"100:window_type = 'utility'",
|
2022-10-12 20:44:36 +02:00
|
|
|
"95:window_type = 'combo'",
|
2022-03-03 23:10:07 +01:00
|
|
|
"95:window_type *= 'menu'",
|
2021-07-07 11:10:21 +02:00
|
|
|
"85:!focused"
|
|
|
|
];
|
2021-07-11 08:51:56 +02:00
|
|
|
|
2021-07-11 08:58:43 +02:00
|
|
|
# Shadow and fading
|
|
|
|
fade-in-step = 0.08;
|
|
|
|
fade-out-step = 0.08;
|
2021-11-02 13:54:42 +01:00
|
|
|
shadow-opacity = 0.8;
|
2021-11-02 10:22:59 +01:00
|
|
|
shadow-radius = @SHADOW_RADIUS@;
|
2021-11-02 13:29:31 +01:00
|
|
|
shadow-offset-x = -@SHADOW_OFFSET@;
|
|
|
|
shadow-offset-y = -@SHADOW_OFFSET@;
|
2021-07-11 08:51:56 +02:00
|
|
|
wintypes:
|
|
|
|
{
|
2021-11-01 14:18:48 +01:00
|
|
|
normal = { shadow = true; };
|
2024-09-28 21:50:23 +02:00
|
|
|
dock = { shadow = true; clip-shadow-above = true; };
|
2021-08-03 11:05:31 +02:00
|
|
|
combo = { fade = true; };
|
2021-07-11 08:58:43 +02:00
|
|
|
dropdown_menu = { fade = true; };
|
2021-08-03 11:05:31 +02:00
|
|
|
menu = { fade = true; };
|
|
|
|
popup_menu = { fade = true; };
|
|
|
|
tooltip = { fade = true; };
|
|
|
|
notification = { fade = true; shadow = true; };
|
|
|
|
splash = { fade = true; shadow = true; };
|
|
|
|
dialog = { fade = true; shadow = true; };
|
2021-07-11 08:51:56 +02:00
|
|
|
};
|
2021-09-06 17:49:37 +02:00
|
|
|
shadow-exclude = [
|
2021-11-16 21:07:01 +01:00
|
|
|
"_NET_WM_STATE@[*]:32a = '_NET_WM_STATE_HIDDEN'",
|
2022-01-03 20:04:58 +01:00
|
|
|
# GTK frame extents are used for client-side shadows, we shouldn't have that.
|
2021-12-30 14:26:06 +01:00
|
|
|
"_GTK_FRAME_EXTENTS@:c",
|
2021-10-24 14:53:55 +02:00
|
|
|
"class_i = 'xss-dimmer'",
|
2021-11-02 13:26:21 +01:00
|
|
|
"class_i = 'i3-frame'",
|
2021-11-12 09:01:42 +01:00
|
|
|
"class_g = 'Rofi'",
|
2021-12-30 14:26:06 +01:00
|
|
|
# Zoom
|
|
|
|
"name = 'cpt_frame_window'",
|
2022-01-27 10:36:29 +01:00
|
|
|
"name = 'cpt_frame_xcb_window'",
|
2022-08-04 11:31:09 +02:00
|
|
|
"name = 'as_toolbar'",
|
|
|
|
# Other sharing indicators
|
|
|
|
"name ~= 'is sharing your screen.$'", # Chrome
|
|
|
|
"name = 'Firefox — Sharing Indicator'", # Firefox
|
|
|
|
"name = 'Screen Sharing Tracker'" # Jitsi
|
2021-09-06 17:49:37 +02:00
|
|
|
];
|
2024-10-30 17:38:51 +01:00
|
|
|
# crop-shadow-to-monitor = true;
|
2021-10-24 14:58:44 +02:00
|
|
|
fade-exclude = [ ];
|