34 lines
1013 B
C#
34 lines
1013 B
C#
using Avalonia;
|
|
using Avalonia.Animation;
|
|
using Avalonia.Animation.Easings;
|
|
using Avalonia.Controls;
|
|
using Avalonia.Media;
|
|
using Avalonia.Styling;
|
|
|
|
namespace ClaudeDo.Ui.Views.Islands;
|
|
|
|
public partial class TaskRowView : UserControl
|
|
{
|
|
public TaskRowView() { InitializeComponent(); }
|
|
|
|
protected override async void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
|
|
{
|
|
base.OnAttachedToVisualTree(e);
|
|
RenderTransform = new TranslateTransform(0, 8);
|
|
Opacity = 0;
|
|
var anim = new Avalonia.Animation.Animation
|
|
{
|
|
Duration = TimeSpan.FromMilliseconds(300),
|
|
Easing = new CubicEaseOut(),
|
|
Children =
|
|
{
|
|
new KeyFrame { Cue = new Cue(0), Setters = { new Setter(OpacityProperty, 0d) } },
|
|
new KeyFrame { Cue = new Cue(1), Setters = { new Setter(OpacityProperty, 1d) } },
|
|
}
|
|
};
|
|
await anim.RunAsync(this);
|
|
Opacity = 1;
|
|
RenderTransform = null;
|
|
}
|
|
}
|