Fix broken settings checkboxes
This commit is contained in:
parent
0885c94f3c
commit
e194710c06
|
@ -6,17 +6,20 @@ function bind_boolean_setting(checkbox_elem) {
|
||||||
get_obj[name] = default_val;
|
get_obj[name] = default_val;
|
||||||
|
|
||||||
chrome.storage.sync.get(get_obj, function (items) {
|
chrome.storage.sync.get(get_obj, function (items) {
|
||||||
ruffle_enable.checked = items.ruffle_enable === true;
|
checkbox_elem.checked = items[name] === checkbox_elem.value;
|
||||||
});
|
});
|
||||||
|
|
||||||
chrome.storage.onChanged.addListener(function (changes, namespace) {
|
chrome.storage.onChanged.addListener(function (changes, namespace) {
|
||||||
if (changes.hasOwnProperty(name)) {
|
if (changes.hasOwnProperty(name)) {
|
||||||
checkbox_elem.checked = changes[name] === true;
|
checkbox_elem.checked = changes[name].newValue === checkbox_elem.value;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
ruffle_enable.addEventListener("click", function (e) {
|
checkbox_elem.addEventListener("click", function (e) {
|
||||||
chrome.storage.sync.set(name, ruffle_enable.checked);
|
let setting = {};
|
||||||
|
setting[name] = checkbox_elem.checked ? checkbox_elem.value : "";
|
||||||
|
|
||||||
|
chrome.storage.sync.set(setting);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -23,5 +23,10 @@
|
||||||
"browser_action": {
|
"browser_action": {
|
||||||
"default_popup": "popup.html",
|
"default_popup": "popup.html",
|
||||||
"browser_style": true
|
"browser_style": true
|
||||||
|
},
|
||||||
|
"browser_specific_settings": {
|
||||||
|
"gecko": {
|
||||||
|
"id": "ruffle-player-extension@ruffle.rs"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue