diff --git a/src/tui.rs b/src/tui.rs index d561ced..b683a52 100644 --- a/src/tui.rs +++ b/src/tui.rs @@ -19,6 +19,21 @@ pub struct Tui { tasks: SharedTasks, } +async fn handle_signals(mut signals: Signals, channel: ) { + while let Some(signal) = signals.next().await { + match signal { + SIGHUP => { + // Reload configuration + // Reopen the log file + } + SIGTERM | SIGINT | SIGQUIT => { + // Shutdown the system; + }, + _ => unreachable!(), + } + } +} + impl Tui { pub fn new(tasks: SharedTasks) -> Self { Self { tasks } @@ -36,6 +51,8 @@ impl Tui { let mut signals = Signals::new(&[SIGHUP, SIGTERM, SIGINT, SIGQUIT])?; let handle = signals.handle(); + // TODO: enable isig to re-allow ctrl-z? + loop { terminal.draw(|frame| { let area = frame.size();