-
Notifications
You must be signed in to change notification settings - Fork 335
Description
Custom Node Testing
- I have tried disabling custom nodes and the issue persists (see how to disable custom nodes if you need help)
Frontend Version
v1.25.1
Expected Behavior
When using the new "Standard" canvas navigation mode (introduced in PR #4533), wheel events with Ctrl held should zoom the canvas consistently regardless of mouse position, including when the mouse is over UI elements like the graph canvas menu (bottom-right) or selection toolbox.
Actual Behavior
After the canvas navigation mode PR and v1.25.1 release, when accidentally hovering over the graph canvas menu (bottom-right corner) or the selection toolbox (appears when nodes are selected), wheel events with Ctrl held are captured by these UI elements instead of being passed to the canvas. This causes the browser to zoom the entire page instead of zooming the canvas, breaking the expected navigation experience.
Steps to Reproduce
- Set canvas navigation mode to "Standard" (default in v1.25.0+) in Settings
- Open any workflow on the canvas
- Select one or more nodes to make the selection toolbox appear
- Hold Ctrl and scroll wheel while mouse cursor is over the selection toolbox
- Observe that the browser zooms instead of the canvas
- Alternative: Hold Ctrl and scroll wheel while mouse cursor is over the graph canvas menu (bottom-right corner)
- Same issue: browser zoom occurs instead of canvas zoom
Debug Logs
[No terminal logs relevant to this frontend issue]
Browser Logs
[No console errors - this is a wheel event handling issue]
Setting JSON
{
"Comfy.Canvas.NavigationMode": "standard"
}
What browsers do you use to access the UI?
- Google Chrome
- Mozilla Firefox
Other Information
This issue was introduced with the new canvas navigation mode in PR #4533. The problem occurs because:
- In "Standard" mode, canvas zoom requires Ctrl + wheel events
- UI components like
GraphCanvasMenu.vue
(positioned atbottom-[10px] right-[10px]
) andSelectionToolbox.vue
capture wheel events - When these elements have focus or the mouse is over them, the wheel events don't propagate to the canvas
- The browser interprets Ctrl + wheel as a page zoom command instead
Affected Components:
src/components/graph/GraphCanvasMenu.vue
- Canvas controls in bottom-rightsrc/components/graph/SelectionToolbox.vue
- Node selection toolbox
Suggested Fix:
These components should either:
- Prevent wheel event capture and allow propagation to the canvas
- Explicitly forward wheel events to the canvas when Ctrl is held
- Use
pointer-events: none
for wheel events while maintaining click functionality
This issue significantly impacts the user experience with the new standard navigation mode, as users frequently hover over these UI elements while navigating the canvas.
┆Issue is synchronized with this Notion page by Unito