[Bug]: Scroll event leak after scrolling to the top of a text widget Title: [Bug]: Scroll event leak after scrolling to the top of a text widget Description: ### Frontend Version https://github.com/user-attachments/assets/130005f3-34cd-48d7-951d-69768ccec06e
Test focus: Verify that scrolling inside a scrollable text widget does not zoom the canvas when reaching the scroll boundaries. Prerequisites: ComfyUI loaded with default workflow Steps: Click on the text area of the top CLIP Text Encode node to focus it → Add a newline to make the text area scrollable → Add a newline → Add a newline → Add a newline → Add a newline → ...
# linux QA Video Report
- Generated at: 2026-04-01T14:45:03.170Z
- Model: `gemini-3-flash-preview`
- Target: https://github.com/Comfy-Org/ComfyUI_frontend/issues/3990
- Source video: `./qa-artifacts/qa-report-Linux-23853902795/qa-session.mp4`
- Video size: 43.5 MB
## AI Review
## Summary
The reported bug involves a "scroll event leak" where scrolling to the top or bottom of a text widget causes the scroll event to propagate to the underlying canvas (typically causing zooming/panning). The provided video fails to perform any of the reproduction steps.
## Confirmed Issues
No issues confirmed. The video does not show the application being used beyond the initial login and template selection.
## Possible Issues (Needs Human Verification)
### Reproduction Steps Not Performed
`LOW` `00:09` `Confidence: High`
The user logs in and opens the templates menu, but then closes it and remains on an empty canvas for the remainder of the 7-minute video. No nodes are added, no text is entered, and no scrolling behavior is tested.
**Evidence:** From 00:09 to 07:44, the video shows a static, empty grid canvas with no UI interactions or node additions.
**Suggested Fix:** Re-run the QA session and ensure the steps (Add Preview Any node, add text, scroll) are actually executed.
## Overall Risk
The risk is currently unknown because the test session was ineffective. The video contains almost 8 minutes of inactivity on a blank canvas.
## Verdict
INCONCLUSIVE
{"verdict": "INCONCLUSIVE", "risk": null, "confidence": "high"}