diff --git a/src/lib/nodes/ComfyImageNodes.ts b/src/lib/nodes/ComfyImageNodes.ts
index 14d5a32..996e1e8 100644
--- a/src/lib/nodes/ComfyImageNodes.ts
+++ b/src/lib/nodes/ComfyImageNodes.ts
@@ -32,7 +32,7 @@ class ComfyImageNode extends ComfyGraphNode {
let entry: ComfyGalleryEntry = [url + params, null]
return entry
});
- this._galleryWidget.setValue(galleryItems)
+ this._galleryWidget.addImages(galleryItems);
}
}
diff --git a/src/lib/widgets/ComfyGalleryWidget.ts b/src/lib/widgets/ComfyGalleryWidget.ts
index f7a43a4..fa0b747 100644
--- a/src/lib/widgets/ComfyGalleryWidget.ts
+++ b/src/lib/widgets/ComfyGalleryWidget.ts
@@ -1,6 +1,8 @@
+import { get } from "svelte/store";
import type { WidgetPanelOptions } from "@litegraph-ts/core";
import ComfyWidget from "./ComfyWidget";
import type { ComfyImageResult } from "$lib/nodes/ComfySaveImageNode";
+import queueState from "$lib/stores/queueState";
export type ComfyGalleryEntry = [string, string | null]; //
src and alt/title, gradio format
@@ -10,4 +12,15 @@ export interface ComfyGalleryWidgetOptions extends WidgetPanelOptions {
export default class ComfyGalleryWidget extends ComfyWidget {
override type = "comfy/gallery";
override isVirtual = true;
+
+ addImages(images: ComfyImageResult[]) {
+ this.setValue(this.value.concat(images));
+ }
+
+ override afterQueued() {
+ let queue = get(queueState)
+ if (!(typeof queue.queueRemaining === "number" && queue.queueRemaining > 1)) {
+ this.setValue([])
+ }
+ }
}