diff options
| -rw-r--r-- | ext/fg/js/frontend.js | 26 | 
1 files changed, 14 insertions, 12 deletions
| diff --git a/ext/fg/js/frontend.js b/ext/fg/js/frontend.js index 9621ed2b..2543b52c 100644 --- a/ext/fg/js/frontend.js +++ b/ext/fg/js/frontend.js @@ -53,10 +53,7 @@ class Frontend extends TextScanner {      async onResize() {          const textSource = this.textSourceCurrent;          if (textSource !== null && await this.popup.isVisible()) { -            this._lastShowPromise = this.popup.showContent( -                textSource.getRect(), -                textSource.getWritingMode() -            ); +            this._showPopupContent(textSource);          }      } @@ -111,11 +108,7 @@ class Frontend extends TextScanner {          } catch (e) {              if (this._orphaned) {                  if (textSource !== null && this.options.scanning.modifier !== 'none') { -                    this._lastShowPromise = this.popup.showContent( -                        textSource.getRect(), -                        textSource.getWritingMode(), -                        'orphaned' -                    ); +                    this._showPopupContent(textSource, 'orphaned');                  }              } else {                  this.onError(e); @@ -132,9 +125,8 @@ class Frontend extends TextScanner {      showContent(textSource, focus, definitions, type) {          const sentence = docSentenceExtract(textSource, this.options.anki.sentenceExt);          const url = window.location.href; -        this._lastShowPromise = this.popup.showContent( -            textSource.getRect(), -            textSource.getWritingMode(), +        this._showPopupContent( +            textSource,              type,              {definitions, context: {sentence, url, focus, disableHistory: true}}          ); @@ -180,6 +172,16 @@ class Frontend extends TextScanner {          this.optionsContext.url = this.popup.url;          return this.optionsContext;      } + +    _showPopupContent(textSource, type=null, details=null) { +        this._lastShowPromise = this.popup.showContent( +            textSource.getRect(), +            textSource.getWritingMode(), +            type, +            details +        ); +        return this._lastShowPromise; +    }  }  Frontend._windowMessageHandlers = new Map([ |