Comfy-Org / Comfy-Org/ComfyUI_frontend
fix: reposition teleported fixed popovers on scroll/resize in JobAssetsList and QueueJobItem
- Dominant language
- TypeScript
- Stars
- 2k
- Forks
- 699
- Avg merge
- 1d 7h
- Merged PRs (30d)
- 490
Description
## Summary
The teleported `fixed` popovers in the queue overlay do not reposition when the user scrolls or resizes the window while a popover is open. `updatePopoverPosition()` is only called on open/hover, so the popover becomes detached from its row until hover is reset.
This issue affects at least two components:
- `src/components/queue/job/JobAssetsList.vue`
- `src/components/queue/job/QueueJobItem.vue`
## Expected Behavior
While a popover is open, it should track its anchor row's position and reposition correctly on:
- Window scroll
- Window resize
## Suggested Fix
Register `scroll` and `resize` listeners on `window` while the popover is open (with a small throttle/debounce for performance), calling `updatePopoverPosition()` in each handler. Remove these listeners when the popover closes. Add/remove listeners at the same sites that toggle `activeDetails` / `popoverPosition`.
Fix both affected files in the same PR.
## References
- Identified in PR #9549 – [review comment](https://github.com/Comfy-Org/ComfyUI_frontend/pull/9549#discussion_r2900966982)
- Requested as follow-up by @christian-byrne
┆Issue is synchronized with this [Notion page](https://www.notion.so/Issue-9941-fix-reposition-teleported-fixed-popovers-on-scroll-resize-in-JobAssetsList-and-QueueJ-3246d73d365081fbbaead0c69cd02940) by [Unito](https://www.unito.io)
Contributor guide
Assessment
This issue has not been assessed yet.