### Godot version

4.0.dev(0810ecaafdbee3ea747219e6ab3a8de5d2216a09)

### System information

any

### Issue description

https://user-images.githubusercontent.com/61938263/215898051-8506b45e-a9d4-4c3f-b1b3-28f202dea67b.mp4



### Steps to reproduce

Editt AnimationBlendTree

### Minimal reproduction project

N/A
PackedStringArray warnings = Control::get_configuration_warnings();
	warnings.push_back(RTR("Please be aware that GraphEdit and GraphNode will undergo extensive refactoring in a future beta version involving compatibility-breaking API changes."));
	return warnings;
}
Error GraphEdit::connect_node(const StringName &p_from, int p_from_port, const StringName &p_to, int p_to_port) {
	if (is_node_connected(p_from, p_from_port, p_to, p_to_port)) {
		return OK;
	}
	Connection c;
	c.from = p_from;
	c.from_port = p_from_port;
	c.to = p_to;
	c.to_port = p_to_port;
	c.activity = 0;
	connections.push_back(c);
	top_layer->queue_redraw();
	minimap->queue_redraw();
	queue_redraw();
	connections_layer->queue_redraw();
	return OK;
}
bool GraphEdit::is_node_connected(const StringName &p_from, int p_from_port, const StringName &p_to, int p_to_port) {
	for (const Connection &E : connections) {
		if (E.from == p_from && E.from_port == p_from_port && E.to == p_to && E.to_port == p_to_port) {
			return true;
		}
	}
	return false;
}
void GraphEdit::disconnect_node(const StringName &p_from, int p_from_port, const StringName &p_to, int p_to_port) {