Bug 463176

Summary: Add apply button to window decoration config dialogue
Product: [Applications] systemsettings Reporter: Jack Hill <jackhill3103>
Component: kcm_kwindecorationAssignee: KWin default assignee <kwin-bugs-null>
Status: RESOLVED FIXED    
Severity: wishlist CC: ad.liu.jin, kde, nate, plasma-bugs
Priority: NOR    
Version: 5.26.4   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed In: 6.0
Sentry Crash Report:

Description Jack Hill 2022-12-18 00:38:02 UTC
SUMMARY
I can customise the individual decorations using the config dialogue, but the settings only get applied when I click "OK". This also closes the window, so I have to re-open the window if I decide I didn't like the change. It would be easier if there was an apply button in these dialogues.


STEPS TO REPRODUCE
1. Open Window Decorations KCM
2. Hover over "Breeze" decoration
3. Click the pencil in the bottom right corner
4. Make a change in the dialogue

OBSERVED RESULT
No "Apply" button

EXPECTED RESULT
There should be an "Apply" button

SOFTWARE/OS VERSIONS
Operating System: openSUSE Tumbleweed 20221215
KDE Plasma Version: 5.26.4
KDE Frameworks Version: 5.101.0
Qt Version: 5.15.7
Kernel Version: 6.0.12-1-default (64-bit)
Graphics Platform: X11

ADDITIONAL INFORMATION
Comment 1 Paul McAuley 2023-12-10 19:36:42 UTC
+1 for this.

I am the developer of a C++ window decoration plugin (https://github.com/paulmcauley/klassy , fork of breeze). My plugin has a lot of configuration options which would be easier for the user to compare if the window did not close when clicking OK, and I have had several requests from users for this feature. Therefore, this is a feature request to add an Apply button to the dialog which appears after clicking the pencil icon on each window decoration.

I tried manipulating parent classes to try and add an Apply button from my own plugin class, but it seems that this is part of Plasma and the dialog is provided by the Window Decoration kcm's KCModule class which I don't seem to be able to configure to do this.