From f5e35a6ee77b89cfa5037a53ccbab97f64733781 Mon Sep 17 00:00:00 2001 From: yumoqing Date: Thu, 25 Jun 2026 20:47:23 +0800 Subject: [PATCH] fix: close main window exits app; playlist panel close doesn't --- Sources/MiniPlayerApp.swift | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/Sources/MiniPlayerApp.swift b/Sources/MiniPlayerApp.swift index 5cd9111..e3ae9ec 100644 --- a/Sources/MiniPlayerApp.swift +++ b/Sources/MiniPlayerApp.swift @@ -5,9 +5,12 @@ import SwiftBricks #if os(macOS) import AppKit -// 防止关闭所有窗口时退出应用 +// 主窗口关闭时退出应用;辅助面板(播放列表等 NSPanel)关闭不退出 class AppDel: NSObject, NSApplicationDelegate { - func applicationShouldTerminateAfterLastWindowClosed(_ sender: NSApplication) -> Bool { false } + func applicationShouldTerminateAfterLastWindowClosed(_ sender: NSApplication) -> Bool { + // 如果剩余窗口全是 NSPanel(播放列表等),说明主窗口已关闭,应退出 + return !sender.windows.contains { !($0 is NSPanel) } + } } #endif