[Phase 17-UI-B] 헤더 바 모델·권한 칩 추가

ChatWindow.xaml:
- 서브 헤더 바(Row 1) 우측에 ModelHeaderChip 버튼 추가
  (Segoe MDL2 브레인 아이콘 + ModelHeaderLabel TextBlock)
- 서브 헤더 바 우측에 PermissionHeaderChip 버튼 추가
  (잠금 아이콘 #4FC3F7 + PermissionHeaderLabel TextBlock)

ChatWindow.ModelSelector.cs:
- UpdateModelLabel(): ModelHeaderLabel 동기 갱신 코드 추가

ChatWindow.PermissionMenu.cs:
- UpdatePermissionUI(): PermissionHeaderLabel 동기 갱신 코드 추가
- PermissionHeaderChip_Click() 신규: PlacementTarget을 헤더 칩으로
  교체 후 기존 BtnPermission_Click 호출

ChatWindow.xaml.cs:
- Loaded 핸들러에 UpdatePermissionUI() 초기 호출 추가

docs/NEXT_ROADMAP.md:
- Phase 17-UI-B 완료 항목 추가

빌드: 경고 0, 오류 0

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-04-03 22:05:30 +09:00
parent e7aa107b16
commit 26c20cf3dc
5 changed files with 73 additions and 4 deletions

View File

@@ -101,11 +101,23 @@ public partial class ChatWindow
AutoPermissionWarning.Visibility = Visibility.Collapsed;
}
/// <summary>Phase 17-UI-B: 헤더 바 권한 칩 클릭 — 권한 팝업을 칩 위치에 표시.</summary>
private void PermissionHeaderChip_Click(object sender, RoutedEventArgs e)
{
if (PermissionPopup == null) return;
// 팝업 기준점을 헤더 칩으로 변경
PermissionPopup.PlacementTarget = PermissionHeaderChip;
PermissionPopup.Placement = System.Windows.Controls.Primitives.PlacementMode.Bottom;
BtnPermission_Click(sender, e);
}
private void UpdatePermissionUI()
{
if (PermissionLabel == null || PermissionIcon == null) return;
var perm = Llm.FilePermission;
PermissionLabel.Text = perm;
// Phase 17-UI-B: 헤더 칩 텍스트도 갱신
if (PermissionHeaderLabel != null) PermissionHeaderLabel.Text = perm;
PermissionIcon.Text = perm switch
{
"Auto" => "\uE73E",