From 88da38ef3aff87826a8eec354e7cecb074636a14 Mon Sep 17 00:00:00 2001 From: eight Date: Wed, 26 Jun 2019 18:01:03 +0800 Subject: [PATCH] Fix: rely on data-value-type instead of input name --- js/dom.js | 9 ++++----- options.html | 4 ++-- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/js/dom.js b/js/dom.js index 00a393fd..4017bdc0 100644 --- a/js/dom.js +++ b/js/dom.js @@ -450,23 +450,22 @@ function setupLivePrefs( if (input.type === 'radio' && !input.checked) { return undefined; } - // FIXME: use a string value for iconset - if (input.name === 'iconset') { + if (input.dataset.valueType === 'number') { return Number(input.value); } return input.value; } function setInputValue(input, value, force = false) { let oldValue, newValue; + const inputValue = input.dataset.valueType === 'number' ? Number(input.value) : input.value; if (input.type === 'radio') { oldValue = input.checked; - // FIXME: use == because we use number value in iconset - newValue = input.checked = value == input.value; + newValue = input.checked = value === inputValue; } else if (input.type === 'checkbox') { oldValue = input.checked; newValue = input.checked = value; } else { - oldValue = input.value; + oldValue = inputValue; newValue = input.value = value; } if (force || oldValue !== newValue) { diff --git a/options.html b/options.html index 2e7f2343..32434a04 100644 --- a/options.html +++ b/options.html @@ -41,7 +41,7 @@