From 3d0c0d16ca8eb280fe483cc90ae112999a38b356 Mon Sep 17 00:00:00 2001 From: Benjamin Lu Date: Wed, 31 Dec 2025 14:23:58 -0800 Subject: [PATCH] Move feature flag to setting --- src/composables/useCoreCommands.ts | 16 +++++++++++++++- src/config/uiFeatureFlags.ts | 1 - src/locales/en/commands.json | 5 ++++- .../assets/components/MediaAssetFilterBar.vue | 11 +++++++++-- src/platform/settings/constants/coreSettings.ts | 8 ++++++++ src/schemas/apiSchema.ts | 1 + 6 files changed, 37 insertions(+), 5 deletions(-) delete mode 100644 src/config/uiFeatureFlags.ts diff --git a/src/composables/useCoreCommands.ts b/src/composables/useCoreCommands.ts index 843e9faad..6ba9ac2a7 100644 --- a/src/composables/useCoreCommands.ts +++ b/src/composables/useCoreCommands.ts @@ -63,7 +63,6 @@ import { useWorkflowTemplateSelectorDialog } from './useWorkflowTemplateSelector const { isActiveSubscription, showSubscriptionDialog } = useSubscription() const moveSelectedNodesVersionAdded = '1.22.2' - export function useCoreCommands(): ComfyCommand[] { const workflowService = useWorkflowService() const workflowStore = useWorkflowStore() @@ -75,6 +74,7 @@ export function useCoreCommands(): ComfyCommand[] { const executionStore = useExecutionStore() const telemetry = useTelemetry() const { staticUrls, buildDocsUrl } = useExternalLink() + const settingStore = useSettingStore() const bottomPanelStore = useBottomPanelStore() @@ -82,6 +82,14 @@ export function useCoreCommands(): ComfyCommand[] { useSelectedLiteGraphItems() const getTracker = () => workflowStore.activeWorkflow?.changeTracker + function isQueuePanelV2Enabled() { + return settingStore.get('Comfy.Queue.QPOV2') + } + + async function toggleQueuePanelV2() { + await settingStore.set('Comfy.Queue.QPOV2', !isQueuePanelV2Enabled()) + } + const moveSelectedNodes = ( positionUpdater: (pos: Point, gridSize: number) => Point ) => { @@ -1175,6 +1183,12 @@ export function useCoreCommands(): ComfyCommand[] { await useWorkflowService().reloadCurrentWorkflow() // ensure changes take effect immediately } }, + { + id: 'Comfy.ToggleQPOV2', + icon: 'pi pi-list', + label: 'Toggle Queue Panel V2', + function: toggleQueuePanelV2 + }, { id: 'Comfy.ToggleLinear', icon: 'pi pi-database', diff --git a/src/config/uiFeatureFlags.ts b/src/config/uiFeatureFlags.ts deleted file mode 100644 index 168c51569..000000000 --- a/src/config/uiFeatureFlags.ts +++ /dev/null @@ -1 +0,0 @@ -export const isQPOV2Enabled = false diff --git a/src/locales/en/commands.json b/src/locales/en/commands.json index 5e8123885..9eaa1ba98 100644 --- a/src/locales/en/commands.json +++ b/src/locales/en/commands.json @@ -260,6 +260,9 @@ "Comfy_ToggleLinear": { "label": "toggle linear mode" }, + "Comfy_ToggleQPOV2": { + "label": "Toggle Queue Panel V2" + }, "Comfy_ToggleTheme": { "label": "Toggle Theme (Dark/Light)" }, @@ -324,4 +327,4 @@ "label": "Toggle Workflows Sidebar", "tooltip": "Workflows" } -} \ No newline at end of file +} diff --git a/src/platform/assets/components/MediaAssetFilterBar.vue b/src/platform/assets/components/MediaAssetFilterBar.vue index 18e89dc34..6a0fcdb93 100644 --- a/src/platform/assets/components/MediaAssetFilterBar.vue +++ b/src/platform/assets/components/MediaAssetFilterBar.vue @@ -32,16 +32,18 @@