diff options
author | nc <charles.saternos@gmail.com> | 2020-08-05 23:59:40 -0400 |
---|---|---|
committer | nc <charles.saternos@gmail.com> | 2020-08-05 23:59:40 -0400 |
commit | 9777930868591abdf4a533e4059cc4fd08898521 (patch) | |
tree | e859f5db53ef8d025bc346d2ac1ae0b8090f6e2a | |
parent | 976ea0282d373c4d08187a78a7b46a09d66f7918 (diff) |
include only minimal code changes to add ctrl-c capturing functionality
-rw-r--r-- | src/app/impl_view.rs | 4 | ||||
-rw-r--r-- | src/main.rs | 4 |
2 files changed, 8 insertions, 0 deletions
diff --git a/src/app/impl_view.rs b/src/app/impl_view.rs index 892b00c..5f313f7 100644 --- a/src/app/impl_view.rs +++ b/src/app/impl_view.rs @@ -165,6 +165,10 @@ impl View for App { self.message.set_kind(MessageKind::Info); return EventResult::Consumed(None); } + Event::CtrlChar('c') => { + self.message.set_message("Use the :q command to quit"); + return EventResult::Consumed(None); + } /* Every keybind that is not caught by App trickles * down to the focused habit. We sift back to today diff --git a/src/main.rs b/src/main.rs index d96119e..3ec964a 100644 --- a/src/main.rs +++ b/src/main.rs @@ -52,6 +52,10 @@ fn main() { } else { let mut s = termion().unwrap(); let app = App::load_state(); + + // prevent Ctrl-C from killing the app and allow the app to override it. + s.clear_global_callbacks(cursive::event::Event::CtrlChar('c')); + let layout = NamedView::new( "Frame", LinearLayout::vertical().child(NamedView::new("Main", app)), |