Skip to content
  • David Edmundson's avatar
    Port one of session management connections state to a custom API · ec610fd7
    David Edmundson authored
    Summary:
    Currently kwin opens a second ICE connection to ksmserver in order to
    tell the state of kwin's whether we're logging out and saving clients or
    not.
    
    This requires that kwin launches after ksmserver to have the connection
    which is a dependency I want to break.
    
    Practically this code is already ksmserver specific as it relies on some
    custom code that sends the first saveState request to kwin first.
    
    Instead we can replace it with a bespoke IPC over DBus and siplify the
    code both end. This will allow several other future enhancements that we
    want with regards to handling the session state, as well as make an
    effort platform agnostic session management, as well as cleaning up some
    complex code.
    
    Ksmserver calls into kwin, rather than having kwin watch ksmserver state
    to allow us make sure it's race free.
    
    Reviewers: #kwin, zzag
    
    Reviewed By: #kwin, zzag
    
    Subscribers: romangg, zzag, kwin
    
    Tags: #kwin
    
    Differential Revision: https://phabricator.kde.org/D24862
    ec610fd7