Fix(handlers::main): Close ci after a command input

This commit is contained in:
Benedikt Peetz 2023-07-24 23:54:45 +02:00
parent fe3849a7b7
commit 296ebdb0cd
Signed by: bpeetz
GPG Key ID: A5E94010C3A642AD
1 changed files with 14 additions and 11 deletions

View File

@ -150,26 +150,29 @@ pub async fn handle(app: &mut App<'_>, input_event: &CrosstermEvent) -> Result<E
};
}
central::InputPosition::CLI => {
if let Some(_) = app.ui.cli {
if let Some(cli) = &app.ui.cli {
match input {
CrosstermEvent::Key(KeyEvent {
code: KeyCode::Enter,
..
}) => {
let ci_event = app.ui
.cli
.as_mut()
.expect("This is already checked")
let ci_event = cli
.lines()
.get(0)
.expect(
"There can only be one line in the buffer, as we collect it on enter being inputted"
"One line always exists,
and others can't exists
because we collect on
enter",
)
.to_owned();
app.tx
.send(Event::LuaCommand(ci_event))
.await
.context("Failed to send lua command to internal event stream")?;
app.tx
.send(Event::CommandEvent(Command::CommandLineHide, None))
.await?;
}
_ => {
app.ui