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)