diff --git a/Source/AaxDecrypter/AaxDecrypter.csproj b/Source/AaxDecrypter/AaxDecrypter.csproj index ee73efcd..0e9ee5eb 100644 --- a/Source/AaxDecrypter/AaxDecrypter.csproj +++ b/Source/AaxDecrypter/AaxDecrypter.csproj @@ -5,7 +5,7 @@ - + diff --git a/Source/FileLiberator/DownloadDecryptBook.cs b/Source/FileLiberator/DownloadDecryptBook.cs index ef54d81d..1236c7a5 100644 --- a/Source/FileLiberator/DownloadDecryptBook.cs +++ b/Source/FileLiberator/DownloadDecryptBook.cs @@ -71,8 +71,9 @@ namespace FileLiberator new StatusHandler { "Decrypt failed" }; } - // moves new files from temp dir to final dest - var movedAudioFile = moveFilesToBooksDir(libraryBook, entries); + // moves new files from temp dir to final dest. + // This could take a few seconds if moving hundreds of files. + var movedAudioFile = await Task.Run(() => moveFilesToBooksDir(libraryBook, entries)); // decrypt failed if (!movedAudioFile) diff --git a/Source/LibationWinForms/Dialogs/SettingsDialog.AudioSettings.cs b/Source/LibationWinForms/Dialogs/SettingsDialog.AudioSettings.cs index 68cf9d6f..fac05b10 100644 --- a/Source/LibationWinForms/Dialogs/SettingsDialog.AudioSettings.cs +++ b/Source/LibationWinForms/Dialogs/SettingsDialog.AudioSettings.cs @@ -21,7 +21,6 @@ namespace LibationWinForms.Dialogs private void convertFormatRb_CheckedChanged(object sender, EventArgs e) { - lameOptionsGb.Enabled = convertLossyRb.Checked; lameTargetRb_CheckedChanged(sender, e); LameMatchSourceBRCbox_CheckedChanged(sender, e); } diff --git a/Source/LibationWinForms/Form1.ProcessQueue.cs b/Source/LibationWinForms/Form1.ProcessQueue.cs index 74d30406..5e1ae9af 100644 --- a/Source/LibationWinForms/Form1.ProcessQueue.cs +++ b/Source/LibationWinForms/Form1.ProcessQueue.cs @@ -23,7 +23,18 @@ namespace LibationWinForms private void ProductsGrid_LiberateClicked(object sender, LibraryBook e) { - if (e.Book.UserDefinedItem.BookStatus != LiberatedStatus.Liberated) + if (e.Book.Audio_Exists()) + { + // liberated: open explorer to file + var filePath = AudibleFileStorage.Audio.GetPath(e.Book.AudibleProductId); + if (!Go.To.File(filePath)) + { + var suffix = string.IsNullOrWhiteSpace(filePath) ? "" : $":\r\n{filePath}"; + MessageBox.Show($"File not found" + suffix); + } + return; + } + else if (e.Book.UserDefinedItem.BookStatus != LiberatedStatus.Liberated) { SetQueueCollapseState(false); processBookQueue1.AddDownloadDecrypt(e); @@ -33,16 +44,7 @@ namespace LibationWinForms SetQueueCollapseState(false); processBookQueue1.AddDownloadPdf(e); } - else if (e.Book.Audio_Exists()) - { - // liberated: open explorer to file - var filePath = AudibleFileStorage.Audio.GetPath(e.Book.AudibleProductId); - if (!Go.To.File(filePath)) - { - var suffix = string.IsNullOrWhiteSpace(filePath) ? "" : $":\r\n{filePath}"; - MessageBox.Show($"File not found" + suffix); - } - } + } private void SetQueueCollapseState(bool collapsed)