aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ext/mixed/js/api.js2
-rw-r--r--ext/mixed/js/display.js12
2 files changed, 11 insertions, 3 deletions
diff --git a/ext/mixed/js/api.js b/ext/mixed/js/api.js
index 715c8286..86bdc73c 100644
--- a/ext/mixed/js/api.js
+++ b/ext/mixed/js/api.js
@@ -58,7 +58,7 @@ function apiDefinitionAdd(definition, mode, context, optionsContext) {
}
function apiDefinitionsAddable(definitions, modes, optionsContext) {
- return _apiInvoke('definitionsAddable', {definitions, modes, optionsContext}).catch(() => null);
+ return _apiInvoke('definitionsAddable', {definitions, modes, optionsContext});
}
function apiNoteView(noteId) {
diff --git a/ext/mixed/js/display.js b/ext/mixed/js/display.js
index 045ce906..5c010747 100644
--- a/ext/mixed/js/display.js
+++ b/ext/mixed/js/display.js
@@ -414,7 +414,7 @@ class Display {
this.setEventListenersActive(true);
- const states = await apiDefinitionsAddable(definitions, ['term-kanji', 'term-kana'], this.getOptionsContext());
+ const states = await this.getDefinitionsAddable(definitions, ['term-kanji', 'term-kana']);
if (this.setContentToken !== token) { return; }
this.updateAdderButtons(states);
@@ -463,7 +463,7 @@ class Display {
this.setEventListenersActive(true);
- const states = await apiDefinitionsAddable(definitions, ['kanji'], this.getOptionsContext());
+ const states = await this.getDefinitionsAddable(definitions, ['kanji']);
if (this.setContentToken !== token) { return; }
this.updateAdderButtons(states);
@@ -776,6 +776,14 @@ class Display {
return entry !== null ? entry.querySelector('.action-play-audio>img') : null;
}
+ async getDefinitionsAddable(definitions, modes) {
+ try {
+ return await apiDefinitionsAddable(definitions, modes, this.getOptionsContext());
+ } catch (e) {
+ return [];
+ }
+ }
+
static delay(time) {
return new Promise((resolve) => setTimeout(resolve, time));
}