aboutsummaryrefslogtreecommitdiff
path: root/ext/fg/js/document.js
Commit message (Collapse)AuthorAge
* document.js refactor (#719)toasted-nutbread2020-08-09
| | | | | | | | | | | | | | | | | | | * Refactor document.js into a class * Move public functions first * Rename private functions * Rename * Rename argument * Use instance of DocumentUtil * Update tests * Refactor * Rename (test-)document.js to (test-)document-util.js
* Use DOMTextScanner (#536)toasted-nutbread2020-06-21
| | | | | | | | | | | | | | | | | * Use DOMTextScanner instead of TextSourceRange.seek* * Move getNodesInRange to dom.js * Move anyNodeMatchesSelector to dom.js * Remove unused functions * Update tests * Add layoutAwareScan option * Use layoutAwareScan for source and sentence scanning * Remove unused IGNORE_TEXT_PATTERN
* Text scanning update (#507)toasted-nutbread2020-05-06
| | | | | * Fix unity test missing a parameter * Update docSentenceExtract to not rescan content
* Validate document nodes before use (#493)toasted-nutbread2020-05-02
| | | | | | | | | | | | | * Validate document.body before use in loadScripts This also fixes an issue where reject wasn't being passed to loadScriptSentinel. * Validate document nodes before use in _getSiteColor * Validate document.body before use in _getViewport * Validate document.body before use in setContentScale * Validate document.body before use in docImposterCreate
* Update license author field to broader to explicitly reflect thatAlex Yatskov2020-04-10
| | | | | Yomichan is an ongoing community project. It really does take a village, and everyone who contributes code owns a part of it :)
* Update global declarationstoasted-nutbread2020-03-10
|
* Fix trailing newlines not actually generating a new line in the impostertoasted-nutbread2020-02-23
| | | | This was causing vertical scroll offset issues
* Use textContent instead of innerTexttoasted-nutbread2020-02-23
|
* Fix brace style issuestoasted-nutbread2020-02-22
|
* Define more globalstoasted-nutbread2020-02-11
|
* Fix equals function on TextSourceRange when imposter elements are usedtoasted-nutbread2020-01-26
|
* Catch exception on range.setStarttoasted-nutbread2020-01-17
| | | | Fixes #328
* Update license info URLtoasted-nutbread2020-01-01
|
* Update copyrighttoasted-nutbread2020-01-01
|
* Simplify options passed to docRangeFromPointtoasted-nutbread2019-12-17
|
* Override pointer-events with importanttoasted-nutbread2019-12-17
|
* Only return unique elements from docElementsFromPointtoasted-nutbread2019-12-17
| | | | This fixes #294
* Remove unnecessary escapes from regex literalstoasted-nutbread2019-11-26
|
* Create DOM utility filetoasted-nutbread2019-11-26
|
* Fix incorrect opacity checktoasted-nutbread2019-11-25
|
* Add correction to offset of imposter recttoasted-nutbread2019-10-17
| | | | Necessary when dealing with CSS transforms
* Handle null return value of document.caretPositionFromPointtoasted-nutbread2019-09-18
|
* Normalize XHTML document node.nodeNode to upper casetoasted-nutbread2019-09-15
|
* Return only single element when deepDomScan is not enabledtoasted-nutbread2019-09-14
|
* Remove destructuring from searchAt, containsPoint, docRangeFromPointtoasted-nutbread2019-09-14
|
* Replace some instances of Array.concattoasted-nutbread2019-09-02
| | | | .push or .unshift can accomplish the same operation without constructing new arrays.
* Fix typotoasted-nutbread2019-09-02
|
* Fix issues caused by scanning ranges which don't start with a text nodetoasted-nutbread2019-09-02
| | | | The rects returned by range.getClientRects() could include the entire start element's bounding box.
* Fix issue with whitespace rangestoasted-nutbread2019-09-02
| | | | The size of the rects for these ranges will sometimes be excessively large on Firefox, leading to false positives.
* Reduce amount of isPointInRange calls for repeated rangestoasted-nutbread2019-09-02
|
* Add option for enabling deep scanningtoasted-nutbread2019-09-02
|
* Allow elements behind other transparent elements to be scannedtoasted-nutbread2019-09-02
|
* Improve definition of caretRangeFromPointtoasted-nutbread2019-09-02
|
* Destructure point to {x, y} only oncetoasted-nutbread2019-09-02
|
* Create container for imposter elementtoasted-nutbread2019-09-01
| | | | The container will prevent the imposter element's size from affecting the document's primary scrollbars.
* Use important CSS priority for imposter element stylestoasted-nutbread2019-08-31
|
* Fix imposter issues with <input type="text">toasted-nutbread2019-08-31
|
* Make the imposter element tracked using TextSourceRangetoasted-nutbread2019-08-31
|
* Disable pointer events on hidden impostertoasted-nutbread2019-08-31
|
* Remove roundingtoasted-nutbread2019-08-31
|
* Fix some size and positioning issues related to imposter elementtoasted-nutbread2019-08-31
|
* Update isPointInRange to be more accuratetoasted-nutbread2019-08-29
|
* Clean up docRangeFromPointtoasted-nutbread2019-08-16
| | | | | | Use a cached value for checking if the browser is Firefox. Only validate and set up document.caretRangeFromPoint once. Use switch for multiple comparisons on the same value.
* fix scanning start of line on Firefoxsiikamiika2019-08-04
| | | | | | | | | | | | On many sites, for example Twitter (posts), Yomichan doesn't match any text from the beginning of the line unless you move the mouse cursor to the top left corner of the word that starts from the beginning of the line. Apparently there were some problems related to the imposter and there was commit 0cc5566 adding a fix for it, but this seemed to cause problems and 542cdb2 was added to fix that. It didn't handle all of the cases, though, so this commit is letting everything through on Firefox.
* Fix docRangeFromPoint sometimes not returning resultstoasted-nutbread2019-06-22
| | | | If range.getClientRects() has more than 1 result, it is possible that nothing will be returned even when hovering over a valid target.
* Improve handling of null values from caretRangeFromPointtoasted-nutbread2019-02-20
|
* Catch exceptions thrown by range.getClientRects()toasted-nutbread2018-12-10
| | | | Firefox dev 65 was throwing an exception
* Fixes for imposter element and range y positionGareth Parker2018-06-08
| | | Hides the imposter element once we've finished using it and checks the y position for the range against the point given
* Place `nodeType` checks inside `caretRangeFromPoint` functionRoderic Day2017-10-13
| | | | | Checked that it does not un-fix #80 Squelches alerts (but does not fix underlying issue) for #89
* make sure ranges are created over text nodes only (fixes #80)Alex Yatskov2017-09-19
|