Bug 503761 - 'Remember passwords' check box is broken when no history - in Private Browsing mode or when Firefox set to never remember any history; r=ehsan

This commit is contained in:
Javi Rueda 2012-08-21 11:03:46 -04:00
parent a4c9832edd
commit a251f3d522
2 changed files with 28 additions and 8 deletions

View File

@ -82,17 +82,27 @@ var gSecurityPane = {
/**
* Enables/disables the Exceptions button used to configure sites where
* passwords are never saved.
* passwords are never saved. When browser is set to start in Private
* Browsing mode, the "Remember passwords" UI is useless, so we disable it.
*/
readSavePasswords: function ()
{
var pref = document.getElementById("signon.rememberSignons");
var excepts = document.getElementById("passwordExceptions");
excepts.disabled = !pref.value;
const Cc = Components.classes, Ci = Components.interfaces;
var pbs = Cc["@mozilla.org/privatebrowsing;1"].
getService(Ci.nsIPrivateBrowsingService);
// don't override pref value in UI
return undefined;
if (pbs.autoStarted) {
document.getElementById("savePasswords").disabled = true;
excepts.disabled = true;
return false;
} else {
excepts.disabled = !pref.value;
// don't override pref value in UI
return undefined;
}
},
/**

View File

@ -82,17 +82,27 @@ var gSecurityPane = {
/**
* Enables/disables the Exceptions button used to configure sites where
* passwords are never saved.
* passwords are never saved. When browser is set to start in Private
* Browsing mode, the "Remember passwords" UI is useless, so we disable it.
*/
readSavePasswords: function ()
{
var pref = document.getElementById("signon.rememberSignons");
var excepts = document.getElementById("passwordExceptions");
excepts.disabled = !pref.value;
const Cc = Components.classes, Ci = Components.interfaces;
var pbs = Cc["@mozilla.org/privatebrowsing;1"].
getService(Ci.nsIPrivateBrowsingService);
// don't override pref value in UI
return undefined;
if (pbs.autoStarted) {
document.getElementById("savePasswords").disabled = true;
excepts.disabled = true;
return false;
} else {
excepts.disabled = !pref.value;
// don't override pref value in UI
return undefined;
}
},
/**