• Martin Flöser's avatar
    Suspend/Hibernate through daemon instead of greeter · a0476890
    Martin Flöser authored
    Summary:
    This change addresses multiple problems with the implementation of
    PowerManagement's suspend/hibernate in the greeter.
    
    First of all it removes the usage of KDELibs4Support library by
    dropping the usage of the PowerManagement API.
    
    The previous variant performed blocking DBus calls which we don't want
    in the greeter. The new implementation is designed in an async way, so
    that it cannot block. The new implementation is also LGPL licensed to
    make it easy to use it as a base for a new implementation in frameworks.
    The new implementation also comes with a small test application to
    demonstrate the usage.
    
    Last but not least the power management query is moved from the greeter
    into the daemon. This brings multiple advantages. It brings us closer to
    no DBus in the greeter and means we don't need to query DBus every time
    the screen gets locked. Instead the value is cached in the deamon and
    pushed to the greeter on start (through the custom Wayland prtocol).
    
    Reviewers: bshah, broulik
    
    Differential Revision: https://phabricator.kde.org/D827
    a0476890
powermanagement.h 1.65 KB