diff options
author | Emmanuel Barroga <emmanuelbarroga@gmail.com> | 2019-07-10 22:58:43 -0700 |
---|---|---|
committer | Emmanuel Barroga <emmanuelbarroga@gmail.com> | 2019-07-13 17:25:20 -0700 |
commit | 381faf83c33c3f2c1e42e12b511d1b3ea9e50582 (patch) | |
tree | eed2988ecb3a5a01db90b7662ef0ba13b03af2db | |
parent | 2c6daf73f3a1077dfae0ca88117a3f4b583eb7e6 (diff) |
Fix GraphNode immediately losing focus
Closes: #30243
GraphNode immediately loses focus, and gives focus to its parent.
This fix changes implementation so that it does not transfer focus to its parent after receiving focus. Instead, it will transfer focus when the "close button" is pressed.
-rw-r--r-- | scene/gui/graph_node.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/scene/gui/graph_node.cpp b/scene/gui/graph_node.cpp index 6463ee5ad5..222c75b21d 100644 --- a/scene/gui/graph_node.cpp +++ b/scene/gui/graph_node.cpp @@ -599,6 +599,8 @@ void GraphNode::_gui_input(const Ref<InputEvent> &p_ev) { Vector2 mpos = Vector2(mb->get_position().x, mb->get_position().y); if (close_rect.size != Size2() && close_rect.has_point(mpos)) { + //send focus to parent + get_parent_control()->grab_focus(); emit_signal("close_request"); accept_event(); return; @@ -615,9 +617,7 @@ void GraphNode::_gui_input(const Ref<InputEvent> &p_ev) { return; } - //send focus to parent emit_signal("raise_request"); - get_parent_control()->grab_focus(); } if (!mb->is_pressed() && mb->get_button_index() == BUTTON_LEFT) { |