• Robert Knight's avatar
    Handle start or end element with no text in `TextRange.toRange` · 3d36ecee
    Robert Knight authored
    When resolving a `TextRange` to a DOM `Range` there is an edge case
    where the `start` or `end` position have an `offset` of `0` and the
    element contains no text nodes.
    
    Before this commit `toRange` would throw an `Offset exceeds text length`
    error. A more useful behavior though is:
    
     - For the `start` position, to resolve it to the start of the next text node after
       `this.start.element`
    
     - For the `end` position, to resolve it to the end of the previous text
       node before `this.end.element`
    
    This commit implements this behavior by first adding a `dir` option to
    `TextPosition.resolve` to control what happens when the position's
    offset is 0 and the element has no text and then specifying this option
    when calling `this.{start, end}.resolve` in `TextRange.toRange`.
    3d36ecee
Name
Last commit
Last update
..
html-baselines Loading commit data...
fake-pdf-viewer-application.js Loading commit data...
html-anchoring-fixture.html Loading commit data...
html-test.js Loading commit data...
pdf-test.js Loading commit data...
range-test.js Loading commit data...
text-range-test.js Loading commit data...
types-test.js Loading commit data...
xpath-test.js Loading commit data...
xpath-util-test.js Loading commit data...