workspace: Remove tweens when hiding overlays
The window overlays may be shown erroneously if hideOverlays is called while the corresponding clone has an uncompleted tween which calls showOverlays in its onComplete handler, for instance when quickly leaving the overview before the initial overview animation has finished. To fix, remove all existing tweens when hiding the overlays. https://bugzilla.gnome.org/show_bug.cgi?id=666020
This commit is contained in:
parent
58e4870cb8
commit
8a6a3968c3
@ -1130,6 +1130,8 @@ const Workspace = new Lang.Class({
|
|||||||
|
|
||||||
_hideAllOverlays: function() {
|
_hideAllOverlays: function() {
|
||||||
for (let i = 0; i < this._windows.length; i++) {
|
for (let i = 0; i < this._windows.length; i++) {
|
||||||
|
let clone = this._windows[i];
|
||||||
|
Tweener.removeTweens(clone.actor);
|
||||||
let overlay = this._windowOverlays[i];
|
let overlay = this._windowOverlays[i];
|
||||||
if (overlay)
|
if (overlay)
|
||||||
overlay.hide();
|
overlay.hide();
|
||||||
|
Loading…
Reference in New Issue
Block a user