feat(ui): collapse parent task rows by default with granular row sync
This commit is contained in:
@@ -87,10 +87,10 @@
|
||||
VerticalAlignment="Center"
|
||||
ToolTip.Tip="{loc:Tr tasks.toggleSubtasksTip}">
|
||||
<Panel>
|
||||
<TextBlock Classes="meta" Text="▾" IsVisible="{Binding IsExpanded}"
|
||||
VerticalAlignment="Center" HorizontalAlignment="Center"/>
|
||||
<TextBlock Classes="meta" Text="▸" IsVisible="{Binding !IsExpanded}"
|
||||
VerticalAlignment="Center" HorizontalAlignment="Center"/>
|
||||
<PathIcon Width="12" Height="12" Data="{StaticResource Icon.ChevronDown}"
|
||||
Foreground="{DynamicResource TextDimBrush}" IsVisible="{Binding IsExpanded}"/>
|
||||
<PathIcon Width="12" Height="12" Data="{StaticResource Icon.ChevronRight}"
|
||||
Foreground="{DynamicResource TextDimBrush}" IsVisible="{Binding !IsExpanded}"/>
|
||||
</Panel>
|
||||
</Button>
|
||||
|
||||
|
||||
@@ -1,12 +1,7 @@
|
||||
using System.Linq;
|
||||
using Avalonia;
|
||||
using Avalonia.Animation;
|
||||
using Avalonia.Animation.Easings;
|
||||
using Avalonia.Controls;
|
||||
using Avalonia.Controls.Primitives;
|
||||
using Avalonia.Interactivity;
|
||||
using Avalonia.Media;
|
||||
using Avalonia.Styling;
|
||||
using Avalonia.VisualTree;
|
||||
using ClaudeDo.Data.Models;
|
||||
using ClaudeDo.Ui.ViewModels.Islands;
|
||||
@@ -123,24 +118,4 @@ public partial class TaskRowView : UserControl
|
||||
ScheduleAnchor.Flyout?.Hide();
|
||||
_pendingScheduleRow = null;
|
||||
}
|
||||
|
||||
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;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user