Skip to content
  • Martin Flöser's avatar
    [server] Support inhibiting the IdleInterface · 42b2daae
    Martin Flöser authored
    Summary:
    This is a preparation step to support idle_inhibit_unstable_v1 protocol.
    As in Plasma powermanagement, screen locking, dpms, etc. is not
    controlled by the wayland compositor but by external components through
    the IdleTimeout interface the compositor needs a way to inhibit the idle
    timeouts. So once idle_inhibit_unstable_v1 is implemented the compositor
    can hook this up to the inhibit API in IdleInterface and thus inhibit
    powermanagement, etc. as requested by the idle_inhibit_unstable_v1
    protocol.
    
    The added API is straight forward:
     * inhibit: inhibits idle timeouts
     * uninhibit: uninhibits again
     * inhibit and uninhibit must be called in pairs, so twice inhibit,
    means uninhibit must be called twice
     * isInhibited: whether it's inhibited
     * and a signal that it changed
    
    The signal is mostly used internally to stop the timers.
    
    Test Plan: Test case extended
    
    Reviewers: #frameworks, #kwin, #plasma_on_wayland
    
    Subscribers: plasma-devel
    
    Tags: #plasma_on_wayland, #frameworks
    
    Differential Revision: https://phabricator.kde.org/D8383
    42b2daae