From b9abb4ce47598d67b4c17607d1737e60bcfaffef Mon Sep 17 00:00:00 2001 From: lyswhut Date: Fri, 18 Jul 2025 22:24:15 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=90=AF=E5=8A=A8=E5=8F=82?= =?UTF-8?q?=E6=95=B0=20`-hidden`=EF=BC=8C=E5=9C=A8=E5=90=AF=E5=8A=A8?= =?UTF-8?q?=E6=97=B6=E5=B0=86=E8=BD=AF=E4=BB=B6=E6=9C=80=E5=B0=8F=E5=8C=96?= =?UTF-8?q?=E5=88=B0=E7=B3=BB=E7=BB=9F=E6=89=98=E7=9B=98=EF=BC=88#2459?= =?UTF-8?q?=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- publish/changeLog.md | 1 + src/common/types/common.d.ts | 5 +++++ src/main/modules/winMain/main.ts | 6 ++++-- src/main/utils/index.ts | 6 ++++++ 4 files changed, 16 insertions(+), 2 deletions(-) diff --git a/publish/changeLog.md b/publish/changeLog.md index 09ceca1a..e3d84aa8 100644 --- a/publish/changeLog.md +++ b/publish/changeLog.md @@ -4,6 +4,7 @@ *默认启用,关闭后将使用系统原生的窗口样式,该设置重启软件后生效* - 开放API新增播放器声音大小、静音、播放进度控制,详情看接入文档(#2386) - 新增「设置 → 播放设置 → 调换翻译歌词与罗马音歌词位置」设置,默认关闭(#2451) +- 新增启动参数 `-hidden`,在启动时将软件最小化到系统托盘(#2459) ### 变更 diff --git a/src/common/types/common.d.ts b/src/common/types/common.d.ts index cfec34b0..484867a1 100644 --- a/src/common/types/common.d.ts +++ b/src/common/types/common.d.ts @@ -37,6 +37,11 @@ declare namespace LX { */ play?: string + /** + * 启动后最小化到系统托盘 + */ + hidden?: boolean + [key: string]: boolean | number | string } diff --git a/src/main/modules/winMain/main.ts b/src/main/modules/winMain/main.ts index 4bc1214e..ca6d64dd 100644 --- a/src/main/modules/winMain/main.ts +++ b/src/main/modules/winMain/main.ts @@ -42,8 +42,10 @@ const winEvent = () => { }) browserWindow.once('ready-to-show', () => { - showWindow() - setThumbarButtons() + if (!global.envParams.cmdParams.hidden) { + showWindow() + setThumbarButtons() + } global.lx.event_app.main_window_ready_to_show() }) diff --git a/src/main/utils/index.ts b/src/main/utils/index.ts index 453ef558..5da6bf7b 100644 --- a/src/main/utils/index.ts +++ b/src/main/utils/index.ts @@ -107,6 +107,11 @@ export const mergeSetting = (originSetting: LX.AppSetting, targetSetting?: Parti } } +const applyInitSetting = (setting: LX.AppSetting) => { + if (global.envParams.cmdParams.hidden && !setting['tray.enable']) { + setting['tray.enable'] = true + } +} export const updateSetting = (setting?: Partial, isInit: boolean = false) => { const electronStore_config = getStore(STORE_NAMES.APP_SETTINGS) @@ -114,6 +119,7 @@ export const updateSetting = (setting?: Partial, isInit: boolean let originSetting: LX.AppSetting if (isInit) { setting &&= migrateSetting(setting) + applyInitSetting(setting as LX.AppSetting) originSetting = { ...defaultSetting } } else originSetting = global.lx.appSetting