diff options
Diffstat (limited to 'ext/fg/js/frontend.js')
| -rw-r--r-- | ext/fg/js/frontend.js | 21 | 
1 files changed, 10 insertions, 11 deletions
diff --git a/ext/fg/js/frontend.js b/ext/fg/js/frontend.js index 41c93f00..e4035289 100644 --- a/ext/fg/js/frontend.js +++ b/ext/fg/js/frontend.js @@ -169,27 +169,21 @@ class Frontend {      }      async searchAt(point) { -        let textSource = null; +        const textSource = docRangeFromPoint(point); +        let hideResults = false;          try {              if (this.pendingLookup) {                  return;              } -            textSource = docRangeFromPoint(point); -            if (!textSource || !textSource.containsPoint(point)) { -                docImposterDestroy(); -                return; -            } -              if (this.textSourceLast && this.textSourceLast.equals(textSource)) {                  return;              } -            this.pendingLookup = true; - -            if (!await this.searchTerms(textSource)) { -                await this.searchKanji(textSource); +            if (textSource && textSource.containsPoint(point)) { +                this.pendingLookup = true; +                hideResults = !await this.searchTerms(textSource) && !await this.searchKanji(textSource);              }          } catch (e) {              if (window.yomichan_orphaned) { @@ -201,6 +195,11 @@ class Frontend {              }          } finally {              docImposterDestroy(); + +            if (hideResults && this.options.scanning.autoHideResults) { +                this.popup.hide(); +            } +              this.pendingLookup = false;          }      }  |