+ Ignoring empty lines
+ Only adding / on '/' input activation
This commit is contained in:
parent
a8d4ca9028
commit
939ee8c73f
@ -198,7 +198,8 @@ async fn main() -> Result<(), Box<dyn Error>> {
|
|||||||
InputMode::Normal => match input {
|
InputMode::Normal => match input {
|
||||||
Key::Char('i') | Key::Char('/') => {
|
Key::Char('i') | Key::Char('/') => {
|
||||||
app.input_mode = InputMode::Editing;
|
app.input_mode = InputMode::Editing;
|
||||||
app.input.push('/');
|
// only add the slash on slash command start
|
||||||
|
if Key::Char('/') == input { app.input.push('/'); }
|
||||||
events.disable_exit_key();
|
events.disable_exit_key();
|
||||||
}
|
}
|
||||||
Key::Char('q') => {
|
Key::Char('q') => {
|
||||||
@ -213,7 +214,12 @@ async fn main() -> Result<(), Box<dyn Error>> {
|
|||||||
},
|
},
|
||||||
InputMode::Editing => match input {
|
InputMode::Editing => match input {
|
||||||
Key::Char('\n') => {
|
Key::Char('\n') => {
|
||||||
let cmd = Command::from(app.input.drain(..).collect());
|
let raw: String = app.input.drain(..).collect();
|
||||||
|
let trimmed = raw.trim();
|
||||||
|
|
||||||
|
// ensure that we don't bother with empty input
|
||||||
|
if trimmed.len() != 0 {
|
||||||
|
let cmd = Command::from(trimmed);
|
||||||
app.messages.push(match cmd {
|
app.messages.push(match cmd {
|
||||||
// only for networked commands do we need to touch cache
|
// only for networked commands do we need to touch cache
|
||||||
Command::Channel(id) => app.cache.switch_channel(id).await,
|
Command::Channel(id) => app.cache.switch_channel(id).await,
|
||||||
@ -224,6 +230,7 @@ async fn main() -> Result<(), Box<dyn Error>> {
|
|||||||
_ => cmd
|
_ => cmd
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
}
|
||||||
Key::Char(c) => {
|
Key::Char(c) => {
|
||||||
app.input.push(c);
|
app.input.push(c);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user