-
Notifications
You must be signed in to change notification settings - Fork 177
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
Turning off a display with views will crash wayfire [*Critial BUG*] #2201
Comments
Tried to simulate that - connected the additional monitor, opened filemanager window - it opened on main screen. Then dragged it to the external monitor. and - the moment I dropped it there - got a crash. Repeated several times - same result. When I grab the window and drag it to the right (where my additional monitor is connected) - all ok. Until I release the mouse button to drop the window. |
looks like a different issue, can you enable the debug to report? |
Here is wayfire log from buildtype=debug + gdb backtrace from coredump |
this is a different issue, would be nice if you had -Db_sanitize=address --buildtype=debug and the open a new issue |
Seems that my issue was becaiuse I've applied PR #2197 Reversed it and it is fine. |
@mark-herbert42 Are you sure this is because of #2197? I don't see much there which could even cause the bug you mentioned. It is probably the previous PR, #2165 |
No, it is exactly 2197. Just tried again - current git version works fine. Apply 2197 on top of current git - crash. |
Oh, I think the problem is that I mistakenly have a print_trace() call where it shouldn't be. I've updated the PR, that should probably fix your problem. |
I just pushed a fix for this on my PR #2197 |
Thanks for the fix, solved! |
It works now - no crash, and if I disconnect monitor windows safely return to the main laptop screen. Then I open small fm (mate caja) window and drag it there to the monitor. Window looks bigger - it remains same size in pixels, bit monitor has less pixels that makes window take bigger part of the screen. When I disconnect monitor - window returns to the main screen - but it becomes big. Instead of preserving size in pixels (as happen when I move the window there) - it presereves window to screen relative size. |
@mark-herbert42 Do you have different scale configured for the outputs? The logical size is preserved across monitors - and if you move from 1x to 2x scale monitor, the actual size will therefore double. |
No - I have the same scale 1.0 on both of them. It looks like the system is recalculating something based on resolution of the monitor, not DPI scale. When I set up both monitors to run 1920 resolution this does not happen - windos restores back same size it was dropped. But in my live scenario - 2944 pixel wide laptop panel and 1920 external monitor - 2 cycles open small window - drop it to external monitor - disconnect monitor - ends up in window taking the full screen. Actually this happen when I disconnect monitor. If i just move window between monitors - nothing happens, window remains the same. But when I do dsiconnect monitor - that means the output is not there anymore. So what will be the scale for non-existing monitor then? |
Also I've noticed that disconnecting monitor crashes wf-background. Not immediately - but it will foe sure crash. I've set the cycle timeout - so it happens most likely on attempt to change background when time comes, not by the fact of monitor disconnect. |
Sounds like a completely unrelated issue.
Thanks, I think with this hint I can see what is going on. See #2211 |
Steps to reproduce: Turn off the ouput through monitor power button and power on again
plugins enabled: stipc autostart command foreign-toplevel gtk-shell idle ipc ipc-rules oswitch resize shortcuts-inhibit window-rules wm-actions workspace-names xdg-activation move focus-change wsets wayfire-shell grid winzoom switcher force-fullscreen fast-switcher view-shot expo alpha vswipe vswitch place cube blur invert mag zoom wobbly follow-focus scale
tested with multi monitor setup
The text was updated successfully, but these errors were encountered: