- tweak: loading popup thinks
* - tweak: change loading handle logic * - tweak: beautify loading thinks * - fix: speed thinks while downloading
This commit is contained in:
@@ -6,6 +6,7 @@ using System.IO;
|
||||
using System.IO.Compression;
|
||||
using System.Linq;
|
||||
using System.Net.Http;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using Nebula.Launcher.ViewModels.Popup;
|
||||
using Nebula.Shared;
|
||||
@@ -25,7 +26,6 @@ public sealed partial class DecompilerService
|
||||
[GenerateProperty] private ViewHelperService ViewHelperService {get;}
|
||||
[GenerateProperty] private ContentService ContentService {get;}
|
||||
[GenerateProperty] private FileService FileService {get;}
|
||||
[GenerateProperty] private CancellationService CancellationService {get;}
|
||||
[GenerateProperty] private EngineService EngineService {get;}
|
||||
[GenerateProperty] private DebugService DebugService {get;}
|
||||
|
||||
@@ -44,16 +44,14 @@ public sealed partial class DecompilerService
|
||||
Process.Start(startInfo);
|
||||
}
|
||||
|
||||
public async void OpenServerDecompiler(RobustUrl url)
|
||||
public async void OpenServerDecompiler(RobustUrl url, CancellationToken cancellationToken)
|
||||
{
|
||||
var myTempDir = FileService.EnsureTempDir(out var tmpDir);
|
||||
|
||||
ILoadingHandler loadingHandler = ViewHelperService.GetViewModel<LoadingContextViewModel>();
|
||||
|
||||
using var loadingHandler = ViewHelperService.GetViewModel<LoadingContextViewModel>();
|
||||
var buildInfo =
|
||||
await ContentService.GetBuildInfo(url, CancellationService.Token);
|
||||
var engine = await EngineService.EnsureEngine(buildInfo.BuildInfo.Build.EngineVersion);
|
||||
|
||||
await ContentService.GetBuildInfo(url, cancellationToken);
|
||||
var engine = await EngineService.EnsureEngine(buildInfo.BuildInfo.Build.EngineVersion, loadingHandler, cancellationToken);
|
||||
if (engine is null)
|
||||
throw new Exception("Engine version not found: " + buildInfo.BuildInfo.Build.EngineVersion);
|
||||
|
||||
@@ -64,8 +62,9 @@ public sealed partial class DecompilerService
|
||||
await stream.DisposeAsync();
|
||||
}
|
||||
|
||||
var hashApi = await ContentService.EnsureItems(buildInfo.RobustManifestInfo, loadingHandler, CancellationService.Token);
|
||||
|
||||
var hashApi = await ContentService.EnsureItems(buildInfo.RobustManifestInfo, loadingHandler, cancellationToken);
|
||||
|
||||
foreach (var (file, hash) in hashApi.Manifest)
|
||||
{
|
||||
if(!file.Contains(".dll") || !hashApi.TryOpen(hash, out var stream)) continue;
|
||||
@@ -73,8 +72,6 @@ public sealed partial class DecompilerService
|
||||
await stream.DisposeAsync();
|
||||
}
|
||||
|
||||
((IDisposable)loadingHandler).Dispose();
|
||||
|
||||
_logger.Log("File extracted. " + tmpDir);
|
||||
|
||||
OpenDecompiler(string.Join(' ', myTempDir.AllFiles.Select(f=>Path.Join(tmpDir, f))) + " --newinstance");
|
||||
@@ -94,7 +91,7 @@ public sealed partial class DecompilerService
|
||||
private async Task Download(){
|
||||
using var loading = ViewHelperService.GetViewModel<LoadingContextViewModel>();
|
||||
loading.LoadingName = "Download ILSpy";
|
||||
loading.SetJobsCount(1);
|
||||
loading.CreateLoadingContext().SetJobsCount(1);
|
||||
PopupMessageService.Popup(loading);
|
||||
using var response = await _httpClient.GetAsync(ConfigurationService.GetConfigValue(LauncherConVar.ILSpyUrl));
|
||||
using var zipArchive = new ZipArchive(await response.Content.ReadAsStreamAsync());
|
||||
|
||||
@@ -11,7 +11,7 @@ using Nebula.Shared.Services;
|
||||
namespace Nebula.Launcher.Services;
|
||||
|
||||
[ConstructGenerator, ServiceRegister]
|
||||
public partial class LocalisationService
|
||||
public partial class LocalizationService
|
||||
{
|
||||
[GenerateProperty] private ConfigurationService ConfigurationService { get; }
|
||||
[GenerateProperty] private DebugService DebugService { get; }
|
||||
@@ -74,6 +74,6 @@ public class LocaledText : MarkupExtension
|
||||
|
||||
public override object ProvideValue(IServiceProvider serviceProvider)
|
||||
{
|
||||
return LocalisationService.GetString(Key, Options);
|
||||
return LocalizationService.GetString(Key, Options);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user