How-to: Switching Between Trackpad and Mouse Scrolling in OSX

Manual, Hot-Keys, and Automated ways to change the scrolling behavior when you switch between using your trackpad and mouse

Natural vs. "Unnatural" Scrolling

When using a MacBook or MacBook Pro, the standard input (the Trackpad) leverages a concept of natural scrolling. This is meant to translate interactions with the Trackpad as if it were the touch screen of your device. Which means that when you want to scroll down a page, the two-fingered (default) gesture for scrolling analogs to grabbing the content of the page and pulling it along as you move your fingers from the bottom of the Trackpad to the top.

Alternatively, the standard for a typical mouse (not looking at you Magic Mouse) is that scrolling using a mouse wheel analogs to pushing or pulling the scrollbar.

Input Method Gesture Direction Viewport Direction
▢ Trackpad Move Up ⬆️ Scrolls Viewport Down ⬇️
🖱 Mouse Scroll Up ⬆️ Scrolls Viewport Up ⬆️

Because the same intention "Go Up" leads to different results, there is contention when a user switches devices.

Below, I'll go over how you can quickly update scrolling behavior to fit your needs (especially if you are like me and dock/un-dock multiple times a day).

Option 1 - Settings

This is the simplest, but most manual approach. Within the System Preferences, search for "Trackpad" and go to that page. Then, from there, navigate to the "Scroll & Zoom" section and check (or uncheck) "Scroll direction: Natural". This is the setting that allows you to manually switch between scrolling methods.

Trackpad Preferences in OSX

One interesting note about the System Preferences is that when you have a mouse attached, you also have a scroll direction setting present in that settings page. However, under the hood of OSX, these two checkboxes manipulate the same system flag.

Pros

Cons

Option 2 - Manually Triggered Automation

Any time a scenario like this comes up, I start searching for ways to use automation to handle it. In this case, Automator, the OSX tool that allows you to run automated tasks comes in real handy.

To start off, we are going to create a new "Quick Action" in Automator Automator Quick Action in OSX

Then we will add in a new AppleScript task and enter the code below:

on run {input, parameters}

  tell application "System Preferences"
	  reveal anchor "trackpadTab" of pane id "com.apple.preference.trackpad"
  end tell

  tell application "System Events" to tell process "System Preferences"
	  click checkbox 1 of tab group 1 of window 1
  end tell

  quit application "System Preferences"

  return input

end run

Something to note, you may need to adjust the numeric values for the tab group or window. This all depends on your system version and features. However, some trial and error will get you where you need to be. You can validate quickly by pressing the ▶️ (run) button.

Touch Bar Integration

Now that you have an Automator script, if you have a Mac with a Touch Bar, you can add it to your Quick Actions. You can select which Quick Actions are available within the Extensions settings page (System Preferences > Extensions > Touch Bar).

Touch Bar Extensions in OSX

Next, click on the "Customize Control Strip" button and then drag the "Quick Actions" button to your preferred location.

Adding Quick Actions to Touch Bar in OSX

Now you can quickly toggle your scroll direction by pressing the "Quick Actions" button on your Touch Bar and then selecting your new custom action.

Note, if you don't have a Touch Bar, don't worry, you can also set Automator scripts to run on hot keys

Pros

Cons

Sources

I didn't come up with all this myself, though I did have to piece a lot of it together and massage it to work on this version of OSX. Here are a couple of the resources I used:

Option 3 - Just get an App to do it!

Since I'm more of a do-it-yourself person, I typically don't want to just download and run an app for something like this, but the community has come to the rescue for this (obvious) misstep by Apple. Below is the most popular app I have come across that will magically make scrolling work. Just set your preferences and let it do the work for you.

Pros

Cons

Note: all the images above are from OSX Monterey 12.3