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 @@
点击窗口右上角关闭按钮的效果
+