Merge pull request #95059 from Geometror/fix-graphedit-port-snapping-again

Fix GraphEdit port snapping in certain edge cases
This commit is contained in:
Rémi Verschelde 2024-08-06 12:31:17 +02:00
commit b27e9f0b3b
No known key found for this signature in database
GPG key ID: C3336907360768E1

View file

@ -912,7 +912,7 @@ bool GraphEdit::_filter_input(const Point2 &p_point) {
// This prevents interactions with a port hotzone that is behind another node.
Rect2 graph_node_rect = Rect2(graph_node->get_position(), graph_node->get_size() * zoom);
if (graph_node_rect.has_point(click_pos * zoom)) {
if (graph_node_rect.has_point(p_point)) {
break;
}
}
@ -1044,12 +1044,6 @@ void GraphEdit::_top_connection_layer_input(const Ref<InputEvent> &p_ev) {
return;
}
}
// This prevents interactions with a port hotzone that is behind another node.
Rect2 graph_node_rect = Rect2(graph_node->get_position(), graph_node->get_size() * zoom);
if (graph_node_rect.has_point(click_pos * zoom)) {
break;
}
}
}
@ -1121,6 +1115,12 @@ void GraphEdit::_top_connection_layer_input(const Ref<InputEvent> &p_ev) {
}
connecting_target_valid = false;
}
// This prevents interactions with a port hotzone that is behind another node.
Rect2 graph_node_rect = Rect2(graph_node->get_position(), graph_node->get_size() * zoom);
if (graph_node_rect.has_point(mm->get_position())) {
break;
}
}
}
}