[ksmserver] Signal session management state to kwin directly

Authored by davidedmundson on Oct 31 2019, 12:32 PM.

Description

[ksmserver] Signal session management state to kwin directly

Summary:
Kwin had to have two ICE connections in order to track state
indepdendently of it's session saving.

This replaces that with a more direct DBus protocol allowing for both
simplification on the kwin side as well as comunicating the logout state
better for effects.

Whilst this code temporarily complicates things, now we have this
interface the next step is drop all the isWM() stuff and do kwin
specific session management also over this interface. See T11882

Test Plan:
Added qdebug into kwin
started logging out with an unsaved file, cancelled shutdown
started logging out with, discarded file

Reviewers: KWin

Subscribers: apol, plasma-devel

Tags: Plasma

Differential Revision: https://phabricator.kde.org/D24945