org.gnome.SessionManager.ClientPrivate
Prev | Part II. Internal D-Bus API | Next

## 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.

Prev | Up | Next
org.gnome.SessionManager | Home | org.gnome.SessionManager.Inhibitor