[gnome-shell/wip/exalm/swipes] swipeTracker: Clamp position when long swipes are enabled too
- From: Alexander Mikhaylenko <alexm src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-shell/wip/exalm/swipes] swipeTracker: Clamp position when long swipes are enabled too
- Date: Mon, 1 Mar 2021 17:40:49 +0000 (UTC)
commit 4e34a1aefacf71892f7e870b715d46e101ab30eb
Author: Alexander Mikhaylenko <exalm7659 gmail com>
Date: Mon Mar 1 22:39:48 2021 +0500
swipeTracker: Clamp position when long swipes are enabled too
Avoid wrapping back to the first page when swiping forward from the last
page.
js/ui/swipeTracker.js | 13 +++++--------
1 file changed, 5 insertions(+), 8 deletions(-)
---
diff --git a/js/ui/swipeTracker.js b/js/ui/swipeTracker.js
index 0687fbc847..46095ce6ef 100644
--- a/js/ui/swipeTracker.js
+++ b/js/ui/swipeTracker.js
@@ -633,6 +633,9 @@ var SwipeTracker = GObject.registerClass({
}
_getBounds(pos) {
+ if (this.allowLongSwipes)
+ return [this._snapPoints[0], this._snapPoints[this._snapPoints.length - 1]];
+
const closest = this._findClosestPoint(pos);
let prev, next;
@@ -665,11 +668,7 @@ var SwipeTracker = GObject.registerClass({
this._progress += delta / distance;
this._history.append(time, delta);
- const [lower, upper] = this.allowLongSwipes
- ? [this._snapPoints[0], this._snapPoints[this._snapPoints.length - 1]]
- : this._getBounds(this._initialProgress);
-
- this._progress = Math.clamp(this._progress, lower, upper);
+ this._progress = Math.clamp(this._progress, ...this._getBounds(this._initialProgress));
this.emit('update', this._progress);
}
@@ -699,9 +698,7 @@ var SwipeTracker = GObject.registerClass({
}
pos = pos * Math.sign(velocity) + this._progress;
-
- if (!this.allowLongSwipes)
- pos = Math.clamp(pos, ...this._getBounds(this._initialProgress));
+ pos = Math.clamp(pos, ...this._getBounds(this._initialProgress));
const index = this._findPointForProjection(pos, velocity);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]