workspace: Abort relayouting much earlier
This means that the code for computeAllWindowSlots is a bit cleaner, which will help in the future. https://bugzilla.gnome.org/show_bug.cgi?id=694469
This commit is contained in:
parent
b41902f4df
commit
1dac4d00c4
@ -1013,6 +1013,8 @@ const Workspace = new Lang.Class({
|
|||||||
}
|
}
|
||||||
|
|
||||||
let clones = this._windows.slice();
|
let clones = this._windows.slice();
|
||||||
|
if (clones.length == 0)
|
||||||
|
return;
|
||||||
|
|
||||||
clones.sort(function(a, b) {
|
clones.sort(function(a, b) {
|
||||||
return a.metaWindow.get_stable_sequence() - b.metaWindow.get_stable_sequence();
|
return a.metaWindow.get_stable_sequence() - b.metaWindow.get_stable_sequence();
|
||||||
@ -1500,7 +1502,6 @@ const Workspace = new Lang.Class({
|
|||||||
},
|
},
|
||||||
|
|
||||||
_computeAllWindowSlots: function(windows) {
|
_computeAllWindowSlots: function(windows) {
|
||||||
let totalWindows = windows.length;
|
|
||||||
let node = this.actor.get_theme_node();
|
let node = this.actor.get_theme_node();
|
||||||
|
|
||||||
// Window grid spacing
|
// Window grid spacing
|
||||||
@ -1513,21 +1514,14 @@ const Workspace = new Lang.Class({
|
|||||||
right: node.get_padding(St.Side.RIGHT),
|
right: node.get_padding(St.Side.RIGHT),
|
||||||
};
|
};
|
||||||
|
|
||||||
if (!totalWindows)
|
|
||||||
return [];
|
|
||||||
|
|
||||||
let closeButtonHeight, captionHeight;
|
let closeButtonHeight, captionHeight;
|
||||||
let leftBorder, rightBorder;
|
let leftBorder, rightBorder;
|
||||||
if (this._windowOverlays.length) {
|
|
||||||
// All of the overlays have the same chrome sizes,
|
// All of the overlays have the same chrome sizes,
|
||||||
// so just pick the first one.
|
// so just pick the first one.
|
||||||
let overlay = this._windowOverlays[0];
|
let overlay = this._windowOverlays[0];
|
||||||
[closeButtonHeight, captionHeight] = overlay.chromeHeights();
|
[closeButtonHeight, captionHeight] = overlay.chromeHeights();
|
||||||
[leftBorder, rightBorder] = overlay.chromeWidths();
|
[leftBorder, rightBorder] = overlay.chromeWidths();
|
||||||
} else {
|
|
||||||
[closeButtonHeight, captionHeight] = [0, 0];
|
|
||||||
[leftBorder, rightBorder] = [0, 0];
|
|
||||||
}
|
|
||||||
|
|
||||||
rowSpacing += captionHeight;
|
rowSpacing += captionHeight;
|
||||||
columnSpacing += (rightBorder + leftBorder) / 2;
|
columnSpacing += (rightBorder + leftBorder) / 2;
|
||||||
|
Loading…
Reference in New Issue
Block a user