diff --git a/packages/core/src/config/index.js b/packages/core/src/config/index.js index 9a8758da..118adde4 100644 --- a/packages/core/src/config/index.js +++ b/packages/core/src/config/index.js @@ -26,6 +26,7 @@ module.exports = { // 个人远程配置地址 personalUrl: '' }, + startOpenWindow: true, // 启动时是否打开窗口:true=打开窗口, false=隐藏窗口 theme: 'dark', // 主题:light=亮色, dark=暗色 autoChecked: true, // 是否自动检查更新 skipPreRelease: true, // 是否忽略预发布版本 diff --git a/packages/gui/src/background.js b/packages/gui/src/background.js index 3137182f..2e553cac 100644 --- a/packages/gui/src/background.js +++ b/packages/gui/src/background.js @@ -37,7 +37,11 @@ function setTray () { // 系统托盘图标目录 label: 'DevTools', click: () => { - win.webContents.openDevTools() + try { + win.webContents.openDevTools() + } catch (e) { + log.error('win.webContents.openDevTools() error:', e) + } } }, { @@ -234,17 +238,20 @@ function setDock () { app.disableHardwareAcceleration() // 禁用gpu // 开启后是否默认隐藏window -let startHideWindow = false -if (process.argv) { - const args = minimist(process.argv) - if (args.hideWindow) { - startHideWindow = true - } - - log.info('start args:', args) -} +let startHideWindow = !DevSidecar.api.config.get().app.startOpenWindow if (app.getLoginItemSettings().wasOpenedAsHidden) { startHideWindow = true +} else if (process.argv) { + const args = minimist(process.argv) + log.info('start args:', args) + + // 通过启动参数,判断是否隐藏窗口 + const hideWindowArg = args.hideWindow + '' + if (hideWindowArg === 'true' || hideWindowArg === '1') { + startHideWindow = true + } else if (hideWindowArg === 'false' || hideWindowArg === '0') { + startHideWindow = false + } } log.info('start hide window:', startHideWindow, app.getLoginItemSettings()) diff --git a/packages/gui/src/view/pages/setting.vue b/packages/gui/src/view/pages/setting.vue index 57a1bc9a..27d52ada 100644 --- a/packages/gui/src/view/pages/setting.vue +++ b/packages/gui/src/view/pages/setting.vue @@ -88,6 +88,19 @@ 点击窗口右上角关闭按钮的效果 + + + + 打开窗口 + + + 隐藏窗口 + + +
+ 启动软件时,是否打开窗口。提示:如果设置为隐藏窗口,可点击系统托盘小图标打开窗口。 +
+