From 2d2ac5b3f62596a3296345fa92eb07c69eac47d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Florian=20M=C3=BCllner?= Date: Mon, 4 Oct 2010 20:04:23 +0200 Subject: [PATCH] linear-view: Remove NewWorkspaceArea As the button to add workspaces will move to the same position as the new workspace drop area in drag mode, the latter is redundant and can be removed. https://bugzilla.gnome.org/show_bug.cgi?id=634948 --- data/theme/gnome-shell.css | 20 ------- js/ui/workspacesView.js | 108 ++++++++----------------------------- 2 files changed, 23 insertions(+), 105 deletions(-) diff --git a/data/theme/gnome-shell.css b/data/theme/gnome-shell.css index d0625b516..93b36d367 100644 --- a/data/theme/gnome-shell.css +++ b/data/theme/gnome-shell.css @@ -257,26 +257,6 @@ StTooltip StLabel { /* Overview */ -.new-workspace-area { - border: 2px solid rgba(255, 255, 255, 0.8); - border-radius: 10px; - background-color: #111; -} - -.new-workspace-area-internal { - background-gradient-direction: horizontal; - background-gradient-start: rgba(16, 16, 16, 0); - background-gradient-end: rgba(16, 16, 16, 1.0); - background-image: url("move-window-on-new.svg"); -} - -.new-workspace-area:hover { - border: 2px solid rgba(255, 255, 255, 1.0); - background-gradient-direction: horizontal; - background-gradient-start: rgba(130, 130, 130, 0.9); - background-gradient-end: rgba(16, 16, 16, 0.9); -} - .workspaces { color: white; } diff --git a/js/ui/workspacesView.js b/js/ui/workspacesView.js index c8e911a1e..82d486810 100644 --- a/js/ui/workspacesView.js +++ b/js/ui/workspacesView.js @@ -28,7 +28,7 @@ const WorkspacesViewType = { const WORKSPACES_VIEW_KEY = 'workspaces-view'; const WORKSPACE_DRAGGING_SCALE = 0.85; -const WORKSPACE_SHADOW_SCALE = (1 - WORKSPACE_DRAGGING_SCALE) / 2; + function GenericWorkspacesView(width, height, x, y, workspaces) { this._init(width, height, x, y, workspaces); @@ -472,32 +472,6 @@ MosaicView.prototype = { } }; -function NewWorkspaceArea() { - this._init(); -} - -NewWorkspaceArea.prototype = { - _init: function() { - let width = Math.ceil(global.screen_width * WORKSPACE_SHADOW_SCALE); - this.actor = new Clutter.Group({ width: width, - height: global.screen_height, - x: global.screen_width }); - - this._child1 = new St.Bin({ style_class: 'new-workspace-area', - width: width, - height: global.screen_height }); - this._child2 = new St.Bin({ style_class: 'new-workspace-area-internal', - width: width, - height: global.screen_height, - reactive: true }); - this.actor.add_actor(this._child1); - this.actor.add_actor(this._child2); - }, - - setStyle: function(isHover) { - this._child1.set_hover(isHover); - } -}; function WorkspaceIndicator(activateWorkspace, workspaceAcceptDrop, workspaceHandleDragOver, scrollEventCb) { this._init(activateWorkspace, workspaceAcceptDrop, workspaceHandleDragOver, scrollEventCb); @@ -636,12 +610,6 @@ SingleView.prototype = { __proto__: GenericWorkspacesView.prototype, _init: function(width, height, x, y, workspaces) { - - this._newWorkspaceArea = new NewWorkspaceArea(); - this._newWorkspaceArea.actor._delegate = { - acceptDrop: Lang.bind(this, this._acceptNewWorkspaceDrop) - }; - GenericWorkspacesView.prototype._init.call(this, width, height, x, y, workspaces); this._itemDragBeginId = Main.overview.connect('item-drag-begin', @@ -655,8 +623,6 @@ SingleView.prototype = { Lang.bind(this, this._dragEnd)); } - this.actor.add_actor(this._newWorkspaceArea.actor); - this.actor.add_style_class_name('single'); this.actor.set_clip(x, y, width, height); this._activeWorkspaceX = 0; // x offset of active ws while dragging @@ -717,11 +683,6 @@ SingleView.prototype = { workspace.setSelected(false); } - - this._newWorkspaceArea.scale = scale; - this._newWorkspaceArea.gridX = this._x + this._activeWorkspaceX - + (this._workspaces.length - active) * (_width + this._spacing); - this._newWorkspaceArea.gridY = this._y + this._activeWorkspaceY; }, _transitionWorkspaces: function() { @@ -908,19 +869,32 @@ SingleView.prototype = { workspace.gridX += dx; if (showAnimation) { - Tweener.addTween(workspace.actor, - { x: workspace.gridX, - y: workspace.gridY, - scale_x: workspace.scale, - scale_y: workspace.scale, - opacity: workspace.opacity, - time: WORKSPACE_SWITCH_TIME, - transition: 'easeOutQuad' - }); + let params = { x: workspace.gridX, + y: workspace.gridY, + scale_x: workspace.scale, + scale_y: workspace.scale, + opacity: workspace.opacity, + time: WORKSPACE_SWITCH_TIME, + transition: 'easeOutQuad' + }; + // we have to call _updateVisibility() once before the + // animation and once afterwards - it does not really + // matter which tween we use, so we pick the first one ... + if (w == 0) { + this._updateVisibility(); + params.onComplete = Lang.bind(this, + function() { + this._animating = false; + this._updateVisibility(); + }); + } + Tweener.addTween(workspace.actor, params); } else { workspace.actor.set_scale(workspace.scale, workspace.scale); workspace.actor.set_position(workspace.gridX, workspace.gridY); workspace.actor.opacity = workspace.opacity; + if (w == 0) + this._updateVisibility(); } } @@ -945,35 +919,6 @@ SingleView.prototype = { this._cleanWorkspaces(); } } - - Tweener.removeTweens(this._newWorkspaceArea.actor); - - this._newWorkspaceArea.gridX += dx; - if (showAnimation) { - // we have to call _updateVisibility() once before the - // animation and once afterwards - it does not really - // matter which tween we use, as long as it's not inside - // a loop ... - this._updateVisibility(); - Tweener.addTween(this._newWorkspaceArea.actor, - { x: this._newWorkspaceArea.gridX, - y: this._newWorkspaceArea.gridY, - scale_x: this._newWorkspaceArea.scale, - scale_y: this._newWorkspaceArea.scale, - time: WORKSPACE_SWITCH_TIME, - transition: 'easeOutQuad', - onComplete: Lang.bind(this, function() { - this._animating = false; - this._updateVisibility(); - }) - }); - } else { - this._newWorkspaceArea.actor.set_scale(this._newWorkspaceArea.scale, - this._newWorkspaceArea.scale); - this._newWorkspaceArea.actor.set_position(this._newWorkspaceArea.gridX, - this._newWorkspaceArea.gridY); - this._updateVisibility(); - } }, _updateVisibility: function() { @@ -1155,13 +1100,6 @@ SingleView.prototype = { } else { rightWorkspace.opacity = rightWorkspace.actor.opacity = 200; } - } else { - let targetParent = dragEvent.targetActor.get_parent(); - if (targetParent == this._newWorkspaceArea.actor) { - this._newWorkspaceArea.setStyle(true); - result = this._handleDragOverNewWorkspace(dragEvent.source, dragEvent.dragActor); - } else - this._newWorkspaceArea.setStyle(false); } // handle delayed workspace switches