mirror of
https://github.com/edu4rdshl/gnome-shell.git
synced 2026-07-17 23:24:51 +00:00
swipeTracker: Use unaccelerated deltas
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. Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1763>
This commit is contained in:
parent
20d99c69cb
commit
b156cabdc9
1 changed files with 4 additions and 5 deletions
|
|
@ -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()) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue