AX Agent 대화 목록 선택 배경과 심볼 잘림 회귀를 바로잡는다
좌측 대화 목록 선택 카드가 보이지 않던 원인은 ConversationItemTemplate 루트 Border에 Background와 BorderBrush가 로컬값으로 고정되어 스타일 트리거를 이기고 있었기 때문이다. 기본 투명값을 스타일 setter로 옮겨 선택 상태에서 ItemSelectedBackground가 정상 적용되도록 수정했다. ConversationItemsControl 컨테이너는 가로 Stretch로 맞춰 선택 배경이 행 전체 둥근 카드로 깔리게 했고, idle 심볼은 16x16 그리드와 내부 마진을 적용해 점선 링이 가장자리에서 살짝 잘리던 문제를 줄였다. README와 DEVELOPMENT 문서에도 2026-04-15 21:11 KST 기준으로 원인과 검증 결과를 기록했다. 검증: dotnet build src/AxCopilot/AxCopilot.csproj -c Release -v minimal -p:OutputPath=bin\verify_conversation_list_selection_fix\ -p:IntermediateOutputPath=obj\verify_conversation_list_selection_fix\ / 경고 0 오류 0 검증: dotnet test src/AxCopilot.Tests/AxCopilot.Tests.csproj -c Release -v minimal --filter "ConversationItemViewModelTests" -p:OutputPath=bin\verify_conversation_list_selection_fix_tests\ -p:IntermediateOutputPath=obj\verify_conversation_list_selection_fix_tests\ / 통과 3
This commit is contained in:
@@ -1,5 +1,12 @@
|
||||
# AX Commander
|
||||
|
||||
- 업데이트: 2026-04-15 21:11 (KST)
|
||||
- AX Agent 좌측 대화 목록 선택 카드의 배경이 실제로 보이지 않던 회귀를 바로잡았습니다. `src/AxCopilot/Views/ChatWindow.xaml`에서 `ConversationItemTemplate` 루트 `Border`의 `Background`/`BorderBrush` 로컬값을 제거하고 스타일 기본값으로 내린 뒤, 선택 트리거가 `ItemSelectedBackground`를 정상 적용하도록 고쳤습니다.
|
||||
- 같은 파일에서 `ConversationItemsControl`의 컨테이너를 가로 `Stretch`로 맞춰 선택 배경이 제목 주변만이 아니라 행 전체 둥근 카드로 깔리게 했고, idle 심볼은 `16x16` 그리드와 내부 마진을 줘 점선 링이 살짝 잘리던 문제도 함께 줄였습니다.
|
||||
- 검증:
|
||||
- `dotnet build src/AxCopilot/AxCopilot.csproj -c Release -v minimal -p:OutputPath=bin\\verify_conversation_list_selection_fix\\ -p:IntermediateOutputPath=obj\\verify_conversation_list_selection_fix\\` 경고 0 / 오류 0
|
||||
- `dotnet test src/AxCopilot.Tests/AxCopilot.Tests.csproj -c Release -v minimal --filter "ConversationItemViewModelTests" -p:OutputPath=bin\\verify_conversation_list_selection_fix_tests\\ -p:IntermediateOutputPath=obj\\verify_conversation_list_selection_fix_tests\\` 통과 3
|
||||
|
||||
- 업데이트: 2026-04-15 21:00 (KST)
|
||||
- AX Agent 좌측 대화 목록의 선택 표시를 카드형으로 다시 다듬었습니다. `src/AxCopilot/Views/ChatWindow.xaml`의 `ConversationItemTemplate`가 선택된 항목에 `ItemSelectedBackground` 기반의 둥근 직사각형 배경을 채우도록 바뀌어, 제목만 굵어지는 대신 항목 전체가 현재 테마에 맞춰 강조됩니다.
|
||||
- 같은 템플릿에 idle 심볼도 추가했습니다. 실행 중(`IsRunning`)이나 미확인 완료 점(`HasUnreadCompletion`)이 없는 대화는 좌측에 점선 링 형태의 기본 심볼을 보여주고, 실행 중이면 기존 러닝 링으로, 아직 열어보지 않은 완료 대화면 완료 점으로 자연스럽게 바뀝니다.
|
||||
|
||||
@@ -1570,3 +1570,10 @@ UI ?遺우쁽????域뱀뮆???귐뗫솯?醫딆춦 ???袁る퓮 ?臾믩씜 ??疫
|
||||
- `src/AxCopilot.Tests/ViewModels/ConversationItemViewModelTests.cs`에 idle/running/completion 상태별 아이콘 계산 회귀 테스트를 추가했습니다.
|
||||
- 검증: `dotnet build src/AxCopilot/AxCopilot.csproj -c Release -v minimal -p:OutputPath=bin\\verify_conversation_list_selected_card\\ -p:IntermediateOutputPath=obj\\verify_conversation_list_selected_card\\` 경고 0 / 오류 0
|
||||
- 검증: `dotnet test src/AxCopilot.Tests/AxCopilot.Tests.csproj -c Release -v minimal --filter "ConversationItemViewModelTests" -p:OutputPath=bin\\verify_conversation_list_selected_card_tests\\ -p:IntermediateOutputPath=obj\\verify_conversation_list_selected_card_tests\\` 통과 3
|
||||
|
||||
업데이트: 2026-04-15 21:11 (KST)
|
||||
- AX Agent 좌측 대화 목록 선택 배경이 보이지 않던 회귀를 수정했습니다. `src/AxCopilot/Views/ChatWindow.xaml`의 `ConversationItemTemplate` 루트 `Border`에 있던 `Background="Transparent"`와 `BorderBrush="Transparent"` 로컬값이 스타일 트리거를 이기고 있어서, 선택 상태여도 `ItemSelectedBackground`가 실제로 적용되지 않았습니다.
|
||||
- 같은 템플릿에서 기본 투명값을 스타일 setter로 옮기고, `ConversationItemsControl` 컨테이너를 가로 `Stretch`로 맞춰 선택된 항목이 제목 주변만이 아니라 행 전체 둥근 카드처럼 채워지도록 조정했습니다.
|
||||
- idle 심볼은 `16x16` 영역과 내부 마진을 주도록 수정해 점선 링이 가장자리에서 약간 잘리던 문제를 줄였습니다.
|
||||
- 검증: `dotnet build src/AxCopilot/AxCopilot.csproj -c Release -v minimal -p:OutputPath=bin\\verify_conversation_list_selection_fix\\ -p:IntermediateOutputPath=obj\\verify_conversation_list_selection_fix\\` 경고 0 / 오류 0
|
||||
- 검증: `dotnet test src/AxCopilot.Tests/AxCopilot.Tests.csproj -c Release -v minimal --filter "ConversationItemViewModelTests" -p:OutputPath=bin\\verify_conversation_list_selection_fix_tests\\ -p:IntermediateOutputPath=obj\\verify_conversation_list_selection_fix_tests\\` 통과 3
|
||||
|
||||
@@ -166,11 +166,14 @@
|
||||
CornerRadius="11"
|
||||
Padding="12,8"
|
||||
Cursor="Hand"
|
||||
Background="Transparent"
|
||||
BorderBrush="Transparent"
|
||||
BorderThickness="1">
|
||||
BorderThickness="1"
|
||||
HorizontalAlignment="Stretch"
|
||||
SnapsToDevicePixels="True"
|
||||
UseLayoutRounding="True">
|
||||
<Border.Style>
|
||||
<Style TargetType="Border">
|
||||
<Setter Property="Background" Value="Transparent"/>
|
||||
<Setter Property="BorderBrush" Value="Transparent"/>
|
||||
<Setter Property="Margin" Value="0,2,0,2"/>
|
||||
<Style.Triggers>
|
||||
<DataTrigger Binding="{Binding IsBranch}" Value="True">
|
||||
@@ -199,25 +202,28 @@
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<Grid Grid.Column="0"
|
||||
Width="14"
|
||||
Height="14"
|
||||
Width="16"
|
||||
Height="16"
|
||||
Margin="0,0,10,0"
|
||||
VerticalAlignment="Center">
|
||||
<Ellipse x:Name="ConvIdleRing"
|
||||
Visibility="Collapsed"
|
||||
Margin="1"
|
||||
Stroke="{DynamicResource SecondaryText}"
|
||||
StrokeThickness="1.3"
|
||||
StrokeThickness="1.2"
|
||||
StrokeDashArray="1.35,1.55"
|
||||
StrokeDashCap="Round"
|
||||
Fill="Transparent"
|
||||
Opacity="0.55"/>
|
||||
<Ellipse x:Name="ConvRunningRing"
|
||||
Visibility="Collapsed"
|
||||
Margin="1"
|
||||
Stroke="{DynamicResource SecondaryText}"
|
||||
StrokeThickness="1.6"
|
||||
Fill="Transparent"/>
|
||||
<Grid x:Name="ConvUnreadBadge"
|
||||
Visibility="Collapsed">
|
||||
Visibility="Collapsed"
|
||||
Margin="1">
|
||||
<Ellipse Fill="{DynamicResource AccentColor}"/>
|
||||
<Ellipse Width="4.2"
|
||||
Height="4.2"
|
||||
@@ -1183,6 +1189,11 @@
|
||||
ItemsSource="{Binding Source={StaticResource GroupedConversations}}"
|
||||
ItemTemplate="{StaticResource ConversationItemTemplate}"
|
||||
Margin="6,0,6,0">
|
||||
<ItemsControl.ItemContainerStyle>
|
||||
<Style TargetType="ContentPresenter">
|
||||
<Setter Property="HorizontalAlignment" Value="Stretch"/>
|
||||
</Style>
|
||||
</ItemsControl.ItemContainerStyle>
|
||||
<ItemsControl.GroupStyle>
|
||||
<GroupStyle>
|
||||
<GroupStyle.HeaderTemplate>
|
||||
|
||||
Reference in New Issue
Block a user