diff options
author | Trial97 <alexandru.tripon97@gmail.com> | 2023-08-15 00:33:24 +0300 |
---|---|---|
committer | Trial97 <alexandru.tripon97@gmail.com> | 2023-08-15 00:33:24 +0300 |
commit | 0ba88ff138dc5bfc7128333c5ff6c65ab790c7bb (patch) | |
tree | a21a93f0b456386a6dcf57b73b8332b22db72c8d /launcher/ui/pages/instance | |
parent | 215d7dbb741de9516ab5f00acb7b699adff82cab (diff) | |
parent | 3aba7f8fec45c7c87be486d8f6b5c96f69facf93 (diff) | |
download | PrismLauncher-0ba88ff138dc5bfc7128333c5ff6c65ab790c7bb.tar.gz PrismLauncher-0ba88ff138dc5bfc7128333c5ff6c65ab790c7bb.tar.bz2 PrismLauncher-0ba88ff138dc5bfc7128333c5ff6c65ab790c7bb.zip |
Merge branch 'develop' of https://github.com/PrismLauncher/PrismLauncher into staging
Signed-off-by: Trial97 <alexandru.tripon97@gmail.com>
Diffstat (limited to 'launcher/ui/pages/instance')
-rw-r--r-- | launcher/ui/pages/instance/ManagedPackPage.cpp | 16 | ||||
-rw-r--r-- | launcher/ui/pages/instance/ManagedPackPage.ui | 12 | ||||
-rw-r--r-- | launcher/ui/pages/instance/ServersPage.cpp | 20 |
3 files changed, 31 insertions, 17 deletions
diff --git a/launcher/ui/pages/instance/ManagedPackPage.cpp b/launcher/ui/pages/instance/ManagedPackPage.cpp index 82de9742..8fdaf065 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> @@ -105,6 +108,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> diff --git a/launcher/ui/pages/instance/ServersPage.cpp b/launcher/ui/pages/instance/ServersPage.cpp index da49f4a7..5c31f73b 100644 --- a/launcher/ui/pages/instance/ServersPage.cpp +++ b/launcher/ui/pages/instance/ServersPage.cpp @@ -354,14 +354,8 @@ class ServersModel : public QAbstractListModel { } } - virtual int rowCount(const QModelIndex& parent = QModelIndex()) const override - { - return parent.isValid() ? 0 : m_servers.size(); - } - int columnCount(const QModelIndex& parent) const override - { - return parent.isValid() ? 0 : COLUMN_COUNT; - } + virtual int rowCount(const QModelIndex& parent = QModelIndex()) const override { return parent.isValid() ? 0 : m_servers.size(); } + int columnCount(const QModelIndex& parent) const override { return parent.isValid() ? 0 : COLUMN_COUNT; } Server* at(int index) { @@ -445,10 +439,7 @@ class ServersModel : public QAbstractListModel { qDebug() << "Changed:" << path; load(); } - void fileChanged(const QString& path) - { - qDebug() << "Changed:" << path; - } + void fileChanged(const QString& path) { qDebug() << "Changed:" << path; } private slots: void save_internal() @@ -492,10 +483,7 @@ class ServersModel : public QAbstractListModel { m_saveTimer.stop(); } - bool saveIsScheduled() const - { - return m_dirty; - } + bool saveIsScheduled() const { return m_dirty; } void updateFSObserver() { |