diff options
Diffstat (limited to 'ext/fg/js')
| -rw-r--r-- | ext/fg/js/frontend.js | 26 | 
1 files changed, 15 insertions, 11 deletions
| diff --git a/ext/fg/js/frontend.js b/ext/fg/js/frontend.js index 52fdaacf..5ab69b9a 100644 --- a/ext/fg/js/frontend.js +++ b/ext/fg/js/frontend.js @@ -21,7 +21,7 @@ class Frontend {      constructor(popup, ignoreNodes) {          this.popup = popup;          this.popupTimerPromise = null; -        this.textSourceLast = null; +        this.textSourceCurrent = null;          this.pendingLookup = false;          this.options = null;          this.ignoreNodes = (Array.isArray(ignoreNodes) && ignoreNodes.length > 0 ? ignoreNodes.join(',') : null); @@ -139,8 +139,8 @@ class Frontend {      }      async onResize() { -        if (this.textSourceLast !== null && await this.popup.isVisibleAsync()) { -            const textSource = this.textSourceLast; +        if (this.textSourceCurrent !== null && await this.popup.isVisibleAsync()) { +            const textSource = this.textSourceCurrent;              this.lastShowPromise = this.popup.showContent(                  textSource.getRect(),                  textSource.getWritingMode() @@ -321,7 +321,7 @@ class Frontend {              const textSource = docRangeFromPoint(x, y, this.options);              if (                  textSource === null || -                (this.textSourceLast !== null && this.textSourceLast.equals(textSource)) +                (this.textSourceCurrent !== null && this.textSourceCurrent.equals(textSource))              ) {                  return;              } @@ -367,8 +367,10 @@ class Frontend {              }              this.pendingLookup = false; -            this.onAfterSearch(this.textSourceLast, cause); +            this.onAfterSearch(this.textSourceCurrent, cause);          } + +        return results !== null;      }      showContent(textSource, focus, definitions, type) { @@ -381,7 +383,7 @@ class Frontend {              {definitions, context: {sentence, url, focus}}          ); -        this.textSourceLast = textSource; +        this.textSourceCurrent = textSource;          if (this.options.scanning.selectText) {              textSource.select();          } @@ -417,11 +419,13 @@ class Frontend {          this.popup.hide(changeFocus);          this.popup.clearAutoPlayTimer(); -        if (this.options.scanning.selectText && this.textSourceLast) { -            this.textSourceLast.deselect(); -        } +        if (this.textSourceCurrent !== null) { +            if (this.options.scanning.selectText) { +                this.textSourceCurrent.deselect(); +            } -        this.textSourceLast = null; +            this.textSourceCurrent = null; +        }      }      getPrimaryTouch(touchList) { @@ -460,7 +464,7 @@ class Frontend {          }          else {              this.primaryTouchIdentifier = touch.identifier; -            this.contextMenuPreviousRange = this.textSourceLast ? this.textSourceLast.clone() : null; +            this.contextMenuPreviousRange = this.textSourceCurrent !== null ? this.textSourceCurrent.clone() : null;              this.contextMenuChecking = true;              this.scrollPrevent = false;              this.setContextMenuPrevent(false, false); |