浏览代码

Fix TextOp setting to none when typing

Paulb23 4 年之前
父节点
当前提交
7926d75d02
共有 1 个文件被更改,包括 7 次插入2 次删除
  1. 7 2
      scene/gui/text_edit.cpp

+ 7 - 2
scene/gui/text_edit.cpp

@@ -2731,7 +2731,10 @@ void TextEdit::insert_line_at(int p_at, const String &p_text) {
 }
 
 void TextEdit::insert_text_at_caret(const String &p_text) {
-	begin_complex_operation();
+	bool had_selection = has_selection();
+	if (had_selection) {
+		begin_complex_operation();
+	}
 
 	delete_selection();
 
@@ -2743,7 +2746,9 @@ void TextEdit::insert_text_at_caret(const String &p_text) {
 	set_caret_column(new_column);
 	update();
 
-	end_complex_operation();
+	if (had_selection) {
+		end_complex_operation();
+	}
 }
 
 void TextEdit::remove_text(int p_from_line, int p_from_column, int p_to_line, int p_to_column) {