diff options
Diffstat (limited to 'ext/bg')
-rw-r--r-- | ext/bg/js/anki.js | 9 | ||||
-rw-r--r-- | ext/bg/js/backend.js | 5 |
2 files changed, 14 insertions, 0 deletions
diff --git a/ext/bg/js/anki.js b/ext/bg/js/anki.js index 84d81d49..8395518f 100644 --- a/ext/bg/js/anki.js +++ b/ext/bg/js/anki.js @@ -40,6 +40,15 @@ class AnkiConnect { this._enabled = value; } + async isConnected() { + try { + await this._invoke('version'); + return true; + } catch (e) { + return false; + } + } + async addNote(note) { if (!this._enabled) { return null; } await this._checkVersion(); diff --git a/ext/bg/js/backend.js b/ext/bg/js/backend.js index fe9c9c76..3f00994a 100644 --- a/ext/bg/js/backend.js +++ b/ext/bg/js/backend.js @@ -83,6 +83,7 @@ class Backend { ['kanjiFind', {async: true, contentScript: true, handler: this._onApiKanjiFind.bind(this)}], ['termsFind', {async: true, contentScript: true, handler: this._onApiTermsFind.bind(this)}], ['textParse', {async: true, contentScript: true, handler: this._onApiTextParse.bind(this)}], + ['isAnkiConnected', {async: true, contentScript: true, handler: this._onApiIsAnkiConnected.bind(this)}], ['addAnkiNote', {async: true, contentScript: true, handler: this._onApiAddAnkiNote.bind(this)}], ['getAnkiNoteInfo', {async: true, contentScript: true, handler: this._onApiGetAnkiNoteInfo.bind(this)}], ['injectAnkiNoteMedia', {async: true, contentScript: true, handler: this._onApiInjectAnkiNoteMedia.bind(this)}], @@ -420,6 +421,10 @@ class Backend { return results; } + async _onApiIsAnkiConnected() { + return await this._anki.isConnected(); + } + async _onApiAddAnkiNote({note}) { return await this._anki.addNote(note); } |