Simplify range mapping computation in SVGTextQuery/SVGInlineTextBox Blink Merge: https://src.chromium.org/viewvc/blink?view=revision&revision=193017 _________ bool SVGInlineTextBox::mapStartEndPositionsIntoFragmentCoordinates(const SVGTextFragment& fragment, unsigned& startPosition, unsigned& endPosition) const { unsigned fragmentOffsetInBox = fragment.characterOffset - start(); // Compute positions relative to the fragment. startPosition -= fragmentOffsetInBox; endPosition -= fragmentOffsetInBox; // Intersect with the fragment range. startPosition = std::max<unsigned>(startPosition, 0); endPosition = std::min<unsigned>(endPosition, fragment.length); return startPosition < endPosition; } ________ Just wanted to raise.
This simplification require pre-requisite to make SVG Text code to respect RTL etc. By doing 1-1 merge as below PR, it will leads to two failures: https://github.com/WebKit/WebKit/pull/18514 Failing tests: imported/mozilla/svg/text/textpath-selection.svg imported/w3c/web-platform-tests/css/css-pseudo/textpath-selection-011.html ^ Both are genuine failures. I am letting my PR run through EWS fully to document failures (if any else) but I will look into further future merges and see what else I can do.
<rdar://problem/116683897>
Committed 269425@main (8e69bb72e0ee): <https://commits.webkit.org/269425@main> Reviewed commits have been landed. Closing PR #18514 and removing active labels.