Переглянути джерело

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 місяців тому
батько
коміт
b05aab4b33
1 змінених файлів з 2 додано та 1 видалено
  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;