### Godot version

4.0 beta 15

### System information

Windows 10

### Issue description

It happened with both Google IME and MS-IME, and there was no problem until Beta14.
When typing Japanese characters, it is common to select a character from the suggestion window and then start typing the next character before confirming.
In this case, uncommitted characters are forcibly committed, and input of the next character begins.

**↓Beta15**

https://user-images.githubusercontent.com/186786/214753450-b493cca6-2644-4b3d-8cd2-660565cc3547.mp4

**↓Beta14**

https://user-images.githubusercontent.com/186786/214755127-dde819cc-4d63-403a-99b0-09821671f74e.mp4



### Steps to reproduce

It happened with both Google IME and MS-IME in beta15

### Minimal reproduction project

It is project independent and happens in the editor.
Control::drop_data(p_point, p_data);
	if (p_data.get_type() == Variant::STRING && is_editable()) {
		set_caret_at_pixel_pos(p_point.x);
		int caret_column_tmp = caret_column;
		bool is_inside_sel = selection.enabled && caret_column >= selection.begin && caret_column <= selection.end;
		if (Input::get_singleton()->is_key_pressed(Key::CTRL)) {
			is_inside_sel = selection.enabled && caret_column > selection.begin && caret_column < selection.end;
		}
		if (selection.drag_attempt) {
			selection.drag_attempt = false;
			if (!is_inside_sel) {
				if (!Input::get_singleton()->is_key_pressed(Key::CTRL)) {
					if (caret_column_tmp > selection.end) {
						caret_column_tmp = caret_column_tmp - (selection.end - selection.begin);
					}
					selection_delete();
				}
				set_caret_column(caret_column_tmp);
				insert_text_at_caret(p_data);
			}
		} else if (selection.enabled && caret_column >= selection.begin && caret_column <= selection.end) {
			caret_column_tmp = selection.begin;
			selection_delete();
			set_caret_column(caret_column_tmp);
			insert_text_at_caret(p_data);