[gnome-shell] authPrompt: stop spinner after its hidden



commit 030a22d795e595fd4600ef8e95a1fa0a7a20dfbd
Author: Ray Strode <rstrode redhat com>
Date:   Fri Aug 21 09:09:39 2015 -0400

    authPrompt: stop spinner after its hidden
    
    The code previously tried to stop spinner after it was hidden, but
    due to an incorrect check was only stoppig it after it was shown.
    
    Also, it was only stopping after hiding due to an animation, and
    failing to stop it in the non-animated case.
    
    This left the spinner hidden and running while VT switched away
    from the login screen, only stopping when the auth prompt was
    reset when switching back.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=753891

 data/theme/gnome-shell-sass |    2 +-
 js/gdm/authPrompt.js        |   13 ++++++++++++-
 2 files changed, 13 insertions(+), 2 deletions(-)
---
diff --git a/data/theme/gnome-shell-sass b/data/theme/gnome-shell-sass
index 034d0b7..1726663 160000
--- a/data/theme/gnome-shell-sass
+++ b/data/theme/gnome-shell-sass
@@ -1 +1 @@
-Subproject commit 034d0b775b12f2212ba2028b153e4c2f31e6fa65
+Subproject commit 172666394146a88445811e86ce37a3f36775004c
diff --git a/js/gdm/authPrompt.js b/js/gdm/authPrompt.js
index c30789e..465cb3d 100644
--- a/js/gdm/authPrompt.js
+++ b/js/gdm/authPrompt.js
@@ -281,6 +281,12 @@ const AuthPrompt = new Lang.Class({
         if (oldActor)
             Tweener.removeTweens(oldActor);
 
+        let wasSpinner;
+        if (oldActor == this._spinner.actor)
+            wasSpinner = true;
+        else
+            wasSpinner = false;
+
         let isSpinner;
         if (actor == this._spinner.actor)
             isSpinner = true;
@@ -290,6 +296,11 @@ const AuthPrompt = new Lang.Class({
         if (this._defaultButtonWellActor != actor && oldActor) {
             if (!animate) {
                 oldActor.opacity = 0;
+
+                if (wasSpinner) {
+                    if (this._spinner)
+                        this._spinner.stop();
+                }
             } else {
                 Tweener.addTween(oldActor,
                                  { opacity: 0,
@@ -298,7 +309,7 @@ const AuthPrompt = new Lang.Class({
                                    transition: 'linear',
                                    onCompleteScope: this,
                                    onComplete: function() {
-                                      if (isSpinner) {
+                                      if (wasSpinner) {
                                           if (this._spinner)
                                               this._spinner.stop();
                                       }


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]