diff options
author | Brian Cameron <brian.cameron@sun.com> | 2005-12-13 05:05:54 +0000 |
---|---|---|
committer | Brian Cameron <bcameron@src.gnome.org> | 2005-12-13 05:05:54 +0000 |
commit | 864af89d502ed19d2b9af6291632fa2d435ee80c (patch) | |
tree | 4e355bee919babe0444d5df658c1d7c11c0ce96b | |
parent | bfc60f6c1a3530532588cf1a0c65556cd12835f0 (diff) | |
download | gdm-864af89d502ed19d2b9af6291632fa2d435ee80c.tar.gz |
Add GET_SERVER_LIST and GET_SERVER_DETAILS sockets functions so that
2005-12-12 Brian Cameron <brian.cameron@sun.com>
* daemon/gdm.[ch], daemongdmconfig.[ch]: Add
GET_SERVER_LIST and GET_SERVER_DETAILS
sockets functions so that gdmflexiserver and
gdmconfig do not need to access the config
file for these, instead using the sockets
protocol.
* docs/C/gdm.xml: Add docs for new sockets
commands.
* configure.ac, gui/Makefile.am: Remove some
libgnome/libgnomeui dependencies.
* gui/gdmcomm.c: Now close sockets connection
after 20 messages since the daemon gets mad
if you send more.
* gui/gdmconfig.[ch]: New client functions for
getting server information via sockets.
* gui/gdmflexiserver.c: Remove libgnome
dependencies and now use new config
mechanism for getting server info.
* gui/gdmsetup.c: Now use new config
mechanism for reading from config file and
remove libgnome dependencies. Cleaned up
the code a bit. Now we don't call
ve_config_get all over the place, which
seems to speed up the start time.
-rw-r--r-- | ChangeLog | 27 | ||||
-rw-r--r-- | configure.ac | 4 | ||||
-rw-r--r-- | daemon/gdm.c | 92 | ||||
-rw-r--r-- | daemon/gdm.h | 42 | ||||
-rw-r--r-- | daemon/gdmconfig.c | 35 | ||||
-rw-r--r-- | daemon/gdmconfig.h | 1 | ||||
-rw-r--r-- | docs/C/gdm.xml | 47 | ||||
-rw-r--r-- | docs/es/es.po | 830 | ||||
-rw-r--r-- | docs/es/gdm.xml | 47 | ||||
-rw-r--r-- | gui/Makefile.am | 29 | ||||
-rw-r--r-- | gui/gdmcomm.c | 21 | ||||
-rw-r--r-- | gui/gdmconfig.c | 121 | ||||
-rw-r--r-- | gui/gdmconfig.h | 1 | ||||
-rw-r--r-- | gui/gdmflexiserver.c | 75 | ||||
-rw-r--r-- | gui/gdmsetup.c | 527 |
15 files changed, 1082 insertions, 817 deletions
@@ -1,5 +1,32 @@ 2005-12-12 Brian Cameron <brian.cameron@sun.com> + * daemon/gdm.[ch], daemongdmconfig.[ch]: Add + GET_SERVER_LIST and GET_SERVER_DETAILS + sockets functions so that gdmflexiserver and + gdmconfig do not need to access the config + file for these, instead using the sockets + protocol. + * docs/C/gdm.xml: Add docs for new sockets + commands. + * configure.ac, gui/Makefile.am: Remove some + libgnome/libgnomeui dependencies. + * gui/gdmcomm.c: Now close sockets connection + after 20 messages since the daemon gets mad + if you send more. + * gui/gdmconfig.[ch]: New client functions for + getting server information via sockets. + * gui/gdmflexiserver.c: Remove libgnome + dependencies and now use new config + mechanism for getting server info. + * gui/gdmsetup.c: Now use new config + mechanism for reading from config file and + remove libgnome dependencies. Cleaned up + the code a bit. Now we don't call + ve_config_get all over the place, which + seems to speed up the start time. + +2005-12-12 Brian Cameron <brian.cameron@sun.com> + * Release 2.13.0.3: * NEWS, configure.ac: Updated * docs/C/gdm.xml: Updated version/date. diff --git a/configure.ac b/configure.ac index 071de41f..8dfe559d 100644 --- a/configure.ac +++ b/configure.ac @@ -148,7 +148,7 @@ PKG_CHECK_MODULES(DAEMON, gtk+-2.0 >= $GTK_REQUIRED) AC_SUBST(DAEMON_CFLAGS) AC_SUBST(DAEMON_LIBS) -PKG_CHECK_MODULES(GUI, gtk+-2.0 >= $GTK_REQUIRED libgnomeui-2.0 >= $LIBGNOMEUI_REQUIRED libglade-2.0 >= $LIBGLADE_REQUIRED) +PKG_CHECK_MODULES(GUI, gtk+-2.0 >= $GTK_REQUIRED libglade-2.0 >= $LIBGLADE_REQUIRED) AC_SUBST(GUI_CFLAGS) AC_SUBST(GUI_LIBS) @@ -164,7 +164,7 @@ PKG_CHECK_MODULES(GREETER, gtk+-2.0 >= $GTK_REQUIRED libgnomecanvas-2.0 >= $LIBG AC_SUBST(GREETER_CFLAGS) AC_SUBST(GREETER_LIBS) -PKG_CHECK_MODULES(UTILS, gtk+-2.0 >= $GTK_REQUIRED libgnomeui-2.0 >= $LIBGNOMEUI_REQUIRED libglade-2.0 >= $LIBGLADE_REQUIRED) +PKG_CHECK_MODULES(UTILS, gtk+-2.0 >= $GTK_REQUIRED libglade-2.0 >= $LIBGLADE_REQUIRED) AC_SUBST(UTILS_CFLAGS) AC_SUBST(UTILS_LIBS) diff --git a/daemon/gdm.c b/daemon/gdm.c index 189af25d..7bb25850 100644 --- a/daemon/gdm.c +++ b/daemon/gdm.c @@ -2802,7 +2802,7 @@ gdm_handle_user_message (GdmConnection *conn, const char *msg, gpointer data) { gdm_debug ("Handling user message: '%s'", msg); - if (gdm_connection_get_message_count (conn) > 20) { + if (gdm_connection_get_message_count (conn) > GDM_SUP_MAX_CONNECTIONS) { gdm_connection_write (conn, "ERROR 200 Too many messages\n"); gdm_connection_close (conn); return; @@ -3005,7 +3005,6 @@ gdm_handle_user_message (GdmConnection *conn, const char *msg, gpointer data) g_string_append (msg, "\n"); gdm_connection_write (conn, msg->str); g_string_free (msg, TRUE); -/* } else if (strcmp (msg, GDM_SUP_GET_SERVER_LIST) == 0) { gchar *retval = gdm_get_x_servers (); @@ -3019,15 +3018,46 @@ gdm_handle_user_message (GdmConnection *conn, const char *msg, gpointer data) } else if (strncmp (msg, GDM_SUP_GET_SERVER_DETAILS " ", strlen (GDM_SUP_GET_SERVER_DETAILS " ")) == 0) { const char *server = &msg[strlen (GDM_SUP_GET_SERVER_DETAILS " ")]; - gchar *retval = gdm_get_x_server_details (server); - if (retval != NULL) { - gdm_connection_printf (conn, "OK %s\n", retval); - g_free (retval); + gchar **splitstr = g_strsplit (server, " ", 2); + GdmXserver *svr = gdm_find_x_server ((char *)splitstr[0]); + + if (svr != NULL) { + if (g_strncasecmp (splitstr[1], "NAME", 4) == 0) + gdm_connection_printf (conn, "OK %s\n", svr->name); + else if (g_strncasecmp (splitstr[1], "COMMAND", 7) == 0) + gdm_connection_printf (conn, "OK %s\n", svr->command); + else if (g_strncasecmp (splitstr[1], "FLEXIBLE", 8) == 0 && + svr->flexible) + gdm_connection_printf (conn, "OK true\n"); + else if (g_strncasecmp (splitstr[1], "FLEXIBLE", 8) == 0 && + !svr->flexible) + gdm_connection_printf (conn, "OK FALSE\n"); + else if (g_strncasecmp (splitstr[1], "CHOOSABLE", 9) == 0 && + svr->choosable) + gdm_connection_printf (conn, "OK true\n"); + else if (g_strncasecmp (splitstr[1], "CHOOSABLE", 9) == 0 && + !svr->choosable) + gdm_connection_printf (conn, "OK FALSE\n"); + else if (g_strncasecmp (splitstr[1], "HANDLED", 7) == 0 && + svr->handled) + gdm_connection_printf (conn, "OK true\n"); + else if (g_strncasecmp (splitstr[1], "HANDLED", 7) == 0 && + !svr->handled) + gdm_connection_printf (conn, "OK FALSE\n"); + else if (g_strncasecmp (splitstr[1], "CHOOSER", 7) == 0 && + svr->chooser) + gdm_connection_printf (conn, "OK true\n"); + else if (g_strncasecmp (splitstr[1], "CHOOSER", 7) == 0 && + !svr->chooser) + gdm_connection_printf (conn, "OK FALSE\n"); + else + gdm_connection_printf (conn, "ERROR 2 Key not valid\n"); + + g_strfreev (splitstr); } else { gdm_connection_printf (conn, "ERROR 1 Server not found\n"); } -*/ } else if (strcmp (msg, GDM_SUP_GREETERPIDS) == 0) { GString *msg; GSList *li; @@ -3278,39 +3308,33 @@ gdm_handle_user_message (GdmConnection *conn, const char *msg, gpointer data) #else gdm_connection_write (conn, "ERROR 8 Virtual terminals not supported\n"); #endif - } else if (strncmp (msg, GDM_SUP_ADD_DYNAMIC_DISPLAY " ", - strlen (GDM_SUP_ADD_DYNAMIC_DISPLAY " ")) == 0) { - char *key; - - key = g_strdup (&msg[strlen (GDM_SUP_ADD_DYNAMIC_DISPLAY " ")]); - g_strstrip (key); - - handle_dynamic_server (conn, DYNAMIC_ADD, key); - - g_free (key); + } else if (strncmp (msg, GDM_SUP_ADD_DYNAMIC_DISPLAY " ", + strlen (GDM_SUP_ADD_DYNAMIC_DISPLAY " ")) == 0) { + char *key; - } else if (strncmp (msg, GDM_SUP_REMOVE_DYNAMIC_DISPLAY " ", - strlen (GDM_SUP_REMOVE_DYNAMIC_DISPLAY " ")) == 0) { - char *key; - - key = g_strdup (&msg[strlen (GDM_SUP_REMOVE_DYNAMIC_DISPLAY " ")]); - g_strstrip (key); - - handle_dynamic_server (conn, DYNAMIC_REMOVE, key); - - g_free (key); + key = g_strdup (&msg[strlen (GDM_SUP_ADD_DYNAMIC_DISPLAY " ")]); + g_strstrip (key); + handle_dynamic_server (conn, DYNAMIC_ADD, key); + g_free (key); - } else if (strncmp (msg, GDM_SUP_RELEASE_DYNAMIC_DISPLAYS " ", - strlen (GDM_SUP_RELEASE_DYNAMIC_DISPLAYS " ")) == 0) { + } else if (strncmp (msg, GDM_SUP_REMOVE_DYNAMIC_DISPLAY " ", + strlen (GDM_SUP_REMOVE_DYNAMIC_DISPLAY " ")) == 0) { + char *key; - char *key; + key = g_strdup (&msg[strlen (GDM_SUP_REMOVE_DYNAMIC_DISPLAY " ")]); + g_strstrip (key); + handle_dynamic_server (conn, DYNAMIC_REMOVE, key); + g_free (key); - key = g_strdup (&msg[strlen (GDM_SUP_RELEASE_DYNAMIC_DISPLAYS " ")]); - g_strstrip (key); + } else if (strncmp (msg, GDM_SUP_RELEASE_DYNAMIC_DISPLAYS " ", + strlen (GDM_SUP_RELEASE_DYNAMIC_DISPLAYS " ")) == 0) { - handle_dynamic_server (conn, DYNAMIC_RELEASE, key); + char *key; - g_free (key); + key = g_strdup (&msg[strlen (GDM_SUP_RELEASE_DYNAMIC_DISPLAYS " ")]); + g_strstrip (key); + handle_dynamic_server (conn, DYNAMIC_RELEASE, key); + g_free (key); } else if (strcmp (msg, GDM_SUP_VERSION) == 0) { gdm_connection_write (conn, "GDM " VERSION "\n"); diff --git a/daemon/gdm.h b/daemon/gdm.h index 5db79714..9a319252 100644 --- a/daemon/gdm.h +++ b/daemon/gdm.h @@ -712,6 +712,11 @@ void gdm_final_cleanup (void); /* notify a command */ #define GDM_SLAVE_NOTIFY_COMMAND '#' +/* + * Maximum number of connections allowed at once. Might be useful to + * try and tune this. GDM would be faster if the value is larger. + */ +#define GDM_SUP_MAX_CONNECTIONS 20 #define GDM_SUP_SOCKET "/tmp/.gdm_socket" /* @@ -839,7 +844,7 @@ void gdm_final_cleanup (void); * 999 = Unknown error */ #define GDM_SUP_ALL_SERVERS "ALL_SERVERS" /* None */ -/* ALL_SERVERS: List all servers, including attached, remote, xnest. This +/* ALL_SERVERS: List all displays, including attached, remote, xnest. This * Can for example be useful to figure out if the server you are on is managed * by the gdm daemon, by seeing if it is in the list. It is also somewhat * like the 'w' command but for graphical sessions. @@ -857,6 +862,41 @@ void gdm_final_cleanup (void); * 200 = Too many messages * 999 = Unknown error */ +#define GDM_SUP_GET_SERVER_LIST "GET_SERVER_LIST" /* None */ +/* GET_SERVER_LIST: Get a list of the server sections from + * the configuration file. + * Supported since: 2.13.0.4 + * Arguments: None + * Answers: + * OK <value>;<value>;... + * ERROR <err number> <english error description> + * 0 = Not implemented + * 1 = No servers found + * 50 = Unsupported key + * 200 = Too many messages + * 999 = Unknown error + */ +#define GDM_SUP_GET_SERVER_DETAILS "GET_SERVER_DETAILS" /* <server> <key> */ +/* GET_SERVER_DETAILS: Get detail information for a specific + * server. Key values include: + * NAME - Returns the server name + * COMMAND - Returns the server command + * FLEXIBLE - Returns "true" if flexible, "false" otherwise + * CHOOSABLE - Returns "true" if choosable, "false" otherwise + * HANDLED - Returns "true" if handled, "false" otherwise + * CHOOSER - Returns "true" if chooser, "false" otherwise + * Supported since: 2.13.0.4 + * Arguments: <server> <key> + * Answers: + * OK <value> + * ERROR <err number> <english error description> + * 0 = Not implemented + * 1 = Server not found + * 2 = Key not valid + * 50 = Unsupported key + * 200 = Too many messages + * 999 = Unknown error + */ #define GDM_SUP_GET_CONFIG "GET_CONFIG" /* <key> */ /* GET_CONFIG: Get configuration value for key. Useful so * that other programs can request configuration information diff --git a/daemon/gdmconfig.c b/daemon/gdmconfig.c index 883fc870..b9f98673 100644 --- a/daemon/gdmconfig.c +++ b/daemon/gdmconfig.c @@ -1321,41 +1321,6 @@ gdm_get_x_servers (void) return retval; } -gchar * -gdm_get_x_server_details (gchar *id) -{ - GdmXserver *svr = gdm_find_x_server (id); - gchar *retval; - - if (svr == NULL) - return NULL; - - retval = g_strdup (svr->name); - retval = g_strconcat (retval, ";", svr->command, NULL); - - if (svr->flexible) - retval = g_strconcat (retval, ";true", NULL); - else - retval = g_strconcat (retval, ";false", NULL); - - if (svr->choosable) - retval = g_strconcat (retval, ";true", NULL); - else - retval = g_strconcat (retval, ";false", NULL); - - if (svr->handled) - retval = g_strconcat (retval, ";true", NULL); - else - retval = g_strconcat (retval, ";false", NULL); - - if (svr->chooser) - retval = g_strconcat (retval, ";true", NULL); - else - retval = g_strconcat (retval, ";false", NULL); - - return retval; -} - /** * gdm_load_config_option * diff --git a/daemon/gdmconfig.h b/daemon/gdmconfig.h index 7857ceb0..10129d6e 100644 --- a/daemon/gdmconfig.h +++ b/daemon/gdmconfig.h @@ -39,7 +39,6 @@ void gdm_config_init (void); void gdm_config_parse (void); GdmXserver* gdm_find_x_server (const gchar *id); gchar* gdm_get_x_servers (void); -gchar* gdm_get_x_server_details (gchar *id); int gdm_compare_displays (gconstpointer a, gconstpointer b); uid_t gdm_get_gdmuid (void); diff --git a/docs/C/gdm.xml b/docs/C/gdm.xml index 6df80378..449d16f5 100644 --- a/docs/C/gdm.xml +++ b/docs/C/gdm.xml @@ -3603,6 +3603,8 @@ FLEXI_XSERVER FLEXI_XNEST ATTACHED_SERVERS ALL_SERVERS +GET_SERVER_LIST +GET_SERVER_DETAILS GET_CONFIG GET_CONFIG_FILE UPDATE_CONFIG @@ -3814,7 +3816,7 @@ Answers: <sect3 id="allservers"> <title>ALL_SERVERS</title> <screen> -ALL_SERVERS: List all servers, including console, remote, xnest. +ALL_SERVERS: List all displays, including console, remote, xnest. This can, for example, be useful to figure out if the server you are on is managed by the gdm daemon, by seeing if it is in the list. It is also somewhat @@ -3835,6 +3837,49 @@ Answers: </screen> </sect3> + <sect3 id="getserverlist"> + <title>GET_SERVER_LIST</title> + <screen> +GET_SERVER_LIST: Get a list of the server sections from + the configuration file. +Supported since: 2.13.0.4 +Arguments: None +Answers: + OK <value>;<value>;... + ERROR <err number> <english error description> + 0 = Not implemented + 1 = No servers found + 50 = Unsupported key + 200 = Too many messages + 999 = Unknown error + </screen> + </sect3> + + <sect3 id="getserverdetails"> + <title>GET_SERVER_DETAILS</title> + <screen> +GET_SERVER_DETAILS: Get detail information for a specific + server. Key values include: + NAME - Returns the server name + COMMAND - Returns the server command + FLEXIBLE - Returns "true" if flexible, "false" otherwise + CHOOSABLE - Returns "true" if choosable, "false" otherwise + HANDLED - Returns "true" if handled, "false" otherwise + CHOOSER - Returns "true" if chooser, "false" otherwise +Supported since: 2.13.0.4 +Arguments: <server> <key> +Answers: + OK <value> + ERROR <err number> <english error description> + 0 = Not implemented + 1 = Server not found + 2 = Key not valid + 50 = Unsupported key + 200 = Too many messages + 999 = Unknown error + </screen> + </sect3> + <sect3 id="getconfig"> <title>GET_CONFIG</title> <screen> diff --git a/docs/es/es.po b/docs/es/es.po index 420cbbfe..c1f4d83b 100644 --- a/docs/es/es.po +++ b/docs/es/es.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: es\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2005-12-12 17:48-0800\n" +"POT-Creation-Date: 2005-12-12 22:55-0800\n" "PO-Revision-Date: 2005-10-30 18:01+0100\n" "Last-Translator: \n" "Language-Team: <en@li.org>\n" @@ -4536,7 +4536,7 @@ msgid "" msgstr "" #: ../C/gdm.xml:3599 (screen) -#, no-wrap +#, fuzzy, no-wrap msgid "" "\n" "VERSION\n" @@ -4545,6 +4545,8 @@ msgid "" "FLEXI_XNEST\n" "ATTACHED_SERVERS\n" "ALL_SERVERS\n" +"GET_SERVER_LIST\n" +"GET_SERVER_DETAILS\n" "GET_CONFIG\n" "GET_CONFIG_FILE\n" "UPDATE_CONFIG\n" @@ -4576,17 +4578,17 @@ msgstr "" "CLOSE\n" " " -#: ../C/gdm.xml:3618 (para) +#: ../C/gdm.xml:3620 (para) msgid "" "These are described in detail below, including required arguments, response " "format, and return codes." msgstr "" -#: ../C/gdm.xml:3624 (title) +#: ../C/gdm.xml:3626 (title) msgid "VERSION" msgstr "VERSION" -#: ../C/gdm.xml:3625 (screen) +#: ../C/gdm.xml:3627 (screen) #, no-wrap msgid "" "\n" @@ -4611,11 +4613,11 @@ msgstr "" " 999 = Unknown error\n" " " -#: ../C/gdm.xml:3638 (title) +#: ../C/gdm.xml:3640 (title) msgid "AUTH_LOCAL" msgstr "AUTH_LOCAL" -#: ../C/gdm.xml:3639 (screen) +#: ../C/gdm.xml:3641 (screen) #, no-wrap msgid "" "\n" @@ -4642,11 +4644,11 @@ msgid "" " " msgstr "" -#: ../C/gdm.xml:3664 (title) +#: ../C/gdm.xml:3666 (title) msgid "FLEXI_XSERVER" msgstr "FLEXI_XSERVER" -#: ../C/gdm.xml:3665 (screen) +#: ../C/gdm.xml:3667 (screen) #, no-wrap msgid "" "\n" @@ -4670,11 +4672,11 @@ msgid "" " " msgstr "" -#: ../C/gdm.xml:3687 (title) +#: ../C/gdm.xml:3689 (title) msgid "FLEXI_XNEST" msgstr "FLEXI_XNEST" -#: ../C/gdm.xml:3688 (screen) +#: ../C/gdm.xml:3690 (screen) #, no-wrap msgid "" "\n" @@ -4714,11 +4716,11 @@ msgid "" " " msgstr "" -#: ../C/gdm.xml:3726 (title) +#: ../C/gdm.xml:3728 (title) msgid "ADD_DYNAMIC_DISPLAY" msgstr "ADD_DYNAMIC_DISPLAY" -#: ../C/gdm.xml:3727 (screen) +#: ../C/gdm.xml:3729 (screen) #, no-wrap msgid "" "\n" @@ -4741,11 +4743,11 @@ msgid "" " " msgstr "" -#: ../C/gdm.xml:3748 (title) +#: ../C/gdm.xml:3750 (title) msgid "RELEASE_DYNAMIC_DISPLAYS" msgstr "RELEASE_DYNAMIC_DISPLAYS" -#: ../C/gdm.xml:3749 (screen) +#: ../C/gdm.xml:3751 (screen) #, no-wrap msgid "" "\n" @@ -4763,11 +4765,11 @@ msgid "" " " msgstr "" -#: ../C/gdm.xml:3765 (title) +#: ../C/gdm.xml:3767 (title) msgid "REMOVE_DYNAMIC_DISPLAY" msgstr "REMOVE_DYNAMIC_DISPLAY" -#: ../C/gdm.xml:3766 (screen) +#: ../C/gdm.xml:3768 (screen) #, no-wrap msgid "" "\n" @@ -4786,11 +4788,11 @@ msgid "" " " msgstr "" -#: ../C/gdm.xml:3783 (title) +#: ../C/gdm.xml:3785 (title) msgid "ATTACHED_SERVERS" msgstr "ATTACHED_SERVERS" -#: ../C/gdm.xml:3784 (screen) +#: ../C/gdm.xml:3786 (screen) #, no-wrap msgid "" "\n" @@ -4823,15 +4825,15 @@ msgid "" " " msgstr "" -#: ../C/gdm.xml:3815 (title) +#: ../C/gdm.xml:3817 (title) msgid "ALL_SERVERS" msgstr "ALL_SERVERS" -#: ../C/gdm.xml:3816 (screen) +#: ../C/gdm.xml:3818 (screen) #, no-wrap msgid "" "\n" -"ALL_SERVERS: List all servers, including console, remote, xnest.\n" +"ALL_SERVERS: List all displays, including console, remote, xnest.\n" " This can, for example, be useful to figure out if\n" " the server you are on is managed by the gdm daemon,\n" " by seeing if it is in the list. It is also somewhat\n" @@ -4852,11 +4854,86 @@ msgid "" " " msgstr "" -#: ../C/gdm.xml:3839 (title) +#: ../C/gdm.xml:3841 (title) +#, fuzzy +msgid "GET_SERVER_LIST" +msgstr "ALL_SERVERS" + +#: ../C/gdm.xml:3842 (screen) +#, fuzzy, no-wrap +msgid "" +"\n" +"GET_SERVER_LIST: Get a list of the server sections from\n" +" the configuration file.\n" +"Supported since: 2.13.0.4\n" +"Arguments: None\n" +"Answers:\n" +" OK <value>;<value>;...\n" +" ERROR <err number> <english error description>\n" +" 0 = Not implemented\n" +" 1 = No servers found\n" +" 50 = Unsupported key\n" +" 200 = Too many messages\n" +" 999 = Unknown error\n" +" " +msgstr "" +"\n" +"VERSION: Query version\n" +"Supported since: 2.2.4.0\n" +"Arguments: None\n" +"Answers:\n" +" GDM <gdm version>\n" +" ERROR <err number> <english error description>\n" +" 200 = Too many messages\n" +" 999 = Unknown error\n" +" " + +#: ../C/gdm.xml:3859 (title) +#, fuzzy +msgid "GET_SERVER_DETAILS" +msgstr "ALL_SERVERS" + +#: ../C/gdm.xml:3860 (screen) +#, fuzzy, no-wrap +msgid "" +"\n" +"GET_SERVER_DETAILS: Get detail information for a specific\n" +" server. Key values include:\n" +" NAME - Returns the server name\n" +" COMMAND - Returns the server command\n" +" FLEXIBLE - Returns \"true\" if flexible, \"false\" otherwise\n" +" CHOOSABLE - Returns \"true\" if choosable, \"false\" otherwise\n" +" HANDLED - Returns \"true\" if handled, \"false\" otherwise\n" +" CHOOSER - Returns \"true\" if chooser, \"false\" otherwise\n" +"Supported since: 2.13.0.4\n" +"Arguments: <server> <key>\n" +"Answers:\n" +" OK <value>\n" +" ERROR <err number> <english error description>\n" +" 0 = Not implemented\n" +" 1 = Server not found\n" +" 2 = Key not valid\n" +" 50 = Unsupported key\n" +" 200 = Too many messages\n" +" 999 = Unknown error\n" +" " +msgstr "" +"\n" +"VERSION: Query version\n" +"Supported since: 2.2.4.0\n" +"Arguments: None\n" +"Answers:\n" +" GDM <gdm version>\n" +" ERROR <err number> <english error description>\n" +" 200 = Too many messages\n" +" 999 = Unknown error\n" +" " + +#: ../C/gdm.xml:3884 (title) msgid "GET_CONFIG" msgstr "GET_CONFIG" -#: ../C/gdm.xml:3840 (screen) +#: ../C/gdm.xml:3885 (screen) #, no-wrap msgid "" "\n" @@ -4881,12 +4958,12 @@ msgid "" " " msgstr "" -#: ../C/gdm.xml:3863 (title) +#: ../C/gdm.xml:3908 (title) msgid "GET_CONFIG_FILE" msgstr "GET_CONFIG_FILE" -#: ../C/gdm.xml:3864 (screen) -#, no-wrap +#: ../C/gdm.xml:3909 (screen) +#, fuzzy, no-wrap msgid "" "\n" "GET_CONFIG_FILE: Get config file location being used by\n" @@ -4901,12 +4978,22 @@ msgid "" " 999 = Unknown error\n" " " msgstr "" +"\n" +"VERSION: Query version\n" +"Supported since: 2.2.4.0\n" +"Arguments: None\n" +"Answers:\n" +" GDM <gdm version>\n" +" ERROR <err number> <english error description>\n" +" 200 = Too many messages\n" +" 999 = Unknown error\n" +" " -#: ../C/gdm.xml:3879 (title) +#: ../C/gdm.xml:3924 (title) msgid "UPDATE_CONFIG" msgstr "UPDATE_CONFIG" -#: ../C/gdm.xml:3880 (screen) +#: ../C/gdm.xml:3925 (screen) #, no-wrap msgid "" "\n" @@ -4978,12 +5065,12 @@ msgid "" " " msgstr "" -#: ../C/gdm.xml:3950 (title) +#: ../C/gdm.xml:3995 (title) msgid "GREETERPIDS" msgstr "GREETERPIDS" -#: ../C/gdm.xml:3951 (screen) -#, no-wrap +#: ../C/gdm.xml:3996 (screen) +#, fuzzy, no-wrap msgid "" "\n" "GREETERPIDS: List all greeter pids so that one can send HUP\n" @@ -4999,12 +5086,22 @@ msgid "" " 999 = Unknown error\n" " " msgstr "" +"\n" +"VERSION: Query version\n" +"Supported since: 2.2.4.0\n" +"Arguments: None\n" +"Answers:\n" +" GDM <gdm version>\n" +" ERROR <err number> <english error description>\n" +" 200 = Too many messages\n" +" 999 = Unknown error\n" +" " -#: ../C/gdm.xml:3967 (title) +#: ../C/gdm.xml:4012 (title) msgid "QUERY_LOGOUT_ACTION" msgstr "QUERY_LOGOUT_ACTION" -#: ../C/gdm.xml:3968 (screen) +#: ../C/gdm.xml:4013 (screen) #, no-wrap msgid "" "\n" @@ -5027,11 +5124,12 @@ msgid "" " " msgstr "" -#: ../C/gdm.xml:3989 (title) +#: ../C/gdm.xml:4034 (title) +#, fuzzy msgid "SET_LOGOUT_ACTION" -msgstr "" +msgstr "SET_SAFE_LOGOUT_ACTION" -#: ../C/gdm.xml:3990 (screen) +#: ../C/gdm.xml:4035 (screen) #, no-wrap msgid "" "\n" @@ -5056,11 +5154,11 @@ msgid "" " " msgstr "" -#: ../C/gdm.xml:4013 (title) +#: ../C/gdm.xml:4058 (title) msgid "SET_SAFE_LOGOUT_ACTION" msgstr "SET_SAFE_LOGOUT_ACTION" -#: ../C/gdm.xml:4014 (screen) +#: ../C/gdm.xml:4059 (screen) #, no-wrap msgid "" "\n" @@ -5093,11 +5191,11 @@ msgid "" " " msgstr "" -#: ../C/gdm.xml:4045 (title) +#: ../C/gdm.xml:4090 (title) msgid "QUERY_VT" msgstr "QUERY_VT" -#: ../C/gdm.xml:4046 (screen) +#: ../C/gdm.xml:4091 (screen) #, no-wrap msgid "" "\n" @@ -5122,11 +5220,11 @@ msgid "" " " msgstr "" -#: ../C/gdm.xml:4069 (title) +#: ../C/gdm.xml:4114 (title) msgid "SET_VT" msgstr "SET_VT" -#: ../C/gdm.xml:4070 (screen) +#: ../C/gdm.xml:4115 (screen) #, no-wrap msgid "" "\n" @@ -5149,11 +5247,11 @@ msgid "" " " msgstr "" -#: ../C/gdm.xml:4091 (title) +#: ../C/gdm.xml:4136 (title) msgid "CLOSE" msgstr "CLOSE" -#: ../C/gdm.xml:4092 (screen) +#: ../C/gdm.xml:4137 (screen) #, no-wrap msgid "" "\n" @@ -5162,27 +5260,30 @@ msgid "" " " msgstr "" -#: ../C/gdm.xml:4103 (title) +#: ../C/gdm.xml:4148 (title) +#, fuzzy msgid "GDM Commands" -msgstr "" +msgstr "Comandos" -#: ../C/gdm.xml:4106 (title) +#: ../C/gdm.xml:4151 (title) +#, fuzzy msgid "GDM User Commands" -msgstr "" +msgstr "Comandos internos de GDM" -#: ../C/gdm.xml:4108 (para) +#: ../C/gdm.xml:4153 (para) msgid "" "The GDM package provides the following different commands in EXPANDED_BINDIR " "intended to be used by the end-user:" msgstr "" -#: ../C/gdm.xml:4114 (title) +#: ../C/gdm.xml:4159 (title) +#, fuzzy msgid "" "<command>gdmXnestchooser</command> and <command>gdmXnest</command> Command " "Line Options" -msgstr "" +msgstr "Opciones de lĂnea de comandos de <command>gdmdynamic</command>" -#: ../C/gdm.xml:4117 (para) +#: ../C/gdm.xml:4162 (para) msgid "" "The <command>gdmXnestchooser</command> command automatically gets the " "correct display number, sets up access, and runs <command>Xnest</command> " @@ -5195,78 +5296,83 @@ msgid "" "this command also supports standard GNOME options." msgstr "" -#: ../C/gdm.xml:4132 (title) +#: ../C/gdm.xml:4177 (title) +#, fuzzy msgid "<command>gdmXnestchooser</command> Command Line Options" -msgstr "" +msgstr "Opciones de lĂnea de comandos de <command>gdmdynamic</command>" -#: ../C/gdm.xml:4135 (term) +#: ../C/gdm.xml:4180 (term) +#, fuzzy msgid "-x, --xnest=STRING" -msgstr "" +msgstr "-n, --xnest" -#: ../C/gdm.xml:4137 (para) +#: ../C/gdm.xml:4182 (para) msgid "Xnest command line, default is \"Xnest\"" msgstr "" -#: ../C/gdm.xml:4144 (term) +#: ../C/gdm.xml:4189 (term) msgid "-o, --xnest-extra-options=OPTIONS" msgstr "" -#: ../C/gdm.xml:4146 (para) +#: ../C/gdm.xml:4191 (para) msgid "Extra options for Xnest, default is no options." msgstr "" -#: ../C/gdm.xml:4153 (term) +#: ../C/gdm.xml:4198 (term) +#, fuzzy msgid "-n, --no-query" -msgstr "" +msgstr "-n, --xnest" -#: ../C/gdm.xml:4155 (para) +#: ../C/gdm.xml:4200 (para) msgid "Just run Xnest, no query (no chooser)" msgstr "" -#: ../C/gdm.xml:4162 (term) +#: ../C/gdm.xml:4207 (term) +#, fuzzy msgid "-d, --direct" -msgstr "" +msgstr "-d, --debug" -#: ../C/gdm.xml:4164 (para) +#: ../C/gdm.xml:4209 (para) msgid "Do direct query instead of indirect (chooser)" msgstr "" -#: ../C/gdm.xml:4171 (term) +#: ../C/gdm.xml:4216 (term) msgid "-B, --broadcast" msgstr "" -#: ../C/gdm.xml:4173 (para) +#: ../C/gdm.xml:4218 (para) msgid "Run broadcast instead of indirect (chooser)" msgstr "" -#: ../C/gdm.xml:4180 (term) +#: ../C/gdm.xml:4225 (term) msgid "-b, --background" msgstr "" -#: ../C/gdm.xml:4182 (para) +#: ../C/gdm.xml:4227 (para) msgid "Run in background" msgstr "" -#: ../C/gdm.xml:4189 (term) +#: ../C/gdm.xml:4234 (term) msgid "--no-gdm-check" msgstr "" -#: ../C/gdm.xml:4191 (para) +#: ../C/gdm.xml:4236 (para) msgid "Don't check for running GDM" msgstr "" -#: ../C/gdm.xml:4200 (title) ../C/gdm.xml:4244 +#: ../C/gdm.xml:4245 (title) ../C/gdm.xml:4289 +#, fuzzy msgid "<command>gdmflexichooser</command> Command Line Options" -msgstr "" +msgstr "Opciones de lĂnea de comandos de <command>gdmdynamic</command>" -#: ../C/gdm.xml:4202 (para) +#: ../C/gdm.xml:4247 (para) msgid "" "The <command>gdmflexiserver</command> command provides three features. It " "can be used to run flexible (on demand) X servers, to run a flexible server " "via Xnest, and to send commands to the GDM daemon process." msgstr "" -#: ../C/gdm.xml:4209 (para) +#: ../C/gdm.xml:4254 (para) msgid "" "Starting a flexible X servers will normally lock the current session with a " "screensaver and will redisplay the GDM login screen so a second user can log " @@ -5280,7 +5386,7 @@ msgid "" "have to enter the password to unlock the screen." msgstr "" -#: ../C/gdm.xml:4223 (para) +#: ../C/gdm.xml:4268 (para) msgid "" "Flexible servers started via Xnest works on systems that do not support " "virtual terminals. This option starts a flexible server in a window in the " @@ -5288,48 +5394,48 @@ msgid "" "as a flexible server started via virtual terminals." msgstr "" -#: ../C/gdm.xml:4231 (para) +#: ../C/gdm.xml:4276 (para) msgid "" "The <command>gdmflexiserver --command</command> option provides a way to " "send commands to the GDM daemon and can be used to debug problems or to " "change the GDM configuration." msgstr "" -#: ../C/gdm.xml:4237 (para) +#: ../C/gdm.xml:4282 (para) msgid "" "In addition to the following options, <command>gdmflexiserver</command> also " "supports standard GNOME options." msgstr "" -#: ../C/gdm.xml:4247 (term) +#: ../C/gdm.xml:4292 (term) msgid "-c, --command=COMMAND" msgstr "" -#: ../C/gdm.xml:4249 (para) +#: ../C/gdm.xml:4294 (para) msgid "Send the specified protocol command to GDM" msgstr "Enviar el comando de protocolo especificado a GDM" -#: ../C/gdm.xml:4256 (term) +#: ../C/gdm.xml:4301 (term) msgid "-n, --xnest" msgstr "-n, --xnest" -#: ../C/gdm.xml:4258 (para) +#: ../C/gdm.xml:4303 (para) msgid "Start a flexible X server in Xnest mode" msgstr "" -#: ../C/gdm.xml:4265 (term) +#: ../C/gdm.xml:4310 (term) msgid "-l, --no-lock" msgstr "-l, --no-lock" -#: ../C/gdm.xml:4267 (para) +#: ../C/gdm.xml:4312 (para) msgid "Do not lock current screen" msgstr "No bloquear la pantalla actual" -#: ../C/gdm.xml:4274 (term) +#: ../C/gdm.xml:4319 (term) msgid "-d, --debug" msgstr "-d, --debug" -#: ../C/gdm.xml:4276 (para) +#: ../C/gdm.xml:4321 (para) msgid "" "Turns on debugging output which gets sent to syslog. Same as turning on " "debug in the configuration file." @@ -5337,19 +5443,19 @@ msgstr "" "Activar salida de depuraciĂłn para enviarla a syslog. Lo mismo que cuadno se " "activa la depuraciĂłn en el archivo de configuraciĂłn." -#: ../C/gdm.xml:4284 (term) +#: ../C/gdm.xml:4329 (term) msgid "-a, --authenticate" msgstr "-a, --authenticate" -#: ../C/gdm.xml:4286 (para) +#: ../C/gdm.xml:4331 (para) msgid "Authenticate before running --command" msgstr "Autenticar antes de ejecutar --command" -#: ../C/gdm.xml:4293 (term) +#: ../C/gdm.xml:4338 (term) msgid "-s, --startnew" msgstr "-s, --startnew" -#: ../C/gdm.xml:4295 (para) +#: ../C/gdm.xml:4340 (para) msgid "" "Starts a new flexible server without displaying a dialog asking the user if " "they wish to continue any existing sessions." @@ -5357,17 +5463,17 @@ msgstr "" "Inicia un servidor flexible nuevo sin mostrar un diálogo preguntando al " "usuario si quiere continuar cualquier sesiĂłn existente." -#: ../C/gdm.xml:4306 (title) ../C/gdm.xml:4324 +#: ../C/gdm.xml:4351 (title) ../C/gdm.xml:4369 msgid "<command>gdmdynamic</command> Command Line Options" msgstr "Opciones de lĂnea de comandos de <command>gdmdynamic</command>" -#: ../C/gdm.xml:4308 (para) +#: ../C/gdm.xml:4353 (para) msgid "" "The <command>gdmdynamic</command> command which creates, runs, and removes " "displays (X servers) on demand." msgstr "" -#: ../C/gdm.xml:4313 (para) +#: ../C/gdm.xml:4358 (para) msgid "" "Some environments need the ability to tell GDM to create and manage new " "displays on the fly, where it is not possible to list the possible displays " @@ -5377,44 +5483,46 @@ msgid "" "list all attached displays, or only attached displays that match a pattern." msgstr "" -#: ../C/gdm.xml:4329 (emphasis) +#: ../C/gdm.xml:4374 (emphasis) msgid "One of the following options can be used per instance:" msgstr "Una de las siguientes opciones pueden usarse por instancia:" -#: ../C/gdm.xml:4336 (term) +#: ../C/gdm.xml:4381 (term) +#, fuzzy msgid "-a display=server" -msgstr "" +msgstr "d nombre del display" -#: ../C/gdm.xml:4338 (para) +#: ../C/gdm.xml:4383 (para) msgid "" "Add a new display configuration. For example, <command>\"-a " "2=StandardServerTwo\"</command><command>\"-a 3=/usr/X11R6/bin/X -dev /dev/fb2" "\"</command>" msgstr "" -#: ../C/gdm.xml:4347 (term) +#: ../C/gdm.xml:4392 (term) msgid "-r" msgstr "" -#: ../C/gdm.xml:4349 (para) +#: ../C/gdm.xml:4394 (para) msgid "Release (run) all displays waiting in the DISPLAY_CONFIG state." msgstr "" -#: ../C/gdm.xml:4356 (term) +#: ../C/gdm.xml:4401 (term) +#, fuzzy msgid "-d display" -msgstr "" +msgstr "d nombre del display" -#: ../C/gdm.xml:4358 (para) +#: ../C/gdm.xml:4403 (para) msgid "" "Delete a display, killing the X server and purging the display " "configuration. For example, \"-d 3\"." msgstr "" -#: ../C/gdm.xml:4366 (term) +#: ../C/gdm.xml:4411 (term) msgid "-l [pattern]" msgstr "" -#: ../C/gdm.xml:4368 (para) +#: ../C/gdm.xml:4413 (para) msgid "" "List displays via the ATTACHED_SERVERS command. Without a pattern lists all " "attached displays. With a pattern will match using glob characters '*', '?', " @@ -5422,42 +5530,44 @@ msgid "" "*Xorg*\"</command>" msgstr "" -#: ../C/gdm.xml:4381 (emphasis) +#: ../C/gdm.xml:4426 (emphasis) msgid "These options can be added to the above:" msgstr "" -#: ../C/gdm.xml:4388 (term) +#: ../C/gdm.xml:4433 (term) msgid "-v" msgstr "" -#: ../C/gdm.xml:4390 (para) +#: ../C/gdm.xml:4435 (para) msgid "Verbose mode. Prinr diagnostic messages about each message sent to GDM." msgstr "" -#: ../C/gdm.xml:4398 (term) +#: ../C/gdm.xml:4443 (term) msgid "-b" msgstr "" -#: ../C/gdm.xml:4400 (para) +#: ../C/gdm.xml:4445 (para) msgid "Background mode. Fork child to do the work and return immediately." msgstr "" -#: ../C/gdm.xml:4409 (title) +#: ../C/gdm.xml:4454 (title) +#, fuzzy msgid "<command>gdmphotosetup</command> Command Line Options" -msgstr "" +msgstr "Opciones de lĂnea de comandos de <command>gdmdynamic</command>" -#: ../C/gdm.xml:4411 (para) +#: ../C/gdm.xml:4456 (para) msgid "" "Allows the user to select an image that will be used as the user's photo by " "GDM's face browser, if enabled by GDM. The selected file is stored as ~/." "face. This command accepts standard GNOME options." msgstr "" -#: ../C/gdm.xml:4419 (title) +#: ../C/gdm.xml:4464 (title) +#, fuzzy msgid "<command>gdmthemetester</command> Command Line Options" -msgstr "" +msgstr "Opciones de lĂnea de comandos de <command>gdmdynamic</command>" -#: ../C/gdm.xml:4421 (para) +#: ../C/gdm.xml:4466 (para) msgid "" "<command>gdmthemetester</command> takes two parameters. The first parameter " "specifies the environment and the second parameter specifies the path name " @@ -5476,22 +5586,24 @@ msgid "" " </screen>" msgstr "" -#: ../C/gdm.xml:4447 (title) +#: ../C/gdm.xml:4492 (title) +#, fuzzy msgid "GDM Root User Commands" -msgstr "" +msgstr "Comandos internos de GDM" -#: ../C/gdm.xml:4449 (para) +#: ../C/gdm.xml:4494 (para) msgid "" "The GDM package provides the following different commands in " "EXPANDED_SBINDIR intended to be used by the root user:" msgstr "" -#: ../C/gdm.xml:4455 (title) ../C/gdm.xml:4471 +#: ../C/gdm.xml:4500 (title) ../C/gdm.xml:4516 +#, fuzzy msgid "" "<command>gdm</command> and <command>gdm-binary</command> Command Line Options" -msgstr "" +msgstr "Opciones de lĂnea de comandos de <command>gdmdynamic</command>" -#: ../C/gdm.xml:4458 (para) +#: ../C/gdm.xml:4503 (para) msgid "" "The <command>gdm</command> command is really just a script which runs the " "<command>gdm-binary</command>, passing along any options. Before launching " @@ -5503,30 +5615,30 @@ msgid "" "environment before launching GDM, you can do so in this script." msgstr "" -#: ../C/gdm.xml:4475 (term) +#: ../C/gdm.xml:4520 (term) msgid "--help" msgstr "--help" -#: ../C/gdm.xml:4477 (para) +#: ../C/gdm.xml:4522 (para) msgid "Gives a brief overview of the command line options." msgstr "" -#: ../C/gdm.xml:4484 (term) +#: ../C/gdm.xml:4529 (term) msgid "-nodaemon" msgstr "-nodaemon" -#: ../C/gdm.xml:4486 (para) +#: ../C/gdm.xml:4531 (para) msgid "" "If this option is specified, then GDM does not fork into the background when " "run. You can use just a single dash with this option to preserve " "compatibility with XDM." msgstr "" -#: ../C/gdm.xml:4495 (term) +#: ../C/gdm.xml:4540 (term) msgid "--no-console" msgstr "--no-console" -#: ../C/gdm.xml:4497 (para) +#: ../C/gdm.xml:4542 (para) msgid "" "Tell the daemon that it should not run anything on the console. This means " "that none of the local servers from the <filename>[servers]</filename> " @@ -5535,37 +5647,37 @@ msgid "" "automatically implies this option." msgstr "" -#: ../C/gdm.xml:4509 (term) ../C/gdm.xml:4573 +#: ../C/gdm.xml:4554 (term) ../C/gdm.xml:4618 msgid "--config=CONFIGFILE" msgstr "--config=CONFIGFILE" -#: ../C/gdm.xml:4511 (para) +#: ../C/gdm.xml:4556 (para) msgid "Specify an alternative configuration file." msgstr "" -#: ../C/gdm.xml:4518 (term) +#: ../C/gdm.xml:4563 (term) msgid "--preserve-ld-vars" msgstr "--preserve-ld-vars" -#: ../C/gdm.xml:4520 (para) +#: ../C/gdm.xml:4565 (para) msgid "" "When clearing the environment internally, preserve all variables starting " "with LD_. This is mostly for debugging purposes." msgstr "" -#: ../C/gdm.xml:4528 (term) +#: ../C/gdm.xml:4573 (term) msgid "--version" msgstr "--version" -#: ../C/gdm.xml:4530 (para) +#: ../C/gdm.xml:4575 (para) msgid "Print the version of the GDM daemon." msgstr "" -#: ../C/gdm.xml:4537 (term) +#: ../C/gdm.xml:4582 (term) msgid "--wait-for-go" msgstr "--wait-for-go" -#: ../C/gdm.xml:4539 (para) +#: ../C/gdm.xml:4584 (para) msgid "" "If started with this option, gdm will init, but only start the first local " "display and then wait for a GO message in the fifo protocol. No greeter will " @@ -5577,11 +5689,12 @@ msgid "" "added in version 2.5.90.0." msgstr "" -#: ../C/gdm.xml:4557 (title) ../C/gdm.xml:4570 +#: ../C/gdm.xml:4602 (title) ../C/gdm.xml:4615 +#, fuzzy msgid "<command>gdmsetup</command> Command Line Options" -msgstr "" +msgstr "Opciones de lĂnea de comandos de <command>gdmdynamic</command>" -#: ../C/gdm.xml:4559 (para) +#: ../C/gdm.xml:4604 (para) msgid "" "<command>gdmsetup</command> runs a graphical application for modifying the " "GDM configuration file, gdm.conf. Normally on systems that support the PAM " @@ -5591,60 +5704,64 @@ msgid "" "application supports standard GNOME options." msgstr "" -#: ../C/gdm.xml:4575 (para) +#: ../C/gdm.xml:4620 (para) msgid "" "Specify an alternative configuration file. By default, <command>gdmsetup</" "command> will edit the same configuration file being used by the GDM daemon." msgstr "" -#: ../C/gdm.xml:4586 (title) +#: ../C/gdm.xml:4631 (title) +#, fuzzy msgid "<command>gdm-restart</command> Command Line Options" -msgstr "" +msgstr "Opciones de lĂnea de comandos de <command>gdmdynamic</command>" -#: ../C/gdm.xml:4588 (para) +#: ../C/gdm.xml:4633 (para) msgid "" "<command>gdm-restart</command> stops and restarts GDM by sending the GDM " "daemon a HUP signal. This command will immediately terminate all sessions " "and log out users currently logged in with GDM." msgstr "" -#: ../C/gdm.xml:4596 (title) +#: ../C/gdm.xml:4641 (title) +#, fuzzy msgid "<command>gdm-safe-restart</command> Command Line Options" -msgstr "" +msgstr "Opciones de lĂnea de comandos de <command>gdmdynamic</command>" -#: ../C/gdm.xml:4598 (para) +#: ../C/gdm.xml:4643 (para) msgid "" "<command>gdm-safe-restart</command> stops and restarts GDM by sending the " "GDM daemon a USR1 signal. GDM will be restarted as soon as all users log out." msgstr "" -#: ../C/gdm.xml:4606 (title) +#: ../C/gdm.xml:4651 (title) +#, fuzzy msgid "<command>gdm-stop</command> Command Line Options" -msgstr "" +msgstr "Opciones de lĂnea de comandos de <command>gdmdynamic</command>" -#: ../C/gdm.xml:4608 (para) +#: ../C/gdm.xml:4653 (para) msgid "" "<command>gdm-stop</command> stops GDM by sending the GDM daemon a TERM " "signal." msgstr "" -#: ../C/gdm.xml:4616 (title) +#: ../C/gdm.xml:4661 (title) msgid "GDM Internal Commands" msgstr "Comandos internos de GDM" -#: ../C/gdm.xml:4618 (para) +#: ../C/gdm.xml:4663 (para) msgid "" "The GDM package provides the following different commands in " "EXPANDED_LIBEXECDIR intended to be used by the gdm daemon process." msgstr "" -#: ../C/gdm.xml:4624 (title) +#: ../C/gdm.xml:4669 (title) +#, fuzzy msgid "" "<command>gdmchooser</command> and <command>gdmlogin</command> Command Line " "Options" -msgstr "" +msgstr "Opciones de lĂnea de comandos de <command>gdmdynamic</command>" -#: ../C/gdm.xml:4627 (para) +#: ../C/gdm.xml:4672 (para) msgid "" "The <command>gdmgreeter</command> and <command>gdmlogin</command> are two " "different login applications, either can be used by GDM. " @@ -5654,11 +5771,12 @@ msgid "" "GNOME options." msgstr "" -#: ../C/gdm.xml:4638 (title) ../C/gdm.xml:4649 +#: ../C/gdm.xml:4683 (title) ../C/gdm.xml:4694 +#, fuzzy msgid "<command>gdmchooser</command> Command Line Options" -msgstr "" +msgstr "Opciones de lĂnea de comandos de <command>gdmdynamic</command>" -#: ../C/gdm.xml:4640 (para) +#: ../C/gdm.xml:4685 (para) msgid "" "The <command>gdmchooser</command> is the XDMCP chooser application. The " "<command>gdmchooser</command> is normally executed by the GDM daemon. It " @@ -5666,39 +5784,39 @@ msgid "" "standard GNOME options and is found in support standard GNOME options." msgstr "" -#: ../C/gdm.xml:4652 (term) +#: ../C/gdm.xml:4697 (term) msgid "-xdmaddress=SOCKET" msgstr "-xdmaddress=SOCKET" -#: ../C/gdm.xml:4654 (para) +#: ../C/gdm.xml:4699 (para) msgid "Socket for XDM communication." msgstr "" -#: ../C/gdm.xml:4661 (term) +#: ../C/gdm.xml:4706 (term) msgid "--clientaddress=ADDRESS" msgstr "--clientaddress=ADDRESS" -#: ../C/gdm.xml:4663 (para) +#: ../C/gdm.xml:4708 (para) msgid "" "Client address to return in response to XDM. This option is for running " "gdmchooser with XDM, and is not used within GDM." msgstr "" -#: ../C/gdm.xml:4671 (term) +#: ../C/gdm.xml:4716 (term) msgid "-connectionType=TYPE" msgstr "-connectionType=TYPE" -#: ../C/gdm.xml:4673 (para) +#: ../C/gdm.xml:4718 (para) msgid "" "Connection type to return in response to XDM. This option is for running " "gdmchooser with XDM, and is not used within GDM." msgstr "" -#: ../C/gdm.xml:4687 (title) +#: ../C/gdm.xml:4732 (title) msgid "Themed Greeter" msgstr "Interfaz con temas" -#: ../C/gdm.xml:4689 (para) +#: ../C/gdm.xml:4734 (para) msgid "" "This section describes the creation of themes for the Themed Greeter. For " "examples including screenshots, see the standard installed themes and the " @@ -5706,11 +5824,11 @@ msgid "" "gdm_greeter/\"> the theme website</ulink>." msgstr "" -#: ../C/gdm.xml:4698 (title) +#: ../C/gdm.xml:4743 (title) msgid "Theme Overview" msgstr "DescripciĂłn de los temas" -#: ../C/gdm.xml:4700 (para) +#: ../C/gdm.xml:4745 (para) msgid "" "GDM Themes can be created by creating an XML file that follows the " "specification in gui/greeter/greeter.dtd. Theme files are stored in the " @@ -5720,7 +5838,7 @@ msgid "" "filename> which has similar format to other .desktop files and looks like:" msgstr "" -#: ../C/gdm.xml:4711 (screen) +#: ../C/gdm.xml:4756 (screen) #, no-wrap msgid "" "\n" @@ -5735,7 +5853,7 @@ msgid "" " " msgstr "" -#: ../C/gdm.xml:4722 (para) +#: ../C/gdm.xml:4767 (para) msgid "" "The Name, Description, Author and Copyright fields can be translated just " "like the other <filename>.desktop</filename>files. All the files that are " @@ -5746,7 +5864,7 @@ msgid "" "description will be given later." msgstr "" -#: ../C/gdm.xml:4732 (para) +#: ../C/gdm.xml:4777 (para) msgid "" "Once you have theme ready and installed you can test it with the installed " "<command>gdmthemetester</command> script. This script assumes that you also " @@ -5761,11 +5879,11 @@ msgid "" "would run:" msgstr "" -#: ../C/gdm.xml:4746 (command) +#: ../C/gdm.xml:4791 (command) msgid "gdmthemetester xdmcp circles" msgstr "" -#: ../C/gdm.xml:4748 (para) +#: ../C/gdm.xml:4793 (para) msgid "" "Be sure to test all the environments with your theme, and make sure to test " "how the caps lock warning looks by pressing caps lock. This is also a good " @@ -5774,7 +5892,7 @@ msgid "" "PrintScreen." msgstr "" -#: ../C/gdm.xml:4756 (para) +#: ../C/gdm.xml:4801 (para) msgid "" "Once you have all this done, then make a tarball that contains the directory " "name (so that you could just untar it in the <filename>/usr/share/gdm/" @@ -5786,15 +5904,16 @@ msgid "" " </screen>" msgstr "" -#: ../C/gdm.xml:4771 (title) +#: ../C/gdm.xml:4816 (title) msgid "Detailed Description of Theme XML format" msgstr "" -#: ../C/gdm.xml:4774 (title) +#: ../C/gdm.xml:4819 (title) +#, fuzzy msgid "Box Nodes" -msgstr "" +msgstr "Mostrar nodo." -#: ../C/gdm.xml:4776 (para) +#: ../C/gdm.xml:4821 (para) msgid "" "Box nodes are container nodes for item nodes. Box nodes are specified as " "follows: <screen>\n" @@ -5806,23 +5925,23 @@ msgid "" "of \"homogeneous\", and \"vertical\" for the orientation." msgstr "" -#: ../C/gdm.xml:4789 (para) +#: ../C/gdm.xml:4834 (para) msgid "" "If the box is homogeneous then the children are allocated equal amount of " "space." msgstr "" -#: ../C/gdm.xml:4794 (para) +#: ../C/gdm.xml:4839 (para) msgid "" "The \"min-width\" must be specified in pixels. Obviously there is also a " "corresponding \"min-height\" property as well." msgstr "" -#: ../C/gdm.xml:4801 (title) +#: ../C/gdm.xml:4846 (title) msgid "Fixed Nodes" msgstr "" -#: ../C/gdm.xml:4803 (para) +#: ../C/gdm.xml:4848 (para) msgid "" "Fixed is a container that has its children scattered about laid out with " "precise coordinates. The size of this container is the biggest rectangle " @@ -5831,71 +5950,71 @@ msgid "" "proper position nodes inside this." msgstr "" -#: ../C/gdm.xml:4812 (para) +#: ../C/gdm.xml:4857 (para) msgid "The \"toplevel\" node is really just like a fixed node." msgstr "" -#: ../C/gdm.xml:4818 (title) +#: ../C/gdm.xml:4863 (title) msgid "Item Nodes" msgstr "" -#: ../C/gdm.xml:4820 (para) +#: ../C/gdm.xml:4865 (para) msgid "" "A GDM Theme is created by specifying a hierarchy of item and box nodes. Item " "nodes can have the following value for \"type\":" msgstr "" -#: ../C/gdm.xml:4827 (term) +#: ../C/gdm.xml:4872 (term) msgid "entry" msgstr "entrada" -#: ../C/gdm.xml:4829 (para) +#: ../C/gdm.xml:4874 (para) msgid "Text entry field." msgstr "Campo de entrada de texto." -#: ../C/gdm.xml:4836 (term) +#: ../C/gdm.xml:4881 (term) msgid "list" msgstr "lista" -#: ../C/gdm.xml:4838 (para) +#: ../C/gdm.xml:4883 (para) msgid "A list widget." msgstr "Un widget de lista" -#: ../C/gdm.xml:4845 (term) +#: ../C/gdm.xml:4890 (term) msgid "label" msgstr "etiqueta" -#: ../C/gdm.xml:4847 (para) +#: ../C/gdm.xml:4892 (para) msgid "A text label. Must have a \"text\" node to specify the text." msgstr "" -#: ../C/gdm.xml:4854 (term) +#: ../C/gdm.xml:4899 (term) msgid "pixmap" msgstr "imagen" -#: ../C/gdm.xml:4856 (para) +#: ../C/gdm.xml:4901 (para) msgid "" "An pixmap image in a format that gdk-pixbuf supports like PNG, JPEG, Tiff, " "etc...)" msgstr "" -#: ../C/gdm.xml:4864 (term) +#: ../C/gdm.xml:4909 (term) msgid "rect" msgstr "rect" -#: ../C/gdm.xml:4866 (para) +#: ../C/gdm.xml:4911 (para) msgid "Rectangle." msgstr "Rectángulo." -#: ../C/gdm.xml:4873 (term) +#: ../C/gdm.xml:4918 (term) msgid "svg" msgstr "svg" -#: ../C/gdm.xml:4875 (para) +#: ../C/gdm.xml:4920 (para) msgid "Scaled Vector Graphic image." msgstr "Imagen Scaled Vector Graphic" -#: ../C/gdm.xml:4882 (para) +#: ../C/gdm.xml:4927 (para) msgid "" "For example: <screen><item type=\"label\"></screen> Items can specify " "ID values which gives them a specific look and feel or formatting. " @@ -5903,184 +6022,191 @@ msgid "" "with custom id's for some items (currently only the list item)" msgstr "" -#: ../C/gdm.xml:4891 (para) +#: ../C/gdm.xml:4936 (para) msgid "Entry items can have id values as follows:" msgstr "" -#: ../C/gdm.xml:4897 (term) +#: ../C/gdm.xml:4942 (term) msgid "user-pw-entry" msgstr "" -#: ../C/gdm.xml:4899 (para) +#: ../C/gdm.xml:4944 (para) msgid "" "Entry field for userid and password entry. This is the field used for " "responses for the PAM/GDM questions (Username, Password, etc..)." msgstr "" -#: ../C/gdm.xml:4909 (para) +#: ../C/gdm.xml:4954 (para) msgid "List items can have id values as follows:" msgstr "" -#: ../C/gdm.xml:4915 (term) +#: ../C/gdm.xml:4960 (term) msgid "userlist" msgstr "lista de usuarios" -#: ../C/gdm.xml:4917 (para) +#: ../C/gdm.xml:4962 (para) msgid "" "A Face Browser list, so that users can pick their username by clicking on " "this instead of typing." msgstr "" -#: ../C/gdm.xml:4926 (para) +#: ../C/gdm.xml:4971 (para) msgid "" "Furthermore, you can have an arbitrary id (I'd recommend starting the id " "with 'custom' not to conflict with future additions to this spec) and ask " "extra information of the user. See the section 'Custom Widgetry'" msgstr "" -#: ../C/gdm.xml:4933 (para) +#: ../C/gdm.xml:4978 (para) msgid "Label items can have id values as follows:" msgstr "" -#: ../C/gdm.xml:4939 (term) +#: ../C/gdm.xml:4984 (term) msgid "clock" msgstr "reloj" -#: ../C/gdm.xml:4941 (para) +#: ../C/gdm.xml:4986 (para) msgid "Label the displays the date and time." msgstr "Etiqueta que muesta la fecha y la hora." -#: ../C/gdm.xml:4948 (term) +#: ../C/gdm.xml:4993 (term) msgid "pam-prompt" msgstr "" -#: ../C/gdm.xml:4950 (para) +#: ../C/gdm.xml:4995 (para) msgid "" "Label the displays PAM prompt. This is the prompt that PAM uses to ask for " "username, password, etc..." msgstr "" -#: ../C/gdm.xml:4958 (term) +#: ../C/gdm.xml:5003 (term) +#, fuzzy msgid "pam-error" -msgstr "" +msgstr "Cameron" -#: ../C/gdm.xml:4960 (para) +#: ../C/gdm.xml:5005 (para) msgid "" "Label the displays PAM/GDM error messages. Such as when user can't log in." msgstr "" -#: ../C/gdm.xml:4968 (term) +#: ../C/gdm.xml:5013 (term) msgid "pam-message" msgstr "" -#: ../C/gdm.xml:4970 (para) +#: ../C/gdm.xml:5015 (para) msgid "" "Label the displays PAM message. These are messages that PAM/GDM gives about " "state of the account, help about the prompts and other information." msgstr "" -#: ../C/gdm.xml:4979 (term) +#: ../C/gdm.xml:5024 (term) +#, fuzzy msgid "timed-label" -msgstr "" +msgstr "etiqueta" -#: ../C/gdm.xml:4981 (para) +#: ../C/gdm.xml:5026 (para) msgid "Label that displays timed login information." msgstr "Etiqueta que muestra la informaciĂłn de la entrada temporizada." -#: ../C/gdm.xml:4988 (para) +#: ../C/gdm.xml:5033 (para) msgid "Rectangles can have id values as follows:" msgstr "" -#: ../C/gdm.xml:4994 (term) +#: ../C/gdm.xml:5039 (term) msgid "caps-lock-warning" msgstr "" -#: ../C/gdm.xml:4996 (para) +#: ../C/gdm.xml:5041 (para) msgid "" "Displays an icon that shows if the CAPS LOCK key is depressed. This " "rectangle will be hidden/shown appropriately" msgstr "" -#: ../C/gdm.xml:5005 (para) +#: ../C/gdm.xml:5050 (para) msgid "" "If an item is of type rect, the item can be a button. Buttons must also " "include a \"button\" value as follows: <screen><item type=\"rect\" id=" "\"disconnect_button\" button=\"true\">.</screen>" msgstr "" -#: ../C/gdm.xml:5011 (para) +#: ../C/gdm.xml:5056 (para) msgid "Possible values for button ids are as follows:" msgstr "" -#: ../C/gdm.xml:5017 (term) +#: ../C/gdm.xml:5062 (term) +#, fuzzy msgid "chooser_button" -msgstr "" +msgstr "ChooserButton" -#: ../C/gdm.xml:5019 (para) +#: ../C/gdm.xml:5064 (para) msgid "Runs the XDMCP chooser." msgstr "" -#: ../C/gdm.xml:5026 (term) +#: ../C/gdm.xml:5071 (term) +#, fuzzy msgid "config_button" -msgstr "" +msgstr "ConfiguraciĂłn" -#: ../C/gdm.xml:5028 (para) +#: ../C/gdm.xml:5073 (para) msgid "Runs the GDM configuration application." msgstr "Ejecuta la aplicaciĂłn de configuraciĂłn de GDM." -#: ../C/gdm.xml:5035 (term) +#: ../C/gdm.xml:5080 (term) +#, fuzzy msgid "disconnect_button" -msgstr "" +msgstr "botĂłn_sesiĂłn" -#: ../C/gdm.xml:5037 (para) +#: ../C/gdm.xml:5082 (para) msgid "Disconnect from remote session." msgstr "Desconectar de una sesiĂłn remota." -#: ../C/gdm.xml:5044 (term) +#: ../C/gdm.xml:5089 (term) msgid "language_button" msgstr "botĂłn_idioma" -#: ../C/gdm.xml:5046 (para) +#: ../C/gdm.xml:5091 (para) msgid "Displays the language selection dialog." msgstr "Muestra el diálogo de selecciĂłn del idioma." -#: ../C/gdm.xml:5053 (term) +#: ../C/gdm.xml:5098 (term) msgid "halt_button" msgstr "botĂłn_detener" -#: ../C/gdm.xml:5055 (para) +#: ../C/gdm.xml:5100 (para) +#, fuzzy msgid "Halt (shuts down) the system." -msgstr "" +msgstr "Suspender el sistema" -#: ../C/gdm.xml:5062 (term) +#: ../C/gdm.xml:5107 (term) msgid "reboot_button" msgstr "botĂłn reiniciar" -#: ../C/gdm.xml:5064 (para) +#: ../C/gdm.xml:5109 (para) msgid "Reboot the system." msgstr "Reiniciar el sistema" -#: ../C/gdm.xml:5071 (term) +#: ../C/gdm.xml:5116 (term) msgid "session_button" msgstr "botĂłn_sesiĂłn" -#: ../C/gdm.xml:5073 (para) +#: ../C/gdm.xml:5118 (para) +#, fuzzy msgid "List and select from available sessions." -msgstr "" +msgstr "Desconectar de una sesiĂłn remota." -#: ../C/gdm.xml:5080 (term) +#: ../C/gdm.xml:5125 (term) msgid "suspend_button" msgstr "botĂłn_suspender" -#: ../C/gdm.xml:5082 (para) +#: ../C/gdm.xml:5127 (para) msgid "Suspend the system." msgstr "Suspender el sistema" -#: ../C/gdm.xml:5089 (term) +#: ../C/gdm.xml:5134 (term) msgid "system_button" msgstr "botĂłn_sistema" -#: ../C/gdm.xml:5091 (para) +#: ../C/gdm.xml:5136 (para) msgid "" "Perform halt/reboot/suspend/etc. options (if allowed by GDM configuration). " "Also allows user to run configurator if user enters root password (again if " @@ -6088,25 +6214,26 @@ msgid "" "referred to as the Actions menu." msgstr "" -#: ../C/gdm.xml:5105 (title) +#: ../C/gdm.xml:5150 (title) +#, fuzzy msgid "Position Node" -msgstr "" +msgstr "PositionX" -#: ../C/gdm.xml:5107 (para) +#: ../C/gdm.xml:5152 (para) msgid "" "Each item can specify its position and size via the \"pos\" node. For " "example: <screen><pos x=\"0\" y=\"4\" width=\"100%\" height=\"100%\"/>" "</screen>" msgstr "" -#: ../C/gdm.xml:5113 (para) +#: ../C/gdm.xml:5158 (para) msgid "" "Both position and size can be given in percent and it will be taken as the " "percentage of the size of the current container. For toplevel items it's the " "percentage of the whole screen." msgstr "" -#: ../C/gdm.xml:5119 (para) +#: ../C/gdm.xml:5164 (para) msgid "" "For x and y, you can also specify a negative position which means position " "from the right or bottom edge. But this only applies with absolute " @@ -6114,7 +6241,7 @@ msgid "" "be still from the same edge." msgstr "" -#: ../C/gdm.xml:5126 (para) +#: ../C/gdm.xml:5171 (para) msgid "" "The position also specifies the anchor of the item, this can be \"n\", \"ne" "\", \"e\", \"se\", \"s\", \"sw\", \"w\" and \"nw\" or \"center\" which stand " @@ -6123,28 +6250,28 @@ msgid "" "></screen>" msgstr "" -#: ../C/gdm.xml:5133 (para) +#: ../C/gdm.xml:5178 (para) msgid "" "If the item contains a box, you can specify width and height to be \"box\" " "to mean that they are supposed to be the width and height of the box, that " "is the items in the box plus the padding." msgstr "" -#: ../C/gdm.xml:5139 (para) +#: ../C/gdm.xml:5184 (para) msgid "" "If the item contains an SVG image, you can specify width and height to be " "\"scale\" to mean that the SVG image should be scaled to fit the requested " "area." msgstr "" -#: ../C/gdm.xml:5145 (para) +#: ../C/gdm.xml:5190 (para) msgid "" "You can also specify an \"expand\" property to either be \"true\" or false. " "If true then the child will be expanded in the box as much as possible (that " "is it will be given more space if available)." msgstr "" -#: ../C/gdm.xml:5151 (para) +#: ../C/gdm.xml:5196 (para) msgid "" "There are two extra properties you can specify (as of 2.4.4.3) for labels " "(and labels only). The first is \"max-width\" which will specify the maximum " @@ -6157,182 +6284,182 @@ msgid "" " </screen>" msgstr "" -#: ../C/gdm.xml:5167 (title) +#: ../C/gdm.xml:5212 (title) msgid "Show Node" msgstr "Mostrar nodo." -#: ../C/gdm.xml:5169 (para) +#: ../C/gdm.xml:5214 (para) msgid "" "Some items may only display in certain modes, like when doing a remote " "display. Multiple values can be specified and must be separated with commas. " "The following values are possible:" msgstr "" -#: ../C/gdm.xml:5175 (para) +#: ../C/gdm.xml:5220 (para) msgid "<filename>console</filename> - In console mode." msgstr "" -#: ../C/gdm.xml:5178 (para) +#: ../C/gdm.xml:5223 (para) msgid "<filename>console-fixed</filename> - In console non-flexi mode." msgstr "" -#: ../C/gdm.xml:5181 (para) +#: ../C/gdm.xml:5226 (para) msgid "<filename>console-flexi</filename> - In console & flexi mode." msgstr "" -#: ../C/gdm.xml:5184 (para) +#: ../C/gdm.xml:5229 (para) msgid "<filename>flexi</filename> - In flexi mode." msgstr "" -#: ../C/gdm.xml:5187 (para) +#: ../C/gdm.xml:5232 (para) msgid "<filename>remote</filename> - In remote mode." msgstr "" -#: ../C/gdm.xml:5190 (para) +#: ../C/gdm.xml:5235 (para) msgid "<filename>remote-flexi</filename> - In remote & flexi mode." msgstr "" -#: ../C/gdm.xml:5194 (para) +#: ../C/gdm.xml:5239 (para) msgid "For example: <screen><show modes=\"flexi,remote\"/></screen>" msgstr "" -#: ../C/gdm.xml:5199 (para) +#: ../C/gdm.xml:5244 (para) msgid "" "You can also specify the \"type\" value to indicate that certain items " "should only be displayed if the type is true. Valid values include the " "following:" msgstr "" -#: ../C/gdm.xml:5205 (para) +#: ../C/gdm.xml:5250 (para) msgid "" "<filename>chooser</filename>, if ChooserButton is set to \"true\" in " "<filename>gdm.conf</filename> file." msgstr "" -#: ../C/gdm.xml:5209 (para) +#: ../C/gdm.xml:5254 (para) msgid "" "<filename>config</filename>, if ConfigAvailable is set to \"true\" in " "<filename>gdm.conf</filename> file." msgstr "" -#: ../C/gdm.xml:5213 (para) +#: ../C/gdm.xml:5258 (para) msgid "" "<filename>halt</filename>, if HaltDaemon is specified in <filename>gdm.conf</" "filename> file." msgstr "" -#: ../C/gdm.xml:5217 (para) +#: ../C/gdm.xml:5262 (para) msgid "" "<filename>reboot</filename>, if RebootCommand is specified in <filename>gdm." "conf</filename> file." msgstr "" -#: ../C/gdm.xml:5221 (para) +#: ../C/gdm.xml:5266 (para) msgid "" "<filename>suspend</filename>, if SuspendCommand is specified in " "<filename>gdm.conf</filename> file." msgstr "" -#: ../C/gdm.xml:5225 (para) +#: ../C/gdm.xml:5270 (para) msgid "" "<filename>system</filename>, if SystemMenu is specified in <filename>gdm." "conf</filename> file" msgstr "" -#: ../C/gdm.xml:5229 (para) +#: ../C/gdm.xml:5274 (para) msgid "" "<filename>timed</filename>, if TimedLoginEnabled is set to \"true\" in " "<filename>gdm.conf</filename> file." msgstr "" -#: ../C/gdm.xml:5234 (para) +#: ../C/gdm.xml:5279 (para) msgid "" "For example: <screen><show modes=\"console\" type=\"system\"/></screen>" msgstr "" -#: ../C/gdm.xml:5239 (para) +#: ../C/gdm.xml:5284 (para) msgid "" "Note that if SystemMenu is off then all of halt, reboot, suspend, chooser " "and config will not show, so this is a global toggle for them all. See some " "of the standard themes for how the show modes are used." msgstr "" -#: ../C/gdm.xml:5248 (title) +#: ../C/gdm.xml:5293 (title) msgid "Normal/Active/Prelight Nodes" msgstr "" -#: ../C/gdm.xml:5250 (para) +#: ../C/gdm.xml:5295 (para) msgid "" "Depending on the item type (except for userlist - refer to Color node " "below), it can specify its color, font, or image via the following tags:" msgstr "" -#: ../C/gdm.xml:5255 (para) +#: ../C/gdm.xml:5300 (para) msgid "<filename>normal</filename> - normal state." msgstr "" -#: ../C/gdm.xml:5258 (para) +#: ../C/gdm.xml:5303 (para) msgid "<filename>active</filename> - when the item has active focus." msgstr "" -#: ../C/gdm.xml:5261 (para) +#: ../C/gdm.xml:5306 (para) msgid "" "<filename>prelight</filename> - when the mouse is hovering over the item." msgstr "" -#: ../C/gdm.xml:5266 (para) +#: ../C/gdm.xml:5311 (para) msgid "" "When item is \"rect\" (alpha can be omitted and defaults to 0.0): " "<screen><normal color=\"#ffffff\" alpha=\"0.0\"></screen>" msgstr "" -#: ../C/gdm.xml:5271 (para) +#: ../C/gdm.xml:5316 (para) msgid "" "When item is \"label\": <screen><normal color=\"#ffffff\" font=\"Sans 14" "\"/></screen>" msgstr "" -#: ../C/gdm.xml:5276 (para) +#: ../C/gdm.xml:5321 (para) msgid "" "When the item type is \"pixmap\" or \"SVG\", then the normal, active, and " "prelight tags specify the images to use as follows: <screen><normal file=" "\"picture.png\" tint=\"#dddddd\"/></screen>" msgstr "" -#: ../C/gdm.xml:5282 (para) +#: ../C/gdm.xml:5327 (para) msgid "" "Note that relative pathnames are assumed to be in the same directory as the " "theme <filename>.xml</filename> file in <filename><share>/gdm/themes/" "<theme_name></filename>." msgstr "" -#: ../C/gdm.xml:5290 (title) +#: ../C/gdm.xml:5335 (title) msgid "Face Browser Icon/Label Color Nodes" msgstr "" -#: ../C/gdm.xml:5292 (para) +#: ../C/gdm.xml:5337 (para) msgid "" "If the item type is of userlist, then the background color for the icon and " "label can be set separately via the the following tag:" msgstr "" -#: ../C/gdm.xml:5298 (screen) +#: ../C/gdm.xml:5343 (screen) #, no-wrap msgid "<color iconcolor=\"#dddddd\" labelcolor=\"#ffffff\"/>" msgstr "" -#: ../C/gdm.xml:5303 (title) +#: ../C/gdm.xml:5348 (title) msgid "Text Node" msgstr "" -#: ../C/gdm.xml:5305 (para) +#: ../C/gdm.xml:5350 (para) msgid "" "Text tags are used by labels. They can be used to display localized text as " "follows (if the \"xml:lang\" attribute is omitted, the C locale is assumed): " "<screen><text xml:lang=\"fr\">Option</text></screen>" msgstr "" -#: ../C/gdm.xml:5312 (para) +#: ../C/gdm.xml:5357 (para) msgid "" "You can include pango markup in the text nodes for labels, however you must " "encode it. So for example to have the label of \"foo<sup>bar</" @@ -6340,11 +6467,11 @@ msgid "" "bar&lt;/sup&gt;</text></screen>" msgstr "" -#: ../C/gdm.xml:5322 (title) +#: ../C/gdm.xml:5367 (title) msgid "Stock" msgstr "Stock" -#: ../C/gdm.xml:5324 (para) +#: ../C/gdm.xml:5369 (para) msgid "" "Certain common localized labels can be specified via the stock tags. The " "\"text\" tag is ignored if the \"stock\" tag is used. You should really use " @@ -6353,76 +6480,76 @@ msgid "" "following values are valid:" msgstr "" -#: ../C/gdm.xml:5332 (para) +#: ../C/gdm.xml:5377 (para) msgid "<filename>cancel</filename>, _(\"_Cancel\")" msgstr "" -#: ../C/gdm.xml:5335 (para) +#: ../C/gdm.xml:5380 (para) msgid "<filename>caps-lock-warning</filename>, _(\"You've got capslock on!\")" msgstr "" -#: ../C/gdm.xml:5338 (para) +#: ../C/gdm.xml:5383 (para) msgid "<filename>chooser</filename>, _(\"_XDMCP Chooser\")" msgstr "" -#: ../C/gdm.xml:5341 (para) +#: ../C/gdm.xml:5386 (para) msgid "<filename>disconnect</filename>, _(\"D_isconnect\")" msgstr "" -#: ../C/gdm.xml:5344 (para) +#: ../C/gdm.xml:5389 (para) msgid "<filename>halt</filename>, _(\"Shut_down\")" msgstr "" -#: ../C/gdm.xml:5347 (para) +#: ../C/gdm.xml:5392 (para) msgid "<filename>language</filename>, _(\"_Language\")" msgstr "" -#: ../C/gdm.xml:5350 (para) +#: ../C/gdm.xml:5395 (para) msgid "<filename>ok</filename>, _(\"_OK\")" msgstr "" -#: ../C/gdm.xml:5353 (para) +#: ../C/gdm.xml:5398 (para) msgid "<filename>quit</filename>, _(\"_Quit\")" msgstr "" -#: ../C/gdm.xml:5356 (para) +#: ../C/gdm.xml:5401 (para) msgid "<filename>reboot</filename>, _(\"_Reboot\")" msgstr "" -#: ../C/gdm.xml:5359 (para) +#: ../C/gdm.xml:5404 (para) msgid "<filename>session</filename>, _(\"_Session\")" msgstr "" -#: ../C/gdm.xml:5362 (para) +#: ../C/gdm.xml:5407 (para) msgid "<filename>suspend</filename>, _(\"Sus_pend\")" msgstr "" -#: ../C/gdm.xml:5365 (para) +#: ../C/gdm.xml:5410 (para) msgid "<filename>system</filename>, _(\"_Actions\") (Formerly \"S_ystem\")" msgstr "" -#: ../C/gdm.xml:5368 (para) +#: ../C/gdm.xml:5413 (para) msgid "" "<filename>timed-label</filename>, _(\"User %s will login in %d seconds\")" msgstr "" -#: ../C/gdm.xml:5372 (para) +#: ../C/gdm.xml:5417 (para) msgid "<filename>username-label</filename>, _(\"Username:\")" msgstr "" -#: ../C/gdm.xml:5375 (para) +#: ../C/gdm.xml:5420 (para) msgid "<filename>welcome-label</filename>, _(\"Welcome to %h\")" msgstr "" -#: ../C/gdm.xml:5379 (para) +#: ../C/gdm.xml:5424 (para) msgid "For example: <screen><stock type=\"welcome-label\"/></screen>" msgstr "" -#: ../C/gdm.xml:5386 (title) +#: ../C/gdm.xml:5431 (title) msgid "Custom Widgetry" msgstr "" -#: ../C/gdm.xml:5388 (para) +#: ../C/gdm.xml:5433 (para) msgid "" "Currently there is one item which can be customizable and this is the list " "item. If you need to ask the user extra things, such as to pick from a list " @@ -6433,14 +6560,14 @@ msgid "" "<filename><list id>=<listitem id></filename>." msgstr "" -#: ../C/gdm.xml:5399 (para) +#: ../C/gdm.xml:5444 (para) msgid "" "For example suppose we are on display :0, <filename>ServAuthDir</filename> " "is <filename><var>/gdm</filename> and we have the following in the " "theme:" msgstr "" -#: ../C/gdm.xml:5405 (screen) +#: ../C/gdm.xml:5450 (screen) #, no-wrap msgid "" "\n" @@ -6456,17 +6583,17 @@ msgid "" " " msgstr "" -#: ../C/gdm.xml:5417 (para) +#: ../C/gdm.xml:5462 (para) msgid "" "Then if the user chooses 'Foo' then <filename><var>/gdm/:0." "GreeterInfo</filename> will contain: <screen>custom-config=foo</screen>" msgstr "" -#: ../C/gdm.xml:5427 (title) +#: ../C/gdm.xml:5472 (title) msgid "Accessibility" msgstr "Accesibilidad" -#: ../C/gdm.xml:5428 (para) +#: ../C/gdm.xml:5473 (para) msgid "" "GDM supports \"Accessible Login\" to allow users to log in to their desktop " "session even if they cannot easily use the screen, mouse, or keyboard in the " @@ -6480,11 +6607,11 @@ msgid "" "Greeter \"gdmlogin\"." msgstr "" -#: ../C/gdm.xml:5443 (title) +#: ../C/gdm.xml:5488 (title) msgid "Accessibility Configuration" msgstr "ConfiguraciĂłn de accesibilidad" -#: ../C/gdm.xml:5444 (para) +#: ../C/gdm.xml:5489 (para) msgid "" "In order to enable Accessible Login, the system administrator must make some " "changes to the default login configuration by manually modifying three human-" @@ -6492,26 +6619,26 @@ msgid "" "AccessDwellMouseEvents." msgstr "" -#: ../C/gdm.xml:5451 (para) +#: ../C/gdm.xml:5496 (para) msgid "" "In order to allow users to change the color and contrast scheme of the login " "dialog, make sure the \"AllowThemeChange\" parameter in gdm.conf is set to " "\"true\"." msgstr "" -#: ../C/gdm.xml:5457 (para) +#: ../C/gdm.xml:5502 (para) msgid "" "To restrict user changes to the visual appearance to a subset of available " "themes, the \"GtkThemesToAllow\" parameter in gdm.conf can be set to a list " "of acceptable themes separated by commas. For example:" msgstr "" -#: ../C/gdm.xml:5464 (screen) +#: ../C/gdm.xml:5509 (screen) #, no-wrap msgid "GtkThemesToAllow=HighContrast,HighContrastInverse" msgstr "" -#: ../C/gdm.xml:5466 (para) +#: ../C/gdm.xml:5511 (para) msgid "" "To enable the use of assistive technologies such as the Onscreen Keyboard, " "Screen Reader, or Magnifier, the \"AddGtkModules\" parameter in gdm.conf " @@ -6519,12 +6646,12 @@ msgid "" "parameter must be uncommented and set as follows:" msgstr "" -#: ../C/gdm.xml:5474 (screen) +#: ../C/gdm.xml:5519 (screen) #, no-wrap msgid "GtkModulesList=gail:atk-bridge:dwellmouselistener:keymouselistener" msgstr "" -#: ../C/gdm.xml:5476 (para) +#: ../C/gdm.xml:5521 (para) msgid "" "System administrators may wish to load only the minimum subset of these " "modules which is required to support their user base. Depending on the end-" @@ -6539,7 +6666,7 @@ msgid "" "optimum accessibility we recommend including gail and atk-bridge." msgstr "" -#: ../C/gdm.xml:5492 (para) +#: ../C/gdm.xml:5537 (para) msgid "" "Once \"keymouselistener\" and/or \"dwellmouselistener\" have been added to " "the GtkModules loaded by GDM, you can assign end-user actions with the " @@ -6548,7 +6675,7 @@ msgid "" "respectively. The gesture format is described in the two configuration files." msgstr "" -#: ../C/gdm.xml:5501 (para) +#: ../C/gdm.xml:5546 (para) msgid "" "The AccessKeyMouseEvents file controls the keymouselistener Gesture Listener " "and is used to define key-press, mouse button, or XInput device sequences " @@ -6557,7 +6684,7 @@ msgid "" "associated with multiple switch presses and/or minimum durations." msgstr "" -#: ../C/gdm.xml:5510 (para) +#: ../C/gdm.xml:5555 (para) msgid "" "The DwellKeyMouseEvents file controls the dwellmouselistner and supports " "gestures that involve only motion of a pointing device such as the system " @@ -6567,7 +6694,7 @@ msgid "" "alternate input device." msgstr "" -#: ../C/gdm.xml:5520 (para) +#: ../C/gdm.xml:5565 (para) msgid "" "Motion gestures are defined as \"crossing events\" into and out of the login " "dialog window. If the 'dwellmouselistener' GtkModule is loaded, alternative " @@ -6575,14 +6702,14 @@ msgid "" "motion from alternative devices results in movement of the onscreen pointer." msgstr "" -#: ../C/gdm.xml:5528 (para) +#: ../C/gdm.xml:5573 (para) msgid "" "In order to use text-to-speech services at login time (for instance, when " "using the Screen Reader in speech mode) on some operating systems, the GDM " "user must be made a member of the \"audio\" group" msgstr "" -#: ../C/gdm.xml:5535 (para) +#: ../C/gdm.xml:5580 (para) msgid "" "There are some issues that cause some users to have problems getting the " "gesture listeners to work. It is recommended that people use GDM version " @@ -6598,11 +6725,12 @@ msgid "" "recognize them." msgstr "" -#: ../C/gdm.xml:5553 (title) +#: ../C/gdm.xml:5598 (title) +#, fuzzy msgid "Accessibility Login Sound Configuration" -msgstr "" +msgstr "ConfiguraciĂłn de accesibilidad" -#: ../C/gdm.xml:5554 (para) +#: ../C/gdm.xml:5599 (para) msgid "" "By default, gdm requires a media application such as \"sox\" to be present " "to play login sounds. GDM defaults the location of this application to " @@ -6611,22 +6739,22 @@ msgid "" "option in <filename>gdm.conf</filename>." msgstr "" -#: ../C/gdm.xml:5566 (title) +#: ../C/gdm.xml:5611 (title) msgid "Solaris Specific Features" msgstr "CaracterĂsticas especĂficas de Solaris" -#: ../C/gdm.xml:5568 (para) +#: ../C/gdm.xml:5613 (para) msgid "GDM supports a few features specific to Solaris, as follows:" msgstr "" "GDM soporta unas pocas caracterĂsticas especĂficas a Solaris, como las " "siguientes:" -#: ../C/gdm.xml:5572 (para) +#: ../C/gdm.xml:5617 (para) msgid "GDM supports Solaris Auditing if running on Solaris 10 or higher." msgstr "" "GDM soporta Solaris Auditing si se ejecuta sobre Solaris 10 o superior." -#: ../C/gdm.xml:5576 (para) +#: ../C/gdm.xml:5621 (para) msgid "" "GDM supports a security feature which causes the Xserver to run as the user " "instead of as the root user. GDM must be using PAM for this feature to be " @@ -6635,7 +6763,7 @@ msgid "" "disables the AlwaysRestartServer gdm.conf configuration option." msgstr "" -#: ../C/gdm.xml:5585 (para) +#: ../C/gdm.xml:5630 (para) msgid "" "Solaris supports the <filename>/etc/default/login</filename> interface, " "which affects the <filename>DefaultPath</filename>, <filename>RootPath</" @@ -6644,11 +6772,11 @@ msgid "" "Configuration section." msgstr "" -#: ../C/gdm.xml:5597 (title) +#: ../C/gdm.xml:5642 (title) msgid "Example Configurations" msgstr "Configuraciones de ejemplo" -#: ../C/gdm.xml:5599 (para) +#: ../C/gdm.xml:5644 (para) msgid "" "This section has some example configurations that are useful for various " "setups." @@ -6656,18 +6784,18 @@ msgstr "" "Esta secciĂłn tiene algunas configuraciones de ejemplo que son Ăştiles para " "varias configuraciones." -#: ../C/gdm.xml:5605 (title) +#: ../C/gdm.xml:5650 (title) msgid "Terminal Lab With One Server" msgstr "" -#: ../C/gdm.xml:5607 (para) +#: ../C/gdm.xml:5652 (para) msgid "" "Suppose you want to make a lab full of X terminals that all connect to one " "main server. So let's call one X terminal <filename>xterminal</filename> and " "lets call the server <filename>appserver</filename>. You install GDM on both." msgstr "" -#: ../C/gdm.xml:5614 (para) +#: ../C/gdm.xml:5659 (para) msgid "" "On <filename>appserver</filename> you enable XDMCP, so you have <screen>\n" "[xdmcp]\n" @@ -6676,7 +6804,7 @@ msgid "" "<filename>[servers]</filename> section empty." msgstr "" -#: ../C/gdm.xml:5624 (para) +#: ../C/gdm.xml:5669 (para) msgid "" "On the <filename>xterminal</filename> you disable XDMCP (you don't want " "anyone to connect to the xterminal really). You will add a server type " @@ -6698,11 +6826,11 @@ msgid "" "<filename>appserver</filename>." msgstr "" -#: ../C/gdm.xml:5652 (title) +#: ../C/gdm.xml:5697 (title) msgid "Terminal Lab With Two Or More Servers" msgstr "" -#: ../C/gdm.xml:5654 (para) +#: ../C/gdm.xml:5699 (para) msgid "" "Suppose you want to make a lab full of X terminals that all connect to some " "choice of servers. For now let's make it <filename>appserverone</filename> " @@ -6713,7 +6841,7 @@ msgid "" "choosers locally on the X terminals." msgstr "" -#: ../C/gdm.xml:5665 (para) +#: ../C/gdm.xml:5710 (para) msgid "" "So on the <filename>xterminal</filename> you again disable XDMCP. You will " "add a server type perhaps called <filename>Chooser</filename> as follows: " @@ -6733,7 +6861,7 @@ msgid "" " </screen>" msgstr "" -#: ../C/gdm.xml:5687 (para) +#: ../C/gdm.xml:5732 (para) msgid "" "The XDMCP chooser on the X terminal will normally give a broadcast query to " "see which servers exist on the network. If the two servers are not reachable " @@ -6743,7 +6871,7 @@ msgid "" "wish the users to be able to connect to." msgstr "" -#: ../C/gdm.xml:5697 (para) +#: ../C/gdm.xml:5742 (para) msgid "" "Sometimes you may want to run the chooser on the server side however. Then " "what you want to do is to run a configuration similar to the previous " @@ -6761,11 +6889,11 @@ msgid "" "terminals." msgstr "" -#: ../C/gdm.xml:5721 (title) +#: ../C/gdm.xml:5766 (title) msgid "License" msgstr "" -#: ../C/gdm.xml:5722 (para) +#: ../C/gdm.xml:5767 (para) msgid "" "This program is free software; you can redistribute it and/or modify it " "under the terms of the <ulink type=\"help\" url=\"gnome-help:gpl" @@ -6774,7 +6902,7 @@ msgid "" "option) any later version." msgstr "" -#: ../C/gdm.xml:5730 (para) +#: ../C/gdm.xml:5775 (para) msgid "" "This program is distributed in the hope that it will be useful, but WITHOUT " "ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or " @@ -6782,7 +6910,7 @@ msgid "" "License</citetitle> for more details." msgstr "" -#: ../C/gdm.xml:5736 (para) +#: ../C/gdm.xml:5781 (para) msgid "" "A copy of the <citetitle>GNU General Public License</citetitle> is included " "as an appendix to the <citetitle>GNOME Users Guide</citetitle>. You may also " diff --git a/docs/es/gdm.xml b/docs/es/gdm.xml index 77be2c5b..965e4e7c 100644 --- a/docs/es/gdm.xml +++ b/docs/es/gdm.xml @@ -1765,6 +1765,8 @@ FLEXI_XSERVER FLEXI_XNEST ATTACHED_SERVERS ALL_SERVERS +GET_SERVER_LIST +GET_SERVER_DETAILS GET_CONFIG GET_CONFIG_FILE UPDATE_CONFIG @@ -1973,7 +1975,7 @@ Answers: <sect3 id="allservers"> <title>ALL_SERVERS</title> <screen> -ALL_SERVERS: List all servers, including console, remote, xnest. +ALL_SERVERS: List all displays, including console, remote, xnest. This can, for example, be useful to figure out if the server you are on is managed by the gdm daemon, by seeing if it is in the list. It is also somewhat @@ -1994,6 +1996,49 @@ Answers: </screen> </sect3> + <sect3 id="getserverlist"> + <title>GET_SERVER_LIST</title> + <screen> +GET_SERVER_LIST: Get a list of the server sections from + the configuration file. +Supported since: 2.13.0.4 +Arguments: None +Answers: + OK <value>;<value>;... + ERROR <err number> <english error description> + 0 = Not implemented + 1 = No servers found + 50 = Unsupported key + 200 = Too many messages + 999 = Unknown error + </screen> + </sect3> + + <sect3 id="getserverdetails"> + <title>GET_SERVER_DETAILS</title> + <screen> +GET_SERVER_DETAILS: Get detail information for a specific + server. Key values include: + NAME - Returns the server name + COMMAND - Returns the server command + FLEXIBLE - Returns "true" if flexible, "false" otherwise + CHOOSABLE - Returns "true" if choosable, "false" otherwise + HANDLED - Returns "true" if handled, "false" otherwise + CHOOSER - Returns "true" if chooser, "false" otherwise +Supported since: 2.13.0.4 +Arguments: <server> <key> +Answers: + OK <value> + ERROR <err number> <english error description> + 0 = Not implemented + 1 = Server not found + 2 = Key not valid + 50 = Unsupported key + 200 = Too many messages + 999 = Unknown error + </screen> + </sect3> + <sect3 id="getconfig"> <title>GET_CONFIG</title> <screen> diff --git a/gui/Makefile.am b/gui/Makefile.am index 912d3a53..182cb42a 100644 --- a/gui/Makefile.am +++ b/gui/Makefile.am @@ -85,6 +85,11 @@ gdmlogin_SOURCES = \ gdmsetup_SOURCES = \ gdmsetup.c +# Many GUI programs still require LIBGNOME because they need +# gnome_program_locate_file which is in the ve_find_file () +# interface in vicious-extensions/ve-gnome.c. Fixing this +# function should remove libgnome as a GDM dependency. +# gdmchooser_LDFLAGS = -export-dynamic gdmchooser_LDADD = \ $(EXTRA_CHOOSER_LIBS) \ @@ -119,10 +124,13 @@ gdmlogin_LDADD = \ $(GDK_LIBS) \ $(PANGO_LIBS) \ $(GDKPIXBUF_LIBS) \ - $(LIBGNOME_LIBS) \ - $(LIBGNOMEUI_LIBS) \ $(top_builddir)/vicious-extensions/libviciousui-minimal.a +# LIBGNOMEUI should be removed from gdmsetup at some point. +# It is needed because it uses gnome_help_display_uri(), which +# should be replaced at some point. +# +gdmsetup_CFLAGS = $(LIBGNOMEUI_CFLAGS) gdmsetup_LDFLAGS = -export-dynamic gdmsetup_LDADD = \ libgdmcommon.a \ @@ -135,9 +143,8 @@ gdmsetup_LDADD = \ $(PANGO_LIBS) \ $(GDK_LIBS) \ $(GDKPIXBUF_LIBS) \ - $(LIBGNOME_LIBS) \ - $(LIBGNOMEUI_LIBS) \ $(EXTRA_SETUP_LIBS) \ + $(LIBGNOMEUI_LIBS) \ $(top_builddir)/vicious-extensions/libviciousui-gnome.a gdmphotosetup_LDADD = \ @@ -148,9 +155,8 @@ gdmphotosetup_LDADD = \ $(GOBJECT_LIBS) \ $(GDK_LIBS) \ $(GDKPIXBUF_LIBS) \ - $(LIBGNOME_LIBS) \ - $(LIBGNOMEUI_LIBS) \ $(INTLLIBS) \ + $(LIBGNOME_LIBS) \ $(top_builddir)/vicious-extensions/libviciousui-gnome.a gdmXnestchooser_LDADD = \ @@ -158,26 +164,26 @@ gdmXnestchooser_LDADD = \ $(GUI_LIBS) \ -lXau \ -lX11 \ + -lpopt \ $(INTLLIBS) \ $(GLIB_LIBS) \ $(GOBJECT_LIBS) \ $(GDK_LIBS) \ - $(LIBGNOME_LIBS) \ - $(LIBGNOMEUI_LIBS) \ $(EXTRA_XNEST_LIBS) \ + $(LIBGNOME_LIBS) \ $(top_builddir)/vicious-extensions/libviciousui-gnome.a gdmflexiserver_LDADD = \ libgdmcommon.a \ $(GUI_LIBS) \ -lXau \ + -lpopt \ $(INTLLIBS) \ $(GLIB_LIBS) \ $(GOBJECT_LIBS) \ $(GDK_LIBS) \ - $(LIBGNOME_LIBS) \ - $(LIBGNOMEUI_LIBS) \ $(EXTRA_FLEXI_LIBS) \ + $(LIBGNOME_LIBS) \ $(top_builddir)/vicious-extensions/libviciousui-gnome.a gdmdynamic_LDADD = \ @@ -188,9 +194,8 @@ gdmdynamic_LDADD = \ $(GLIB_LIBS) \ $(GOBJECT_LIBS) \ $(GDK_LIBS) \ - $(LIBGNOME_LIBS) \ - $(LIBGNOMEUI_LIBS) \ $(EXTRA_DYNAMIC_LIBS) \ + $(LIBGNOME_LIBS) \ $(top_builddir)/vicious-extensions/libviciousui-gnome.a Settingsdir = $(datadir)/applications diff --git a/gui/gdmcomm.c b/gui/gdmcomm.c index 2a438cd0..2fc6891b 100644 --- a/gui/gdmcomm.c +++ b/gui/gdmcomm.c @@ -112,8 +112,18 @@ char * gdmcomm_call_gdm (const char *command, const char * auth_cookie, const char *min_version, int tries) { static int fd = 0; + static int num_cmds = 0; char *ret; + if (num_cmds == (GDM_SUP_MAX_CONNECTIONS - 1)) { + do_command (fd, GDM_SUP_CLOSE, FALSE); + VE_IGNORE_EINTR (close (fd)); + fd = 0; + num_cmds = 0; + } + + num_cmds++; + if (tries <= 0) return NULL; @@ -148,9 +158,6 @@ gdmcomm_call_gdm (const char *command, const char * auth_cookie, const char *min } if ( ! version_ok_p (&ret[4], min_version)) { g_free (ret); -/* - do_command (fd, GDM_SUP_CLOSE, FALSE); -*/ VE_IGNORE_EINTR (close (fd)); fd = 0; return NULL; @@ -172,10 +179,6 @@ gdmcomm_call_gdm (const char *command, const char * auth_cookie, const char *min } /* not auth'ed */ if (strcmp (ret, "OK") != 0) { -/* - do_command (fd, GDM_SUP_CLOSE, - FALSE); -*/ VE_IGNORE_EINTR (close (fd)); fd = 0; /* returns the error */ @@ -191,10 +194,6 @@ gdmcomm_call_gdm (const char *command, const char * auth_cookie, const char *min return gdmcomm_call_gdm (command, auth_cookie, min_version, tries - 1); } -/* - do_command (fd, GDM_SUP_CLOSE, FALSE); -*/ - return ret; } diff --git a/gui/gdmconfig.c b/gui/gdmconfig.c index ffd0d3fc..2adaeb40 100644 --- a/gui/gdmconfig.c +++ b/gui/gdmconfig.c @@ -116,10 +116,131 @@ gdm_config_get_result (gchar *key) result = gdmcomm_call_gdm (command, NULL /* auth cookie */, "2.13.0.1", 5); + g_free (command); g_free (newkey); return result; } + +/** + * gdm_config_get_xserver_details + * + * Calls daemon to get details for an xserver config. + */ +static gchar * +gdm_config_get_xserver_details (gchar *xserver, gchar *key) +{ + gchar *command = NULL; + gchar *result = NULL; + gchar *temp; + + command = g_strdup_printf ("GET_SERVER_DETAILS %s %s", xserver, key); + result = gdmcomm_call_gdm (command, NULL /* auth cookie */, + "2.13.0.1", 5); + + g_free (command); + + if (! result || ve_string_empty (result) || + strncmp (result, "OK ", 3) != 0) { + + if (using_syslog) + syslog (LOG_ERR, "Could not access xserver configuration"); + else + printf ("Could not access xserver configuration"); + + if (result) + g_free (result); + return NULL; + } + + /* skip the "OK " */ + temp = g_strdup (result + 3); + g_free (result); + + return temp; +} + +/** + * gdm_config_get_xservers + * + * Calls daemon to get xserver config. + */ +GSList * +gdm_config_get_xservers (gboolean flexible) +{ + GSList *xservers = NULL; + gchar *p; + gchar **splitstr, **sec; + gchar *command = NULL; + gchar *result = NULL; + gchar *temp; + gboolean tempbool; + + command = g_strdup_printf ("GET_SERVER_LIST"); + result = gdmcomm_call_gdm (command, NULL /* auth cookie */, + "2.13.0.1", 5); + + g_free (command); + + if (! result || ve_string_empty (result) || + strncmp (result, "OK ", 3) != 0) { + + if (using_syslog) + syslog (LOG_ERR, "Could not access xserver configuration"); + else + printf ("Could not access xserver configuration"); + + if (result) + g_free (result); + return NULL; + } + + /* skip the "OK " */ + splitstr = g_strsplit (result + 3, ";", 0); + sec = splitstr; + g_free (result); + + while (*sec != NULL) { + GdmXserver *svr = g_new0 (GdmXserver, 1); + + svr->name = gdm_config_get_xserver_details (*sec, "NAME"); + svr->id = g_strdup_printf ("server-%s", *sec); + svr->command = gdm_config_get_xserver_details (*sec, "COMMAND"); + + temp = gdm_config_get_xserver_details (*sec, "FLEXIBLE"); + if (g_strncasecmp (temp, "true", 4) == 0) + svr->flexible = TRUE; + else + svr->flexible = FALSE; + temp = gdm_config_get_xserver_details (*sec, "CHOOSABLE"); + if (g_strncasecmp (temp, "true", 4) == 0) + svr->choosable = TRUE; + else + svr->choosable = FALSE; + temp = gdm_config_get_xserver_details (*sec, "HANDLED"); + if (g_strncasecmp (temp, "true", 4) == 0) + svr->handled = TRUE; + else + svr->handled = FALSE; + temp = gdm_config_get_xserver_details (*sec, "CHOOSER"); + if (g_strncasecmp (temp, "true", 4) == 0) + svr->chooser = TRUE; + else + svr->chooser = FALSE; + + sec++; + + /* If only flexible was requested, then skip if not flexible */ + if (flexible && !svr->flexible) + continue; + + xservers = g_slist_append (xservers, svr); + } + + g_strfreev (splitstr); + return xservers; +} + /** * gdm_config_get_string * diff --git a/gui/gdmconfig.h b/gui/gdmconfig.h index 04e12b65..5c92da15 100644 --- a/gui/gdmconfig.h +++ b/gui/gdmconfig.h @@ -43,5 +43,6 @@ void gdm_set_servauth (gchar *file, gchar *id); char * gdm_get_theme_greeter (gchar *file, const char *fallback); +GSList * gdm_config_get_xservers (gboolean flexible); #endif /* GDMCONFIG_H */ diff --git a/gui/gdmflexiserver.c b/gui/gdmflexiserver.c index 3ddcd838..5af20cb4 100644 --- a/gui/gdmflexiserver.c +++ b/gui/gdmflexiserver.c @@ -25,6 +25,7 @@ #include <stdio.h> #include <unistd.h> #include <stdio.h> +#include <popt.h> #include <sys/types.h> #include <signal.h> #include <sys/socket.h> @@ -36,8 +37,6 @@ #include <glib/gi18n.h> #include <gdk/gdkx.h> #include <gtk/gtk.h> -#include <libgnome/libgnome.h> /* for gnome_config */ -#include <libgnomeui/libgnomeui.h> /* for gnome_program */ #include "gdm.h" #include "gdmcomm.h" @@ -533,60 +532,19 @@ check_for_users (void) static void read_servers (gchar *config_file) { - gpointer iter; - gchar *config_sections; - char *k; - - /* Find server definitions */ - config_sections = g_strdup_printf ("=%s=/", config_file); - iter = gnome_config_init_iterator_sections (config_sections); - iter = gnome_config_iterator_next (iter, &k, NULL); - - while (iter) { - if (strncmp (k, "server-", strlen ("server-")) == 0) { - char *section; - GdmXserver *svr; - - section = g_strdup_printf ("=%s=/%s/", config_file, k); - gnome_config_push_prefix (section); - - if ( ! gnome_config_get_bool - (GDM_KEY_SERVER_FLEXIBLE)) { - gnome_config_pop_prefix (); - g_free (section); - g_free (k); - iter = gnome_config_iterator_next (iter, - &k, NULL); - continue; - } - - svr = g_new0 (GdmXserver, 1); - - svr->id = g_strdup (k + strlen ("server-")); - svr->name = gnome_config_get_string - (GDM_KEY_SERVER_NAME); - svr->command = gnome_config_get_string - (GDM_KEY_SERVER_COMMAND); - svr->flexible = TRUE; - svr->choosable = gnome_config_get_bool - (GDM_KEY_SERVER_CHOOSABLE); - - g_free (section); - gnome_config_pop_prefix (); - - if (strcmp (svr->id, GDM_STANDARD) == 0) - got_standard = TRUE; + GSList *li; - if (server != NULL && - strcmp (svr->id, server) == 0) - chosen_server = g_strdup (svr->id); + xservers = gdm_config_get_xservers (TRUE); - xservers = g_slist_append (xservers, svr); - } + for (li = xservers; li != NULL; li = li->next) { + GdmXserver *svr = li->data; - g_free (k); + if (strcmp (svr->id, GDM_STANDARD) == 0) + got_standard = TRUE; - iter = gnome_config_iterator_next (iter, &k, NULL); + if (server != NULL && + strcmp (svr->id, server) == 0) + chosen_server = g_strdup (svr->id); } } @@ -750,20 +708,15 @@ main (int argc, char *argv[]) const char *message; poptContext ctx; const char **args; - GnomeProgram *program; + int nextopt; bindtextdomain (GETTEXT_PACKAGE, GNOMELOCALEDIR); bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8"); textdomain (GETTEXT_PACKAGE); - program = gnome_program_init ("gdmflexiserver", VERSION, - LIBGNOMEUI_MODULE /* module_info */, - argc, argv, - GNOME_PARAM_POPT_TABLE, options, - NULL); - g_object_get (G_OBJECT (program), - GNOME_PARAM_POPT_CONTEXT, &ctx, - NULL); + gtk_init(&argc, &argv); + ctx = poptGetContext(NULL, argc, (const char**)argv, options, 0); + while ((nextopt = poptGetNextOpt(ctx)) > 0 || nextopt == POPT_ERROR_BADOPT); if (monte_carlo_pi) { calc_pi (); diff --git a/gui/gdmsetup.c b/gui/gdmsetup.c index 5607c6cf..d80ee6d3 100644 --- a/gui/gdmsetup.c +++ b/gui/gdmsetup.c @@ -17,16 +17,13 @@ */ #include <config.h> -#include <libgnome/libgnome.h> -#include <libgnomeui/libgnomeui.h> -#include <gdk/gdkx.h> -#include <glade/glade.h> #include <stdio.h> #include <stdlib.h> #include <dirent.h> #include <string.h> #include <unistd.h> #include <signal.h> +#include <popt.h> #include <sys/socket.h> #include <sys/types.h> #include <sys/stat.h> @@ -35,6 +32,17 @@ #include <X11/Xlib.h> #include <X11/Xatom.h> +#include <gtk/gtk.h> +#include <gdk/gdkx.h> +#include <glade/glade.h> +#include <glib/gi18n.h> +/* + * libgnomeui is needed for gnome_help_display_uri (), once we find a way + * to replace this function, we can completely get rid of libgnomeui from + * GDM + */ +#include <libgnomeui-2.0/gnome.h> + #include "vicious.h" #include "viciousui.h" @@ -328,13 +336,14 @@ toggle_timeout (GtkWidget *toggle) const char *key = g_object_get_data (G_OBJECT (toggle), "key"); const char *notify_key = g_object_get_data (G_OBJECT (toggle), "notify_key"); - VeConfig *config = ve_config_get (config_file); - gboolean val = ve_config_get_bool (config, key); + gboolean val = gdm_config_get_bool ((gchar *)key); if ( ! ve_bool_equal (val, GTK_TOGGLE_BUTTON (toggle)->active)) { - ve_config_set_bool (config, key, + VeConfig *cfg = ve_config_get (config_file); + + ve_config_set_bool (cfg, key, GTK_TOGGLE_BUTTON (toggle)->active); - ve_config_save (config, FALSE /* force */); + ve_config_save (cfg, FALSE /* force */); update_key (notify_key); } @@ -346,11 +355,10 @@ static gboolean logo_toggle_timeout (GtkWidget *toggle) { const char *key = g_object_get_data (G_OBJECT (toggle), "key"); - VeConfig *config; - GtkWidget *chooserbutton; - gchar *filename; + VeConfig *cfg = ve_config_get (config_file); + GtkWidget *chooserbutton; + gchar *filename; - config = ve_config_get (config_file); chooserbutton = glade_helper_get (xml, "local_logo_image_chooserbutton", GTK_TYPE_FILE_CHOOSER_BUTTON); @@ -358,17 +366,17 @@ logo_toggle_timeout (GtkWidget *toggle) filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (chooserbutton)); if ((GTK_TOGGLE_BUTTON (toggle)->active) == FALSE) { - ve_config_set_string (config, GDM_KEY_CHOOSER_BUTTON_LOGO, filename); - ve_config_set_string (config, key, ""); - ve_config_save (config, FALSE); + ve_config_set_string (cfg, GDM_KEY_CHOOSER_BUTTON_LOGO, filename); + ve_config_set_string (cfg, key, ""); + ve_config_save (cfg, FALSE); update_key (key); update_greeters (); } else if (filename != NULL) { - ve_config_set_string (config, GDM_KEY_CHOOSER_BUTTON_LOGO, filename); - ve_config_set_string (config, key, filename); - ve_config_save (config, FALSE); + ve_config_set_string (cfg, GDM_KEY_CHOOSER_BUTTON_LOGO, filename); + ve_config_set_string (cfg, key, filename); + ve_config_save (cfg, FALSE); update_key (key); update_greeters (); @@ -422,17 +430,17 @@ intspin_timeout (GtkWidget *spin) const char *key = g_object_get_data (G_OBJECT (spin), "key"); const char *notify_key = g_object_get_data (G_OBJECT (spin), "notify_key"); - int val, new_val; - VeConfig *config = ve_config_get (config_file); - - new_val = gtk_spin_button_get_value_as_int (GTK_SPIN_BUTTON (spin)); + int new_val = gtk_spin_button_get_value_as_int (GTK_SPIN_BUTTON (spin)); + int val; - val = ve_config_get_int (config, key); + val = gdm_config_get_int ((gchar *)key); if (val != new_val) { - ve_config_set_int (config, key, new_val); + VeConfig *cfg = ve_config_get (config_file); + + ve_config_set_int (cfg, key, new_val); - ve_config_save (config, FALSE /* force */); + ve_config_save (cfg, FALSE /* force */); update_key (notify_key); } @@ -443,76 +451,38 @@ intspin_timeout (GtkWidget *spin) static void xservers_get_servers (GtkListStore *store) { - /* Find server definitions */ - VeConfig *cfg = ve_config_get (config_file); - GList *list, *li; - gchar *server, *options, *cpy; - - /* Fill list with all the active servers */ - list = ve_config_get_keys (cfg, GDM_KEY_SECTION_SERVERS); - - for (li = list; li != NULL; li = li->next) { - GtkTreeIter iter; - char *key = li->data; - int vt = atoi(key); - key = g_strconcat(GDM_KEY_SECTION_SERVERS, "/", key, NULL); - cpy = ve_config_get_string (cfg, key); - g_free (key); - server = ve_first_word (cpy); - options = ve_rest (cpy); - - gtk_list_store_append (store, &iter); - gtk_list_store_set (store, &iter, - XSERVER_COLUMN_VT, vt, - XSERVER_COLUMN_SERVER, server, - XSERVER_COLUMN_OPTIONS, options, - -1); - g_free(server); + /* Find server definitions */ + VeConfig *cfg = ve_config_get (config_file); + GList *list, *li; + gchar *server, *options, *cpy; + + /* Fill list with all the active servers */ + list = ve_config_get_keys (cfg, GDM_KEY_SECTION_SERVERS); + + for (li = list; li != NULL; li = li->next) { + GtkTreeIter iter; + char *key = li->data; + int vt = atoi (key); + key = g_strconcat (GDM_KEY_SECTION_SERVERS, "/", key, NULL); + cpy = ve_config_get_string (cfg, key); + g_free (key); + server = ve_first_word (cpy); + options = ve_rest (cpy); + + gtk_list_store_append (store, &iter); + gtk_list_store_set (store, &iter, + XSERVER_COLUMN_VT, vt, + XSERVER_COLUMN_SERVER, server, + XSERVER_COLUMN_OPTIONS, options, + -1); + g_free(server); } } static GSList * xservers_get_server_definitions() { - /* Find server definitions */ - GSList *xservers = NULL; - GList *list, *li; - VeConfig *cfg = ve_config_get (config_file); - gchar *StandardXServer = ve_config_get_string (cfg, - GDM_KEY_STANDARD_XSERVER); - - /* Fill list with all server definitions */ - list = ve_config_get_sections (cfg); - for (li = list; li != NULL; li = li->next) { - const char *sec = li->data; - if (strncmp (sec, GDM_KEY_SERVER_PREFIX, - strlen (GDM_KEY_SERVER_PREFIX)) == 0) { - GdmXserver *svr = g_new0 (GdmXserver, 1); - char buf[256]; - - svr->id = g_strdup (sec + strlen (GDM_KEY_SERVER_PREFIX)); - g_snprintf (buf, sizeof (buf), "%s/" GDM_KEY_SERVER_NAME, sec); - svr->name = ve_config_get_string (cfg, buf); - g_snprintf (buf, sizeof (buf), "%s/" GDM_KEY_SERVER_COMMAND, sec); - svr->command = ve_config_get_string (cfg, buf); - g_snprintf (buf, sizeof (buf), "%s/" GDM_KEY_SERVER_FLEXIBLE, sec); - svr->flexible = ve_config_get_bool (cfg, buf); - g_snprintf (buf, sizeof (buf), "%s/" GDM_KEY_SERVER_CHOOSABLE, sec); - svr->choosable = ve_config_get_bool (cfg, buf); - g_snprintf (buf, sizeof (buf), "%s/" GDM_KEY_SERVER_HANDLED, sec); - svr->handled = ve_config_get_bool (cfg, buf); - g_snprintf (buf, sizeof (buf), "%s/" GDM_KEY_SERVER_CHOOSER, sec); - svr->chooser = ve_config_get_bool (cfg, buf); - - if (ve_string_empty (svr->command)) { - g_free (svr->command); - svr->command = g_strdup (StandardXServer); - } - - xservers = g_slist_append (xservers, svr); - } - } - return xservers; + return gdm_config_get_xservers (FALSE); } static void @@ -539,10 +509,11 @@ xserver_update_delete_sensitivity() G_TYPE_INT /* virtual terminal */, G_TYPE_STRING /* server type */, G_TYPE_STRING /* options */); - xservers_get_servers(store); /* Get list of servers and determine which one was selected */ - xservers = xservers_get_server_definitions(); + xservers = xservers_get_server_definitions (); + xservers_get_servers (store); + i = gtk_combo_box_get_active (GTK_COMBO_BOX (modify_combobox)); if (i < 0) { gtk_widget_set_sensitive(delete_button, FALSE); @@ -715,10 +686,9 @@ refresh_remote_tab (void) gtk_combo_box_remove_text (GTK_COMBO_BOX (remote_greeter), REMOTE_PLAIN); local_style = gtk_combo_box_get_active (GTK_COMBO_BOX (local_greeter)); - remote_style = ve_config_get_string (ve_config_get (config_file), - GDM_KEY_REMOTE_GREETER); + remote_style = gdm_config_get_string (GDM_KEY_REMOTE_GREETER); - if (ve_config_get_bool (ve_config_get (config_file), GDM_KEY_XDMCP) == FALSE) { + if (gdm_config_get_bool (GDM_KEY_XDMCP) == FALSE) { if (local_style == LOCAL_PLAIN || local_style == LOCAL_PLAIN_WITH_FACE) { gtk_combo_box_append_text (GTK_COMBO_BOX (remote_greeter), _("Themed")); @@ -761,8 +731,7 @@ refresh_remote_tab (void) if (strstr (remote_style, "/gdmlogin") != NULL) { gboolean use_browser; - use_browser = ve_config_get_bool (ve_config_get (config_file), - GDM_KEY_BROWSER); + use_browser = gdm_config_get_bool (GDM_KEY_BROWSER); if (use_browser == FALSE) { gtk_combo_box_set_active (GTK_COMBO_BOX (remote_greeter), REMOTE_PLAIN); } @@ -780,7 +749,7 @@ refresh_remote_tab (void) gtk_widget_show (remote_themed_vbox); } } - gtk_widget_set_sensitive (allowremoteauto, ve_config_get_bool (ve_config_get (config_file), GDM_KEY_XDMCP)); + gtk_widget_set_sensitive (allowremoteauto, gdm_config_get_bool (GDM_KEY_XDMCP)); gtk_widget_set_sensitive (allowremoteroot, TRUE); gtk_widget_show (welcome_message_vbox); gtk_widget_show (configure_xdmcp_vbox); @@ -793,7 +762,7 @@ combobox_timeout (GtkWidget *combo_box) { const char *key = g_object_get_data (G_OBJECT (combo_box), "key"); int selected = gtk_combo_box_get_active (GTK_COMBO_BOX (combo_box)); - VeConfig *config = ve_config_get (config_file); + VeConfig *cfg = ve_config_get (config_file); /* Local Greeter Comboboxes */ if (strcmp (key, GDM_KEY_GREETER) == 0) { @@ -802,7 +771,7 @@ combobox_timeout (GtkWidget *combo_box) gchar *new_key_val; gboolean browser_val; - old_key_val = ve_config_get_string (config, key); + old_key_val = gdm_config_get_string ((gchar *)key); new_key_val = NULL; if (selected == LOCAL_PLAIN_WITH_FACE) { @@ -811,7 +780,7 @@ combobox_timeout (GtkWidget *combo_box) } else if (selected == LOCAL_THEMED) { new_key_val = g_strdup (EXPANDED_LIBEXECDIR "/gdmgreeter"); - browser_val = ve_config_get_bool (config, GDM_KEY_BROWSER); + browser_val = gdm_config_get_bool (GDM_KEY_BROWSER); } else { /* Plain style */ new_key_val = g_strdup (EXPANDED_LIBEXECDIR "/gdmlogin"); @@ -821,16 +790,16 @@ combobox_timeout (GtkWidget *combo_box) if (new_key_val && strcmp (ve_sure_string (old_key_val), ve_sure_string (new_key_val)) != 0) { - ve_config_set_string (config, key, new_key_val); - ve_config_set_bool (config, GDM_KEY_BROWSER, browser_val); - ve_config_save (config, FALSE); + ve_config_set_string (cfg, key, new_key_val); + ve_config_set_bool (cfg, GDM_KEY_BROWSER, browser_val); + ve_config_save (cfg, FALSE); update_key (GDM_KEY_BROWSER); update_key (key); update_greeters (); } else { - ve_config_set_bool (config, GDM_KEY_BROWSER, browser_val); - ve_config_save (config, FALSE); + ve_config_set_bool (cfg, GDM_KEY_BROWSER, browser_val); + ve_config_save (cfg, FALSE); update_key (GDM_KEY_BROWSER); update_greeters (); } @@ -843,8 +812,8 @@ combobox_timeout (GtkWidget *combo_box) else if (strcmp (key, GDM_KEY_REMOTE_GREETER) == 0) { if (selected == REMOTE_DISABLED) { - ve_config_set_bool (config, GDM_KEY_XDMCP, FALSE); - ve_config_save (config, FALSE); + ve_config_set_bool (cfg, GDM_KEY_XDMCP, FALSE); + ve_config_save (cfg, FALSE); update_key (key); update_greeters (); @@ -854,11 +823,11 @@ combobox_timeout (GtkWidget *combo_box) gchar *new_key_val = NULL; if (selected == REMOTE_SAME_AS_LOCAL) { - new_key_val = ve_config_get_string (ve_config_get (config_file), GDM_KEY_GREETER); + new_key_val = gdm_config_get_string (GDM_KEY_GREETER); } else if (selected == REMOTE_PLAIN_WITH_FACE) { new_key_val = g_strdup (EXPANDED_LIBEXECDIR "/gdmlogin"); - ve_config_set_bool (config, GDM_KEY_BROWSER, TRUE); + ve_config_set_bool (cfg, GDM_KEY_BROWSER, TRUE); } else { gchar *selected_text; @@ -870,14 +839,14 @@ combobox_timeout (GtkWidget *combo_box) } else { new_key_val = g_strdup (EXPANDED_LIBEXECDIR "/gdmlogin"); - ve_config_set_bool (config, GDM_KEY_BROWSER, FALSE); + ve_config_set_bool (cfg, GDM_KEY_BROWSER, FALSE); } g_free (selected_text); } - ve_config_set_string (config, key, new_key_val); - ve_config_set_bool (config, GDM_KEY_XDMCP, TRUE); - ve_config_save (config, FALSE); + ve_config_set_string (cfg, key, new_key_val); + ve_config_set_bool (cfg, GDM_KEY_XDMCP, TRUE); + ve_config_save (cfg, FALSE); update_key (key); g_free( new_key_val); @@ -898,12 +867,12 @@ combobox_timeout (GtkWidget *combo_box) 0, &new_val, -1); } - val = ve_config_get_string (config, key); + val = gdm_config_get_string ((gchar *)key); if (new_val && strcmp (ve_sure_string (val), ve_sure_string (new_val)) != 0) { - ve_config_set_string (config, key, new_val); - ve_config_save (config, FALSE /* force */); + ve_config_set_string (cfg, key, new_val); + ve_config_save (cfg, FALSE /* force */); update_key (key); } g_free (new_val); @@ -914,7 +883,7 @@ combobox_timeout (GtkWidget *combo_box) gboolean new_val; gboolean old_val ; - old_val = ve_config_get_bool (config, key); + old_val = gdm_config_get_bool ((gchar *)key); /* Choose to display radio or checkbox toggle column */ if (selected == RANDOM_THEME) { @@ -925,8 +894,8 @@ combobox_timeout (GtkWidget *combo_box) /* Update config */ if (new_val != old_val) { - ve_config_set_bool (config, key, new_val); - ve_config_save (config, FALSE /* force */); + ve_config_set_bool (cfg, key, new_val); + ve_config_save (cfg, FALSE /* force */); update_key (key); } } @@ -949,13 +918,15 @@ combobox_timeout (GtkWidget *combo_box) section = g_strconcat(GDM_KEY_SERVER_PREFIX, section, "/", NULL); section = g_strconcat(section, GDM_KEY_SERVER_CHOOSER, NULL); - val_old = ve_config_get_bool (config, section); + val_old = gdm_config_get_bool (section); val_new = (gtk_combo_box_get_active (GTK_COMBO_BOX (style_combobox)) != 0); /* Update this servers configuration */ if (! ve_bool_equal (val_old, val_new)) { - ve_config_set_bool (config, section, val_new); - ve_config_save (config, FALSE /* force */); + VeConfig *cfg = ve_config_get (config_file); + + ve_config_set_bool (cfg, section, val_new); + ve_config_save (cfg, FALSE /* force */); } g_free(section); } @@ -1090,7 +1061,7 @@ combobox_changed (GtkWidget *combobox) if (selected == REMOTE_SAME_AS_LOCAL) { gchar *greeter_style; - greeter_style = ve_config_get_string (ve_config_get (config_file), GDM_KEY_GREETER); + greeter_style = gdm_config_get_string (GDM_KEY_GREETER); update_remote_sensitivity (FALSE); if (strstr (greeter_style, "/gdmgreeter") != NULL) { @@ -1213,8 +1184,7 @@ combobox_changed (GtkWidget *combobox) /* Determine if the theme selected is currently active */ model = gtk_tree_view_get_model (GTK_TREE_VIEW (theme_list)); - GdmGraphicalThemeRand = ve_config_get_bool (ve_config_get (config_file), - GDM_KEY_GRAPHICAL_THEME_RAND); + GdmGraphicalThemeRand = gdm_config_get_bool (GDM_KEY_GRAPHICAL_THEME_RAND); if (GdmGraphicalThemeRand) { gtk_tree_model_get_value (model, &iter, THEME_COLUMN_SELECTED_LIST, &value); @@ -1282,7 +1252,7 @@ toggle_toggled_sensitivity_positive (GtkWidget *toggle, GtkWidget *depend) static void timedlogin_allow_remote_toggled (GtkWidget *toggle, GtkWidget *depend) { - if (ve_config_get_bool (ve_config_get (config_file), GDM_KEY_XDMCP) == TRUE) { + if (gdm_config_get_bool (GDM_KEY_XDMCP) == TRUE) { gtk_widget_set_sensitive (depend, gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (toggle))); } else { @@ -1299,8 +1269,7 @@ setup_notify_toggle (const char *name, gboolean val; toggle = glade_helper_get (xml, name, GTK_TYPE_TOGGLE_BUTTON); - - val = ve_config_get_bool (ve_config_get (config_file), key); + val = gdm_config_get_bool ((gchar *)key); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (toggle), val); @@ -1381,7 +1350,7 @@ setup_notify_toggle (const char *name, gtk_widget_set_sensitive (timedlogin_seconds_spin_button, val); gtk_widget_set_sensitive (timedlogin_seconds_units, val); - if (ve_config_get_bool (ve_config_get (config_file), GDM_KEY_XDMCP) == FALSE) { + if (gdm_config_get_bool (GDM_KEY_XDMCP) == FALSE) { gtk_widget_set_sensitive (timedlogin_allow_remote, FALSE); } else { @@ -1419,7 +1388,7 @@ setup_xdmcp_notify_toggle (const char *name, toggle = glade_helper_get (xml_xdmcp, name, GTK_TYPE_TOGGLE_BUTTON); - val = ve_config_get_bool (ve_config_get (config_file), key); + val = gdm_config_get_bool ((gchar *)key); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (toggle), val); @@ -1510,7 +1479,7 @@ setup_user_combobox_list (const char *name, const char *key) int cnt; combobox_store = gtk_list_store_new (USERLIST_NUM_COLUMNS, G_TYPE_STRING); - selected_user = ve_config_get_string (ve_config_get (config_file), key); + selected_user = gdm_config_get_string ((gchar *)key); /* normally empty */ users_string = g_list_append (users_string, g_strdup ("")); @@ -1570,9 +1539,7 @@ setup_intspin (const char *name, { GtkWidget *spin = glade_helper_get (xml, name, GTK_TYPE_SPIN_BUTTON); - int val; - - val = ve_config_get_int (ve_config_get (config_file), key); + int val = gdm_config_get_int ((gchar *)key); g_object_set_data_full (G_OBJECT (spin), "key", g_strdup (key), @@ -1593,13 +1560,12 @@ setup_xdmcp_intspin (const const char *name, const char *notify_key) { GtkWidget *spin; - int val; + int val = gdm_config_get_int ((gchar *)key); spin = glade_helper_get (xml_xdmcp, name, GTK_TYPE_SPIN_BUTTON); - val = ve_config_get_int (ve_config_get (config_file), key); g_object_set_data_full (G_OBJECT (spin), "key", g_strdup (key), @@ -1863,7 +1829,6 @@ static void browser_apply (GtkWidget *button, gpointer data) { FaceCommon *fc = data; - VeConfig *config = ve_config_get (config_file); GString *userlist = g_string_new (NULL); const char *model_text; char *val; @@ -1871,6 +1836,7 @@ browser_apply (GtkWidget *button, gpointer data) gboolean valid; gboolean update_greet = FALSE; char *sep = ""; + VeConfig *cfg = ve_config_get (config_file); valid = gtk_tree_model_get_iter_first (fc->include_model, &iter); while (valid) { @@ -1884,12 +1850,12 @@ browser_apply (GtkWidget *button, gpointer data) valid = gtk_tree_model_iter_next (fc->include_model, &iter); } - val = ve_config_get_string (config, GDM_KEY_INCLUDE); + val = gdm_config_get_string (GDM_KEY_INCLUDE); if (strcmp (ve_sure_string (val), ve_sure_string (userlist->str)) != 0) { - ve_config_set_string (config, GDM_KEY_INCLUDE, userlist->str); - ve_config_save (config, FALSE /* force */); + ve_config_set_string (cfg, GDM_KEY_INCLUDE, userlist->str); + ve_config_save (cfg, FALSE /* force */); update_key (GDM_KEY_INCLUDE); update_greet = TRUE; @@ -1912,12 +1878,14 @@ browser_apply (GtkWidget *button, gpointer data) valid = gtk_tree_model_iter_next (fc->exclude_model, &iter); } - val = ve_config_get_string (config, GDM_KEY_EXCLUDE); + val = gdm_config_get_string (GDM_KEY_EXCLUDE); if (strcmp (ve_sure_string (val), ve_sure_string (userlist->str)) != 0) { - ve_config_set_string (config, GDM_KEY_EXCLUDE, userlist->str); - ve_config_save (config, FALSE /* force */); + VeConfig *cfg = ve_config_get (config_file); + + ve_config_set_string (cfg, GDM_KEY_EXCLUDE, userlist->str); + ve_config_save (cfg, FALSE /* force */); update_key (GDM_KEY_EXCLUDE); update_greet = TRUE; @@ -1927,10 +1895,8 @@ browser_apply (GtkWidget *button, gpointer data) update_greeters (); /* Re-initialize combox with updated userlist. */ - GdmInclude = ve_config_get_string (ve_config_get (config_file), - GDM_KEY_INCLUDE); - GdmExclude = ve_config_get_string (ve_config_get (config_file), - GDM_KEY_EXCLUDE); + GdmInclude = gdm_config_get_string (GDM_KEY_INCLUDE); + GdmExclude = gdm_config_get_string (GDM_KEY_EXCLUDE); setup_user_combobox_list ("autologin_combo", GDM_KEY_AUTOMATIC_LOGIN); setup_user_combobox_list ("timedlogin_combo", @@ -2122,10 +2088,10 @@ static gboolean greeter_toggle_timeout (GtkWidget *toggle) { const char *key = g_object_get_data (G_OBJECT (toggle), "key"); - VeConfig *config = ve_config_get (config_file); - gboolean val = ve_config_get_bool (config, key); + gboolean val = gdm_config_get_bool ((gchar *)key); if ( ! ve_bool_equal (val, GTK_TOGGLE_BUTTON (toggle)->active)) { + VeConfig *cfg = ve_config_get (config_file); if (strcmp (key, GDM_KEY_BACKGROUND_SCALE_TO_FIT) == 0) { @@ -2149,10 +2115,10 @@ greeter_toggle_timeout (GtkWidget *toggle) GTK_TOGGLE_BUTTON (toggle)->active); } } - ve_config_set_bool (config, key, + ve_config_set_bool (cfg, key, GTK_TOGGLE_BUTTON (toggle)->active); - ve_config_save (config, FALSE /* force */); + ve_config_save (cfg, FALSE /* force */); update_key (key); update_greeters (); @@ -2187,16 +2153,14 @@ sensitive_entry_toggled (GtkWidget *toggle, gpointer data) static gboolean local_background_type_toggle_timeout (GtkWidget *toggle) { - VeConfig *config; + VeConfig *cfg = ve_config_get (config_file); GtkWidget *color_radiobutton; GtkWidget *image_radiobutton; GtkWidget *color_remote_radiobutton; GtkWidget *image_remote_radiobutton; gboolean image_value; gboolean color_value; - - config = ve_config_get (config_file); - + image_radiobutton = glade_helper_get (xml, "local_background_image_checkbutton", GTK_TYPE_CHECK_BUTTON); @@ -2225,22 +2189,22 @@ local_background_type_toggle_timeout (GtkWidget *toggle) if (image_value == TRUE && color_value == TRUE) { /* Image & color */ - ve_config_set_int (ve_config_get (config_file), GDM_KEY_BACKGROUND_TYPE, 1); + ve_config_set_int (cfg, GDM_KEY_BACKGROUND_TYPE, 1); } else if (image_value == FALSE && color_value == TRUE) { /* Color only */ - ve_config_set_int (ve_config_get (config_file), GDM_KEY_BACKGROUND_TYPE, 2); + ve_config_set_int (cfg, GDM_KEY_BACKGROUND_TYPE, 2); } else if (image_value == TRUE && color_value == FALSE) { /* Image only*/ - ve_config_set_int (ve_config_get (config_file), GDM_KEY_BACKGROUND_TYPE, 3); + ve_config_set_int (cfg, GDM_KEY_BACKGROUND_TYPE, 3); } else { /* No Background */ - ve_config_set_int (ve_config_get (config_file), GDM_KEY_BACKGROUND_TYPE, 0); + ve_config_set_int (cfg, GDM_KEY_BACKGROUND_TYPE, 0); } - ve_config_save (config, FALSE); + ve_config_save (cfg, FALSE); update_key (GDM_KEY_BACKGROUND_TYPE); update_greeters (); @@ -2273,7 +2237,7 @@ setup_greeter_toggle (const char *name, { GtkWidget *toggle = glade_helper_get (xml, name, GTK_TYPE_TOGGLE_BUTTON); - gboolean val = ve_config_get_bool (ve_config_get (config_file), key); + gboolean val = gdm_config_get_bool ((gchar *)key); g_object_set_data_full (G_OBJECT (toggle), "key", g_strdup (key), (GDestroyNotify) g_free); @@ -2416,7 +2380,6 @@ greeter_color_timeout (GtkWidget *picker) const char *key = g_object_get_data (G_OBJECT (picker), "key"); GdkColor color_val; char *val, *color; - VeConfig *config = ve_config_get (config_file); gtk_color_button_get_color (GTK_COLOR_BUTTON (picker), &color_val); @@ -2453,12 +2416,14 @@ greeter_color_timeout (GtkWidget *picker) (guint16)color_val.green / 256, (guint16)color_val.blue / 256); - val = ve_config_get_string (config, key); + val = gdm_config_get_string ((gchar *)key); if (strcmp (ve_sure_string (val), ve_sure_string (color)) != 0) { - ve_config_set_string (config, key, ve_sure_string (color)); + VeConfig *cfg = ve_config_get (config_file); + + ve_config_set_string (cfg, key, ve_sure_string (color)); - ve_config_save (config, FALSE /* force */); + ve_config_save (cfg, FALSE /* force */); update_key (key); update_greeters (); @@ -2485,7 +2450,7 @@ setup_greeter_color (const char *name, GTK_TYPE_COLOR_BUTTON); char *val; - val = ve_config_get_string (ve_config_get (config_file), key); + val = gdm_config_get_string ((gchar *)key); g_object_set_data_full (G_OBJECT (picker), "key", g_strdup (key), @@ -2519,17 +2484,15 @@ typedef struct _ImageData { static gboolean greeter_entry_untranslate_timeout (GtkWidget *entry) { + VeConfig *cfg = ve_config_get (config_file); const char *key = g_object_get_data (G_OBJECT (entry), "key"); const char *text; - VeConfig *config = ve_config_get (config_file); text = gtk_entry_get_text (GTK_ENTRY (entry)); - ve_config_delete_translations (config, key); - - ve_config_set_string (config, key, ve_sure_string (text)); - - ve_config_save (config, FALSE /* force */); + ve_config_delete_translations (cfg, key); + ve_config_set_string (cfg, key, ve_sure_string (text)); + ve_config_save (cfg, FALSE /* force */); update_key (key); update_greeters (); @@ -2550,8 +2513,7 @@ setup_greeter_untranslate_entry (const char *name, GtkWidget *entry = glade_helper_get (xml, name, GTK_TYPE_ENTRY); char *val; - val = ve_config_get_translated_string (ve_config_get (config_file), - key); + val = gdm_config_get_translated_string ((gchar *)key); g_object_set_data_full (G_OBJECT (entry), "key", g_strdup (key), @@ -2641,7 +2603,7 @@ setup_greeter_combobox (const char *name, GtkWidget *combobox = glade_helper_get (xml, name, GTK_TYPE_COMBO_BOX); char *val; - val = ve_config_get_string (ve_config_get (config_file), key); + val = gdm_config_get_string ((gchar *)key); if (val != NULL && strcmp (val, @@ -2658,7 +2620,7 @@ setup_greeter_combobox (const char *name, GtkWidget *local_themed_vbox; gboolean val; - val = ve_config_get_bool (ve_config_get (config_file), GDM_KEY_BROWSER); + val = gdm_config_get_bool (GDM_KEY_BROWSER); local_plain_vbox = glade_helper_get (xml, "local_plain_properties_vbox", GTK_TYPE_VBOX); @@ -2844,11 +2806,9 @@ strings_list_add (char *strings_list, const char *string, const char *sep) static void acc_modules_toggled (GtkWidget *toggle, gpointer data) { - VeConfig *cfg = ve_config_get (config_file); - gboolean add_gtk_modules = ve_config_get_bool (cfg, - GDM_KEY_ADD_GTK_MODULES); - char *modules_list = ve_config_get_string (cfg, - GDM_KEY_GTK_MODULES_LIST); + VeConfig *cfg = ve_config_get (config_file); + gboolean add_gtk_modules = gdm_config_get_bool (GDM_KEY_ADD_GTK_MODULES); + char *modules_list = gdm_config_get_string (GDM_KEY_GTK_MODULES_LIST); /* first whack the modules from the list */ modules_list = modules_list_remove (modules_list, "gail"); @@ -2919,21 +2879,20 @@ test_sound (GtkWidget *button, gpointer data) static void sound_response (GtkWidget *file_chooser, gpointer data) { - VeConfig *config; + VeConfig *cfg = ve_config_get (config_file); const char *file_name; char *sound_key; char *value; file_name = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (file_chooser)); - config = ve_config_get (config_file); sound_key = g_object_get_data (G_OBJECT (file_chooser), "key"); - value = ve_config_get_string (config, sound_key); + value = gdm_config_get_string (sound_key); if (strcmp (ve_sure_string (value), ve_sure_string (file_name)) != 0) { - ve_config_set_string (config, sound_key, + ve_config_set_string (cfg, sound_key, ve_sure_string (file_name)); - ve_config_save (config, FALSE); + ve_config_save (cfg, FALSE); update_key (sound_key); update_greeters (); } @@ -2960,7 +2919,6 @@ setup_accessibility_tab (void) GtkWidget *access_sound_failure_play_button; GtkFileFilter *all_sounds_filter; GtkFileFilter *all_files_filter; - VeConfig *config; gboolean add_gtk_modules; gchar *gdm_key_sound_ready; gchar *gdm_key_sound_success; @@ -3012,9 +2970,8 @@ setup_accessibility_tab (void) setup_greeter_toggle ("acc_sound_failure", GDM_KEY_SOUND_ON_LOGIN_FAILURE); - config = ve_config_get (config_file); - add_gtk_modules = ve_config_get_bool (config, GDM_KEY_ADD_GTK_MODULES); - modules_list = ve_config_get_string (config, GDM_KEY_GTK_MODULES_LIST); + add_gtk_modules = gdm_config_get_bool (GDM_KEY_ADD_GTK_MODULES); + modules_list = gdm_config_get_string (GDM_KEY_GTK_MODULES_LIST); if (!(add_gtk_modules && modules_list_contains (modules_list, "gail") && @@ -3050,7 +3007,7 @@ setup_accessibility_tab (void) gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (access_sound_failure_file_chooser), all_sounds_filter); gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (access_sound_failure_file_chooser), all_files_filter); - value = ve_config_get_string (config, GDM_KEY_SOUND_ON_LOGIN_FILE); + value = gdm_config_get_string (GDM_KEY_SOUND_ON_LOGIN_FILE); if (value != NULL && *value != '\0') { gtk_file_chooser_set_filename (GTK_FILE_CHOOSER (access_sound_ready_file_chooser), @@ -3063,7 +3020,7 @@ setup_accessibility_tab (void) g_free (value); - value = ve_config_get_string (config, GDM_KEY_SOUND_ON_LOGIN_SUCCESS_FILE); + value = gdm_config_get_string (GDM_KEY_SOUND_ON_LOGIN_SUCCESS_FILE); if (value != NULL && *value != '\0') { gtk_file_chooser_set_filename (GTK_FILE_CHOOSER (access_sound_success_file_chooser), @@ -3076,7 +3033,7 @@ setup_accessibility_tab (void) g_free (value); - value = ve_config_get_string (config, GDM_KEY_SOUND_ON_LOGIN_FAILURE_FILE); + value = gdm_config_get_string (GDM_KEY_SOUND_ON_LOGIN_FAILURE_FILE); if (value != NULL && *value != '\0') { gtk_file_chooser_set_filename (GTK_FILE_CHOOSER (access_sound_failure_file_chooser), @@ -3125,8 +3082,7 @@ get_theme_dir (void) { char *theme_dir; - theme_dir = ve_config_get_string (ve_config_get (config_file), - GDM_KEY_GRAPHICAL_THEME_DIR); + theme_dir = gdm_config_get_string (GDM_KEY_GRAPHICAL_THEME_DIR); if (theme_dir == NULL || theme_dir[0] == '\0' || @@ -3225,8 +3181,7 @@ gg_selection_changed (GtkTreeSelection *selection, gpointer data) gtk_widget_set_sensitive (delete_button_remote, TRUE); } /* Determine if the theme selected is currently active */ - GdmGraphicalThemeRand = ve_config_get_bool (ve_config_get (config_file), - GDM_KEY_GRAPHICAL_THEME_RAND); + GdmGraphicalThemeRand = gdm_config_get_bool (GDM_KEY_GRAPHICAL_THEME_RAND); if (GdmGraphicalThemeRand) { gtk_tree_model_get_value (model, &iter, THEME_COLUMN_SELECTED_LIST, &value); } else { @@ -3379,14 +3334,15 @@ read_themes (GtkListStore *store, const char *theme_dir, DIR *dir, g_free (name); name = g_strdup (dent->d_name); } - desc = ve_config_get_translated_string - (theme_file, "GdmGreeterTheme/Description"); - author = ve_config_get_translated_string - (theme_file, "GdmGreeterTheme/Author"); + + desc = ve_config_get_translated_string + (theme_file, "GdmGreeterTheme/Description"); + author = ve_config_get_translated_string + (theme_file, "GdmGreeterTheme/Author"); copyright = ve_config_get_translated_string - (theme_file, "GdmGreeterTheme/Copyright"); - ss = ve_config_get_translated_string - (theme_file, "GdmGreeterTheme/Screenshot"); + (theme_file, "GdmGreeterTheme/Copyright"); + ss = ve_config_get_translated_string + (theme_file, "GdmGreeterTheme/Screenshot"); ve_config_destroy (theme_file); @@ -3451,13 +3407,12 @@ read_themes (GtkListStore *store, const char *theme_dir, DIR *dir, static gboolean greeter_theme_timeout (GtkWidget *toggle) { + VeConfig *cfg = ve_config_get (config_file); char *theme; char *themes; - VeConfig *config = ve_config_get (config_file); - - theme = ve_config_get_string (config, GDM_KEY_GRAPHICAL_THEME); - themes = ve_config_get_string (config, GDM_KEY_GRAPHICAL_THEMES); + theme = gdm_config_get_string (GDM_KEY_GRAPHICAL_THEME); + themes = gdm_config_get_string (GDM_KEY_GRAPHICAL_THEMES); /* If no checkbox themes selected */ if (selected_themes == NULL) @@ -3467,10 +3422,10 @@ greeter_theme_timeout (GtkWidget *toggle) if (strcmp (ve_sure_string (theme), ve_sure_string (selected_theme)) != 0) { - ve_config_set_string (config, GDM_KEY_GRAPHICAL_THEME, + ve_config_set_string (cfg, GDM_KEY_GRAPHICAL_THEME, selected_theme); - ve_config_save (config, FALSE /* force */); + ve_config_save (cfg, FALSE /* force */); update_key (GDM_KEY_GRAPHICAL_THEME); update_greeters (); } @@ -3478,10 +3433,10 @@ greeter_theme_timeout (GtkWidget *toggle) if (strcmp (ve_sure_string (themes), ve_sure_string (selected_themes)) != 0) { - ve_config_set_string (config, GDM_KEY_GRAPHICAL_THEMES, + ve_config_set_string (cfg, GDM_KEY_GRAPHICAL_THEMES, selected_themes); - ve_config_save (config, FALSE /* force */); + ve_config_save (cfg, FALSE /* force */); update_key (GDM_KEY_GRAPHICAL_THEMES); update_greeters (); } @@ -4184,8 +4139,7 @@ delete_theme (GtkWidget *button, gpointer data) return; } - GdmGraphicalThemeRand = ve_config_get_bool (ve_config_get (config_file), - GDM_KEY_GRAPHICAL_THEME_RAND); + GdmGraphicalThemeRand = gdm_config_get_bool (GDM_KEY_GRAPHICAL_THEME_RAND); if (GdmGraphicalThemeRand) { gtk_tree_model_get_value (model, &iter, @@ -4290,7 +4244,7 @@ delete_theme (GtkWidget *button, gpointer data) static gboolean xserver_entry_timeout (GtkWidget *entry) { - VeConfig *cfg; + VeConfig *cfg = ve_config_get (config_file); const char *key = g_object_get_data (G_OBJECT (entry), "key"); const char *text = gtk_entry_get_text (GTK_ENTRY (entry)); @@ -4305,9 +4259,6 @@ xserver_entry_timeout (GtkWidget *entry) else if (strcmp (key, GDM_KEY_SERVER_COMMAND) == 0) section = g_strconcat(section, GDM_KEY_SERVER_COMMAND, NULL); - /* Locate this server's section */ - cfg = ve_config_get (config_file); - /* Update this servers configuration */ ve_config_set_string (cfg, section, ve_sure_string (text)); ve_config_save (cfg, FALSE /* force */); @@ -4320,7 +4271,6 @@ static gboolean xserver_toggle_timeout (GtkWidget *toggle) { const char *key = g_object_get_data (G_OBJECT (toggle), "key"); - VeConfig *cfg; gboolean val; /* Get xserver section to update */ @@ -4337,11 +4287,11 @@ xserver_toggle_timeout (GtkWidget *toggle) section = g_strconcat(section, GDM_KEY_SERVER_CHOOSER, NULL); /* Locate this server's section */ - cfg = ve_config_get (config_file); - val = ve_config_get_bool (cfg, section); + val = gdm_config_get_bool (section); /* Update this servers configuration */ if ( ! ve_bool_equal (val, GTK_TOGGLE_BUTTON (toggle)->active)) { + VeConfig *cfg = ve_config_get (config_file); ve_config_set_bool (cfg, section, GTK_TOGGLE_BUTTON (toggle)->active); ve_config_save (cfg, FALSE /* force */); @@ -4405,7 +4355,7 @@ xserver_init_server_list() G_TYPE_STRING /* options */); /* Read all xservers to start from configuration */ - xservers_get_servers(store); + xservers_get_servers (store); gtk_tree_view_set_model (GTK_TREE_VIEW (treeview), GTK_TREE_MODEL (store)); gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (treeview), TRUE); @@ -4444,27 +4394,25 @@ xserver_remove(gpointer data) GtkTreeSelection *selection; GtkTreeIter iter; GtkTreeModel *model; - VeConfig *cfg; gint vt; - char vt_value[3]; + char vt_value[3]; - treeview = glade_helper_get (xml_xservers, "xserver_tree_view", - GTK_TYPE_TREE_VIEW); + treeview = glade_helper_get (xml_xservers, "xserver_tree_view", + GTK_TYPE_TREE_VIEW); - selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (treeview)); + selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (treeview)); if (gtk_tree_selection_get_selected (selection, &model, &iter)) { + VeConfig *cfg = ve_config_get (config_file); char *key; combo = glade_helper_get (xml_add_xservers, "xserver_server_combobox", GTK_TYPE_COMBO_BOX); /* Update config */ - cfg = ve_config_get (config_file); gtk_tree_model_get (model, &iter, XSERVER_COLUMN_VT, &vt, -1); - g_snprintf (vt_value, sizeof (vt_value), "%d", vt); key = g_strconcat (GDM_KEY_SECTION_SERVERS, "/", vt_value, "=", NULL); ve_config_delete_key (cfg, key); @@ -4481,7 +4429,7 @@ xserver_remove(gpointer data) static void xserver_add(gpointer data) { - VeConfig *cfg; + VeConfig *cfg = ve_config_get (config_file); GtkWidget *spinner, *combo, *entry, *button; gchar *string; char spinner_value[3], *key; @@ -4506,7 +4454,6 @@ xserver_add(gpointer data) NULL); /* Add to config */ - cfg = ve_config_get (config_file); ve_config_set_string (cfg, key, ve_sure_string(string)); ve_config_save (cfg, FALSE /* force */); @@ -4620,7 +4567,7 @@ xserver_add_button_clicked (void) static void xserver_create(gpointer data) { - VeConfig *cfg; + /* VeConfig *cfg; */ gboolean success; /* Init Widgets */ @@ -4657,7 +4604,7 @@ xserver_create(gpointer data) /* TODO: Create a new section for this server */ /* TODO: Write this value to the config and update xservers list */ - cfg = ve_config_get (config_file); + /* cfg = ve_config_get (config_file); */ success = FALSE; /* success = ve_config_add_section (cfg, SECTION_NAME); */ @@ -5114,10 +5061,8 @@ setup_local_themed_settings (void) gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (theme_list), TRUE); - selected_theme = ve_config_get_string (ve_config_get (config_file), - GDM_KEY_GRAPHICAL_THEME); - selected_themes = ve_config_get_string (ve_config_get (config_file), - GDM_KEY_GRAPHICAL_THEMES); + selected_theme = gdm_config_get_string (GDM_KEY_GRAPHICAL_THEME); + selected_themes = gdm_config_get_string (GDM_KEY_GRAPHICAL_THEMES); /* FIXME: If a theme directory contains the string GDM_DELIMITER_THEMES in the name, then this theme won't work when trying to load as it @@ -5127,9 +5072,7 @@ setup_local_themed_settings (void) slash (/) character in them, so I just made GDM_DELIMITER_THEMES equal to "/:" instead. */ - GdmGraphicalThemeRand = ve_config_get_bool ( - ve_config_get (config_file), - GDM_KEY_GRAPHICAL_THEME_RAND); + GdmGraphicalThemeRand = gdm_config_get_bool (GDM_KEY_GRAPHICAL_THEME_RAND); /* create list store */ store = gtk_list_store_new (THEME_NUM_COLUMNS, @@ -5303,16 +5246,14 @@ dialog_response (GtkWidget *dlg, int response, gpointer data) static void image_filechooser_response (GtkWidget *file_chooser, gpointer data) { - VeConfig *config; + VeConfig *cfg = ve_config_get (config_file); const char *file_name; char *key; char *value; file_name = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (file_chooser)); - - config = ve_config_get (config_file); - key = g_object_get_data (G_OBJECT (file_chooser), "key"); - value = ve_config_get_string (config, key); + key = g_object_get_data (G_OBJECT (file_chooser), "key"); + value = gdm_config_get_string (key); if (strcmp (ve_sure_string (value), ve_sure_string (file_name)) != 0) { @@ -5353,9 +5294,9 @@ image_filechooser_response (GtkWidget *file_chooser, gpointer data) G_CALLBACK (image_filechooser_response), image_filechooser); } - ve_config_set_string (config, key, + ve_config_set_string (cfg, key, ve_sure_string (file_name)); - ve_config_save (config, FALSE); + ve_config_save (cfg, FALSE); update_key (key); update_greeters (); } @@ -5365,16 +5306,15 @@ image_filechooser_response (GtkWidget *file_chooser, gpointer data) static void logo_filechooser_response (GtkWidget *file_chooser, gpointer data) { - VeConfig *config; + VeConfig *cfg = ve_config_get (config_file); const char *file_name; char *key; char *value; file_name = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (file_chooser)); - config = ve_config_get (config_file); key = g_object_get_data (G_OBJECT (file_chooser), "key"); - value = ve_config_get_string (config, key); + value = gdm_config_get_string (key); if (strcmp (ve_sure_string (value), ve_sure_string (file_name)) != 0) { @@ -5402,9 +5342,9 @@ logo_filechooser_response (GtkWidget *file_chooser, gpointer data) G_CALLBACK (logo_filechooser_response), image_filechooser); if (GTK_TOGGLE_BUTTON (image_toggle)->active == TRUE) { - ve_config_set_string (config, key, + ve_config_set_string (cfg, key, ve_sure_string (file_name)); - ve_config_save (config, FALSE); + ve_config_save (cfg, FALSE); update_key (key); update_greeters (); } @@ -5432,9 +5372,9 @@ logo_filechooser_response (GtkWidget *file_chooser, gpointer data) G_CALLBACK (logo_filechooser_response), image_filechooser);; if (GTK_TOGGLE_BUTTON (image_toggle)->active == TRUE) { - ve_config_set_string (config, key, + ve_config_set_string (cfg, key, ve_sure_string (file_name)); - ve_config_save (config, FALSE); + ve_config_save (cfg, FALSE); update_key (key); update_greeters (); } @@ -5548,15 +5488,13 @@ hookup_plain_background (void) GDM_KEY_BACKGROUND_SCALE_TO_FIT); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (image_scale_to_fit), - ve_config_get_bool (ve_config_get (config_file), - GDM_KEY_BACKGROUND_SCALE_TO_FIT)); + gdm_config_get_bool (GDM_KEY_BACKGROUND_SCALE_TO_FIT)); - background_filename = ve_config_get_string (ve_config_get (config_file), - GDM_KEY_BACKGROUND_IMAGE); + background_filename = gdm_config_get_string (GDM_KEY_BACKGROUND_IMAGE); gtk_file_chooser_set_filename (GTK_FILE_CHOOSER (image_filechooser), background_filename); - switch (ve_config_get_int (ve_config_get (config_file), GDM_KEY_BACKGROUND_TYPE)) { + switch (gdm_config_get_int (GDM_KEY_BACKGROUND_TYPE)) { case BACKGROUND_IMAGE_AND_COLOR: { /* Image & Color background type */ @@ -5687,14 +5625,12 @@ hookup_plain_logo (void) gtk_file_filter_add_pattern(filter, "*"); gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (logo_button), filter); - logo_filename = ve_config_get_string (ve_config_get (config_file), - GDM_KEY_LOGO); + logo_filename = gdm_config_get_string (GDM_KEY_LOGO); if (ve_string_empty (logo_filename)) { gchar *previous_logo_filename; - previous_logo_filename = ve_config_get_string (ve_config_get (config_file), - GDM_KEY_CHOOSER_BUTTON_LOGO); + previous_logo_filename = gdm_config_get_string (GDM_KEY_CHOOSER_BUTTON_LOGO); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (logo_checkbutton), FALSE); gtk_widget_set_sensitive (logo_button, FALSE); @@ -5845,15 +5781,13 @@ hookup_remote_plain_background (void) GDM_KEY_BACKGROUND_REMOTE_ONLY_COLOR); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (image_scale_to_fit), - ve_config_get_bool (ve_config_get (config_file), - GDM_KEY_BACKGROUND_SCALE_TO_FIT)); + gdm_config_get_bool (GDM_KEY_BACKGROUND_SCALE_TO_FIT)); - background_filename = ve_config_get_string (ve_config_get (config_file), - GDM_KEY_BACKGROUND_IMAGE); + background_filename = gdm_config_get_string (GDM_KEY_BACKGROUND_IMAGE); gtk_file_chooser_set_filename (GTK_FILE_CHOOSER (image_filechooser), background_filename); - switch (ve_config_get_int (ve_config_get (config_file), GDM_KEY_BACKGROUND_TYPE)) { + switch (gdm_config_get_int (GDM_KEY_BACKGROUND_TYPE)) { case BACKGROUND_IMAGE_AND_COLOR: { /* Image & Color background type */ @@ -5984,14 +5918,12 @@ hookup_remote_plain_logo (void) gtk_file_filter_add_pattern(filter, "*"); gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (logo_button), filter); - logo_filename = ve_config_get_string (ve_config_get (config_file), - GDM_KEY_LOGO); + logo_filename = gdm_config_get_string (GDM_KEY_LOGO); if (ve_string_empty (logo_filename)) { gchar *previous_logo_filename; - previous_logo_filename = ve_config_get_string (ve_config_get (config_file), - GDM_KEY_CHOOSER_BUTTON_LOGO); + previous_logo_filename = gdm_config_get_string (GDM_KEY_CHOOSER_BUTTON_LOGO); gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (logo_checkbutton), FALSE); gtk_widget_set_sensitive (logo_button, FALSE); @@ -6111,8 +6043,7 @@ setup_remote_themed_settings (void) gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (theme_list), TRUE); - GdmGraphicalThemeRand = ve_config_get_bool (ve_config_get (config_file), - GDM_KEY_GRAPHICAL_THEME_RAND); + GdmGraphicalThemeRand = gdm_config_get_bool (GDM_KEY_GRAPHICAL_THEME_RAND); /* Register theme mode combobox */ g_object_set_data_full (G_OBJECT (mode_combobox), "key", @@ -6435,9 +6366,9 @@ apply_user_changes (GObject *object, gint arg1, gpointer user_data) int main (int argc, char *argv[]) { - GnomeProgram *program; poptContext ctx; GtkWidget *dialog; + int nextopt; if (g_getenv ("DOING_GDM_DEVELOPMENT") != NULL) DOING_GDM_DEVELOPMENT = TRUE; @@ -6448,16 +6379,9 @@ main (int argc, char *argv[]) bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8"); textdomain (GETTEXT_PACKAGE); - program = gnome_program_init ("gdmsetup", VERSION, - LIBGNOMEUI_MODULE /* module_info */, - argc, argv, - GNOME_PROGRAM_STANDARD_PROPERTIES, - GNOME_PARAM_POPT_TABLE, options, - GNOME_PARAM_CREATE_DIRECTORIES, ! RUNNING_UNDER_GDM, - NULL); - g_object_get (G_OBJECT (program), - GNOME_PARAM_POPT_CONTEXT, &ctx, - NULL); + gtk_init(&argc, &argv); + ctx = poptGetContext(NULL, argc, (const char**)argv, options, 0); + while ((nextopt = poptGetNextOpt(ctx)) > 0 || nextopt == POPT_ERROR_BADOPT); gtk_window_set_default_icon_from_file (DATADIR"/pixmaps/gdm-setup.png", NULL); glade_gnome_init(); @@ -6481,8 +6405,7 @@ main (int argc, char *argv[]) setup_cursor (GDK_WATCH); /* parse the given gtk rc first */ - gtkrc = ve_config_get_string (ve_config_get (config_file), - GDM_KEY_GTKRC); + gtkrc = gdm_config_get_string (GDM_KEY_GTKRC); if ( ! ve_string_empty (gtkrc)) gtk_rc_parse (gtkrc); g_free (gtkrc); @@ -6490,8 +6413,7 @@ main (int argc, char *argv[]) theme_name = g_strdup (g_getenv ("GDM_GTK_THEME")); if (ve_string_empty (theme_name)) { g_free (theme_name); - theme_name = ve_config_get_string - (ve_config_get (config_file), GDM_KEY_GTK_THEME); + theme_name = gdm_config_get_string (GDM_KEY_GTK_THEME); } if ( ! ve_string_empty (theme_name)) { @@ -6525,24 +6447,15 @@ main (int argc, char *argv[]) /* XXX: the setup proggie using a greeter config var for it's * ui? Say it ain't so. Our config sections are SUCH A MESS */ - GdmIconMaxHeight = ve_config_get_int (ve_config_get (config_file), - GDM_KEY_MAX_ICON_HEIGHT); - GdmIconMaxWidth = ve_config_get_int (ve_config_get (config_file), - GDM_KEY_MAX_ICON_WIDTH); - GdmMinimalUID = ve_config_get_int (ve_config_get (config_file), - GDM_KEY_MINIMAL_UID); - GdmIncludeAll = ve_config_get_bool (ve_config_get (config_file), - GDM_KEY_INCLUDE_ALL); - GdmInclude = ve_config_get_string (ve_config_get (config_file), - GDM_KEY_INCLUDE); - GdmExclude = ve_config_get_string (ve_config_get (config_file), - GDM_KEY_EXCLUDE); - GdmSoundProgram = ve_config_get_string (ve_config_get (config_file), - GDM_KEY_SOUND_PROGRAM); - GdmAllowRoot = ve_config_get_bool (ve_config_get (config_file), - GDM_KEY_ALLOW_ROOT); - GdmAllowRemoteRoot = ve_config_get_bool (ve_config_get (config_file), - GDM_KEY_ALLOW_REMOTE_ROOT); + GdmIconMaxHeight = gdm_config_get_int (GDM_KEY_MAX_ICON_HEIGHT); + GdmIconMaxWidth = gdm_config_get_int (GDM_KEY_MAX_ICON_WIDTH); + GdmMinimalUID = gdm_config_get_int (GDM_KEY_MINIMAL_UID); + GdmIncludeAll = gdm_config_get_bool ( GDM_KEY_INCLUDE_ALL); + GdmInclude = gdm_config_get_string (GDM_KEY_INCLUDE); + GdmExclude = gdm_config_get_string (GDM_KEY_EXCLUDE); + GdmSoundProgram = gdm_config_get_string (GDM_KEY_SOUND_PROGRAM); + GdmAllowRoot = gdm_config_get_bool (GDM_KEY_ALLOW_ROOT); + GdmAllowRemoteRoot = gdm_config_get_bool (GDM_KEY_ALLOW_REMOTE_ROOT); if (ve_string_empty (GdmSoundProgram) || access (GdmSoundProgram, X_OK) != 0) { g_free (GdmSoundProgram); |