Browse Source

Fix selecting root node before button released

In order to test if the button press is within the scene tree, the
Tree's coordinates should be used, not the SceneTreeEditor's.
Dan Nicholson 11 tháng trước cách đây
mục cha
commit
b05aab4b33
1 tập tin đã thay đổi với 2 bổ sung1 xóa
  1. 2 1
      editor/scene_tree_dock.cpp

+ 2 - 1
editor/scene_tree_dock.cpp

@@ -126,7 +126,8 @@ void SceneTreeDock::input(const Ref<InputEvent> &p_event) {
 	Ref<InputEventMouseButton> mb = p_event;
 
 	if (mb.is_valid() && (mb->get_button_index() == MouseButton::LEFT || mb->get_button_index() == MouseButton::RIGHT)) {
-		if (mb->is_pressed() && scene_tree->get_rect().has_point(scene_tree->get_local_mouse_position())) {
+		Tree *tree = scene_tree->get_scene_tree();
+		if (mb->is_pressed() && tree->get_rect().has_point(tree->get_local_mouse_position())) {
 			tree_clicked = true;
 		} else if (!mb->is_pressed()) {
 			tree_clicked = false;