- Add gnome-shell-hidepassword.patch: authPrompt: propagate gdm "reset" signal after user switching. Fixed GDM showing showing passwords on user switching (bnc#852490, bgo#710456). - Add gnome-shell-extensions-disabling.patch: catch more errors on extensions enable() and disable(). Fixes gnome-shell extensions disabled on screen unlock (bnc#852527, bgo#688331, bgo#719378). - Add gnome-shell-tray-reentrant.patch: messageTray: Prevent reentrancy issues in _updateState (bgo#711694). OBS-URL: https://build.opensuse.org/request/show/208896 OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/gnome-shell?expand=0&rev=196
86 lines
2.7 KiB
Diff
86 lines
2.7 KiB
Diff
From b2f547e93452cb2d406263cd9bb8743760c28683 Mon Sep 17 00:00:00 2001
|
|
From: Ray Strode <rstrode@redhat.com>
|
|
Date: Mon, 25 Nov 2013 22:30:53 -0500
|
|
Subject: [PATCH] authPrompt: propagate gdm "reset" signal after user switching
|
|
|
|
After a user types in their password at the login screen, one
|
|
of two things can happen
|
|
|
|
1) a new session is started
|
|
2) an existing session is switched to
|
|
|
|
In the latter case, GDM sends a reset signal to the login screen,
|
|
so it knows to go back to the user list and wait to be summoned
|
|
again.
|
|
|
|
Unfortunately, all reset signals are ignored after verification
|
|
success. The reason is because the reset handler was copied from
|
|
the unlock dialog as part of a deduplication effort in commit
|
|
7e7295f259febf34c89659a9bcb05f9924fa1976 and the unlock dialog
|
|
handler at the time also emitted a "failed" signal on reset
|
|
(which wouldn't make sense to emit after success).
|
|
|
|
These days "failed" is handled in a different way.
|
|
|
|
This commit changes the code to let reset signals through after
|
|
successful verification.
|
|
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=710456
|
|
---
|
|
js/gdm/authPrompt.js | 6 ++----
|
|
1 file changed, 2 insertions(+), 4 deletions(-)
|
|
|
|
diff --git a/js/gdm/authPrompt.js b/js/gdm/authPrompt.js
|
|
index 1880e36..996b363 100644
|
|
--- a/js/gdm/authPrompt.js
|
|
+++ b/js/gdm/authPrompt.js
|
|
@@ -246,44 +246,42 @@ const AuthPrompt = new Lang.Class({
|
|
|
|
_onShowMessage: function(userVerifier, message, type) {
|
|
this.setMessage(message, type);
|
|
this.emit('prompted');
|
|
},
|
|
|
|
_onVerificationFailed: function() {
|
|
this._queryingService = null;
|
|
this.clear();
|
|
|
|
this.updateSensitivity(true);
|
|
this.setActorInDefaultButtonWell(null);
|
|
this.verificationStatus = AuthPromptStatus.VERIFICATION_FAILED;
|
|
},
|
|
|
|
_onVerificationComplete: function() {
|
|
this.verificationStatus = AuthPromptStatus.VERIFICATION_SUCCEEDED;
|
|
},
|
|
|
|
_onReset: function() {
|
|
- if (this.verificationStatus != AuthPromptStatus.VERIFICATION_SUCCEEDED) {
|
|
- this.verificationStatus = AuthPromptStatus.NOT_VERIFYING;
|
|
- this.reset();
|
|
- }
|
|
+ this.verificationStatus = AuthPromptStatus.NOT_VERIFYING;
|
|
+ this.reset();
|
|
},
|
|
|
|
addActorToDefaultButtonWell: function(actor) {
|
|
this._defaultButtonWell.add_child(actor);
|
|
},
|
|
|
|
setActorInDefaultButtonWell: function(actor, animate) {
|
|
if (!this._defaultButtonWellActor &&
|
|
!actor)
|
|
return;
|
|
|
|
let oldActor = this._defaultButtonWellActor;
|
|
|
|
if (oldActor)
|
|
Tweener.removeTweens(oldActor);
|
|
|
|
let isSpinner;
|
|
if (actor == this._spinner.actor)
|
|
isSpinner = true;
|
|
else
|
|
--
|
|
1.8.3.1
|