use super::event_debug::EventDebug;
use super::Editor;
use crate::input::handler::InputResult;
use crossterm::event::KeyEvent;
use rust_i18n::t;
impl Editor {
pub fn open_event_debug(&mut self) {
self.event_debug = Some(EventDebug::new());
self.set_status_message(t!("event_debug.started").to_string());
}
pub fn handle_event_debug_input(&mut self, event: &KeyEvent) -> InputResult {
let mut debug = match self.event_debug.take() {
Some(d) => d,
None => return InputResult::Ignored,
};
debug.record_event(*event);
if debug.should_close() {
self.set_status_message(t!("event_debug.closed").to_string());
} else {
self.event_debug = Some(debug);
}
InputResult::Consumed
}
pub fn is_event_debug_active(&self) -> bool {
self.event_debug.is_some()
}
}