A lightweight macOS menu bar utility that fixes scroll direction for external mice while leaving your trackpad settings untouched.
After downloading, move
MouseFix.appto your Applications folder. On first launch, right-click and choose Open if macOS blocks it.
- Reverse Mouse Scroll Direction — Inverts scroll for external mice without affecting trackpad natural scrolling. Includes advanced smoothing with direction-change detection for a natural feel.
- Space Swipe with Middle Click — Hold the middle mouse button and drag horizontally to switch between macOS Spaces/Desktops (uses Control+Arrow keyboard shortcut under the hood).
- Launch at Login — Optionally start MouseFix automatically when you log in.
- Menu Bar App — Lives in your menu bar with a clean popover UI. No Dock icon clutter.
- macOS 13.0 (Ventura) or later
- Accessibility permissions — Required for intercepting scroll events. The app will prompt you to grant access on first launch.
- Open MouseFix — it appears as a mouse icon in your menu bar
- Click the icon to open the popover
- Grant Accessibility Access when prompted (or click Grant Access in the app)
- Toggle Fix Mouse Scroll Direction to enable scroll reversal
- Optionally enable Space Swipe with Middle Click for gesture-based Space switching
MouseFix uses a CGEvent tap to intercept scroll wheel events at the system level. It detects whether scroll events come from a mouse (discrete/non-continuous) or a trackpad (continuous) and only reverses direction for mouse events. The smoothing algorithm uses exponential moving average with adaptive alpha and direction-change detection to prevent momentum from fighting direction reversals.
For the Space Swipe feature, the app intercepts middle mouse button events (button 3) and tracks horizontal drag distance. When the drag exceeds a threshold, it synthesizes Control+Arrow keyboard events to trigger macOS Space switching.
- Open
MouseFix.xcodeprojin Xcode - Select your signing team in the project settings
- Build and run (Cmd+R)
MIT