Move interface declarations into per-area Interfaces/ subfolders, merge the small task-list filter classes into StatusFilter/SmartFlagFilter, and simplify related services, converters and hub DTO handling. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
31 lines
1.3 KiB
C#
31 lines
1.3 KiB
C#
using System.Globalization;
|
|
using Avalonia.Data.Converters;
|
|
using Avalonia.Media;
|
|
using ClaudeDo.Ui.ViewModels.Modals;
|
|
|
|
namespace ClaudeDo.Ui.Converters;
|
|
|
|
public sealed class DiffLineKindToBrushConverter : IValueConverter
|
|
{
|
|
private static readonly ISolidColorBrush Added = new SolidColorBrush(Color.Parse("#66BB6A"));
|
|
private static readonly ISolidColorBrush Removed = new SolidColorBrush(Color.Parse("#EF5350"));
|
|
private static readonly ISolidColorBrush Hunk = new SolidColorBrush(Color.Parse("#42A5F5"));
|
|
private static readonly ISolidColorBrush Header = new SolidColorBrush(Color.Parse("#9E9E9E"));
|
|
private static readonly ISolidColorBrush Default = new SolidColorBrush(Color.Parse("#CFD8DC"));
|
|
|
|
public object Convert(object? value, Type targetType, object? parameter, CultureInfo culture) =>
|
|
value is WorktreeDiffLineKind kind
|
|
? kind switch
|
|
{
|
|
WorktreeDiffLineKind.Added => Added,
|
|
WorktreeDiffLineKind.Removed => Removed,
|
|
WorktreeDiffLineKind.Hunk => Hunk,
|
|
WorktreeDiffLineKind.Header => Header,
|
|
_ => Default,
|
|
}
|
|
: Default;
|
|
|
|
public object ConvertBack(object? value, Type targetType, object? parameter, CultureInfo culture)
|
|
=> throw new NotSupportedException();
|
|
}
|