Bug 446065 - Add tabs opened in the background to the top of the Ctrl+Tab list. ui-r=beltzner, r=gavin

This commit is contained in:
Dão Gottwald 2008-09-19 11:34:33 +02:00
Родитель f9f5f27cc6
Коммит 4303f7aa2d
1 изменённых файлов: 7 добавлений и 5 удалений

Просмотреть файл

@ -176,7 +176,7 @@ var ctrlTab = {
this.tabs = []; this.tabs = [];
Array.forEach(tabContainer.childNodes, function (tab) { Array.forEach(tabContainer.childNodes, function (tab) {
this.attachTab(tab, tab == gBrowser.selectedTab); this.attachTab(tab, tab == gBrowser.selectedTab ? 0 : null);
}, this); }, this);
tabContainer.addEventListener("TabOpen", this, false); tabContainer.addEventListener("TabOpen", this, false);
@ -422,9 +422,11 @@ var ctrlTab = {
} }
XULBrowserWindow.setOverLink(value, null); XULBrowserWindow.setOverLink(value, null);
}, },
attachTab: function (aTab, aSelected) { attachTab: function (aTab, aPos) {
if (aSelected) if (aPos == 0)
this.tabs.unshift(aTab); this.tabs.unshift(aTab);
else if (aPos)
this.tabs.splice(aPos, 0, aTab);
else else
this.tabs.push(aTab); this.tabs.push(aTab);
}, },
@ -506,7 +508,7 @@ var ctrlTab = {
onTabSelect: function (aTab) { onTabSelect: function (aTab) {
if (aTab.parentNode) { if (aTab.parentNode) {
this.detachTab(aTab); this.detachTab(aTab);
this.attachTab(aTab, true); this.attachTab(aTab, 0);
} }
}, },
handleEvent: function (event) { handleEvent: function (event) {
@ -522,7 +524,7 @@ var ctrlTab = {
this.onTabSelect(event.target); this.onTabSelect(event.target);
break; break;
case "TabOpen": case "TabOpen":
this.attachTab(event.target); this.attachTab(event.target, 1);
break; break;
case "TabClose": case "TabClose":
if (this.isOpen) { if (this.isOpen) {