### Godot version

v4.0.beta14.official

### System information

Windows 11 22H2

### Issue description

There's not much to it, simply noticed that if you have Find or Find+Replace opened in the Script Editor, the Multi-Caret functionality seems to stop working -- forcibly removing all other carets after the first character is typed. I'd expect the Multi-Caret to remain until unselected by clicking elsewhere.

The content of what's in "Find" doesn't matter, it happens regardless.

https://user-images.githubusercontent.com/8159582/214234069-cbcc1681-3f09-4b10-9a90-857cc91d41a7.mp4



### Steps to reproduce

1. Open the Find or Find+Replace tool in the Script Editor _(nothing has to be inputted)_
2. Add multiple mouse cursors with Ctrl+Alt+Click **OR** highlight something and then highlight additional duplicates with Ctrl+D _(or synonymous keyboard shortcuts depending on OS)_.
3. Start typing as if going to add or replace in all locations where the multi-caret is

### Minimal reproduction project

N/A
bool selection_active = false;
		text_editor->set_caret_column(text_editor->get_line(from_line).length(), c == 0, c);
		if (text_editor->has_selection(c)) {
			from_column = text_editor->get_selection_from_column(c);
			to_column = text_editor->get_selection_to_column(c);
			from_line = text_editor->get_selection_from_line(c);
			to_line = text_editor->get_selection_to_line(c);
			cursor_new_line = to_line + text_editor->get_caret_line(c) - from_line;
			cursor_new_column = to_column == cursor_column ? 2 * to_column - from_column : to_column;
			new_text = text_editor->get_selected_text(c);
			selection_active = true;
			text_editor->set_caret_line(to_line, c == 0, true, 0, c);
			text_editor->set_caret_column(to_column, c == 0, c);
		}
		for (int i = from_line; i <= to_line; i++) {
			text_editor->unfold_line(i);
		}
		text_editor->deselect(c);
		text_editor->insert_text_at_caret(new_text, c);
		text_editor->set_caret_line(cursor_new_line, c == 0, true, 0, c);
		text_editor->set_caret_column(cursor_new_column, c == 0, c);
		if (selection_active) {
			text_editor->select(to_line, to_column, 2 * to_line - from_line, to_line == from_line ? 2 * to_column - from_column : to_column, c);
		}
	}
	text_editor->merge_overlapping_carets();
	text_editor->end_complex_operation();
	text_editor->queue_redraw();
}
void CodeTextEditor::toggle_inline_comment(const String &delimiter) {