AX Agent 사이드바와 대화 목록 밀도 대폭 정리
Some checks failed
Release Gate / gate (push) Has been cancelled

- 좌측 헤더, 액션, 검색 편집기, 필터, 탭별 메뉴, 삭제/사용자 영역을 전반적으로 축소해 claw-code 쪽 비율로 정리

- 사이드바 폭을 248로 줄이고 대화 목록 카드 패딩, 메타, 편집 버튼, 선택 액센트 바 두께를 함께 축소

- README와 DEVELOPMENT 문서에 2026-04-05 17:53 (KST) 기준 이력 반영

- 검증: dotnet build src/AxCopilot/AxCopilot.csproj -c Release -v minimal -p:OutputPath=bin\\verify\\ -p:IntermediateOutputPath=obj\\verify\\ (경고 0 / 오류 0)
This commit is contained in:
2026-04-05 15:34:35 +09:00
parent 825f7d55f2
commit 3ea497f10a
4 changed files with 100 additions and 93 deletions

View File

@@ -827,6 +827,9 @@ ow + toggle 시각 언어로 통일했습니다.
- 상단 헤더도 더 `claw-code` 쪽 밀도로 줄였습니다. [ChatWindow.xaml](/E:/AX%20Copilot%20-%20Codex/src/AxCopilot/Views/ChatWindow.xaml) 에서 상단 탭 버튼의 폰트/패딩/코너를 다시 낮추고, 탭 그룹 래퍼와 제목 서브 바의 높이와 패딩도 함께 줄였습니다. - 상단 헤더도 더 `claw-code` 쪽 밀도로 줄였습니다. [ChatWindow.xaml](/E:/AX%20Copilot%20-%20Codex/src/AxCopilot/Views/ChatWindow.xaml) 에서 상단 탭 버튼의 폰트/패딩/코너를 다시 낮추고, 탭 그룹 래퍼와 제목 서브 바의 높이와 패딩도 함께 줄였습니다.
- 같은 변경에서 대화 제목 폰트와 최대 폭, 빠른 스트립 버튼 규격, 프리뷰 토글 크기와 라벨도 더 작게 조정해 상단 보조 정보가 본문보다 덜 튀게 정리했습니다. - 같은 변경에서 대화 제목 폰트와 최대 폭, 빠른 스트립 버튼 규격, 프리뷰 토글 크기와 라벨도 더 작게 조정해 상단 보조 정보가 본문보다 덜 튀게 정리했습니다.
- 업데이트: 2026-04-05 17:45 (KST) - 업데이트: 2026-04-05 17:45 (KST)
- 좌측 사이드바도 한 번에 더 `claw-code` 쪽 비율로 줄였습니다. [ChatWindow.xaml](/E:/AX%20Copilot%20-%20Codex/src/AxCopilot/Views/ChatWindow.xaml) 에서 헤더, 새 대화/검색 액션, 검색 편집기, 필터 드롭다운, 탭별 메뉴, 전체 삭제, 하단 사용자/설정 영역까지 패딩·폰트·아이콘·배지 크기를 전반적으로 낮췄습니다.
- [ChatWindow.xaml.cs](/E:/AX%20Copilot%20-%20Codex/src/AxCopilot/Views/ChatWindow.xaml.cs) 에서는 실제 사이드바 폭을 `270 -> 248`로 줄이고, 대화 목록 카드의 패딩, 코너, 아이콘 열 폭, 제목/날짜/실행 메타 폰트, 편집 버튼 규격, 선택 액센트 바 두께도 함께 축소해 목록이 더 차분하게 보이도록 맞췄습니다.
- 업데이트: 2026-04-05 17:53 (KST)
- 좌측 패널과 하단 바도 `claw-code` 쪽 밀도로 다시 맞췄습니다. [ChatWindow.xaml](/E:/AX%20Copilot%20-%20Codex/src/AxCopilot/Views/ChatWindow.xaml) 에서 사이드바 폭을 줄이고, 헤더 앱 배지를 강조색 채운 정사각형 대신 `HintBackground + BorderColor` 기반의 작은 배지형으로 바꿨습니다. - 좌측 패널과 하단 바도 `claw-code` 쪽 밀도로 다시 맞췄습니다. [ChatWindow.xaml](/E:/AX%20Copilot%20-%20Codex/src/AxCopilot/Views/ChatWindow.xaml) 에서 사이드바 폭을 줄이고, 헤더 앱 배지를 강조색 채운 정사각형 대신 `HintBackground + BorderColor` 기반의 작은 배지형으로 바꿨습니다.
- `새 대화`, `검색`, `작업 유형/워크스페이스`, 하단 사용자 영역, 삭제 영역까지 패딩과 폰트, 아이콘 크기를 함께 낮췄고, 하단 상태바는 다이아몬드 아이콘을 작은 원형 점으로 바꿔 더 단순한 상태선처럼 보이게 정리했습니다. - `새 대화`, `검색`, `작업 유형/워크스페이스`, 하단 사용자 영역, 삭제 영역까지 패딩과 폰트, 아이콘 크기를 함께 낮췄고, 하단 상태바는 다이아몬드 아이콘을 작은 원형 점으로 바꿔 더 단순한 상태선처럼 보이게 정리했습니다.
- 실행 로그 배너도 본문 침범을 더 줄였습니다. [ChatWindow.xaml.cs](/E:/AX%20Copilot%20-%20Codex/src/AxCopilot/Views/ChatWindow.xaml.cs)의 `AddAgentEventBanner(...)` 에서 debug 전용 `ToolInput` 카드 길이를 더 짧게 줄였고, `FilePath`는 일반 로그에서는 빠른 액션이 붙은 카드형 대신 파일명 한 줄만 약하게 표시하도록 바꿨습니다. - 실행 로그 배너도 본문 침범을 더 줄였습니다. [ChatWindow.xaml.cs](/E:/AX%20Copilot%20-%20Codex/src/AxCopilot/Views/ChatWindow.xaml.cs)의 `AddAgentEventBanner(...)` 에서 debug 전용 `ToolInput` 카드 길이를 더 짧게 줄였고, `FilePath`는 일반 로그에서는 빠른 액션이 붙은 카드형 대신 파일명 한 줄만 약하게 표시하도록 바꿨습니다.

View File

@@ -4604,3 +4604,7 @@ ow + toggle ?쒓컖 ?몄뼱濡??ㅼ떆 ?뺣젹?덈떎.
- 대화 제목 폰트와 최대 폭, 빠른 스트립 버튼 규격, 프리뷰 토글 크기와 라벨도 더 작게 조정해 상단 보조 정보가 본문보다 덜 튀게 정리했습니다. - 대화 제목 폰트와 최대 폭, 빠른 스트립 버튼 규격, 프리뷰 토글 크기와 라벨도 더 작게 조정해 상단 보조 정보가 본문보다 덜 튀게 정리했습니다.
- 검증 예정: `dotnet build src/AxCopilot/AxCopilot.csproj -c Release -v minimal -p:OutputPath=bin\verify\ -p:IntermediateOutputPath=obj\verify\` - 검증 예정: `dotnet build src/AxCopilot/AxCopilot.csproj -c Release -v minimal -p:OutputPath=bin\verify\ -p:IntermediateOutputPath=obj\verify\`
- 업데이트: 2026-04-05 17:45 (KST) - 업데이트: 2026-04-05 17:45 (KST)
- 좌측 사이드바도 한 번에 더 `claw-code` 쪽 비율로 줄였습니다. [ChatWindow.xaml](/E:/AX%20Copilot%20-%20Codex/src/AxCopilot/Views/ChatWindow.xaml) 에서 헤더, 새 대화/검색 액션, 검색 편집기, 필터 드롭다운, 탭별 메뉴, 전체 삭제, 하단 사용자/설정 영역까지 패딩·폰트·아이콘·배지 크기를 전반적으로 낮췄습니다.
- [ChatWindow.xaml.cs](/E:/AX%20Copilot%20-%20Codex/src/AxCopilot/Views/ChatWindow.xaml.cs) 에서는 실제 사이드바 폭을 `270 -> 248`로 줄이고, `AddConversationItem(...)`의 대화 목록 카드 패딩, 코너, 아이콘 열 폭, 제목/날짜/실행 메타 폰트, 편집 버튼 규격, 선택 액센트 바 두께도 함께 축소해 목록 전체가 더 차분한 레이어로 보이게 맞췄습니다.
- 검증 예정: `dotnet build src/AxCopilot/AxCopilot.csproj -c Release -v minimal -p:OutputPath=bin\verify\ -p:IntermediateOutputPath=obj\verify\`
- 업데이트: 2026-04-05 17:53 (KST)

View File

@@ -477,38 +477,38 @@
BorderThickness="0,0,1,0"> BorderThickness="0,0,1,0">
<Grid> <Grid>
<Grid.RowDefinitions> <Grid.RowDefinitions>
<RowDefinition Height="44"/> <RowDefinition Height="40"/>
<RowDefinition Height="Auto"/> <RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/> <RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/> <RowDefinition Height="Auto"/>
<RowDefinition Height="*"/> <RowDefinition Height="*"/>
<RowDefinition Height="Auto"/> <RowDefinition Height="Auto"/>
<RowDefinition Height="50"/> <RowDefinition Height="46"/>
</Grid.RowDefinitions> </Grid.RowDefinitions>
<!-- 헤더 --> <!-- 헤더 -->
<Grid Grid.Row="0" Margin="12,0"> <Grid Grid.Row="0" Margin="10,0">
<StackPanel Orientation="Horizontal" VerticalAlignment="Center"> <StackPanel Orientation="Horizontal" VerticalAlignment="Center">
<Border Background="{DynamicResource HintBackground}" CornerRadius="6" <Border Background="{DynamicResource HintBackground}" CornerRadius="5"
BorderBrush="{DynamicResource BorderColor}" BorderBrush="{DynamicResource BorderColor}"
BorderThickness="1" BorderThickness="1"
Width="20" Height="20"> Width="18" Height="18">
<TextBlock Text="&#xE8BD;" FontFamily="Segoe MDL2 Assets" FontSize="10.5" <TextBlock Text="&#xE8BD;" FontFamily="Segoe MDL2 Assets" FontSize="9.5"
Foreground="{DynamicResource AccentColor}" HorizontalAlignment="Center" VerticalAlignment="Center"/> Foreground="{DynamicResource AccentColor}" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Border> </Border>
<TextBlock Text="AX Agent" FontSize="12.5" FontWeight="SemiBold" <TextBlock Text="AX Agent" FontSize="11.5" FontWeight="SemiBold"
Foreground="{DynamicResource PrimaryText}" Foreground="{DynamicResource PrimaryText}"
VerticalAlignment="Center" Margin="8,0,0,0"/> VerticalAlignment="Center" Margin="7,0,0,0"/>
</StackPanel> </StackPanel>
</Grid> </Grid>
<!-- 상단 액션 --> <!-- 상단 액션 -->
<Grid Grid.Row="1" Margin="12,2,12,6"> <Grid Grid.Row="1" Margin="10,1,10,5">
<StackPanel> <StackPanel>
<Border x:Name="SidebarNewChatTrigger" <Border x:Name="SidebarNewChatTrigger"
Background="Transparent" Background="Transparent"
CornerRadius="6" CornerRadius="5"
Padding="7,5" Padding="6,4"
Cursor="Hand" Cursor="Hand"
MouseEnter="SidebarNewChatTrigger_MouseEnter" MouseEnter="SidebarNewChatTrigger_MouseEnter"
MouseLeave="SidebarNewChatTrigger_MouseLeave" MouseLeave="SidebarNewChatTrigger_MouseLeave"
@@ -519,25 +519,25 @@
<ColumnDefinition Width="*"/> <ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/> <ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<TextBlock Text="&#xE710;" FontFamily="Segoe MDL2 Assets" FontSize="10.5" <TextBlock Text="&#xE710;" FontFamily="Segoe MDL2 Assets" FontSize="9.75"
Foreground="{DynamicResource SecondaryText}" VerticalAlignment="Center"/> Foreground="{DynamicResource SecondaryText}" VerticalAlignment="Center"/>
<TextBlock Grid.Column="1" Text="새 대화" <TextBlock Grid.Column="1" Text="새 대화"
Foreground="{DynamicResource PrimaryText}" Foreground="{DynamicResource PrimaryText}"
FontSize="10.5" Margin="7,0,0,0" VerticalAlignment="Center"/> FontSize="10" Margin="6,0,0,0" VerticalAlignment="Center"/>
<TextBlock x:Name="SidebarNewChatShortcutHint" <TextBlock x:Name="SidebarNewChatShortcutHint"
Grid.Column="2" Grid.Column="2"
Text="Ctrl+N" Text="Ctrl+N"
Visibility="Collapsed" Visibility="Collapsed"
Foreground="{DynamicResource SecondaryText}" Foreground="{DynamicResource SecondaryText}"
FontSize="10" FontSize="9.25"
VerticalAlignment="Center"/> VerticalAlignment="Center"/>
</Grid> </Grid>
</Border> </Border>
<Border x:Name="SidebarSearchTrigger" <Border x:Name="SidebarSearchTrigger"
Background="Transparent" Background="Transparent"
CornerRadius="6" CornerRadius="5"
Padding="7,5" Padding="6,4"
Cursor="Hand" Cursor="Hand"
MouseEnter="SidebarSearchTrigger_MouseEnter" MouseEnter="SidebarSearchTrigger_MouseEnter"
MouseLeave="SidebarSearchTrigger_MouseLeave" MouseLeave="SidebarSearchTrigger_MouseLeave"
@@ -548,25 +548,25 @@
<ColumnDefinition Width="*"/> <ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/> <ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<TextBlock Text="&#xE721;" FontFamily="Segoe MDL2 Assets" FontSize="10.5" <TextBlock Text="&#xE721;" FontFamily="Segoe MDL2 Assets" FontSize="9.75"
Foreground="{DynamicResource SecondaryText}" VerticalAlignment="Center"/> Foreground="{DynamicResource SecondaryText}" VerticalAlignment="Center"/>
<TextBlock Grid.Column="1" Text="검색" <TextBlock Grid.Column="1" Text="검색"
Foreground="{DynamicResource PrimaryText}" Foreground="{DynamicResource PrimaryText}"
FontSize="10.5" Margin="7,0,0,0" VerticalAlignment="Center"/> FontSize="10" Margin="6,0,0,0" VerticalAlignment="Center"/>
<TextBlock x:Name="SidebarSearchShortcutHint" <TextBlock x:Name="SidebarSearchShortcutHint"
Grid.Column="2" Grid.Column="2"
Text="Ctrl+K" Text="Ctrl+K"
Visibility="Collapsed" Visibility="Collapsed"
Foreground="{DynamicResource SecondaryText}" Foreground="{DynamicResource SecondaryText}"
FontSize="10" FontSize="9.25"
VerticalAlignment="Center"/> VerticalAlignment="Center"/>
</Grid> </Grid>
</Border> </Border>
<Border x:Name="SidebarSearchEditor" <Border x:Name="SidebarSearchEditor"
Background="{DynamicResource ItemBackground}" Background="{DynamicResource ItemBackground}"
CornerRadius="8" CornerRadius="7"
Padding="8,5" Padding="7,4"
Visibility="Collapsed" Visibility="Collapsed"
Opacity="0" Opacity="0"
RenderTransformOrigin="0,0.5"> RenderTransformOrigin="0,0.5">
@@ -581,60 +581,60 @@
<ColumnDefinition Width="Auto"/> <ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/> <ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<TextBlock Text="&#xE721;" FontFamily="Segoe MDL2 Assets" FontSize="12" <TextBlock Text="&#xE721;" FontFamily="Segoe MDL2 Assets" FontSize="11"
Foreground="{DynamicResource SecondaryText}" VerticalAlignment="Center"/> Foreground="{DynamicResource SecondaryText}" VerticalAlignment="Center"/>
<TextBox x:Name="SearchBox" Grid.Column="1" <TextBox x:Name="SearchBox" Grid.Column="1"
Background="Transparent" BorderThickness="0" Background="Transparent" BorderThickness="0"
Foreground="{DynamicResource PrimaryText}" Foreground="{DynamicResource PrimaryText}"
CaretBrush="{DynamicResource AccentColor}" FontSize="11" CaretBrush="{DynamicResource AccentColor}" FontSize="10.5"
VerticalAlignment="Center" Margin="10,0,8,0" VerticalAlignment="Center" Margin="8,0,6,0"
TextChanged="SearchBox_TextChanged"/> TextChanged="SearchBox_TextChanged"/>
<Button x:Name="BtnConversationSort" Grid.Column="2" <Button x:Name="BtnConversationSort" Grid.Column="2"
Style="{StaticResource GhostBtn}" Style="{StaticResource GhostBtn}"
Padding="8,3" MinWidth="54" Padding="6,2.5" MinWidth="50"
Margin="0,0,0,0" Margin="0,0,0,0"
VerticalAlignment="Center" VerticalAlignment="Center"
Click="BtnConversationSort_Click" Click="BtnConversationSort_Click"
ToolTip="대화 정렬 기준 전환" ToolTip="대화 정렬 기준 전환"
Visibility="Collapsed"> Visibility="Collapsed">
<StackPanel Orientation="Horizontal"> <StackPanel Orientation="Horizontal">
<TextBlock Text="&#xE8CB;" FontFamily="Segoe MDL2 Assets" FontSize="11" <TextBlock Text="&#xE8CB;" FontFamily="Segoe MDL2 Assets" FontSize="10"
Foreground="{DynamicResource SecondaryText}" Foreground="{DynamicResource SecondaryText}"
VerticalAlignment="Center" Margin="0,0,5,0"/> VerticalAlignment="Center" Margin="0,0,4,0"/>
<TextBlock x:Name="ConversationSortLabel" Text="활동" <TextBlock x:Name="ConversationSortLabel" Text="활동"
FontSize="11" FontWeight="SemiBold" FontSize="10" FontWeight="SemiBold"
Foreground="{DynamicResource SecondaryText}" Foreground="{DynamicResource SecondaryText}"
VerticalAlignment="Center"/> VerticalAlignment="Center"/>
</StackPanel> </StackPanel>
</Button> </Button>
<Button x:Name="BtnRunningOnlyFilter" Grid.Column="3" <Button x:Name="BtnRunningOnlyFilter" Grid.Column="3"
Style="{StaticResource GhostBtn}" Style="{StaticResource GhostBtn}"
Padding="8,3" MinWidth="54" Padding="6,2.5" MinWidth="50"
Margin="6,0,0,0" Margin="5,0,0,0"
VerticalAlignment="Center" VerticalAlignment="Center"
Click="BtnRunningOnlyFilter_Click" Click="BtnRunningOnlyFilter_Click"
ToolTip="비활성" ToolTip="비활성"
Visibility="Collapsed" Visibility="Collapsed"
IsEnabled="False"> IsEnabled="False">
<StackPanel Orientation="Horizontal"> <StackPanel Orientation="Horizontal">
<TextBlock Text="&#xE768;" FontFamily="Segoe MDL2 Assets" FontSize="11" <TextBlock Text="&#xE768;" FontFamily="Segoe MDL2 Assets" FontSize="10"
Foreground="{DynamicResource SecondaryText}" Foreground="{DynamicResource SecondaryText}"
VerticalAlignment="Center" Margin="0,0,5,0"/> VerticalAlignment="Center" Margin="0,0,4,0"/>
<TextBlock x:Name="RunningOnlyFilterLabel" Text="진행" <TextBlock x:Name="RunningOnlyFilterLabel" Text="진행"
FontSize="11" FontWeight="SemiBold" FontSize="10" FontWeight="SemiBold"
Foreground="{DynamicResource SecondaryText}" Foreground="{DynamicResource SecondaryText}"
VerticalAlignment="Center"/> VerticalAlignment="Center"/>
</StackPanel> </StackPanel>
</Button> </Button>
<Button Grid.Column="4" <Button Grid.Column="4"
Style="{StaticResource GhostBtn}" Style="{StaticResource GhostBtn}"
Padding="7,4" Padding="6,3"
Margin="6,0,0,0" Margin="5,0,0,0"
Click="BtnSidebarSearchClose_Click" Click="BtnSidebarSearchClose_Click"
ToolTip="검색 닫기"> ToolTip="검색 닫기">
<TextBlock Text="&#xE711;" <TextBlock Text="&#xE711;"
FontFamily="Segoe MDL2 Assets" FontFamily="Segoe MDL2 Assets"
FontSize="10.5" FontSize="9.75"
Foreground="{DynamicResource SecondaryText}"/> Foreground="{DynamicResource SecondaryText}"/>
</Button> </Button>
</Grid> </Grid>
@@ -643,22 +643,22 @@
</Grid> </Grid>
<!-- 상단 필터 드롭다운 --> <!-- 상단 필터 드롭다운 -->
<Border Grid.Row="2" Margin="12,0,12,3"> <Border Grid.Row="2" Margin="10,0,10,3">
<Button x:Name="BtnCategoryDrop" Style="{StaticResource GhostBtn}" <Button x:Name="BtnCategoryDrop" Style="{StaticResource GhostBtn}"
HorizontalAlignment="Stretch" Padding="8,4" HorizontalAlignment="Stretch" Padding="7,3.5"
Click="BtnCategoryDrop_Click"> Click="BtnCategoryDrop_Click">
<Grid HorizontalAlignment="Stretch"> <Grid HorizontalAlignment="Stretch">
<StackPanel Orientation="Horizontal"> <StackPanel Orientation="Horizontal">
<TextBlock x:Name="CategoryIcon" Text="&#xE8BD;" <TextBlock x:Name="CategoryIcon" Text="&#xE8BD;"
FontFamily="Segoe MDL2 Assets" FontSize="11" FontFamily="Segoe MDL2 Assets" FontSize="10"
Foreground="{DynamicResource AccentColor}" Foreground="{DynamicResource AccentColor}"
VerticalAlignment="Center" Margin="0,0,8,0"/> VerticalAlignment="Center" Margin="0,0,6,0"/>
<TextBlock x:Name="CategoryLabel" Text="모든 주제" <TextBlock x:Name="CategoryLabel" Text="모든 주제"
FontSize="11" FontWeight="SemiBold" FontSize="10.25" FontWeight="SemiBold"
Foreground="{DynamicResource PrimaryText}" Foreground="{DynamicResource PrimaryText}"
VerticalAlignment="Center"/> VerticalAlignment="Center"/>
</StackPanel> </StackPanel>
<TextBlock Text="&#xE70D;" FontFamily="Segoe MDL2 Assets" FontSize="9" <TextBlock Text="&#xE70D;" FontFamily="Segoe MDL2 Assets" FontSize="8.5"
Foreground="{DynamicResource SecondaryText}" Foreground="{DynamicResource SecondaryText}"
HorizontalAlignment="Right" VerticalAlignment="Center"/> HorizontalAlignment="Right" VerticalAlignment="Center"/>
</Grid> </Grid>
@@ -666,7 +666,7 @@
</Border> </Border>
<!-- 탭별 좌측 메뉴 --> <!-- 탭별 좌측 메뉴 -->
<Border Grid.Row="3" Margin="12,0,12,6" <Border Grid.Row="3" Margin="10,0,10,5"
Background="Transparent" Background="Transparent"
BorderBrush="Transparent" BorderBrush="Transparent"
BorderThickness="0" BorderThickness="0"
@@ -675,18 +675,18 @@
<StackPanel> <StackPanel>
<StackPanel Orientation="Horizontal" Margin="0,0,0,4" Visibility="Collapsed"> <StackPanel Orientation="Horizontal" Margin="0,0,0,4" Visibility="Collapsed">
<TextBlock x:Name="SidebarModeBadgeIcon" Text="&#xE8BD;" <TextBlock x:Name="SidebarModeBadgeIcon" Text="&#xE8BD;"
FontFamily="Segoe MDL2 Assets" FontSize="12" FontFamily="Segoe MDL2 Assets" FontSize="10.5"
Foreground="{DynamicResource AccentColor}" Foreground="{DynamicResource AccentColor}"
VerticalAlignment="Center" Margin="0,0,6,0"/> VerticalAlignment="Center" Margin="0,0,6,0"/>
<TextBlock x:Name="SidebarModeBadgeTitle" Text="Chat 메뉴" <TextBlock x:Name="SidebarModeBadgeTitle" Text="Chat 메뉴"
FontSize="11.5" FontWeight="SemiBold" FontSize="10.5" FontWeight="SemiBold"
Foreground="{DynamicResource PrimaryText}" Foreground="{DynamicResource PrimaryText}"
VerticalAlignment="Center"/> VerticalAlignment="Center"/>
</StackPanel> </StackPanel>
<StackPanel x:Name="SidebarChatMenu" Visibility="Visible"> <StackPanel x:Name="SidebarChatMenu" Visibility="Visible">
<Border Cursor="Hand" Background="Transparent" CornerRadius="8" <Border Cursor="Hand" Background="Transparent" CornerRadius="8"
Padding="8,4" Margin="0,0,0,2" Padding="7,3.5" Margin="0,0,0,2"
MouseLeftButtonUp="SidebarChatAll_MouseLeftButtonUp"> MouseLeftButtonUp="SidebarChatAll_MouseLeftButtonUp">
<Grid> <Grid>
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
@@ -694,17 +694,17 @@
<ColumnDefinition Width="*"/> <ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/> <ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<TextBlock Text="&#xE8BD;" FontFamily="Segoe MDL2 Assets" FontSize="11" <TextBlock Text="&#xE8BD;" FontFamily="Segoe MDL2 Assets" FontSize="10"
Foreground="{DynamicResource AccentColor}" VerticalAlignment="Center"/> Foreground="{DynamicResource AccentColor}" VerticalAlignment="Center"/>
<TextBlock Grid.Column="1" Text="주제" <TextBlock Grid.Column="1" Text="주제"
Foreground="{DynamicResource PrimaryText}" Foreground="{DynamicResource PrimaryText}"
FontSize="11" Margin="7,0,0,0" VerticalAlignment="Center"/> FontSize="10.25" Margin="6,0,0,0" VerticalAlignment="Center"/>
<TextBlock Grid.Column="2" Text="&#xE70D;" FontFamily="Segoe MDL2 Assets" FontSize="9" <TextBlock Grid.Column="2" Text="&#xE70D;" FontFamily="Segoe MDL2 Assets" FontSize="8.5"
Foreground="{DynamicResource SecondaryText}" VerticalAlignment="Center"/> Foreground="{DynamicResource SecondaryText}" VerticalAlignment="Center"/>
</Grid> </Grid>
</Border> </Border>
<Border x:Name="SidebarChatRunningRow" Cursor="Hand" Background="Transparent" CornerRadius="8" <Border x:Name="SidebarChatRunningRow" Cursor="Hand" Background="Transparent" CornerRadius="8"
Padding="8,4" Padding="7,3.5"
MouseLeftButtonUp="SidebarChatRunning_MouseLeftButtonUp" MouseLeftButtonUp="SidebarChatRunning_MouseLeftButtonUp"
Visibility="Collapsed"> Visibility="Collapsed">
<Grid> <Grid>
@@ -713,21 +713,21 @@
<ColumnDefinition Width="*"/> <ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/> <ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<TextBlock Text="&#xE768;" FontFamily="Segoe MDL2 Assets" FontSize="11" <TextBlock Text="&#xE768;" FontFamily="Segoe MDL2 Assets" FontSize="10"
Foreground="#22C55E" VerticalAlignment="Center"/> Foreground="#22C55E" VerticalAlignment="Center"/>
<TextBlock Grid.Column="1" Text="진행 중 대화만 보기" <TextBlock Grid.Column="1" Text="진행 중 대화만 보기"
Foreground="{DynamicResource PrimaryText}" Foreground="{DynamicResource PrimaryText}"
FontSize="11" Margin="7,0,0,0" VerticalAlignment="Center"/> FontSize="10.25" Margin="6,0,0,0" VerticalAlignment="Center"/>
<TextBlock Grid.Column="2" x:Name="SidebarChatRunningState" Text="OFF" <TextBlock Grid.Column="2" x:Name="SidebarChatRunningState" Text="OFF"
Foreground="{DynamicResource SecondaryText}" Foreground="{DynamicResource SecondaryText}"
FontSize="10.5" VerticalAlignment="Center"/> FontSize="9.75" VerticalAlignment="Center"/>
</Grid> </Grid>
</Border> </Border>
</StackPanel> </StackPanel>
<StackPanel x:Name="SidebarCoworkMenu" Visibility="Collapsed"> <StackPanel x:Name="SidebarCoworkMenu" Visibility="Collapsed">
<Border Cursor="Hand" Background="Transparent" CornerRadius="8" <Border Cursor="Hand" Background="Transparent" CornerRadius="8"
Padding="8,4" Margin="0,0,0,2" Padding="7,3.5" Margin="0,0,0,2"
MouseLeftButtonUp="SidebarCoworkCategory_MouseLeftButtonUp"> MouseLeftButtonUp="SidebarCoworkCategory_MouseLeftButtonUp">
<Grid> <Grid>
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
@@ -735,12 +735,12 @@
<ColumnDefinition Width="*"/> <ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/> <ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<TextBlock Text="&#xE8FD;" FontFamily="Segoe MDL2 Assets" FontSize="11" <TextBlock Text="&#xE8FD;" FontFamily="Segoe MDL2 Assets" FontSize="10"
Foreground="#3B82F6" VerticalAlignment="Center"/> Foreground="#3B82F6" VerticalAlignment="Center"/>
<TextBlock Grid.Column="1" Text="작업 유형" <TextBlock Grid.Column="1" Text="작업 유형"
Foreground="{DynamicResource PrimaryText}" Foreground="{DynamicResource PrimaryText}"
FontSize="11" Margin="7,0,0,0" VerticalAlignment="Center"/> FontSize="10.25" Margin="6,0,0,0" VerticalAlignment="Center"/>
<TextBlock Grid.Column="2" Text="&#xE70D;" FontFamily="Segoe MDL2 Assets" FontSize="9" <TextBlock Grid.Column="2" Text="&#xE70D;" FontFamily="Segoe MDL2 Assets" FontSize="8.5"
Foreground="{DynamicResource SecondaryText}" VerticalAlignment="Center"/> Foreground="{DynamicResource SecondaryText}" VerticalAlignment="Center"/>
</Grid> </Grid>
</Border> </Border>
@@ -748,7 +748,7 @@
<StackPanel x:Name="SidebarCodeMenu" Visibility="Collapsed"> <StackPanel x:Name="SidebarCodeMenu" Visibility="Collapsed">
<Border Cursor="Hand" Background="Transparent" CornerRadius="8" <Border Cursor="Hand" Background="Transparent" CornerRadius="8"
Padding="8,4" Margin="0,0,0,2" Padding="7,3.5" Margin="0,0,0,2"
MouseLeftButtonUp="SidebarCodeCategory_MouseLeftButtonUp"> MouseLeftButtonUp="SidebarCodeCategory_MouseLeftButtonUp">
<Grid> <Grid>
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
@@ -756,12 +756,12 @@
<ColumnDefinition Width="*"/> <ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/> <ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<TextBlock Text="&#xE943;" FontFamily="Segoe MDL2 Assets" FontSize="11" <TextBlock Text="&#xE943;" FontFamily="Segoe MDL2 Assets" FontSize="10"
Foreground="#3B82F6" VerticalAlignment="Center"/> Foreground="#3B82F6" VerticalAlignment="Center"/>
<TextBlock Grid.Column="1" Text="워크스페이스" <TextBlock Grid.Column="1" Text="워크스페이스"
Foreground="{DynamicResource PrimaryText}" Foreground="{DynamicResource PrimaryText}"
FontSize="11" Margin="7,0,0,0" VerticalAlignment="Center"/> FontSize="10.25" Margin="6,0,0,0" VerticalAlignment="Center"/>
<TextBlock Grid.Column="2" Text="&#xE70D;" FontFamily="Segoe MDL2 Assets" FontSize="9" <TextBlock Grid.Column="2" Text="&#xE70D;" FontFamily="Segoe MDL2 Assets" FontSize="8.5"
Foreground="{DynamicResource SecondaryText}" VerticalAlignment="Center"/> Foreground="{DynamicResource SecondaryText}" VerticalAlignment="Center"/>
</Grid> </Grid>
</Border> </Border>
@@ -772,51 +772,51 @@
<!-- 대화 목록 --> <!-- 대화 목록 -->
<ScrollViewer Grid.Row="4" VerticalScrollBarVisibility="Auto" <ScrollViewer Grid.Row="4" VerticalScrollBarVisibility="Auto"
HorizontalScrollBarVisibility="Disabled"> HorizontalScrollBarVisibility="Disabled">
<StackPanel x:Name="ConversationPanel" Margin="8,0,8,0"/> <StackPanel x:Name="ConversationPanel" Margin="6,0,6,0"/>
</ScrollViewer> </ScrollViewer>
<!-- 하단: 삭제 --> <!-- 하단: 삭제 -->
<Border Grid.Row="5" BorderBrush="{DynamicResource SeparatorColor}" BorderThickness="0,1,0,0" <Border Grid.Row="5" BorderBrush="{DynamicResource SeparatorColor}" BorderThickness="0,1,0,0"
Padding="0,3"> Padding="0,2">
<Button x:Name="BtnDeleteAll" Style="{StaticResource GhostBtn}" <Button x:Name="BtnDeleteAll" Style="{StaticResource GhostBtn}"
HorizontalAlignment="Center" VerticalAlignment="Center" HorizontalAlignment="Center" VerticalAlignment="Center"
Click="BtnDeleteAll_Click"> Click="BtnDeleteAll_Click">
<StackPanel Orientation="Horizontal"> <StackPanel Orientation="Horizontal">
<TextBlock Text="&#xE74D;" FontFamily="Segoe MDL2 Assets" FontSize="10.5" <TextBlock Text="&#xE74D;" FontFamily="Segoe MDL2 Assets" FontSize="9.75"
Foreground="#AA5555" VerticalAlignment="Center" Margin="0,0,5,0"/> Foreground="#AA5555" VerticalAlignment="Center" Margin="0,0,4,0"/>
<TextBlock Text="전체 삭제" FontSize="10.5" Foreground="#AA5555"/> <TextBlock Text="전체 삭제" FontSize="9.75" Foreground="#AA5555"/>
</StackPanel> </StackPanel>
</Button> </Button>
</Border> </Border>
<!-- 하단: 사용자 계정 --> <!-- 하단: 사용자 계정 -->
<Border Grid.Row="6" Margin="12,0,12,8"> <Border Grid.Row="6" Margin="10,0,10,6">
<Grid> <Grid>
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/> <ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/> <ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/> <ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<Border Grid.Column="0" Width="32" Height="32" CornerRadius="16" <Border Grid.Column="0" Width="28" Height="28" CornerRadius="14"
Background="{DynamicResource HintBackground}" Background="{DynamicResource HintBackground}"
BorderBrush="{DynamicResource BorderColor}" BorderBrush="{DynamicResource BorderColor}"
BorderThickness="1" BorderThickness="1"
Margin="0,0,10,0"> Margin="0,0,8,0">
<TextBlock x:Name="UserInitialSidebar" Text="U" FontSize="13" FontWeight="SemiBold" <TextBlock x:Name="UserInitialSidebar" Text="U" FontSize="11.5" FontWeight="SemiBold"
Foreground="{DynamicResource PrimaryText}" HorizontalAlignment="Center" VerticalAlignment="Center"/> Foreground="{DynamicResource PrimaryText}" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Border> </Border>
<StackPanel Grid.Column="1" VerticalAlignment="Center"> <StackPanel Grid.Column="1" VerticalAlignment="Center">
<TextBlock x:Name="UserNameText" Text="" FontSize="11.5" FontWeight="SemiBold" <TextBlock x:Name="UserNameText" Text="" FontSize="10.5" FontWeight="SemiBold"
Foreground="{DynamicResource PrimaryText}" Foreground="{DynamicResource PrimaryText}"
TextTrimming="CharacterEllipsis"/> TextTrimming="CharacterEllipsis"/>
<TextBlock x:Name="UserPcText" Text="" FontSize="9.5" <TextBlock x:Name="UserPcText" Text="" FontSize="8.75"
Foreground="{DynamicResource SecondaryText}"/> Foreground="{DynamicResource SecondaryText}"/>
</StackPanel> </StackPanel>
<Button x:Name="BtnSidebarSettings" <Button x:Name="BtnSidebarSettings"
Grid.Column="2" Grid.Column="2"
Style="{StaticResource GhostBtn}" Style="{StaticResource GhostBtn}"
Width="28" Height="28" Width="24" Height="24"
Margin="8,0,0,0" Margin="6,0,0,0"
VerticalAlignment="Center" VerticalAlignment="Center"
Click="BtnSettings_Click" Click="BtnSettings_Click"
ToolTip="AX Agent 설정"> ToolTip="AX Agent 설정">

View File

@@ -2879,12 +2879,12 @@ public partial class ChatWindow : Window
if (animated) if (animated)
{ {
AnimateSidebar(0, 270, () => SidebarColumn.MinWidth = 200); AnimateSidebar(0, 248, () => SidebarColumn.MinWidth = 184);
} }
else else
{ {
SidebarColumn.MinWidth = 200; SidebarColumn.MinWidth = 184;
SidebarColumn.Width = new GridLength(270); SidebarColumn.Width = new GridLength(248);
} }
return; return;
} }
@@ -2892,7 +2892,7 @@ public partial class ChatWindow : Window
SidebarColumn.MinWidth = 0; SidebarColumn.MinWidth = 0;
if (animated) if (animated)
{ {
AnimateSidebar(270, 0, () => AnimateSidebar(248, 0, () =>
{ {
SidebarPanel.Visibility = Visibility.Collapsed; SidebarPanel.Visibility = Visibility.Collapsed;
IconBarColumn.Width = new GridLength(52); IconBarColumn.Width = new GridLength(52);
@@ -3229,14 +3229,14 @@ public partial class ChatWindow : Window
Background = isSelected Background = isSelected
? new SolidColorBrush(Color.FromArgb(0x10, 0x4B, 0x5E, 0xFC)) ? new SolidColorBrush(Color.FromArgb(0x10, 0x4B, 0x5E, 0xFC))
: Brushes.Transparent, : Brushes.Transparent,
CornerRadius = new CornerRadius(6), CornerRadius = new CornerRadius(5),
Padding = new Thickness(7, 4, 7, 4), Padding = new Thickness(6, 3.5, 6, 3.5),
Margin = isBranch ? new Thickness(12, 1, 0, 1) : new Thickness(0, 1, 0, 1), Margin = isBranch ? new Thickness(10, 1, 0, 1) : new Thickness(0, 1, 0, 1),
Cursor = Cursors.Hand Cursor = Cursors.Hand
}; };
var grid = new Grid(); var grid = new Grid();
grid.ColumnDefinitions.Add(new ColumnDefinition { Width = new GridLength(18) }); grid.ColumnDefinitions.Add(new ColumnDefinition { Width = new GridLength(16) });
grid.ColumnDefinitions.Add(new ColumnDefinition { Width = new GridLength(1, GridUnitType.Star) }); grid.ColumnDefinitions.Add(new ColumnDefinition { Width = new GridLength(1, GridUnitType.Star) });
grid.ColumnDefinitions.Add(new ColumnDefinition { Width = GridLength.Auto }); grid.ColumnDefinitions.Add(new ColumnDefinition { Width = GridLength.Auto });
@@ -3255,7 +3255,7 @@ public partial class ChatWindow : Window
{ {
Text = iconText, Text = iconText,
FontFamily = new FontFamily("Segoe MDL2 Assets"), FontFamily = new FontFamily("Segoe MDL2 Assets"),
FontSize = 10, FontSize = 9.25,
Foreground = iconBrush, Foreground = iconBrush,
VerticalAlignment = VerticalAlignment.Center VerticalAlignment = VerticalAlignment.Center
}; };
@@ -3270,7 +3270,7 @@ public partial class ChatWindow : Window
var title = new TextBlock var title = new TextBlock
{ {
Text = item.Title, Text = item.Title,
FontSize = 10.5, FontSize = 10,
FontWeight = isSelected ? FontWeights.SemiBold : FontWeights.Normal, FontWeight = isSelected ? FontWeights.SemiBold : FontWeights.Normal,
Foreground = titleColor, Foreground = titleColor,
TextTrimming = TextTrimming.CharacterEllipsis TextTrimming = TextTrimming.CharacterEllipsis
@@ -3278,7 +3278,7 @@ public partial class ChatWindow : Window
var date = new TextBlock var date = new TextBlock
{ {
Text = item.UpdatedAtText, Text = item.UpdatedAtText,
FontSize = 8, FontSize = 7.6,
Foreground = dateColor, Foreground = dateColor,
Margin = new Thickness(0, 1, 0, 0) Margin = new Thickness(0, 1, 0, 0)
}; };
@@ -3291,10 +3291,10 @@ public partial class ChatWindow : Window
Text = _appState.ActiveTasks.Count > 0 Text = _appState.ActiveTasks.Count > 0
? $"진행 중 {_appState.ActiveTasks.Count}" ? $"진행 중 {_appState.ActiveTasks.Count}"
: "진행 중", : "진행 중",
FontSize = 7.75, FontSize = 7.4,
FontWeight = FontWeights.Medium, FontWeight = FontWeights.Medium,
Foreground = BrushFromHex("#4F46E5"), Foreground = BrushFromHex("#4F46E5"),
Margin = new Thickness(0, 1.5, 0, 0), Margin = new Thickness(0, 1, 0, 0),
}); });
} }
if (item.AgentRunCount > 0) if (item.AgentRunCount > 0)
@@ -3304,11 +3304,11 @@ public partial class ChatWindow : Window
Text = item.FailedAgentRunCount > 0 Text = item.FailedAgentRunCount > 0
? $"실패 {item.FailedAgentRunCount} · {TruncateForStatus(item.LastAgentRunSummary, 26)}" ? $"실패 {item.FailedAgentRunCount} · {TruncateForStatus(item.LastAgentRunSummary, 26)}"
: $"실행 {item.AgentRunCount} · {TruncateForStatus(item.LastAgentRunSummary, 28)}", : $"실행 {item.AgentRunCount} · {TruncateForStatus(item.LastAgentRunSummary, 28)}",
FontSize = 7.9, FontSize = 7.45,
Foreground = item.FailedAgentRunCount > 0 Foreground = item.FailedAgentRunCount > 0
? BrushFromHex("#B91C1C") ? BrushFromHex("#B91C1C")
: (TryFindResource("SecondaryText") as Brush ?? Brushes.Gray), : (TryFindResource("SecondaryText") as Brush ?? Brushes.Gray),
Margin = new Thickness(0, 1.5, 0, 0), Margin = new Thickness(0, 1, 0, 0),
TextTrimming = TextTrimming.CharacterEllipsis TextTrimming = TextTrimming.CharacterEllipsis
}; };
if (!string.IsNullOrWhiteSpace(item.LastAgentRunSummary)) if (!string.IsNullOrWhiteSpace(item.LastAgentRunSummary))
@@ -3329,7 +3329,7 @@ public partial class ChatWindow : Window
{ {
Text = "\uE70F", // Edit Text = "\uE70F", // Edit
FontFamily = new FontFamily("Segoe MDL2 Assets"), FontFamily = new FontFamily("Segoe MDL2 Assets"),
FontSize = 8, FontSize = 7.6,
Foreground = (TryFindResource("SecondaryText") as Brush ?? Brushes.Gray) Foreground = (TryFindResource("SecondaryText") as Brush ?? Brushes.Gray)
}, },
Background = Brushes.Transparent, Background = Brushes.Transparent,
@@ -3337,8 +3337,8 @@ public partial class ChatWindow : Window
Cursor = Cursors.Hand, Cursor = Cursors.Hand,
VerticalAlignment = VerticalAlignment.Center, VerticalAlignment = VerticalAlignment.Center,
Visibility = Visibility.Collapsed, Visibility = Visibility.Collapsed,
Width = 20, Width = 18,
Height = 20, Height = 18,
Padding = new Thickness(0), Padding = new Thickness(0),
Opacity = 0.72, Opacity = 0.72,
ToolTip = _activeTab == "Cowork" ? "작업 유형" : "대화 주제 변경" ToolTip = _activeTab == "Cowork" ? "작업 유형" : "대화 주제 변경"
@@ -3352,7 +3352,7 @@ public partial class ChatWindow : Window
if (isSelected) if (isSelected)
{ {
border.BorderBrush = TryFindResource("AccentColor") as Brush ?? Brushes.CornflowerBlue; border.BorderBrush = TryFindResource("AccentColor") as Brush ?? Brushes.CornflowerBlue;
border.BorderThickness = new Thickness(1.5, 0, 0, 0); border.BorderThickness = new Thickness(1.25, 0, 0, 0);
} }
border.Child = grid; border.Child = grid;