I am trying to find how to enable and disable the Swipe between pages gesture via the defaults command either system wide or just for Safari. I can't do it manually as we will need to do this on machines on mass.

Setting in the UI is located at "Apple>System Preferences>Trackpad>More Gestures". I have looked all over the net and found plenty of enteries for Chrome but none for Safari.

I have tried adding AppleEnableSwipeNavigateWithScrolls to com.apple.Safari with defaults but doesn't seem to work at all.

3 Answers 3


There is a free program called Better Touch Tool (http://www.boastr.de/) which allows you to disable gestures, or set specific gestures, on a per-app basis.

  • Missed the "can't do it manually part" of your question. Adding a new tool to many computers is probably not high on your wish list...
    – Kent
    Jul 30, 2013 at 5:16
  • Thanks for the suggestion. I might have a look at it anyway, if I can figure out what it changes I might be able to replicate that.
    – Wil
    Jul 30, 2013 at 5:44

Try adding AppleEnableSwipeNavigateWithScrolls to .GlobalPreferences instead of com.apple.Safari:

defaults write .GlobalPreferences AppleEnableSwipeNavigateWithScrolls 0

(I'm not sure if this will take effect before you log out & back in.)

  • Still no joy. Rebooted and the setting is still enabled.
    – Wil
    Jul 30, 2013 at 6:46
  • It's writing the setting to the plist but its not using it :(.
    – Wil
    Jul 30, 2013 at 7:09
  • Very strange; I finally got around to testing it, and it worked -- I didn't even have to log out, just quit & relaunch Safari. I also found that a setting in the com.apple.Safari domain overrides one in .GlobalPreferences, so that should've worked as well. At this point, I'm not sure what's going on. Jul 30, 2013 at 22:41
  • Got in touch with our Apple contact and they sent us this script which did the trick:
    – Wil
    Aug 2, 2013 at 1:41

After speaking with apple they gave us the following script which did the trick:


os_vers=`sw_vers -productVersion`

if [[ $os_vers =~ "10.7" ]] || [[ $os_vers =~ "10.8" ]];then
    su -l $3 -c "defaults write NSGlobalDomain AppleEnableSwipeNavigateWithScrolls -bool false"
    su -l $3 -c "defaults -currentHost write NSGlobalDomain com.apple.trackpad.threeFingerHorizSwipeGesture -int 0"
    su -l $3 -c "defaults -currentHost write NSGlobalDomain com.apple.trackpad.fourFingerHorizSwipeGesture -int 0"
    su -l $3 -c "defaults -currentHost write NSGlobalDomain com.apple.trackpad.threeFingerVertSwipeGesture -int 0"
    su -l $3 -c "defaults -currentHost write NSGlobalDomain com.apple.trackpad.fourFingerVertSwipeGesture -int 0"

if [[ $os_vers =~ "10.8" ]];then
    su -l $3 -c "defaults -currentHost write NSGlobalDomain com.apple.trackpad.twoFingerFromRightEdgeSwipeGesture -int 0"

They also attibuted this article as to where they got it from: https://jamfnation.jamfsoftware.com/discussion.html?id=7047

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .