February 26th, 2004 • 7:28 am
Recent versions of Safari are better behaved when it comes to handling network connection errors. When a web page fails to load (for whatever reason), if Safari is in the background, the failure doesn’t cause Safari’s Dock icon to bounce madly and force you to switch to Safari to stop the madness.
Better yet: Even if you are in Safari, if the failure occurs in a tab other than the currently active tab, Safari no longer automatically switches to that tab to force you to read the error message. Instead, a simple “warning” icon (yellow triangle with exclamation mark) appears in the tab heading, signalling in a non-intrusive fashion that something is wrong with that web page.
You then decide, as the user, when you want to switch to that tab and view the error message and dismiss the alert box.
Yet, in spite of these improvements in recent versions of Safari, the behaviour is still not quite as user-friendly as it should be.
More specifically, if you use the “Open in tabs” command in Safari in order to open several web pages at the same time in different tabs in the same window, then a network failure will cause all these web pages in the different tabs to fail at the same time.
Clearly, the cause of all these failures is the same. So the user doesn’t need to be told half a dozen times that Safari was “unable to load the page because the server didn’t respond”. Yet that’s exactly what Safari does. The “warning” icon appears in each and every tab (and that’s perfectly normal), but then when you switch to each tab in the window, you get the same alert box again and again that you have to dismiss manually.
If you have quite a few tabs, that can be quite irritating, considering that you know very well that the failure has occurred and do not need to be told the same thing over and over again.
One workaround in this particular situation is of course to close the entire window without going to each and every tab. But this is only good if you don’t existing tabs in the window with properly loaded pages that you do not want to lose.
For example, if, instead of using the “Open in tabs” command in a new window, you actually go to a web page such as MacInTouch.com and then command-click on several links on that page in order to open several related pages in separate tabs in the same window, then when a network failure occurs you definitely do not want to have to close the whole page and reload the MacInTouch home page that’s already properly loaded in the first tab of the window.
This is a situation that happens quite regularly for me, because I typically use the “Open in tabs” command to open a series of Mac-related sites in separate tabs in the same window, including the MacInTouch home page, and then later on I go to the tab in that window containing the MacInTouch home page, and command-click on several links in that page to open the related pages in additional tabs in the same window.
If a network failure occurs at that stage, I definitely do not want to close the entire window and lose all the other, already properly loaded web pages in the window’s existing tabs.
In that situation, when a failure occurs, I am then forced to go through each and every tab and dismiss the alert box.
It’s a small, yet significant annoyance, especially when you are on a dialup connection like me and connection failures are commonplace because of low-bandwidth issues.
The appropriate behaviour here would have to have the alert message displayed in a non-modal fashion. This situation is really quite similar to the annoying situation that used to affect Mail in pre-Panther days, where connection failures would cause a cascade of modal alert boxes that had to be dismissed one by one.
Apple fixed that in Panther’s Mail, where the alert messages are no longer displayed in a modal fashion. Now Apple needs to do the same in Safari.