2011-12-20 13:33:41 -08:00
|
|
|
Components.utils.import("resource://gre/modules/FileUtils.jsm");
|
|
|
|
|
|
|
|
function loadIntoWindow(window) {}
|
|
|
|
function unloadFromWindow(window) {}
|
|
|
|
|
|
|
|
function setDefaultPrefs() {
|
2014-03-28 20:13:25 -07:00
|
|
|
// This code sets the preferences for extension-based reftest.
|
2011-12-20 13:33:41 -08:00
|
|
|
var prefs = Components.classes["@mozilla.org/preferences-service;1"].
|
|
|
|
getService(Components.interfaces.nsIPrefService);
|
|
|
|
var branch = prefs.getDefaultBranch("");
|
2014-03-28 20:13:25 -07:00
|
|
|
|
|
|
|
#include reftest-preferences.js
|
2011-12-20 13:33:41 -08:00
|
|
|
}
|
|
|
|
|
|
|
|
var windowListener = {
|
|
|
|
onOpenWindow: function(aWindow) {
|
|
|
|
let domWindow = aWindow.QueryInterface(Components.interfaces.nsIInterfaceRequestor).getInterface(Components.interfaces.nsIDOMWindowInternal || Components.interfaces.nsIDOMWindow);
|
|
|
|
domWindow.addEventListener("load", function() {
|
|
|
|
domWindow.removeEventListener("load", arguments.callee, false);
|
|
|
|
|
|
|
|
let wm = Components.classes["@mozilla.org/appshell/window-mediator;1"].getService(Components.interfaces.nsIWindowMediator);
|
|
|
|
|
|
|
|
// Load into any existing windows
|
|
|
|
let enumerator = wm.getEnumerator("navigator:browser");
|
|
|
|
while (enumerator.hasMoreElements()) {
|
|
|
|
let win = enumerator.getNext().QueryInterface(Components.interfaces.nsIDOMWindow);
|
|
|
|
setDefaultPrefs();
|
|
|
|
Components.utils.import("chrome://reftest/content/reftest.jsm");
|
2012-01-18 10:44:49 -08:00
|
|
|
win.addEventListener("pageshow", function() {
|
|
|
|
win.removeEventListener("pageshow", arguments.callee);
|
|
|
|
// We add a setTimeout here because windows.innerWidth/Height are not set yet;
|
|
|
|
win.setTimeout(function () {OnRefTestLoad(win);}, 0);
|
|
|
|
});
|
2011-12-20 13:33:41 -08:00
|
|
|
break;
|
|
|
|
}
|
|
|
|
}, false);
|
|
|
|
},
|
|
|
|
onCloseWindow: function(aWindow){ },
|
|
|
|
onWindowTitleChange: function(){ },
|
|
|
|
};
|
|
|
|
|
|
|
|
function startup(aData, aReason) {
|
|
|
|
let wm = Components.classes["@mozilla.org/appshell/window-mediator;1"].
|
|
|
|
getService (Components.interfaces.nsIWindowMediator);
|
|
|
|
|
|
|
|
Components.manager.addBootstrappedManifestLocation(aData.installPath);
|
|
|
|
|
|
|
|
// Load into any new windows
|
|
|
|
wm.addListener(windowListener);
|
|
|
|
}
|
|
|
|
|
|
|
|
function shutdown(aData, aReason) {
|
|
|
|
// When the application is shutting down we normally don't have to clean up any UI changes
|
|
|
|
if (aReason == APP_SHUTDOWN)
|
|
|
|
return;
|
|
|
|
|
|
|
|
let wm = Components.classes["@mozilla.org/appshell/window-mediator;1"].
|
|
|
|
getService(Components.interfaces.nsIWindowMediator);
|
|
|
|
|
|
|
|
// Stop watching for new windows
|
|
|
|
wm.removeListener(windowListener);
|
|
|
|
|
|
|
|
// Unload from any existing windows
|
|
|
|
let enumerator = wm.getEnumerator("navigator:browser");
|
|
|
|
while (enumerator.hasMoreElements()) {
|
|
|
|
let win = enumerator.getNext().QueryInterface(Components.interfaces.nsIDOMWindow);
|
|
|
|
unloadFromWindow(win);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
function install(aData, aReason) { }
|
|
|
|
function uninstall(aData, aReason) { }
|
|
|
|
|