Closed zen2 closed 1 month ago
Nice catch, should've been fixed now.
I ran into the same issue but the patch didn't solve it. I tracked it down to using a new-style rule set of (also just one rule triggers the bug already)
}, {
match = "focused",
opacity = 0.9,
}, {
match = "! focused",
opacity = 0.6,
added to the current picom.sample.conf
.
@zappolowski if the opacity is set by rules then the opacity property (which is what picom-trans sets) is ignored.
@yshui is there a recommended workaround to get something like the old behavior with the new approach? With old behavior I mean: inactive-opacity = 0.6
and active-opacity = 0.9
as initial values but also having the possibility of adjusting the values as needed?
PS: If you consider discussing it in the scope of this issue to be wrong, we can also move it to the discussions section.
you can match ! _NET_WM_WINDOW_OPACITY
I got the same problem that @zappolowski now. I currently use basic rules like this:
opacity-rule = [
"100:fullscreen",
"95:class_g = 'URxvt'",
"95:class_g = 'UXTerm'",
"95:class_g = 'XTerm'",
"95:class_g = 'Alacritty'",
"100:window_type = 'normal'", # Add a tiny bit of opacity to all normal windows to apply blur
"95:window_type = 'dialog'", # Add a tiny bit of opacity to all dialog windows to apply blur
"95:window_type = 'popup_menu'", # Add a tiny bit of opacity to all popup_menu windows to apply blur
"95:window_type = 'notification'" # Add a tiny bit of opacity to all popup_menu windows to apply blur
];
Before, with this configuration, I get used to modify window opacity by mouse button mapping (scroll wheel on title bar) and it was working perfectly.
So now how can I set opacity at window/class creation and then use picom-trans afterwards on windows ?
Platform
Gentoo linux amd64
GPU, drivers, and screen setup
nvidia-drivers 555.58.02 3840x1600 144Hz monitor with gsync name of display: :0 display: :0 screen: 0 direct rendering: Yes Memory info (GL_NVX_gpu_memory_info): Dedicated video memory: 12288 MB Total available memory: 12288 MB Currently available dedicated video memory: 11345 MB OpenGL vendor string: NVIDIA Corporation OpenGL renderer string: NVIDIA GeForce RTX 3080 Ti/PCIe/SSE2 OpenGL core profile version string: 4.6.0 NVIDIA 555.58.02 OpenGL core profile shading language version string: 4.60 NVIDIA OpenGL core profile context flags: (none) OpenGL core profile profile mask: core profile
OpenGL version string: 4.6.0 NVIDIA 555.58.02 OpenGL shading language version string: 4.60 NVIDIA OpenGL context flags: (none) OpenGL profile mask: (none)
OpenGL ES profile version string: OpenGL ES 3.2 NVIDIA 555.58.02 OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
Environment
xorg server openbox
picom version
v12-rc2
Diagnostics
**Version:** v11 (should be 12-rc2 !!!) ### Extensions: * Shape: Yes * RandR: Yes * Present: Present ### Misc: * Use Overlay: No * Config file specified: /opt/zentoo/scripts/picom.conf * Config file used: /opt/zentoo/scripts/picom.conf ### Drivers (inaccurate): NVIDIA ### Backend: egl * Driver vendors: * EGL: NVIDIA * GL: NVIDIA Corporation * GL renderer: NVIDIA GeForce RTX 3080 Ti/PCIe/SSE2 ### Backend: glx * Driver vendors: * GLX: NVIDIA Corporation * GL: NVIDIA Corporation * GL renderer: NVIDIA GeForce RTX 3080 Ti/PCIe/SSE2Configuration:
Configuration file
``` log-level = "ERROR"; log-file = "/tmp/picom-error.log"; dbus=false backend = "glx"; glx-no-stencil = false; glx-copy-from-front = false; glx-no-rebind-pixmap = true; unredir-if-possible = false; xrender-sync-fence = true; use-damage = true; mark-wmwin-focused = true; mark-ovredir-focused = true; use-ewmh-active-win = true; shadow = true; shadow-radius = 16; shadow-offset-x = -16; shadow-offset-y = -16; shadow-opacity = 0.8; shadow-ignore-shaped = true; detect-rounded-corners = false; shadow-exclude = [ "name = 'Notification'", "name *= 'picom'", "name *= 'Chromium'", "name *= 'Chrome'", "class_g = 'wbar'", "class_g ?= 'Notify-osd'", "class_g = 'Firefox' && argb", "_GTK_FRAME_EXTENTS@:c", "_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'" ]; active-opacity = 1; inactive-opacity = 1; inactive-opacity-override = false; detect-client-opacity = true; opacity-rule = [ "100:fullscreen", "95:class_g = 'URxvt'", "95:class_g = 'UXTerm'", "95:class_g = 'XTerm'", "95:class_g = 'Alacritty'", "100:window_type = 'normal'", # Add a tiny bit of opacity to all normal windows to apply blur "95:window_type = 'dialog'", # Add a tiny bit of opacity to all dialog windows to apply blur "95:window_type = 'popup_menu'", # Add a tiny bit of opacity to all popup_menu windows to apply blur "95:window_type = 'notification'" # Add a tiny bit of opacity to all popup_menu windows to apply blur ]; blur-background = false; blur-background-exclude = [ "window_type = 'desktop'", "window_type = 'dock'", "window_type = 'utility'", "window_type = 'notification'", "class_g = 'Firefox' && argb", "_GTK_FRAME_EXTENTS@:c" ]; fading = true; fade-delta = 2; fade-in-step = 0.03; fade-out-step = 0.03; fade-exclude = [ ]; detect-client-leader = true; focus-exclude = [ "class_g = 'Cairo-clock'", "class_g ?= 'Steam'" ]; wintypes: { tooltip = { fade = true; shadow = true; focus = false; }; normal = { shadow = true; }; dock = { shadow = false; }; dnd = { shadow = false; }; popup_menu = { shadow = true; focus = false; opacity = 0.95; }; dropdown_menu = { shadow = true; focus = false; opacity = false; }; above = { shadow = true; }; splash = { shadow = true; }; utility = { focus = false; shadow = false; }; notification = { shadow = true; }; desktop = { shadow = false }; menu = { focus = false }; dialog = { shadow = true; }; fullscreen = { shadow = false; opacity = 1; }; }; ```Steps of reproduction
Expected behavior
Active window opacity should decrease of -20.
Current Behavior
Active window opacity doesn't change until moving window or select another window.