Repository: godotengine/godot (language: cpp)

Issue:
Editor SceneTree inspects nodes while scrolling with drag & drop
### Tested versions

4.5 master

### System information

Windows 10

### Issue description

There are 2 overlapping actions. If you drag & drop hover over a node in the SceneTree dock, it will inspect the node. Also, if you drag & drop hover near the top / bottom edge of the tree, it will scroll up and down. But currently they conflict, so dragging near the edge will still trigger the "inspect node" action, causing stutter during the scroll

Related to https://github.com/godotengine/godot/pull/103943#issuecomment-2734859037. I have the same fix ready, but just documenting it here

### Steps to reproduce

- Add a bunch of nodes to the scene tree, enough so that there is plenty to scroll.
- Click and drag a node from the top / bottom, to the other edge to trigger a scroll, and keep cursor in place while it scrolls.
- After about half a second, some random node in between will be inspected during the scroll.

https://github.com/user-attachments/assets/a49f12e1-6362-42b9-a3bc-67354dc54b41

### Minimal reproduction project (MRP)

N/A


Discussion / hints:

Fix patch:
diff --git a/editor/scene_tree_dock.cpp b/editor/scene_tree_dock.cpp
index 163501dd37c2..41efb74db0bc 100644
--- a/editor/scene_tree_dock.cpp
+++ b/editor/scene_tree_dock.cpp
@@ -4764,6 +4764,7 @@ SceneTreeDock::SceneTreeDock(Node *p_scene_root, EditorSelection *p_editor_selec
 	scene_tree->connect("files_dropped", callable_mp(this, &SceneTreeDock::_files_dropped));
 	scene_tree->connect("script_dropped", callable_mp(this, &SceneTreeDock::_script_dropped));
 	scene_tree->connect("nodes_dragged", callable_mp(this, &SceneTreeDock::_nodes_drag_begin));
+	scene_tree->get_scene_tree()->get_vscroll_bar()->connect("value_changed", callable_mp(this, &SceneTreeDock::_reset_hovering_timer).unbind(1));
 
 	scene_tree->get_scene_tree()->connect(SceneStringName(gui_input), callable_mp(this, &SceneTreeDock::_scene_tree_gui_input));
 	scene_tree->get_scene_tree()->connect("item_icon_double_clicked", callable_mp(this, &SceneTreeDock::_focus_node));


Test patch: