From a10f9fa30b4bda42b0c396f0ffbdca8138cbc212 Mon Sep 17 00:00:00 2001 From: Christian Byrne Date: Tue, 25 Nov 2025 14:36:59 -0800 Subject: [PATCH] [backport] Share button and Assets Panel in Linear Mode (#6794) (#6935) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## Summary Backport of #6794 to cloud/1.32 - Re-enables share button in Linear Mode (exports workflow) - Displays Assets Panel in left sidebar instead of Queue Panel - Adds margin to main content area ## Conflict Resolution Resolved conflict in `src/views/LinearView.vue`: - Replaced `useQueueSidebarTab` → `useAssetsSidebarTab` (the intended change from the original PR) ┆Issue is synchronized with this [Notion page](https://www.notion.so/PR-6935-backport-Share-button-and-Assets-Panel-in-Linear-Mode-6794-2b66d73d36508116a759e9a5c585315a) by [Unito](https://www.unito.io) Co-authored-by: AustinMroz --- src/locales/en/main.json | 4 ++++ src/views/LinearView.vue | 25 ++++++++++++++++--------- 2 files changed, 20 insertions(+), 9 deletions(-) diff --git a/src/locales/en/main.json b/src/locales/en/main.json index 69591b5d1..95cce43ae 100644 --- a/src/locales/en/main.json +++ b/src/locales/en/main.json @@ -2197,6 +2197,10 @@ "vueNodesMigrationMainMenu": { "message": "Switch back to Nodes 2.0 anytime from the main menu." }, + "linearMode": { + "share": "Share", + "openWorkflow": "Open Workflow" + }, "missingNodes": { "cloud": { "title": "These nodes aren't available on Comfy Cloud yet", diff --git a/src/views/LinearView.vue b/src/views/LinearView.vue index 73f557166..3c81f3b39 100644 --- a/src/views/LinearView.vue +++ b/src/views/LinearView.vue @@ -15,21 +15,20 @@ import { isValidWidgetValue, safeWidgetMapper } from '@/composables/graph/useGraphNodeManager' -import { useQueueSidebarTab } from '@/composables/sidebarTabs/useQueueSidebarTab' +import { useAssetsSidebarTab } from '@/composables/sidebarTabs/useAssetsSidebarTab' import { t } from '@/i18n' import type { LGraphNode } from '@/lib/litegraph/src/LGraphNode' import { useTelemetry } from '@/platform/telemetry' +import { useWorkflowService } from '@/platform/workflow/core/services/workflowService' import { useCanvasStore } from '@/renderer/core/canvas/canvasStore' import NodeWidgets from '@/renderer/extensions/vueNodes/components/NodeWidgets.vue' import WidgetInputNumberInput from '@/renderer/extensions/vueNodes/widgets/components/WidgetInputNumber.vue' import { app } from '@/scripts/app' import { useCommandStore } from '@/stores/commandStore' import { useNodeOutputStore } from '@/stores/imagePreviewStore' -//import { useQueueStore } from '@/stores/queueStore' import { useQueueSettingsStore } from '@/stores/queueStore' import { isElectron } from '@/utils/envUtil' -//const queueStore = useQueueStore() const nodeOutputStore = useNodeOutputStore() const commandStore = useCommandStore() const nodeDatas = computed(() => { @@ -120,12 +119,12 @@ function openFeedback() {
-