Firefox: initialize buttons when DOM is ready

This commit is contained in:
Deathamns 2014-12-16 18:09:55 +01:00
parent 45137c2be9
commit d13769b4a9
3 changed files with 10 additions and 10 deletions

View File

@ -10,7 +10,7 @@ var bgProcess;
function startup(data, reason) {
bgProcess = function(ev) {
if (ev) {
this.removeEventListener('load', bgProcess);
this.removeEventListener(ev.type, bgProcess);
}
bgProcess = Services.appShell.hiddenDOMWindow.document;
@ -22,9 +22,9 @@ function startup(data, reason) {
if (reason === APP_STARTUP) {
Services.ww.registerNotification({
observe: function(subject) {
observe: function(win) {
Services.ww.unregisterNotification(this);
subject.addEventListener('load', bgProcess);
win.addEventListener('DOMContentLoaded', bgProcess);
}
});
}

View File

@ -6,6 +6,7 @@ this.EXPORTED_SYMBOLS = ['contentPolicy', 'docObserver'];
Components.utils['import']('resource://gre/modules/Services.jsm');
Components.utils['import']('resource://gre/modules/XPCOMUtils.jsm');
// Components.utils['import']('resource://gre/modules/devtools/Console.jsm');
const Ci = Components.interfaces;
let appName;

View File

@ -248,9 +248,9 @@ var windowWatcher = {
e.target.ownerDocument.defaultView
);
},
onLoad: function(e) {
onReady: function(e) {
if (e) {
this.removeEventListener('load', windowWatcher.onLoad);
this.removeEventListener(e.type, windowWatcher.onReady);
}
var docElement = this.document.documentElement;
@ -275,7 +275,7 @@ var windowWatcher = {
},
observe: function(win, topic) {
if (topic === 'domwindowopened') {
win.addEventListener('load', this.onLoad);
win.addEventListener('DOMContentLoaded', this.onReady);
}
}
};
@ -318,12 +318,11 @@ vAPI.tabs.registerListeners = function() {
// onClosed - handled in windowWatcher.onTabClose
// onPopup ?
Services.ww.registerNotification(windowWatcher);
for (var win of this.getWindows()) {
windowWatcher.onLoad.call(win);
windowWatcher.onReady.call(win);
}
Services.ww.registerNotification(windowWatcher);
vAPI.toolbarButton.init();
vAPI.unload.push(function() {
@ -332,7 +331,7 @@ vAPI.tabs.registerListeners = function() {
for (var win of vAPI.tabs.getWindows()) {
vAPI.toolbarButton.remove(win.document);
win.removeEventListener('load', windowWatcher.onLoad);
win.removeEventListener('load', windowWatcher.onReady);
win.gBrowser.removeTabsProgressListener(tabsProgressListener);
var tC = win.gBrowser.tabContainer;