From 87245c7b33152c28e796e2cac6d587be0c2dfa39 Mon Sep 17 00:00:00 2001 From: Ray Strode Date: Mon, 22 Jul 2013 10:59:57 -0400 Subject: [PATCH] authPrompt: Call next button "Unlock" when user switching When a ShellUserVerifier is asked to verify a user at the login screen it will transparently first try to reauthenticate the user against an existing session and then fall back to logging a user into a new session. The former is used for user switching. It's useful to know which type of verification is happening, so the next button can be made to say "Unlock" instead of "Sign In" when a user is already signed in. This commit exports a new "reauthenticating" property on the ShellUserVerifier that the auth prompt checks when deciding which label to use for its next button. https://bugzilla.gnome.org/show_bug.cgi?id=704795 --- js/gdm/authPrompt.js | 4 ++-- js/gdm/util.js | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/js/gdm/authPrompt.js b/js/gdm/authPrompt.js index 2ef92e1bc..318bcfa02 100644 --- a/js/gdm/authPrompt.js +++ b/js/gdm/authPrompt.js @@ -198,9 +198,9 @@ const AuthPrompt = new Lang.Class({ this.cancelButton.hide(); if (passwordChar) { - if (this._mode == AuthPromptMode.UNLOCK_ONLY) + if (this._userVerifier.reauthenticating) this.nextButton.label = _("Unlock"); - else if (this._mode == AuthPromptMode.UNLOCK_OR_LOG_IN) + else this.nextButton.label = C_("button", "Sign In"); } else { this.nextButton.label = _("Next"); diff --git a/js/gdm/util.js b/js/gdm/util.js index 20540b7e2..1facf9881 100644 --- a/js/gdm/util.js +++ b/js/gdm/util.js @@ -121,6 +121,7 @@ const ShellUserVerifier = new Lang.Class({ this._messageQueue = []; this._messageQueueTimeoutId = 0; this.hasPendingMessages = false; + this.reauthenticating = false; this._failCounter = 0; }, @@ -129,6 +130,7 @@ const ShellUserVerifier = new Lang.Class({ this._cancellable = new Gio.Cancellable(); this._hold = hold; this._userName = userName; + this.reauthenticating = false; this._checkForFingerprintReader(); @@ -267,6 +269,7 @@ const ShellUserVerifier = new Lang.Class({ return; } + this.reauthenticating = true; this._connectSignals(); this._beginVerification(); this._hold.release();