diff options
Diffstat (limited to 'index.html')
-rw-r--r-- | index.html | 1448 |
1 files changed, 1448 insertions, 0 deletions
diff --git a/index.html b/index.html new file mode 100644 index 0000000..0f9af76 --- /dev/null +++ b/index.html @@ -0,0 +1,1448 @@ +<!DOCTYPE html> +<html> + + <head> + <meta charset='utf-8'> + <meta http-equiv="X-UA-Compatible" content="chrome=1"> + <meta name="description" content="Consolekit2 : ConsoleKit2 is a framework for defining and tracking users, login sessions, and seats."> + + <link rel="stylesheet" type="text/css" media="screen" href="stylesheets/stylesheet.css"> + + <title>Consolekit2</title> + </head> + + <body> + + <!-- HEADER --> + <div id="header_wrap" class="outer"> + <header class="inner"> + <a id="forkme_banner" href="https://github.com/ConsoleKit2/ConsoleKit2">View on GitHub</a> + + <h1 id="project_title">Consolekit2</h1> + <h2 id="project_tagline">ConsoleKit2 is a framework for defining and tracking users, login sessions, and seats.</h2> + + <section id="downloads"> + <a class="zip_download_link" href="https://github.com/ConsoleKit2/ConsoleKit2/zipball/master">Download this project as a .zip file</a> + <a class="tar_download_link" href="https://github.com/ConsoleKit2/ConsoleKit2/tarball/master">Download this project as a tar.gz file</a> + </section> + </header> + </div> + + <!-- MAIN CONTENT --> + <div id="main_content_wrap" class="outer"> + <section id="main_content" class="inner"> + <h1> +<a name="consolekit2-090-documentation" class="anchor" href="#consolekit2-090-documentation"><span class="octicon octicon-link"></span></a>ConsoleKit2 0.9.0 Documentation</h1> + +<p><a href="https://scan.coverity.com/projects/3199"><img src="https://scan.coverity.com/projects/3199/badge.svg" alt="Coverity Scan Build Status"></a></p> + +<p><a href="https://www.transifex.com/projects/p/consolekit2/">Help translate ConsoleKit2</a></p> + +<h2> +<a name="about" class="anchor" href="#about"><span class="octicon octicon-link"></span></a>About</h2> + +<p>ConsoleKit2 is a framework for keeping track of the various users, sessions, +and seats present on a system. It provides a mechanism for software to react +to changes of any of these items or of any of the metadata associated with +them. ConsoleKit2 also allows fast switching between open sessions on the +computer.</p> + +<p>ConsoleKit2 is a fork of ConsoleKit since it is no longer maintained. +Information on ConsoleKit can be found at: +<a href="http://freedesktop.org/wiki/Software/ConsoleKit/">http://freedesktop.org/wiki/Software/ConsoleKit/</a> William Jon McCann was the +primary maintainer of ConsoleKit and most of this documentation was written by +him for ConsoleKit. It has been adapted for ConsoleKit2.</p> + +<h2> +<a name="defining-the-problem" class="anchor" href="#defining-the-problem"><span class="octicon octicon-link"></span></a>Defining the Problem</h2> + +<p>A simple example is two users logging into a computer at the same time. They +may be sharing the same set of hardware for their graphical session, such as +the monitor, keyboard, and mouse. ConsoleKit2 will keep track of those +resouces and which session is active and should have use of that hardware at a +given time.</p> + +<h2> +<a name="relevant-art" class="anchor" href="#relevant-art"><span class="octicon octicon-link"></span></a>Relevant art</h2> + +<p>Logind is a Linux daemon providing the similar functionality to ConsoleKit2.</p> + +<h2> +<a name="chapter2terminology" class="anchor" href="#chapter2terminology"><span class="octicon octicon-link"></span></a>Chapter 2. Terminology</h2> + +<h2> +<a name="session" class="anchor" href="#session"><span class="octicon octicon-link"></span></a>Session</h2> + +<p>A session is a collection of all processes that share knowledge of a secret. +In the typical (or ideal) case, these processes all originate from a single +common ancestor.</p> + +<p>As an implementation detail, for now, this secret should be stored in the +process environment by the session leader under the name XDG_SESSION_COOKIE. +When and if we are able to take advantage of a mechanism in the underlying +system to store session registration information - we will. However, such a +mechanism is not known at the present time.</p> + +<p>Using an environment variable does have certain advantages. For one, it is +quite easy for a process to opt-out of a Session by simply unsetting the +XDG_SESSION_COOKIE variable.</p> + +<p>Limitations of using an environment variable implementation include not being +able to strictly limit visibility of the secret to a particular process +ancestry. So, it is not possible to enforce session boundaries other than on a +per-user basis. For example, we don't yet have a way to prevent a process from +moving between sessions owned by the same user.</p> + +<h2> +<a name="session-leader" class="anchor" href="#session-leader"><span class="octicon octicon-link"></span></a>Session leader</h2> + +<p>The session leader is the process that requests that a new session be opened. +It does this by connecting to the D-Bus system bus and using either +org.freedesktop.ConsoleKit.Manager.OpenSession() or +org.freedesktop.ConsoleKit.Manager.OpenSessionWithParameters(). The session +that it registers will remain open until the connection to the system bus is +lost or it calls org.freedesktop.ConsoleKit.Manager.CloseSession().</p> + +<p>The session leader is the only process for which CloseSession() will be +allowed.</p> + +<h2> +<a name="seat" class="anchor" href="#seat"><span class="octicon octicon-link"></span></a>Seat</h2> + +<p>A seat is a collection of sessions and a set of hardware (usually at least a +keyboard and mouse). Only one session may be active on a seat at a time.</p> + +<p>At the present time, all Sessions that are considered "local" to a system will +be added the the first Seat and every other Session will be added to its own +Seat.</p> + +<p>True, hardware, multi-seat capabilities will be added in a later release.</p> + +<h2> +<a name="chapter3design" class="anchor" href="#chapter3design"><span class="octicon octicon-link"></span></a>Chapter 3. Design</h2> + +<h2> +<a name="session-lifecycle" class="anchor" href="#session-lifecycle"><span class="octicon octicon-link"></span></a>Session Lifecycle</h2> + +<p>The session leader process is responsible for asking ConsoleKit2 to open a new +session. In this respect, it is similar to the traditional POSIX user login +accounting framework. In the typical case, the session leader is either an +immediate descendant of a login manager or the login manager itself. The +leader makes a connection to the D-Bus system bus and asks ConsoleKit2 to open +a session. There are two methods available for opening a session: +org.freedesktop.ConsoleKit.Manager.OpenSession() and +org.freedesktop.ConsoleKit.Manager.OpenSessionWithParameters().</p> + +<p>If the operation succeeds, a secret cookie will be returned to the session +leader. The session leader should store this secret in the environment as +XDG_SESSION_COOKIE so that it may be shared with its child processes.</p> + +<p>At this point the session will be registered with ConsoleKit2 and a particular +set of information about the session will be stored along with it.</p> + +<p>ConsoleKit2 will decide, based on the information associated with the session, +what Seat the session will be added to.</p> + +<p>It will also be determined, based on the same set of information, whether the +Session will control the hardware associated with the Seat. In other words, +whether the Session will be active for the Seat it is attached to. The exact +mechanism for this determination depends on the type of Seat and the +capabilities of the host system.</p> + +<p>The Session will remain open until the Session Leader disconnects from the +D-Bus system bus or calls org.freedesktop.ConsoleKit.Manager.CloseSession(). +The session will be removed from its Seat, and deregistered.</p> + +<h2> +<a name="expected-usage" class="anchor" href="#expected-usage"><span class="octicon octicon-link"></span></a>Expected Usage</h2> + +<p>Use of this service will usually follow one of the following patterns:</p> + +<h3> +<a name="text-login-manager" class="anchor" href="#text-login-manager"><span class="octicon octicon-link"></span></a>Text Login Manager</h3> + +<p>This pattern operates as the Session Leader for a new Session. This pattern +needs:</p> + +<ol> +<li>To open a new Session.</li> +<li>To set properties for the Session.</li> +<li>To maintain a connection to the D-Bus system bus.</li> +<li>To close the Session at logout.</li> +</ol> + +<h3> +<a name="graphical-login-manager" class="anchor" href="#graphical-login-manager"><span class="octicon octicon-link"></span></a>Graphical Login Manager</h3> + +<p>In addition to the requirements for the Text Graphical Login Manager, this +pattern is typically used to show information about currently open sessions. +It needs:</p> + +<ol> +<li>To determine which Seat it is running on.</li> +<li>To know if the current seat supports session switching.</li> +<li>A list of all sessions on the current Seat.</li> +<li>To know which session is active for the current Seat.</li> +<li>To know when the session active state changes.</li> +<li>To know when sessions are added or removed.</li> +<li>Access to the metadata for any open Session.</li> +</ol> + +<h3> +<a name="system-daemon" class="anchor" href="#system-daemon"><span class="octicon octicon-link"></span></a>System Daemon</h3> + +<p>This is generally a daemon process running outside of a user session as a +special user. This pattern needs:</p> + +<ol> +<li>To know if any user sessions are open.</li> +<li>To know if the system is currently being used.</li> +</ol> + +<h3> +<a name="hardware-abstraction-layer" class="anchor" href="#hardware-abstraction-layer"><span class="octicon octicon-link"></span></a>Hardware Abstraction Layer</h3> + +<p>This is a special case of System Daemon that provides catalogs and control +mechanisms for hardware devices. In addition to the requirements of System +Daemon, this pattern needs:</p> + +<ol> +<li>To determine what hardware is associated with a Seat.</li> +<li>To determine what Session is active and inactive on a particular Seat.</li> +<li>To know when the session active state changes.</li> +<li>To determine what Session a process belongs to.</li> +</ol> + +<h3> +<a name="fast-user-switching-agent" class="anchor" href="#fast-user-switching-agent"><span class="octicon octicon-link"></span></a>Fast User Switching Agent</h3> + +<p>This is related to the Graphical Login Manager and provides a shortcut to +similar functionality. It is usually a tool available in the user session that +allows one to quickly switch to another user session. This pattern needs:</p> + +<ol> +<li>To determine which session it is running in.</li> +<li>To determine which Seat it is running on.</li> +<li>To know if the current seat supports session switching.</li> +<li>A list of all sessions on the current Seat.</li> +<li>Which session is active for the current Seat.</li> +<li>To know when the session active state changes.</li> +<li>Access to the metadata for any open Session.</li> +<li>To know when sessions are added or removed.</li> +</ol> + +<h3> +<a name="session-daemon-aka-policy-agent" class="anchor" href="#session-daemon-aka-policy-agent"><span class="octicon octicon-link"></span></a>Session Daemon (aka Policy Agent)</h3> + +<p>This is typically a daemon running in a user session that acts on policy only +when the session is active. This pattern needs:</p> + +<ol> +<li>To determine which session it is running in.</li> +<li>To know when the session active state changes.</li> +</ol> + +<h3> +<a name="session-application" class="anchor" href="#session-application"><span class="octicon octicon-link"></span></a>Session Application</h3> + +<p>This is typically an application running in a user session that may alter its +behavior when the session active state changes. This pattern needs:</p> + +<ol> +<li>To determine which session it is running in.</li> +<li>To know when the session active state changes.</li> +</ol> + +<h1> +<a name="partiireference" class="anchor" href="#partiireference"><span class="octicon octicon-link"></span></a>Part II. Reference</h1> + +<h1> +<a name="d-bus-api-reference" class="anchor" href="#d-bus-api-reference"><span class="octicon octicon-link"></span></a>D-Bus API Reference</h1> + +<hr> + +<p>ConsoleKit2 provides a D-Bus API for programs to obtain information about the +users, sessions, and seats that are present on a system.</p> + +<p>Please see the other sections of this manual for an introduction to these +concepts.</p> + +<p>This API is not yet stable and is likely to change in the future.</p> + +<p><strong>Table of Contents</strong></p> + +<p>org.freedesktop.ConsoleKit.Manager — Manager interface</p> + +<p>org.freedesktop.ConsoleKit.Seat — Seat interface</p> + +<p>org.freedesktop.ConsoleKit.Session — Session interface</p> + +<h2> +<a name="name" class="anchor" href="#name"><span class="octicon octicon-link"></span></a>Name</h2> + +<p>org.freedesktop.ConsoleKit.Manager — Manager interface</p> + +<h2> +<a name="methods" class="anchor" href="#methods"><span class="octicon octicon-link"></span></a>Methods</h2> + +<pre><code>Restart() +CanRestart(out'b'can_restart) +Stop() +CanStop(out'b'can_stop) +OpenSession(out's'cookie) +OpenSessionWithParameters(in'a(sv)'parameters, +out's'cookie) +CloseSession(in's'cookie, +out'b'result) +GetSeats(out'ao'seats) +GetSessions(out'ao'sessions) +GetSessionForCookie(in's'cookie, +out'o'ssid) +GetSessionForUnixProcess(in'u'pid, +out'o'ssid) +GetCurrentSession(out'o'ssid) +GetSessionsForUnixUser(in'u'uid, +out'ao'sessions) +GetSessionsForUser(in'u'uid, +out'ao'sessions) +GetSystemIdleHint(out'b'idle_hint) +GetSystemIdleSinceHint(out's'iso8601_datetime) +</code></pre> + +<h2> +<a name="signals" class="anchor" href="#signals"><span class="octicon octicon-link"></span></a>Signals</h2> + +<pre><code>SeatAdded('o'sid) +SeatRemoved('o'sid) +SystemIdleHintChanged('b'hint) +</code></pre> + +<h2> +<a name="implemented-interfaces" class="anchor" href="#implemented-interfaces"><span class="octicon octicon-link"></span></a>Implemented Interfaces</h2> + +<p>Objects implementing org.freedesktop.ConsoleKit.Manager also implements +org.freedesktop.DBus.Introspectable, org.freedesktop.DBus.Properties</p> + +<h2> +<a name="description" class="anchor" href="#description"><span class="octicon octicon-link"></span></a>Description</h2> + +<h2> +<a name="details" class="anchor" href="#details"><span class="octicon octicon-link"></span></a>Details</h2> + +<h3> +<a name="restart-" class="anchor" href="#restart-"><span class="octicon octicon-link"></span></a>Restart ()</h3> + +<pre><code>Restart () +</code></pre> + +<p>This method initiates a request to restart (ie. reboot) the computer system.</p> + +<h3> +<a name="canrestart-" class="anchor" href="#canrestart-"><span class="octicon octicon-link"></span></a>CanRestart ()</h3> + +<pre><code>CanRestart (out'b'can_restart) +</code></pre> + +<p><em><code>can_restart</code></em>:</p> + +<h3> +<a name="stop-" class="anchor" href="#stop-"><span class="octicon octicon-link"></span></a>Stop ()</h3> + +<pre><code>Stop () +</code></pre> + +<p>This method initiates a request to stop (ie. shutdown) the computer system.</p> + +<h3> +<a name="canstop-" class="anchor" href="#canstop-"><span class="octicon octicon-link"></span></a>CanStop ()</h3> + +<pre><code>CanStop (out'b'can_stop) +</code></pre> + +<p><em><code>can_stop</code></em>:</p> + +<h3> +<a name="opensession-" class="anchor" href="#opensession-"><span class="octicon octicon-link"></span></a>OpenSession ()</h3> + +<pre><code>OpenSession (out's'cookie) +</code></pre> + +<p>This method requests that a new Session be created for the calling process. +The properties of this new Session are set automatically from information +collected about the calling process.</p> + +<p>This new session exists until the calling process disconnects from the system +bus or calls <code>CloseSession()</code>.</p> + +<p>It is the responsibility of the calling process to set the environment +variable XDG_SESSION_COOKIE to the value of the returned cookie. This cookie +should only be made available to child processes of the caller so that they +may be identified as members of this session.</p> + +<p>See this simple example:</p> + +<pre><code> DBusError error; + DBusMessage *message; + DBusMessage *reply; + + message = dbus_message_new_method_call ("org.freedesktop.ConsoleKit", + "/org/freedesktop/ConsoleKit/Manager", + "org.freedesktop.ConsoleKit.Manager", + "OpenSession"); + if (message == NULL) { + goto out; + } + + dbus_error_init (&error); + reply = dbus_connection_send_with_reply_and_block (connector->connection, + message, + -1, + &error); + if (reply == NULL) { + goto out; + } + + dbus_error_init (&error); + if (! dbus_message_get_args (reply, + &error, + DBUS_TYPE_STRING, &cookie, + DBUS_TYPE_INVALID)) { + goto out; + } +</code></pre> + +<p><em><code>cookie</code></em>:</p> + +<pre><code>The secret cookie that is used to identify the new session +</code></pre> + +<p>See also: <code>OpenSessionWithParameters()</code></p> + +<h3> +<a name="opensessionwithparameters-" class="anchor" href="#opensessionwithparameters-"><span class="octicon octicon-link"></span></a>OpenSessionWithParameters ()</h3> + +<pre><code>OpenSessionWithParameters (in'a(sv)'parameters, +out's'cookie) +</code></pre> + +<p>This method requests that a new Session be created for the calling process. +The properties of this new Session are from the parameters provided.</p> + +<p>This new session exists until the calling process disconnects from the system +bus or calls <code>CloseSession()</code>.</p> + +<p>It is the responsibility of the calling process to set the environment +variable XDG_SESSION_COOKIE to the value of the returned cookie. This cookie +should only be made available to child processes of the caller so that they +may be identified as members of this session.</p> + +<p>See the Session properties for a list of valid parameters.</p> + +<p><em><code>parameters</code></em>:</p> + +<pre><code>An array of sets of property names and values +</code></pre> + +<p><em><code>cookie</code></em>:</p> + +<pre><code>The secret cookie that is used to identify the new session +</code></pre> + +<h3> +<a name="permissions" class="anchor" href="#permissions"><span class="octicon octicon-link"></span></a>Permissions</h3> + +<p>This method is restricted to privileged users by D-Bus policy.</p> + +<p>See also: org.freedesktop.ConsoleKit.Session</p> + +<h3> +<a name="closesession-" class="anchor" href="#closesession-"><span class="octicon octicon-link"></span></a>CloseSession ()</h3> + +<pre><code>CloseSession (in's'cookie, +out'b'result) +</code></pre> + +<p>This method is used to close the session identified by the supplied cookie.</p> + +<p>The session can only be closed by the same process that opened the session.</p> + +<p><em><code>cookie</code></em>:</p> + +<pre><code>The secret cookie that is used to identify the session +</code></pre> + +<p><em><code>result</code></em>:</p> + +<pre><code>Whether the session was successfully closed +</code></pre> + +<h3> +<a name="getseats-" class="anchor" href="#getseats-"><span class="octicon octicon-link"></span></a>GetSeats ()</h3> + +<pre><code>GetSeats (out'ao'seats) +</code></pre> + +<p>This gets a list of all the Seats that are currently present on the system.</p> + +<p>Each Seat ID is an D-Bus object path for the object that implements the Seat +interface.</p> + +<p><em><code>seats</code></em>:</p> + +<pre><code>an array of Seat IDs +</code></pre> + +<p>See also: org.freedesktop.ConsoleKit.Seat</p> + +<h3> +<a name="getsessions-" class="anchor" href="#getsessions-"><span class="octicon octicon-link"></span></a>GetSessions ()</h3> + +<pre><code>GetSessions (out'ao'sessions) +</code></pre> + +<p>This gets a list of all the Sessions that are currently present on the system.</p> + +<p>Each Session ID is an D-Bus object path for the object that implements the +Session interface.</p> + +<p><em><code>sessions</code></em>:</p> + +<pre><code>an array of Session IDs +</code></pre> + +<p>See also: org.freedesktop.ConsoleKit.Session</p> + +<h3> +<a name="getsessionforcookie-" class="anchor" href="#getsessionforcookie-"><span class="octicon octicon-link"></span></a>GetSessionForCookie ()</h3> + +<pre><code>GetSessionForCookie (in's'cookie, +out'o'ssid) +</code></pre> + +<p>Returns the session ID that is associated with the specified cookie.</p> + +<p><em><code>cookie</code></em>:</p> + +<pre><code>The secret cookie that is used to identify the session +</code></pre> + +<p><em><code>ssid</code></em>:</p> + +<pre><code>The object identifier for the current session +</code></pre> + +<h3> +<a name="getsessionforunixprocess-" class="anchor" href="#getsessionforunixprocess-"><span class="octicon octicon-link"></span></a>GetSessionForUnixProcess ()</h3> + +<pre><code>GetSessionForUnixProcess (in'u'pid, +out'o'ssid) +</code></pre> + +<p>Attempts to determine the session ID for the specified POSIX process ID (pid).</p> + +<p><em><code>pid</code></em>:</p> + +<pre><code>The POSIX process ID +</code></pre> + +<p><em><code>ssid</code></em>:</p> + +<pre><code>The object identifier for the current session +</code></pre> + +<h3> +<a name="getcurrentsession-" class="anchor" href="#getcurrentsession-"><span class="octicon octicon-link"></span></a>GetCurrentSession ()</h3> + +<pre><code>GetCurrentSession (out'o'ssid) +</code></pre> + +<p>Attempts to determine the session ID that the caller belongs to.</p> + +<p>See this example of using dbus-send:</p> + +<pre><code> dbus-send --system --dest=org.freedesktop.ConsoleKit \ + --type=method_call --print-reply --reply-timeout=2000 \ + /org/freedesktop/ConsoleKit/Manager \ + org.freedesktop.ConsoleKit.Manager.GetCurrentSession +</code></pre> + +<p><em><code>ssid</code></em>:</p> + +<pre><code>The object identifier for the current session +</code></pre> + +<h3> +<a name="getsessionsforunixuser-" class="anchor" href="#getsessionsforunixuser-"><span class="octicon octicon-link"></span></a>GetSessionsForUnixUser ()</h3> + +<pre><code>GetSessionsForUnixUser (in'u'uid, +out'ao'sessions) +</code></pre> + +<p>This gets a list of all the Sessions that are currently open for the specified +user.</p> + +<p>Each Session ID is an D-Bus object path for the object that implements the +Session interface.</p> + +<p><em><code>uid</code></em>:</p> + +<pre><code>POSIX User identification +</code></pre> + +<p><em><code>sessions</code></em>:</p> + +<pre><code>an array of Session IDs +</code></pre> + +<h3> +<a name="getsessionsforuser-" class="anchor" href="#getsessionsforuser-"><span class="octicon octicon-link"></span></a>GetSessionsForUser ()</h3> + +<pre><code>GetSessionsForUser (in'u'uid, +out'ao'sessions) +</code></pre> + +<p>This gets a list of all the Sessions that are currently open for the specified +user.</p> + +<p>Each Session ID is an D-Bus object path for the object that implements the +Session interface.</p> + +<p><em><code>uid</code></em>:</p> + +<pre><code>User identification +</code></pre> + +<p><em><code>sessions</code></em>:</p> + +<pre><code>an array of Session IDs +</code></pre> + +<h3> +<a name="warning" class="anchor" href="#warning"><span class="octicon octicon-link"></span></a>Warning</h3> + +<p><code>GetSessionsForUser</code> is deprecated since version 0.1.3 and should not be used +in newly-written code. Use <code>GetSessionsForUnixUser</code> instead.</p> + +<h3> +<a name="getsystemidlehint-" class="anchor" href="#getsystemidlehint-"><span class="octicon octicon-link"></span></a>GetSystemIdleHint ()</h3> + +<pre><code>GetSystemIdleHint (out'b'idle_hint) +</code></pre> + +<p>Returns TRUE if the <code>idle-hint</code> property of every open session is TRUE or if +there are no open sessions.</p> + +<p><em><code>idle_hint</code></em>:</p> + +<pre><code>The value of the system-idle-hint +</code></pre> + +<h3> +<a name="getsystemidlesincehint-" class="anchor" href="#getsystemidlesincehint-"><span class="octicon octicon-link"></span></a>GetSystemIdleSinceHint ()</h3> + +<pre><code>GetSystemIdleSinceHint (out's'iso8601_datetime) +</code></pre> + +<p>Returns an ISO 8601 date-time string that corresponds to the time of the last +change of the system-idle-hint.</p> + +<p><em><code>iso8601_datetime</code></em>:</p> + +<pre><code>An ISO 8601 format date-type string +</code></pre> + +<h2> +<a name="signal-details" class="anchor" href="#signal-details"><span class="octicon octicon-link"></span></a>Signal Details</h2> + +<h3> +<a name="the-seatadded-signal" class="anchor" href="#the-seatadded-signal"><span class="octicon octicon-link"></span></a>The SeatAdded signal</h3> + +<pre><code>SeatAdded ('o'sid) +</code></pre> + +<p>Emitted when a Seat has been added to the system.</p> + +<p><em><code>sid</code></em>:</p> + +<pre><code>The Seat ID for the added seat +</code></pre> + +<h3> +<a name="the-seatremoved-signal" class="anchor" href="#the-seatremoved-signal"><span class="octicon octicon-link"></span></a>The SeatRemoved signal</h3> + +<pre><code>SeatRemoved ('o'sid) +</code></pre> + +<p>Emitted when a Seat has been removed from the system.</p> + +<p><em><code>sid</code></em>:</p> + +<pre><code>The Seat ID for the removed seat +</code></pre> + +<h3> +<a name="the-systemidlehintchanged-signal" class="anchor" href="#the-systemidlehintchanged-signal"><span class="octicon octicon-link"></span></a>The SystemIdleHintChanged signal</h3> + +<pre><code>SystemIdleHintChanged ('b'hint) +</code></pre> + +<p>Emitted when the value of the system-idle-hint has changed.</p> + +<p><em><code>hint</code></em>:</p> + +<pre><code>The value of the system-idle-hint +</code></pre> + +<hr> + +<h2> +<a name="name-1" class="anchor" href="#name-1"><span class="octicon octicon-link"></span></a>Name</h2> + +<p>org.freedesktop.ConsoleKit.Seat — Seat interface</p> + +<h2> +<a name="methods-1" class="anchor" href="#methods-1"><span class="octicon octicon-link"></span></a>Methods</h2> + +<pre><code>GetId(out'o'sid) +GetSessions(out'ao'sessions) +GetDevices(out'a(ss)'devices) +GetActiveSession(out'o'ssid) +CanActivateSessions(out'b'can_activate) +ActivateSession(in'o'ssid) +</code></pre> + +<h2> +<a name="signals-1" class="anchor" href="#signals-1"><span class="octicon octicon-link"></span></a>Signals</h2> + +<pre><code>ActiveSessionChanged('o'ssid) +SessionAdded('o'ssid) +SessionRemoved('o'ssid) +DeviceAdded('(ss)'device) +DeviceRemoved('(ss)'device) +</code></pre> + +<h2> +<a name="implemented-interfaces-1" class="anchor" href="#implemented-interfaces-1"><span class="octicon octicon-link"></span></a>Implemented Interfaces</h2> + +<p>Objects implementing org.freedesktop.ConsoleKit.Seat also implements +org.freedesktop.DBus.Introspectable, org.freedesktop.DBus.Properties</p> + +<h2> +<a name="description-1" class="anchor" href="#description-1"><span class="octicon octicon-link"></span></a>Description</h2> + +<p>A seat is a collection of sessions and a set of hardware (usually at least a +keyboard and mouse). Only one session may be active on a seat at a time.</p> + +<h2> +<a name="details-1" class="anchor" href="#details-1"><span class="octicon octicon-link"></span></a>Details</h2> + +<h3> +<a name="getid-" class="anchor" href="#getid-"><span class="octicon octicon-link"></span></a>GetId ()</h3> + +<pre><code>GetId (out'o'sid) +</code></pre> + +<p>Returns the ID for Seat.</p> + +<p><em><code>sid</code></em>:</p> + +<pre><code>Seat ID +</code></pre> + +<h3> +<a name="getsessions--1" class="anchor" href="#getsessions--1"><span class="octicon octicon-link"></span></a>GetSessions ()</h3> + +<pre><code>GetSessions (out'ao'sessions) +</code></pre> + +<p>This gets a list of all the Sessions that are currently attached to this seat.</p> + +<p>Each Session ID is an D-Bus object path for the object that implements the +Session interface.</p> + +<p><em><code>sessions</code></em>:</p> + +<pre><code>an array of Session IDs +</code></pre> + +<h3> +<a name="getdevices-" class="anchor" href="#getdevices-"><span class="octicon octicon-link"></span></a>GetDevices ()</h3> + +<pre><code>GetDevices (out'a(ss)'devices) +</code></pre> + +<p>This gets a list of all the devices that are currently associated with this +seat.</p> + +<p>Each device is an D-Bus structure that represents the device type and the +device id.</p> + +<p><em><code>devices</code></em>:</p> + +<pre><code>an array of devices +</code></pre> + +<h3> +<a name="getactivesession-" class="anchor" href="#getactivesession-"><span class="octicon octicon-link"></span></a>GetActiveSession ()</h3> + +<pre><code>GetActiveSession (out'o'ssid) +</code></pre> + +<p>Gets the Session ID that is currently active on this Seat.</p> + +<p>Returns NULL if there is no active session.</p> + +<p><em><code>ssid</code></em>:</p> + +<pre><code>Session ID +</code></pre> + +<h3> +<a name="canactivatesessions-" class="anchor" href="#canactivatesessions-"><span class="octicon octicon-link"></span></a>CanActivateSessions ()</h3> + +<pre><code>CanActivateSessions (out'b'can_activate) +</code></pre> + +<p>Used to determine whether the seat supports session activation.</p> + +<p><em><code>can_activate</code></em>:</p> + +<pre><code>TRUE if seat supports session activation +</code></pre> + +<h3> +<a name="activatesession-" class="anchor" href="#activatesession-"><span class="octicon octicon-link"></span></a>ActivateSession ()</h3> + +<pre><code>ActivateSession (in'o'ssid) +</code></pre> + +<p>Attempt to activate the specified session. In most cases, if successful, this +will cause the session to become visible and take control of the hardware that +is associated with this seat.</p> + +<p><em><code>ssid</code></em>:</p> + +<pre><code>Session ID +</code></pre> + +<p>See also: <code>Activate()</code></p> + +<h2> +<a name="signal-details-1" class="anchor" href="#signal-details-1"><span class="octicon octicon-link"></span></a>Signal Details</h2> + +<h3> +<a name="the-activesessionchanged-signal" class="anchor" href="#the-activesessionchanged-signal"><span class="octicon octicon-link"></span></a>The ActiveSessionChanged signal</h3> + +<pre><code>ActiveSessionChanged ('o'ssid) +</code></pre> + +<p>Emitted when the active session has changed.</p> + +<p><em><code>ssid</code></em>:</p> + +<pre><code>Session ID +</code></pre> + +<h3> +<a name="the-sessionadded-signal" class="anchor" href="#the-sessionadded-signal"><span class="octicon octicon-link"></span></a>The SessionAdded signal</h3> + +<pre><code>SessionAdded ('o'ssid) +</code></pre> + +<p>Emitted when a session has been added to the seat.</p> + +<p><em><code>ssid</code></em>:</p> + +<pre><code>Session ID +</code></pre> + +<h3> +<a name="the-sessionremoved-signal" class="anchor" href="#the-sessionremoved-signal"><span class="octicon octicon-link"></span></a>The SessionRemoved signal</h3> + +<pre><code>SessionRemoved ('o'ssid) +</code></pre> + +<p>Emitted when a session has been removed from the seat.</p> + +<p><em><code>ssid</code></em>:</p> + +<pre><code>Session ID +</code></pre> + +<h3> +<a name="the-deviceadded-signal" class="anchor" href="#the-deviceadded-signal"><span class="octicon octicon-link"></span></a>The DeviceAdded signal</h3> + +<pre><code>DeviceAdded ('(ss)'device) +</code></pre> + +<p>Emitted when a device has been associated with the seat.</p> + +<p><em><code>device</code></em>:</p> + +<pre><code>Device structure +</code></pre> + +<h3> +<a name="the-deviceremoved-signal" class="anchor" href="#the-deviceremoved-signal"><span class="octicon octicon-link"></span></a>The DeviceRemoved signal</h3> + +<pre><code>DeviceRemoved ('(ss)'device) +</code></pre> + +<p>Emitted when a device has been dissociated from the seat.</p> + +<p><em><code>device</code></em>:</p> + +<pre><code>Device structure +</code></pre> + +<hr> + +<h2> +<a name="name-2" class="anchor" href="#name-2"><span class="octicon octicon-link"></span></a>Name</h2> + +<p>org.freedesktop.ConsoleKit.Session — Session interface</p> + +<h2> +<a name="methods-2" class="anchor" href="#methods-2"><span class="octicon octicon-link"></span></a>Methods</h2> + +<pre><code>GetId(out'o'ssid) +GetSeatId(out'o'sid) +GetSessionType(out's'type) +GetUser(out'u'uid) +GetUnixUser(out'u'uid) +GetX11Display(out's'display) +GetX11DisplayDevice(out's'x11_display_device) +GetDisplayDevice(out's'display_device) +GetRemoteHostName(out's'remote_host_name) +GetLoginSessionId(out's'login_session_id) +IsActive(out'b'active) +IsLocal(out'b'local) +GetCreationTime(out's'iso8601_datetime) +Activate() +Lock() +Unlock() +GetIdleHint(out'b'idle_hint) +GetIdleSinceHint(out's'iso8601_datetime) +SetIdleHint(in'b'idle_hint) +</code></pre> + +<h2> +<a name="signals-2" class="anchor" href="#signals-2"><span class="octicon octicon-link"></span></a>Signals</h2> + +<pre><code>ActiveChanged('b'is_active) +IdleHintChanged('b'hint) +Lock() +Unlock() +</code></pre> + +<h2> +<a name="implemented-interfaces-2" class="anchor" href="#implemented-interfaces-2"><span class="octicon octicon-link"></span></a>Implemented Interfaces</h2> + +<p>Objects implementing org.freedesktop.ConsoleKit.Session also implements +org.freedesktop.DBus.Introspectable, org.freedesktop.DBus.Properties</p> + +<h2> +<a name="properties" class="anchor" href="#properties"><span class="octicon octicon-link"></span></a>Properties</h2> + +<pre><code>'unix-user'readwrite'u' +'user'readwrite'u' +'session-type'readwrite's' +'remote-host-name'readwrite's' +'display-device'readwrite's' +'x11-display'readwrite's' +'x11-display-device'readwrite's' +'active'readwrite'b' +'is-local'readwrite'b' +'idle-hint'readwrite'b' +</code></pre> + +<h2> +<a name="description-2" class="anchor" href="#description-2"><span class="octicon octicon-link"></span></a>Description</h2> + +<p>Session objects represent and store information related to a user session.</p> + +<p>The properties associated with the Session specifically refer to the +properties of the "session leader".</p> + +<h2> +<a name="details-2" class="anchor" href="#details-2"><span class="octicon octicon-link"></span></a>Details</h2> + +<h3> +<a name="getid--1" class="anchor" href="#getid--1"><span class="octicon octicon-link"></span></a>GetId ()</h3> + +<pre><code>GetId (out'o'ssid) +</code></pre> + +<p>Returns the ID for Session.</p> + +<p><em><code>ssid</code></em>:</p> + +<pre><code>Session ID +</code></pre> + +<h3> +<a name="getseatid-" class="anchor" href="#getseatid-"><span class="octicon octicon-link"></span></a>GetSeatId ()</h3> + +<pre><code>GetSeatId (out'o'sid) +</code></pre> + +<p>Returns the ID for the Seat the Session is attached to.</p> + +<p><em><code>sid</code></em>:</p> + +<pre><code>Seat ID +</code></pre> + +<p>See also: org.freedesktop.ConsoleKit.Seat</p> + +<h3> +<a name="getsessiontype-" class="anchor" href="#getsessiontype-"><span class="octicon octicon-link"></span></a>GetSessionType ()</h3> + +<pre><code>GetSessionType (out's'type) +</code></pre> + +<p>Returns the type of the session.</p> + +<p>Warning: we haven't yet defined the allowed values for this property. It is +probably best to avoid this until we do.</p> + +<p><em><code>type</code></em>:</p> + +<pre><code>Session type +</code></pre> + +<p>See also: <code>session-type</code></p> + +<h3> +<a name="getuser-" class="anchor" href="#getuser-"><span class="octicon octicon-link"></span></a>GetUser ()</h3> + +<pre><code>GetUser (out'u'uid) +</code></pre> + +<p>Returns the user that the session belongs to.</p> + +<p><em><code>uid</code></em>:</p> + +<pre><code>User ID +</code></pre> + +<h3> +<a name="warning-1" class="anchor" href="#warning-1"><span class="octicon octicon-link"></span></a>Warning</h3> + +<p><code>GetUser</code> is deprecated since version 0.1.3 and should not be used in newly- +written code. Use <code>GetUnixUser</code> instead.</p> + +<p>See also: <code>user</code></p> + +<h3> +<a name="getunixuser-" class="anchor" href="#getunixuser-"><span class="octicon octicon-link"></span></a>GetUnixUser ()</h3> + +<pre><code>GetUnixUser (out'u'uid) +</code></pre> + +<p>Returns the POSIX user ID that the session belongs to.</p> + +<p><em><code>uid</code></em>:</p> + +<pre><code>POSIX User ID +</code></pre> + +<p>See also: <code>unix-user</code></p> + +<h3> +<a name="getx11display-" class="anchor" href="#getx11display-"><span class="octicon octicon-link"></span></a>GetX11Display ()</h3> + +<pre><code>GetX11Display (out's'display) +</code></pre> + +<p>Returns the value of the X11 DISPLAY for this session if one is present.</p> + +<p><em><code>display</code></em>:</p> + +<pre><code>The value of the X11 display +</code></pre> + +<p>See also: <code>x11-display</code></p> + +<h3> +<a name="getx11displaydevice-" class="anchor" href="#getx11displaydevice-"><span class="octicon octicon-link"></span></a>GetX11DisplayDevice ()</h3> + +<pre><code>GetX11DisplayDevice (out's'x11_display_device) +</code></pre> + +<p>Returns the value of the display device (aka TTY) that the X11 display for the +session is connected to. If there is no x11-display set then this value is +undefined.</p> + +<p><em><code>x11_display_device</code></em>:</p> + +<pre><code>The value of the X11 display device +</code></pre> + +<p>See also: <code>x11-display-device</code></p> + +<h3> +<a name="getdisplaydevice-" class="anchor" href="#getdisplaydevice-"><span class="octicon octicon-link"></span></a>GetDisplayDevice ()</h3> + +<pre><code>GetDisplayDevice (out's'display_device) +</code></pre> + +<p>Returns the value of the display device (aka TTY) that the session is +connected to.</p> + +<p><em><code>display_device</code></em>:</p> + +<pre><code>The value of the display device +</code></pre> + +<p>See also: <code>display-device</code></p> + +<h3> +<a name="getremotehostname-" class="anchor" href="#getremotehostname-"><span class="octicon octicon-link"></span></a>GetRemoteHostName ()</h3> + +<pre><code>GetRemoteHostName (out's'remote_host_name) +</code></pre> + +<p>Returns the value of the remote host name for the session.</p> + +<p><em><code>remote_host_name</code></em>:</p> + +<pre><code>The remote host name +</code></pre> + +<p>See also: <code>remote-host-name</code></p> + +<h3> +<a name="getloginsessionid-" class="anchor" href="#getloginsessionid-"><span class="octicon octicon-link"></span></a>GetLoginSessionId ()</h3> + +<pre><code>GetLoginSessionId (out's'login_session_id) +</code></pre> + +<p>Returns the value of the login session ID that the underlying system uses to +enforce session boundaries. If there is no login session ID set then this +value is an empty string.</p> + +<p><em><code>login_session_id</code></em>:</p> + +<pre><code>The value of the native system login session ID +</code></pre> + +<h3> +<a name="isactive-" class="anchor" href="#isactive-"><span class="octicon octicon-link"></span></a>IsActive ()</h3> + +<pre><code>IsActive (out'b'active) +</code></pre> + +<p>Returns whether the session is active on the Seat that it is attached to.</p> + +<p>If the session is not attached to a seat this value is undefined.</p> + +<p><em><code>active</code></em>:</p> + +<pre><code>TRUE if the session is active, otherwise FALSE +</code></pre> + +<p>See also: <code>active</code></p> + +<h3> +<a name="islocal-" class="anchor" href="#islocal-"><span class="octicon octicon-link"></span></a>IsLocal ()</h3> + +<pre><code>IsLocal (out'b'local) +</code></pre> + +<p>Returns whether the session is local</p> + +<p>FIXME: we need to come up with a concrete definition for this value. It was +originally used as a way to identify XDMCP sessions that originate from a +remote system.</p> + +<p><em><code>local</code></em>:</p> + +<pre><code>TRUE if the session is local, otherwise FALSE +</code></pre> + +<p>See also: <code>is-local</code></p> + +<h3> +<a name="getcreationtime-" class="anchor" href="#getcreationtime-"><span class="octicon octicon-link"></span></a>GetCreationTime ()</h3> + +<pre><code>GetCreationTime (out's'iso8601_datetime) +</code></pre> + +<p>Returns an ISO 8601 date-time string that corresponds to the time that the +session was opened.</p> + +<p><em><code>iso8601_datetime</code></em>:</p> + +<pre><code>An ISO 8601 format date-type string +</code></pre> + +<h3> +<a name="activate-" class="anchor" href="#activate-"><span class="octicon octicon-link"></span></a>Activate ()</h3> + +<pre><code>Activate () +</code></pre> + +<p>Attempt to activate the this session. In most cases, if successful, this will +cause the session to become visible and become active on the seat that it is +attached to.</p> + +<p>See also: <code>Seat.ActivateSession()</code></p> + +<h3> +<a name="lock-" class="anchor" href="#lock-"><span class="octicon octicon-link"></span></a>Lock ()</h3> + +<pre><code>Lock () +</code></pre> + +<p>This will cause a <code>Lock</code> signal to be emitted for this session.</p> + +<h3> +<a name="permissions-1" class="anchor" href="#permissions-1"><span class="octicon octicon-link"></span></a>Permissions</h3> + +<p>This method is restricted to privileged users by D-Bus policy.</p> + +<p>See also: <code>Lock signal</code></p> + +<h3> +<a name="unlock-" class="anchor" href="#unlock-"><span class="octicon octicon-link"></span></a>Unlock ()</h3> + +<pre><code>Unlock () +</code></pre> + +<p>This will cause an <code>Unlock</code> signal to be emitted for this session.</p> + +<p>This can be used by login managers to unlock a session before it is re- +activated during fast-user-switching.</p> + +<h3> +<a name="permissions-2" class="anchor" href="#permissions-2"><span class="octicon octicon-link"></span></a>Permissions</h3> + +<p>This method is restricted to privileged users by D-Bus policy.</p> + +<p>See also: <code>Unlock signal</code></p> + +<h3> +<a name="getidlehint-" class="anchor" href="#getidlehint-"><span class="octicon octicon-link"></span></a>GetIdleHint ()</h3> + +<pre><code>GetIdleHint (out'b'idle_hint) +</code></pre> + +<p>Gets the value of the <code>idle-hint</code> property.</p> + +<p><em><code>idle_hint</code></em>:</p> + +<pre><code>The value of the idle-hint +</code></pre> + +<p>See also: <code>idle-hint</code></p> + +<h3> +<a name="getidlesincehint-" class="anchor" href="#getidlesincehint-"><span class="octicon octicon-link"></span></a>GetIdleSinceHint ()</h3> + +<pre><code>GetIdleSinceHint (out's'iso8601_datetime) +</code></pre> + +<p>Returns an ISO 8601 date-time string that corresponds to the time of the last +change of the idle-hint.</p> + +<p><em><code>iso8601_datetime</code></em>:</p> + +<pre><code>An ISO 8601 format date-type string +</code></pre> + +<h3> +<a name="setidlehint-" class="anchor" href="#setidlehint-"><span class="octicon octicon-link"></span></a>SetIdleHint ()</h3> + +<pre><code>SetIdleHint (in'b'idle_hint) +</code></pre> + +<p>This may be used by the session to indicate that it is idle.</p> + +<p>Use of this method is restricted to the user that owns the session.</p> + +<p><em><code>idle_hint</code></em>:</p> + +<pre><code>boolean value to set the idle-hint to +</code></pre> + +<h2> +<a name="signal-details-2" class="anchor" href="#signal-details-2"><span class="octicon octicon-link"></span></a>Signal Details</h2> + +<h3> +<a name="the-activechanged-signal" class="anchor" href="#the-activechanged-signal"><span class="octicon octicon-link"></span></a>The ActiveChanged signal</h3> + +<pre><code>ActiveChanged ('b'is_active) +</code></pre> + +<p>Emitted when the active property has changed.</p> + +<p><em><code>is_active</code></em>:</p> + +<pre><code>TRUE if the session is active, otherwise FALSE +</code></pre> + +<h3> +<a name="the-idlehintchanged-signal" class="anchor" href="#the-idlehintchanged-signal"><span class="octicon octicon-link"></span></a>The IdleHintChanged signal</h3> + +<pre><code>IdleHintChanged ('b'hint) +</code></pre> + +<p>Emitted when the idle-hint property has changed.</p> + +<p><em><code>hint</code></em>:</p> + +<pre><code>the new value of idle-hint +</code></pre> + +<h3> +<a name="the-lock-signal" class="anchor" href="#the-lock-signal"><span class="octicon octicon-link"></span></a>The Lock signal</h3> + +<pre><code>Lock () +</code></pre> + +<p>Emitted in response to a call to the <code>Lock()</code> method.</p> + +<p>It is intended that the screensaver for the session should lock the screen in +response to this signal.</p> + +<h3> +<a name="the-unlock-signal" class="anchor" href="#the-unlock-signal"><span class="octicon octicon-link"></span></a>The Unlock signal</h3> + +<pre><code>Unlock () +</code></pre> + +<p>Emitted in response to a call to the <code>Unlock()</code> method.</p> + +<p>It is intended that the screensaver for the session should unlock the screen +in response to this signal.</p> + +<h2> +<a name="property-details" class="anchor" href="#property-details"><span class="octicon octicon-link"></span></a>Property Details</h2> + +<h3> +<a name="the-unix-user-property" class="anchor" href="#the-unix-user-property"><span class="octicon octicon-link"></span></a>The "unix-user" property</h3> + +<pre><code>'unix-user'readwrite'u' +</code></pre> + +<p>The user assigned to the session.</p> + +<h3> +<a name="the-user-property" class="anchor" href="#the-user-property"><span class="octicon octicon-link"></span></a>The "user" property</h3> + +<pre><code>'user'readwrite'u' +</code></pre> + +<p>The user assigned to the session.</p> + +<h3> +<a name="warning-2" class="anchor" href="#warning-2"><span class="octicon octicon-link"></span></a>Warning</h3> + +<p><code>user</code> is deprecated since version 0.1.3 and should not be used in newly- +written code. Use <code>unix-user</code> instead.</p> + +<h3> +<a name="the-session-type-property" class="anchor" href="#the-session-type-property"><span class="octicon octicon-link"></span></a>The "session-type" property</h3> + +<pre><code>'session-type'readwrite's' +</code></pre> + +<p>The type of the session.</p> + +<p>Warning: we haven't yet defined the allowed values for this property. It is +probably best to avoid this until we do.</p> + +<h3> +<a name="the-remote-host-name-property" class="anchor" href="#the-remote-host-name-property"><span class="octicon octicon-link"></span></a>The "remote-host-name" property</h3> + +<pre><code>'remote-host-name'readwrite's' +</code></pre> + +<p>The remote host name for the session.</p> + +<p>This will be set in situations where the session is opened and controlled from +a remote system.</p> + +<p>For example, this value will be set when the session is created from an SSH or +XDMCP connection.</p> + +<h3> +<a name="the-display-device-property" class="anchor" href="#the-display-device-property"><span class="octicon octicon-link"></span></a>The "display-device" property</h3> + +<pre><code>'display-device'readwrite's' +</code></pre> + +<p>The display device (aka TTY) that the session is connected to.</p> + +<h3> +<a name="the-x11-display-property" class="anchor" href="#the-x11-display-property"><span class="octicon octicon-link"></span></a>The "x11-display" property</h3> + +<pre><code>'x11-display'readwrite's' +</code></pre> + +<p>Value of the X11 DISPLAY for this session if one is present.</p> + +<h3> +<a name="the-x11-display-device-property" class="anchor" href="#the-x11-display-device-property"><span class="octicon octicon-link"></span></a>The "x11-display-device" property</h3> + +<pre><code>'x11-display-device'readwrite's' +</code></pre> + +<p>The display device (aka TTY) that the X11 display for the session is connected +to. If there is no x11-display set then this value is undefined.</p> + +<h3> +<a name="the-active-property" class="anchor" href="#the-active-property"><span class="octicon octicon-link"></span></a>The "active" property</h3> + +<pre><code>'active'readwrite'b' +</code></pre> + +<p>Whether the session is active on the Seat that it is attached to.</p> + +<p>If the session is not attached to a seat this value is undefined.</p> + +<h3> +<a name="the-is-local-property" class="anchor" href="#the-is-local-property"><span class="octicon octicon-link"></span></a>The "is-local" property</h3> + +<pre><code>'is-local'readwrite'b' +</code></pre> + +<p>Whether the session is local</p> + +<p>FIXME: we need to come up with a concrete definition for this value. It was +originally used as a way to identify XDMCP sessions that originate from a +remote system.</p> + +<h3> +<a name="the-idle-hint-property" class="anchor" href="#the-idle-hint-property"><span class="octicon octicon-link"></span></a>The "idle-hint" property</h3> + +<pre><code>'idle-hint'readwrite'b' +</code></pre> + +<p>This is a hint used to indicate that the session may be idle.</p> + +<p>For sessions with a <code>x11-display</code> set (ie. graphical sessions), it is up to +each session to delegate the responsibility for updating this value. +Typically, the screensaver will set this.</p> + +<p>However, for non-graphical sessions with a <code>display-device</code> set the Session +object itself will periodically update this value based on the activity +detected on the display-device itself.</p> + +<p>This should not be considered authoritative.</p> + </section> + </div> + + <!-- FOOTER --> + <div id="footer_wrap" class="outer"> + <footer class="inner"> + <p class="copyright">Consolekit2 maintained by <a href="https://github.com/ConsoleKit2">ConsoleKit2</a></p> + <p>Published with <a href="http://pages.github.com">GitHub Pages</a></p> + </footer> + </div> + + + + </body> +</html> |