summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLionel Le Folgoc <mrpouit@ubuntu.com>2012-08-30 19:38:14 +0200
committerLionel Le Folgoc <mrpouit@ubuntu.com>2012-08-30 19:38:14 +0200
commit98831cde205275997e827e996e41d9692ababb16 (patch)
tree6c2b452ea50f9ad38f65d58f7755d9eada8574dc
parentad69b841a80d9ed49b07be44d1ea13007bda8d38 (diff)
downloadlightdm-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)
-rw-r--r--src/lightdm-gtk-greeter.c11
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));
}