From ba31f8fa686c675d71e4af49146db8561759d4fc Mon Sep 17 00:00:00 2001 From: bymyself Date: Mon, 6 Jan 2025 08:50:44 -0700 Subject: [PATCH] Add Close Workflow to commands (#2171) Co-authored-by: github-actions Co-authored-by: Chenlei Hu --- browser_tests/menu.spec.ts | 9 +++++++++ src/hooks/coreCommandHooks.ts | 10 ++++++++++ src/locales/en/commands.json | 3 +++ src/locales/en/main.json | 1 + src/locales/fr/commands.json | 3 +++ src/locales/fr/main.json | 1 + src/locales/ja/commands.json | 3 +++ src/locales/ja/main.json | 1 + src/locales/ko/commands.json | 3 +++ src/locales/ko/main.json | 1 + src/locales/ru/commands.json | 3 +++ src/locales/ru/main.json | 1 + src/locales/zh/commands.json | 3 +++ src/locales/zh/main.json | 1 + 14 files changed, 43 insertions(+) diff --git a/browser_tests/menu.spec.ts b/browser_tests/menu.spec.ts index 170e12531..b8df2086d 100644 --- a/browser_tests/menu.spec.ts +++ b/browser_tests/menu.spec.ts @@ -665,6 +665,15 @@ test.describe('Menu', () => { ).toEqual(['*Unsaved Workflow.json']) }) + test('Can close saved workflow with command', async ({ comfyPage }) => { + const tab = comfyPage.menu.workflowsTab + await comfyPage.menu.topbar.saveWorkflow('workflow1.json') + await comfyPage.executeCommand('Workspace.CloseWorkflow') + expect(await tab.getOpenedWorkflowNames()).toEqual([ + '*Unsaved Workflow.json' + ]) + }) + test('Can delete workflows (confirm disabled)', async ({ comfyPage }) => { await comfyPage.setSetting('Comfy.Workflow.ConfirmDelete', false) diff --git a/src/hooks/coreCommandHooks.ts b/src/hooks/coreCommandHooks.ts index 4d498b85b..86e5a779d 100644 --- a/src/hooks/coreCommandHooks.ts +++ b/src/hooks/coreCommandHooks.ts @@ -528,6 +528,16 @@ export function useCoreCommands(): ComfyCommand[] { function: () => { workflowService.duplicateWorkflow(workflowStore.activeWorkflow!) } + }, + { + id: 'Workspace.CloseWorkflow', + icon: 'pi pi-times', + label: 'Close Current Workflow', + versionAdded: '1.7.3', + function: () => { + if (workflowStore.activeWorkflow) + workflowService.closeWorkflow(workflowStore.activeWorkflow) + } } ] } diff --git a/src/locales/en/commands.json b/src/locales/en/commands.json index d9a516b99..b5a794c68 100644 --- a/src/locales/en/commands.json +++ b/src/locales/en/commands.json @@ -152,6 +152,9 @@ "Comfy_Undo": { "label": "Undo" }, + "Workspace_CloseWorkflow": { + "label": "Close Current Workflow" + }, "Workspace_NextOpenedWorkflow": { "label": "Next Opened Workflow" }, diff --git a/src/locales/en/main.json b/src/locales/en/main.json index 55cb92ffc..3fc0de876 100644 --- a/src/locales/en/main.json +++ b/src/locales/en/main.json @@ -374,6 +374,7 @@ "Show Settings Dialog": "Show Settings Dialog", "Toggle Theme (Dark/Light)": "Toggle Theme (Dark/Light)", "Undo": "Undo", + "Close Current Workflow": "Close Current Workflow", "Next Opened Workflow": "Next Opened Workflow", "Previous Opened Workflow": "Previous Opened Workflow", "Toggle Search Box": "Toggle Search Box", diff --git a/src/locales/fr/commands.json b/src/locales/fr/commands.json index 8619bfa8f..4419bac67 100644 --- a/src/locales/fr/commands.json +++ b/src/locales/fr/commands.json @@ -152,6 +152,9 @@ "Comfy_Undo": { "label": "Annuler" }, + "Workspace_CloseWorkflow": { + "label": "Fermer le flux de travail actuel" + }, "Workspace_NextOpenedWorkflow": { "label": "Flux de travail ouvert suivant" }, diff --git a/src/locales/fr/main.json b/src/locales/fr/main.json index cb18d537e..1ae36e954 100644 --- a/src/locales/fr/main.json +++ b/src/locales/fr/main.json @@ -257,6 +257,7 @@ "Clear Pending Tasks": "Effacer les tâches en attente", "Clear Workflow": "Effacer le flux de travail", "Clipspace": "Espace de clip", + "Close Current Workflow": "Fermer le flux de travail actuel", "Collapse/Expand Selected Nodes": "Réduire/Étendre les nœuds sélectionnés", "Comfy-Org Discord": "Discord de Comfy-Org", "ComfyUI Docs": "Docs de ComfyUI", diff --git a/src/locales/ja/commands.json b/src/locales/ja/commands.json index 9361b7e60..7feb7f5c2 100644 --- a/src/locales/ja/commands.json +++ b/src/locales/ja/commands.json @@ -152,6 +152,9 @@ "Comfy_Undo": { "label": "元に戻す" }, + "Workspace_CloseWorkflow": { + "label": "現在のワークフローを閉じる" + }, "Workspace_NextOpenedWorkflow": { "label": "次の開いたワークフロー" }, diff --git a/src/locales/ja/main.json b/src/locales/ja/main.json index eda6a6de6..d17ec1aeb 100644 --- a/src/locales/ja/main.json +++ b/src/locales/ja/main.json @@ -257,6 +257,7 @@ "Clear Pending Tasks": "保留中のタスクをクリア", "Clear Workflow": "ワークフローをクリア", "Clipspace": "クリップスペース", + "Close Current Workflow": "現在のワークフローを閉じる", "Collapse/Expand Selected Nodes": "選択したノードの折りたたみ/展開", "Comfy-Org Discord": "Comfy-Org Discord", "ComfyUI Docs": "ComfyUIのドキュメント", diff --git a/src/locales/ko/commands.json b/src/locales/ko/commands.json index 269d37fcb..edd0740fb 100644 --- a/src/locales/ko/commands.json +++ b/src/locales/ko/commands.json @@ -152,6 +152,9 @@ "Comfy_Undo": { "label": "실행 취소" }, + "Workspace_CloseWorkflow": { + "label": "현재 워크플로우 닫기" + }, "Workspace_NextOpenedWorkflow": { "label": "다음 열린 워크플로" }, diff --git a/src/locales/ko/main.json b/src/locales/ko/main.json index b8213f9d4..514f2451f 100644 --- a/src/locales/ko/main.json +++ b/src/locales/ko/main.json @@ -257,6 +257,7 @@ "Clear Pending Tasks": "보류 중인 작업 제거하기", "Clear Workflow": "워크플로 지우기", "Clipspace": "클립스페이스", + "Close Current Workflow": "현재 워크플로우 닫기", "Collapse/Expand Selected Nodes": "선택한 노드 축소/확장", "Comfy-Org Discord": "Comfy-Org 디스코드", "ComfyUI Docs": "ComfyUI 문서", diff --git a/src/locales/ru/commands.json b/src/locales/ru/commands.json index 6de7948dd..842a2f177 100644 --- a/src/locales/ru/commands.json +++ b/src/locales/ru/commands.json @@ -152,6 +152,9 @@ "Comfy_Undo": { "label": "Отменить" }, + "Workspace_CloseWorkflow": { + "label": "Закрыть текущий рабочий процесс" + }, "Workspace_NextOpenedWorkflow": { "label": "Следующий открытый рабочий процесс" }, diff --git a/src/locales/ru/main.json b/src/locales/ru/main.json index 191022ca8..dbb33abfc 100644 --- a/src/locales/ru/main.json +++ b/src/locales/ru/main.json @@ -257,6 +257,7 @@ "Clear Pending Tasks": "Очистить ожидающие задачи", "Clear Workflow": "Очистить рабочий процесс", "Clipspace": "Клиппространство", + "Close Current Workflow": "Закрыть текущий рабочий процесс", "Collapse/Expand Selected Nodes": "Свернуть/развернуть выбранные узлы", "Comfy-Org Discord": "Discord Comfy-Org", "ComfyUI Docs": "Документация ComfyUI", diff --git a/src/locales/zh/commands.json b/src/locales/zh/commands.json index 1f39893a3..4018d46e4 100644 --- a/src/locales/zh/commands.json +++ b/src/locales/zh/commands.json @@ -152,6 +152,9 @@ "Comfy_Undo": { "label": "撤销" }, + "Workspace_CloseWorkflow": { + "label": "关闭当前工作流" + }, "Workspace_NextOpenedWorkflow": { "label": "下一个打开的工作流" }, diff --git a/src/locales/zh/main.json b/src/locales/zh/main.json index a27e5673b..1e1e27d2b 100644 --- a/src/locales/zh/main.json +++ b/src/locales/zh/main.json @@ -257,6 +257,7 @@ "Clear Pending Tasks": "清除待处理任务", "Clear Workflow": "清除工作流", "Clipspace": "剪贴空间", + "Close Current Workflow": "关闭当前工作流", "Collapse/Expand Selected Nodes": "折叠/展开选定节点", "Comfy-Org Discord": "Comfy-Org Discord", "ComfyUI Docs": "ComfyUI 文档",