diff options
author | flow <flowlnlnln@gmail.com> | 2022-06-20 08:55:35 -0300 |
---|---|---|
committer | flow <flowlnlnln@gmail.com> | 2022-07-17 11:33:43 -0300 |
commit | 5f75e531e61e1f2cb5d602e084e9a0ddd1c85a5c (patch) | |
tree | b6daf3f8a33d0718851cb3337f0f6e9674cb24c5 /launcher/ui/dialogs | |
parent | a7648d60ce1d1567cd1c878aaa55dae3696a0210 (diff) | |
download | PrismLauncher-5f75e531e61e1f2cb5d602e084e9a0ddd1c85a5c.tar.gz PrismLauncher-5f75e531e61e1f2cb5d602e084e9a0ddd1c85a5c.tar.bz2 PrismLauncher-5f75e531e61e1f2cb5d602e084e9a0ddd1c85a5c.zip |
fix: handling around disabled mods
Don't update disabled mods to prevent mod duplication. Also, chop
filename in the metadata with a '.disabled'.
Signed-off-by: flow <flowlnlnln@gmail.com>
Diffstat (limited to 'launcher/ui/dialogs')
-rw-r--r-- | launcher/ui/dialogs/ModUpdateDialog.cpp | 10 | ||||
-rw-r--r-- | launcher/ui/dialogs/ModUpdateDialog.h | 2 |
2 files changed, 8 insertions, 4 deletions
diff --git a/launcher/ui/dialogs/ModUpdateDialog.cpp b/launcher/ui/dialogs/ModUpdateDialog.cpp index 7584621a..2e1fbb08 100644 --- a/launcher/ui/dialogs/ModUpdateDialog.cpp +++ b/launcher/ui/dialogs/ModUpdateDialog.cpp @@ -62,8 +62,10 @@ void ModUpdateDialog::checkCandidates() // Report failed metadata generation if (!m_failed_metadata.empty()) { QString text; - for (const auto& mod : m_failed_metadata) { - text += tr("Mod name: %1<br>File name: %2<br><br>").arg(mod.name(), mod.fileinfo().fileName()); + for (const auto& failed : m_failed_metadata) { + const auto& mod = std::get<0>(failed); + const auto& reason = std::get<1>(failed); + text += tr("Mod name: %1<br>File name: %2<br>Reason: %3<br><br>").arg(mod.name(), mod.fileinfo().fileName(), reason); } ScrollMessageBox message_dialog(m_parent, tr("Metadata generation failed"), @@ -316,7 +318,9 @@ void ModUpdateDialog::onMetadataFailed(Mod& mod, bool try_others, ModPlatform::P m_second_try_metadata->addTask(task); } else { - m_failed_metadata.push_back(mod); + QString reason { tr("Didn't find a valid version on the selected mod provider(s)") }; + + m_failed_metadata.emplace_back(mod, reason); } } diff --git a/launcher/ui/dialogs/ModUpdateDialog.h b/launcher/ui/dialogs/ModUpdateDialog.h index f40fc594..336fbba2 100644 --- a/launcher/ui/dialogs/ModUpdateDialog.h +++ b/launcher/ui/dialogs/ModUpdateDialog.h @@ -50,7 +50,7 @@ class ModUpdateDialog final : public ReviewMessageBox { std::list<Mod> m_flame_to_update; SequentialTask* m_second_try_metadata; - std::list<Mod> m_failed_metadata; + std::list<std::tuple<Mod, QString>> m_failed_metadata; std::list<std::tuple<Mod, QString, QUrl>> m_failed_check_update; QHash<QString, ModDownloadTask*> m_tasks; |