Implemented Library and Download tabs!

This commit is contained in:
2023-08-08 10:50:04 -06:00
parent d856e84b93
commit c16f234088
10 changed files with 257 additions and 61 deletions
+22
View File
@@ -11,16 +11,37 @@ pub async fn handle_radarr_key_events(
match key {
_ if key == DEFAULT_KEYBINDINGS.up.key => handle_scroll_up(app, active_radarr_block).await,
_ if key == DEFAULT_KEYBINDINGS.down.key => handle_scroll_down(app, active_radarr_block).await,
_ if key == DEFAULT_KEYBINDINGS.left.key || key == DEFAULT_KEYBINDINGS.right.key => {
handle_tab_action(key, app, active_radarr_block).await
}
_ if key == DEFAULT_KEYBINDINGS.submit.key => handle_submit(app, active_radarr_block).await,
_ if key == DEFAULT_KEYBINDINGS.esc.key => handle_esc(app, active_radarr_block).await,
_ => (),
}
}
async fn handle_tab_action(key: Key, app: &mut App, active_radarr_block: ActiveRadarrBlock) {
match active_radarr_block {
ActiveRadarrBlock::Movies | ActiveRadarrBlock::Downloads => match key {
_ if key == DEFAULT_KEYBINDINGS.left.key => {
app.data.radarr_data.main_tabs.previous();
app.push_navigation_stack(app.data.radarr_data.main_tabs.get_active_route().clone());
}
_ if key == DEFAULT_KEYBINDINGS.right.key => {
app.data.radarr_data.main_tabs.next();
app.push_navigation_stack(app.data.radarr_data.main_tabs.get_active_route().clone());
}
_ => (),
},
_ => (),
}
}
async fn handle_scroll_up(app: &mut App, active_radarr_block: ActiveRadarrBlock) {
match active_radarr_block {
ActiveRadarrBlock::Movies => app.data.radarr_data.movies.scroll_up(),
ActiveRadarrBlock::MovieDetails => app.data.radarr_data.movie_details.scroll_up(),
ActiveRadarrBlock::Downloads => app.data.radarr_data.downloads.scroll_up(),
_ => (),
}
}
@@ -29,6 +50,7 @@ async fn handle_scroll_down(app: &mut App, active_radarr_block: ActiveRadarrBloc
match active_radarr_block {
ActiveRadarrBlock::Movies => app.data.radarr_data.movies.scroll_down(),
ActiveRadarrBlock::MovieDetails => app.data.radarr_data.movie_details.scroll_down(),
ActiveRadarrBlock::Downloads => app.data.radarr_data.downloads.scroll_down(),
_ => (),
}
}