godotengine / godotengine/godot
GraphEdit mouse input still triggers node actions (such as showing a node creation dialog) when Space is held to pan
- Dominant language
- C++
- Stars
- 117k
- Forks
- 26.8k
- PR merge metrics
- PR metrics pending
Description
### Tested versions
- Reproducible in: 3.5.3.stable, 4.2.2.stable, 4.3.rc ddd31d0d5
### System information
Godot v4.3.rc (ddd31d0d5) - Fedora Linux 40 (KDE Plasma) - X11 - GLES3 (Compatibility) - NVIDIA GeForce RTX 4090 (nvidia; 555.58.02) - 13th Gen Intel(R) Core(TM) i9-13900K (32 Threads)
### Issue description
GraphEdit mouse input still triggers node actions (such as showing a node creation dialog) when Space is held to pan.
In this video, I hold Space while using the left mouse button to pan. Notice that if I click on an output connection, a dialog to create a new node appears, even though I just wanted to pan around.
Likewise, left-clicking something within a GraphNode will open the node's dropdown as opposed to panning as I want it to.
In short, Space + Left mouse button should act just like the middle mouse button regardless of where you initially clicked.
https://github.com/user-attachments/assets/495c17c6-e876-40e0-9896-2719790c63fa
### Steps to reproduce
- Create a VisualShader resource and some nodes within it.
- Hold Space and use the left mouse button to pan around. Try doing so when initially clicking on a connection dot.
- Notice how a node creation popup appears, even though it doesn't if you pan with the middle mouse button.
### Minimal reproduction project (MRP)
N/A
Contributor guide
Research direction
Reproduce the issue in a VisualShader resource using GraphEdit, holding Space while clicking connections and GraphNode contents. Start by tracing GraphEdit's mouse-input handling and compare Space-plus-left-button behavior with middle-button panning. Done means those clicks consistently pan without opening node actions or creation dialogs.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, godot
- Domain
- frontend
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100