pub struct TextEditState {
pub buffer: TextBuffer,
pub caret: usize,
pub anchor: usize,
pub history: TextEditHistory,
pub preedit: Option<TextPreeditState>,
pub platform_composing: Option<TextRange>,
pub composition_base: Option<TextEditingValue>,
pub pending_model_sync: bool,
pub last_model_text: String,
pub last_dispatched_cursor: Option<(usize, usize)>,
pub affordances: TextInputAffordanceState,
}Fields§
§buffer: TextBuffer§caret: usize§anchor: usize§history: TextEditHistory§preedit: Option<TextPreeditState>§platform_composing: Option<TextRange>Composing range when a platform adapter synchronizes a complete value
whose composing text is already present in buffer.
composition_base: Option<TextEditingValue>§pending_model_sync: bool§last_model_text: StringLast semantic model value observed for this input.
While a local edit is pending, this lets the input distinguish “the app has not observed the edit yet” from “the app observed it and produced a transformed value”.
last_dispatched_cursor: Option<(usize, usize)>Last cursor position that was dispatched as a CursorChanged action. Used to deduplicate dispatches and prevent unnecessary model updates that could cause extra rebuild cycles.
affordances: TextInputAffordanceStateImplementations§
Source§impl TextEditState
impl TextEditState
Sourcepub fn editing_value(&self) -> TextEditingValue
pub fn editing_value(&self) -> TextEditingValue
Returns the complete authoritative value for this editing session.
Sourcepub fn apply_editing_value(&mut self, value: TextEditingValue) -> String
pub fn apply_editing_value(&mut self, value: TextEditingValue) -> String
Atomically commits a complete value while recording one undo entry.
Sourcepub fn sync_composing_value(&mut self, value: TextEditingValue)
pub fn sync_composing_value(&mut self, value: TextEditingValue)
Synchronizes an in-progress platform composition without creating an undo entry; the eventual composition commit is the atomic history step.
pub fn snapshot(&self) -> TextRestorationSnapshot
pub fn restore_snapshot(&mut self, snapshot: &TextRestorationSnapshot)
pub fn set_history_capacity(&mut self, capacity: usize)
pub fn committed_text(&self) -> String
pub fn sync_from_model(&mut self, semantic_value: &str)
pub fn selection_range(&self) -> (usize, usize)
pub fn clear_preedit(&mut self)
pub fn set_preedit(&mut self, text: String, cursor: Option<(usize, usize)>)
pub fn display_text(&self) -> (String, Option<(usize, usize)>)
pub fn display_preedit_cursor_range(&self) -> Option<(usize, usize)>
pub fn apply_edit( &mut self, range: Range<usize>, new_text: &str, next_caret: usize, next_anchor: usize, ) -> String
pub fn undo(&mut self) -> Option<(String, usize, usize)>
pub fn redo(&mut self) -> Option<(String, usize, usize)>
Trait Implementations§
Source§impl Clone for TextEditState
impl Clone for TextEditState
Source§fn clone(&self) -> TextEditState
fn clone(&self) -> TextEditState
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for TextEditState
impl Debug for TextEditState
Auto Trait Implementations§
impl Freeze for TextEditState
impl RefUnwindSafe for TextEditState
impl Send for TextEditState
impl Sync for TextEditState
impl Unpin for TextEditState
impl UnsafeUnpin for TextEditState
impl UnwindSafe for TextEditState
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.