aboutsummaryrefslogtreecommitdiff
path: root/common/storage_raw.js
diff options
context:
space:
mode:
Diffstat (limited to 'common/storage_raw.js')
-rw-r--r--common/storage_raw.js11
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