2 Commits

Author SHA1 Message Date
mrfluffy-dev
8dc4f4d6fe prevented crash on empty anime list selection 2023-03-06 15:44:10 +00:00
Zastian Pretorius
d22c9e6818 fuck you zen 2023-03-01 14:04:11 +00:00
2 changed files with 33 additions and 23 deletions

View File

@@ -110,25 +110,19 @@ fn main() {
}
fn print_help() {
println!("anime:\t\t{}", format_args!("{}", "-a --anime".red()));
println!("anime:\t\t{}\n", format_args!("{}", "-a --anime".red()));
//print blank line
println!("");
println!(
"cast:\t\t{}",
"cast:\t\t{}\n",
format_args!("{} {}", "-C --cast".red(), "<IP Adress>".green())
);
println!("");
println!("light novel:\t{}", format_args!("{}", "-l --ln".red()));
//print blank line
println!("");
println!("chapter:\t{}", format_args!("{}", "-c --chapter".red()));
println!("light novel:\t{}\n", format_args!("{}", "-l --ln".red()));
println!("chapter:\t{}\n", format_args!("{}", "-c --chapter".red()));
println!(
"{}",
"after this^^^ argument you can enter a chapter number".green()
);
println!("{}", "for exaple kami -c 200");
//print blank line
println!("");
println!("{}", "for exaple kami -c 200\n");
println!("provider:\t{}", format_args!("{}", "-r --provider".red()));
println!(
"{}",
@@ -142,8 +136,11 @@ fn print_help() {
"if the -r argument is not used it will default to {}",
"zoro".green()
);
println!("the providers are {} or {}", "gogo".green(), "zoro".green());
println!("");
println!(
"the providers are {} or {}\n",
"gogo".green(),
"zoro".green()
);
println!("reader:\t\t{}", format_args!("{}", "-R --reader".red()));
println!(
"{}",
@@ -157,8 +154,7 @@ fn print_help() {
"if the -R argument is not used it will default to {}",
"bat".green()
);
println!("the readers are {} or {}", "bat".green(), "glow".green());
println!("");
println!("the readers are {} or {}\n", "bat".green(), "glow".green());
println!("help:\t\t{}", format_args!("{}", "-h --help".red()));
//kill the program
std::process::exit(0);

View File

@@ -103,6 +103,24 @@ impl<'a> KamiApp for App {
terminal.draw(|f| self.ui(f))?;
if let Event::Key(key) = event::read()? {
fn match_anime_list(this: &mut App, selected: Option<usize>) {
match selected {
Some(0) => match this.animes.2.len() {
0 => {
_ = 0;
}
_ => {
this.image = this.animes.2[selected.unwrap()].clone();
this.change_image();
}
},
Some(std::usize::MAX) => _ = 0,
_ => {
this.image = this.animes.2[selected.unwrap()].clone();
this.change_image();
}
}
}
match self.input_mode {
InputMode::Normal => match key.code {
KeyCode::Char('i') => {
@@ -120,8 +138,7 @@ impl<'a> KamiApp for App {
false => {
self.messages.next();
let selected = self.messages.state.selected();
self.image = self.animes.2[selected.unwrap()].clone();
self.change_image();
match_anime_list(self, selected);
}
},
KeyCode::Char('j') => match ep_select {
@@ -131,8 +148,7 @@ impl<'a> KamiApp for App {
false => {
self.messages.next();
let selected = self.messages.state.selected();
self.image = self.animes.2[selected.unwrap()].clone();
self.change_image();
match_anime_list(self, selected)
}
},
KeyCode::Up => match ep_select {
@@ -142,8 +158,7 @@ impl<'a> KamiApp for App {
false => {
self.messages.previous();
let selected = self.messages.state.selected();
self.image = self.animes.2[selected.unwrap()].clone();
self.change_image();
match_anime_list(self, selected)
}
},
KeyCode::Char('k') => match ep_select {
@@ -153,8 +168,7 @@ impl<'a> KamiApp for App {
false => {
self.messages.previous();
let selected = self.messages.state.selected();
self.image = self.animes.2[selected.unwrap()].clone();
self.change_image();
match_anime_list(self, selected)
}
},
//if KeyCode::Enter => {