From c58457a3c03c4f9ebd6db51e53720aac9655cd21 Mon Sep 17 00:00:00 2001 From: Maxime Coste Date: Sun, 15 Jul 2018 11:46:02 +1000 Subject: [PATCH] Fix manual insert completion menu not getting automatically hidden Fixes #2208 --- src/input_handler.cc | 3 +-- src/insert_completer.cc | 5 +++-- src/insert_completer.hh | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/input_handler.cc b/src/input_handler.cc index d5e299ff..11f2d5e3 100644 --- a/src/input_handler.cc +++ b/src/input_handler.cc @@ -1096,8 +1096,7 @@ public: m_disable_hooks{context().hooks_disabled(), context().hooks_disabled()}, m_idle_timer{TimePoint::max(), context().flags() & Context::Flags::Draft ? Timer::Callback{} : [this](Timer&) { - if (m_auto_complete) - m_completer.update(); + m_completer.update(m_auto_complete); context().hooks().run_hook("InsertIdle", "", context()); }} { diff --git a/src/insert_completer.cc b/src/insert_completer.cc index 5d067ba0..3dbe699b 100644 --- a/src/insert_completer.cc +++ b/src/insert_completer.cc @@ -459,13 +459,14 @@ void InsertCompleter::select(int index, bool relative, Vector& keystrokes) } } -void InsertCompleter::update() +void InsertCompleter::update(bool allow_implicit) { if (m_explicit_completer and try_complete(m_explicit_completer)) return; reset(); - setup_ifn(); + if (allow_implicit) + setup_ifn(); } void InsertCompleter::reset() diff --git a/src/insert_completer.hh b/src/insert_completer.hh index 0f16e8aa..305435a9 100644 --- a/src/insert_completer.hh +++ b/src/insert_completer.hh @@ -83,7 +83,7 @@ public: ~InsertCompleter(); void select(int index, bool relative, Vector& keystrokes); - void update(); + void update(bool allow_implicit); void reset(); void explicit_file_complete();