diff --git a/js/ui/workspacesView.js b/js/ui/workspacesView.js index f63e3fca3..e3e242643 100644 --- a/js/ui/workspacesView.js +++ b/js/ui/workspacesView.js @@ -630,6 +630,9 @@ WorkspacesDisplay.prototype = { controls.track_hover = true; controls.connect('notify::hover', Lang.bind(this, this._onControlsHoverChanged)); + controls.connect('scroll-event', + Lang.bind(this, this._onScrollEvent)); + this._thumbnailsBox = new WorkspaceThumbnail.ThumbnailsBox(); controls.add_actor(this._thumbnailsBox.actor); @@ -925,6 +928,17 @@ WorkspacesDisplay.prototype = { // might as well avoid it. Meta.later_add(Meta.LaterType.BEFORE_REDRAW, Lang.bind(this, this._updateZoom)); + }, + + _onScrollEvent: function (actor, event) { + switch ( event.get_scroll_direction() ) { + case Clutter.ScrollDirection.UP: + Main.wm.actionMoveWorkspaceUp(); + break; + case Clutter.ScrollDirection.DOWN: + Main.wm.actionMoveWorkspaceDown(); + break; + } } }; Signals.addSignalMethods(WorkspacesDisplay.prototype);