2008-09-02

Alt/Cmd+Left/RightArrow brainsprinkling

Recently some folks have been blogging about Ctrl+Tab. It's great to see that shortcut getting love, and it reminds me that there's another one for navigating between pages that could use similar attention: Alt/Cmd+Left/RightArrow for going backwards and forwards through history within a tab.

Like the old Ctrl+Tab implementation, Alt/Cmd+Left/RightArrow only lets you move one page at a time, and you can't see where you're going until you get there. And sometimes you land on a page that is the product of a POST request, which you don't know until you are forced by a modal dialog to decide whether or not to resubmit data that you don't get to see when making the decision.

We could enable multi-page moves by making the shortcuts work similarly to Alt+Tab in operating systems: holding down the Alt key and pressing a horizontal arrow key would bring up a list of icons representing the pages in the history (perhaps formatted like Alt+Tab in operating systems or via the 3D effect Jono suggested for Ctrl+Tab).

Each icon would be a screenshot of the page as it was when you left it, and the adjacent page to the current page would be selected by default. But as long as you held down the Alt key, the list of pages would stay on the screen, and pressing the arrow keys would let you travel back and forth through it. Once you let go of the Alt key, Firefox would switch to the page that was selected at the time.

This behavior might also reduce frustrating clicks on posted pages, although the better solution, as Dan Mills recently pointed out in a conversation, would be to stop forcing users to reload pages just to go back (or forward) to them, even if they were the result of a POST.

But if we can't do that for some important technical reason, we could at least display a non-interactive and suitably-dressed snapshot of the page and drop down a non-modal notification bar at the top of the tab explaining why we can't provide the page itself and allowing the user to see what they are potentially going to reload.

And the list of pages could itself indicate which of its pages are POSTed, thus providing the user two levels of useful indication of what will happen when they try to go back to that page.

Of course, there's more to history than the past and future of each individual tab, and pan-tabscape history navigation affordances would also be useful to think through. But there's still a place for a tab-specific interface, given that many such trails represent a specific path through the web with relevance and meaning to the user, so it'd be good to improve the way Alt/Cmd+Left/RightArrow works (or invent even better tab history traversal).

Thoughts?

3 comments:

Taras said...

Nokia does this sort of back/forward navigation in their webkit browser on s60. I find it more frustrating than the normal alt-back.
I think it's mostly because all of the thumbnails are very small and the same size.
I think this could work better if it was done coverflow style with an almost fullsize main thumbnail and adjacent history pages shown next to it.

Anonymous said...

I was thinking that there might be times there it really wasn't a good idea to let the user go past post-requests without resubmitting them. I came out with this, that on second thought might not be related to that:
When a user logs out of a website, it would be nice for the website to be able to tell the browser to throw away any history, such that another user can't come up to the browser and press the back button a view the first users session. right now I guess the only way to do this is to remind the users to always close the browser window after they log out or perhaps use widnow.close() if it has not been disabled, none of which gives a good user experience.

Gerv said...

Yes, yes, yes :-) Thumbnail-based quick navigation of history would be very nice. Perhaps we could overlay a no-entry sign or a question mark on pages which we can't bring back without resubmitting a POST, or something.