Socket state

This commit is contained in:
2026-07-23 01:42:03 +02:00
parent 8e83c5cd5b
commit df8b5b5c41
3 changed files with 20 additions and 9 deletions
+13 -1
View File
@@ -11,7 +11,19 @@ impl PulseTradeApp {
ctx.close().await;
}
_ => {}
_ => {
if let Err(e) = self
.sock
.as_mut()
.unwrap()
.send(pulse_wire::terminal::TerminalClientMessage::ExecuteCommand(
command.to_string(),
))
.await
{
eprintln!("{e}");
}
}
}
}
}
+4 -7
View File
@@ -26,6 +26,8 @@ use pulse_wire::terminal::{
};
pub struct PulseTradeApp {
sock: Option<terminal::TerminalClient>,
command: State<InputState>,
scroll: State<ScrollState<7>>,
watch_list: State<Vec<WatchListItem>>,
@@ -169,16 +171,11 @@ impl App for PulseTradeApp {
#[tokio::main]
async fn main() -> tokio::io::Result<()> {
let mut client = terminal::TerminalClient::new().await?;
client
.send(pulse_wire::terminal::TerminalClientMessage::ExecuteCommand(
"Hello".to_string(),
))
.await?;
let client = terminal::TerminalClient::new().await?;
pulse_ui::run(|ctx| {
client.use_app(PulseTradeApp {
sock: None,
command: ctx.use_state(InputState::new()),
scroll: ctx.use_state(ScrollState(1, [0; 7])),
watch_list: ctx.use_state(Vec::new()),
+3 -1
View File
@@ -36,7 +36,7 @@ impl TerminalClient {
Ok(())
}
pub fn use_app(&mut self, app: PulseTradeApp) -> PulseTradeApp {
pub fn use_app(mut self, mut app: PulseTradeApp) -> PulseTradeApp {
let mut reader = None;
std::mem::swap(&mut self.reader, &mut reader);
@@ -104,6 +104,8 @@ impl TerminalClient {
}
});
app.sock = Some(self);
app
}
}