From 8ebee4bce6c5faab336b607bf969eb55eeacf7a3 Mon Sep 17 00:00:00 2001 From: AnotherTest Date: Mon, 13 Apr 2020 14:51:34 +0430 Subject: [PATCH] LibLine: Update display when deleting forward --- Libraries/LibLine/Editor.cpp | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/Libraries/LibLine/Editor.cpp b/Libraries/LibLine/Editor.cpp index 3e2854c7a68..2e39e3b6b10 100644 --- a/Libraries/LibLine/Editor.cpp +++ b/Libraries/LibLine/Editor.cpp @@ -152,14 +152,6 @@ String Editor::get_line(const String& prompt) } auto reverse_tab = false; - auto do_delete = [&] { - if (m_cursor == m_buffer.size()) { - fputc('\a', stdout); - fflush(stdout); - return; - } - m_buffer.remove(m_cursor); - }; auto increment_suggestion_index = [&] { m_next_suggestion_index = (m_next_suggestion_index + 1) % m_suggestions.size(); }; @@ -235,7 +227,13 @@ String Editor::get_line(const String& prompt) m_state = InputState::Free; break; case '3': - do_delete(); + if (m_cursor == m_buffer.size()) { + fputc('\a', stdout); + fflush(stdout); + continue; + } + m_buffer.remove(m_cursor); + m_refresh_needed = true; m_state = InputState::ExpectTerminator; continue; default: