### Godot version

4.0 stable

### System information

Manjaro Linux, kernel 6.1.1-1-MANJARO, AMD Ryzen 5 3600, AMD RX 580

### Issue description

The `wrap_mode` property of the `TextEdit` node doesn't seem to really do anything. Setting it to `LINE_WRAPPING_BOUNDARY` simply means that there won't be an horizontal scrollbar if the text overshoots the boundary, instead of actually forcing the text to the next line so that it stays visible.

### Steps to reproduce

Create a TextEdit node and set its `wrap_mode` property to `LINE_WRAPPING_BOUNDARY`

### Minimal reproduction project

[WrapBugDemo.zip](https://github.com/godotengine/godot/files/10875969/WrapBugDemo.zip)

ERR_PRINT("Could not load editor settings from path: " + config_file_path);
			goto fail;
		}
		singleton->save_changed_setting = true;
		print_verbose("EditorSettings: Load OK!");
		singleton->setup_language();
		singleton->setup_network();
		singleton->load_favorites_and_recent_dirs();
		singleton->list_text_editor_themes();
		return;
	}
fail:
	
	String exe_path = OS::get_singleton()->get_executable_path().get_base_dir();
	if (extra_config->has_section("init_projects")) {
		Vector<String> list = extra_config->get_value("init_projects", "list");
		for (int i = 0; i < list.size(); i++) {
			list.write[i] = exe_path.path_join(list[i]);
		}
		extra_config->set_value("init_projects", "list", list);
	}
	singleton = Ref<EditorSettings>(memnew(EditorSettings));
	singleton->set_path(config_file_path, true);
	singleton->save_changed_setting = true;
	singleton->_load_defaults(extra_config);
	singleton->setup_language();
	singleton->setup_network();
	singleton->list_text_editor_themes();
}
void EditorSettings::setup_language() {