### 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 get_button_count(int p_column) const;
	String get_button_tooltip_text(int p_column, int p_index) const;
	Ref<Texture2D> get_button(int p_column, int p_index) const;
	int get_button_id(int p_column, int p_index) const;
	void erase_button(int p_column, int p_index);
	int get_button_by_id(int p_column, int p_id) const;
	void set_button_tooltip_text(int p_column, int p_index, const String &p_tooltip);
	void set_button(int p_column, int p_index, const Ref<Texture2D> &p_button);
	void set_button_color(int p_column, int p_index, const Color &p_color);
	void set_button_disabled(int p_column, int p_index, bool p_disabled);
	bool is_button_disabled(int p_column, int p_index) const;
	
	void set_range(int p_column, double p_value);
	double get_range(int p_column) const;
	void set_range_config(int p_column, double p_min, double p_max, double p_step, bool p_exp = false);
	void get_range_config(int p_column, double &r_min, double &r_max, double &r_step) const;
	bool is_range_exponential(int p_column) const;
	void set_metadata(int p_column, const Variant &p_meta);
	Variant get_metadata(int p_column) const;
	void set_custom_draw(int p_column, Object *p_object, const StringName &p_callback);
	void set_collapsed(bool p_collapsed);
	bool is_collapsed();
	void set_collapsed_recursive(bool p_collapsed);
	bool is_any_collapsed(bool p_only_visible = false);
	void set_visible(bool p_visible);
	bool is_visible();
	void uncollapse_tree();
	void set_custom_minimum_height(int p_height);
	int get_custom_minimum_height() const;
	void set_selectable(int p_column, bool p_selectable);