aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ext/bg/js/backend.js12
-rw-r--r--ext/mixed/js/api.js4
2 files changed, 16 insertions, 0 deletions
diff --git a/ext/bg/js/backend.js b/ext/bg/js/backend.js
index 55841cd6..245e3de2 100644
--- a/ext/bg/js/backend.js
+++ b/ext/bg/js/backend.js
@@ -115,6 +115,13 @@ class Backend {
}
}
+ async getOptionsSchema() {
+ if (this.isPreparedPromise !== null) {
+ await this.isPreparedPromise;
+ }
+ return this.optionsSchema;
+ }
+
async getFullOptions() {
if (this.isPreparedPromise !== null) {
await this.isPreparedPromise;
@@ -200,6 +207,10 @@ class Backend {
// Message handlers
+ _onApiOptionsSchemaGet() {
+ return this.getOptionsSchema();
+ }
+
_onApiOptionsGet({optionsContext}) {
return this.getOptions(optionsContext);
}
@@ -692,6 +703,7 @@ class Backend {
}
Backend._messageHandlers = new Map([
+ ['optionsSchemaGet', (self, ...args) => self._onApiOptionsSchemaGet(...args)],
['optionsGet', (self, ...args) => self._onApiOptionsGet(...args)],
['optionsGetFull', (self, ...args) => self._onApiOptionsGetFull(...args)],
['optionsSet', (self, ...args) => self._onApiOptionsSet(...args)],
diff --git a/ext/mixed/js/api.js b/ext/mixed/js/api.js
index 18b360a3..dc901efc 100644
--- a/ext/mixed/js/api.js
+++ b/ext/mixed/js/api.js
@@ -17,6 +17,10 @@
*/
+function apiOptionsSchemaGet() {
+ return _apiInvoke('optionsSchemaGet');
+}
+
function apiOptionsGet(optionsContext) {
return _apiInvoke('optionsGet', {optionsContext});
}