From 5d440fa8d976cb8ab10c13ff304470292eac9378 Mon Sep 17 00:00:00 2001 From: Ray Strode Date: Sun, 5 Oct 2014 16:27:00 -0400 Subject: [PATCH] gdm: disallow cancel after verification succeeds Once verification has succeeded, the train's already left the building and we shouldn't allow canceling. This commit renders the cancel button non-reactive and makes the cancel function be a noop after verification succeeds. https://bugzilla.gnome.org/show_bug.cgi?id=740141 --- js/gdm/authPrompt.js | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/js/gdm/authPrompt.js b/js/gdm/authPrompt.js index 1e51faa5c..26a4e2c2d 100644 --- a/js/gdm/authPrompt.js +++ b/js/gdm/authPrompt.js @@ -261,6 +261,7 @@ const AuthPrompt = new Lang.Class({ _onVerificationComplete: function() { this.verificationStatus = AuthPromptStatus.VERIFICATION_SUCCEEDED; + this.cancelButton.reactive = false; }, _onReset: function() { @@ -432,6 +433,7 @@ const AuthPrompt = new Lang.Class({ reset: function() { let oldStatus = this.verificationStatus; this.verificationStatus = AuthPromptStatus.NOT_VERIFYING; + this.cancelButton.reactive = true; if (oldStatus == AuthPromptStatus.VERIFYING) this._userVerifier.cancel(); @@ -500,6 +502,9 @@ const AuthPrompt = new Lang.Class({ }, cancel: function() { + if (this.verificationStatus == AuthPromptStatus.NOT_VERIFYING || this.verificationStatus == AuthPromptStatus.VERIFICATION_SUCCEEDED) { + return; + } this.reset(); this.emit('cancelled'); }