1 <!-- ##### SECTION Title ##### -->
4 <!-- ##### SECTION Short_Description ##### -->
7 <!-- ##### SECTION Long_Description ##### -->
9 #LdmGreeter is an object that manages the connection to the LightDM server and provides common greeter functionality.
12 To connect to the display manager instanciate a #LdmGreeter object from inside the greeter process:
14 <title>Connecting to the display manager</title>
15 <programlisting><![CDATA[
16 LdmGreeter *greeter = ldm_greeter_new ();
17 if (!ldm_greeter_connect (LDM_GREETER (greeter))) {
23 Information on how to connect to the display manager is passed using environment variables.
26 Once connected, start an authentication conversation like this:
28 <title>Example Authorization Conversation</title>
29 <programlisting><![CDATA[
30 static void show_prompt_cb (LdmGreeter *greeter, const char *text)
32 // Show the user the message and prompt for some response
33 gchar *secret = prompt_user (text);
35 // Give the result to the user
36 ldm_greeter_provide_secret (greeter, secret);
39 static void authentication_complete_cb (LdmGreeter *greeter)
41 if (ldm_greeter_get_is_authenticated (greeter)) {
42 // Log in to this session.
43 ldm_greeter_login (greeter, ldm_greeter_get_authentication_user (greeter), ldm_greeter_get_default_session (greeter));
46 // Display a warning and reset the greeter
47 reset_login_screen ();
51 static void quit_cb (LdmGreeter *greeter)
59 g_object_connect (G_OBJECT (greeter), "show-prompt", G_CALLBACK (show_prompt_cb), NULL);
60 g_object_connect (G_OBJECT (greeter), "authentication-complete", G_CALLBACK (authentication_complete_cb), NULL);
61 g_object_connect (G_OBJECT (greeter), "quit", G_CALLBACK (quit_cb), NULL);
66 <!-- ##### SECTION See_Also ##### -->
71 <!-- ##### SECTION Stability_Level ##### -->
74 <!-- ##### SECTION Image ##### -->
77 <!-- ##### STRUCT LdmGreeter ##### -->
83 <!-- ##### SIGNAL LdmGreeter::authentication-complete ##### -->
88 @ldmgreeter: the object which received the signal.
90 <!-- ##### SIGNAL LdmGreeter::quit ##### -->
95 @ldmgreeter: the object which received the signal.
97 <!-- ##### SIGNAL LdmGreeter::show-error ##### -->
102 @ldmgreeter: the object which received the signal.
105 <!-- ##### SIGNAL LdmGreeter::show-message ##### -->
110 @ldmgreeter: the object which received the signal.
113 <!-- ##### SIGNAL LdmGreeter::show-prompt ##### -->
118 @ldmgreeter: the object which received the signal.
121 <!-- ##### SIGNAL LdmGreeter::timed-login ##### -->
126 @ldmgreeter: the object which received the signal.
129 <!-- ##### ARG LdmGreeter:authentication-user ##### -->
134 <!-- ##### ARG LdmGreeter:can-hibernate ##### -->
139 <!-- ##### ARG LdmGreeter:can-restart ##### -->
144 <!-- ##### ARG LdmGreeter:can-shutdown ##### -->
149 <!-- ##### ARG LdmGreeter:can-suspend ##### -->
154 <!-- ##### ARG LdmGreeter:default-session ##### -->
159 <!-- ##### ARG LdmGreeter:hostname ##### -->
164 <!-- ##### ARG LdmGreeter:is-authenticated ##### -->
169 <!-- ##### ARG LdmGreeter:layout ##### -->
174 <!-- ##### ARG LdmGreeter:login-delay ##### -->
179 <!-- ##### ARG LdmGreeter:num-users ##### -->
184 <!-- ##### ARG LdmGreeter:timed-login-user ##### -->
189 <!-- ##### FUNCTION ldm_greeter_new ##### -->
198 <!-- ##### FUNCTION ldm_greeter_connect ##### -->
207 <!-- ##### FUNCTION ldm_greeter_get_hostname ##### -->
216 <!-- ##### FUNCTION ldm_greeter_get_theme ##### -->
225 <!-- ##### FUNCTION ldm_greeter_get_string_property ##### -->
235 <!-- ##### FUNCTION ldm_greeter_get_integer_property ##### -->
245 <!-- ##### FUNCTION ldm_greeter_get_boolean_property ##### -->
255 <!-- ##### FUNCTION ldm_greeter_get_num_users ##### -->
264 <!-- ##### FUNCTION ldm_greeter_get_users ##### -->
273 <!-- ##### FUNCTION ldm_greeter_get_default_language ##### -->
282 <!-- ##### FUNCTION ldm_greeter_get_languages ##### -->
291 <!-- ##### FUNCTION ldm_greeter_get_default_layout ##### -->
300 <!-- ##### FUNCTION ldm_greeter_get_layouts ##### -->
309 <!-- ##### FUNCTION ldm_greeter_get_layout ##### -->
318 <!-- ##### FUNCTION ldm_greeter_set_layout ##### -->
327 <!-- ##### FUNCTION ldm_greeter_get_sessions ##### -->
336 <!-- ##### FUNCTION ldm_greeter_get_default_session ##### -->
345 <!-- ##### FUNCTION ldm_greeter_get_timed_login_user ##### -->
354 <!-- ##### FUNCTION ldm_greeter_get_timed_login_delay ##### -->
363 <!-- ##### FUNCTION ldm_greeter_cancel_timed_login ##### -->
371 <!-- ##### FUNCTION ldm_greeter_start_authentication ##### -->
380 <!-- ##### FUNCTION ldm_greeter_provide_secret ##### -->
389 <!-- ##### FUNCTION ldm_greeter_cancel_authentication ##### -->
397 <!-- ##### FUNCTION ldm_greeter_get_is_authenticated ##### -->
406 <!-- ##### FUNCTION ldm_greeter_get_authentication_user ##### -->
415 <!-- ##### FUNCTION ldm_greeter_login ##### -->
426 <!-- ##### FUNCTION ldm_greeter_get_can_suspend ##### -->
435 <!-- ##### FUNCTION ldm_greeter_suspend ##### -->
443 <!-- ##### FUNCTION ldm_greeter_get_can_hibernate ##### -->
452 <!-- ##### FUNCTION ldm_greeter_hibernate ##### -->
460 <!-- ##### FUNCTION ldm_greeter_get_can_restart ##### -->
469 <!-- ##### FUNCTION ldm_greeter_restart ##### -->
477 <!-- ##### FUNCTION ldm_greeter_get_can_shutdown ##### -->
486 <!-- ##### FUNCTION ldm_greeter_shutdown ##### -->