mirror of
https://github.com/penpot/penpot.git
synced 2026-10-29 22:10:34 +00:00
Skip the PENPOT_SELECTION stamp when the selection is collapsed or points at blocks that no longer exist: blurring the editor rebuilds the EditorState with fresh block keys while a delayed on-change still carries the old keys, which crashed Draft.js reading getCharacterList of undefined and killed the workspace. Harden the sibling helpers (removeBlurSelectionEntity, cursorToEnd, select-all/end builders) the same way and add a vitest suite to the draft-js package covering stale, empty, and collapsed selections. Closes #11667 AI-assisted-by: muse-spark-1.3-contributor