Continuous / Interactive Space Switching with LG Mouse Horizontal Scroll

On macOS, switching Spaces with the Magic Mouse or Trackpad is a continuous gesture, not a discrete “move left/right” action. During the transition you can pause, reverse direction, and scrub smoothly between Spaces.

With the new MX Master 3 support in BetterTouchTool, would it be possible to emulate this behavior using the horizontal scroll wheel?

Idea:

  • Horizontal scroll drives the Space transition continuously

  • Scroll right/left moves the Space view in real time

  • Direction can be reversed mid-transition, like a trackpad gesture

  • Releasing the wheel snaps to the nearest Space

This would make Space switching with the MX Master feel much closer to native Apple input and avoid forced one-Space jumps.

Not sure if macOS APIs allow this, but it would be a great usability improvement if feasible.


This is on my TODO list for the next few days. Today I have added scroll modifiers for zooming and rotating gestures, next will be the space switching gestures.

2 Likes

6.021 adds a first implementation of this scroll modifier:

The default configuration should work fine

2 Likes

Just used it ! Thank you! I am playing with the config values to make it smooth!

Thanks for the immediate response! It is by far better than Logi+ now

enhancement:

please when clicking to move a window and trying to scroll to space right (I want the window to change space) the scrolling does not work.

I have horizontal scroll on mx mouse 3 set to space switch scrolling.

afaik this is not possible with the native gestures - do you know whether this worked in logi options? I would love to have this

I had Logi+ to change move space right with a button+gesture and It worked. But I am not sure it is the same with this continuous space switch swipe.

the actions without fluid swiping can move windows, but even when using the trackpad the gestures don't seem to be able to ;-(

1 Like

these are my values that I like most, this allows for fast small motion switching

In 6.034 I have changed it so that if a window is being dragged it switches to the discrete space change method - which allows to move windows between spaces.

just used it! great!

on the updated version 6.0.32 → 6.0.34

Smooth scrolling was inverted, I duplicated the smooth scrolling and deleted the old one and I think smooth scrolling has bugs like simulate trackpad phases is always on

The implementation is using input timeout to finish the gesture, isn’t it ? Wouldn’t it be better if it recognized the stopping motion (velocity = 0) of the scroll wheel to finish the motion ?

scroll wheels don't have velocity unfortunately (you can calculate a velocity, but not for the end event).

However the implementation doesn't use an input timeout to finish, it uses a timeout after the gesture has been triggered to prevent accidental re-triggering