UI: featured hero card, vivid status colors, themed Markdown render
Featured version ---------------- The highest installed version (or highest remote if none installed) now gets a large hero card at the top of the window: 32px Proserve title, oversized colored status pill, and a much bigger primary action button (LANCER / INSTALLER 56px padding). All other versions move below into a "AUTRES VERSIONS" section with a horizontal divider, displayed as the existing compact rows. MainViewModel exposes FeaturedVersion + OtherVersions instead of one flat Versions collection. Vivid status colors ------------------- Card backgrounds were too close (dark gray vs slightly bluer dark gray). New scheme: - Installed: card stays dark gray, but a 4px green strip on the left and a vivid green "● Installée" pill make it unmistakable. - Available remote-only: distinct dark blue card + vivid blue strip + blue "○ Disponible" pill. - Busy: amber strip + amber pill, amber progress bar. Brushes added to Theme.xaml: Brush.Status.Installed (#16A34A), Brush.Status.Available (#3B82F6), Brush.Status.Busy (#F59E0B), each with a matching very-dark-tint *Bg variant for card backgrounds. Markdown theming ---------------- Release notes dialogs were unreadable (white background, near-white text). Markdig.Wpf produces a FlowDocument with default white bg / black fg regardless of the host control. Added MarkdownTheming.BuildThemedDocument which renders the Markdown then walks all blocks/inlines to apply the launcher's dark palette (Brush.Bg.Card transparent, Brush.Text.Primary foreground, Brush.Accent links). Both UpdateAvailableDialog and ReleaseNotesViewerDialog use this helper. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -16,6 +16,14 @@
|
||||
<SolidColorBrush x:Key="Brush.Play" Color="#0CA84B" />
|
||||
<SolidColorBrush x:Key="Brush.PlayHover" Color="#10C257" />
|
||||
|
||||
<!-- Status colors -->
|
||||
<SolidColorBrush x:Key="Brush.Status.Installed" Color="#16A34A" /> <!-- vert vif -->
|
||||
<SolidColorBrush x:Key="Brush.Status.InstalledBg" Color="#0E2A1B" /> <!-- vert très sombre -->
|
||||
<SolidColorBrush x:Key="Brush.Status.Available" Color="#3B82F6" /> <!-- bleu vif -->
|
||||
<SolidColorBrush x:Key="Brush.Status.AvailableBg" Color="#13243F" /> <!-- bleu très sombre -->
|
||||
<SolidColorBrush x:Key="Brush.Status.Busy" Color="#F59E0B" /> <!-- ambre -->
|
||||
<SolidColorBrush x:Key="Brush.Status.BusyBg" Color="#3A2A0E" />
|
||||
|
||||
<Style TargetType="Window">
|
||||
<Setter Property="Background" Value="{StaticResource Brush.Bg.Window}" />
|
||||
<Setter Property="Foreground" Value="{StaticResource Brush.Text.Primary}" />
|
||||
|
||||
Reference in New Issue
Block a user