diff options
author | Lionel Le Folgoc <mrpouit@ubuntu.com> | 2012-08-30 19:38:14 +0200 |
---|---|---|
committer | Lionel Le Folgoc <mrpouit@ubuntu.com> | 2012-08-30 19:38:14 +0200 |
commit | 98831cde205275997e827e996e41d9692ababb16 (patch) | |
tree | 6c2b452ea50f9ad38f65d58f7755d9eada8574dc /src/lightdm-gtk-greeter.c | |
parent | ad69b841a80d9ed49b07be44d1ea13007bda8d38 (diff) | |
download | lightdm-gtk-greeter-98831cde205275997e827e996e41d9692ababb16.tar.gz |
Hide the Cancel button, useless with the normal combobox
(it's still displayed when the user list is disabled or when "Other" is selected)
Diffstat (limited to 'src/lightdm-gtk-greeter.c')
-rw-r--r-- | src/lightdm-gtk-greeter.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/lightdm-gtk-greeter.c b/src/lightdm-gtk-greeter.c index a6889ee..6430478 100644 --- a/src/lightdm-gtk-greeter.c +++ b/src/lightdm-gtk-greeter.c @@ -23,7 +23,7 @@ static LightDMGreeter *greeter; static GKeyFile *state; static gchar *state_filename; static GtkWindow *login_window, *panel_window; -static GtkButton *login_button; +static GtkButton *login_button, *cancel_button; static GtkLabel *message_label, *prompt_label; static GtkWidget *login_box, *prompt_box; static GtkEntry *prompt_entry; @@ -188,6 +188,7 @@ start_authentication (const gchar *username) if (strcmp (username, "*other") == 0) { + gtk_widget_show (GTK_WIDGET (cancel_button)); lightdm_greeter_authenticate (greeter, NULL); } else if (strcmp (username, "*guest") == 0) @@ -288,6 +289,12 @@ user_combobox_active_changed_cb (GtkComboBox *widget, LightDMGreeter *greeter) gchar *user; gtk_tree_model_get (GTK_TREE_MODEL (model), &iter, 0, &user, -1); + + if (strcmp (user, "*other") == 0) + gtk_widget_show (GTK_WIDGET (cancel_button)); + else + gtk_widget_hide (GTK_WIDGET (cancel_button)); + set_login_button_label (user); start_authentication (user); g_free (user); @@ -874,6 +881,7 @@ main (int argc, char **argv) login_window = GTK_WINDOW (gtk_builder_get_object (builder, "login_window")); login_box = GTK_WIDGET (gtk_builder_get_object (builder, "login_box")); login_button = GTK_BUTTON (gtk_builder_get_object (builder, "login_button")); + cancel_button = GTK_BUTTON (gtk_builder_get_object (builder, "cancel_button")); prompt_box = GTK_WIDGET (gtk_builder_get_object (builder, "prompt_box")); prompt_label = GTK_LABEL (gtk_builder_get_object (builder, "prompt_label")); prompt_entry = GTK_ENTRY (gtk_builder_get_object (builder, "prompt_entry")); @@ -1005,6 +1013,7 @@ main (int argc, char **argv) else { load_user_list (); + gtk_widget_hide (GTK_WIDGET (cancel_button)); gtk_widget_show (GTK_WIDGET (user_combo)); } |