[gnome-shell] overview: Really fix zoom animation
- From: Adel Gadllah <agadllah src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-shell] overview: Really fix zoom animation
- Date: Wed, 26 Jun 2013 16:07:06 +0000 (UTC)
commit b1c936164cb225907d791427e6707f68713ea13a
Author: Adel Gadllah <adel gadllah gmail com>
Date: Wed Jun 26 11:12:35 2013 +0200
overview: Really fix zoom animation
Commit 16fa186b633d attempted to fix the zoom animation problem
by throwing changes on the floor while the overview is animating. This has
the side effect that we might end up missing some positioning changes causes
windows to overlap the workspace thumbnails.
So revert those changes and fix it by simply by passing
WindowPositionFlags.ANIMATE during the overview animation.
This way the animation works as expected and we don't miss any position changes.
https://bugzilla.gnome.org/show_bug.cgi?id=703105
js/ui/workspace.js | 2 +-
js/ui/workspacesView.js | 8 +-------
2 files changed, 2 insertions(+), 8 deletions(-)
---
diff --git a/js/ui/workspace.js b/js/ui/workspace.js
index 7137504..dc7e43e 100644
--- a/js/ui/workspace.js
+++ b/js/ui/workspace.js
@@ -997,7 +997,7 @@ const Workspace = new Lang.Class({
this._dropRect.set_position(geom.x, geom.y);
this._dropRect.set_size(geom.width, geom.height);
- this._updateWindowPositions(WindowPositionFlags.NONE);
+ this._updateWindowPositions(Main.overview.animationInProgress ? WindowPositionFlags.ANIMATE :
WindowPositionFlags.NONE);
this._actualGeometryLater = 0;
return false;
diff --git a/js/ui/workspacesView.js b/js/ui/workspacesView.js
index 3eb9c0d..50f079c 100644
--- a/js/ui/workspacesView.js
+++ b/js/ui/workspacesView.js
@@ -446,7 +446,7 @@ const WorkspacesDisplay = new Lang.Class({
_init: function() {
this.actor = new St.Widget({ clip_to_allocation: true });
- this.actor.connect('notify::allocation', Lang.bind(this, this._allocationChanged));
+ this.actor.connect('notify::allocation', Lang.bind(this, this._updateWorkspacesActualGeometry));
this.actor.connect('parent-set', Lang.bind(this, this._parentSet));
let clickAction = new Clutter.ClickAction()
@@ -676,12 +676,6 @@ const WorkspacesDisplay = new Lang.Class({
}
},
- _allocationChanged: function() {
- if (Main.overview.animationInProgress)
- return;
- this._updateWorkspacesActualGeometry();
- },
-
_updateWorkspacesActualGeometry: function() {
if (!this._workspacesViews.length)
return;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]