[gnome-shell] MessageTray: remove all tweens when tweening for state parameters



commit 1a27d7dfc02c06bd0ccf4258a9108207b8832ce4
Author: Giovanni Campagna <gcampagna src gnome org>
Date:   Sun Nov 25 23:51:44 2012 +0100

    MessageTray: remove all tweens when tweening for state parameters
    
    MessageTray._tween sets the state variable to the in-progress value,
    so it must be sure that at the end of the animation the value will
    be the corresponding final and nothing else will happen in between.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=683986

 js/ui/messageTray.js |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
---
diff --git a/js/ui/messageTray.js b/js/ui/messageTray.js
index 061135a..0241dbd 100644
--- a/js/ui/messageTray.js
+++ b/js/ui/messageTray.js
@@ -2108,6 +2108,8 @@ const MessageTray = new Lang.Class({
         params.onCompleteScope = this;
         params.onCompleteParams = [statevar, value, onComplete, onCompleteScope, onCompleteParams];
 
+        // Remove other tweens that could mess with the state machine
+        Tweener.removeTweens(actor);
         Tweener.addTween(actor, params);
 
         let valuing = (value == State.SHOWN) ? State.SHOWING : State.HIDING;
@@ -2429,8 +2431,6 @@ const MessageTray = new Lang.Class({
         if (this._notificationWidget.y < expandedY) {
             this._notificationWidget.y = expandedY;
         } else if (this._notification.y != expandedY) {
-            // Remove any other tween that could mess with the state machine
-            Tweener.removeTweens(this._notificationWidget);
             // Tween also opacity here, to override a possible tween that's
             // currently hiding the notification.
             this._tween(this._notificationWidget, '_notificationState', State.SHOWN,



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