From 3230e600e6ce4363a0651d34435668d59bf8c5b2 Mon Sep 17 00:00:00 2001 From: Johnpaul Chiwetelu Date: Wed, 10 Dec 2025 02:56:48 +0100 Subject: [PATCH] fix: trigger widget callback when model is selected Fixes model dropdown not properly updating when a model is selected from the model library or dropped onto canvas by calling the widget callback and forcing reactivity. --- src/components/sidebar/tabs/ModelLibrarySidebarTab.vue | 7 +++++++ src/composables/useCanvasDrop.ts | 5 +++++ 2 files changed, 12 insertions(+) diff --git a/src/components/sidebar/tabs/ModelLibrarySidebarTab.vue b/src/components/sidebar/tabs/ModelLibrarySidebarTab.vue index 01b312f00..23851d079 100644 --- a/src/components/sidebar/tabs/ModelLibrarySidebarTab.vue +++ b/src/components/sidebar/tabs/ModelLibrarySidebarTab.vue @@ -150,6 +150,13 @@ const renderedRoot = computed>(() => { if (widget) { // @ts-expect-error fixme ts strict error widget.value = model.file_name + if (model) { + widget.callback?.(model!.file_name) + // Force the reactive widgets array to update + if (node.widgets) { + node.widgets = [...node.widgets] + } + } } } } else { diff --git a/src/composables/useCanvasDrop.ts b/src/composables/useCanvasDrop.ts index d3870b04b..a026b5c50 100644 --- a/src/composables/useCanvasDrop.ts +++ b/src/composables/useCanvasDrop.ts @@ -73,6 +73,11 @@ export const useCanvasDrop = (canvasRef: Ref) => { ) if (widget) { widget.value = model.file_name + widget.callback?.(model.file_name) + // Force the reactive widgets array to update + if (targetGraphNode.widgets) { + targetGraphNode.widgets = [...targetGraphNode.widgets] + } } } } else if (node.data instanceof ComfyWorkflow) {