[gnome-shell] Fix slightly misplaced overlays in single view
- From: Colin Walters <walters src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [gnome-shell] Fix slightly misplaced overlays in single view
- Date: Mon, 1 Feb 2010 15:15:39 +0000 (UTC)
commit dc3ff10c6ff33a22c06e22d1d34ca0e761d044ae
Author: Florian Müllner <fmuellner src gnome org>
Date: Sat Jan 23 10:16:12 2010 +0100
Fix slightly misplaced overlays in single view
Correct the positioning of window captions and close buttons for
non-active workspaces in single view.
https://bugzilla.gnome.org/show_bug.cgi?id=607872
js/ui/workspace.js | 10 ----------
js/ui/workspacesView.js | 4 +++-
2 files changed, 3 insertions(+), 11 deletions(-)
---
diff --git a/js/ui/workspace.js b/js/ui/workspace.js
index 8afd94c..219ab6e 100644
--- a/js/ui/workspace.js
+++ b/js/ui/workspace.js
@@ -368,8 +368,6 @@ WindowOverlay.prototype = {
x, y);
if (actor == this._windowClone.actor) {
this.closeButton.show();
- // Reposition the close button in case we've changed display modes
- this._updatePositions();
}
this.title.show();
},
@@ -393,12 +391,6 @@ WindowOverlay.prototype = {
this.title.height + this.title._spacing;
},
- _updatePositions: function() {
- let [cloneX, cloneY] = this._windowClone.actor.get_transformed_position();
- let [cloneWidth, cloneHeight] = this._windowClone.actor.get_transformed_size();
- this.updatePositions(cloneX, cloneY, cloneWidth, cloneHeight);
- },
-
/**
* @cloneX: x position of windowClone
* @cloneY: y position of windowClone
@@ -468,8 +460,6 @@ WindowOverlay.prototype = {
},
_onEnter: function() {
- this._updatePositions();
-
this._parentActor.raise_top();
this.closeButton.show();
this.emit('show-close-button');
diff --git a/js/ui/workspacesView.js b/js/ui/workspacesView.js
index 2c9e867..61a89f8 100644
--- a/js/ui/workspacesView.js
+++ b/js/ui/workspacesView.js
@@ -505,11 +505,13 @@ SingleView.prototype = {
workspace.gridX = this._x + (w - position) * workspace.actor.width;
workspace.gridY = this._y;
workspace.actor.set_position(workspace.gridX, workspace.gridY);
+ // show the overlay unconditionally first, so items get
+ // positioned correctly, then hide if necessary
+ workspace._windowOverlaysGroup.show();
if (isInt) {
if (this.actor.get_stage() != null)
workspace.positionWindows(0);
if (w == position) {
- workspace._windowOverlaysGroup.show();
workspace.actor.show();
} else {
workspace._windowOverlaysGroup.hide();
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]