UnnaturalScrollWheels

Invert scroll direction for physical scroll wheels while maintaining "Natural" scrolling for trackpads on MacOS

GPL-3.0 License

Stars
3.3K

Bot releases are hidden (Show)

UnnaturalScrollWheels - 1.3.0 - Launch at Login Latest Release

Published by ther0n about 2 years ago

This release adds a launch at login checkbox to preferences. Prior to this release the app had to be added manually to login items by the user. Thanks to @yan0f for adding this feature!

UnnaturalScrollWheels - 1.2.3 - Notarization and fixes

Published by ther0n almost 3 years ago

  • The app is now notarized! Thanks to donations and sponsors, the fee for joining Apple Developer Program has been covered! This means the app is now notarized so the "Apple cannot check it for malicious software. This software needs to be updated. Contact the developer for more information." popup will no longer be a problem (see #11, #27, #29, #30, #33, and #34).
  • Fix for #22
  • Potential fix for #25, #26, and #32
UnnaturalScrollWheels - 1.2.2 - Bugfix

Published by ther0n over 3 years ago

  • Fixes #20 where mouse acceleration was always disabled when starting the app which was introduced by changes in version 1.2.1.
UnnaturalScrollWheels - 1.2.1 - Fixes and polish

Published by ther0n over 3 years ago

No new features just a lot of little fixes and polish to make things behave a bit more as expected. Some changes include:

  • Settings apply immediately but are reverted if you click "Cancel"
    • Settings are only saved when you press "OK"
  • When running the app without required permissions you will see an alert:
    Screen Shot 2021-02-03 at 10 55 03 PM
UnnaturalScrollWheels - 1.2.0 - Mouse Acceleration, improved preferences menu

Published by ther0n over 3 years ago

  • A new option to disable mouse acceleration so that when moving your mouse a specific distance the cursor will move the same distance regardless of how fast you physically move the mouse
  • Preferences menu has been improved
  • A few minor bugs have also been fixed
UnnaturalScrollWheels - 1.1.1 - Universal Binary (Apple Silicon)

Published by ther0n almost 4 years ago

No changes in functionality or bug fixes, just a new build as a Universal Binary with both Intel and Apple Silicon support.

UnnaturalScrollWheels - 1.1.0 - Alternate scroll wheel detection

Published by ther0n about 4 years ago

Features

This version adds a new "Alternate detection method" checkbox to the preferences window which, when enabled, uses a different method of differentiating between input from scroll wheels and the trackpad. This is useful in situations where another application may be interfering with the standard detection method. Fixes issue #4.

Extra Info

For who is curious how it works, the standard detection method checks the scrollWheelEventIsContinuous field of each scroll event to determine whether the event originated from a scroll wheel (line-based) or trackpad (pixel-based).

There are a few undocumented fields for CGEventField which I decided to print and found that 3 of them were always zero when using a scroll wheel, but when using a trackpad at least one of them would be a non-zero value. These fields are what are used in the new alternate detection method. The fields are scrollWheelEventMomentumPhase, scrollWheelEventScrollCount, and scrollWheelEventScrollPhase. I'm not completely sure what they represent, but my best guess is that it has something to do with the inertia you feel when scrolling on a trackpad that isn't present when using the mouse.

UnnaturalScrollWheels - First Release!

Published by ther0n about 4 years ago

Features:

  • Invert vertical and/or horizontal scrolling for physical mouse scroll wheels independently from System Settings
  • Disable scroll acceleration for mouse scroll wheels
  • Configure the number of lines to scroll per mouse wheel "click"
  • Hide menu bar icon

Other features

  • Further improvements to overall system stability and other minor adjustments have been made to enhance the user experience.™
  • Removed herobrine

These binaries are NOT notarized so you will have to right click the .app, choose open, and will see a message like this:

The only way for me to get rid of this message is to pay Apple $100 a year. It doesn't make sense for me to do that just to give something away for free. Despite the message saying otherwise, the application does NOT need to be updated, it's built with the latest versions of Swift and all SDKs. Gotta love how they top it off with "Contact the developer for more information" to encourage users to nag developers to pay Apple that $100 a year.

The application makes no connections to the internet whatsoever. Even though "Apple cannot check it for malicious software", you can! If you are paranoid about anything feel free to look at the less than 300 lines of code and build the Xcode project for yourself!