Move XfceSMClient to xfce4-session (standalone lib) and add upport xdg-session-management + dbus
Protocol spec here.
This will likely require some API additions (hopefully not changes) to XfceSMClient, as the Wayland session management protocol works quite a bit differently from how libSM works on X11, and this will necessitate work in applications to ensure they're doing what needs to be done to work in both environments.
Re: moving to xfce-session:
- The client will depend on xfce4-session's dbus XML files, and it's better to not make copies of them that will need to be kept in sync in another repo.
- In order to support xdg-session-management-v1's toplevel-tracking functionality, I'll need to intercept Wayland events by interposing symbols from libwayland-client (like gtk4-layer-shell does). This will impose overhead on every single Wayland request in an app that merely links the library in, regardless of whether or not the app uses the SM client. The overhead is fairly small, but it feels bad to impose that on apps that don't want it.
- I'll rename it to
XfceSessionClientin order to avoid name conflicts for when libxfce4ui and the new library are linked into the same application.
Edited by Brian Tarricone