diff --git a/src/PSLauncher.App/App.xaml.cs b/src/PSLauncher.App/App.xaml.cs
index 7a0f1eb..43c1093 100644
--- a/src/PSLauncher.App/App.xaml.cs
+++ b/src/PSLauncher.App/App.xaml.cs
@@ -108,13 +108,25 @@ public partial class App : Application
services.AddSingleton(sp =>
{
- var http = new HttpClient(new SocketsHttpHandler
+ // Handler tuné pour les gros téléchargements parallèles :
+ // - MaxConnectionsPerServer=16 pour autoriser le multi-segment (8 par défaut).
+ // - AutomaticDecompression sur l'API JSON uniquement (None ici car les builds
+ // sont des ZIPs déjà compressés ; éviter la CPU+RAM gaspillée par un éventuel
+ // wrapping gzip côté serveur).
+ // - PooledConnectionLifetime court pour éviter qu'OVH ferme nos sockets sous nous.
+ var handler = new SocketsHttpHandler
{
PooledConnectionLifetime = TimeSpan.FromMinutes(5),
- AutomaticDecompression = System.Net.DecompressionMethods.All
- })
+ PooledConnectionIdleTimeout = TimeSpan.FromSeconds(60),
+ MaxConnectionsPerServer = 16,
+ EnableMultipleHttp2Connections = true,
+ AutomaticDecompression = System.Net.DecompressionMethods.None,
+ };
+ var http = new HttpClient(handler)
{
- Timeout = Timeout.InfiniteTimeSpan
+ Timeout = Timeout.InfiniteTimeSpan,
+ DefaultRequestVersion = System.Net.HttpVersion.Version20,
+ DefaultVersionPolicy = HttpVersionPolicy.RequestVersionOrLower,
};
http.DefaultRequestHeaders.UserAgent.Add(new ProductInfoHeaderValue("PSLauncher", "0.5"));
return http;
diff --git a/src/PSLauncher.App/Resources/Theme.xaml b/src/PSLauncher.App/Resources/Theme.xaml
index 260f084..dde54d5 100644
--- a/src/PSLauncher.App/Resources/Theme.xaml
+++ b/src/PSLauncher.App/Resources/Theme.xaml
@@ -135,6 +135,39 @@
+
+
+