-
-
Notifications
You must be signed in to change notification settings - Fork 593
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Misaligned monitors render wrong when adding/removing monitors #1338
Comments
This was introduced in v12-rc4 (rc3 was working fine), this should be a prevents on releasing rc4 |
Had the same thing on awesomewm-git on desktop, different resolution on the screens. Only when I disconnected the primary monitor (DP-0) then HDMI-0 was displayed correctly! This was specific to
|
Having a similar problem whenever monitor size changes in any way - either enabling/disabling another monitor, or just resizing a monitor. It seems to be a similar issue as #1277 which has been fixed before. This problem has been introduced in commit f36c5e3 and I can reproduce it in both xfwm4 and herbstluftwm by changing my screen resolution from 720p to 1080p while picom is running, and restarting picom corrects the rendering. Backend change doesn't fix the problem, it just changes how the rendering error behaves. |
I just ran into this as well. A quick bisect points at 0aa6202. |
Tried moving the guard added for the Configure event into the else branch so it is ignored when the root window is affected, and it fixes the issue for me. Can you give it a try and see whether it does for you too, or whether it's a different issue? https://github.com/Suyooo/picom |
Your fix works for me, thanks for tracking it down! |
@Suyooo, looks like that's the way it's intended to be. make a pull request maybe? whooops, tagged a wrong person initially |
commit f7e6b34 fixed the issue on my system as well (awesomewm). As an ugly workaround I had a hook to reload picom on screen plug events, this is much better. Thanks! |
That was the plan, just wanted to make sure it's working for others before :) Going to submit it now |
The guard added in commit 0aa620 to avoid duplicates filters out all Configure events on the root window, causing picom to not properly render the screen area after display configuration changes, such as adding or resizing a monitor. Only apply the guard if the Configure event affects a window other than the root window. Fixes #1338 (cherry picked from commit 16e17df)
Platform
Arch 6.10.10-arch1-1
GPU, drivers, and screen setup
Laptop w/ an extra monitor.
NVIDIA GeForce GTX 1650 Ti Mobile
Monitors configured using xrandr:
Monitors are managed via xrandr, which is called by autorandr
Environment
bspwm
picom version
v11 (/home/shady/.cache/yay/picom-git/picom revision 3899d2c)
Diagnostics
[ 09/18/2024 12:47:02.087 c2_parse_target WARN ] Type specifier is deprecated. Type "c" specified on target "_GTK_FRAME_EXTENTS" will be ignored, you can remove it. **Version:** v11 (/home/shady/.cache/yay/picom-git/picom revision 3899d2c)Extensions:
Misc:
Use Overlay: No
Config file specified: None
Config file used: /home/shady/.config/picom/picom.conf
Drivers (inaccurate):
NVIDIA, modesetting
Backend: glx
[ 09/18/2024 12:47:02.429 egl_init WARN ] The egl backend is still experimental, use with care.
Backend: egl
Configuration:
Configuration file
shadow = false;corner-radius = 8;
rounded-corners-exclude = [
"class_g = 'Polybar'"
];
round-borders = 8;
fading = true;
no-fading-openclose = false;
fade-in-step = 0.1;
fade-out-step = 0.1;
fade-delta = 9;
blur: {
method = "dual_kawase";
strength = 3;
background = false;
background-frame = false;
background-fixed = false;
}
backend = "glx";
vsync = false;
mark-wmwin-focused = true;
mark-ovredir-focused = true;
detect-client-opacity = true;
detect-client-leader = true;
blur-background-exclude = [
"class_g ?= 'zoom'",
"name = 'rect-overlay'",
"_GTK_FRAME_EXTENTS@:c",
"class_g = 'LibreWolf'",
"window_type = 'menu'",
"window_type = 'dropdown_menu'",
"window_type = 'popup_menu'",
"window_type = 'utility'",
"class_g = 'activate-linux'",
];
Steps of reproduction
I can also reproduce a similar thing when removing the primary monitor
Expected behavior
Rendering to be normal and correctly aligned on each monitor
Current Behavior
Other details
Its only rendering thats wrong. Interactivity for windows is as if they were in the normal position
The text was updated successfully, but these errors were encountered: