pub struct RemotePane {
pub id: u64,
/* private fields */
}Fields§
§id: u64Implementations§
Source§impl RemotePane
impl RemotePane
pub fn new( id: u64, client: Option<Arc<RpcIpcClient>>, rt: Handle, cols: u16, rows: u16, push_rx: Receiver<Vec<u8>>, input_writer: Box<dyn FnMut(&[u8]) -> Result<()> + Send>, ) -> Self
Sourcepub fn drain_pushes(&mut self) -> bool
pub fn drain_pushes(&mut self) -> bool
Drain pushes from the server, updating the parser.
Returns true if at least one chunk was processed (screen may have changed).
Trait Implementations§
Source§impl Pane for RemotePane
impl Pane for RemotePane
fn exit_status(&self) -> Option<ExitStatus>
fn resize(&mut self, size: PtySize) -> PtyResult<()>
fn has_exited(&mut self) -> bool
fn alternate_screen(&mut self) -> bool
fn scrollback(&mut self) -> usize
fn set_scrollback(&mut self, _rows: usize)
fn scrollback_len(&self) -> usize
fn write_bytes(&mut self, input: &[u8]) -> Result<()>
Access the shared parser for zero-copy rendering.
fn max_scrollback(&mut self) -> usize
fn take_exit_status(&mut self) -> Option<ExitStatus>
fn bytes_received(&self) -> usize
fn last_bytes_text(&self) -> String
fn kill_child(&mut self) -> PtyResult<()>
fn take_pending_title(&mut self) -> Option<String>
Source§fn set_status_callback(
&mut self,
_cb: Option<Box<dyn Fn(PtyStatus) + Sync + Send>>,
)
fn set_status_callback( &mut self, _cb: Option<Box<dyn Fn(PtyStatus) + Sync + Send>>, )
Set a status callback invoked on PTY data or exit.
Source§fn take_parts(
&mut self,
) -> Option<(Box<dyn Child + Sync + Send>, JoinHandle<()>)>
fn take_parts( &mut self, ) -> Option<(Box<dyn Child + Sync + Send>, JoinHandle<()>)>
Extract the child process and reader thread handle so they can be
moved into the
Reaper for async teardown.
Returns None by default (for mock panes). The real Pty impl
returns (child, reader_handle).Source§fn take_dirty(&self) -> bool
fn take_dirty(&self) -> bool
Reset the dirty flag. Returns true if dirty was set.
Source§fn clear_dirty_and_notify(&self)
fn clear_dirty_and_notify(&self)
Clear the dirty flag and notify the reader thread via Condvar.
This is the primary mechanism for I/O burst budget backpressure.
Source§fn sync_screen(&mut self)
fn sync_screen(&mut self)
Sync dirty state and handle DSR/foreground polling.
Call before locking the parser for cell access.
Source§fn requires_app_routing(&self) -> bool
fn requires_app_routing(&self) -> bool
Unified routing decision: returns true if keyboard/mouse inputs
should be forwarded to the PTY child rather than intercepted
by the window manager’s native scrollbar.
Thread-safe: no mutable borrow needed (atomic reads).
Source§fn is_application_cursor_keys_active(&self) -> bool
fn is_application_cursor_keys_active(&self) -> bool
Returns true when DECCKM (DECSET 1 / Application Cursor Keys) is active.
When true, unmodified arrow keys must use SS3 (
\eOA) instead of CSI (\e[A).Auto Trait Implementations§
impl !Freeze for RemotePane
impl !RefUnwindSafe for RemotePane
impl !Sync for RemotePane
impl !UnwindSafe for RemotePane
impl Send for RemotePane
impl Unpin for RemotePane
impl UnsafeUnpin for RemotePane
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
Mutably borrows from an owned value. Read more
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>
Convert
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>
Convert
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)
Convert
&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)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.