diff options
author | Wojtek Kosior <koszko@koszko.org> | 2021-09-02 18:35:49 +0200 |
---|---|---|
committer | Wojtek Kosior <koszko@koszko.org> | 2021-09-02 18:35:49 +0200 |
commit | 6247f163d3ca89d5570450ac7ac8fd18f73bb74b (patch) | |
tree | e3d4817ae475e1f3553d3a50a77792fc5c3c25a0 /common/storage_raw.js | |
parent | 4b59dced912fb9b50ff041c67f0f72cbbad56b6c (diff) | |
download | browser-extension-6247f163d3ca89d5570450ac7ac8fd18f73bb74b.tar.gz browser-extension-6247f163d3ca89d5570450ac7ac8fd18f73bb74b.zip |
enable toggling of global script blocking policy\n\nThis commit also introduces `light_storage' module which is later going to replace the storage code we use right now.\nAlso included is a hack to properly display scrollbars under Mozilla (needs testing on newer Mozilla browsers).
Diffstat (limited to 'common/storage_raw.js')
-rw-r--r-- | common/storage_raw.js | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/common/storage_raw.js b/common/storage_raw.js index 9ce3980..4c02ee4 100644 --- a/common/storage_raw.js +++ b/common/storage_raw.js @@ -26,8 +26,9 @@ async function get(key) async function set(key_or_object, value) { - return browser.storage.local.set(typeof key_or_object === "object" ? - key_or_object : {[key]: value}); + const arg = typeof key_or_object === "object" ? + key_or_object : {[key_or_object]: value}; + return browser.storage.local.set(arg); } async function set_var(name, value) @@ -40,7 +41,11 @@ async function get_var(name) return get(TYPE_PREFIX.VAR + name); } -const raw_storage = {get, set, get_var, set_var}; +const on_changed = browser.storage.onChanged || browser.storage.local.onChanged; +const listen = cb => on_changed.addListener(cb); +const no_listen = cb => on_changed.removeListener(cb); + +const raw_storage = {get, set, get_var, set_var, listen, no_listen}; /* * EXPORTS_START |