[ksmserver] Launch logout greeter with DBus methods

Authored by davidedmundson on Oct 9 2018, 9:23 AM.

Description

[ksmserver] Launch logout greeter with DBus methods

Summary:
Removing this is part of preparations for ksmserver to become just an X
session manager. See T9779.

Instead of ksmserver opening the greeter with a tonne of args and then
having a socket to watch for changes, the new mechanism is that we fire
and forget the prompt. Then the logout prompt calls back into ksmserver
with the request. Simplifies code greatly allows for moving.

KSMserver's shutdown DBus method remain on ksmserver for compatibility,
but ultimately spawning the prompt will move to libkworkspace and called
from the session directly.

QML API in the logout greeter remains mostly untouched.

Behavioural changes are minor:
There was a QML property "choose" exposed to the greeter if the default
shutdown option is set to None. Though we don't allow this in the KCM
and our default prompt doesn't use it.

We no longer block a user from saving a session whilst a logout prompt
is active.

Test Plan:
Logged out
Shutdown

Also ran with old ksmserver, still got a prompt

Reviewers: Plasma

Subscribers: plasma-devel

Tags: Plasma

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