Remove QSessionManager usage
ClosedPublic

Authored by broulik on Apr 6 2020, 9:51 AM.

Details

Summary

Instead, have KSMServer talk to us directly on DBus.
This allows us to start KWin independently of a session manager, for example in case of systemd, or whenever there will be a Wayland session restore protocol.

Test Plan

Depends on D28616

  • KWin still restores window properties (such as opacity) on restored apps on startup

Diff Detail

Repository
R108 KWin
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.
broulik created this revision.Apr 6 2020, 9:51 AM
Restricted Application added a project: KWin. · View Herald TranscriptApr 6 2020, 9:51 AM
Restricted Application added a subscriber: kwin. · View Herald Transcript
broulik requested review of this revision.Apr 6 2020, 9:51 AM
broulik edited the summary of this revision. (Show Details)Apr 6 2020, 10:01 AM
broulik edited the test plan for this revision. (Show Details)
broulik edited the test plan for this revision. (Show Details)
apol added a subscriber: apol.Apr 6 2020, 12:35 PM

+1 LGTM

sm.cpp
357

Care to elaborate? what do you have in mind here?

Feels like it could end up being one of these TODO that stay forever

davidedmundson accepted this revision.Apr 9 2020, 12:51 PM
davidedmundson added a subscriber: davidedmundson.
davidedmundson added inline comments.
sm.cpp
357

Ack, I rarely see a TODO and act upon it in any meaningful way.

IMHO it's not a problem as-is. One is a request for kwin to perform an action, the other is a property of the state the whole session should be in.

It allows us to be more explicit that we're shutting down or whatever which could outlive session management operations and to separate ksmserver specific code further.

This revision is now accepted and ready to land.Apr 9 2020, 12:51 PM
This revision was automatically updated to reflect the committed changes.