### Godot version

v4.2.dev1.official [0c2144da9]

### System information

Godot v4.2.dev1 - Windows 10.0.19044 - GLES3 (Compatibility) - AMD Radeon(TM) Vega 8 Graphics (Advanced Micro Devices, Inc.; 31.0.14051.5006) - AMD Ryzen 5 2500U with Radeon Vega Mobile Gfx (8 Threads)

### Issue description
**Edit: Bug introduced between 4.1.dev2 and 4.1.dev3. In dev2, the scrollbars can be dragged very smoothly, and even if the scrollbars are at the bottom, there is no performance loss.**

When there are too many warnings in the debugger and render mode is GLES3 (Compatibility).
The lag situation of the editor is positively correlated with the position of the scroll bar. The closer the scroll bar is to the bottom, the more lagging the editor becomes.
Although the English version may be a bit lag, the situation is much better, but the Chinese version will be very poor.
In forward+ mode, both Chinese and English perform similarly, with slight performance impact.

Chinese:

https://github.com/godotengine/godot/assets/45038185/2449fedb-113e-45b6-ba6a-0fbd3652175d

English:

https://github.com/godotengine/godot/assets/45038185/ff3448e5-d08e-4077-93ac-32e180a8cf3b




### Steps to reproduce

1. Run Project.
2. Waiting for warnings of around 1000.
3. When the scroll bar in the error panel of the debugger is at the top, test the editor.
4. Test the editor when the scroll bar is at the bottom.
5. Try Chinese language mode.
6. Try foward+ and GLES3 (Compatibility).

When switching languages, you may need to use arrow keys because of other bugs.

### Minimal reproduction project

[WarningLag.zip](https://github.com/godotengine/godot/files/12174463/WarningLag.zip)

int draw_item(const Point2i &p_pos, const Point2 &p_draw_ofs, const Size2 &p_draw_size, TreeItem *p_item, int *r_self_height = nullptr);
	void select_single_item(TreeItem *p_selected, TreeItem *p_current, int p_col, TreeItem *p_prev = nullptr, bool *r_in_range = nullptr, bool p_force_deselect = false);
	int propagate_mouse_event(const Point2i &p_pos, int x_ofs, int y_ofs, int x_limit, bool p_double_click, TreeItem *p_item, MouseButton p_button, const Ref<InputEventWithModifiers> &p_mod);
	void _line_editor_submit(String p_text);
	void _apply_multiline_edit();
	void _text_editor_popup_modal_close();
	void _text_editor_gui_input(const Ref<InputEvent> &p_event);
	void value_editor_changed(double p_value);
	void popup_select(int p_option);
	void _notification(int p_what);
	void item_edited(int p_column, TreeItem *p_item, MouseButton p_custom_mouse_index = MouseButton::NONE);
	void item_changed(int p_column, TreeItem *p_item);
	void item_selected(int p_column, TreeItem *p_item);
	void item_deselected(int p_column, TreeItem *p_item);
	void propagate_set_columns(TreeItem *p_item);
	struct ThemeCache {
		Ref<StyleBox> panel_style;
		Ref<StyleBox> focus_style;
		Ref<Font> font;
		Ref<Font> tb_font;
		int font_size = 0;
		int tb_font_size = 0;
		Ref<StyleBox> selected;
		Ref<StyleBox> selected_focus;
		Ref<StyleBox> cursor;
		Ref<StyleBox> cursor_unfocus;
		Ref<StyleBox> button_pressed;
		Ref<StyleBox> title_button;
		Ref<StyleBox> title_button_hover;
		Ref<StyleBox> title_button_pressed;