Safari: Should not scroll in background when user is dragging an item

Posted by Pierre Igot in: Macintosh
January 29th, 2007 • 4:15 pm

There appears to be such a thing as too much support for system-wide drag-and-drop. Take the following scenario:

  1. Open a new window in Safari.
  2. Load a web page that is longer than what fits in the Safari window, so that the vertical scroll bar becomes visible.
  3. Switch to the Finder, leaving the Safari window open and visible in the background.
  4. Open a Finder window and resize/move it to a location that leaves the bottom of the background Safari window visible.
  5. Select an item (file or folder) in the Finder window and start dragging it to another location in the Finder, making sure that part of your mouse movement involves hovering over the bottom of the background Safari window.

Now watch what happens when your mouse pointer (dragging the Finder item) hovers over the bottom border of the web page in the background Safari window: The page starts scrolling down!

Why does it do this? Probably simply because Safari is a Cocoa application that supports system-wide drag-and-drop by default. So when you drag something to the bottom edge of the content in the background Safari window, Safari interprets this as a signal that you want it to scroll down the document to reach an area beyond the visible portion of the page.

The problem here is that it’s not like you actually can drop anything somewhere down the web page!

OK, I suppose there might be some very rare situations where the web page is actually “dynamic” and does support some kind of item dropping on a specific area of the page. (The Bug Reporter page that supports submitting attachments along with bug reports comes to mind.)

But in the vast majority of cases, a web page loaded in a Safari window is a read-only document with which drag-and-drop makes no sense.

The end result is that it’s far too easy to hover over the bottom edge of a background Safari window accidentally while moving things around in another application such as the Finder, and thus it is far too easy to accidentally scroll down a web page that you didn’t mean to scroll down, losing the point where you were in your reading of that web page in the process.

It seems to me that this is a case of excessive support for drag-and-drop, which fails to take into account the fact that the vast majority of web pages are read-only and should not respond to drag-and-drop movements that happen to go over them in the background.

Comments are closed.

Leave a Reply

Comments are closed.