diff options
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}) {  |