### Godot version

4.1 db5113d

### System information

Windows 10.0.19045 - Vulkan (Forward+) - dedicated NVIDIA GeForce GTX 1060 (NVIDIA; 30.0.15.1403) - Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz (8 Threads)

### Issue description

![image](https://github.com/godotengine/godot/assets/2223172/ee391a0d-44b7-4a35-bfa5-40d47af75f65)
Notice the empty space to the right. I actually have a worse case in my project, but I couldn't reproduce it outside:
![](https://chat.godotengine.org/file-upload/X3RMM5A9gN7RZEizo/Clipboard%20-%202%20czerwca%202023%2022:54)
Regression from #77651
CC @Rindbee 

### Steps to reproduce

1. Add a new script
2. Name it `;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;.gd`
3. Hover its name in the Script Editor

### Minimal reproduction project

N/A
Rect2 parent_rect = get_parent_anchorable_rect();
	real_t edge_pos[4];
	for (int i = 0; i < 4; i++) {
		real_t area = parent_rect.size[i & 1];
		edge_pos[i] = data.offset[i] + (data.anchor[i] * area);
	}
	Point2 new_pos_cache = Point2(edge_pos[0], edge_pos[1]);
	Size2 new_size_cache = Point2(edge_pos[2], edge_pos[3]) - new_pos_cache;
	Size2 minimum_size = get_combined_minimum_size();
	if (minimum_size.width > new_size_cache.width) {
		if (data.h_grow == GROW_DIRECTION_BEGIN) {
			new_pos_cache.x += new_size_cache.width - minimum_size.width;
		} else if (data.h_grow == GROW_DIRECTION_BOTH) {
			new_pos_cache.x += 0.5 * (new_size_cache.width - minimum_size.width);
		}
		new_size_cache.width = minimum_size.width;
	}
	if (is_layout_rtl()) {
		new_pos_cache.x = parent_rect.size.x + 2 * parent_rect.position.x - new_pos_cache.x - new_size_cache.x;
	}
	if (minimum_size.height > new_size_cache.height) {
		if (data.v_grow == GROW_DIRECTION_BEGIN) {
			new_pos_cache.y += new_size_cache.height - minimum_size.height;
		} else if (data.v_grow == GROW_DIRECTION_BOTH) {
			new_pos_cache.y += 0.5 * (new_size_cache.height - minimum_size.height);
		}
		new_size_cache.height = minimum_size.height;