summaryrefslogtreecommitdiffstats
path: root/browser/base/content/browser-development-helpers.js
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-28 14:29:10 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-28 14:29:10 +0000
commit2aa4a82499d4becd2284cdb482213d541b8804dd (patch)
treeb80bf8bf13c3766139fbacc530efd0dd9d54394c /browser/base/content/browser-development-helpers.js
parentInitial commit. (diff)
downloadfirefox-2aa4a82499d4becd2284cdb482213d541b8804dd.tar.xz
firefox-2aa4a82499d4becd2284cdb482213d541b8804dd.zip
Adding upstream version 86.0.1.upstream/86.0.1upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'browser/base/content/browser-development-helpers.js')
-rw-r--r--browser/base/content/browser-development-helpers.js51
1 files changed, 51 insertions, 0 deletions
diff --git a/browser/base/content/browser-development-helpers.js b/browser/base/content/browser-development-helpers.js
new file mode 100644
index 0000000000..6ed119b015
--- /dev/null
+++ b/browser/base/content/browser-development-helpers.js
@@ -0,0 +1,51 @@
+/* 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
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+/**
+ * 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");
+
+ let env = Cc["@mozilla.org/process/environment;1"].getService(
+ Ci.nsIEnvironment
+ );
+ 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);
+ command.setAttribute("oncommand", "void 0;"); // Needed - bug 371900
+ 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");
+ key.setAttribute("oncommand", "void 0;"); // Needed - bug 371900
+ 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);
+ },
+};