Feature request: optional per-application window position & size memory
Problem
Apps that don't remember their own geometry reopen via Smart Placement, ignoring where the user last placed them. On multi-monitor setups, many people end up rearranging the same windows every launch.
Current behavior
The FAQ says this is by design ("no") and recommends devilspie/wmctrl. Those work, but run as an external daemon that can only reposition a window after it appears — causing a visible jump — and aren't integrated.
Proposal
An opt-in option to remember, per application (by WM_CLASS), a normal top-level window's position, size, and maximized state, and restore it on next open.
- Off by default (e.g. a new xfconf key such as
/general/remember_window_geometry), so nobody's behavior changes unless they enable it. - Restoring at map time, inside the WM, means no visible jump.
- Applies only to normal windows (skips transients/dialogs/docks).
Demand
Long-standing and recurring — e.g. Xfce forum: "Every morning I need to rearrange my windows". The community already relies on devilspie configs and custom xev/xdotool scripts as workarounds.
Offer
I'd be happy to implement and maintain this as a merge request if there's interest. I wanted to ask first, given the FAQ's current stance.
Questions for the maintainers
- Is an opt-in, default-off version acceptable in principle?
- Preferred storage/config surface — an xfconf key (+ settings UI), or kept minimal?
Working external prototype (Python/EWMH): https://github.com/giuliocsr/win-remember — it demonstrates the behavior and validates demand; the in-WM implementation would differ (restore at map time → no visible jump).