mirror of
https://github.com/storytold/wordcraft.git
synced 2026-10-19 02:10:15 -05:00
Document::paths_between listed every paragraph of the story (every cell paragraph of every table) and then kept those between the two paths, so each selection_rects call cost the whole document. The canvas calls it every frame for each Find reading highlight (up to 5,000), each content control frame, Read Aloud and the hyperlink under the pointer. It now walks only the blocks, rows and cells between the two paths: for a one-paragraph range in a document of 26,000 paragraphs (four 1,500-row tables), 1.0 ms -> 2.6 us. Co-authored-by: dfgodvan <180286157+dfgodvan@users.noreply.github.com>