diff --git a/JournalApp/Data/BackupFile.cs b/JournalApp/Data/BackupFile.cs index 0fddb16..a4d140d 100644 --- a/JournalApp/Data/BackupFile.cs +++ b/JournalApp/Data/BackupFile.cs @@ -31,13 +31,13 @@ public class BackupFile /// public static async Task ReadArchive(Stream stream) { - using var archive = new ZipArchive(stream, ZipArchiveMode.Read); + await using var archive = await ZipArchive.CreateAsync(stream, ZipArchiveMode.Read, leaveOpen: true, entryNameEncoding: null); foreach (var entry in archive.Entries) { if (entry.FullName == InternalBackupFileName) { - await using var entryStream = entry.Open(); + await using var entryStream = await entry.OpenAsync(); return await JsonSerializer.DeserializeAsync(entryStream, SerializerOptions); } @@ -60,10 +60,10 @@ public static async Task ReadArchive(string path) /// public async Task WriteArchive(Stream stream) { - using var archive = new ZipArchive(stream, ZipArchiveMode.Create); + await using var archive = await ZipArchive.CreateAsync(stream, ZipArchiveMode.Create, leaveOpen: true, entryNameEncoding: null); var entry = archive.CreateEntry(InternalBackupFileName); - await using var entryStream = entry.Open(); + await using var entryStream = await entry.OpenAsync(); await JsonSerializer.SerializeAsync(entryStream, this, SerializerOptions); } diff --git a/JournalApp/Pages/SettingsPage.razor b/JournalApp/Pages/SettingsPage.razor index 6de22f6..b6829f8 100644 --- a/JournalApp/Pages/SettingsPage.razor +++ b/JournalApp/Pages/SettingsPage.razor @@ -11,6 +11,7 @@ @* TODO: Replace with separate page so we can change state of inline fields and have it updated properly in settings *@
+ Please do not close the app
} else @@ -177,6 +178,7 @@ else { _busy = true; StateHasChanged(); + await Task.Yield(); var path = App.ActivatedFilePath; @@ -195,6 +197,7 @@ else { _busy = true; StateHasChanged(); + await Task.Yield(); await AppDataUIService.StartExportWizard(DialogService); } diff --git a/JournalApp/Pages/SettingsPage.razor.css b/JournalApp/Pages/SettingsPage.razor.css index c6d9515..3069bb9 100644 --- a/JournalApp/Pages/SettingsPage.razor.css +++ b/JournalApp/Pages/SettingsPage.razor.css @@ -13,6 +13,8 @@ .loading-container { display: flex; + flex-direction: column; + align-items: center; justify-content: center; } @@ -21,3 +23,8 @@ width: 33vw; margin-top: 10vh; } + +.loading-warning { + margin-top: 24px; + opacity: 0.7; +}