https://bugs.kde.org/show_bug.cgi?id=15329
Nate Graham <[email protected]> changed: What |Removed |Added ---------------------------------------------------------------------------- Summary|Save and remember positions |Use Wayland session restore |of all windows on Wayland |to save and remember size, | |position, virtual desktop, | |etc. of windows of | |session-restore-compatible | |apps --- Comment #127 from Nate Graham <[email protected]> --- Dug into this a bit, and the current status is that pieces are starting to fall into place: 1. Qt support for the experimental window positioning-based Wayland session restore is in Qt 6.11 2. KWin support for it is in 6.4, but currently gated behind two environment variables you need to set: QT_WAYLAND_ENABLE_XX_SESSION_MANAGER=1 KWIN_WAYLAND_SUPPORT_XX_SESSION_MANAGER=1 Once Plasma can depend on Qt 6.11, turning it on by default in KWin becomes an option. In addition, more pieces need to be implemented: 1. Apps need to be launched with their session IDs, so KWin can track them 2. Apps need to add some metadata to identify their windows so KWin can use the Wayland session restore protocol to track them across launches and know what size and position they had when closed. #1 will require work in Plasma, KRunner, etc. #2 will require work in all apps Why? Because there's actually no way for a window manager to persistently identify individual windows across app launches without some hints from the apps. Yes, really. It may sound unbelievable, but it's true. So apps need to give the window manager the proper hints. And that's what #2 entails. For KDE apps, this will be relatively easy, as they already use "state saver" code that just needs to be adapted to set the right hints for Wayland session restore purposes. For non-KDE apps, it's gonna be the wild west. Expect many to most apps to lag in adoption of this for years and years. So I'm afraid the dream of "remember all window positions automatically without apps having to do anything" is dead, sorry. I'm renaming this ticket to reflect what's feasible. -- You are receiving this mail because: You are watching all bug changes.
