Compare commits
8 Commits
e7d4b7a04c
...
2dc9c98d1e
| Author | SHA1 | Date | |
|---|---|---|---|
| 2dc9c98d1e | |||
| 89f039e355 | |||
| 661c464b7a | |||
| c27066ffe4 | |||
| 3c31d1ea8a | |||
| 8ebde15535 | |||
| dfad967eae | |||
| 3484c23683 |
@@ -11,7 +11,7 @@
|
||||
|
||||
#define MyAppName "PROSERVE Launcher"
|
||||
#define MyAppShortName "PSLauncher"
|
||||
#define MyAppVersion "0.5.0"
|
||||
#define MyAppVersion "0.8.0"
|
||||
#define MyAppPublisher "ASTERION VR"
|
||||
#define MyAppURL "https://asterionvr.com"
|
||||
#define MyAppExeName "PSLauncher.exe"
|
||||
@@ -35,7 +35,7 @@ DefaultGroupName={#MyAppName}
|
||||
DisableProgramGroupPage=yes
|
||||
OutputDir=output
|
||||
OutputBaseFilename=PSLauncher-Setup-{#MyAppVersion}
|
||||
SetupIconFile=
|
||||
SetupIconFile=..\src\PSLauncher.App\Resources\favicon.ico
|
||||
Compression=lzma2/ultra
|
||||
SolidCompression=yes
|
||||
WizardStyle=modern
|
||||
|
||||
BIN
src/Logo ASTERION - Small - White.png
Normal file
BIN
src/Logo ASTERION - Small - White.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 6.3 KiB |
@@ -9,12 +9,15 @@
|
||||
<Nullable>enable</Nullable>
|
||||
<LangVersion>latest</LangVersion>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<ApplicationIcon></ApplicationIcon>
|
||||
<ApplicationIcon>Resources\favicon.ico</ApplicationIcon>
|
||||
<AssemblyName>PSLauncher</AssemblyName>
|
||||
<Company>ASTERION VR</Company>
|
||||
<Product>PROSERVE Launcher</Product>
|
||||
<Copyright>© 2026 ASTERION VR — All rights reserved</Copyright>
|
||||
<RootNamespace>PSLauncher.App</RootNamespace>
|
||||
<Version>0.7.0</Version>
|
||||
<AssemblyVersion>0.7.0.0</AssemblyVersion>
|
||||
<FileVersion>0.7.0.0</FileVersion>
|
||||
<Version>0.8.0</Version>
|
||||
<AssemblyVersion>0.8.0.0</AssemblyVersion>
|
||||
<FileVersion>0.8.0.0</FileVersion>
|
||||
|
||||
<!-- Single-file self-contained publish profile (used by `dotnet publish`) -->
|
||||
<PublishSingleFile>true</PublishSingleFile>
|
||||
@@ -47,6 +50,8 @@
|
||||
<ItemGroup>
|
||||
<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
|
||||
|
||||
@@ -154,7 +154,8 @@
|
||||
</Border>
|
||||
<ControlTemplate.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter TargetName="Bd" Property="Background" Value="#FFFFFF22" />
|
||||
<Setter TargetName="Bd" Property="Background" Value="{StaticResource Brush.Accent}" />
|
||||
<Setter Property="Foreground" Value="White" />
|
||||
</Trigger>
|
||||
</ControlTemplate.Triggers>
|
||||
</ControlTemplate>
|
||||
|
||||
BIN
src/PSLauncher.App/Resources/favicon.ico
Normal file
BIN
src/PSLauncher.App/Resources/favicon.ico
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 2.6 KiB |
BIN
src/PSLauncher.App/Resources/favicon.jpg
Normal file
BIN
src/PSLauncher.App/Resources/favicon.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 4.5 KiB |
BIN
src/PSLauncher.App/Resources/logo-asterion-white.png
Normal file
BIN
src/PSLauncher.App/Resources/logo-asterion-white.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 6.3 KiB |
@@ -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)
|
||||
{
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
Title="Mise à jour du launcher"
|
||||
Icon="pack://application:,,,/Resources/favicon.ico"
|
||||
Width="500" Height="320"
|
||||
ResizeMode="NoResize"
|
||||
WindowStartupLocation="CenterOwner"
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
Title="License"
|
||||
Icon="pack://application:,,,/Resources/favicon.ico"
|
||||
Width="500" Height="480"
|
||||
ResizeMode="NoResize"
|
||||
WindowStartupLocation="CenterOwner"
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
xmlns:vm="clr-namespace:PSLauncher.App.ViewModels"
|
||||
xmlns:shell="clr-namespace:System.Windows.Shell;assembly=PresentationFramework"
|
||||
Title="PROSERVE Launcher"
|
||||
Icon="pack://application:,,,/Resources/favicon.ico"
|
||||
Background="Black"
|
||||
Width="1280" Height="720"
|
||||
MinWidth="980" MinHeight="600"
|
||||
@@ -165,15 +166,20 @@
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<!-- Background image (sous tout le reste, ne capte pas la souris).
|
||||
Le fond noir du Grid garantit que les zones transparentes de l'image
|
||||
(et l'image dans son ensemble à faible opacity) reposent sur du noir
|
||||
pur, sans héritage du brush système. -->
|
||||
<Image Grid.Row="0" Grid.RowSpan="3"
|
||||
Source="pack://application:,,,/Resources/Background.png"
|
||||
<!-- Background image : limité au body uniquement (Grid.Row="1") pour ne pas
|
||||
se faire chevaucher par le footer quand un download tourne. ImageBrush
|
||||
avec AlignmentX=Right + AlignmentY=Bottom : si le ratio fenêtre force
|
||||
un crop, on rogne en haut/à gauche — le logo ASTERION VR en bas-droite
|
||||
reste TOUJOURS visible. -->
|
||||
<Rectangle Grid.Row="1" IsHitTestVisible="False">
|
||||
<Rectangle.Fill>
|
||||
<ImageBrush ImageSource="pack://application:,,,/Resources/Background.png"
|
||||
Stretch="UniformToFill"
|
||||
Opacity="0.25"
|
||||
IsHitTestVisible="False" />
|
||||
AlignmentX="Right"
|
||||
AlignmentY="Bottom"
|
||||
Opacity="0.25" />
|
||||
</Rectangle.Fill>
|
||||
</Rectangle>
|
||||
|
||||
<!-- Top bar : 3 colonnes (brand / license center / chrome) -->
|
||||
<Border Grid.Row="0" Background="{StaticResource Brush.Bg.Sidebar}"
|
||||
@@ -187,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"
|
||||
@@ -494,6 +506,18 @@
|
||||
Style="{StaticResource SecondaryButton}"
|
||||
Content="🔄 Vérifier les MAJ"
|
||||
Command="{Binding CheckForUpdatesCommand}" />
|
||||
|
||||
<!-- Copyright flottant en bas centré, sur une pill sombre pour rester
|
||||
lisible quel que soit l'arrière-plan (image, voile noir, etc.). -->
|
||||
<Border HorizontalAlignment="Center" VerticalAlignment="Bottom"
|
||||
Margin="0,0,0,28"
|
||||
Background="#A0000000"
|
||||
CornerRadius="10"
|
||||
Padding="10,4">
|
||||
<TextBlock Text="© 2026 ASTERION VR — Tous droits réservés"
|
||||
FontSize="11"
|
||||
Foreground="White" />
|
||||
</Border>
|
||||
</Grid>
|
||||
|
||||
<!-- Footer : visible uniquement quand busy / status à afficher.
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
Title="Activation PROSERVE Launcher"
|
||||
Icon="pack://application:,,,/Resources/favicon.ico"
|
||||
Width="540" Height="420"
|
||||
MinWidth="480" MinHeight="380"
|
||||
WindowStartupLocation="CenterOwner"
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
Title="Notes de version"
|
||||
Icon="pack://application:,,,/Resources/favicon.ico"
|
||||
Width="640" Height="540"
|
||||
MinWidth="480" MinHeight="400"
|
||||
WindowStartupLocation="CenterOwner"
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:vm="clr-namespace:PSLauncher.App.ViewModels"
|
||||
Title="Paramètres"
|
||||
Icon="pack://application:,,,/Resources/favicon.ico"
|
||||
Width="640" Height="720"
|
||||
MinWidth="540" MinHeight="500"
|
||||
WindowStartupLocation="CenterOwner"
|
||||
@@ -234,6 +235,10 @@
|
||||
<Run Text="Version : " />
|
||||
<Run Text="{Binding LauncherVersion, Mode=OneWay}" FontWeight="SemiBold" />
|
||||
</TextBlock>
|
||||
<TextBlock Text="© 2026 ASTERION VR — Tous droits réservés"
|
||||
FontSize="12"
|
||||
Foreground="{StaticResource Brush.Text.Secondary}"
|
||||
Margin="0,4,0,0" />
|
||||
<Grid Margin="0,8,0,0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
Title="Mise à jour disponible"
|
||||
Icon="pack://application:,,,/Resources/favicon.ico"
|
||||
Width="640" Height="540"
|
||||
MinWidth="480" MinHeight="400"
|
||||
WindowStartupLocation="CenterOwner"
|
||||
|
||||
@@ -65,17 +65,21 @@ public sealed class ConfigStore : IConfigStore
|
||||
File.Move(tmp, _configFile, overwrite: true);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Cible standard pour les déploiements clients : <c>C:\ASTERION_VR</c>.
|
||||
/// Si un dossier ASTERION_VR existe déjà à côté de l'exe (mode dev / portable),
|
||||
/// il est préféré pour ne pas casser l'environnement de développement.
|
||||
/// </summary>
|
||||
private static string ResolveDefaultInstallRoot()
|
||||
{
|
||||
// Mode dev / portable : ASTERION_VR à côté de l'exe (par ex. dans le repo)
|
||||
var exeDir = AppContext.BaseDirectory;
|
||||
var sibling = Path.Combine(Path.GetDirectoryName(exeDir.TrimEnd(Path.DirectorySeparatorChar))!, "ASTERION_VR");
|
||||
var sibling = Path.Combine(
|
||||
Path.GetDirectoryName(exeDir.TrimEnd(Path.DirectorySeparatorChar))!,
|
||||
"ASTERION_VR");
|
||||
if (Directory.Exists(sibling)) return sibling;
|
||||
|
||||
var dev = @"C:\ASTERION\GIT\PS_Launcher\ASTERION_VR";
|
||||
if (Directory.Exists(dev)) return dev;
|
||||
|
||||
return Path.Combine(
|
||||
Environment.GetFolderPath(Environment.SpecialFolder.UserProfile),
|
||||
"ASTERION_VR");
|
||||
// Cible standard pour les clients (créée au premier install si absente)
|
||||
return @"C:\ASTERION_VR";
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,7 +8,10 @@
|
||||
<LangVersion>latest</LangVersion>
|
||||
<AssemblyName>PSLauncher.Updater</AssemblyName>
|
||||
<RootNamespace>PSLauncher.Updater</RootNamespace>
|
||||
<Version>0.5.0</Version>
|
||||
<Version>0.8.0</Version>
|
||||
<ApplicationIcon>..\PSLauncher.App\Resources\favicon.ico</ApplicationIcon>
|
||||
<Company>ASTERION VR</Company>
|
||||
<Copyright>© 2026 ASTERION VR — All rights reserved</Copyright>
|
||||
|
||||
<!-- Single-file self-contained pour le publish (~10 Mo) -->
|
||||
<PublishSingleFile>true</PublishSingleFile>
|
||||
|
||||
BIN
src/favicon64.jpg
Normal file
BIN
src/favicon64.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 4.5 KiB |
Reference in New Issue
Block a user