### Godot version

Godot 4.0 statble

### System information

Windows 10

### Issue description

TextEdit boundary wrapmode not works, it only removes the horizontal scrollbar

### Steps to reproduce

Add a textedit in editor, set  the wrap mode to boundary, type something.

### Minimal reproduction project

![image](https://user-images.githubusercontent.com/9168814/224538077-2efb4e67-8976-496e-9223-c460365ecc28.png)
![image](https://user-images.githubusercontent.com/9168814/224538084-af773b86-d73a-4e8b-9b66-a0fb4bde1168.png)

text_edit->set_caret_line(0);
	text_edit->set_caret_column(0);
	MessageQueue::get_singleton()->flush();
	SIGNAL_DISCARD("caret_changed");
	SUBCASE("[TextEdit] add remove caret") {
		
		CHECK(text_edit->add_caret(0, 0) == -1);
		MessageQueue::get_singleton()->flush();
		SIGNAL_CHECK_FALSE("caret_changed");
		
		text_edit->select(0, 0, 2, 4);
		CHECK(text_edit->add_caret(0, 0) == -1);
		CHECK(text_edit->add_caret(2, 4) == -1);
		CHECK(text_edit->add_caret(1, 2) == -1);
		
		CHECK(text_edit->add_caret(-1, 0) == -1);
		CHECK(text_edit->add_caret(5, 0) == -1);
		CHECK(text_edit->add_caret(0, 100) == -1);
		MessageQueue::get_singleton()->flush();
		SIGNAL_CHECK_FALSE("caret_changed");
		CHECK(text_edit->get_caret_count() == 1);
		text_edit->deselect();
		SIGNAL_CHECK_FALSE("caret_changed");
		CHECK(text_edit->add_caret(0, 1) == 1);
		MessageQueue::get_singleton()->flush();
		SIGNAL_CHECK("caret_changed", empty_signal_args);
		CHECK(text_edit->get_caret_count() == 2);
		CHECK(text_edit->get_caret_line(0) == 0);
		CHECK(text_edit->get_caret_column(0) == 0);
		CHECK(text_edit->get_caret_line(1) == 0);