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

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