Control behavior when display idles
This interface permits inhibiting the idle behavior such as screen blanking, locking, and screensaving. The client binds the idle manager globally, then creates idle-inhibitor objects for each surface.
Warning! The protocol described in this file is experimental and backward incompatible changes may be made. Backward compatible changes may be added together with the corresponding interface version bump. Backward incompatible changes are done by bumping the version number in the protocol and interface names and resetting the interface version. Once the protocol is to be declared stable, the ‘z’ prefix and the version number in the protocol and interface names are removed and the interface version number is reset.
destroy() → 'None'¶
Request – opcode 0 (attached to
Destroy the idle inhibitor object
Destroy the inhibit manager.
create_inhibitor(surface: 'WlSurface') → 'Proxy[ZwpIdleInhibitorV1]'¶
Request – opcode 1 (attached to
Create a new inhibitor object
Create a new inhibitor object associated with the given surface.
Parameters: surface (
WlSurface) – the surface that inhibits the idle behavior
Context object for inhibiting idle behavior
An idle inhibitor prevents the output that the associated surface is visible on from being set to a state where it is not visually usable due to lack of user interaction (e.g. blanked, dimmed, locked, set to power save, etc.) Any screensaver processes are also blocked from displaying.
If the surface is destroyed, unmapped, becomes occluded, loses visibility, or otherwise becomes not visually relevant for the user, the idle inhibitor will not be honored by the compositor; if the surface subsequently regains visibility the inhibitor takes effect once again. Likewise, the inhibitor isn’t honored if the system was already idled at the time the inhibitor was established, although if the system later de-idles and re-idles the inhibitor will take effect.