-
Couldn't load subscription status.
- Fork 391
[feat] Add tooltip support for Vue nodes #5577
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
🎭 Playwright Test Results✅ All tests passed! ⏰ Completed at: 09/19/2025, 08:06:37 AM UTC 📈 Summary
📊 Test Reports by Browser
🎉 Click on the links above to view detailed test results for each browser configuration. |
f01ff8e to
2bf2c00
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍🏻
src/renderer/extensions/vueNodes/composables/useNodeTooltips.ts
Outdated
Show resolved
Hide resolved
5b672cb
d9f4788 to
850ae0e
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not sure if the charcoal colors need to be flipped after #5609.
Nothing critical, looks good 👍🏻
src/renderer/extensions/vueNodes/composables/useNodeTooltips.ts
Outdated
Show resolved
Hide resolved
4e50c3a
4e50c3a to
aae097b
Compare
🔧 Auto-fixes AppliedThis PR has been automatically updated to fix linting and formatting issues.
Changes made:
|
Implements comprehensive tooltip functionality for all Vue node components: - Node headers display node descriptions from definitions - Input/output slots show slot-specific tooltip information - Widgets display tooltip text from metadata and node definitions - Uses PrimeVue's v-tooltip directive with container scoping - Integrates with existing settings (Comfy.EnableTooltips, LiteGraph.Node.TooltipDelay) - Provides fallback content when no tooltip data is available - Full TypeScript support with proper interfaces
- Input slots and widgets: show tooltips on right (auto-fallback to left) - Output slots: show tooltips on left (auto-fallback to right) - Improves UX by not covering connection areas and using horizontal space better
- Use Tailwind classes via pt.text and pt.arrow for clean styling - Match Figma specs: dark background (#171718), purple border (#5B5E7D) - Fix tooltip positioning: inputs show left, outputs show right - Proper arrow styling with before:border-[#171718] for chevron shape
…iew feedback Co-authored-by: DrJKL <[email protected]>
…s review feedback Co-authored-by: DrJKL <[email protected]>
…ar cursor - addresses review feedback Co-authored-by: DrJKL <[email protected]>
…review feedback Co-authored-by: DrJKL <[email protected]>
…oltips outside node boundaries Co-authored-by: DrJKL <[email protected]>
… review feedback Co-authored-by: DrJKL <[email protected]>
…view feedback Co-authored-by: DrJKL <[email protected]>
Allow passing either string or ref for more flexible API usage. Co-Authored-By: DrJKL <[email protected]>
Use standard Tailwind class instead of arbitrary value. Co-Authored-By: DrJKL <[email protected]>
a38d428 to
9fe3e9f
Compare
Summary
Added tooltip support for Vue node components using PrimeVue's v-tooltip directive with proper data integration and container scoping.
2025-09-14.22-57-04_processed_20250914_225745.mp4
Changes
Review Focus
Container scoping implementation via provide/inject pattern for tooltip positioning, proper TypeScript interfaces eliminating
as anycasts, and integration with existing settings store for tooltip delays and enable/disable functionality.graph TD A[LGraphNode Container] --> B[provide tooltipContainer] B --> C[NodeHeader inject] B --> D[InputSlot inject] B --> E[OutputSlot inject] B --> F[NodeWidgets inject] G[useNodeTooltips composable] --> H[NodeDefStore lookup] G --> I[Settings integration] G --> J[i18n fallback] C --> G D --> G E --> G F --> G style A fill:#f9f9f9,stroke:#333,color:#000 style G fill:#e8f4fd,stroke:#0066cc,color:#000