summaryrefslogtreecommitdiff
path: root/ext/mixed
diff options
context:
space:
mode:
authortoasted-nutbread <toasted-nutbread@users.noreply.github.com>2020-10-20 20:54:26 -0400
committerGitHub <noreply@github.com>2020-10-20 20:54:26 -0400
commit6f980d8f2be1714a29ceac1e402198f68b377880 (patch)
treeeea02fa59eabc24f9af5f9974badb9b30cc39fa6 /ext/mixed
parent9bda0a9eb43e127fdaa0066fba7e3e73c9f74812 (diff)
Text source range refactor (#949)
* Rename functions for better clarity * Remove unused properties * Add getNodesInRange function * Improve ignore nodes check * Use private fields
Diffstat (limited to 'ext/mixed')
-rw-r--r--ext/mixed/js/text-scanner.js15
1 files changed, 7 insertions, 8 deletions
diff --git a/ext/mixed/js/text-scanner.js b/ext/mixed/js/text-scanner.js
index d8bdd653..f4b8df68 100644
--- a/ext/mixed/js/text-scanner.js
+++ b/ext/mixed/js/text-scanner.js
@@ -178,13 +178,12 @@ class TextScanner extends EventDispatcher {
clonedTextSource.setEndOffset(length, layoutAwareScan);
- if (this._ignoreNodes !== null && clonedTextSource.range) {
+ if (this._ignoreNodes !== null) {
length = clonedTextSource.text().length;
- while (clonedTextSource.range && length > 0) {
- const nodes = DocumentUtil.getNodesInRange(clonedTextSource.range);
- if (!DocumentUtil.anyNodeMatchesSelector(nodes, this._ignoreNodes)) {
- break;
- }
+ while (
+ length > 0 &&
+ DocumentUtil.anyNodeMatchesSelector(clonedTextSource.getNodesInRange(), this._ignoreNodes)
+ ) {
--length;
clonedTextSource.setEndOffset(length, layoutAwareScan);
}
@@ -247,7 +246,7 @@ class TextScanner extends EventDispatcher {
let optionsContext = null;
try {
- if (this._textSourceCurrent !== null && this._textSourceCurrent.equals(textSource)) {
+ if (this._textSourceCurrent !== null && this._textSourceCurrent.hasSameStart(textSource)) {
return;
}
@@ -772,7 +771,7 @@ class TextScanner extends EventDispatcher {
if (
this._textSourceCurrent !== null &&
- !this._textSourceCurrent.equals(textSourceCurrentPrevious)
+ !this._textSourceCurrent.hasSameStart(textSourceCurrentPrevious)
) {
this._preventScroll = preventScroll;
this._preventNextContextMenu = true;