Closed Suyooo closed 6 days ago
Thanks for reporting. Yes, I can reproduce this
I think the cause is I accidentally changed what event mask is set on the root window, should be easy to fix.
I'm sorry, but the problem still occurs for me. Is there any other information I could post that could help?
@Suyooo can you give me the sequence of commands you ran to enable the second monitor?
@Suyooo can you give me the sequence of commands you ran to enable the second monitor?
xrandr --output DVI-I-0 --mode 1360x768 --right-of HDMI-0
In the video in the first post, the command also includes --rotate inverted
since that's what I usually have to use, but the error occurs without it, too.
Hmm, I can't reproduce the problem anymore.
What's your window manager?
My window manager is herbstluftwm.
I also managed to reproduce it on xfwm4, and using a config file containing only backend="glx";
(same problem with egl and xrender).
OK, there does seem to still be a problem, but the behavior you described in your OP has been fixed, I believe?
What I am seeing now is that the second monitor was blank after I ran the xrandr command, but if I move a window across the second monitor, it "reveals" what is there.
Is that what you saw as well?
No, it's still the same behaviour as in the video on all three backends. It seems that, as long the dragged window is still partially in the visible area, the color for the space the dragged window would take up on the new monitor is taken from the last pixel from the visible area on the same row - but the window that is located on the newly enabled monitor is never revealed that way.
I am unable to reproduce that, but I will fix the problem I saw. Don't know if that's going to help with your problem or not.
Oh, I just tried again and this time I get something different and is more like what you described, lucky.
That fixed it, thank you so much!
When changing monitor configuration, such as enabling additional monitors or rotating one, picom seems to not render the new area. Occurs since c96ca0a.
Platform
Debian Trixie (testing) x86_64
GPU, drivers, and screen setup
Nvidia GTX 970 with proprietary drivers 550.54.14, Mesa 24.0.8-1. Triple monitor, side-by-side, configured via xrandr.
glxinfo
``` > glxinfo -B name of display: :0 display: :0 screen: 0 direct rendering: Yes Memory info (GL_NVX_gpu_memory_info): Dedicated video memory: 4096 MB Total available memory: 4096 MB Currently available dedicated video memory: 3382 MB OpenGL vendor string: NVIDIA Corporation OpenGL renderer string: NVIDIA GeForce GTX 970/PCIe/SSE2 OpenGL core profile version string: 4.6.0 NVIDIA 550.54.14 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 550.54.14 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 550.54.14 OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20 ```Environment
herbstluftwm
picom version
vgit-452aa
Diagnostics
``` **Version:** vgit-452aa ### Extensions: * Shape: Yes * RandR: Yes * Present: Present ### Misc: * Use Overlay: No (Another compositor is already running) * Config file specified: None * Config file used: /home/chris/.config/picom/picom.conf ### Drivers (inaccurate): NVIDIA [ 22/06/24 16:06:11.503 egl_init WARN ] The egl backend is still experimental, use with care. ### Backend: egl * Driver vendors: * EGL: NVIDIA * GL: NVIDIA Corporation * GL renderer: NVIDIA GeForce GTX 970/PCIe/SSE2 ### Backend: glx * Driver vendors: * GLX: NVIDIA Corporation * GL: NVIDIA Corporation * GL renderer: NVIDIA GeForce GTX 970/PCIe/SSE2 ```Configuration:
Configuration file
``` #------------------------------------------------------------------------------ # Shadow #------------------------------------------------------------------------------ shadow = false; shadow-radius = 16; shadow-offset-x = -12; shadow-offset-y = -12; shadow-opacity = 0.4; shadow-red = 0.0; shadow-green = 0.0; shadow-blue = 0.0; shadow-exclude = [ "name *= 'mozc_renderer'", "class_g = 'conky'", "name = 'GLava'", "_GTK_FRAME_EXTENTS", "window_type = 'menu'", "window_type = 'dropdown_menu'", "window_type = 'popup_menu'", "window_type = 'tooltip'", "window_type = 'utility'" ]; #------------------------------------------------------------------------------ # Round Corners #------------------------------------------------------------------------------ round-borders = 0; #rounded-corners-exclude = [ # "(! class_g = 'Dunst')" #]; corner-radius = 0; #------------------------------------------------------------------------------ # Opacity #------------------------------------------------------------------------------ menu-opacity = 1.0; inactive-opacity = 1.0; active-opacity = 1.0; frame-opacity = 1.0; #------------------------------------------------------------------------------ # Dim Inactive Windows #------------------------------------------------------------------------------ inactive-opacity-override = false; inactive-dim = 0.0; inactive-dim-fixed = true; #------------------------------------------------------------------------------ # Background Blurring #------------------------------------------------------------------------------ blur-background = true; blur-background-frame = false; blur-method = "dual_kawase"; blur-strength = 3; blur-background-fixed = false; # whitelist instead of blacklist blur-background-exclude = ["(! class_g = 'Terminator')"]; #------------------------------------------------------------------------------ # Fading Animation #------------------------------------------------------------------------------ fading = true; fade-delta = 5; fade-in-step = 0.05; fade-out-step = 0.05; no-fading-openclose = false; no-fading-destroyed-argb = false; fade-exclude = [ ]; #------------------------------------------------------------------------------ # Unredirection #------------------------------------------------------------------------------ unredir-if-possible = true; unredir-if-possible-delay = 500; unredir-if-possible-exclude = [ "class_g = 'cmusCoverViewer'", "class_g = 'Chromium-browser'", "class_g = 'firefox'" ]; #------------------------------------------------------------------------------ # Other #------------------------------------------------------------------------------ # backend glx or xrender backend = "glx"; use-ewmh-active-win = true; detect-rounded-corners = true; vsync = true; no-frame-pacing = false; crop-shadow-to-monitor = true; detect-transient = true; detect-client-leader = true; #------------------------------------------------------------------------------ # GLX backend #------------------------------------------------------------------------------ glx-no-stencil = true; glx-no-rebind-pixmap = true; use-damage = true; glx-copy-from-front = true; glx-swap-method = 1; #glx-use-copysubbuffermesa = true; #------------------------------------------------------------------------------ # Window type settings #------------------------------------------------------------------------------ wintypes: { tooltip = { fade = true; shadow = true; opacity = 0.8; focus = false; }; dock = { fade = false; shadow = false; opacity = 1.00; focus = false; }; }; ```I tried to change some of the GLX backend options, but none seemed to have an effect.
Steps of reproduction
Expected behavior
The new monitor is correctly displayed.
Current Behavior
The new area is not correctly rendered until picom is restarted.
Log file
This is a logfile of starting picom, enabling a second monitor, then exiting picom again. Log level set to Debug, if you feel like a full trace would help, let me know and I can record one.
picom-bad.log
For comparison, this is the same sequence but with picom at 88c8ba8 where the error does not occur, in case it helps.
picom-good.log
Video recording
The video shows me enabling the right monitor, which does not show the window that is supposed to be there, and trying to move another window onto it. At 18 seconds, I restart picom, and it works fine afterwards.
https://github.com/yshui/picom/assets/5811591/4ce1f5ac-4bf2-4cf9-922a-2ca6156cbdf5