diff options
Diffstat (limited to 'src/app/api.rs')
| -rw-r--r-- | src/app/api.rs | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/app/api.rs b/src/app/api.rs index 5f81a5cb..c2130f36 100644 --- a/src/app/api.rs +++ b/src/app/api.rs @@ -64,6 +64,10 @@ impl App { results, cache_updates, } => self.handle_git_status_refreshed(results, cache_updates), + ev @ AppEvent::TerminalBell { .. } => { + self.handle_internal_event(ev); + false + } ev => { self.handle_internal_event(ev); true @@ -97,6 +101,15 @@ impl App { } pub(crate) fn handle_internal_event(&mut self, ev: AppEvent) { + if let AppEvent::TerminalBell { count, .. } = ev { + if let Err(err) = + crate::terminal_effects::write_terminal_bells(&mut std::io::stdout(), count) + { + tracing::warn!(err = %err, "failed to emit terminal bell"); + } + return; + } + if let AppEvent::ClipboardWrite { content } = ev { #[cfg(not(test))] crate::selection::write_osc52_bytes(&content); |
