From 0d0380af5a90503e30ae6678c54d481eb81ceec1 Mon Sep 17 00:00:00 2001 From: Jesse Luehrs Date: Wed, 10 Nov 2021 13:29:43 -0500 Subject: simplify --- src/main.rs | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) (limited to 'src/main.rs') diff --git a/src/main.rs b/src/main.rs index 666b936..fe259fa 100644 --- a/src/main.rs +++ b/src/main.rs @@ -19,25 +19,21 @@ async fn async_main() -> anyhow::Result<()> { let (action_w, action_r) = async_std::channel::unbounded(); - let state = util::mutex(state::State::new(action_w)); + let mut state = state::State::new(action_w, output); + state.render().await.unwrap(); - state.lock_arc().await.render(&mut output).await.unwrap(); + let state = util::mutex(state); { let state = async_std::sync::Arc::clone(&state); async_std::task::spawn(async move { while let Ok(action) = action_r.recv().await { - state - .lock_arc() - .await - .handle_action(action, &mut output) - .await; + state.lock_arc().await.handle_action(action).await; } }); } - loop { - let key = input.read_key().await.unwrap(); + while let Some(key) = input.read_key().await.unwrap() { if state.lock_arc().await.handle_input(key).await { break; } -- cgit v1.2.3-54-g00ecf