Wayland remembering window position, size and location

Is there any hope that we may see this implemented reliably any time soon under Wayland? It’s an important part of any OS and only a handful of applications actually remember the geometry and location of their own windows. The process actually works better under X11.

1 Like

There is hope, as this is a key part of the Wayland session restore work that’s ongoing.

2 Likes

This is awesome news! Thanks for the reply. My hope is renewed.

1 Like

I can’t help being pessimistic, this could mean “another couple of years” considering the snail pace of Wayland improvements. Wayland has been out for 16 years now and still lacks basic features.

1 Like

Maybe try this:

It’s super limited but maybe better than nothing.

What I would like to see is being able to open an app, resize it to my liking, open “Configure Special Application Settings”, doubleclick “Detect Wind Properties”, select size and have the dimensions the same as the app window I sized rather than having to size the Applications Settings window to the app I resized before selecting size.

As for position selecting it under "Configure Special application settings works just fine. Examples: Both Discord and Telegram set to be lined up on the right side of the screen just under the main panel, Stacer set to open in the middle of the screen, LocalSend the same as Stacer, SMPlayer sized to my liking set to launch in the middle of the screen. The only app I can’t use position on is Dolphin cause I always have two Dolphin windows open.

True. I had to switch back to dual 1200p monitors as fractional scaling using a single 27" 4k monitor still isn’t quite there yet. Once again, fractional scaling under X11 actually works better.

Once again, basic functionality…

2 Likes

I decided to give Wayland another shot. I note that the failure to remember window locations also includes the failure to remember which virtual desktop they were closed on in the last logout. This means I have to spend 5 minutes after logging in simply manually restoring the applications to their correct desktops, sizes and locations.

One thing that I do regularly is a quick visual comparison of text files. I like to have the windows side by side to facilitate this. Under X11, this is easy enough - I open one in Kate and the other in K-write and they open to their last position. With Wayland they both open centred. I have a similar issue with Scribus, where I like to have the document on the right side of the screen with the properties window to the left.

I’m not going to list all the apps that I use and my preferences for them, but the basic idea is that I want them to open where I left them.

The idea of needing to set special rules for each application is not a real solution even if it were as easy to do as BlueUSA implies. The language to do so is arcane. Figuring out what you actually are selecting isn’t easy and it doesn’t seem to even have a setting to remember virtual desktop.

1 Like

I’ve noticed the same thing, it’s basic functionality that should be a part of any OS, functionality that should have been implemented from the very onset regarding Wayland.

I’ve got a number of games here that can’t even capture the mouse running dual monitors under Wayland, the cursor goes off the screen and into the second monitor and you end up looking at the ground - I mean, seriously, how can mouse capture still be an issue under Wayland? Run X11 and everything works as it should.

I’m just as concerned about the weird way I have to set individual applications. The only way to get the menu is Alt-F3 (clicking on the title bar doesn’t work even if the app has one - they seem to be passe these days) then setting the virtual desktop, size and position for each app is a real pain. And if I start a new app, I’d want it remembered by default when I re-login. Who’s to say whether I will even remember the incantation to bring up the “Configure Special Application Setting”.

To all people carefully positioning their windows; maybe you should try some tailing window manager which most of the time frees you from having to deal with sizing?
GitHub - anametologin/krohnkite: A dynamic tiling extension for KWin is nice!

Plasma 6.4 will remember the size, position, and virtual desktops placement of windows.

Regards

It’s definitely good progress on this front - just to keep in mind the other point made in that blog post, though:

  • Toolkits and apps still need to opt in; nothing automatically starts working for free.

So the framework will be there, but it will be up to other projects to use it. Perhaps a good chance for folks to get involved helping their favorite applications take advantage :slight_smile:

The problem is: Apps have to support the feature…

Developers of Apps that don’t belong to KDE, knows (or they should) that will be supported in Plasma 6.4.

Is not in my hand. I am not a developer. So, hope. The KDE team is doing their job. Can’t say to others, remake your app.

Regards

The problem is: Under Linux, we’re lucky to get the support of certain applications - Period. When developers are faced with the reality that they have to port their often Windows based applications across to wayland native because xwayland isn’t perfect, coupled with the new reality that they have to add support for the DE to remember window geometry, location on the desktop, location on a given monitor as well as virtual workspace - The possibility that a number of developers are going to drop Linux support altogether becomes a distinct reality.

With a 4% user base at most, we don’t have a lot of leverage here. We are the minority and as such need to make sure implementations involve the path of least resistance.

1 Like

IIUC, that is mainly for multi-window applications, as the compositor doesn’t know which new window corresponds to which old one, so the application must provide a mapping in order to restore window positions.

However, I don’t think all single-window apps have to use this protocol. The compositor should have an option to restore the first window of an app to its previous position by default.

This would be the ideal solution.