Idle Inhibition Service Draft
Idle Inhibition Service 0.1 DRAFT
BastienNoceraGNOME core Developerhadess@hadess.net2012The Idle Inhibition Service API AuthorsAPI DocumentationIntroductionThe Idle Inhibition Service API allows client applications to inhibit a
user's login session from becoming idle.The service is usually implemented by the session manager, or anothe daemon
running inside the user's session, and communicating with the platform software
to avoid the idle, and the consequences of becoming idle.This API was designed by GNOME and KDE developers with the goal of having
a common way to inhibit idleness.Consequences of idlenessDepending on the user session software running, idleness can have multiple
consequences, including, but not limited to:
Screen backlight dimmingScreensaver animation replacing the desktop contentInstant messenging client going to "auto-away"Computer suspending or hibernatingInhibiting idleness is supposed to stop all those actions from taking place, specifically
in response to idleness. A user action asking for any of those states would obviously
be acted upon witout delay..
API documentationIdle inhibition is achieved by the application calling an
Inhibit
function on a well-known D-Bus name.Inhibition will stop when the
UnInhibit function is called, or the application disconnects from the D-Bus
session bus (which usually happens upon exit).API notesThe D-Bus service name is intentionally, as KDE implements the idle inhibition
API in a screensaver sub-module. It was necessary for the specificed Idle Inhibition
Service API to be compatible with this existing software.For the same reasons, inhibition of suspend, hibernation, or user-switching (amongst
others) is not supported in the API.D-Bus API ReferenceReferenceskde-apiKDE Screenlocker D-Bus APIgnome-implGNOME org.freedesktop.ScreenSaver proxy implementation