Help page for view mode

This commit is contained in:
Ian Keane 2025-11-22 11:57:28 -05:00
parent 353d422730
commit 1d1778037c
2 changed files with 85 additions and 0 deletions

View file

@ -21,6 +21,7 @@ pub enum Screen {
NewEntry,
ReassignProject,
LogView,
LogViewHelp,
}
pub enum LogViewPeriod {
@ -97,6 +98,7 @@ impl App {
Screen::NewEntry => self.handle_new_entry_event(event),
Screen::ReassignProject => self.handle_reassign_project_event(event),
Screen::LogView => self.handle_log_view_event(event),
Screen::LogViewHelp => self.handle_log_view_help_event(event),
};
// If we switched screens, signal that we need to clear
@ -246,6 +248,19 @@ impl App {
Ok(false)
}
fn handle_log_view_help_event(&mut self, event: Event) -> anyhow::Result<bool> {
match event {
Event::Key(KeyEvent { code, .. }) => match code {
KeyCode::Esc | KeyCode::Char('q') | KeyCode::Char('?') => {
self.current_screen = Screen::LogView;
}
_ => {}
},
_ => {}
}
Ok(false)
}
fn handle_reassign_project_event(&mut self, event: Event) -> anyhow::Result<bool> {
match event {
Event::Key(KeyEvent {
@ -299,6 +314,9 @@ impl App {
self.log_view_selected = 0;
self.needs_clear = true;
}
KeyCode::Char('?') => {
self.current_screen = Screen::LogViewHelp;
}
KeyCode::Char('d') => {
self.log_view_period = LogViewPeriod::Day;
self.log_view_scroll = 0;