summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--application/basilisk/locales/en-US/chrome/browser/baseMenuOverlay.dtd2
-rw-r--r--application/basilisk/locales/en-US/chrome/browser/browser.properties4
-rw-r--r--toolkit/content/aboutSupport.js22
-rw-r--r--toolkit/content/aboutSupport.xhtml6
-rw-r--r--toolkit/locales/en-US/chrome/global/aboutProfiles.dtd2
-rw-r--r--toolkit/locales/en-US/chrome/global/aboutSupport.dtd5
-rw-r--r--toolkit/modules/Troubleshoot.jsm13
-rw-r--r--toolkit/themes/shared/aboutSupport.css4
8 files changed, 43 insertions, 15 deletions
diff --git a/application/basilisk/locales/en-US/chrome/browser/baseMenuOverlay.dtd b/application/basilisk/locales/en-US/chrome/browser/baseMenuOverlay.dtd
index 1079c3cef..0fbd9cc35 100644
--- a/application/basilisk/locales/en-US/chrome/browser/baseMenuOverlay.dtd
+++ b/application/basilisk/locales/en-US/chrome/browser/baseMenuOverlay.dtd
@@ -23,7 +23,7 @@
<!ENTITY helpKeyboardShortcuts.label "Keyboard Shortcuts">
<!ENTITY helpKeyboardShortcuts.accesskey "K">
-<!ENTITY helpSafeMode.label "Restart with Add-ons Disabled…">
+<!ENTITY helpSafeMode.label "Restart in Safe Mode…">
<!ENTITY helpSafeMode.accesskey "R">
<!ENTITY helpSafeMode.stop.label "Restart with Add-ons Enabled">
<!ENTITY helpSafeMode.stop.accesskey "R">
diff --git a/application/basilisk/locales/en-US/chrome/browser/browser.properties b/application/basilisk/locales/en-US/chrome/browser/browser.properties
index 8f4036dcd..aa7a82e4f 100644
--- a/application/basilisk/locales/en-US/chrome/browser/browser.properties
+++ b/application/basilisk/locales/en-US/chrome/browser/browser.properties
@@ -413,8 +413,8 @@ extensions.{972ce4c6-7e08-4474-a285-3208198ce6fd}.name=Default
extensions.{972ce4c6-7e08-4474-a285-3208198ce6fd}.description=The default theme.
# safeModeRestart
-safeModeRestartPromptTitle=Restart with Add-ons Disabled
-safeModeRestartPromptMessage=Are you sure you want to disable all add-ons and restart?
+safeModeRestartPromptTitle=Restart in Safe Mode
+safeModeRestartPromptMessage=Are you sure you want to restart in Safe Mode?
safeModeRestartButton=Restart
# LOCALIZATION NOTE (browser.menu.showCharacterEncoding): Set to the string
diff --git a/toolkit/content/aboutSupport.js b/toolkit/content/aboutSupport.js
index 016549f43..4e42a5687 100644
--- a/toolkit/content/aboutSupport.js
+++ b/toolkit/content/aboutSupport.js
@@ -879,16 +879,25 @@ function populateActionBox() {
}
}
-// Prompt user to restart the browser in safe mode
-function safeModeRestart() {
+// Prompt user to restart the browser
+function restart(safeMode) {
let cancelQuit = Cc["@mozilla.org/supports-PRBool;1"]
.createInstance(Ci.nsISupportsPRBool);
Services.obs.notifyObservers(cancelQuit, "quit-application-requested", "restart");
- if (!cancelQuit.data) {
- Services.startup.restartInSafeMode(Ci.nsIAppStartup.eAttemptQuit);
+ if (cancelQuit.data) {
+ return;
+ }
+
+ let flags = Ci.nsIAppStartup.eAttemptQuit;
+
+ if (safeMode) {
+ Services.startup.restartInSafeMode(flags);
+ } else {
+ Services.startup.quit(flags | Ci.nsIAppStartup.eRestart);
}
}
+
/**
* Set up event listeners for buttons.
*/
@@ -915,9 +924,12 @@ function setupEventListeners() {
if (Services.obs.enumerateObservers("restart-in-safe-mode").hasMoreElements()) {
Services.obs.notifyObservers(null, "restart-in-safe-mode", "");
} else {
- safeModeRestart();
+ restart(true);
}
});
+ $("restart-button").addEventListener("click", function(event) {
+ restart(false);
+ });
$("verify-place-integrity-button").addEventListener("click", function(event) {
PlacesDBUtils.checkAndFixDatabase(function(aLog) {
let msg = aLog.join("\n");
diff --git a/toolkit/content/aboutSupport.xhtml b/toolkit/content/aboutSupport.xhtml
index a92dcfb4a..5eb64d437 100644
--- a/toolkit/content/aboutSupport.xhtml
+++ b/toolkit/content/aboutSupport.xhtml
@@ -44,6 +44,12 @@
&aboutSupport.restartInSafeMode.label;
</button>
</div>
+ <div id="restart-box">
+ <h3>&aboutSupport.restartTitle;</h3>
+ <button id="restart-button">
+ &aboutSupport.restartNormal.label;
+ </button>
+ </div>
</div>
<h1>
diff --git a/toolkit/locales/en-US/chrome/global/aboutProfiles.dtd b/toolkit/locales/en-US/chrome/global/aboutProfiles.dtd
index 48e24923e..5091517b2 100644
--- a/toolkit/locales/en-US/chrome/global/aboutProfiles.dtd
+++ b/toolkit/locales/en-US/chrome/global/aboutProfiles.dtd
@@ -6,5 +6,5 @@
<!ENTITY aboutProfiles.subtitle "This page helps you to manage your profiles. Each profile is a separate world which contains separate history, bookmarks, settings and add-ons.">
<!ENTITY aboutProfiles.create "Create a New Profile">
<!ENTITY aboutProfiles.restart.title "Restart">
-<!ENTITY aboutProfiles.restart.inSafeMode "Restart with Add-ons Disabled…">
+<!ENTITY aboutProfiles.restart.inSafeMode "Restart in Safe Mode…">
<!ENTITY aboutProfiles.restart.normal "Restart normally…">
diff --git a/toolkit/locales/en-US/chrome/global/aboutSupport.dtd b/toolkit/locales/en-US/chrome/global/aboutSupport.dtd
index 8459300c5..a0dd3531b 100644
--- a/toolkit/locales/en-US/chrome/global/aboutSupport.dtd
+++ b/toolkit/locales/en-US/chrome/global/aboutSupport.dtd
@@ -110,7 +110,10 @@ variant of aboutSupport.showDir.label. -->
<!ENTITY aboutSupport.copyRawDataToClipboard.label "Copy raw data to clipboard">
<!ENTITY aboutSupport.safeModeTitle "Try Safe Mode">
-<!ENTITY aboutSupport.restartInSafeMode.label "Restart with Add-ons Disabled…">
+<!ENTITY aboutSupport.restartInSafeMode.label "Restart in Safe Mode…">
+
+<!ENTITY aboutSupport.restartTitle "Try Restart">
+<!ENTITY aboutSupport.restartNormal.label "Restart normally…">
<!ENTITY aboutSupport.graphicsFeaturesTitle "Features">
<!ENTITY aboutSupport.graphicsDiagnosticsTitle "Diagnostics">
diff --git a/toolkit/modules/Troubleshoot.jsm b/toolkit/modules/Troubleshoot.jsm
index 20aad6770..4c6ac558d 100644
--- a/toolkit/modules/Troubleshoot.jsm
+++ b/toolkit/modules/Troubleshoot.jsm
@@ -347,11 +347,14 @@ var dataProviders = {
QueryInterface(Ci.nsIInterfaceRequestor).
getInterface(Ci.nsIDOMWindowUtils)
data.supportsHardwareH264 = "Unknown";
- let promise = winUtils.supportsHardwareH264Decoding;
- promise.then(function(v) {
- data.supportsHardwareH264 = v;
- });
- promises.push(promise);
+ try {
+ // After restart - data may not be available
+ let promise = winUtils.supportsHardwareH264Decoding;
+ promise.then(function(v) {
+ data.supportsHardwareH264 = v;
+ });
+ promises.push(promise);
+ } catch (e) {}
data.currentAudioBackend = winUtils.currentAudioBackend;
diff --git a/toolkit/themes/shared/aboutSupport.css b/toolkit/themes/shared/aboutSupport.css
index d26cd3cbd..69e6a95b4 100644
--- a/toolkit/themes/shared/aboutSupport.css
+++ b/toolkit/themes/shared/aboutSupport.css
@@ -99,6 +99,10 @@ td {
width: 30%;
}
+#contents {
+ clear: right;
+}
+
#action-box,
#reset-box,
#safe-mode-box {