### Godot version

4.1

### System information

Fedora, RX 590

### Issue description

Between 4.0.2 release and 4.0.3 RC1 the hotzone of the visual shader nodes have shrunk on the side that overlaps the node itself.
![Screenshot from 2023-06-22 12-14-19](https://github.com/godotengine/godot/assets/7917475/255feaf2-6e8c-4e7b-a1d9-0b86f28b1ec2)


### Steps to reproduce

Download 4.0.2 release and 4.0.3-rc1. 

Open MRP, navigate to hotzone.tres shader.

Zoom out to this level of zoom: 
![image](https://github.com/godotengine/godot/assets/7917475/5a3ffd5f-7760-4ced-a6aa-7861c2c1206f)

Try to extract a pin from ColorOp node.

In 4.0.3 you can observe how if you're not very precise you will drag the node around.

### Minimal reproduction project

[hotzone.zip](https://github.com/godotengine/godot/files/11832820/hotzone.zip)

Rect2 hotzone = Rect2(
			p_pos.x - (p_left ? port_hotzone_outer_extent : port_hotzone_inner_extent),
			p_pos.y - p_port_size.height / 2.0,
			port_hotzone_inner_extent + port_hotzone_outer_extent,
			p_port_size.height);
	if (!hotzone.has_point(p_mouse_pos)) {
		return false;
	}
	for (int i = 0; i < get_child_count(); i++) {
		GraphNode *child = Object::cast_to<GraphNode>(get_child(i));
		if (!child) {
			continue;
		}
		Rect2 child_rect = child->get_rect();
		if (child_rect.has_point(p_mouse_pos * zoom)) {
			for (int j = 0; j < child->get_child_count(); j++) {
				Control *subchild = Object::cast_to<Control>(child->get_child(j));
				if (!subchild) {
					continue;
				}
				if (_check_clickable_control(subchild, p_mouse_pos * zoom, child_rect.position)) {
					return false;
				}
			}
		}
	}
	return true;
}
PackedVector2Array GraphEdit::get_connection_line(const Vector2 &p_from, const Vector2 &p_to) {