== Overview ==

We should add a "Open link in foreground tab" menu item to the context
menu for hyperlinks.

== Use Cases ==

There are two main use cases for opening a link in a new tab:

1) Breath-first: You're viewing the Digg home page and you'd like to
open up a number of articles to read.  This use case is well-served by
opening links in background tabs (the current behavior).  This use
case treats the tab strip as a queue of pages to read.

2) Depth-first: You're reading a Wikipedia article and you come across
a link that interests you, but you know you'll later want to read the
rest of the Wikipedia article.  This use case is well-served by
opening links in foreground tabs.  This use case treats the tab strip
as a stack of pages to return to.

Another common variation on the depth-first use case is comparison
shopping.  Imagine a page listing a number of similar products, such
as refrigerators.  You select a mid-range model, read the information,
and return to the product list to view information about a higher-end
model.

== Existing Behavior ==

Currently, we do not offer to ability to open links in new foreground
tabs.  To support the depth-first use case, the user can either open a
background tab and then activate the tab or use the back button to
return to an earlier page.  Opening links in background tabs and then
activating the tab is slow and irritating because it requires the user
to shift their focus to the tab strip and hunt down the newly opened
tab.

The user can use the back button to perform a depth-first traversal,
but the back button gives the user no visual reminder that there is a
page to return to.  For example, in exploring Wikipedia, the user
could easily forget to return to an earlier article on refrigeration.
Additionally, the comparison shopping use case is poorly supported by
the back button.  Compare these two flows:

Back button:
1) View product list
2) Click mid-range product description
3) Read description
4) Click "Back"
5) Click high-end product description
6) Click "Back"
7) Remember which mid-range model was viewed in step (2)
8) Remember which high-end model was viewed in step (5)
9) Open mid-range model in background tab
10) Open high-end model in background tab
11) Compare models

Foreground tabs:
1) View product list
2) Open mid-range product description in new foreground tab
3) Read description
4) Activate product list tab
5) Open high-end product description in new foreground tab
6) Read description
7) Compare models

Notice that the gap in complexity between these two flows grows as the
user compares more models because the user has to remember which
models he or she has already compared.  In the foreground tab flow,
the tab strip maintains this state for the user.  (Visited hyperlink
coloring address the memory issues to some extent, but only the first
time the user views these items.)

Creating new windows is an alternative flow for this use case, but
then the user is forced to use the Window's task bar to manage the
tabs and the experience becomes unmanageable if the user wishes to
compare more than a handful of items.

== Proposal ==

Other browsers offer users an option to open all new tabs in
foreground windows.  This forces users to make a global choice between
the breadth-first and the depth-first use cases.  Instead of offering
users a global choice, we should add a menu item to "Open link in new
foreground tab" to the hyperlink context menu.  The menu would then
look as follows:

Open link in new background tab
Open link in new foreground tab
Open link in new window
Open link in new incognito window
Save link as...
Copy link address
Copy
---------------
Inspect element

This has the cost of increasing the complexity of the context menu.
However, I believe the benefit of supporting the depth-first use case
outweighs this cost.

Adam

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Chromium-dev" group.
To post to this group, send email to chromium-dev@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/chromium-dev?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to