diff options
author | Katja Marttila <katja.marttila@qt.io> | 2024-03-20 09:09:41 +0200 |
---|---|---|
committer | Katja Marttila <katja.marttila@qt.io> | 2024-04-04 09:48:40 +0200 |
commit | 048705b41d2b4126e318ae3d2955d8501227046b (patch) | |
tree | 395bc8f6d41c6d76fc47d7d8c78f98fc4f7a151f /src/libs | |
parent | 4cfd828179800951bb4d03d40cbbb7bde28db824 (diff) |
Add possibility to add extra log when meta fetch fails
Also if the log contains links or html, added link interaction
possibility and correct html syntax to messagebox and error messages.
Task-number: QTIFW-3012
Change-Id: Ibf20f50c0f06fdbb8325f93dbdf78ba36d4fe4e5
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
Diffstat (limited to 'src/libs')
-rw-r--r-- | src/libs/installer/downloadfiletask.cpp | 5 | ||||
-rw-r--r-- | src/libs/installer/messageboxhandler.cpp | 4 | ||||
-rw-r--r-- | src/libs/installer/packagemanagergui.cpp | 2 | ||||
-rw-r--r-- | src/libs/installer/productkeycheck.cpp | 5 | ||||
-rw-r--r-- | src/libs/installer/productkeycheck.h | 1 |
5 files changed, 16 insertions, 1 deletions
diff --git a/src/libs/installer/downloadfiletask.cpp b/src/libs/installer/downloadfiletask.cpp index 5cd72109b..a959677a9 100644 --- a/src/libs/installer/downloadfiletask.cpp +++ b/src/libs/installer/downloadfiletask.cpp @@ -30,6 +30,7 @@ #include "downloadfiletask_p.h" #include "globals.h" +#include "productkeycheck.h" #include <QCoreApplication> #include <QDir> @@ -286,6 +287,10 @@ void Downloader::errorOccurred(QNetworkReply::NetworkError error) if (data.taskItem.source().contains(QLatin1String("Updates.xml"), Qt::CaseInsensitive)) { qCWarning(QInstaller::lcServer) << QString::fromLatin1("Network error while downloading '%1': %2.").arg( data.taskItem.source(), reply->errorString()); + } else if (data.taskItem.source().contains(QLatin1String("_meta"), Qt::CaseInsensitive)) { + QString errorString = tr("Network error while downloading '%1': %2.").arg(data.taskItem.source(), reply->errorString()); + errorString.append(ProductKeyCheck::instance()->additionalMetaDownloadWarning()); + m_futureInterface->reportException(TaskException(errorString)); } else { m_futureInterface->reportException( TaskException(tr("Network error while downloading '%1': %2.").arg( diff --git a/src/libs/installer/messageboxhandler.cpp b/src/libs/installer/messageboxhandler.cpp index 78abc88fa..052709e51 100644 --- a/src/libs/installer/messageboxhandler.cpp +++ b/src/libs/installer/messageboxhandler.cpp @@ -368,7 +368,9 @@ static QMessageBox::StandardButton showNewMessageBox(QWidget *parent, QMessageBo QMessageBox::StandardButton defaultButton) { QMessageBox msgBox(icon, title, text, QMessageBox::NoButton, parent); - msgBox.setTextInteractionFlags(Qt::TextSelectableByMouse | Qt::TextSelectableByKeyboard); + msgBox.setTextInteractionFlags(Qt::TextBrowserInteraction); + msgBox.setTextFormat(Qt::RichText); + QDialogButtonBox *buttonBox = msgBox.findChild<QDialogButtonBox *>(); Q_ASSERT(buttonBox != nullptr); diff --git a/src/libs/installer/packagemanagergui.cpp b/src/libs/installer/packagemanagergui.cpp index eb80e83b0..1f0462eea 100644 --- a/src/libs/installer/packagemanagergui.cpp +++ b/src/libs/installer/packagemanagergui.cpp @@ -1563,6 +1563,8 @@ IntroductionPage::IntroductionPage(PackageManagerCore *core) m_errorLabel = new QLabel(this); m_errorLabel->setWordWrap(true); + m_errorLabel->setTextFormat(Qt::RichText); + m_errorLabel->setTextInteractionFlags(Qt::TextBrowserInteraction); boxLayout->addWidget(m_errorLabel); m_errorLabel->setObjectName(QLatin1String("ErrorLabel")); diff --git a/src/libs/installer/productkeycheck.cpp b/src/libs/installer/productkeycheck.cpp index 61309fc51..ed128fa61 100644 --- a/src/libs/installer/productkeycheck.cpp +++ b/src/libs/installer/productkeycheck.cpp @@ -128,3 +128,8 @@ QString ProductKeyCheck::securityWarning() const { return QString(); } + +QString ProductKeyCheck::additionalMetaDownloadWarning() const +{ + return QString(); +} diff --git a/src/libs/installer/productkeycheck.h b/src/libs/installer/productkeycheck.h index d2b11708f..8e7d6724f 100644 --- a/src/libs/installer/productkeycheck.h +++ b/src/libs/installer/productkeycheck.h @@ -73,6 +73,7 @@ public: bool hasAcceptedAllLicenses() const; QString licenseAcceptanceText() const; QString securityWarning() const; + QString additionalMetaDownloadWarning() const; private: ProductKeyCheck(); |