diff --git a/js/ui/appDisplay.js b/js/ui/appDisplay.js index 0c2b97598..40122ad4b 100644 --- a/js/ui/appDisplay.js +++ b/js/ui/appDisplay.js @@ -281,6 +281,7 @@ var BaseAppView = GObject.registerClass({ // Swipe this._swipeTracker = new SwipeTracker.SwipeTracker(this._scrollView, + Clutter.Orientation.HORIZONTAL, Shell.ActionMode.OVERVIEW | Shell.ActionMode.POPUP); this._swipeTracker.orientation = Clutter.Orientation.HORIZONTAL; this._swipeTracker.connect('begin', this._swipeBegin.bind(this)); diff --git a/js/ui/overview.js b/js/ui/overview.js index 78736e513..355ef1ddd 100644 --- a/js/ui/overview.js +++ b/js/ui/overview.js @@ -240,6 +240,7 @@ var Overview = class { this.toggle.bind(this)); const swipeTracker = new SwipeTracker.SwipeTracker(global.stage, + Clutter.Orientation.VERTICAL, Shell.ActionMode.NORMAL | Shell.ActionMode.OVERVIEW, { allowDrag: false, allowScroll: false }); swipeTracker.orientation = Clutter.Orientation.VERTICAL; diff --git a/js/ui/swipeTracker.js b/js/ui/swipeTracker.js index f62d5cd7d..a68e93b82 100644 --- a/js/ui/swipeTracker.js +++ b/js/ui/swipeTracker.js @@ -95,7 +95,7 @@ const TouchpadSwipeGesture = GObject.registerClass({ 'orientation': GObject.ParamSpec.enum( 'orientation', 'orientation', 'orientation', GObject.ParamFlags.READWRITE, - Clutter.Orientation, Clutter.Orientation.VERTICAL), + Clutter.Orientation, Clutter.Orientation.HORIZONTAL), }, Signals: { 'begin': { param_types: [GObject.TYPE_UINT, GObject.TYPE_DOUBLE, GObject.TYPE_DOUBLE] }, @@ -220,7 +220,7 @@ const TouchSwipeGesture = GObject.registerClass({ 'orientation': GObject.ParamSpec.enum( 'orientation', 'orientation', 'orientation', GObject.ParamFlags.READWRITE, - Clutter.Orientation, Clutter.Orientation.VERTICAL), + Clutter.Orientation, Clutter.Orientation.HORIZONTAL), }, Signals: { 'begin': { param_types: [GObject.TYPE_UINT, GObject.TYPE_DOUBLE, GObject.TYPE_DOUBLE] }, @@ -316,7 +316,7 @@ const ScrollGesture = GObject.registerClass({ 'orientation': GObject.ParamSpec.enum( 'orientation', 'orientation', 'orientation', GObject.ParamFlags.READWRITE, - Clutter.Orientation, Clutter.Orientation.VERTICAL), + Clutter.Orientation, Clutter.Orientation.HORIZONTAL), 'scroll-modifiers': GObject.ParamSpec.flags( 'scroll-modifiers', 'scroll-modifiers', 'scroll-modifiers', GObject.ParamFlags.READWRITE, @@ -444,7 +444,7 @@ var SwipeTracker = GObject.registerClass({ 'orientation': GObject.ParamSpec.enum( 'orientation', 'orientation', 'orientation', GObject.ParamFlags.READWRITE, - Clutter.Orientation, Clutter.Orientation.VERTICAL), + Clutter.Orientation, Clutter.Orientation.HORIZONTAL), 'distance': GObject.ParamSpec.double( 'distance', 'distance', 'distance', GObject.ParamFlags.READWRITE, @@ -464,10 +464,11 @@ var SwipeTracker = GObject.registerClass({ 'end': { param_types: [GObject.TYPE_UINT64, GObject.TYPE_DOUBLE] }, }, }, class SwipeTracker extends GObject.Object { - _init(actor, allowedModes, params) { + _init(actor, orientation, allowedModes, params) { super._init(); params = Params.parse(params, { allowDrag: true, allowScroll: true }); + this.orientation = orientation; this._allowedModes = allowedModes; this._enabled = true; this._allowLongSwipes = false; @@ -480,7 +481,8 @@ var SwipeTracker = GObject.registerClass({ this._touchpadGesture.connect('update', this._updateGesture.bind(this)); this._touchpadGesture.connect('end', this._endTouchpadGesture.bind(this)); this.bind_property('enabled', this._touchpadGesture, 'enabled', 0); - this.bind_property('orientation', this._touchpadGesture, 'orientation', 0); + this.bind_property('orientation', this._touchpadGesture, 'orientation', + GObject.BindingFlags.SYNC_CREATE); this._touchGesture = new TouchSwipeGesture(allowedModes, GESTURE_FINGER_COUNT, @@ -490,7 +492,8 @@ var SwipeTracker = GObject.registerClass({ this._touchGesture.connect('end', this._endTouchGesture.bind(this)); this._touchGesture.connect('cancel', this._cancelTouchGesture.bind(this)); this.bind_property('enabled', this._touchGesture, 'enabled', 0); - this.bind_property('orientation', this._touchGesture, 'orientation', 0); + this.bind_property('orientation', this._touchGesture, 'orientation', + GObject.BindingFlags.SYNC_CREATE); this.bind_property('distance', this._touchGesture, 'distance', 0); global.stage.add_action(this._touchGesture); @@ -502,7 +505,8 @@ var SwipeTracker = GObject.registerClass({ this._dragGesture.connect('end', this._endTouchGesture.bind(this)); this._dragGesture.connect('cancel', this._cancelTouchGesture.bind(this)); this.bind_property('enabled', this._dragGesture, 'enabled', 0); - this.bind_property('orientation', this._dragGesture, 'orientation', 0); + this.bind_property('orientation', this._dragGesture, 'orientation', + GObject.BindingFlags.SYNC_CREATE); this.bind_property('distance', this._dragGesture, 'distance', 0); actor.add_action(this._dragGesture); } else { @@ -515,7 +519,8 @@ var SwipeTracker = GObject.registerClass({ this._scrollGesture.connect('update', this._updateGesture.bind(this)); this._scrollGesture.connect('end', this._endTouchpadGesture.bind(this)); this.bind_property('enabled', this._scrollGesture, 'enabled', 0); - this.bind_property('orientation', this._scrollGesture, 'orientation', 0); + this.bind_property('orientation', this._scrollGesture, 'orientation', + GObject.BindingFlags.SYNC_CREATE); this.bind_property('scroll-modifiers', this._scrollGesture, 'scroll-modifiers', 0); } else { diff --git a/js/ui/unlockDialog.js b/js/ui/unlockDialog.js index 974600ae5..8ddae8b03 100644 --- a/js/ui/unlockDialog.js +++ b/js/ui/unlockDialog.js @@ -495,8 +495,9 @@ var UnlockDialog = GObject.registerClass({ this._setTransitionProgress(this._adjustment.value); }); - this._swipeTracker = new SwipeTracker.SwipeTracker( - this, Shell.ActionMode.UNLOCK_SCREEN); + this._swipeTracker = new SwipeTracker.SwipeTracker(this, + Clutter.Orientation.VERTICAL, + Shell.ActionMode.UNLOCK_SCREEN); this._swipeTracker.connect('begin', this._swipeBegin.bind(this)); this._swipeTracker.connect('update', this._swipeUpdate.bind(this)); this._swipeTracker.connect('end', this._swipeEnd.bind(this)); diff --git a/js/ui/workspaceAnimation.js b/js/ui/workspaceAnimation.js index 6cac580e7..d240fe156 100644 --- a/js/ui/workspaceAnimation.js +++ b/js/ui/workspaceAnimation.js @@ -284,7 +284,9 @@ var WorkspaceAnimationController = class { }); const swipeTracker = new SwipeTracker.SwipeTracker(global.stage, - Shell.ActionMode.NORMAL, { allowDrag: false }); + Clutter.Orientation.HORIZONTAL, + Shell.ActionMode.NORMAL, + { allowDrag: false }); swipeTracker.connect('begin', this._switchWorkspaceBegin.bind(this)); swipeTracker.connect('update', this._switchWorkspaceUpdate.bind(this)); swipeTracker.connect('end', this._switchWorkspaceEnd.bind(this)); diff --git a/js/ui/workspacesView.js b/js/ui/workspacesView.js index ba26006f7..757b5c318 100644 --- a/js/ui/workspacesView.js +++ b/js/ui/workspacesView.js @@ -848,6 +848,7 @@ class WorkspacesDisplay extends St.Widget { this._swipeTracker = new SwipeTracker.SwipeTracker( Main.layoutManager.overviewGroup, + Clutter.Orientation.HORIZONTAL, Shell.ActionMode.OVERVIEW, { allowDrag: false }); this._swipeTracker.allowLongSwipes = true;