background: don't use raise_top() since it's costly
We currently resync the stacking order of the two key frames every iteration of the animation. This is costly and unnecessary. This commit ensures they're stacked properly up front and doesn't touch them after that. https://bugzilla.gnome.org/show_bug.cgi?id=694993
This commit is contained in:
parent
1566a4e607
commit
020128b9ca
@ -356,7 +356,7 @@ const Background = new Lang.Class({
|
|||||||
|
|
||||||
let actor = new Meta.BackgroundActor();
|
let actor = new Meta.BackgroundActor();
|
||||||
actor.content = content;
|
actor.content = content;
|
||||||
this.actor.add_child(actor);
|
this.actor.insert_child_at_index(actor, index);
|
||||||
|
|
||||||
this._images[index] = actor;
|
this._images[index] = actor;
|
||||||
this._watchCacheFile(filename);
|
this._watchCacheFile(filename);
|
||||||
@ -372,10 +372,8 @@ const Background = new Lang.Class({
|
|||||||
},
|
},
|
||||||
|
|
||||||
_updateAnimationProgress: function() {
|
_updateAnimationProgress: function() {
|
||||||
if (this._images[1]) {
|
if (this._images[1])
|
||||||
this._images[1].raise_top();
|
|
||||||
this._images[1].opacity = this._animation.transitionProgress * 255;
|
this._images[1].opacity = this._animation.transitionProgress * 255;
|
||||||
}
|
|
||||||
|
|
||||||
this._queueAnimationUpdate();
|
this._queueAnimationUpdate();
|
||||||
},
|
},
|
||||||
|
Loading…
Reference in New Issue
Block a user