feat(ui): add MissionControl window + grid

This commit is contained in:
Mika Kuns
2026-06-26 16:11:50 +02:00
parent 15a3e65508
commit 283310a3fd
6 changed files with 95 additions and 2 deletions
@@ -0,0 +1,49 @@
<UserControl xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:vm="using:ClaudeDo.Ui.ViewModels"
xmlns:vmi="using:ClaudeDo.Ui.ViewModels.Islands"
xmlns:mc="using:ClaudeDo.Ui.Views.MissionControl"
xmlns:loc="using:ClaudeDo.Ui.Localization"
x:DataType="vm:MissionControlViewModel"
x:Class="ClaudeDo.Ui.Views.MissionControl.MissionControlView">
<DockPanel LastChildFill="True" Background="{DynamicResource VoidBrush}">
<!-- Header -->
<Border DockPanel.Dock="Top"
Background="{DynamicResource DeepBrush}"
BorderBrush="{DynamicResource LineBrush}"
BorderThickness="0,0,0,1" Padding="14,8">
<Grid ColumnDefinitions="*,Auto">
<TextBlock Grid.Column="0" Classes="eyebrow"
Text="{loc:Tr missionControl.windowTitle}"
Foreground="{DynamicResource TextBrush}"
LetterSpacing="1.4" VerticalAlignment="Center" />
<Button Grid.Column="1" Classes="btn"
Content="{loc:Tr missionControl.clearFinished}"
Command="{Binding ClearFinishedCommand}" />
</Grid>
</Border>
<!-- Grid / empty state -->
<Panel Margin="6">
<ItemsControl ItemsSource="{Binding Monitors}" IsVisible="{Binding HasMonitors}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<UniformGrid x:CompileBindings="False" Columns="{Binding ColumnCount}" />
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate x:DataType="vmi:TaskMonitorViewModel">
<mc:MonitorPaneView Margin="6" />
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
<TextBlock IsVisible="{Binding !HasMonitors}"
Text="{loc:Tr missionControl.empty}"
Foreground="{DynamicResource TextMuteBrush}"
HorizontalAlignment="Center" VerticalAlignment="Center" />
</Panel>
</DockPanel>
</UserControl>