summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--editor/code_editor.cpp5
-rw-r--r--editor/code_editor.h1
2 files changed, 6 insertions, 0 deletions
diff --git a/editor/code_editor.cpp b/editor/code_editor.cpp
index 926c01b334..7ae0db7b48 100644
--- a/editor/code_editor.cpp
+++ b/editor/code_editor.cpp
@@ -873,6 +873,10 @@ void CodeTextEditor::_reset_zoom() {
}
void CodeTextEditor::_line_col_changed() {
+ if (!code_complete_timer->is_stopped() && code_complete_timer_line != text_editor->get_caret_line()) {
+ code_complete_timer->stop();
+ }
+
String line = text_editor->get_line(text_editor->get_caret_line());
int positional_column = 0;
@@ -902,6 +906,7 @@ void CodeTextEditor::_line_col_changed() {
void CodeTextEditor::_text_changed() {
if (text_editor->is_insert_text_operation()) {
+ code_complete_timer_line = text_editor->get_caret_line();
code_complete_timer->start();
}
diff --git a/editor/code_editor.h b/editor/code_editor.h
index ded7518287..4d7034fbd0 100644
--- a/editor/code_editor.h
+++ b/editor/code_editor.h
@@ -158,6 +158,7 @@ class CodeTextEditor : public VBoxContainer {
Label *info = nullptr;
Timer *idle = nullptr;
Timer *code_complete_timer = nullptr;
+ int code_complete_timer_line = 0;
Timer *font_resize_timer = nullptr;
int font_resize_val;