|
@@ -1132,7 +1132,7 @@ void TextEdit::_consume_pair_symbol(CharType ch) {
|
|
|
|
|
|
int new_column,new_line;
|
|
int new_column,new_line;
|
|
|
|
|
|
- _begin_compex_operation();
|
|
|
|
|
|
+ _begin_complex_operation();
|
|
_insert_text(get_selection_from_line(), get_selection_from_column(),
|
|
_insert_text(get_selection_from_line(), get_selection_from_column(),
|
|
ch_single,
|
|
ch_single,
|
|
&new_line, &new_column);
|
|
&new_line, &new_column);
|
|
@@ -1145,7 +1145,7 @@ void TextEdit::_consume_pair_symbol(CharType ch) {
|
|
get_selection_to_column() + to_col_offset,
|
|
get_selection_to_column() + to_col_offset,
|
|
ch_single_pair,
|
|
ch_single_pair,
|
|
&new_line,&new_column);
|
|
&new_line,&new_column);
|
|
- _end_compex_operation();
|
|
|
|
|
|
+ _end_complex_operation();
|
|
|
|
|
|
cursor_set_line(get_selection_to_line());
|
|
cursor_set_line(get_selection_to_line());
|
|
cursor_set_column(get_selection_to_column() + to_col_offset);
|
|
cursor_set_column(get_selection_to_column() + to_col_offset);
|
|
@@ -1599,7 +1599,7 @@ void TextEdit::_input_event(const InputEvent& p_input_event) {
|
|
|
|
|
|
// remove the old character if in insert mode
|
|
// remove the old character if in insert mode
|
|
if (insert_mode) {
|
|
if (insert_mode) {
|
|
- _begin_compex_operation();
|
|
|
|
|
|
+ _begin_complex_operation();
|
|
|
|
|
|
// make sure we don't try and remove empty space
|
|
// make sure we don't try and remove empty space
|
|
if (cursor.column < get_line(cursor.line).length()) {
|
|
if (cursor.column < get_line(cursor.line).length()) {
|
|
@@ -1610,7 +1610,7 @@ void TextEdit::_input_event(const InputEvent& p_input_event) {
|
|
_insert_text_at_cursor(chr);
|
|
_insert_text_at_cursor(chr);
|
|
|
|
|
|
if (insert_mode) {
|
|
if (insert_mode) {
|
|
- _end_compex_operation();
|
|
|
|
|
|
+ _end_complex_operation();
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -1686,10 +1686,10 @@ void TextEdit::_input_event(const InputEvent& p_input_event) {
|
|
|
|
|
|
cursor_set_line(selection.from_line);
|
|
cursor_set_line(selection.from_line);
|
|
cursor_set_column(selection.from_column);
|
|
cursor_set_column(selection.from_column);
|
|
- _begin_compex_operation();
|
|
|
|
|
|
+ _begin_complex_operation();
|
|
_remove_text(selection.from_line,selection.from_column,selection.to_line,selection.to_column);
|
|
_remove_text(selection.from_line,selection.from_column,selection.to_line,selection.to_column);
|
|
_insert_text_at_cursor(txt);
|
|
_insert_text_at_cursor(txt);
|
|
- _end_compex_operation();
|
|
|
|
|
|
+ _end_complex_operation();
|
|
selection.active=true;
|
|
selection.active=true;
|
|
selection.from_column=sel_column;
|
|
selection.from_column=sel_column;
|
|
selection.from_line=sel_line;
|
|
selection.from_line=sel_line;
|
|
@@ -1747,6 +1747,7 @@ void TextEdit::_input_event(const InputEvent& p_input_event) {
|
|
}
|
|
}
|
|
if (clear) {
|
|
if (clear) {
|
|
|
|
|
|
|
|
+ _begin_complex_operation();
|
|
selection.active=false;
|
|
selection.active=false;
|
|
update();
|
|
update();
|
|
_remove_text(selection.from_line,selection.from_column,selection.to_line,selection.to_column);
|
|
_remove_text(selection.from_line,selection.from_column,selection.to_line,selection.to_column);
|
|
@@ -2395,7 +2396,7 @@ void TextEdit::_input_event(const InputEvent& p_input_event) {
|
|
|
|
|
|
// remove the old character if in insert mode and no selection
|
|
// remove the old character if in insert mode and no selection
|
|
if (insert_mode && !had_selection) {
|
|
if (insert_mode && !had_selection) {
|
|
- _begin_compex_operation();
|
|
|
|
|
|
+ _begin_complex_operation();
|
|
|
|
|
|
// make sure we don't try and remove empty space
|
|
// make sure we don't try and remove empty space
|
|
if (cursor.column < get_line(cursor.line).length()) {
|
|
if (cursor.column < get_line(cursor.line).length()) {
|
|
@@ -2415,7 +2416,11 @@ void TextEdit::_input_event(const InputEvent& p_input_event) {
|
|
}
|
|
}
|
|
|
|
|
|
if (insert_mode && !had_selection) {
|
|
if (insert_mode && !had_selection) {
|
|
- _end_compex_operation();
|
|
|
|
|
|
+ _end_complex_operation();
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ if (selection.active != had_selection) {
|
|
|
|
+ _end_complex_operation();
|
|
}
|
|
}
|
|
accept_event();
|
|
accept_event();
|
|
} else {
|
|
} else {
|
|
@@ -3608,12 +3613,12 @@ void TextEdit::clear_undo_history() {
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
-void TextEdit::_begin_compex_operation() {
|
|
|
|
|
|
+void TextEdit::_begin_complex_operation() {
|
|
_push_current_op();
|
|
_push_current_op();
|
|
next_operation_is_complex=true;
|
|
next_operation_is_complex=true;
|
|
}
|
|
}
|
|
|
|
|
|
-void TextEdit::_end_compex_operation() {
|
|
|
|
|
|
+void TextEdit::_end_complex_operation() {
|
|
|
|
|
|
_push_current_op();
|
|
_push_current_op();
|
|
ERR_FAIL_COND(undo_stack.size() == 0);
|
|
ERR_FAIL_COND(undo_stack.size() == 0);
|