Bug 472744

Summary: Inconsistent behaviour between shading / maximizing and restoring windows
Product: [Plasma] kwin Reporter: Max <max>
Component: Window shadingAssignee: KWin default assignee <kwin-bugs-null>
Status: REPORTED ---    
Severity: normal    
Priority: NOR    
Version First Reported In: 5.27.6   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description Max 2023-07-28 12:47:23 UTC
SUMMARY

There's some unexpected behaviour when working with window shading and maximizing, and especially, when unshading/unmaximizng them. State/size seems to be lost or not updated at some point.

I first encountered this when I maximized a shaded windows and expected it to be unshaded (which it wasn't), but although there's something to be said for keeping a window shaded when maximizing it, but unshading that maximized window should then keep it maximized, and NOT return it to its previous size. Also, at that point, the maximize/restore button is still on "I'm maximized, so click me to restore" mode seems to do nothing.

There's actually a few ways in which this seems to go slightly wrong, but at least predictably so. 

STEPS TO REPRODUCE

I'm using a Dolphin window for these steps.

1. Open a window, non-maximized
2. Shade the window
3. Maximize it
4. Unshade it
5. Restore it

OBSERVED RESULT

At step 4, the window is unshaded, but also un-maximized and moved to the top left of the screen; maximize button is still a restore-button at this point. Also, closing the (Dolphin) window and opening a new one, opens it maximized.

At step 5, the window doesn't move or resize, but the button state is now "correct".

EXPECTED RESULT

At step 4, I'd expect the window to be unshaded but still maximized.
Step 5 should restore it to its former size and preferably location.

ADDITIONALLY

There's another way in which this goes slightly against what you'd expect:

1. Open a non-maximized window
2. Maximize it
3. Shade it
4. Restore it (window is now shaded, but in its previous location and size)
5. Unshade it (window is now unshaded, in the same location, but suddenly resized to maximized-size)

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: OpenSUSE Tumbleweed, also tried MicroOS, same result.
KDE Plasma Version:  5.27.6
KDE Frameworks Version: 5.108.0
Qt Version: 5.15.10

ADDITIONAL INFORMATION