diff options
author | DioEgizio <83089242+DioEgizio@users.noreply.github.com> | 2022-10-25 11:29:14 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-10-25 11:29:14 +0200 |
commit | b516dd970f89a844ac234e56a31b66d693631707 (patch) | |
tree | 2ab88352a758c3d84d3f4c980b0fc1004e48c273 /launcher/ui | |
parent | 08cd5d52fad56630ae607df13906497a9562d694 (diff) | |
parent | 7eecf454e83314cd6f8029f54678dea568d41843 (diff) | |
download | PrismLauncher-b516dd970f89a844ac234e56a31b66d693631707.tar.gz PrismLauncher-b516dd970f89a844ac234e56a31b66d693631707.tar.bz2 PrismLauncher-b516dd970f89a844ac234e56a31b66d693631707.zip |
Merge pull request #206 from flowln/changelog_height_fix
Diffstat (limited to 'launcher/ui')
-rw-r--r-- | launcher/ui/dialogs/ModUpdateDialog.cpp | 15 |
1 files changed, 5 insertions, 10 deletions
diff --git a/launcher/ui/dialogs/ModUpdateDialog.cpp b/launcher/ui/dialogs/ModUpdateDialog.cpp index 4171586e..cedd4a96 100644 --- a/launcher/ui/dialogs/ModUpdateDialog.cpp +++ b/launcher/ui/dialogs/ModUpdateDialog.cpp @@ -366,33 +366,28 @@ void ModUpdateDialog::appendMod(CheckUpdateTask::UpdatableMod const& info) auto changelog = new QTreeWidgetItem(changelog_item); auto changelog_area = new QTextBrowser(); + QString text = info.changelog; switch (info.provider) { case ModPlatform::Provider::MODRINTH: { HoeDown h; // HoeDown bug?: \n aren't converted to <br> - auto text = h.process(info.changelog.toUtf8()); + text = h.process(info.changelog.toUtf8()); // Don't convert if there's an HTML tag right after (Qt rendering weirdness) text.remove(QRegularExpression("(\n+)(?=<)")); text.replace('\n', "<br>"); - changelog_area->setHtml(text); break; } - case ModPlatform::Provider::FLAME: { - changelog_area->setHtml(info.changelog); + default: break; - } } + changelog_area->setHtml(text); changelog_area->setOpenExternalLinks(true); - changelog_area->setLineWrapMode(QTextBrowser::LineWrapMode::NoWrap); + changelog_area->setLineWrapMode(QTextBrowser::LineWrapMode::WidgetWidth); changelog_area->setVerticalScrollBarPolicy(Qt::ScrollBarPolicy::ScrollBarAsNeeded); - // HACK: Is there a better way of achieving this? - auto font_height = QFontMetrics(changelog_area->font()).height(); - changelog_area->setMaximumHeight((changelog_area->toPlainText().count(QRegularExpression("\n|<br>")) + 2) * font_height); - ui->modTreeWidget->setItemWidget(changelog, 0, changelog_area); ui->modTreeWidget->addTopLevelItem(item_top); |