Bug 581726 - Disable tab previews for windows that have panorama displayed. r=dao, a=2.0.

This commit is contained in:
Jim Mathies 2011-02-05 14:22:24 -06:00
Родитель 7da1154530
Коммит c9da2debac
1 изменённых файлов: 17 добавлений и 5 удалений

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

@ -410,10 +410,13 @@ function TabWindow(win) {
this.previews = [];
for (let i = 0; i < this.events.length; i++)
this.tabbrowser.tabContainer.addEventListener(this.events[i], this, false);
for (let i = 0; i < this.tabEvents.length; i++)
this.tabbrowser.tabContainer.addEventListener(this.tabEvents[i], this, false);
this.tabbrowser.addTabsProgressListener(this);
for (let i = 0; i < this.winEvents.length; i++)
this.win.addEventListener(this.winEvents[i], this, false);
AeroPeek.windows.push(this);
let tabs = this.tabbrowser.tabs;
for (let i = 0; i < tabs.length; i++)
@ -425,7 +428,8 @@ function TabWindow(win) {
TabWindow.prototype = {
_enabled: false,
events: ["TabOpen", "TabClose", "TabSelect", "TabMove"],
tabEvents: ["TabOpen", "TabClose", "TabSelect", "TabMove"],
winEvents: ["tabviewshown", "tabviewhidden"],
destroy: function () {
this._destroying = true;
@ -433,9 +437,11 @@ TabWindow.prototype = {
let tabs = this.tabbrowser.tabs;
this.tabbrowser.removeTabsProgressListener(this);
for (let i = 0; i < this.tabEvents.length; i++)
this.tabbrowser.tabContainer.removeEventListener(this.tabEvents[i], this, false);
for (let i = 0; i < this.events.length; i++)
this.tabbrowser.tabContainer.removeEventListener(this.events[i], this, false);
for (let i = 0; i < this.winEvents.length; i++)
this.win.removeEventListener(this.winEvents[i], this, false);
for (let i = 0; i < tabs.length; i++)
this.removeTab(tabs[i]);
@ -554,6 +560,12 @@ TabWindow.prototype = {
this.previews.splice(newPos, 0, preview);
this.updateTabOrdering();
break;
case "tabviewshown":
this.enabled = false;
break;
case "tabviewhidden":
this.enabled = true;
break;
}
},