aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJez Ng2012-02-27 00:05:54 -0500
committerJez Ng2012-02-27 01:22:57 -0500
commit3b90d2a1d39da56dfb78583c6fe7f6be835e56a4 (patch)
tree358e36872c45f3d7174d33ab60d87bfd5c227609
parentbd48e3671181fcd10ede588e96aa45f0d81a07d4 (diff)
downloadvimium-3b90d2a1d39da56dfb78583c6fe7f6be835e56a4.tar.bz2
Store checkbox state as a boolean.
-rw-r--r--background/settings.js6
-rw-r--r--linkHints.js2
-rw-r--r--options.html13
-rw-r--r--vimiumFrontend.js2
4 files changed, 14 insertions, 9 deletions
diff --git a/background/settings.js b/background/settings.js
index 34cdcdcc..a00317b0 100644
--- a/background/settings.js
+++ b/background/settings.js
@@ -43,7 +43,11 @@ var settings = {
// 1.31 was also the version where we converted all localStorage values to JSON.
if (!this.has("settingsVersion")) {
for (var key in localStorage) {
- localStorage[key] = JSON.stringify(localStorage[key]);
+ // filterLinkHints' checkbox state used to be stored as a string
+ if (key == "filterLinkHints")
+ localStorage[key] = localStorage[key] === "true" ? true : false;
+ else
+ localStorage[key] = JSON.stringify(localStorage[key]);
}
this.set("settingsVersion", utils.getCurrentVersion());
}
diff --git a/linkHints.js b/linkHints.js
index 509b6c0d..53760b95 100644
--- a/linkHints.js
+++ b/linkHints.js
@@ -33,7 +33,7 @@ var linkHints = {
this.onKeyDownInMode = this.onKeyDownInMode.bind(this);
this.onKeyPressInMode = this.onKeyPressInMode.bind(this);
this.onKeyUpInMode = this.onKeyUpInMode.bind(this);
- this.markerMatcher = settings.get('filterLinkHints') == "true" ? filterHints : alphabetHints;
+ this.markerMatcher = settings.get('filterLinkHints') ? filterHints : alphabetHints;
},
/*
diff --git a/options.html b/options.html
index 5cfc3892..399ad311 100644
--- a/options.html
+++ b/options.html
@@ -120,7 +120,8 @@
}
function onOptionKeyup(event) {
- if (event.target.getAttribute("savedValue") != event.target.value)
+ if (event.target.getAttribute("type") !== "checkbox" &&
+ event.target.getAttribute("savedValue") != event.target.value)
enableSaveButton();
}
@@ -140,7 +141,7 @@
var fieldValue;
if (field.getAttribute("type") == "checkbox") {
- fieldValue = field.checked ? "true" : "false";
+ fieldValue = field.checked;
} else {
fieldValue = field.value.trim();
field.value = fieldValue;
@@ -181,11 +182,11 @@
function setFieldValue(field, value) {
if (field.getAttribute('type') == 'checkbox')
- field.checked = value == "true";
- else
+ field.checked = value;
+ else {
field.value = value;
-
- field.setAttribute("savedValue", value);
+ field.setAttribute("savedValue", value);
+ }
}
function openAdvancedOptions(event) {
diff --git a/vimiumFrontend.js b/vimiumFrontend.js
index be69b87f..e44fc253 100644
--- a/vimiumFrontend.js
+++ b/vimiumFrontend.js
@@ -1086,7 +1086,7 @@ HUD = {
isReady: function() { return document.body != null; },
/* A preference which can be toggled in the Options page. */
- enabled: function() { return settings.get("hideHud") !== "true"; }
+ enabled: function() { return settings.get("hideHud"); }
};