workspaces-view: make sure to add spacing between view and controls
The thumbnail controls are not a separate actor in the overview group yet, so we need to ensure a spacing between them and the workspaces view. Instead of exporting the overview spacing, just add a temporary style class to the workspaces-view actor for it. It will be removed in the future when we change the layout of overview elements. https://bugzilla.gnome.org/show_bug.cgi?id=690174
This commit is contained in:
parent
57d3bec95c
commit
a0e340f06e
@ -620,6 +620,10 @@ StScrollBar StButton#vhandle:active {
|
|||||||
spacing: 32px;
|
spacing: 32px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.workspaces-display {
|
||||||
|
spacing: 32px; /* needs to be the same value as #overview-group */
|
||||||
|
}
|
||||||
|
|
||||||
.window-caption {
|
.window-caption {
|
||||||
spacing: 25px;
|
spacing: 25px;
|
||||||
}
|
}
|
||||||
|
@ -437,13 +437,24 @@ const WorkspacesDisplay = new Lang.Class({
|
|||||||
Name: 'WorkspacesDisplay',
|
Name: 'WorkspacesDisplay',
|
||||||
|
|
||||||
_init: function() {
|
_init: function() {
|
||||||
this.actor = new Shell.GenericContainer();
|
this.actor = new Shell.GenericContainer({ style_class: 'workspaces-display' });
|
||||||
this.actor.connect('get-preferred-width', Lang.bind(this, this._getPreferredWidth));
|
this.actor.connect('get-preferred-width', Lang.bind(this, this._getPreferredWidth));
|
||||||
this.actor.connect('get-preferred-height', Lang.bind(this, this._getPreferredHeight));
|
this.actor.connect('get-preferred-height', Lang.bind(this, this._getPreferredHeight));
|
||||||
this.actor.connect('allocate', Lang.bind(this, this._allocate));
|
this.actor.connect('allocate', Lang.bind(this, this._allocate));
|
||||||
this.actor.connect('parent-set', Lang.bind(this, this._parentSet));
|
this.actor.connect('parent-set', Lang.bind(this, this._parentSet));
|
||||||
this.actor.set_clip_to_allocation(true);
|
this.actor.set_clip_to_allocation(true);
|
||||||
|
|
||||||
|
this._spacing = 0;
|
||||||
|
this.actor.connect('style-changed', Lang.bind(this,
|
||||||
|
function() {
|
||||||
|
let node = this.actor.get_theme_node();
|
||||||
|
let spacing = node.get_length('spacing');
|
||||||
|
if (spacing != this._spacing) {
|
||||||
|
this._spacing = spacing;
|
||||||
|
this._updateWorkspacesGeometry();
|
||||||
|
}
|
||||||
|
}));
|
||||||
|
|
||||||
let clickAction = new Clutter.ClickAction()
|
let clickAction = new Clutter.ClickAction()
|
||||||
clickAction.connect('clicked', Lang.bind(this, function(action) {
|
clickAction.connect('clicked', Lang.bind(this, function(action) {
|
||||||
// Only switch to the workspace when there's no application
|
// Only switch to the workspace when there's no application
|
||||||
@ -854,6 +865,7 @@ const WorkspacesDisplay = new Lang.Class({
|
|||||||
let clipY = y + (fullHeight - clipHeight) / 2;
|
let clipY = y + (fullHeight - clipHeight) / 2;
|
||||||
|
|
||||||
let widthAdjust = this._zoomOut ? controlsNatural : controlsVisible;
|
let widthAdjust = this._zoomOut ? controlsNatural : controlsVisible;
|
||||||
|
widthAdjust += this._spacing;
|
||||||
width -= widthAdjust;
|
width -= widthAdjust;
|
||||||
if (rtl)
|
if (rtl)
|
||||||
x += widthAdjust;
|
x += widthAdjust;
|
||||||
|
Loading…
Reference in New Issue
Block a user