From 1b64c3a50218e32011ba4f807d1e03ae82ffb2d6 Mon Sep 17 00:00:00 2001 From: space-nuko <24979496+space-nuko@users.noreply.github.com> Date: Sun, 30 Apr 2023 14:03:12 -0700 Subject: [PATCH] Fix executing class --- src/lib/components/BlockContainer.svelte | 2 +- src/lib/components/WidgetContainer.svelte | 38 ++++++++++------------- src/lib/stores/layoutState.ts | 1 + 3 files changed, 18 insertions(+), 23 deletions(-) diff --git a/src/lib/components/BlockContainer.svelte b/src/lib/components/BlockContainer.svelte index 82f00c8..b96ba49 100644 --- a/src/lib/components/BlockContainer.svelte +++ b/src/lib/components/BlockContainer.svelte @@ -41,6 +41,7 @@
1}> {#if container.attrs.showTitle} @@ -70,7 +71,6 @@ > {#each children.filter(item => item.id !== SHADOW_PLACEHOLDER_ITEM_ID) as item(item.id)}
{#if item[SHADOW_ITEM_MARKER_PROPERTY_NAME]} diff --git a/src/lib/components/WidgetContainer.svelte b/src/lib/components/WidgetContainer.svelte index fd2f319..44302a1 100644 --- a/src/lib/components/WidgetContainer.svelte +++ b/src/lib/components/WidgetContainer.svelte @@ -15,22 +15,20 @@ let widgetState: WidgetUIState | null = null; let showHandles: boolean = false; - $: if (dragItem) { - if (!$layoutState.allItems[dragItem.id]) { - dragItem = null; - widget = null; - widgetState = null; - container = null; - } - else if (dragItem.type === "container") { - container = dragItem as ContainerLayout; - widget = null; - } - else if (dragItem.type === "widget") { - widget = dragItem as WidgetLayout; - widgetState = nodeState.findWidgetByName(widget.nodeId, widget.widgetName) - container = null; - } + $: if (!dragItem || !$layoutState.allItems[dragItem.id]) { + dragItem = null; + container = null; + widget = null; + widgetState = null; + } + else if (dragItem.type === "container") { + container = dragItem as ContainerLayout; + widget = null; + } + else if (dragItem.type === "widget") { + widget = dragItem as WidgetLayout; + widgetState = nodeState.findWidgetByName(widget.nodeId, widget.widgetName) + container = null; } $: showHandles = $uiState.uiEditMode === "widgets" // TODO @@ -38,8 +36,8 @@ && !$layoutState.isMenuOpen - $: if ($queueState && widget) { - widget.isNodeExecuting = $queueState.runningNodeId === widget.nodeId; + $: if ($queueState && dragItem) { + dragItem.isNodeExecuting = $queueState.runningNodeId === dragItem.nodeId; } @@ -51,10 +49,6 @@ class:selected={$uiState.uiEditMode !== "disabled" && $layoutState.currentSelection.includes(widget.id)} class:is-executing={$queueState.runningNodeId && $queueState.runningNodeId == widget.attrs.associatedNode} > - {#if widget.attrs.associatedNode} - {@const node = $nodeState[widget.attrs.associatedNode].node} - ({node.type}) - {/if}
{#if showHandles} diff --git a/src/lib/stores/layoutState.ts b/src/lib/stores/layoutState.ts index 2ba49db..f1e1caf 100644 --- a/src/lib/stores/layoutState.ts +++ b/src/lib/stores/layoutState.ts @@ -265,6 +265,7 @@ function nodeRemoved(node: LGraphNode) { let delContainers = [] // Remove widget from all children lists + // TODO just use parent.children for (const entry of Object.values(state.allItems)) { if (entry.children?.length === 0 && isAssociatedContainer(entry.dragItem)) delContainers.push(entry.dragItem.id)