pub enum TerminalEvent {
Input(InputEvent),
Resize,
Debug(DebugQuery),
Closed,
}Expand description
One decoded terminal event.
Real input, debug-injected input, and debug queries share a single mailbox
in arrival order. Pure data — the OMP_TUI_DEBUG protocol serializes it
directly.
Variants§
Input(InputEvent)
A decoded input event — key, mouse, paste, focus, or a terminal
response the host forwards to crate::Terminal::handle_input_event.
Resize
Terminal geometry may have changed; resolve it with
crate::Terminal::take_resize. Delivered ahead of queued input
through the resize watch in crate::Terminal::next.
Debug(DebugQuery)
A debug-protocol query routed through the event loop, in order with
injected and real input. crate::Terminal::next answers the
terminal-owned ops itself; retained-tree ops reach the host, which
answers via crate::respond_debug_query (hosts without a retained
tree ignore them and the server times the request out).
Closed
The terminal input closed or failed; no more input will arrive.
crate::Terminal::next surfaces it as an error.
Trait Implementations§
Source§impl Clone for TerminalEvent
impl Clone for TerminalEvent
Source§fn clone(&self) -> TerminalEvent
fn clone(&self) -> TerminalEvent
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 TerminalEvent
impl Debug for TerminalEvent
Source§impl<'de> Deserialize<'de> for TerminalEvent
impl<'de> Deserialize<'de> for TerminalEvent
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl Eq for TerminalEvent
Source§impl PartialEq for TerminalEvent
impl PartialEq for TerminalEvent
Source§impl Serialize for TerminalEvent
impl Serialize for TerminalEvent
impl StructuralPartialEq for TerminalEvent
Auto Trait Implementations§
impl !Freeze for TerminalEvent
impl RefUnwindSafe for TerminalEvent
impl Send for TerminalEvent
impl Sync for TerminalEvent
impl Unpin for TerminalEvent
impl UnsafeUnpin for TerminalEvent
impl UnwindSafe for TerminalEvent
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more