1 <!-- ##### SECTION Title ##### -->
4 <!-- ##### SECTION Short_Description ##### -->
5 Make a connection to the LightDM daemon and authenticate users
7 <!-- ##### SECTION Long_Description ##### -->
9 #LightDMGreeter is an object that manages the connection to the LightDM server and provides common greeter functionality.
13 <title>Example Greeter</title>
14 <programlisting><![CDATA[
18 LightDMGreeter *greeter
20 main_loop = g_main_loop_new ();
22 greeter = lightdm_greeter_new ();
23 g_object_connect (greeter, "show-prompt", G_CALLBACK (show_prompt_cb), NULL);
24 g_object_connect (greeter, "authentication-complete", G_CALLBACK (authentication_complete_cb), NULL);
26 // Connect to LightDM daemon
27 if (!lightdm_greeter_connect_sync (greeter, NULL))
30 // Start authentication
31 lightdm_greeter_authenticate (greeter, NULL);
33 g_main_loop_run (main_loop);
38 static void show_prompt_cb (LightDMGreeter *greeter, const char *text, LightDMPromptType type)
40 // Show the user the message and prompt for some response
41 gchar *secret = prompt_user (text, type);
43 // Give the result to the user
44 lightdm_greeter_respond (greeter, response);
47 static void authentication_complete_cb (LightDMGreeter *greeter)
50 if (!lightdm_greeter_get_is_authenticated (greeter) ||
51 !lightdm_greeter_start_session_sync (greeter, NULL))
53 // Failed authentication, try again
54 lightdm_greeter_authenticate (greeter, NULL);
61 <!-- ##### SECTION See_Also ##### -->
66 <!-- ##### SECTION Stability_Level ##### -->
69 <!-- ##### SECTION Image ##### -->
72 <!-- ##### USER_FUNCTION show_message ##### -->
82 <!-- ##### USER_FUNCTION show_prompt ##### -->
92 <!-- ##### USER_FUNCTION authentication_complete ##### -->
100 <!-- ##### USER_FUNCTION autologin_timer_expired ##### -->
108 <!-- ##### ENUM LightDMMessageType ##### -->
113 @LIGHTDM_MESSAGE_TYPE_INFO:
114 @LIGHTDM_MESSAGE_TYPE_ERROR:
116 <!-- ##### ENUM LightDMPromptType ##### -->
121 @LIGHTDM_PROMPT_TYPE_QUESTION:
122 @LIGHTDM_PROMPT_TYPE_SECRET:
124 <!-- ##### FUNCTION lightdm_greeter_new ##### -->
133 <!-- ##### FUNCTION lightdm_greeter_connect ##### -->
144 <!-- ##### FUNCTION lightdm_greeter_connect_finish ##### -->
155 <!-- ##### FUNCTION lightdm_greeter_connect_sync ##### -->
165 <!-- ##### FUNCTION lightdm_greeter_ensure_shared_data_dir ##### -->
177 <!-- ##### FUNCTION lightdm_greeter_ensure_shared_data_dir_finish ##### -->
187 <!-- ##### FUNCTION lightdm_greeter_ensure_shared_data_dir_sync ##### -->
197 <!-- ##### FUNCTION lightdm_greeter_get_default_session_hint ##### -->
206 <!-- ##### FUNCTION lightdm_greeter_get_hint ##### -->
216 <!-- ##### FUNCTION lightdm_greeter_get_lock_hint ##### -->
225 <!-- ##### FUNCTION lightdm_greeter_get_has_guest_account_hint ##### -->
234 <!-- ##### FUNCTION lightdm_greeter_get_hide_users_hint ##### -->
243 <!-- ##### FUNCTION lightdm_greeter_get_show_manual_login_hint ##### -->
252 <!-- ##### FUNCTION lightdm_greeter_get_show_remote_login_hint ##### -->
261 <!-- ##### FUNCTION lightdm_greeter_get_select_user_hint ##### -->
270 <!-- ##### FUNCTION lightdm_greeter_get_select_guest_hint ##### -->
279 <!-- ##### FUNCTION lightdm_greeter_get_autologin_user_hint ##### -->
288 <!-- ##### FUNCTION lightdm_greeter_get_autologin_guest_hint ##### -->
297 <!-- ##### FUNCTION lightdm_greeter_get_autologin_timeout_hint ##### -->
306 <!-- ##### FUNCTION lightdm_greeter_set_language ##### -->
315 <!-- ##### FUNCTION lightdm_greeter_cancel_autologin ##### -->
323 <!-- ##### FUNCTION lightdm_greeter_authenticate ##### -->
332 <!-- ##### FUNCTION lightdm_greeter_authenticate_as_guest ##### -->
340 <!-- ##### FUNCTION lightdm_greeter_authenticate_autologin ##### -->
348 <!-- ##### FUNCTION lightdm_greeter_authenticate_remote ##### -->
358 <!-- ##### FUNCTION lightdm_greeter_respond ##### -->
367 <!-- ##### FUNCTION lightdm_greeter_cancel_authentication ##### -->
375 <!-- ##### FUNCTION lightdm_greeter_get_in_authentication ##### -->
384 <!-- ##### FUNCTION lightdm_greeter_get_is_authenticated ##### -->
393 <!-- ##### FUNCTION lightdm_greeter_get_authentication_user ##### -->
402 <!-- ##### FUNCTION lightdm_greeter_start_session ##### -->
414 <!-- ##### FUNCTION lightdm_greeter_start_session_finish ##### -->
425 <!-- ##### FUNCTION lightdm_greeter_start_session_sync ##### -->