UI: ASTERION logo left of PROSERVE wordmark + minimize on launch

Brand mark
----------
Resources/logo-asterion-white.png embedded as a WPF Resource. Placed
in the top-bar StackPanel before the PROSERVE Pirulen wordmark, at
36px height, with HighQuality bitmap scaling and SnapsToDevicePixels
to keep the white logo crisp against the dark chrome.

Minimize on launch
------------------
Once a Proserve version is started via _processLauncher.Launch(),
the MainWindow drops to WindowState.Minimized so it doesn't sit on
top of the game. The launcher stays running (so the user can come
back to install / switch / see the badge license), just out of the way.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-02 11:59:03 +02:00
parent 661c464b7a
commit 89f039e355
5 changed files with 11 additions and 0 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.3 KiB

View File

@@ -51,6 +51,7 @@
<Resource Include="Resources\Background.png" />
<Resource Include="Resources\pirulen.otf" />
<Resource Include="Resources\favicon.ico" />
<Resource Include="Resources\logo-asterion-white.png" />
</ItemGroup>
<!-- Après chaque `dotnet publish -c Release`, copie le single-file exe à la racine du repo

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.3 KiB

View File

@@ -427,6 +427,10 @@ public sealed partial class MainViewModel : ObservableObject
_processLauncher.Launch(row.Installed);
_config.LastLaunchedVersion = row.Version;
_configStore.Save(_config);
// Réduit la fenêtre du launcher pour ne pas gêner Proserve qui démarre
if (Application.Current.MainWindow is { } mw)
mw.WindowState = WindowState.Minimized;
}
catch (Exception ex)
{

View File

@@ -193,6 +193,12 @@
</Grid.ColumnDefinitions>
<!-- Col 1 : brand -->
<StackPanel Grid.Column="0" Orientation="Horizontal" VerticalAlignment="Center">
<Image Source="pack://application:,,,/Resources/logo-asterion-white.png"
Height="36"
VerticalAlignment="Center"
Margin="0,0,14,0"
SnapsToDevicePixels="True"
RenderOptions.BitmapScalingMode="HighQuality" />
<TextBlock Text="PROSERVE"
FontFamily="{StaticResource Font.Brand}"
FontSize="22"