Package limn.components.text
package limn.components.text
The headless editing engine behind the text components:
TextEditModel owns the buffer, the caret, the anchor-based
selection, line movement with a sticky goal column and bounded undo/redo, stepping by
grapheme cluster so combining marks and ZWJ emoji are never split. It draws nothing and
knows no widget, which is what lets the editing rules the single-line and multiline
fields share be exercised in tests without a scene.-
ClassDescriptionPure, headless text-editing model shared by TextField/PasswordField (single line) and TextArea (multiline): cursor, anchor-based selection, line-aware Home/End and Up/Down with a sticky goal column, bounded undo/redo.The lines edits have replaced: lines
[firstLine, oldLastLine]of the text as it stood at the lastTextEditModel.clearLineDamage()became lines[firstLine, newLastLine]of the text as it stands now.