SUMMARY *** NOTE: If you are reporting a crash, please try to attach a backtrace with debug symbols. See https://community.kde.org/Guidelines_and_HOWTOs/Debugging/How_to_create_useful_crash_reports *** STEPS TO REPRODUCE 1. Open dolphin 2. double click left edge to maximize it horizontally 3. Try to resize from the left edge or double click the left edge OBSERVED RESULT Nothing happens -- cannot revert to unmaximized state EXPECTED RESULT There should be some way to undo the maximization. SOFTWARE/OS VERSIONS Operating System: Arch Linux KDE Plasma Version: 6.0.80 KDE Frameworks Version: 6.0.0 Qt Version: 6.7.0 Kernel Version: 6.7.6-arch1-1 (64-bit) Graphics Platform: Wayland Processors: 20 × 13th Gen Intel® Core™ i9-13900H Memory: 15.2 GiB of RAM Graphics Processor: Mesa Intel® Graphics Manufacturer: ASUSTeK COMPUTER INC. Product Name: ROG Zephyrus G16 GU603VV_GU603VV System Version: 1.0 ADDITIONAL INFORMATION
> There should be some way to undo the maximization. It's impossible. Either we have what we have in master or nothing I guess.
My suggestion: get more feedback from users. If we keep receiving similar reports, then let's revert the change.
(In reply to Vlad Zahorodnii from comment #1) > > There should be some way to undo the maximization. > > It's impossible. Either we have what we have in master or nothing I guess. Ahh that's unfortunate.... > My suggestion: get more feedback from users. If we keep receiving similar reports, then let's revert the change. Sounds reasonable.
Git commit 11a5513e789e2bd9a99f19d2b8477ca4700ab46d by Vlad Zahorodnii. Committed on 15/03/2024 at 18:00. Pushed by vladz into branch 'master'. Avoid moving the window while it's maximized Unlike X11, on Wayland, the window won't change its maximize mode until it renders a new buffer. This creates a problem for interactive move because if it's not careful and moves the window while it's still effectively maximized, it will look as if the window has leaked to other screens. This change fixes the problem by making Window::handleInteractiveMoveResize() avoid move() if the window needs to be unmaximized. As a bonus, it also allows to unmaximize the windows that are maximized along only one dimension by dragging them. Unfortunately, tiling stuff still suffers from the same issue. In order to fix it, Window::tile() has to be part of double buffered state, like Window::maximizeMode(). Related: bug 449105, bug 459218 M +1 -0 autotests/integration/kwin_wayland_test.h M +18 -0 autotests/integration/test_helpers.cpp M +312 -0 autotests/integration/xdgshellwindow_test.cpp M +28 -13 src/window.cpp M +9 -0 src/x11window.cpp M +11 -0 src/xdgshellwindow.cpp https://invent.kde.org/plasma/kwin/-/commit/11a5513e789e2bd9a99f19d2b8477ca4700ab46d
With the commit, I am happy to close this as INTENTIONAL -- from the UX point of view, the problem is solved.