Remove now unnecessary workspace controls
With automatic workspace management, explicit controls to add and remove workspaces are no longer necessary. We also can remove the use of addWorkspace for middle-button-click on a launcher since launching on the last empty workspace will do the right thing. https://bugzilla.gnome.org/show_bug.cgi?id=640996
This commit is contained in:
@ -209,12 +209,6 @@ WorkspacesView.prototype = {
|
||||
this._workspaces[i].syncStacking(stackIndices);
|
||||
},
|
||||
|
||||
// Handles a drop onto the (+) button; assumes the new workspace
|
||||
// has already been added
|
||||
acceptNewWorkspaceDrop: function(source, dropActor, x, y, time) {
|
||||
return this._workspaces[this._workspaces.length - 1].acceptDrop(source, dropActor, x, y, time);
|
||||
},
|
||||
|
||||
// Get the grid position of the active workspace.
|
||||
getActiveWorkspacePosition: function() {
|
||||
let activeWorkspaceIndex = global.screen.get_active_workspace_index();
|
||||
@ -223,37 +217,6 @@ WorkspacesView.prototype = {
|
||||
return [activeWorkspace.x, activeWorkspace.y];
|
||||
},
|
||||
|
||||
canAddWorkspace: function() {
|
||||
return global.screen.n_workspaces < MAX_WORKSPACES;
|
||||
},
|
||||
|
||||
addWorkspace: function() {
|
||||
let ws = null;
|
||||
if (!this.canAddWorkspace()) {
|
||||
Main.overview.shellInfo.setMessage(_("Can't add a new workspace because maximum workspaces limit has been reached."));
|
||||
} else {
|
||||
let currentTime = global.get_current_time();
|
||||
ws = global.screen.append_new_workspace(false, currentTime);
|
||||
}
|
||||
|
||||
return ws;
|
||||
},
|
||||
|
||||
canRemoveWorkspace: function() {
|
||||
return this._getWorkspaceIndexToRemove() > 0;
|
||||
},
|
||||
|
||||
removeWorkspace: function() {
|
||||
if (!this.canRemoveWorkspace()) {
|
||||
Main.overview.shellInfo.setMessage(_("Can't remove the first workspace."));
|
||||
return;
|
||||
}
|
||||
let index = this._getWorkspaceIndexToRemove();
|
||||
let metaWorkspace = this._workspaces[index].metaWorkspace;
|
||||
global.screen.remove_workspace(metaWorkspace,
|
||||
global.get_current_time());
|
||||
},
|
||||
|
||||
zoomOut: function() {
|
||||
if (this._zoomOut)
|
||||
return;
|
||||
@ -272,21 +235,6 @@ WorkspacesView.prototype = {
|
||||
this._updateWorkspaceActors(true);
|
||||
},
|
||||
|
||||
_handleDragOverNewWorkspace: function(source, dropActor, x, y, time) {
|
||||
if (source.realWindow)
|
||||
return DND.DragMotionResult.MOVE_DROP;
|
||||
if (source.shellWorkspaceLaunch)
|
||||
return DND.DragMotionResult.COPY_DROP;
|
||||
return DND.DragMotionResult.CONTINUE;
|
||||
},
|
||||
|
||||
_acceptNewWorkspaceDrop: function(source, dropActor, x, y, time) {
|
||||
let ws = this.addWorkspace();
|
||||
if (ws == null)
|
||||
return false;
|
||||
return this.acceptNewWorkspaceDrop(source, dropActor, x, y, time);
|
||||
},
|
||||
|
||||
// Compute the position, scale and opacity of the workspaces, but don't
|
||||
// actually change the actors to match
|
||||
_computeWorkspacePositions: function() {
|
||||
@ -717,14 +665,6 @@ WorkspacesDisplay.prototype = {
|
||||
controls.connect('notify::hover',
|
||||
Lang.bind(this, this._onControlsHoverChanged));
|
||||
|
||||
// Add/remove workspace buttons
|
||||
this._removeButton = new St.Button({ label: '–', // n-dash
|
||||
style_class: 'remove-workspace' });
|
||||
this._removeButton.connect('clicked', Lang.bind(this, function() {
|
||||
this.workspacesView.removeWorkspace();
|
||||
}));
|
||||
controls.add(this._removeButton);
|
||||
|
||||
this._thumbnailsBox = new St.BoxLayout({ vertical: true,
|
||||
style_class: 'workspace-thumbnails' });
|
||||
controls.add(this._thumbnailsBox, { expand: false });
|
||||
@ -744,22 +684,6 @@ WorkspacesDisplay.prototype = {
|
||||
indicator.add_constraint(constraint);
|
||||
});
|
||||
|
||||
this._addButton = new St.Button({ label: '+',
|
||||
style_class: 'add-workspace' });
|
||||
this._addButton.connect('clicked', Lang.bind(this, function() {
|
||||
this.workspacesView.addWorkspace();
|
||||
}));
|
||||
this._addButton._delegate = this._addButton;
|
||||
this._addButton._delegate.acceptDrop = Lang.bind(this,
|
||||
function(source, actor, x, y, time) {
|
||||
return this.workspacesView._acceptNewWorkspaceDrop(source, actor, x, y, time);
|
||||
});
|
||||
this._addButton._delegate.handleDragOver = Lang.bind(this,
|
||||
function(source, actor, x, y, time) {
|
||||
return this.workspacesView._handleDragOverNewWorkspace(source, actor, x, y, time);
|
||||
});
|
||||
controls.add(this._addButton, { expand: true });
|
||||
|
||||
this.workspacesView = null;
|
||||
|
||||
this._inDrag = false;
|
||||
|
Reference in New Issue
Block a user