Greeter Interface

Greeter Interface

Functions

Types and Values

Includes

#include <lightdm.h>

Description

Functions

show_message ()

void
(*show_message) (LightDMGreeter *greeter,
                 const gchar *text,
                 LightDMMessageType type);

show_prompt ()

void
(*show_prompt) (LightDMGreeter *greeter,
                const gchar *text,
                LightDMPromptType type);

authentication_complete ()

void
(*authentication_complete) (LightDMGreeter *greeter);

autologin_timer_expired ()

void
(*autologin_timer_expired) (LightDMGreeter *greeter);

lightdm_greeter_new ()

LightDMGreeter *
lightdm_greeter_new (void);

Create a new greeter.

Returns

the new LightDMGreeter


lightdm_greeter_connect_sync ()

gboolean
lightdm_greeter_connect_sync (LightDMGreeter *greeter,
                              GError **error);

Connects the greeter to the display manager. Will block until connected.

Parameters

greeter

The greeter to connect

 

error

return location for a GError, or NULL

 

Returns

TRUE if successfully connected


lightdm_greeter_ensure_shared_data_dir_sync ()

gchar *
lightdm_greeter_ensure_shared_data_dir_sync
                               (LightDMGreeter *greeter,
                                const gchar *username);

Ensure that a shared data dir for the given user is available. Both the greeter user and username will have write access to that folder. The intention is that larger pieces of shared data would be stored there (files that the greeter creates but wants to give to a user -- like camera photos -- or files that the user creates but wants the greeter to see -- like contact avatars).

LightDM will automatically create these if the user actually logs in, so greeters only need to call this method if they want to store something in the directory themselves.

Parameters

greeter

A LightDMGreeter

 

username

A username

 

Returns

The path to the shared directory, free with g_free.


lightdm_greeter_get_default_session_hint ()

const gchar *
lightdm_greeter_get_default_session_hint
                               (LightDMGreeter *greeter);

Get the default session to use.

Parameters

greeter

A LightDMGreeter

 

Returns

The session name


lightdm_greeter_get_hint ()

const gchar *
lightdm_greeter_get_hint (LightDMGreeter *greeter,
                          const gchar *name);

Get a hint.

Parameters

greeter

A LightDMGreeter

 

name

The hint name to query.

 

Returns

The value for this hint or NULL if not set.


lightdm_greeter_get_lock_hint ()

gboolean
lightdm_greeter_get_lock_hint (LightDMGreeter *greeter);

Check if the greeter is acting as a lock screen.

Parameters

greeter

A LightDMGreeter

 

Returns

TRUE if the greeter was triggered by locking the seat.


lightdm_greeter_get_has_guest_account_hint ()

gboolean
lightdm_greeter_get_has_guest_account_hint
                               (LightDMGreeter *greeter);

Check if guest sessions are supported.

Parameters

greeter

A LightDMGreeter

 

Returns

TRUE if guest sessions are supported.


lightdm_greeter_get_hide_users_hint ()

gboolean
lightdm_greeter_get_hide_users_hint (LightDMGreeter *greeter);

Check if user accounts should be shown. If this is TRUE then the list of accounts should be taken from LightDMUserList and displayed in the greeter for the user to choose from. Note that this list can be empty and it is recommended you show a method for the user to enter a username manually.

If this option is shown the greeter should only allow these users to be chosen for login unless the manual login hint is set.

Parameters

greeter

A LightDMGreeter

 

Returns

TRUE if the available users should not be shown.


lightdm_greeter_get_show_manual_login_hint ()

gboolean
lightdm_greeter_get_show_manual_login_hint
                               (LightDMGreeter *greeter);

Check if a manual login option should be shown. If set the GUI should provide a way for a username to be entered manually. Without this hint a greeter which is showing a user list can limit logins to only those users.

Parameters

greeter

A LightDMGreeter

 

Returns

TRUE if a manual login option should be shown.


lightdm_greeter_get_show_remote_login_hint ()

gboolean
lightdm_greeter_get_show_remote_login_hint
                               (LightDMGreeter *greeter);

Check if a remote login option should be shown. If set the GUI should provide a way for a user to log into a remote desktop server.

Parameters

greeter

A LightDMGreeter

 

Returns

TRUE if a remote login option should be shown.


lightdm_greeter_get_select_user_hint ()

const gchar *
lightdm_greeter_get_select_user_hint (LightDMGreeter *greeter);

Get the user to select by default.

Parameters

greeter

A LightDMGreeter

 

Returns

A username


lightdm_greeter_get_select_guest_hint ()

gboolean
lightdm_greeter_get_select_guest_hint (LightDMGreeter *greeter);

Check if the guest account should be selected by default.

Parameters

greeter

A LightDMGreeter

 

Returns

TRUE if the guest account should be selected by default.


lightdm_greeter_get_autologin_user_hint ()

const gchar *
lightdm_greeter_get_autologin_user_hint
                               (LightDMGreeter *greeter);

Get the user account to automatically logg into when the timer expires.

Parameters

greeter

A LightDMGreeter

 

Returns

The user account to automatically log into.


lightdm_greeter_get_autologin_guest_hint ()

gboolean
lightdm_greeter_get_autologin_guest_hint
                               (LightDMGreeter *greeter);

Check if the guest account should be automatically logged into when the timer expires.

Parameters

greeter

A LightDMGreeter

 

Returns

TRUE if the guest account should be automatically logged into.


lightdm_greeter_get_autologin_timeout_hint ()

gint
lightdm_greeter_get_autologin_timeout_hint
                               (LightDMGreeter *greeter);

Get the number of seconds to wait before automaitcally logging in.

Parameters

greeter

A LightDMGreeter

 

Returns

The number of seconds to wait before automatically logging in or 0 for no timeout.


lightdm_greeter_set_language ()

void
lightdm_greeter_set_language (LightDMGreeter *greeter,
                              const gchar *language);

Set the language for the currently authenticated user.

Parameters

greeter

A LightDMGreeter

 

language

The language to use for this user in the form of a locale specification (e.g. "de_DE.UTF-8").

 

lightdm_greeter_cancel_autologin ()

void
lightdm_greeter_cancel_autologin (LightDMGreeter *greeter);

Cancel the automatic login.

Parameters

greeter

A LightDMGreeter

 

lightdm_greeter_authenticate ()

void
lightdm_greeter_authenticate (LightDMGreeter *greeter,
                              const gchar *username);

Starts the authentication procedure for a user.

Parameters

greeter

A LightDMGreeter

 

username

A username or NULL to prompt for a username.

[allow-none]

lightdm_greeter_authenticate_as_guest ()

void
lightdm_greeter_authenticate_as_guest (LightDMGreeter *greeter);

Starts the authentication procedure for the guest user.

Parameters

greeter

A LightDMGreeter

 

lightdm_greeter_authenticate_autologin ()

void
lightdm_greeter_authenticate_autologin
                               (LightDMGreeter *greeter);

Starts the authentication procedure for the automatic login user.

Parameters

greeter

A LightDMGreeter

 

lightdm_greeter_authenticate_remote ()

void
lightdm_greeter_authenticate_remote (LightDMGreeter *greeter,
                                     const gchar *session,
                                     const gchar *username);

Start authentication for a remote session type.

Parameters

greeter

A LightDMGreeter

 

session

The name of a remote session

 

username

A username of NULL to prompt for a username.

[allow-none]

lightdm_greeter_respond ()

void
lightdm_greeter_respond (LightDMGreeter *greeter,
                         const gchar *response);

Provide response to a prompt. May be one in a series.

Parameters

greeter

A LightDMGreeter

 

response

Response to a prompt

 

lightdm_greeter_cancel_authentication ()

void
lightdm_greeter_cancel_authentication (LightDMGreeter *greeter);

Cancel the current user authentication.

Parameters

greeter

A LightDMGreeter

 

lightdm_greeter_get_in_authentication ()

gboolean
lightdm_greeter_get_in_authentication (LightDMGreeter *greeter);

Checks if the greeter is in the process of authenticating.

Parameters

greeter

A LightDMGreeter

 

Returns

TRUE if the greeter is authenticating a user.


lightdm_greeter_get_is_authenticated ()

gboolean
lightdm_greeter_get_is_authenticated (LightDMGreeter *greeter);

Checks if the greeter has successfully authenticated.

Parameters

greeter

A LightDMGreeter

 

Returns

TRUE if the greeter is authenticated for login.


lightdm_greeter_get_authentication_user ()

const gchar *
lightdm_greeter_get_authentication_user
                               (LightDMGreeter *greeter);

Get the user that is being authenticated.

Parameters

greeter

A LightDMGreeter

 

Returns

The username of the authentication user being authenticated or NULL if no authentication in progress.


lightdm_greeter_start_session_sync ()

gboolean
lightdm_greeter_start_session_sync (LightDMGreeter *greeter,
                                    const gchar *session,
                                    GError **error);

Start a session for the authenticated user.

Parameters

greeter

A LightDMGreeter

 

session

The session to log into or NULL to use the default.

[allow-none]

error

return location for a GError, or NULL

 

Returns

TRUE if the session was started.

Types and Values

enum LightDMMessageType

Members

LIGHTDM_MESSAGE_TYPE_INFO

Informational message.

 

LIGHTDM_MESSAGE_TYPE_ERROR

Error message.

 

enum LightDMPromptType

Members

LIGHTDM_PROMPT_TYPE_QUESTION

Prompt is a question. The information can be shown as it is entered.

 

LIGHTDM_PROMPT_TYPE_SECRET

Prompt is for secret information. The entered information should be obscured so it can't be publically visible.