summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Mikhaylenko <exalm7659@gmail.com>2021-02-28 18:59:31 +0500
committerAlexander Mikhaylenko <exalm7659@gmail.com>2021-03-13 23:16:34 +0500
commit293dee3eb6a963e0dc0380a3cebf0670b701dee7 (patch)
tree6f464fb8665dc39bdb17be58f32d870e67288acb
parentf48e58a81a91ca6484c706d3405b219971984bbc (diff)
downloadgnome-shell-wip/exalm/swipe-unaccel.tar.gz
swipeTracker: Use unaccelerated deltaswip/exalm/swipe-unaccel
Unaccelerated deltas make sure the gesture works the same regardless of how fast the fingers move; this is what we were already doing for scrolling. Remove the swipe multiplier as the deltas already match scrolling other than the 1/10 multiplier Clutter applies to scrolling specifically.
-rw-r--r--js/ui/swipeTracker.js9
1 files changed, 4 insertions, 5 deletions
diff --git a/js/ui/swipeTracker.js b/js/ui/swipeTracker.js
index 9c3671d3c..c31bdedef 100644
--- a/js/ui/swipeTracker.js
+++ b/js/ui/swipeTracker.js
@@ -16,7 +16,6 @@ const TOUCHPAD_BASE_WIDTH = 400;
const EVENT_HISTORY_THRESHOLD_MS = 150;
const SCROLL_MULTIPLIER = 10;
-const SWIPE_MULTIPLIER = 0.5;
const MIN_ANIMATION_DURATION = 100;
const MAX_ANIMATION_DURATION = 400;
@@ -139,7 +138,7 @@ const TouchpadSwipeGesture = GObject.registerClass({
let time = event.get_time();
const [x, y] = event.get_coords();
- let [dx, dy] = event.get_gesture_motion_delta();
+ const [dx, dy] = event.get_gesture_motion_delta_unaccelerated();
if (this._state === TouchpadState.NONE) {
if (dx === 0 && dy === 0)
@@ -151,8 +150,8 @@ const TouchpadSwipeGesture = GObject.registerClass({
}
if (this._state === TouchpadState.PENDING) {
- this._cumulativeX += dx * SWIPE_MULTIPLIER;
- this._cumulativeY += dy * SWIPE_MULTIPLIER;
+ this._cumulativeX += dx;
+ this._cumulativeY += dy;
const cdx = this._cumulativeX;
const cdy = this._cumulativeY;
@@ -179,7 +178,7 @@ const TouchpadSwipeGesture = GObject.registerClass({
}
const vertical = this.orientation === Clutter.Orientation.VERTICAL;
- let delta = (vertical ? dy : dx) * SWIPE_MULTIPLIER;
+ let delta = vertical ? dy : dx;
const distance = vertical ? TOUCHPAD_BASE_HEIGHT : TOUCHPAD_BASE_WIDTH;
switch (event.get_gesture_phase()) {