[gnome-shell] Fix updating of workspace frame actor



commit 02ee6f69b3b0f048a3f0a04bb61d831e13d06fa5
Author: Owen W. Taylor <otaylor fishsoup net>
Date:   Sat Aug 8 00:31:47 2009 -0400

    Fix updating of workspace frame actor
    
    Both the position and size of the frame actor depend on the scale
    of the workspace, so update them both when the scale changes.
    
    On the other hand, the the frame actor doesn't need to be
    repositioned when the workspace moves (since it is relative to the
    workspace). We do base the frame  position of the desktop actor, but
    that will presumably stay fixed (at 0,0) in most all cases.
    
    http://bugzilla.gnome.org/show_bug.cgi?id=591122

 js/ui/workspaces.js |    7 +------
 1 files changed, 1 insertions(+), 6 deletions(-)
---
diff --git a/js/ui/workspaces.js b/js/ui/workspaces.js
index db15e2b..72dbbfd 100644
--- a/js/ui/workspaces.js
+++ b/js/ui/workspaces.js
@@ -411,13 +411,11 @@ Workspace.prototype = {
                                  this._desktop.actor.height + 2 * FRAME_SIZE / this.actor.scale_y);
             this._frame.lower_bottom();
 
-            this._framePosHandler = this.actor.connect('notify::x', Lang.bind(this, this._updateFramePosition));
-            this._frameSizeHandler = this.actor.connect('notify::scale-x', Lang.bind(this, this._updateFrameSize));
+            this._framePosHandler = this.actor.connect('notify::scale-x', Lang.bind(this, this._updateFramePosition));
         } else {
             if (!this._frame)
                 return;
             this.actor.disconnect(this._framePosHandler);
-            this.actor.disconnect(this._frameSizeHandler);
             this._frame.destroy();
             this._frame = null;
         }
@@ -426,9 +424,6 @@ Workspace.prototype = {
     _updateFramePosition : function() {
         this._frame.set_position(this._desktop.actor.x - FRAME_SIZE / this.actor.scale_x,
                                  this._desktop.actor.y - FRAME_SIZE / this.actor.scale_y);
-    },
-
-    _updateFrameSize : function() {
         this._frame.set_size(this._desktop.actor.width + 2 * FRAME_SIZE / this.actor.scale_x,
                              this._desktop.actor.height + 2 * FRAME_SIZE / this.actor.scale_y);
     },



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