Tab Navigation: Tradeoffs

One of the latest features to land on the trunk of the mozilla-central source code repository—what will eventually become Firefox 3.1—is a new mechanism for switching between tabs in Firefox when using the Ctrl+Tab and Ctrl+Shift+Tab shortcut gestures.

In Firefox 3.0 and earlier, pressing Ctrl+Tab brings the tab to the right of the currently visible tab into focus, and pressing Ctrl+Shift+Tab brings the tab to the left into focus.

One major problem with this interface is that it’s usually modal: the user’s locus of attention is often focused on the page they want to see, rather than the location of the desired page relative to the current page in the tab order. As a result, switching to another tab with the keyboard usually just involves repeatedly pressing Ctrl+Tab until the content the user wants is in front of them. Sometimes the user may overshoot and then have to press Ctrl+Shift+Tab to backtrack.

Another downside of this approach, as Jenny Boriss has noted, is that the user has very little information about what’s actually contained in an unfocused tab; all they really know is the name of the page and its icon.

The new Ctrl+Tab interface in the Firefox trunk tries to solve some of these shortcomings.

Assume that you arrive at a computer that has Firefox open with three tabs loaded in it named “Wikipedia”, “Google”, and “About Ubiquity”, in that order. The Wikipedia tab is the one that’s currently selected, and you want to go to the next tab, which is Google. Holding down Ctrl and tapping the Tab key results in the following:

The first thing you’ll notice is that the current tab you’re on is still Wikipedia; the overlay in the center of the screen indicates that the tab you’ll go to if you release the Ctrl key is the “About Ubiquity” page, which is two tabs to the right of the Wikipedia tab, and that tapping Tab once more before releasing Ctrl will bring you to the “Google” page that you want to go to. You may be puzzled as to why the overlay in the center of the screen doesn’t reflect the same ordering as the tabs at the top of the browser.

Here, the user interface is following in the footsteps of a similar feature from windowed operating systems like Mac OS X and Windows to navigate between active applications. The order of the thumbnails is based on how recently you’ve visited them, which makes it easy to quickly switch between two places. In the above example, this means that whoever used this computer before you was on the “About Ubiquity” page before moving to the Wikipedia page.

This change is probably based on the premise that the last-visited tab is more frequently the user’s locus of attention than the tab to the left or right of the current one, which is probably true. But the same core problem remains: the last page that the user is on isn’t always their locus of attention. Indeed, unless someone is rapidly switching between two places, most people don’t even remember the last web page they were on; even less relevant is the second-to-last web page they were on, and the ordering of anything older than that looks like randomness. What this means is that for the particular use case of quickly switching between two tabs, this new mechanism is non-modal, and indeed quite efficient. But for all other cases, this interface is modal, because the same gesture is resulting in a different response based on a part of the browser’s state (i.e., tab-viewing history) that not only isn’t the user’s current locus of attention, but also isn’t even knowable to the user until they press Ctrl+Tab—and even then, the user can only see three tabs at a time in the overlay, even if more are open in the browser. At least with the previous mechanism, one could look at the tab bar to infer what the results of pressing Ctrl+Tab would be.

So, in the case where the user isn’t going back to the tab that they were just at very recently, they’re stuck in the same kind of situation that they were in with the old Ctrl+Tab mechanism: just keep pressing Ctrl+Tab until the page you want shows up. But this brings up another problem with the new interface: the end-user is only presented with thumbnails. In the old Ctrl+Tab mechanism, at least I was presented with each full-sized page every time I pressed Ctrl+Tab so that I could see if it was the one I wanted; here, I’m relegated to looking at a tiny thumbnail of the page, which only serves to make the task that much more difficult.

All of this is to say that I think the new Ctrl+Tab interface is really more of a trade-off than a decisive improvement: in the case where I want to go back to the tab I was just at, it’s great—although the thumbnails are completely unnecessary—but in most other cases, it’s actually harder to use than the old interface.

I haven’t thought much about possible solutions; one band-aid is to create a hybrid of both mechanisms, for instance by bringing the currently-selected tab to the foreground in the new Ctrl+Tab interface but still providing thumbnails for the next and previous tabs in an overlay. If anyone else has ideas, I’m sure the Mozilla community would love to hear them.

24 Replies to “Tab Navigation: Tradeoffs”

  1. What you’ve not mentioned is that although you can only see thumbnails, you can at least see thumbnails of all pages. Lets say there were another 10 pages (“Page 1” to “Page 10”) between “About Ubiquity” and “Google” in the example above, and ignore the different ordering so it is wiki-ubiquity-10pages-google.

    Old style:
    1. Ctrl+tab
    2. See ubiquity, not the page I want
    3. Ctrl + tab
    4. See Page 1, not the page I want

    23. ctrl + tab
    24. See google – the page I want.

    New style:
    1. Ctrl + tab, keep ctrl held.
    2. Scan thumbnails, see google is last in the list.
    3. Press tab multiple times quickly (or shift + tab a couple of times) until google is highlighted.

    This is in effect the same change that Microsoft introduced in Windows 95 (over 3.1) – the keyboard inputs were identical but 95 showed you the list of applications that you were choosing between.

  2. Thanks for being open and honest about these issues. I have yet to try it, but from my understand, the new ctrl+tab interface is a definite regression for me.

    I guess it’s all obsoleted by the TabHunter extension for me, though.

  3. > I haven’t thought much about possible solutions; one band-aid is to create a hybrid of both mechanisms, for instance by bringing the currently-selected tab to the foreground in the new Ctrl+Tab interface but still providing thumbnails for the next and previous tabs in an overlay. If anyone else has ideas, I’m sure the Mozilla community would love to hear them.

    I get extremely frustrated by the new ctrl-tab function too. More often than not, I cannot reach the tab I want since I multi-tab-switch quickly, and I cannot see the small thumbnails. The new interface has admittedly slowed me down since more often than not I do not usually go back to the tab I last opened, and I work with 30-40 tabs often.

    I now resort to using cmd-option-left or right in Macs to go back to the old behaviour. 🙁

  4. I believe thumbnail switching has a huge potential because humans are a lot faster when comparing colors/images instead of forms (i.e. letters). With only three tabs shown however, there’s no way to quickly “select by color”. Unless there are only three tabs open which makes it quite unlikely that CTRL+Tab is needed to find a specific tab.
    I find it quite irritating that there so much woes about this feature, because it’s clearly “advanced user territory”. At least advanced enough to install extensions if they want thumbnails when ctrl+tabbing. Even if users are encouraged to try this new feature I doubt many will use it afterwards if they didn’t use it before. I guess it’s more for the “woha” effect and to have at least one show-off end user feature in 3.1.
    My idea of CTRL+Tab is a mix of your “hybrid” suggestion and the slideshow on flickr. Having more than three thumbnails is a must, so you can quickly select the page you want (given that the pages are “different enough”). The currently selected page should be viewed in full, so you can still select the one eBay auction tab among many. If you’re looking for a certain product, the chance is quite high that all auctions feature the same product preview image stolen from
    Order should probably be
    -1 and below in tab order, 0 current tab, 1 LRU tab, 2 and up in tab order
    although I’m not too sure about this one, it doesn’t look much better than having all entries ordered by LRU.
    Well, let’s see how the feature plays in every day usage (I’m not using a nightly for my normal profile yet) maybe it’s something you only appreciate after having gotten used to it and then missing it again.


  5. Windows Vista changed the Alt-Tab ordering (or was it Flip3D?) to only sort the most recent 3 items by recency, sorting the rest of them by taskbar order, based on user testing. Maybe such a scheme would be best, although I personally still think it should just be based on only tab order.

    I also think that if it were to be based on tab order alone, I might prefer something that just displays thumbnails underneath the tab’s actual header when using Ctrl-Tab. That way, it is easy to identify which thumbnail is associated with which actual tab. And you still get a fancy scrolling interface, it’s just bigger.

    I guess it depends how many tabs you have open, too. I’m not one of the people that have 50 tabs open. Page title is sufficient for me.

  6. When cmd-tabbing on the mac (that does what alt-tab does on windows), one can also use

    1.) the scrollwheel
    2.) the mouse pointer

    to select the app to activate. Firefox on Mac should support that, too.

  7. I think some interesting comments have been made, like having the first three(?) tabs in MRU order, and the rest in tab order.

    Another suggestion I’d like to make, and that I brought up before in the newsgroup, is to look at the Vista task switcher in more detail:

    1. it doesn’t limit you to three previews, but shows all apps
    2. it has full keyboard navigation using cursor keys

    Hence: show the “all tabs” panel instead of the dumbed down small panel on Ctrl-Tab, implement keyboard navigation to allow to navigate up/down/left/right on the shortest way to the desired tab.

  8. There are different use cases and I think it’s right to provide specialized tools for each of them.

    The point of this is that it’s only meant for finding one of the recently selected tabs. It’s not really useful for anything else. Luckily, there’s bug 436304 which is designed for finding /any/ tab. Also, there are redundant keyboard shortcuts for the old Ctrl+Tab behavior.

  9. Another possible solution would be to do what extensions have been doing for quite a while and now even IE7 does: Add tabs opened from links right besides the current tab so that tabs belonging together remain physically together. That would reduce the need for Ctrl+tabbing altogether.

    Furthermore: What about a new shortcut for just toggling between the two most recently used tabs – as even some remote controls offer?

  10. I was aware of Ctrl+Tab in FF3.1a2 nightlies it but didn’t really like it, I use Ctrl+PgUp/PgDn. After playing with it briefly I realize that I have a mental model of my tabs from the operation of the FF 3 tab bar: earlier pages on the left, later on the right, overflow (including “future” tabs I’ve opened but never visited) off to the right. So I expect Ctrl+Tab to match that model: I want it to always show tabs in tab order. If it doesn’t start displaying my current tab (which “wastes” the first keystroke) then I want it to animate to show where it headed. I want it to indicate the end of the tabs so I know when I’ve cycled around; I might want it to show when it’s moved past my visible tabs, maybe reusing the arrow markers from the tab bar somehow. I want the corresponding tab in the tab bar to highlight as Ctrl+Tab cycles through my tabs. In the Ctrl+Tab display I want the favicon up next to the title, not messily overlaid on each thumbnail. And the reflection underneath does nothing for me except make the thumbnail resemble its page less.

    From the way it looks and feels I expected Ctrl+Tab to work more like the OS X Dock (as I remember it — I’m on Windows XP), riffling through tabs and zooming the current one. But since my mental model is the tab bar, I’d *really* like Ctrl+Tab to overlay or expand the tab strip somehow. You press Ctrl+Tab, your tab bar morphs into something more visual.

    However, if Ctrl+PgUp/PgDn just showed a thumbnail of each page (doesn’t SeaMonkey do this?), then I’d probably be happy with it, and you could leave Ctrl+Tab for people who like that sort of thing.

    Thanks for listening.

  11. While I definitely like the idea of being able to switch back and forth between two tabs, beyond that I would also want the tabs to stay in tab bar order.

    One integration that should be included is the tab number on or near the thumbnail. You can already use Ctrl + # to jump to a specific tab. If, when pressing Ctrl, the screen points out these numbers, for the first time I’ll actually know exactly which tab is which, at least withing the first 9.

  12. Pingback: » Blog Archive
  13. I just created a firefox addon and was browsing the web to see what type of feature people actually expect in such an addon and I came across this entry.

    Although I kind of liked the Ubuntu style preview mode of Ctr+Tab
    addon, I figured if I have a good number of tabs opened (say ~20) an image based preview kind of slows down the selection.

    I really prefer the windows style alt+tab navigation with small thumbnails. It gives sort of a bigger picture. And so I have implemented it in a similar way in my addon

    You might want to try the addon called (rather unimaginatively 🙂 “TabNavigator”:


Comments are closed.