Bismuth-Forge / bismuth

KDE Plasma add-on, that tiles your windows automatically and lets you manage them via keyboard, similarly to i3, Sway or dwm.
https://bismuth-forge.github.io/bismuth/
Other
2.41k stars 92 forks source link

[Bug]: Some apps start with incorrect window size in 3.1.3 #421

Closed HanabishiRecca closed 9 months ago

HanabishiRecca commented 2 years ago

Summary

After the 3.1.3 update some apps start with incorrect window size and do not tile until some control action performed.

Seems like this line was useful. Adding it back (along with reverting https://github.com/Bismuth-Forge/bismuth/commit/a95ff95c34d8b24378a94c8088827593af7a8b55) solves the issue.

Steps to Reproduce

Affects some apps. E.g. kwrite in my case.

Expected behavior

Windows should tile properly.

Screenshots

No response

Bismuth version

3.1.3

KDE Plasma version

5.25.4

The platform KWin is running on

X11

Additional context

No response

gikari commented 2 years ago

Which applications are affected?

I cannot reproduce this behavior with kwrite.

HanabishiRecca commented 2 years ago

This actually happens when window tires to maximize itself on start. To reproduce it with kwrite, maximize the window, close and then reopen it.

https://user-images.githubusercontent.com/13597663/188160654-e190a7b6-2514-4a28-acb5-3c210c0bb328.mp4

HanabishiRecca commented 2 years ago

There are lot of problems with maximized windows actually. But prior this change bismuth just was forcing them to work kinda properly.

gikari commented 2 years ago

For me, it works like this: after launching, a maximized window snaps into layout, but still has it's maximized state. Apart from that nothing breaks.

HanabishiRecca commented 2 years ago

Anyway, I think bismuth should control the state. Like force the normal state when widown is tiled. And maybe force maximization when "Maximize sole windows" enabled (just streching is not enough, you can see the difference when using new plasma "floating" panels, which react to window maximization).

HanabishiRecca commented 2 years ago

I discovered another case. For windows which can save and restore their geometry, this can happen:

image

So maybe enforceSize actually viable.

DesyncedCode commented 1 year ago

I'm having this same issue but for me it's affecting dolphin file manager. Screenshot_20220914_081324

HanabishiRecca commented 1 year ago

It is in fact affects any app that changing its own window geometry. Bismuth just don't have any logic to counter this behavior now.
The commit description states that the size enforcement conflicts with some moving between screens logic, but I use a patched build with enforceSize inserted back and don't see any issues with it.

DesyncedCode commented 1 year ago

I was able to reproduce the issue a second computer, it seems when I change any of the window tiling settings in kde the issue comes back. I downgraded to v3.1.2 for now.

xfzv commented 1 year ago

I'm having this same issue but for me it's affecting dolphin file manager.

Same here, Dolphin is the only app affected (Arch Linux / Gentoo). Still occurring with 3.1.4, I'm sticking with 3.1.2 for now.

xfzv commented 1 year ago

Had no choice but to update to 3.1.4 now that Plasma 5.26 was released and as expected, the issue came back.

puglet5 commented 1 year ago

@xfzv, hi! As a temporary fix, I suggest setting the following window rules:

image

This fixes issues for me, though I'm not yet sure if it breaks anything. You might set this for dolphin specifically. Let me know if it works.

xfzv commented 1 year ago

@puglet5 Thank you so much! After about 45 minutes of testing with different layouts (tile, monocle, three column, spiral and quarter), the issue hasn't occurred a single time so far. As suggested, I applied the rule to dolphin window class only.

yorunning commented 1 year ago

@xfzv, hi! As a temporary fix, I suggest setting the following window rules:

image

This fixes issues for me, though I'm not yet sure if it breaks anything. You might set this for dolphin specifically. Let me know if it works.

It affects the normal display of krunner

xfzv commented 1 year ago

It affects the normal display of krunner

Assuming the issue only affects Dolphin on your end (like me), use Exact Match dolphin for Window class (application) and krunner position won't be affected.

yorunning commented 1 year ago

It affects the normal display of krunner

Assuming the issue only affects Dolphin on your end (like me), use Exact Match dolphin for Window class (application) and krunner position won't be affected.

Krunner is normal now, thank you

rayan-mazouz commented 1 year ago

same issue here. this fixed it. The initial placement rule is unnecessary for me.

@xfzv, hi! As a temporary fix, I suggest setting the following window rules: image This fixes issues for me, though I'm not yet sure if it breaks anything. You might set this for dolphin specifically. Let me know if it works.

It affects the normal display of krunner