zeroxoneafour / polonium

Autotile manager for Plasma 6
https://zeroxoneafour.github.io/polonium/
MIT License
936 stars 18 forks source link

[Bug]: Kwin 6.1.0 Switching workspace from empty workspace makes windows not show up #182

Open sopyb opened 3 months ago

sopyb commented 3 months ago

Before you make the issue, confirm that

Describe the bug

If I switch from a empty workspace into a workspace with a window on it the window (I assume) gets resized to 0x0 and I have to hit the toggle tiling hotkey I have to have the app showing again.

To reproduce

Expected behavior

The window would show up and be tiled to the whole screen

Log output

no idea how to get those the page linked is empty

Screenshots and videos

No response

Additional context

No response

sopyb commented 3 months ago

https://github.com/zeroxoneafour/polonium/assets/32602702/9ced92c8-c342-4ea0-913c-4d5c9893c0fe

alioth9 commented 3 months ago

I have quite the same bug except when I switch from an empty desktop to one with a window the window is still visible but move to point 0x0 and is under my top panel. There is also a timing aspect: when I move from an empty VD to one with an app passing through a none empty one I could encounter the bug if I go fast but not if I pause between the desktop switch. Beside some app are more prone to be affected than other. For example systemesettings is always affected but konsole or dolphin far less. Also to describe what I see is that the windows are drawn to the correct size and position but then move to 0x0 and going under my top panel.

I just made a verification and It seems the bug don't happen if my top panel is not floating (in my default config I have a floating top panel).

Setup: KDE Neon testing plasma-desktop: 6.1.0

NB: initially I hesitate to post since I'm on kde neon testing but since sopyb post this and it seems quite similar than mine. NB2: Thanks you so much for this good work on Polonium. Comming from awesome and sway I couldn't use kde/plasma without it.

alioth9 commented 3 months ago

@sopyb did you encounter the bug if you change your panels configuration. unfloat, automatic hide. I think in particular your top panel

sopyb commented 3 months ago

I just checked it only happens when the panel is floating and always visible

8uff3r commented 3 months ago

I'm also having these problems on Fedora.

Making the panel non floating helps with windows disappearing but I still can't maximize windows and also toggling tiling make them disappear again

sopyb commented 3 months ago

I apparently upgraded to 6.1 without realizing :facepalm: going back to a Nix generation on kwin 6.0.4 can't reproduce the bug there

alioth9 commented 3 months ago

I can't maximize either but I in my case the windows don't disappear/are not resize. In the case of maximize, I can see that the windows try to maximize but seems to be prevented from it and goes back to the tiling.

In-line commented 3 months ago

Window Maximization is another KWin issue. Original change author just deleted unit test that would have prevented it :)

https://bugs.kde.org/show_bug.cgi?id=489463

zeroxoneafour commented 3 months ago

Yeah I have absolutely no idea why this would happen. Sorry for the radio silence, I haven't been using Linux really for the past few months due to kernel panics maybe every other boot and Plasma 6.1 being pretty buggy even ignoring all the problems with Polonium. If this is a KWin bug (it probably is if its only an issue in the new release) I'm probably just going to wait out and pray that it fixes itself soon(?)

In-line commented 2 months ago

https://invent.kde.org/plasma/kwin/-/merge_requests/6023

I created MR to restore old behavior. I'm trying to convince KWin devs that breaking backward compatibility is bad idea

zeroxoneafour commented 2 months ago

I personally think that tiling on maximize is a better solution overall and agree that it helps combine tiling and maximizing features under a more central window management umbrella. Obviously the larger problem is that it breaks compatibility with 6.0 if I chose to embrace this new behavior.

Compatibility should really never be broken outside of major releases. I'll keep an eye on the KWin pr and see how that turns out. Dropping support for 6.0 may be necessary, because it seems like more than just this has changed (ex. window.output reporting incorrect screens?)

All of this brings into mind the feasibility of a tiling manager built on top of an unmanaged tiling system. If you are experiencing any issues, I really do highly recommend switching to Khronkite, at least for the time being.

In-line commented 2 months ago

I already fixed incorrect display output in https://invent.kde.org/plasma/kwin/-/commit/7578f70b404acbceb53b057e8c483926badf7e21 released in 6.1.1

I will try to contribute more unit tests specific to Polonium in the future. I'm fan of your plugin, I'm better of fixing KWin issues than switching to Khrokhite 😄

In-line commented 2 months ago

It would be helpful if you go on and comment in KWin MR and bug to prove the point

zeroxoneafour commented 2 months ago

@In-line https://invent.kde.org/zeroxoneafour It seems they don't really want me doing that for some reason. You can cite me saying that breaking backwards compatibility between minor releases is highly detrimental to the scripting ecosystem.

Also, did they say https://store.kde.org/p/1955647 is one of the main reasons the tiling system was even built? It really wasn't designed to be expanded on at all...