diff --git a/src/app/key_binding.rs b/src/app/key_binding.rs index 0726c14..f939a6d 100644 --- a/src/app/key_binding.rs +++ b/src/app/key_binding.rs @@ -28,6 +28,7 @@ generate_keybindings! { tasks, test, test_all, + toggle_monitoring, refresh, update, events, @@ -127,6 +128,10 @@ pub const DEFAULT_KEYBINDINGS: KeyBindings = KeyBindings { key: Key::Char('T'), desc: "test all", }, + toggle_monitoring: KeyBinding { + key: Key::Char('m'), + desc: "toggle monitoring", + }, refresh: KeyBinding { key: Key::Ctrl('r'), desc: "refresh", diff --git a/src/app/key_binding_tests.rs b/src/app/key_binding_tests.rs index 7b3cbb9..ac2231c 100644 --- a/src/app/key_binding_tests.rs +++ b/src/app/key_binding_tests.rs @@ -27,6 +27,7 @@ mod test { #[case(DEFAULT_KEYBINDINGS.tasks, Key::Char('t'), "tasks")] #[case(DEFAULT_KEYBINDINGS.test, Key::Char('t'), "test")] #[case(DEFAULT_KEYBINDINGS.test_all, Key::Char('T'), "test all")] + #[case(DEFAULT_KEYBINDINGS.test_all, Key::Char('m'), "toggle monitoring")] #[case(DEFAULT_KEYBINDINGS.refresh, Key::Ctrl('r'), "refresh")] #[case(DEFAULT_KEYBINDINGS.update, Key::Char('u'), "update")] #[case(DEFAULT_KEYBINDINGS.home, Key::Home, "home")] diff --git a/src/app/sonarr/sonarr_context_clues.rs b/src/app/sonarr/sonarr_context_clues.rs index ece0638..bb5dc4a 100644 --- a/src/app/sonarr/sonarr_context_clues.rs +++ b/src/app/sonarr/sonarr_context_clues.rs @@ -25,12 +25,13 @@ pub static SERIES_CONTEXT_CLUES: [ContextClue; 10] = [ (DEFAULT_KEYBINDINGS.esc, "cancel filter"), ]; -pub static SERIES_DETAILS_CONTEXT_CLUES: [ContextClue; 7] = [ +pub static SERIES_DETAILS_CONTEXT_CLUES: [ContextClue; 8] = [ ( DEFAULT_KEYBINDINGS.refresh, DEFAULT_KEYBINDINGS.refresh.desc, ), (DEFAULT_KEYBINDINGS.edit, DEFAULT_KEYBINDINGS.edit.desc), + (DEFAULT_KEYBINDINGS.toggle_monitoring, DEFAULT_KEYBINDINGS.toggle_monitoring.desc), (DEFAULT_KEYBINDINGS.submit, "season details"), (DEFAULT_KEYBINDINGS.search, DEFAULT_KEYBINDINGS.search.desc), (DEFAULT_KEYBINDINGS.update, DEFAULT_KEYBINDINGS.update.desc), @@ -76,11 +77,12 @@ pub static SEASON_DETAILS_CONTEXTUAL_CONTEXT_CLUES: [ContextClue; 2] = [ (DEFAULT_KEYBINDINGS.delete, "delete episode"), ]; -pub static SEASON_DETAILS_CONTEXT_CLUES: [ContextClue; 4] = [ +pub static SEASON_DETAILS_CONTEXT_CLUES: [ContextClue; 5] = [ ( DEFAULT_KEYBINDINGS.refresh, DEFAULT_KEYBINDINGS.refresh.desc, ), + (DEFAULT_KEYBINDINGS.toggle_monitoring, DEFAULT_KEYBINDINGS.toggle_monitoring.desc), (DEFAULT_KEYBINDINGS.search, DEFAULT_KEYBINDINGS.search.desc), ( DEFAULT_KEYBINDINGS.auto_search, diff --git a/src/app/sonarr/sonarr_context_clues_tests.rs b/src/app/sonarr/sonarr_context_clues_tests.rs index 73499d9..46ec883 100644 --- a/src/app/sonarr/sonarr_context_clues_tests.rs +++ b/src/app/sonarr/sonarr_context_clues_tests.rs @@ -189,6 +189,11 @@ mod tests { let (key_binding, description) = series_details_context_clues_iter.next().unwrap(); + assert_eq!(*key_binding, DEFAULT_KEYBINDINGS.toggle_monitoring); + assert_str_eq!(*description, DEFAULT_KEYBINDINGS.toggle_monitoring.desc); + + let (key_binding, description) = series_details_context_clues_iter.next().unwrap(); + assert_eq!(*key_binding, DEFAULT_KEYBINDINGS.submit); assert_str_eq!(*description, "season details"); @@ -225,6 +230,11 @@ mod tests { let (key_binding, description) = season_details_context_clues_iter.next().unwrap(); + assert_eq!(*key_binding, DEFAULT_KEYBINDINGS.toggle_monitoring); + assert_str_eq!(*description, DEFAULT_KEYBINDINGS.toggle_monitoring.desc); + + let (key_binding, description) = season_details_context_clues_iter.next().unwrap(); + assert_eq!(*key_binding, DEFAULT_KEYBINDINGS.search); assert_str_eq!(*description, DEFAULT_KEYBINDINGS.search.desc);