From f904756f74d4d9d01690e7f10746f8135e13c5a4 Mon Sep 17 00:00:00 2001 From: Ondrej Holy Date: Sat, 26 Jul 2014 16:23:44 +0200 Subject: [PATCH] user-accounts: allow password changing if old password isn't set https://bugzilla.gnome.org/show_bug.cgi?id=733619 --- panels/user-accounts/um-password-dialog.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/panels/user-accounts/um-password-dialog.c b/panels/user-accounts/um-password-dialog.c index b56dde29a..d777d9154 100644 --- a/panels/user-accounts/um-password-dialog.c +++ b/panels/user-accounts/um-password-dialog.c @@ -538,6 +538,8 @@ void um_password_dialog_set_user (UmPasswordDialog *um, ActUser *user) { + gboolean visible; + if (um->user) { g_object_unref (um->user); um->user = NULL; @@ -555,9 +557,11 @@ um_password_dialog_set_user (UmPasswordDialog *um, if (act_user_get_uid (um->user) == getuid ()) { mode_change (um, ACT_USER_PASSWORD_MODE_REGULAR); gtk_widget_hide (um->action_radio_box); - gtk_widget_show (um->old_password_label); - gtk_widget_show (um->old_password_entry); - um->old_password_ok = FALSE; + + visible = (act_user_get_password_mode (user) != ACT_USER_PASSWORD_MODE_NONE); + gtk_widget_set_visible (um->old_password_label, visible); + gtk_widget_set_visible (um->old_password_entry, visible); + um->old_password_ok = !visible; } else { mode_change (um, ACT_USER_PASSWORD_MODE_SET_AT_LOGIN);