From 4ab3aa9a390e8f5cc65042fdea7565b615fddd7e Mon Sep 17 00:00:00 2001 From: Chenlei Hu Date: Wed, 25 Sep 2024 15:41:05 +0900 Subject: [PATCH] Backward compatibility with extension injections on legacy menu bar (#970) * Compatible to legacy top menu extensions * Rework css * nit --- src/components/topbar/TopMenubar.vue | 27 +++-- src/components/topbar/WorkflowTabs.vue | 76 ++++++-------- src/scripts/ui/menu/index.ts | 131 +++---------------------- src/scripts/ui/menu/interruptButton.ts | 32 ------ src/scripts/ui/menu/menu.css | 3 - src/scripts/ui/menu/queueButton.ts | 103 ------------------- src/scripts/ui/menu/queueOptions.ts | 82 ---------------- src/views/GraphView.vue | 4 +- 8 files changed, 68 insertions(+), 390 deletions(-) delete mode 100644 src/scripts/ui/menu/interruptButton.ts delete mode 100644 src/scripts/ui/menu/queueButton.ts delete mode 100644 src/scripts/ui/menu/queueOptions.ts diff --git a/src/components/topbar/TopMenubar.vue b/src/components/topbar/TopMenubar.vue index 5ec206922..b4087727b 100644 --- a/src/components/topbar/TopMenubar.vue +++ b/src/components/topbar/TopMenubar.vue @@ -1,16 +1,23 @@ @@ -20,8 +27,9 @@ import Menubar from 'primevue/menubar' import Divider from 'primevue/divider' import WorkflowTabs from '@/components/topbar/WorkflowTabs.vue' import { useCoreMenuItemStore } from '@/stores/coreMenuItemStore' -import { computed } from 'vue' +import { computed, onMounted, ref } from 'vue' import { useSettingStore } from '@/stores/settingStore' +import { app } from '@/scripts/app' const settingStore = useSettingStore() const workflowTabsPosition = computed(() => @@ -32,6 +40,14 @@ const betaMenuEnabled = computed( ) const coreMenuItemsStore = useCoreMenuItemStore() const items = coreMenuItemsStore.menuItems + +const menuRight = ref(null) +// Menu-right holds legacy topbar elements attached by custom scripts +onMounted(() => { + if (menuRight.value) { + menuRight.value.appendChild(app.menu.element) + } +})