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
This commit is contained in:
Giovanni Campagna 2012-11-25 23:51:44 +01:00 committed by Florian Müllner
parent c3706faeb6
commit 5be206f0f4

View File

@ -2051,6 +2051,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;