TextEditOperation
Types
Link copied to clipboard
data class Delete(val range: TextEditorRange, val cursorBefore: CharLineOffset, val cursorAfter: CharLineOffset) : TextEditOperation
Link copied to clipboard
data class Insert(val position: CharLineOffset, val text: AnnotatedString, val cursorBefore: CharLineOffset, val cursorAfter: CharLineOffset) : TextEditOperation
Link copied to clipboard
data class LineBlock(val lines: List<LineBlockChange>, val cursorBefore: CharLineOffset, val cursorAfter: CharLineOffset) : TextEditOperation
An atomic line-block toggle (list / blockquote / code fence). Each entry in lines snapshots an affected line's content and line-anchored block spans both BEFORE and AFTER the toggle, so undo/redo restore paragraph style, text style, and every block span (including any mutually-excluded block demoted as a side effect) in one step.
Link copied to clipboard
data class Replace(val range: TextEditorRange, val newText: AnnotatedString, val oldText: AnnotatedString, val cursorBefore: CharLineOffset, val cursorAfter: CharLineOffset, val inheritStyle: Boolean = false) : TextEditOperation
Link copied to clipboard
data class RichSpan(val range: TextEditorRange, val style: RichSpanStyle, val isAdd: Boolean, val cursorBefore: CharLineOffset, val cursorAfter: CharLineOffset) : TextEditOperation
Link copied to clipboard
data class StyleSpan(val range: TextEditorRange, val style: SpanStyle, val isAdd: Boolean, val cursorBefore: CharLineOffset, val cursorAfter: CharLineOffset) : TextEditOperation