Bug 501595

Summary: When an application disables window actions, or does not provide an icon, the Breeze decoration reserves space for the absent elements
Product: [Plasma] kwin Reporter: Roke Julian Lockhart Beedell <4wy78uwh>
Component: decorationsAssignee: KWin default assignee <kwin-bugs-null>
Status: CONFIRMED ---    
Severity: minor CC: kwin-bugs-null, nate, uhhadd
Priority: VLO    
Version First Reported In: 6.3.3   
Target Milestone: ---   
Platform: Fedora RPMs   
OS: Linux   
URL: https://github.com/Mbucari/Libation/commit/252a216e897a866016057fd479dfcc9b1ad2484a#commitcomment-153805523
See Also: https://github.com/rmcrackan/Libation/issues/762#issue-1912311802
https://invent.kde.org/plasma/kwin/-/merge_requests/8155
https://bugs.kde.org/show_bug.cgi?id=511464
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:
Attachments: A Screenshot of the Relevant Application's Window Decorations
A Screenshot Of A Modal Without An Icon, With Space Reserved For It

Description Roke Julian Lockhart Beedell 2025-03-16 16:33:38 UTC
Created attachment 179470 [details]
A Screenshot of the Relevant Application's Window Decorations

SUMMARY

When a 3rd-party application disables minimisation and maximisation functionality, KWin renders the closure button where the minimisation button should be, and does not render the aforementioned despite reserving space for them.

STEPS TO REPRODUCE

1. Visit https://github.com/Mbucari/Libation/actions/runs/13800373941#:~:text=64.6%20MB-,Libation.12.0.3.2%2Dlinux%2Dchardonnay%2Damd64.rpm,-86.6%20MB
2. Download the ".zip" file served by the "Libation.12.0.3.2-linux-chardonnay-amd64.rpm" entry.
3. Extract the ".rpm" file from it (via Ark).
4. Invoke "sudo dnf5 install" with its path.
5. Invoke the Libation GUI.
6. Invoke "Settings".

OBSERVED RESULT

KWin renders the closure button where the minimisation button should be, because it reserves space for the hidden buttons.

EXPECTED RESULT

The closure button should render on the right.

SOFTWARE/OS VERSIONS

> Operating System: Fedora Linux 41  
> KDE Plasma Version: 6.3.3  
> KDE Frameworks Version: 6.12.0  
> Qt Version: 6.8.2  
> Kernel Version: 6.13.6-200.fc41.x86_64 (64-bit)  
> Graphics Platform: Wayland

ADDITIONAL INFORMATION

Originally discussed at https://github.com/Mbucari/Libation/commit/252a216e897a866016057fd479dfcc9b1ad2484a#commitcomment-153805523.
Comment 1 Roke Julian Lockhart Beedell 2025-07-29 19:04:13 UTC
Created attachment 183642 [details]
A Screenshot Of A Modal Without An Icon, With Space Reserved For It

This also applies to the application's icon, per https://github.com/rmcrackan/Libation/issues/762#issue-1912311802.
Comment 2 Roke Julian Lockhart Beedell 2025-11-01 14:14:46 UTC
Comment on attachment 179470 [details]
A Screenshot of the Relevant Application's Window Decorations

Albeit tangential, I've since reported https://bugs.kde.org/show_bug.cgi?id=511464#c1 about the inconsistent screenshots.

Additionally, I've tried to recently reproduce this using https://github.com/rmcrackan/Libation/releases/download/v12.0.3/Libation.12.0.3-linux-chardonnay-amd64.rpm in https://discussion.fedoraproject.org/t/how-to-create-a-toolbox-in-fedora-38-silverblue-with-a-downgraded-gcc-gcc-12-instead-of-gcc-13/86781/2. However, it dies, and since I have no clue about how an application can decide to not render such buttons, I just can't.