Expand description
W3.2: text-editing message bus.
Every text mutation flows through TextEditRequest. The single
[lumen_text_edit::text_apply_edits] system drains the bus and is the
only system that mutates crate::text_model::TextBuffer.
Producers (route_ime_events, type_into_focused, pointer drag,
script set_text(id, ...), paste) emit TextEditRequest; consumers
react to the post-mutation TextEditApplied event.
Structs§
- ImeSurrounding
Requested - Backend -> core: the OS IME asked for surrounding text (W3.5).
text_update_surrounding_responsereplies withImeSurroundingResponse. - ImeSurrounding
Response - Core -> backend: surrounding-text reply. Backend forwards to the OS IME (Wayland text-input-v3 / IBus).
- Text
Edit Applied - Emitted by [
lumen_text_edit::text_apply_edits] after every successful mutation. Replaces ad-hocChanged<TextContent>snooping so signal binding / validators / undo coalescing react only to real edits. - Text
Edit Rejected - Emitted when [
lumen_text_edit::text_apply_edits] drops a request.
Enums§
- Anchor
- Symbolic anchor inside an edit request. Resolved against the live
crate::text_model::TextCursor/crate::text_model::TextBufferinside the mutator. - Applied
Kind - Classification of an applied edit for downstream observers (binding push, validators, undo coalescing).
- Cursor
Motion - Single-axis cursor motion (mirrors
QTextCursor::movePosition+ GTKGtkMovementStep). - Move
Mode - Selection modifier for
CursorMotionrequests. - Reject
Reason - Reasons an edit might be rejected by validators / single-line guards.
- Text
Edit Request - One text-editing request addressed to
entity’scrate::text_model::TextBuffer. - Text
Edit Set - Cross-crate
SystemSetlabels for the text-editing pipeline.