Make ksmserver not launch kwin
Closed, ResolvedPublic

Description

For legacy startup this would be launched by plasma-session
For systemd startup naturally it will be it's own unit

The big challenge is that kwin needs to know what session it's restoring/saving if session restore on X is used.

This is typically passed as env vars or command line args on startup, which QSessionManager picks up. All that needs porting to something that works.

zzag added a subscriber: zzag.Jan 31 2020, 11:55 AM

Action plan for this is:

Kwin gains the following exported DBus methods in sm.h

  • loadSession(someId)
  • saveSession(someId)

kwin drops QSessionManager and listens for these instead calling into the existing methods

ksmserver calls these at appropriate times in startup.cpp shutdown.cpp.

Then we kill all the window manager aware code from ksmserver, ksmserver stops knowing or caring about WMs.
We move starting kwin into startkde for the non systemd case.