diff options
author | toasted-nutbread <toasted-nutbread@users.noreply.github.com> | 2022-05-29 21:24:41 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-05-29 21:24:41 -0400 |
commit | 331a2e62941e04a4d50a21faefed663a92ddc00a (patch) | |
tree | 1212a1e7cd57ea2331fab2101afdc325cb3a4766 /ext/js/background/backend.js | |
parent | f3024c50186344aa6a6b09500ea02540463ce5c9 (diff) |
Add support for guiEditNote to view notes (#2143)
* Add AnkiConnect.guiEditNote
* Update _onApiNoteView to first try guiEditNote
* Add setting
* Update noteView API
* Use setting
* Return which mode was used
* Update DisplayGenerator
* Handle errors in DisplayAnki
* Update docs
* Add isErrorUnsupportedAction function
* Add an allowFallback option to noteView
* Disambiguate
* Simplify now that preferredMode isn't used
* Update settings info
* Implement test buttons
* Update styles
* Update status visibility
* Wrap layout
* Update description
* Update date
Diffstat (limited to 'ext/js/background/backend.js')
-rw-r--r-- | ext/js/background/backend.js | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/ext/js/background/backend.js b/ext/js/background/backend.js index cdbfde1e..07d6fd98 100644 --- a/ext/js/background/backend.js +++ b/ext/js/background/backend.js @@ -512,8 +512,22 @@ class Backend { ); } - async _onApiNoteView({noteId}) { - return await this._anki.guiBrowseNote(noteId); + async _onApiNoteView({noteId, mode, allowFallback}) { + if (mode === 'edit') { + try { + await this._anki.guiEditNote(noteId); + return 'edit'; + } catch (e) { + if (!this._anki.isErrorUnsupportedAction(e)) { + throw e; + } else if (!allowFallback) { + throw new Error('Mode not supported'); + } + } + } + // Fallback + await this._anki.guiBrowseNote(noteId); + return 'browse'; } async _onApiSuspendAnkiCardsForNote({noteId}) { |