[HTTPS-Everywhere] [PATCH 2/2] display why rulesets are disabled in preferences

Stefan Tomanek stefan.tomanek+httpse at wertarbyte.de
Sun Mar 13 10:46:50 PDT 2011


Signed-off-by: Stefan Tomanek <stefan.tomanek+httpse at wertarbyte.de>
---
 src/chrome/content/code/HTTPSRules.js |    3 +++
 src/chrome/content/preferences.js     |    6 +++++-
 2 files changed, 8 insertions(+), 1 deletions(-)

diff --git a/src/chrome/content/code/HTTPSRules.js b/src/chrome/content/code/HTTPSRules.js
index 1acf18d..79d8376 100644
--- a/src/chrome/content/code/HTTPSRules.js
+++ b/src/chrome/content/code/HTTPSRules.js
@@ -30,6 +30,9 @@ function RuleSet(name, match_rule, default_off) {
     // the default_off XML attribute.  Ideally we'd like this attribute to be
     // "valueless"
     this.on_by_default = false;
+    this.off_reason = default_off;
+  } else {
+    this.off_reason = null;
   }
   this.rules = [];
   this.exclusions = [];
diff --git a/src/chrome/content/preferences.js b/src/chrome/content/preferences.js
index 85edf74..8c7e387 100644
--- a/src/chrome/content/preferences.js
+++ b/src/chrome/content/preferences.js
@@ -39,7 +39,11 @@ function https_prefs_init(doc) {
     // This pref should always have been created by the RuleSet constructor
     var enabled = o_httpsprefs.getBoolPref(ruleset.name);
     newopt.setAttribute("id", id_prefix + ruleset.name);
-    newopt.setAttribute("label",ruleset.name);
+    var label = ruleset.name;
+    if (ruleset.off_reason) {
+      label += " ["+ruleset.off_reason+"]";
+    }
+    newopt.setAttribute("label", label);
     newopt.setAttribute("preference",null);
     newopt.setAttribute("type", "checkbox");
     newopt.setAttribute("checked", enabled);
-- 
1.7.2.3



More information about the HTTPS-everywhere mailing list