facebook / lexical

Lexical is an extensible text editor framework that provides excellent reliability, accessibility and performance.
https://lexical.dev
MIT License
17.5k stars 1.45k forks source link

Fix insertText outdated selection after node replacement #5954

Closed zurfyx closed 3 weeks ago

zurfyx commented 3 weeks ago

This is bad and need a follow up.

The fact that we provide an API for cloning the selection means that the selection can be cloned at any time and it's impossible to tell when the current selection reference is relevant.

In this case, there were occurences during clipboard HTML paste and split point inside insertNodes that were relying on the outdated selection.

vercel[bot] commented 3 weeks ago

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
lexical ✅ Ready (Inspect) Visit Preview 💬 Add feedback Apr 24, 2024 2:55pm
lexical-playground 🛑 Canceled (Inspect) Apr 24, 2024 2:55pm
github-actions[bot] commented 3 weeks ago

size-limit report 📦

Path Size Loading time (3g) Running time (snapdragon) Total time
packages/lexical/dist/Lexical.js 23.65 KB (0%) 474 ms (0%) 245 ms (+325.16% 🔺) 718 ms
packages/lexical-rich-text/dist/LexicalRichText.js 33.85 KB (0%) 677 ms (0%) 348 ms (+131.49% 🔺) 1.1 s
packages/lexical-plain-text/dist/LexicalPlainText.js 33.79 KB (0%) 676 ms (0%) 274 ms (+73.36% 🔺) 950 ms