Source code
Revision control
Copy as Markdown
Other Tools
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
/**
* Extra features for local development. This file isn't loaded in
* non-local builds.
*/
var DevelopmentHelpers = {
init() {
this.quickRestart = this.quickRestart.bind(this);
this.addRestartShortcut();
},
quickRestart() {
Services.obs.notifyObservers(null, "startupcache-invalidate");
Services.env.set("MOZ_DISABLE_SAFE_MODE_KEY", "1");
Services.startup.quit(
Ci.nsIAppStartup.eAttemptQuit | Ci.nsIAppStartup.eRestart
);
},
addRestartShortcut() {
let command = document.createXULElement("command");
command.setAttribute("id", "cmd_quickRestart");
command.addEventListener("command", this.quickRestart, true);
document.getElementById("mainCommandSet").prepend(command);
let key = document.createXULElement("key");
key.setAttribute("id", "key_quickRestart");
key.setAttribute("key", "r");
key.setAttribute("modifiers", "accel,alt");
key.setAttribute("command", "cmd_quickRestart");
document.getElementById("mainKeyset").prepend(key);
let menuitem = document.createXULElement("menuitem");
menuitem.setAttribute("id", "menu_FileRestartItem");
menuitem.setAttribute("key", "key_quickRestart");
menuitem.setAttribute("label", "Restart (Developer)");
menuitem.addEventListener("command", this.quickRestart, true);
document.getElementById("menu_FilePopup").appendChild(menuitem);
},
};