mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-12-01 00:32:11 +00:00
Bug 311015: add option to permanently disable all addons and revert to the default theme when launched in safe mode, r=mconnor, r=rob_strong
This commit is contained in:
parent
fd59bc9974
commit
1374a8498f
@ -64,6 +64,23 @@ function deleteLocalstore() {
|
|||||||
localstoreFile.remove(false);
|
localstoreFile.remove(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function disableAddons() {
|
||||||
|
// Disable addons
|
||||||
|
const nsIUpdateItem = Components.interfaces.nsIUpdateItem;
|
||||||
|
var em = Components.classes["@mozilla.org/extensions/manager;1"]
|
||||||
|
.getService(Components.interfaces.nsIExtensionManager);
|
||||||
|
var type = nsIUpdateItem.TYPE_EXTENSION + nsIUpdateItem.TYPE_LOCALE +
|
||||||
|
nsIUpdateItem.TYPE_PLUGIN;
|
||||||
|
var items = em.getItemList(type, { });
|
||||||
|
for (var i = 0; i < items.length; ++i)
|
||||||
|
em.disableItem(items[i].id);
|
||||||
|
|
||||||
|
// Select the default theme
|
||||||
|
var prefB = Components.classes["@mozilla.org/preferences-service;1"]
|
||||||
|
.getService(Components.interfaces.nsIPrefBranch);
|
||||||
|
prefB.clearUserPref("general.skins.selectedSkin");
|
||||||
|
}
|
||||||
|
|
||||||
function onOK() {
|
function onOK() {
|
||||||
try {
|
try {
|
||||||
if (document.getElementById("resetUserPrefs").checked)
|
if (document.getElementById("resetUserPrefs").checked)
|
||||||
@ -72,6 +89,8 @@ function onOK() {
|
|||||||
restoreDefaultBookmarks();
|
restoreDefaultBookmarks();
|
||||||
if (document.getElementById("resetToolbars").checked)
|
if (document.getElementById("resetToolbars").checked)
|
||||||
deleteLocalstore();
|
deleteLocalstore();
|
||||||
|
if (document.getElementById("disableAddons").checked)
|
||||||
|
disableAddons();
|
||||||
} catch(e) {
|
} catch(e) {
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -83,4 +102,3 @@ function onCancel() {
|
|||||||
.getService(Components.interfaces.nsIAppStartup);
|
.getService(Components.interfaces.nsIAppStartup);
|
||||||
appStartup.quit(appStartup.eForceQuit);
|
appStartup.quit(appStartup.eForceQuit);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -75,7 +75,7 @@
|
|||||||
|
|
||||||
<label value="&safeModeDescription2.label;"/>
|
<label value="&safeModeDescription2.label;"/>
|
||||||
<vbox>
|
<vbox>
|
||||||
<checkbox id="disableThemes" label="&disableThemes.label;" accesskey="&disableThemes.accesskey;" hidden="true"/>
|
<checkbox id="disableAddons" label="&disableAddons.label;" accesskey="&disableAddons.accesskey;"/>
|
||||||
<checkbox id="resetToolbars" label="&resetToolbars.label;" accesskey="&resetToolbars.accesskey;"/>
|
<checkbox id="resetToolbars" label="&resetToolbars.label;" accesskey="&resetToolbars.accesskey;"/>
|
||||||
<checkbox id="resetBookmarks" label="&resetBookmarks.label;" accesskey="&resetBookmarks.accesskey;"/>
|
<checkbox id="resetBookmarks" label="&resetBookmarks.label;" accesskey="&resetBookmarks.accesskey;"/>
|
||||||
<checkbox id="resetUserPrefs" label="&resetUserPrefs.label;" accesskey="&resetUserPrefs.accesskey;"/>
|
<checkbox id="resetUserPrefs" label="&resetUserPrefs.label;" accesskey="&resetUserPrefs.accesskey;"/>
|
||||||
|
@ -42,8 +42,8 @@
|
|||||||
<!ENTITY safeModeDescription.label "&brandShortName; is now running in Safe Mode, which temporarily disables your custom settings, themes, and extensions.">
|
<!ENTITY safeModeDescription.label "&brandShortName; is now running in Safe Mode, which temporarily disables your custom settings, themes, and extensions.">
|
||||||
<!ENTITY safeModeDescription2.label "You can make some or all of these changes permanent:">
|
<!ENTITY safeModeDescription2.label "You can make some or all of these changes permanent:">
|
||||||
|
|
||||||
<!ENTITY disableThemes.label "Disable all themes and extensions">
|
<!ENTITY disableAddons.label "Disable all add-ons">
|
||||||
<!ENTITY disableThemes.accesskey "D">
|
<!ENTITY disableAddons.accesskey "D">
|
||||||
|
|
||||||
<!ENTITY resetToolbars.label "Reset toolbars and controls">
|
<!ENTITY resetToolbars.label "Reset toolbars and controls">
|
||||||
<!ENTITY resetToolbars.accesskey "R">
|
<!ENTITY resetToolbars.accesskey "R">
|
||||||
|
Loading…
Reference in New Issue
Block a user