- Cowork/Code 보조 상태 스트립의 폰트, 패딩, 간격을 더 줄여 본문 우선 시각 흐름에 맞춤 - 작업 요약 팝업 헤더/필터/최근 실행/훅/백그라운드 카드와 액션 버튼 규격을 축소 - README와 DEVELOPMENT 문서에 2026-04-05 17:27 (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:
@@ -20106,21 +20106,21 @@ private static (string icon, string label, string bgHex, string fgHex) GetDecisi
|
||||
panel.Children.Add(new TextBlock
|
||||
{
|
||||
Text = "작업 요약",
|
||||
FontSize = 11.5,
|
||||
FontSize = 11,
|
||||
FontWeight = FontWeights.SemiBold,
|
||||
Foreground = primaryText,
|
||||
Margin = new Thickness(10, 6, 10, 3),
|
||||
Margin = new Thickness(8, 5, 8, 2),
|
||||
});
|
||||
panel.Children.Add(new TextBlock
|
||||
{
|
||||
Text = "현재 실행/권한/작업 흐름",
|
||||
FontSize = 9.5,
|
||||
FontSize = 8.75,
|
||||
Foreground = secondaryText,
|
||||
Margin = new Thickness(10, 0, 10, 4),
|
||||
Margin = new Thickness(8, 0, 8, 3),
|
||||
});
|
||||
var taskFilterRow = new WrapPanel
|
||||
{
|
||||
Margin = new Thickness(8, 0, 8, 8),
|
||||
Margin = new Thickness(6, 0, 6, 6),
|
||||
};
|
||||
taskFilterRow.Children.Add(CreateTaskSummaryFilterChip("all", "전체"));
|
||||
taskFilterRow.Children.Add(CreateTaskSummaryFilterChip("permission", "권한"));
|
||||
@@ -20139,13 +20139,13 @@ private static (string icon, string label, string bgHex, string fgHex) GetDecisi
|
||||
var currentRun = new Border
|
||||
{
|
||||
Background = BrushFromHex("#F8FAFC"),
|
||||
BorderBrush = BrushFromHex("#E2E8F0"),
|
||||
BorderThickness = new Thickness(1),
|
||||
CornerRadius = new CornerRadius(10),
|
||||
Padding = new Thickness(10, 8, 10, 8),
|
||||
Margin = new Thickness(8, 0, 8, 8),
|
||||
Child = new StackPanel
|
||||
{
|
||||
BorderBrush = BrushFromHex("#E2E8F0"),
|
||||
BorderThickness = new Thickness(1),
|
||||
CornerRadius = new CornerRadius(8),
|
||||
Padding = new Thickness(8, 6, 8, 6),
|
||||
Margin = new Thickness(6, 0, 6, 6),
|
||||
Child = new StackPanel
|
||||
{
|
||||
Children =
|
||||
{
|
||||
new TextBlock
|
||||
@@ -20155,20 +20155,22 @@ private static (string icon, string label, string bgHex, string fgHex) GetDecisi
|
||||
Foreground = primaryText,
|
||||
},
|
||||
new TextBlock
|
||||
{
|
||||
Text = $"{GetRunStatusLabel(_appState.AgentRun.Status)} · iteration {_appState.AgentRun.LastIteration}",
|
||||
Margin = new Thickness(0, 3, 0, 0),
|
||||
Foreground = GetRunStatusBrush(_appState.AgentRun.Status),
|
||||
},
|
||||
new TextBlock
|
||||
{
|
||||
Text = string.IsNullOrWhiteSpace(_appState.AgentRun.Summary) ? "요약 없음" : _appState.AgentRun.Summary,
|
||||
Margin = new Thickness(0, 4, 0, 0),
|
||||
TextWrapping = TextWrapping.Wrap,
|
||||
Foreground = Brushes.DimGray,
|
||||
{
|
||||
Text = $"{GetRunStatusLabel(_appState.AgentRun.Status)} · iteration {_appState.AgentRun.LastIteration}",
|
||||
Margin = new Thickness(0, 2, 0, 0),
|
||||
Foreground = GetRunStatusBrush(_appState.AgentRun.Status),
|
||||
FontSize = 9.5,
|
||||
},
|
||||
new TextBlock
|
||||
{
|
||||
Text = string.IsNullOrWhiteSpace(_appState.AgentRun.Summary) ? "요약 없음" : _appState.AgentRun.Summary,
|
||||
Margin = new Thickness(0, 3, 0, 0),
|
||||
TextWrapping = TextWrapping.Wrap,
|
||||
Foreground = Brushes.DimGray,
|
||||
FontSize = 9.5,
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
panel.Children.Add(currentRun);
|
||||
}
|
||||
@@ -20184,9 +20186,9 @@ private static (string icon, string label, string bgHex, string fgHex) GetDecisi
|
||||
Background = BrushFromHex("#FEF2F2"),
|
||||
BorderBrush = BrushFromHex("#FECACA"),
|
||||
BorderThickness = new Thickness(1),
|
||||
CornerRadius = new CornerRadius(10),
|
||||
Padding = new Thickness(10, 8, 10, 8),
|
||||
Margin = new Thickness(8, 0, 8, 8),
|
||||
CornerRadius = new CornerRadius(8),
|
||||
Padding = new Thickness(8, 6, 8, 6),
|
||||
Margin = new Thickness(6, 0, 6, 6),
|
||||
Child = new StackPanel
|
||||
{
|
||||
Children =
|
||||
@@ -20202,13 +20204,15 @@ private static (string icon, string label, string bgHex, string fgHex) GetDecisi
|
||||
Text = $"{latestFailedRun.UpdatedAt:HH:mm:ss} · iteration {latestFailedRun.LastIteration}",
|
||||
Margin = new Thickness(0, 2, 0, 0),
|
||||
Foreground = BrushFromHex("#B45309"),
|
||||
FontSize = 9.25,
|
||||
},
|
||||
new TextBlock
|
||||
{
|
||||
Text = string.IsNullOrWhiteSpace(latestFailedRun.Summary) ? "요약 없음" : latestFailedRun.Summary,
|
||||
Margin = new Thickness(0, 4, 0, 0),
|
||||
Margin = new Thickness(0, 3, 0, 0),
|
||||
TextWrapping = TextWrapping.Wrap,
|
||||
Foreground = secondaryText,
|
||||
FontSize = 9.25,
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -20218,10 +20222,10 @@ private static (string icon, string label, string bgHex, string fgHex) GetDecisi
|
||||
panel.Children.Add(new TextBlock
|
||||
{
|
||||
Text = "최근 에이전트 실행",
|
||||
FontSize = 10.5,
|
||||
FontSize = 10,
|
||||
FontWeight = FontWeights.SemiBold,
|
||||
Foreground = Brushes.DimGray,
|
||||
Margin = new Thickness(10, 0, 10, 3),
|
||||
Margin = new Thickness(8, 0, 8, 2),
|
||||
});
|
||||
|
||||
foreach (var run in recentAgentRuns)
|
||||
@@ -20244,6 +20248,7 @@ private static (string icon, string label, string bgHex, string fgHex) GetDecisi
|
||||
Text = runDisplay.MetaText,
|
||||
Margin = new Thickness(0, 2, 0, 0),
|
||||
Foreground = secondaryText,
|
||||
FontSize = 9.25,
|
||||
},
|
||||
new TextBlock
|
||||
{
|
||||
@@ -20251,6 +20256,7 @@ private static (string icon, string label, string bgHex, string fgHex) GetDecisi
|
||||
Margin = new Thickness(0, 2, 0, 0),
|
||||
TextWrapping = TextWrapping.Wrap,
|
||||
Foreground = secondaryText,
|
||||
FontSize = 9.25,
|
||||
}
|
||||
}
|
||||
};
|
||||
@@ -20261,7 +20267,7 @@ private static (string icon, string label, string bgHex, string fgHex) GetDecisi
|
||||
activitySummary.Children.Add(new TextBlock
|
||||
{
|
||||
Text = $"실행 로그 {runEvents.Count} · 관련 파일 {runFilePaths.Count}",
|
||||
FontSize = 9.5,
|
||||
FontSize = 8.75,
|
||||
Foreground = secondaryText,
|
||||
});
|
||||
|
||||
@@ -20285,8 +20291,8 @@ private static (string icon, string label, string bgHex, string fgHex) GetDecisi
|
||||
BorderBrush = BrushFromHex("#E2E8F0"),
|
||||
BorderThickness = new Thickness(1),
|
||||
CornerRadius = new CornerRadius(8),
|
||||
Padding = new Thickness(8, 6, 8, 6),
|
||||
Margin = new Thickness(0, 8, 0, 0),
|
||||
Padding = new Thickness(7, 5, 7, 5),
|
||||
Margin = new Thickness(0, 6, 0, 0),
|
||||
Child = activitySummary
|
||||
});
|
||||
}
|
||||
@@ -20327,9 +20333,9 @@ private static (string icon, string label, string bgHex, string fgHex) GetDecisi
|
||||
Background = Brushes.White,
|
||||
BorderBrush = BrushFromHex("#E5E7EB"),
|
||||
BorderThickness = new Thickness(1),
|
||||
CornerRadius = new CornerRadius(9),
|
||||
Padding = new Thickness(9, 6, 9, 6),
|
||||
Margin = new Thickness(8, 0, 8, 6),
|
||||
CornerRadius = new CornerRadius(8),
|
||||
Padding = new Thickness(8, 5, 8, 5),
|
||||
Margin = new Thickness(6, 0, 6, 5),
|
||||
Child = runCardStack
|
||||
});
|
||||
}
|
||||
@@ -20340,7 +20346,7 @@ private static (string icon, string label, string bgHex, string fgHex) GetDecisi
|
||||
var actionsPanel = new StackPanel
|
||||
{
|
||||
Orientation = Orientation.Horizontal,
|
||||
Margin = new Thickness(8, 2, 8, 8),
|
||||
Margin = new Thickness(6, 1, 6, 6),
|
||||
};
|
||||
|
||||
var retryButton = CreateTaskSummaryActionButton(
|
||||
@@ -21269,10 +21275,10 @@ private static (string icon, string label, string bgHex, string fgHex) GetDecisi
|
||||
var button = new Button
|
||||
{
|
||||
Content = label,
|
||||
FontSize = 9.5,
|
||||
MinHeight = 24,
|
||||
Padding = new Thickness(8, 3, 8, 3),
|
||||
Margin = trailingMargin ? new Thickness(0, 0, 5, 0) : new Thickness(0),
|
||||
FontSize = 8.75,
|
||||
MinHeight = 22,
|
||||
Padding = new Thickness(7, 2.5, 7, 2.5),
|
||||
Margin = trailingMargin ? new Thickness(0, 0, 4, 0) : new Thickness(0),
|
||||
Background = BrushFromHex(bg),
|
||||
BorderBrush = BrushFromHex(border),
|
||||
BorderThickness = new Thickness(1),
|
||||
@@ -21290,7 +21296,7 @@ private static (string icon, string label, string bgHex, string fgHex) GetDecisi
|
||||
{
|
||||
var actions = new WrapPanel
|
||||
{
|
||||
Margin = new Thickness(0, 8, 0, 0),
|
||||
Margin = new Thickness(0, 6, 0, 0),
|
||||
};
|
||||
|
||||
var primaryButton = CreateTaskSummaryActionButton(
|
||||
@@ -21316,7 +21322,7 @@ private static (string icon, string label, string bgHex, string fgHex) GetDecisi
|
||||
{
|
||||
var actions = new WrapPanel
|
||||
{
|
||||
Margin = new Thickness(0, 8, 0, 0),
|
||||
Margin = new Thickness(0, 6, 0, 0),
|
||||
};
|
||||
|
||||
Button BuildPermissionButton(string label, string bg, string border, string fg, string? mode, bool margin = true)
|
||||
@@ -21352,15 +21358,15 @@ private static (string icon, string label, string bgHex, string fgHex) GetDecisi
|
||||
{
|
||||
Text = "\uE756",
|
||||
FontFamily = new FontFamily("Segoe MDL2 Assets"),
|
||||
FontSize = 11,
|
||||
FontSize = 10,
|
||||
Foreground = hook.Success ? BrushFromHex("#334155") : BrushFromHex("#991B1B"),
|
||||
Margin = new Thickness(0, 0, 6, 0),
|
||||
Margin = new Thickness(0, 0, 5, 0),
|
||||
VerticalAlignment = VerticalAlignment.Center,
|
||||
},
|
||||
new TextBlock
|
||||
{
|
||||
Text = "훅 이벤트",
|
||||
FontSize = 11,
|
||||
FontSize = 10,
|
||||
FontWeight = FontWeights.SemiBold,
|
||||
Foreground = hook.Success ? BrushFromHex("#334155") : BrushFromHex("#991B1B"),
|
||||
}
|
||||
@@ -21369,14 +21375,14 @@ private static (string icon, string label, string bgHex, string fgHex) GetDecisi
|
||||
hookCardStack.Children.Add(new TextBlock
|
||||
{
|
||||
Text = _appState.FormatHookEventLine(hook),
|
||||
FontSize = 10.5,
|
||||
FontSize = 9.5,
|
||||
TextWrapping = TextWrapping.Wrap,
|
||||
Foreground = hook.Success ? secondaryText : BrushFromHex("#991B1B"),
|
||||
});
|
||||
|
||||
var hookActionRow = new WrapPanel
|
||||
{
|
||||
Margin = new Thickness(0, 8, 0, 0),
|
||||
Margin = new Thickness(0, 6, 0, 0),
|
||||
};
|
||||
|
||||
var hookFilterButton = CreateTaskSummaryActionButton(
|
||||
@@ -21417,8 +21423,8 @@ private static (string icon, string label, string bgHex, string fgHex) GetDecisi
|
||||
BorderBrush = hook.Success ? BrushFromHex("#E2E8F0") : BrushFromHex("#FECACA"),
|
||||
BorderThickness = new Thickness(1),
|
||||
CornerRadius = new CornerRadius(8),
|
||||
Padding = new Thickness(9, 6, 9, 6),
|
||||
Margin = new Thickness(8, 0, 8, 5),
|
||||
Padding = new Thickness(8, 5, 8, 5),
|
||||
Margin = new Thickness(6, 0, 6, 4),
|
||||
Child = hookCardStack
|
||||
};
|
||||
}
|
||||
@@ -21436,15 +21442,15 @@ private static (string icon, string label, string bgHex, string fgHex) GetDecisi
|
||||
{
|
||||
Text = "\uE9F9",
|
||||
FontFamily = new FontFamily("Segoe MDL2 Assets"),
|
||||
FontSize = 11,
|
||||
FontSize = 10,
|
||||
Foreground = BrushFromHex("#1D4ED8"),
|
||||
Margin = new Thickness(0, 0, 6, 0),
|
||||
Margin = new Thickness(0, 0, 5, 0),
|
||||
VerticalAlignment = VerticalAlignment.Center,
|
||||
},
|
||||
new TextBlock
|
||||
{
|
||||
Text = $"실행 중인 백그라운드 작업 {activeBackgroundCount}개",
|
||||
FontSize = 11,
|
||||
FontSize = 10,
|
||||
Foreground = BrushFromHex("#1D4ED8"),
|
||||
FontWeight = FontWeights.SemiBold,
|
||||
}
|
||||
@@ -21456,8 +21462,8 @@ private static (string icon, string label, string bgHex, string fgHex) GetDecisi
|
||||
activeBackgroundStack.Children.Add(new TextBlock
|
||||
{
|
||||
Text = $"· {job.Title} · {TruncateForStatus(job.Summary, 52)}",
|
||||
Margin = new Thickness(0, 4, 0, 0),
|
||||
FontSize = 10.5,
|
||||
Margin = new Thickness(0, 3, 0, 0),
|
||||
FontSize = 9.5,
|
||||
Foreground = secondaryText,
|
||||
TextWrapping = TextWrapping.Wrap,
|
||||
});
|
||||
@@ -21465,7 +21471,7 @@ private static (string icon, string label, string bgHex, string fgHex) GetDecisi
|
||||
|
||||
var activeActionRow = new WrapPanel
|
||||
{
|
||||
Margin = new Thickness(0, 8, 0, 0),
|
||||
Margin = new Thickness(0, 6, 0, 0),
|
||||
};
|
||||
|
||||
var runningFilterButton = CreateTaskSummaryActionButton(
|
||||
@@ -21492,8 +21498,8 @@ private static (string icon, string label, string bgHex, string fgHex) GetDecisi
|
||||
BorderBrush = BrushFromHex("#BFDBFE"),
|
||||
BorderThickness = new Thickness(1),
|
||||
CornerRadius = new CornerRadius(8),
|
||||
Padding = new Thickness(9, 6, 9, 6),
|
||||
Margin = new Thickness(8, 0, 8, 6),
|
||||
Padding = new Thickness(8, 5, 8, 5),
|
||||
Margin = new Thickness(6, 0, 6, 5),
|
||||
Child = activeBackgroundStack
|
||||
};
|
||||
}
|
||||
@@ -21513,15 +21519,15 @@ private static (string icon, string label, string bgHex, string fgHex) GetDecisi
|
||||
{
|
||||
Text = "\uE823",
|
||||
FontFamily = new FontFamily("Segoe MDL2 Assets"),
|
||||
FontSize = 11,
|
||||
FontSize = 10,
|
||||
Foreground = isFailed ? BrushFromHex("#991B1B") : BrushFromHex("#334155"),
|
||||
Margin = new Thickness(0, 0, 6, 0),
|
||||
Margin = new Thickness(0, 0, 5, 0),
|
||||
VerticalAlignment = VerticalAlignment.Center,
|
||||
},
|
||||
new TextBlock
|
||||
{
|
||||
Text = $"{job.Title} · {GetTaskStatusLabel(job.Status)}",
|
||||
FontSize = 11,
|
||||
FontSize = 10,
|
||||
FontWeight = FontWeights.SemiBold,
|
||||
Foreground = isFailed ? BrushFromHex("#991B1B") : BrushFromHex("#334155"),
|
||||
}
|
||||
@@ -21530,7 +21536,7 @@ private static (string icon, string label, string bgHex, string fgHex) GetDecisi
|
||||
jobCardStack.Children.Add(new TextBlock
|
||||
{
|
||||
Text = $"{job.UpdatedAt:HH:mm:ss} · {TruncateForStatus(job.Summary, 72)}",
|
||||
FontSize = 10.5,
|
||||
FontSize = 9.5,
|
||||
TextWrapping = TextWrapping.Wrap,
|
||||
Foreground = isFailed
|
||||
? BrushFromHex("#991B1B")
|
||||
@@ -21539,7 +21545,7 @@ private static (string icon, string label, string bgHex, string fgHex) GetDecisi
|
||||
|
||||
var jobActionRow = new WrapPanel
|
||||
{
|
||||
Margin = new Thickness(0, 8, 0, 0),
|
||||
Margin = new Thickness(0, 6, 0, 0),
|
||||
};
|
||||
|
||||
var focusButton = CreateTaskSummaryActionButton(
|
||||
@@ -21590,8 +21596,8 @@ private static (string icon, string label, string bgHex, string fgHex) GetDecisi
|
||||
: BrushFromHex("#E2E8F0"),
|
||||
BorderThickness = new Thickness(1),
|
||||
CornerRadius = new CornerRadius(8),
|
||||
Padding = new Thickness(9, 6, 9, 6),
|
||||
Margin = new Thickness(8, 0, 8, 5),
|
||||
Padding = new Thickness(8, 5, 8, 5),
|
||||
Margin = new Thickness(6, 0, 6, 4),
|
||||
Child = jobCardStack
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user