Take the 2-minute tour ×
Ask Different is a question and answer site for power users of Apple hardware and software. It's 100% free, no registration required.

In OS X Lion, is there a way to disable rubber-band scrolling? This is the bounce that occurs when the window is scrolled beyond the top or bottom edge.

I'm aware that non-apple input devices don't rubber-band and hope to find a setting or software to eliminate this on the Apple trackpad and mice.

Follow-up: There's a very good discussion on Apple Support Communities regarding this topic. Apparently defaults write -g NSScrollViewRubberbanding -bool false disables rubber band scrolling for some applications.

share|improve this question
2  
really interested in finding an answer to this one, I hate the scroll bounce at the edges of a window. –  Ty W Jul 27 '11 at 18:16
    
Some Applications, like iTunes, and browsers other than Safari don't do it. That irritates me! Ha ha –  Paul Eccles Aug 4 '11 at 6:39
1  
Is there a technical problem causing this to be an issue or is it so annoying to you that it's actually worth a 50 bounty? –  XAleXOwnZX Aug 7 '11 at 23:39
4  
It's just so irritating to me. I was hoping a bounty might convince someone to dredge up a hack to turn it off. It's not the end of the world but I find most of Lion's new animations and effects to be distracting and wholly unnecessary. Since I use my machine for work, all the useless animation just wastes time and pulls me out of the zone. –  Ty W Aug 8 '11 at 16:37
1  
@XAleXOwnZX it's so annoying that I'd pay for some third-party app to disable this. –  Wavy Crab Sep 27 '11 at 2:07

10 Answers 10

Yep, you can. Go to System Preferences -> Universal Access -> Mouse & Trackpad -> Trackpad Options or Mouse Options. You can select with inertia or without inertia.

share|improve this answer
1  
This doesn't affect the rubber-banding, but rather turns scrolling itself on/off, and toggles the inertia. Test it in Finder using a folder with a lot of files to see what he's getting at. –  Curtis Tasker Jul 26 '11 at 18:03
5  
Inertia != rubber-band scroll bounce –  Wavy Crab Jul 27 '11 at 21:33

This is not an answer, but a hint in the right direction.

I have a non-multi touch trackpad and I rubber band scrolling is disabled in Lion for me. So this setting is linked to the multi-touch support.

share|improve this answer
    
Sadly - this is the best option at present - use a non-apple pointer/trackpad... –  bmike Sep 14 '11 at 4:09
    
I also have only a non-gesture mouse on one of my Lion-based machines and can confirm rubber band behavior doesn't happening this box. It's a scroll wheel mouse. –  Ian C. Apr 28 '12 at 21:02

I think the answer is no: you can't disable that feature.

Keep an eye on third party software like MagicPrefs and Secrets. If anyone figures out how to do it, it'll probably be one of those.

share|improve this answer

Rubber band scrolling cannot be disabled in Lion.

The best solution to your issue is probably to use applications that do not include rubber-band scrolling. Looking around, it appears Chrome and Path Finder do not include this. Many other apps also do not use rubber band scrolling, but this is just a temporary fix as some apps will be updated to include this Lion standard.

Another fix is to stop using a Magic Mouse, Magic Trackpad, or MacBook Trackpad. Any other mouse that is used will not have rubber band scrolling.

share|improve this answer
2  
Note that as of sometime in the v15 series, Chrome has implemented many Lion features, such as elasticity, gestures, and actual Lion-style full screen mode. –  Jason Salaz Aug 24 '11 at 14:32
1  
Did you perhaps mean that we don't yet know how to do this or it's difficult to do rather than it truly cannot be done? –  bmike Apr 30 '12 at 15:42

Disabling the rubber banding when scrolling past the end of a page can be done. It simply requires you to ditch your Apple pointing device and use any third party mouse, like my 8 year old Logitech mouse. No bouncing rubber band effect when scrolling past the end of any page.

Of course, this means giving up all gestures. If, like me, you hate the rubber band effect enough to trade away all gestures to be rid of it, run out to the dollar store and get that $4.99 USB mouse.

share|improve this answer

For anyone else trying to figure this out, this may be of help:

Apple uses the word "elasticity" in reference to this part of rubber-band scrolling. Xcode's documentation includes more details.

Also, look into the content of "/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit".

share|improve this answer

I have found this CSS snippet that apparently disables it: http://www.smilingsouls.net/Blog/20110804114957.html

Now to figure out how to implement the CSS rule in every web page we visit... probably via a Safari extension, like QuickStyle or NinjaKit.

QuickStyle: http://canisbos.com/quickstyle

share|improve this answer
    
Also see: mir.aculo.us/2011/07/29/… –  Fofer Aug 24 '11 at 12:50
    
this only works for sites that shouldn't be scrolled at all, I believe. Enabling this on every single page would very quickly break your web browsing experience. –  Ty W Nov 18 '11 at 13:34

It's somewhere in NSScrollView.NSScrollElasticity

NSScrollElasticity These constants determine the elasticity behavior for an axis of the scrollview.

We need to find a way to set NSScrollView.NSScrollElasticity of every application to 1, which = none. Details below:

enum {
    NSScrollElasticityAutomatic = 0,
    NSScrollElasticityNone      = 1,
    NSScrollElasticityAllowed   = 2,
};
typedef NSInteger NSScrollElasticity;

Constants

NSScrollElasticityAutomatic

Automatically determine whether to allow elasticity on this axis.

Available in Mac OS X v10.7 and later.

Declared in NSScrollView.h.

NSScrollElasticityNone

Disallow scrolling beyond document bounds on this axis.

Available in Mac OS X v10.7 and later.

Declared in NSScrollView.h.

share|improve this answer

I found a hidden preference for disabling rubberband scrolling with strings /System/Library/Frameworks/*.framework/Versions/*/* 2> /dev/null | grep -iE '(rubb|elastic)' | grep -v ' ' | sort | uniq:

defaults write -g NSScrollViewRubberbanding -bool false

It should take effect after reopening applications. It doesn't seem to affect web views like Safari windows though.

share|improve this answer

For Safari, I built an extension: https://github.com/lloeki/unelastic/releases

the rest, as they say, is history:

defaults write -g NSScrollViewRubberbanding -bool false
defaults write com.apple.iTunes disable-elastic-scroll -bool YES
share|improve this answer

protected by bmike Apr 28 '12 at 21:07

Thank you for your interest in this question. Because it has attracted low-quality answers, posting an answer now requires 10 reputation on this site.

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.