### Godot version

4.0 Beta 17 mono

### System information

Windows 10, Nvidia GTX 1660Ti, Vulkan

### Issue description

When you try to click on the eye icon it won't work in about half of the icon's area when you zoom out, instead you can drag a noodle from the port next to the icon.

https://youtu.be/zpWVsGoy9oU

### Steps to reproduce

Check the video and description above.

### Minimal reproduction project

-
for (const StringName &E : block_heads) {
		_place_block(E, gap_v, layers, root, align, node_names, inner_shift, sink, shift, new_positions);
	}
	origin.y = Object::cast_to<GraphNode>(node_names[layers[0][0]])->get_position_offset().y - (new_positions[layers[0][0]].y + (float)inner_shift[layers[0][0]]);
	origin.x = Object::cast_to<GraphNode>(node_names[layers[0][0]])->get_position_offset().x;
	for (const StringName &E : block_heads) {
		StringName u = E;
		float start_from = origin.y + new_positions[E].y;
		do {
			Vector2 cal_pos;
			cal_pos.y = start_from + (real_t)inner_shift[u];
			new_positions.insert(u, cal_pos);
			u = align[u];
		} while (u != E);
	}
	
	float start_from = origin.x;
	float largest_node_size = 0.0f;
	for (unsigned int i = 0; i < layers.size(); i++) {
		Vector<StringName> layer = layers[i];
		for (int j = 0; j < layer.size(); j++) {
			float current_node_size = Object::cast_to<GraphNode>(node_names[layer[j]])->get_size().x;
			largest_node_size = MAX(largest_node_size, current_node_size);
		}
		for (int j = 0; j < layer.size(); j++) {
			float current_node_size = Object::cast_to<GraphNode>(node_names[layer[j]])->get_size().x;
			Vector2 cal_pos = new_positions[layer[j]];
			if (current_node_size == largest_node_size) {
				cal_pos.x = start_from;
			} else {