diff --git a/src/components/TopMenuSection.vue b/src/components/TopMenuSection.vue
index fe8bc94017..47b60e4eb0 100644
--- a/src/components/TopMenuSection.vue
+++ b/src/components/TopMenuSection.vue
@@ -43,6 +43,7 @@
class="[&:not(:has(*>*:not(:empty)))]:hidden"
>
@@ -103,10 +104,18 @@
+
+
+
+
+
@@ -195,6 +204,25 @@ const isQueueProgressOverlayVisible = computed(
() => !isQueuePanelV2Enabled.value
)
const isInlineProgressVisible = computed(() => isQueuePanelV2Enabled.value)
+type PanelElementTarget = HTMLElement | { value?: HTMLElement | null } | null
+const shouldShowInlineProgressSummary = computed(
+ () => isInlineProgressVisible.value && isActionbarEnabled.value
+)
+const actionbarRef = ref<{ panelElement: PanelElementTarget } | null>(null)
+const resolvePanelElement = (target: PanelElementTarget) => {
+ if (!target) return null
+ if (target instanceof HTMLElement) return target
+ if (typeof target === 'object' && 'value' in target) {
+ return target.value ?? null
+ }
+ return null
+}
+const inlineProgressSummaryTarget = computed(() => {
+ if (!shouldShowInlineProgressSummary.value || !isActionbarFloating.value) {
+ return null
+ }
+ return resolvePanelElement(actionbarRef.value?.panelElement ?? null)
+})
const queueHistoryTooltipConfig = computed(() =>
buildTooltipConfig(t('sideToolbar.queueProgressOverlay.viewJobHistory'))
)
diff --git a/src/components/actionbar/ComfyActionbar.vue b/src/components/actionbar/ComfyActionbar.vue
index bd73eef3d4..6d8c902e6e 100644
--- a/src/components/actionbar/ComfyActionbar.vue
+++ b/src/components/actionbar/ComfyActionbar.vue
@@ -282,6 +282,8 @@ const inlineProgressTarget = computed(() => {
return panelElement.value
})
+defineExpose({ panelElement })
+
// Handle drag state changes
watch(isDragging, (dragging) => {
if (dragging) {