fresh/app/
event_debug_actions.rs1use super::event_debug::EventDebug;
6use super::Editor;
7use crate::input::handler::InputResult;
8use crossterm::event::KeyEvent;
9use rust_i18n::t;
10
11impl Editor {
12 pub fn open_event_debug(&mut self) {
14 self.event_debug = Some(EventDebug::new());
15 self.set_status_message(t!("event_debug.started").to_string());
16 }
17
18 pub fn handle_event_debug_input(&mut self, event: &KeyEvent) -> InputResult {
20 let mut debug = match self.event_debug.take() {
22 Some(d) => d,
23 None => return InputResult::Ignored,
24 };
25
26 debug.record_event(*event);
28
29 if debug.should_close() {
31 self.set_status_message(t!("event_debug.closed").to_string());
32 } else {
34 self.event_debug = Some(debug);
36 }
37
38 InputResult::Consumed
39 }
40
41 pub fn is_event_debug_active(&self) -> bool {
43 self.event_debug.is_some()
44 }
45}