diff options
author | Sefa Eyeoglu <contact@scrumplex.net> | 2023-08-05 22:50:38 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-08-05 22:50:38 +0200 |
commit | 7c547f6452bb361729081f8a7b20765740f705db (patch) | |
tree | 1a2fccbbbf4751cf2cf6f6418cb525dcee5f2acd | |
parent | ae793f6cf11658c9abc5111e82d5ba7b3e6af127 (diff) | |
parent | 91eb30f03795921b48360b79bdb739dcd0f10f17 (diff) | |
download | PrismLauncher-7c547f6452bb361729081f8a7b20765740f705db.tar.gz PrismLauncher-7c547f6452bb361729081f8a7b20765740f705db.tar.bz2 PrismLauncher-7c547f6452bb361729081f8a7b20765740f705db.zip |
Merge pull request #1370 from Trial97/pack_changelog
-rw-r--r-- | launcher/ui/pages/instance/ManagedPackPage.cpp | 16 | ||||
-rw-r--r-- | launcher/ui/pages/instance/ManagedPackPage.ui | 12 |
2 files changed, 27 insertions, 1 deletions
diff --git a/launcher/ui/pages/instance/ManagedPackPage.cpp b/launcher/ui/pages/instance/ManagedPackPage.cpp index 0fc0c986..0443baf1 100644 --- a/launcher/ui/pages/instance/ManagedPackPage.cpp +++ b/launcher/ui/pages/instance/ManagedPackPage.cpp @@ -3,6 +3,9 @@ // SPDX-License-Identifier: GPL-3.0-only #include "ManagedPackPage.h" +#include <QDesktopServices> +#include <QUrl> +#include <QUrlQuery> #include "ui_ManagedPackPage.h" #include <QListView> @@ -103,6 +106,19 @@ ManagedPackPage::ManagedPackPage(BaseInstance* inst, InstanceWindow* instance_wi // Pretend we're opening the page again openedImpl(); }); + + connect(ui->changelogTextBrowser, &QTextBrowser::anchorClicked, this, [](const QUrl url) { + if (url.scheme().isEmpty()) { + auto querry = + QUrlQuery(url.query()).queryItemValue("remoteUrl", QUrl::FullyDecoded); // curseforge workaround for linkout?remoteUrl= + auto decoded = QUrl::fromPercentEncoding(querry.toUtf8()); + auto newUrl = QUrl(decoded); + if (newUrl.isValid() && (newUrl.scheme() == "http" || newUrl.scheme() == "https")) + QDesktopServices ::openUrl(newUrl); + return; + } + QDesktopServices::openUrl(url); + }); } ManagedPackPage::~ManagedPackPage() diff --git a/launcher/ui/pages/instance/ManagedPackPage.ui b/launcher/ui/pages/instance/ManagedPackPage.ui index bbe44a94..05e91bbc 100644 --- a/launcher/ui/pages/instance/ManagedPackPage.ui +++ b/launcher/ui/pages/instance/ManagedPackPage.ui @@ -168,10 +168,13 @@ </property> <layout class="QVBoxLayout" name="verticalLayout_3"> <item> - <widget class="QTextBrowser" name="changelogTextBrowser"> + <widget class="ProjectDescriptionPage" name="changelogTextBrowser"> <property name="placeholderText"> <string>No changelog available for this version!</string> </property> + <property name="openLinks"> + <bool>false</bool> + </property> </widget> </item> </layout> @@ -188,6 +191,13 @@ </item> </layout> </widget> + <customwidgets> + <customwidget> + <class>ProjectDescriptionPage</class> + <extends>QTextBrowser</extends> + <header>ui/widgets/ProjectDescriptionPage.h</header> + </customwidget> + </customwidgets> <resources/> <connections/> </ui> |