diff --git a/README.md b/README.md index f898e5e..447fabb 100644 --- a/README.md +++ b/README.md @@ -1289,3 +1289,7 @@ MIT License - 업데이트: 2026-04-06 17:01 (KST) - 모델 등록 단계에서 IBM/CP4D 인증 방식을 명확히 고를 수 있게 분기했다. [ModelRegistrationDialog.cs](/E:/AX%20Copilot%20-%20Codex/src/AxCopilot/Views/ModelRegistrationDialog.cs)에 `CP4D (사용자 이름 + 비밀번호)`와 `CP4D (사용자 이름 + API 키)` 항목을 따로 추가하고, 선택에 따라 마지막 입력 필드 라벨이 `비밀번호` 또는 `API 키`로 바뀌도록 정리했다. - [LlmService.cs](/E:/AX%20Copilot%20-%20Codex/src/AxCopilot/Services/LlmService.cs), [SettingsViewModel.cs](/E:/AX%20Copilot%20-%20Codex/src/AxCopilot/ViewModels/SettingsViewModel.cs), [AppSettings.cs](/E:/AX%20Copilot%20-%20Codex/src/AxCopilot/Models/AppSettings.cs) 도 함께 갱신해 `cp4d_password`, `cp4d_api_key` 저장값을 공식 지원하고, 기존 `cp4d` 값은 비밀번호 방식으로 계속 호환되게 유지했다. +- 업데이트: 2026-04-06 17:09 (KST) + - 런처 하단에 자동으로 붙는 빠른 실행 칩을 별도 사용자 설정으로 분리했다. [AppSettings.cs](/E:/AX%20Copilot%20-%20Codex/src/AxCopilot/Models/AppSettings.cs), [SettingsViewModel.cs](/E:/AX%20Copilot%20-%20Codex/src/AxCopilot/ViewModels/SettingsViewModel.cs), [SettingsWindow.xaml](/E:/AX%20Copilot%20-%20Codex/src/AxCopilot/Views/SettingsWindow.xaml)에 `빠른 실행 칩 표시` 옵션을 추가했고, 기본값은 비활성으로 두었다. + - [LauncherViewModel.LauncherExtras.cs](/E:/AX%20Copilot%20-%20Codex/src/AxCopilot/ViewModels/LauncherViewModel.LauncherExtras.cs) 에서 이 설정이 꺼져 있으면 하단 빠른 실행 칩을 로드하지 않도록 바꿨다. + - [LauncherWindow.xaml](/E:/AX%20Copilot%20-%20Codex/src/AxCopilot/Views/LauncherWindow.xaml) 에서는 하단 빠른 실행 칩 블록 자체를 중앙 정렬 기준으로 재배치하고, 각 칩 내부도 세로 중앙 정렬과 최소 높이를 맞춰 여러 개가 나타나도 정중앙에 더 가깝게 보이도록 정리했다. diff --git a/docs/DEVELOPMENT.md b/docs/DEVELOPMENT.md index 985a55c..1d4e37c 100644 --- a/docs/DEVELOPMENT.md +++ b/docs/DEVELOPMENT.md @@ -4982,3 +4982,5 @@ ow + toggle ?쒓컖 ?몄뼱濡??ㅼ떆 ?뺣젹?덈떎. - Document update: 2026-04-06 16:55 (KST) - Hardened `Cp4dTokenService.cs` for IBM/CP4D-style token endpoints that expect `username + api_key` instead of `username + password`. The service now tries `username/password` first and automatically retries with `username/api_key` before failing. - Document update: 2026-04-06 17:01 (KST) - Split the CP4D auth choice at model-registration time. `ModelRegistrationDialog.cs` now exposes `CP4D (사용자 이름 + 비밀번호)` and `CP4D (사용자 이름 + API 키)` as separate auth types and changes the final credential label accordingly. - Document update: 2026-04-06 17:01 (KST) - Updated `LlmService.cs`, `SettingsViewModel.cs`, and `AppSettings.cs` to formally support `cp4d_password` and `cp4d_api_key` while preserving legacy `cp4d` values as the password-based path for backward compatibility. +- Document update: 2026-04-06 17:09 (KST) - Added a dedicated launcher-setting toggle for the lower quick-action chip strip. `AppSettings.cs`, `SettingsViewModel.cs`, and `SettingsWindow.xaml` now expose `showLauncherBottomQuickActions`, and the default is off so the strip stays hidden unless the user opts in. +- Document update: 2026-04-06 17:09 (KST) - Updated `LauncherViewModel.LauncherExtras.cs` and `LauncherWindow.xaml` so lower quick-action chips are not loaded when disabled and render with centered block alignment plus centered chip content when enabled, reducing the off-center look when multiple chips appear. diff --git a/src/AxCopilot/Models/AppSettings.cs b/src/AxCopilot/Models/AppSettings.cs index e980f5b..cda84dc 100644 --- a/src/AxCopilot/Models/AppSettings.cs +++ b/src/AxCopilot/Models/AppSettings.cs @@ -219,6 +219,10 @@ public class LauncherSettings [JsonPropertyName("showWidgetBattery")] public bool ShowWidgetBattery { get; set; } = false; + /// 런처 하단 빠른 실행 칩 표시 여부. 기본 false. + [JsonPropertyName("showLauncherBottomQuickActions")] + public bool ShowLauncherBottomQuickActions { get; set; } = false; + /// 단축키 헬프 창에서 아이콘 색상을 테마 AccentColor 기준으로 표시. 기본 true(테마색). [JsonPropertyName("shortcutHelpUseThemeColor")] public bool ShortcutHelpUseThemeColor { get; set; } = true; diff --git a/src/AxCopilot/ViewModels/LauncherViewModel.LauncherExtras.cs b/src/AxCopilot/ViewModels/LauncherViewModel.LauncherExtras.cs index f47caee..359a706 100644 --- a/src/AxCopilot/ViewModels/LauncherViewModel.LauncherExtras.cs +++ b/src/AxCopilot/ViewModels/LauncherViewModel.LauncherExtras.cs @@ -17,7 +17,10 @@ public partial class LauncherViewModel private CancellationTokenSource? _previewCts; public ObservableCollection QuickActionItems { get; } = new(); - public bool ShowQuickActions => string.IsNullOrEmpty(_inputText) && QuickActionItems.Count > 0; + public bool ShowQuickActions => + _settings.Settings.Launcher.ShowLauncherBottomQuickActions && + string.IsNullOrEmpty(_inputText) && + QuickActionItems.Count > 0; public string PreviewText { @@ -81,6 +84,12 @@ public partial class LauncherViewModel { QuickActionItems.Clear(); + if (!_settings.Settings.Launcher.ShowLauncherBottomQuickActions) + { + OnPropertyChanged(nameof(ShowQuickActions)); + return; + } + var topItems = UsageRankingService.GetTopItems(16); var added = 0; foreach (var (path, _) in topItems) diff --git a/src/AxCopilot/ViewModels/SettingsViewModel.cs b/src/AxCopilot/ViewModels/SettingsViewModel.cs index 8065281..1282c56 100644 --- a/src/AxCopilot/ViewModels/SettingsViewModel.cs +++ b/src/AxCopilot/ViewModels/SettingsViewModel.cs @@ -173,6 +173,7 @@ public class SettingsViewModel : INotifyPropertyChanged private bool _showWidgetWeather; private bool _showWidgetCalendar; private bool _showWidgetBattery; + private bool _showLauncherBottomQuickActions; private bool _shortcutHelpUseThemeColor; // LLM 공통 설정 @@ -803,6 +804,12 @@ public class SettingsViewModel : INotifyPropertyChanged set { _showWidgetBattery = value; OnPropertyChanged(); } } + public bool ShowLauncherBottomQuickActions + { + get => _showLauncherBottomQuickActions; + set { _showLauncherBottomQuickActions = value; OnPropertyChanged(); } + } + public bool EnableIconAnimation { get => _enableIconAnimation; @@ -1085,6 +1092,7 @@ public class SettingsViewModel : INotifyPropertyChanged _showWidgetWeather = s.Launcher.ShowWidgetWeather; _showWidgetCalendar = s.Launcher.ShowWidgetCalendar; _showWidgetBattery = s.Launcher.ShowWidgetBattery; + _showLauncherBottomQuickActions = s.Launcher.ShowLauncherBottomQuickActions; _shortcutHelpUseThemeColor = s.Launcher.ShortcutHelpUseThemeColor; _enableTextAction = s.Launcher.EnableTextAction; // v1.7.1: 파일 대화상자 통합 기본값을 false로 변경 (브라우저 업로드 오작동 방지) @@ -1537,6 +1545,7 @@ public class SettingsViewModel : INotifyPropertyChanged s.Launcher.ShowWidgetWeather = _showWidgetWeather; s.Launcher.ShowWidgetCalendar = _showWidgetCalendar; s.Launcher.ShowWidgetBattery = _showWidgetBattery; + s.Launcher.ShowLauncherBottomQuickActions = _showLauncherBottomQuickActions; s.Launcher.ShortcutHelpUseThemeColor = _shortcutHelpUseThemeColor; s.Launcher.EnableTextAction = _enableTextAction; s.Launcher.EnableFileDialogIntegration = _enableFileDialogIntegration; diff --git a/src/AxCopilot/Views/LauncherWindow.xaml b/src/AxCopilot/Views/LauncherWindow.xaml index e1d9669..1675165 100644 --- a/src/AxCopilot/Views/LauncherWindow.xaml +++ b/src/AxCopilot/Views/LauncherWindow.xaml @@ -428,21 +428,27 @@ Grid.ColumnSpan="3" ItemsSource="{Binding QuickActionItems}" Margin="0,10,0,0" + HorizontalAlignment="Center" + VerticalAlignment="Center" Visibility="{Binding ShowQuickActions, Converter={StaticResource BoolToVisibilityConverter}}"> - + - + + + + + + + + + + +