Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'helix-term/src/handlers/prompt.rs')
-rw-r--r--helix-term/src/handlers/prompt.rs17
1 files changed, 17 insertions, 0 deletions
diff --git a/helix-term/src/handlers/prompt.rs b/helix-term/src/handlers/prompt.rs
new file mode 100644
index 00000000..2270f58b
--- /dev/null
+++ b/helix-term/src/handlers/prompt.rs
@@ -0,0 +1,17 @@
+use helix_event::register_hook;
+use helix_view::events::DocumentFocusLost;
+use helix_view::handlers::Handlers;
+
+use crate::job::{self};
+use crate::ui;
+
+pub(super) fn register_hooks(_handlers: &Handlers) {
+ register_hook!(move |_event: &mut DocumentFocusLost<'_>| {
+ job::dispatch_blocking(move |_, compositor| {
+ if compositor.find::<ui::Prompt>().is_some() {
+ compositor.remove_type::<ui::Prompt>();
+ }
+ });
+ Ok(())
+ });
+}