Name

org.gnome.SessionManager.ClientPrivate — Plumbing for D-Bus Clients

Methods

EndSessionResponse (IN  b is_ok,
                    IN  s reason);

Signals

Stop             ();
QueryEndSession  (u flags);
EndSession       (u flags);
CancelEndSession ();

Description

This interface is used by clients that connect to the Session Manager via D-Bus. It largely mirrors the functionality available in the X11 Session Manager Protocol.

Method Details

The EndSessionResponse() method

EndSessionResponse (IN  b is_ok,
                    IN  s reason);

This should be called by the client in response to the "QueryEndSession" and "EndSession" signals.

When is_ok is false, the provided reason may be displayed to the user. The user may choose to ignore the reason, and continue with session shutdown anyways.

IN b is_ok:

Whether or not it is OK to preceed

IN s reason:

The reason string

Signal Details

The "Stop" signal

Stop ();

The client should stop and and remove itself from the session in response to this signal.

The "QueryEndSession" signal

QueryEndSession (u flags);

This signal is used to ask the client if it is ready for the session to end. The client must respond by calling #EndSessionResponse() within one second of the signal emission.

The flags may include:

  • 1: Logout is forced. The client's inhibitors and the client's #EndSessionResponse() will be ignored.

The client must not attempt to preform any actions or interact with the user in response to this signal. Any actions required for a clean shutdown must take place in response to the "EndSession" signal.

u flags:

Flags

The "EndSession" signal

EndSession (u flags);

This is the signal used to inform the client that the session is about to end. The client will be given ten seconds to perform any actions required for a clean shutdown. Once done, the client must respond by calling #EndSessionResponse() within the ten second period.

The client must not attempt to interact with the user in response to this signal.

u flags:

Flags

The "CancelEndSession" signal

CancelEndSession ();

This signal indicates to the client that a previous emission of "QueryEndSession" has been cancelled. The client should resume normal operations.