feat(wpf): v2 - restore live thumbnail preview column in participants table

96x54 thumbnail (16:9) fed from the engine's most recent ProcessedFrame. Em-dash placeholder when no pipeline is running. Same pattern as v1 - lifted Image binding to Thumbnail with HasThumbnail visibility flip. Sits between the state LED and the name+codec caption.
This commit is contained in:
Zac Gaetano 2026-05-15 14:33:00 -04:00
parent 209b643cd5
commit 4944de5feb

View file

@ -494,7 +494,42 @@
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<!-- Col 2 — Name + caption. Display name (Inter 13/Medium) above,
<!-- Col 2 — Live preview thumbnail. 96×54 (16:9). WriteableBitmap
fed from the engine's most recent ProcessedFrame at the 1Hz
stats tick. Em-dash placeholder when no pipeline is running. -->
<DataGridTemplateColumn Header="Preview" Width="106" IsReadOnly="True">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Grid VerticalAlignment="Center" HorizontalAlignment="Left" Margin="0,0,8,0">
<Border Width="96" Height="54"
Background="{DynamicResource Wd.SurfaceElevated}"
BorderBrush="{DynamicResource Wd.Border}"
BorderThickness="1"
CornerRadius="4"
Visibility="{Binding HasThumbnail, Converter={StaticResource BoolToVisInverse}}">
<TextBlock Text="—"
Foreground="{DynamicResource Wd.Text.Tertiary}"
FontFamily="{StaticResource Wd.Font.Mono}"
FontSize="11"
HorizontalAlignment="Center"
VerticalAlignment="Center"/>
</Border>
<Border Width="96" Height="54"
BorderBrush="{DynamicResource Wd.Border}"
BorderThickness="1"
CornerRadius="4"
ClipToBounds="True"
Visibility="{Binding HasThumbnail, Converter={StaticResource BoolToVis}}">
<Image Source="{Binding Thumbnail}"
Stretch="UniformToFill"
RenderOptions.BitmapScalingMode="LowQuality"/>
</Border>
</Grid>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<!-- Col 3 — Name + caption. Display name (Inter 13/Medium) above,
source machine + state caption (Mono 11/Tertiary) below. -->
<DataGridTemplateColumn Header="Participant" Width="*" IsReadOnly="True">
<DataGridTemplateColumn.CellTemplate>