User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2b2) Gecko/20091108 Firefox/3.6b2 Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2b2) Gecko/20091108 Firefox/3.6b2 First off, I really like how 3.6b2 is handling newly opened tabs, but I noticed a little quirk with the opening position after switching between tabs. Imagine we open tabs A, B, and C. With tab B selected, we open pages 1, 2, and 3. The current tab order is as follows, with B being the current tab: A B 1 2 3 C Now, if we change focus to tab A and back to tab B (through clicking or CTRL+SHIFT+TAB, CTRL+TAB) and attempt to open another child tab of B (let's call it X), it opens directly to the right of B, as here: A B X 1 2 3 C Personally, I think it would be much more intuitive if the tabs and child tabs spawned from them behaved more as a tree-like structure, so that when we opened tab X, Firefox would have tracked that we had already created tabs from B, and inserted it at the end of the others, like this: A B 1 2 3 X C ...I realize that from this comes the issue of WHEN to continue the string of child tabs from the right, or insert the tab directly to the right of the current page. Personally, I think that this behavior should -always- happen, but I would be interested to hear of if other users concur. Reproducible: Always Steps to Reproduce: 1. Open a new browser window and three distinct tabs. 2. From inside the second tab, open up three links in new tabs, which should be created in left-to-right order starting directly to the right of the second tab. 3. Switch focus to the first tab, and directly back to the second. 4. Opening a link in a new tab from the same page as before does not get added to the right of the previously opened links, but instead inserted directly to the right of the current tab. Actual Results: The last opened tab was inserted directly to the right of the currently focused tab. Expected Results: The last tab should open to the right of the tabs previously opened from the current tab.
Dao, I feel like we already have a bug with such a discussion. Sadly I cannot find it. Do you know it off-hand?
I don't know of such a bug.
Then it would be good to get a feedback from UX.
Behaviour seems to be similar to the behaviour I reported in Chrome: http://code.google.com/p/chromium/issues/detail?id=32186 With the exception that with firefox, just switching tabs causes a "reset" to where the new tab will be. I don't like the default Chrome or Firefox 3.6 behaviour. I'm one of those people who prefer to easily know where the "most recent new tab" is. As such, strictly adjacent to the current "source tab" would be preferable for me (even the old firefox behaviour is preferable to the current). The current behaviour requires me to know and keep track of the browser's historical usage just to predict where the latest new tab will end up. e.g. how many new tabs opened with this page, did I switch to another tab, did I open a new tab. The current behaviour isn't even consistent enough to work 100% for people who prefer to know where the "first new tab" is.
More details: Say you start with Browser Window A, switching to a different browser window B and then switching tabs and then switching back to Window A doesn't reset it for the tabs in Window A. So presumably only tabs within the same browser window will reset each other. Why have such a complex logic for determining where the new tab goes? Why not keep it simple and easy to understand: create every new tab to the strict adjacent right of the source tab. I'm not sure what the behaviour should be if the browser is in a "right to left language" mode. I have no idea what would be good for that.
I'm kind of lost in lincoln's comments but to answer the original question. The expected result should be A B X 1 2 3 C. Because it doesn't require the user to remember which tabs are child tab from B and guess where the new tab will appear. And it's likely that the user want to go into the page they just opened, so make the child most recent child tab on the right seems to be the right thing to do.