Add support for node/input/output tooltips (#287)

* Add support for node/input/output tooltips

* pr feedback

* Remove
This commit is contained in:
pythongosssss
2024-08-04 16:54:46 +01:00
committed by GitHub
parent c48f68e53e
commit 7a980f46c9
10 changed files with 227 additions and 10 deletions

View File

@@ -226,11 +226,8 @@ LGraphCanvas.prototype.computeVisibleNodes = function (): LGraphNode[] {
if (elementWidgets.has(node)) {
const hidden = visibleNodes.indexOf(node) === -1
for (const w of node.widgets) {
// @ts-expect-error
if (w.element) {
// @ts-expect-error
w.element.hidden = hidden
// @ts-expect-error
w.element.style.display = hidden ? 'none' : undefined
if (hidden) {
w.options.onHide?.(w)
@@ -282,6 +279,13 @@ LGraphNode.prototype.addDOMWidget = function (
document.addEventListener('mousedown', mouseDownHandler)
}
const { nodeData } = this.constructor
const tooltip = (nodeData?.input.required?.[name] ??
nodeData?.input.optional?.[name])?.[1]?.tooltip
if (tooltip && !element.title) {
element.title = tooltip
}
const widget: DOMWidget = {
type,
name,