From cfb113ac8d12886b435cb0f1d292dd6066df431c Mon Sep 17 00:00:00 2001 From: Jason Date: Thu, 22 Jan 2026 23:35:41 +0800 Subject: [PATCH] fix(settings): reorder window settings and change default values Move "minimize to tray on close" to the bottom of window settings. Change skipClaudeOnboarding default to false. --- src-tauri/src/settings.rs | 4 ++-- src/components/settings/WindowSettings.tsx | 20 ++++++++++---------- src/hooks/useSettingsForm.ts | 6 +++--- 3 files changed, 15 insertions(+), 15 deletions(-) diff --git a/src-tauri/src/settings.rs b/src-tauri/src/settings.rs index 00c6a771c..9fc6eab03 100644 --- a/src-tauri/src/settings.rs +++ b/src-tauri/src/settings.rs @@ -73,7 +73,7 @@ pub struct AppSettings { #[serde(default)] pub enable_claude_plugin_integration: bool, /// 是否跳过 Claude Code 初次安装确认 - #[serde(default = "default_true")] + #[serde(default)] pub skip_claude_onboarding: bool, /// 是否开机自启 #[serde(default)] @@ -124,7 +124,7 @@ impl Default for AppSettings { show_in_tray: true, minimize_to_tray_on_close: true, enable_claude_plugin_integration: false, - skip_claude_onboarding: true, + skip_claude_onboarding: false, launch_on_startup: false, language: None, visible_apps: None, diff --git a/src/components/settings/WindowSettings.tsx b/src/components/settings/WindowSettings.tsx index 965d60327..47f69e311 100644 --- a/src/components/settings/WindowSettings.tsx +++ b/src/components/settings/WindowSettings.tsx @@ -27,16 +27,6 @@ export function WindowSettings({ settings, onChange }: WindowSettingsProps) { onCheckedChange={(value) => onChange({ launchOnStartup: value })} /> - } - title={t("settings.minimizeToTray")} - description={t("settings.minimizeToTrayDescription")} - checked={settings.minimizeToTrayOnClose} - onCheckedChange={(value) => - onChange({ minimizeToTrayOnClose: value }) - } - /> - } title={t("settings.enableClaudePluginIntegration")} @@ -54,6 +44,16 @@ export function WindowSettings({ settings, onChange }: WindowSettingsProps) { checked={!!settings.skipClaudeOnboarding} onCheckedChange={(value) => onChange({ skipClaudeOnboarding: value })} /> + + } + title={t("settings.minimizeToTray")} + description={t("settings.minimizeToTrayDescription")} + checked={settings.minimizeToTrayOnClose} + onCheckedChange={(value) => + onChange({ minimizeToTrayOnClose: value }) + } + /> ); diff --git a/src/hooks/useSettingsForm.ts b/src/hooks/useSettingsForm.ts index f4f091622..7eee9af91 100644 --- a/src/hooks/useSettingsForm.ts +++ b/src/hooks/useSettingsForm.ts @@ -83,7 +83,7 @@ export function useSettingsForm(): UseSettingsFormResult { minimizeToTrayOnClose: data.minimizeToTrayOnClose ?? true, enableClaudePluginIntegration: data.enableClaudePluginIntegration ?? false, - skipClaudeOnboarding: data.skipClaudeOnboarding ?? true, + skipClaudeOnboarding: data.skipClaudeOnboarding ?? false, claudeConfigDir: sanitizeDir(data.claudeConfigDir), codexConfigDir: sanitizeDir(data.codexConfigDir), language: normalizedLanguage, @@ -103,7 +103,7 @@ export function useSettingsForm(): UseSettingsFormResult { showInTray: true, minimizeToTrayOnClose: true, enableClaudePluginIntegration: false, - skipClaudeOnboarding: true, + skipClaudeOnboarding: false, language: readPersistedLanguage(), } as SettingsFormState); @@ -138,7 +138,7 @@ export function useSettingsForm(): UseSettingsFormResult { minimizeToTrayOnClose: serverData.minimizeToTrayOnClose ?? true, enableClaudePluginIntegration: serverData.enableClaudePluginIntegration ?? false, - skipClaudeOnboarding: serverData.skipClaudeOnboarding ?? true, + skipClaudeOnboarding: serverData.skipClaudeOnboarding ?? false, claudeConfigDir: sanitizeDir(serverData.claudeConfigDir), codexConfigDir: sanitizeDir(serverData.codexConfigDir), language: normalizedLanguage,