If you’ve ever tried to drag things—URLs, e-mail addresses, snippets of text—either upward or downward out of Safari’s window, you probably know what happens: the page you’re viewing scrolls up or down, depending on which way you’ve dragged the item. This can be frustrating, especially if you’re in the middle of a long Web page, as you’ll then have to scroll back to where you were when you’re done with the drag-and-drop operation. (See the movie below for a demonstration of this effect.) Do this a few times, and it’s enough to convince you to stop using drag-and-drop.
Luckily, this auto-scrolling behavior can be controlled by a hidden preferences setting called
NSDraggingAutoscrollDelay. To change the auto-scroll delay, quit Safari, open Terminal (in /Applications -> Utilities), and enter this command:
at the end is the delay, in seconds, before a window will start auto-scrolling. You can use any value you like, but three seconds seems to strike a good balance between accidental activation and a still-usable feature for when you do want to auto-scroll the window.
The following movie clip shows a good example of Safari’s behavior before and after this change.
As you can see, in the “after” clip, you can drag text around without worrying about auto-scroll. If you ever wish to reverse this setting, just enter this command in Terminal (after quitting Safari):
When you relaunch Safari, you’ll be back to the instantaneous drag-upon-screen-edge behavior.